Articles of 法线贴图

在生成的球面上切线

我很难理解法线贴图的切线/颠覆性概念,或者说它们的计算。 我用OpenGL红皮书http://www.glprogramming.com/red/chapter05.html中的代码绘制了一个球体。 我使用立方体贴图来渲染球体。 现在,几乎所有的网页链接http://www.terathon.com/code/tangent.html 。 但在该algorithm中,他们使用纹理坐标u和v,我没有这样做,因为我的纹理贴图是3D … 任何指向我如何计算切线和bitangents与此设置? 另外,切线是不是正交于球体上一个点的法线的vector? 对我来说似乎可以有一个更简单的方法.. 编辑:据我所知,我需要这些值能够“正常”从法线地图到球体上的点。 (我不确定这里有什么正确的math术语)。 换句话说,基于法线映射来偏离球体上任何点的法线。 我将法线计算为point_on_surface – center_of_sphere(在模型空间中,当中心是(0,0,0)时,就是point_on_surface)

正常映射CPU开销或GPU开销?

在Unity3D引擎中, 我通常应用使用片段着色器的正常映射。 在这种情况下, 这正常的映射是CPU开销或GPU开销?

如何为我的骰子纹理创建一个正常的地图?

我有这个简单的骰子纹理,并希望为它创建一个正常的地图,黑点是凹痕和边缘被修剪(就像在一个实际的骰子)我使用unity5。 我需要解释如何在PhotoShop CS5或代码解决scheme中创建法线贴图。 提前致谢。 这是我正在使用的骰子纹理。

如何在着色器中检测法线贴图的旋向性?

我使用Christian Schuler的公式将法线贴图实现到了我的游戏渲染器中。 它对大多数法线贴图都可以正常工作,但是一些并不是很多,因为在某些情况下,Y分量(绿色)是相反的。 显然这里没有真正的标准,Maya是这样做的,Max也是这样做的。 我希望能够查看普通地图的值,并以某种方式确定正在使用哪个scheme,如果可能的话。 另外,虽然我还没有看到任何一个,但是一些法线贴图似乎只使用两个通道,第三个通道留空并在运行时计算。 理想情况下,我也可以检测到这些。 我想也许Z频道全是零? 我不确定这是否会节省空间,所以也许这是另一个scheme。 似乎是一个明显的愿望,但我没有看到任何提及这一点。 但是,也许这不是真的可能。

应用为漫reflection贴图的法线贴图看起来不正确

漫reflection纹理工作正常,但我有正常的地图的问题,所以我想我试图将正常的地图作为我的片段着色器中的漫reflection地图,所以我可以看到一切正常。 我注释掉我的普通地图代码,只需将漫reflection贴图设置为普通地图,即可获得: http://postimg.org/image/j9gudjl7r/ 看起来像一个smurf! 这是主体的实际法线图: http://postimg.org/image/sbkyr6fg9/ 这里是我的片段着色器,注意我注释了正常的地图代码,所以我可以作为一个漫reflection纹理debugging法线贴图 "#version 330 \n \ \n \ layout(std140) uniform; \n \ \n \ const int MAX_LIGHTS = 8; \n \ \n \ struct Light \n \ { \n \ vec4 mLightColor; \n \ vec4 mLightPosition; \n \ vec4 mLightDirection; \n \ \n \ int mLightType; \n \ float mLightIntensity; […]

Android和iOS的正常映射

我在Unity上为Android和iOS制作手机游戏。 目前我正在研究和devise游戏的技术方面。 既然在移动平台上使用高度详细的模型是不合理的,那么应该使用正态映射模型吗? 因此,我有几个关于法线贴图的问题。 正常的映射模型制造成本高得多,换句话说,它们需要更长的时间来创建吗? 而且他们渲染的代价要高得多吗? 至less没有额外的绘制调用,但是着色器当然更复杂。

在Pixi.js中dynamic创建graphics的法线贴图是否可行(和实际)?

我正在使用Pixi.js构建一个平铺游戏。 游戏具有dynamic生成的地形和白天/夜晚的循环。 我想用一张普通的地图来给人一种倾斜的丘陵或山脉的感觉。 幸运的是pixi.js支持法线。 我从这里的示例中重新创建了一个演示应用程序: var viewWidth = 1024 // /2; var viewHeight = 1024 //512 /2; // Create a pixi renderer var renderer = PIXI.autoDetectRenderer(viewWidth, viewHeight); renderer.view.className = "rendererView"; // add render view to DOM document.body.appendChild(renderer.view); // create an new instance of a pixi stage var stage = new PIXI.Stage(0xFFFFFF); //EXPERIMENTAL: Trying to dynamically […]

基于OSX的等价物堆叠法线贴图?

我一直在寻找基于OSX的替代基于Windows的xNormal和NVIDIA纹理工具,用于在Photoshop中堆叠法线贴图。 任何人都可以推荐一些东西,无论是独立包还是Photoshop插件?

以2Dforms化多个三角形的形状

这是由多个点,三角形和最终形状组成的一个形状的例子: 红点= Vector3(X,Y,Z)或Vector2(X,Y) 如果我有一定大小的纹理,如何以最好的方式纹理这个区域,使纹理内部的纹理与形状相匹配,并且不会在任何地方重叠? 也许还有机会缩放纹理,以防其对于形状太小或太大,但仍能正确渲染。 我是否将形状视为矩形? 找出它的四个角落? 或者,我计算中心 – (纹理宽度/ 2)和点之间的距离(看纹理在该轴上的“许多”倍之间的距离,以估计在该特定点处纹理的坐标? 我已经看过纹理映射,但没有find任何具体的例子,它解释得很好,它也混淆了纹理坐标的0.0-1.0值。

导致某些面部阴影的法线贴图

我在Max 2012中添加了一个法线贴图到MR拱门和devise材质。我在reflection彩色槽中有一个镜面,在漫reflection槽中有一个漫reflection。 当我增加正常地图的强度时,我的某些面部变暗,他们变得非常“明显”。 上次我摆弄这个时候,发生了同样的事情,这让我放弃了正常的地图和所有的东西。 一些紫外线是重叠的,法线贴图是用Nvidia的photoshop插件制作的。 我的场景有一个MR太阳和MR天空的日光系统。 有没有人有一个想法是什么造成这个? 正如你所看到的那样,整个脸部都被遮住了。 旁边的脸上有同样的问题,你看到相同的效果,但不那么困难。