我正在使用OpenGL ES 1.1,并将从Blender的OBJ导出转换为包含顶点数据的一些二进制文件。我其实已经有了一个工作工具,但我正在努力改变一些事情并且遇到一个问题。OBJ格式和平VS光滑底纹
即使使用平滑阴影,似乎使用正确的法线(垂直于脸部平面),它可以获得脸部的平整外观。启用平滑着色和正确的法线(只需通过在Blender中标记为尖锐的边缘和应用了边缘分割修改器),就可以获得平滑部分和锐利边缘的效果。
我要去哪里带来2个问题。
是“S 1”或“S关闭”,其中平滑的或平坦的阴影在OBJ文件从一个平滑阴影和使用法线的角度来看的完全不必要表示行?
当在OpenGL中实际设置为平面着色时,是否完全忽略了法线(或者只是假设所有都垂直于面)?
OBJ规范中没有任何内容说平滑组应该被解释为位掩码,但是以这种方式使用它们非常方便,所以我可以明白为什么游戏引擎可能会以这种方式对待它们。 – ideasman42 2013-08-26 21:14:18
@ ideasman42嗯,也许我从3DS格式中得到了这个,因为它们肯定是以这种方式使用的。当把他们作为光滑的组ID时,你不能让一个脸部属于多个组。 – 2013-08-26 21:23:43
不应该在5号线之后的所有面都是平滑组1和3的一部分,而是平滑组1和4。 – PinkTurtle 2016-02-09 13:53:21