- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我是OpenGL-ES的新手,正在寻找创建逼真的双眼模型的最佳方法,该模型的瞳孔可以扩张和收缩,因此在进行教程时,我要牢记一个计划。
最佳答案
您的问题有点老了,所以我不确定您取得了多少进步,但是当我自己不断攀升学习曲线时,我想我会在回答上有所作为。
如果要为模型的各个顶点设置动画,我相信您想要的方法是“顶点蒙皮”。尽管在OpenGL ES 2.0中只有这项技术,但是我还没有理由对此进行实验,因此我在这方面的发言不多。 (不管怎么说,这可能是您想从哪里开始的,超过1.1的增加的灵活性比学习曲线的任何其他倾斜都值得。)
您的纹理问题的答案有些复杂。您实际上需要在OpenGL中应用纹理。但是Blender可以为您做的是确定纹理坐标。网格的每个顶点将具有与其关联的纹理坐标。纹理坐标将是X,Y坐标,它们映射到纹理图像上的某个位置。坐标的范围是0.0到1.0-因此,由于图像纹理是矩形,因此纹理坐标{0,0}映射到左下角; {1,1}映射到右上角; {0.5,0.5}映射到图像的确切中心。
因此,在Blender中,您要继续使用UV贴图对对象进行纹理处理。导出时,尽管导出的网格将不包含任何图像内容,但它将保留映射到图像内容的纹理坐标。这将允许您在OpenGL中应用纹理,以便以与在Blender中出现的相同方式应用纹理。
我个人在让Jeff Lamarche的脚本吐出纹理坐标时遇到了一些麻烦,因为Blender api在每个发行版中似乎都发生了很大变化。 .obj转换器获得了更大的成功。所以我一直在从Blender导出到.obj,并使用命令行工具从.obj导出到C头文件。
如果您在Lamarche的脚本中遇到类似的问题,这篇文章可能会帮助解决它:http://38leinad.wordpress.com/2012/05/29/blender-2-6-exporting-uv-texture-coordinates/
对于.obj到.h脚本,这是一个很好的资源:
http://heikobehrens.net/2009/08/27/obj2opengl/
关于animation - OpenGL中眼睛模型瞳孔收缩/扩张的基本方法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10338200/
我是一名优秀的程序员,十分优秀!