0

我正在自学opengl es。我最近想出了如何从 .OBJ 文件解析/加载网格。我现在正在尝试对其应用纹理,我知道我只能使用一组索引..除此之外,我迷失了在我的立方体上绘制纹理所需的概念和代码。非常感谢对所需内容、代码和正在发生的事情的描述的详细/半详细解释。我在这个主题上没有找到太多关于 opengl 的内容,而且解释对我来说有点模糊。请记住我使用的是opengl es。提前致谢。顺便说一句,如果有帮助,这是 .OBJ 文件

enter code here
# Blender v2.62 (sub 0) OBJ File: ''

www.blender.org

mtllib untitled.mtløCube_Cube.002 v 1.067472 -0.769912 -1.117719 1.067472 v -0.769912 0.882281 -0.932528 v -0.769912 0.882281 -0.932527 v -0.769912 -1.117719 v 1.067473 1.230088 -1.117718 v 1.067472 1.230088 0.882282 v -0.932528 1.230088 0.882281 v -0.932528 1.230088 -1.117719 VT 0.951958 0.112804 0.951958 VT VT -0.887196 -0.048042 -0.887196 -0.048042 VT VT 0.112804 0.058859 0.112804 0.058859 VT VT 1.112804 1.058859 1.112804 1.058859 VT VT 0.112804 0.951958 1.112804 -0.941141 VT VT 0.112804 -0.941141 -0.887196 0.951958 VT VT 0.058859 -0.048042 0.058859 VT 0.951958 -0.941141 vt 1.951958 -0.941141 vt -0.048042 -0.941141 usemtl Material.001 s off f 5/1 1/2 4/3 f 5/1 4/3 8/4 f 3/5 7/6 8/7 f 3 /5 8/7 4/8 f 2/1 6/9 3/4 f 6/1 7/4 3/3 f 1/5 5/6 2/10 f 5/5 6/10 2/11 f 5 /12 8/13 6/14 f 8/12 7/14 6/15 f 1/12 2/14 3/16 f 1/12 3/16 4/13

PS我了解如何阅读/解析/理解文件的这些方面。我只需要澄清我应该如何将一个索引缓冲区用于纹理和顶点,同时只调用一次drawelements。再次感谢!

4

1 回答 1

0

我不知道搅拌机是否可以做到这一点,但存在一些工具可以用一组索引导出 .obj 。这将如下所示:

f 6/6/6 1/1/1 4/4/4 
f 4/4/4 1/1/1 3/3/3 
f 1/1/1 2/2/2 3/3/3 
f 12/12/12 2/2/2 1/1/1 
f 11/11/11 12/12/12 1/1/1 
f 11/11/11 81/81/81 12/12/12 

例如,当您将场景(由 StaticMesh 制成)导出为 .obj 格式时,UDK 会执行此操作。使用以这种方式导出 .obj 的工具对您来说是最简单的解决方案。但是,您可以根据从代码中的 .obj 读取的内容自行重建数组,但这是一个无聊且不必要的耗时操作。

于 2012-05-15T20:48:22.060 回答