LIBGDX / OpenGL:缩小所有内容的大小
LIBGDX / OpenGL : Reducing the size of everything
这可能是有史以来最糟糕的问题,但这将是一个很酷的成就。
我创建了一个由 1x1x1 立方体组成的 3D 世界(想想 Minecraft),所有数学运算都很棒等等。但是 1x1x1 几乎填满了整个屏幕(可视区域)
有什么方法可以更改 ViewPort 或其他东西,使 1x1x1 的大小是当前大小的一半?
相机设置代码
float aspectRatio = Gdx.graphics.getWidth() / Gdx.graphics.getHeight();
camera = new PerspectiveCamera(67, 1.0f * aspectRatio, 1.0f);
camera.near = 0.1f; // 0.5 //todo find out what this is again
camera.far = 1000;
fps = new ControlsController(camera , this, stage);
我正在使用 FirstPersonCameraController 和 PerspectiveCamera 尝试制作第一人称游戏
我猜问题是:
camera = new PerspectiveCamera(67, 1.0f * aspectRatio, 1.0f);
您的相机的标准初始化可能是(基于 this tutorial):
camera = new PerspectiveCamera(67, Gdx.graphics.getWidth(), Gdx.graphics.getHeight());
// ...
请注意相机的宽度和高度如何接近(如果不相同)原生 gdx window 尺寸的宽度和高度。在您的情况下,您将此大小设置为 1(与网格大小相同)。尝试使用更大的视口尺寸让您的网格更小(透视),例如:
/** Not too sure since is a perspective view, but play with this values **/
float multiplier = 2; // <- to allow your mesh be a fraction
// of the size of the viewport of the camera
camera = new PerspectiveCamera(67, multiplier * aspectRatio, multiplier );
这可能是有史以来最糟糕的问题,但这将是一个很酷的成就。
我创建了一个由 1x1x1 立方体组成的 3D 世界(想想 Minecraft),所有数学运算都很棒等等。但是 1x1x1 几乎填满了整个屏幕(可视区域)
有什么方法可以更改 ViewPort 或其他东西,使 1x1x1 的大小是当前大小的一半?
相机设置代码
float aspectRatio = Gdx.graphics.getWidth() / Gdx.graphics.getHeight();
camera = new PerspectiveCamera(67, 1.0f * aspectRatio, 1.0f);
camera.near = 0.1f; // 0.5 //todo find out what this is again
camera.far = 1000;
fps = new ControlsController(camera , this, stage);
我正在使用 FirstPersonCameraController 和 PerspectiveCamera 尝试制作第一人称游戏
我猜问题是:
camera = new PerspectiveCamera(67, 1.0f * aspectRatio, 1.0f);
您的相机的标准初始化可能是(基于 this tutorial):
camera = new PerspectiveCamera(67, Gdx.graphics.getWidth(), Gdx.graphics.getHeight());
// ...
请注意相机的宽度和高度如何接近(如果不相同)原生 gdx window 尺寸的宽度和高度。在您的情况下,您将此大小设置为 1(与网格大小相同)。尝试使用更大的视口尺寸让您的网格更小(透视),例如:
/** Not too sure since is a perspective view, but play with this values **/
float multiplier = 2; // <- to allow your mesh be a fraction
// of the size of the viewport of the camera
camera = new PerspectiveCamera(67, multiplier * aspectRatio, multiplier );