2
我还没有在LibGDX(OpenGL ES 2.0)中找到任何使用透视相机的示例。如何启动它并在渲染方法中使用它?任何帮助将不胜感激!LibGDX - 使用OpenGL ES 2.0的透视相机
我还没有在LibGDX(OpenGL ES 2.0)中找到任何使用透视相机的示例。如何启动它并在渲染方法中使用它?任何帮助将不胜感激!LibGDX - 使用OpenGL ES 2.0的透视相机
在某种程度上,您可以使用透视摄像机作为正视摄像机(设置位置,查看,向上)。最大的不同之处在于,视口大小(屏幕上显示的大小)取决于到物体的距离和视场角。有很多各地的网络理论,但得到的libgdx开始,你可以按照这个example
编辑:提供 示例使用GL 1.x的我还以为你只是不知道如何使用透视相机。你混淆了两个不同的问题。
要完成我的答案,一旦你更新你的相机(cam.update)insted的调用camera.apply(Gdx.gl10);
你给的矩阵着色器 - 这将取决于你的着色器,但最简单的情况是这样的:
shader.setUniformMatrix("u_modelviewporj_mat", cam.combined);
如何在'render'方法中使用它?在'resize'方法中,我初始化它如下:float aspectRatio =(float)width /(float)height; camera =新的PerspectiveCamera(67,2f * aspectRatio,2f);然后我在渲染方法中旋转,翻译等。我怎样才能申请它?它需要GL10,但我需要GL20。它没有任何影响 – Nolesh
要在OpenGL20中应用它,你必须更新它 - cam.update(),然后将它传递给着色器(就像正射相机一样)。模型视图投影矩阵将是cam.combined –
如果您不知道如何在GLES 2.0中使用Ortho相机,可能应该编辑您的问题并询问如何在GLES 2.0中使用相机,因为没有区别在使用GLES 2.0中的正射或透视相机之间。 –