我使用https://github.com/BennyQBD/3DGameEngine中的3D游戏引擎作为创建球形网格的起点。稍后的目标是能够在运行时控制该网格的顶点。
在继续之前,我需要确保能够在程序上创建网格。将网格物体放入GameEngine有两种方法。
我的项目位于https://github.com/TomaszNaglik/GameEngine。 目前的提交:77b5495
我设置游戏环境的游戏文件:com.base.game/TestSphere.java 我开始在第44行构建网格:
Vertex[] vertices = { new Vertex(new Vector3f(-1,-1,0), new Vector2f(0,0)),
new Vertex(new Vector3f(0,1,0), new Vector2f(0.5f,0)),
new Vertex(new Vector3f(1,-1,0), new Vector2f(1.0f,0)),
new Vertex(new Vector3f(0,-1,1), new Vector2f(0.5f,1.0f))};
int[] indices = new int[] {3,1,0,
2,1,3,
0,1,2,
0,2,3};
Mesh pyramid = new Mesh(vertices, indices,true);
Material material = new Material(new Texture("bricks2.jpg"), 1, 8,new Texture("bricks2_normal.png"), new Texture("bricks2_disp.jpg"), 0.04f, -1.0f);
GameObject myMesh = new GameObject();
AddObject(myMesh);
myMesh.AddComponent(new MeshRenderer(pyramid, material)).AddComponent(new Rotate(0.005f));
myMesh.GetTransform().GetPos().Set(5, 0, 5);
据我所知,问题可能出在网格或材质上。网格是可见的,但纹理不是。该材质适用于不同的导入网格。我基本上卡住了。我可以从这里走向哪个方向?
谢谢你。
Tomasz Naglik