- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我对 libgdx 有疑问。我想举一个关于放大、缩小的简单示例,但 orthographicCamera 没有做任何事情。
我的代码:
public class HitTheGreenBlock extends ApplicationAdapter {
public static int WIDTH, HEIGHT;
SpriteBatch batch;
OrthographicCamera orthographicCamera;
private StateManager stateManager;
@Override
public void create () {
WIDTH = Gdx.graphics.getWidth();
HEIGHT = Gdx.graphics.getHeight();
batch = new SpriteBatch();
orthographicCamera = new OrthographicCamera();
orthographicCamera.translate(WIDTH /20 , HEIGHT / 20);
orthographicCamera.update();
stateManager = new StateManager();
}
@Override
public void render () {
Gdx.gl.glClearColor(1, 0.78f, 0.25f, 1);
Gdx.gl.glClear(GL20.GL_COLOR_BUFFER_BIT);
stateManager.update(Gdx.graphics.getDeltaTime());
stateManager.draw(batch);
}
}
以及将图像绘制到屏幕的类:
public class PlayState extends MainState{
public PlayState(StateManager stateManager){
super(stateManager);
}
private int width,height;
public void init() {
width = 2 * HitTheGreenBlock.WIDTH / 3;
height = width;
ImageLoader.load();
}
public void update(float dt) {
}
public void draw(SpriteBatch spriteBatch) {
spriteBatch.begin();
spriteBatch.draw(ImageLoader.greenRegion, (Gdx.graphics.getWidth() - width) / 2, Gdx.graphics.getHeight() / 5, width, height);
spriteBatch.end();
}
public void handleInput() {
}
public void dispose() {
}
}
我将 spriteBatch 从 HitTheGreenBlock.class 发送到 PlayState.class。
我改变了这一行:
orthographicCamera.translate(WIDTH , HEIGHT);
到这一行:
orthographicCamera.translate(WIDTH /20 , HEIGHT / 20);
但是 orthographicCamera 做任何事情,图像大小都不会改变。
我的代码有什么问题?
*我还有3个类(class),如果需要我也可以加。
最佳答案
您是否尝试过在 spriteBatch 上将投影矩阵设置为 camera.combined?在 spriteBatch.begin 之前,放入 spriteBatch.setProjectionMatrix(camera.combined);
这样做会告诉 spriteBatch 相对于您的相机进行渲染。
关于java - Libgdx,OrthographicCamera 不工作(放大,缩小),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36250719/
我目前正在尝试使用 Three.js 和 WebGL 以同构方式渲染场景。我发现一些文章提到了 OrthographicCamera 来实现这一点。我添加了它并注意到一些奇怪的结果。场景的一部分现在完
OrthographicCamera 可以使用 Projector 和 Ray 吗? 我搜索了它,但没有找到任何示例或文档。我的相机也没有设置在屏幕中央。 camera = new THREE.Ort
我在使用 libGDX 中的 Camera 类时遇到问题,即使它的位置发生变化,我也无法直观地移动它。 这就是我设置相机的方式: camera = new OrthographicCamera(fru
我的目标是在 3D 场景之上渲染 2D 场景以获得简单的 HUD。但是,正如您在 jsFiddle 中看到的那样,似乎只有透视相机被渲染。 var camera, scene, renderer, g
我正在尝试制作一款像 Mega Jump 这样的游戏。 现在我遇到了一个问题:我不知道如何在所有设备上获得相同数量的项目列。以及如果玩家到达屏幕末端如何让他到达屏幕的对面。 我正在使用 Orthogr
我已经找了 10 个小时(字面上),我已经完成了,我需要问一下。事情是我正在学习如何使用 LibGdx 来编写 Java 游戏。我正在做一个水平 spaceship 游戏。所以,我这里最糟糕的问题是我
我有一个带有 OrthographicCamera 的舞台,还有一个带有 addListener setter (来自 actor 类)的 InputListener 的 Actor。问题是 acto
我对 libgdx 有疑问。我想举一个关于放大、缩小的简单示例,但 orthographicCamera 没有做任何事情。 我的代码: public class HitTheGreenBlock ex
我想要两个 SpriteBatch 对象,一个用于实际 Sprite ,一个用于 HUD。我不知道如何使一个 SpriteBatch 保持相对于屏幕的位置,但让另一个 SpriteBatch 以玩家
我只是有一个简单的问题(这对你来说可能很明显,但我对 libGDX 和一般图形还是比较陌生): 什么时候调用 libGDX 中的 camera.update() 方法最好?具体来说,在更新相机之前或之
我正在使用 OrbitControls 来控制正交相机。该场景具有 2d 纹理图像。 当到达图像边缘时,我想限制相机的平移。 例如,当摄像机向左平移,在 View 窗口中图像向右平移时,当图像的左边缘
我是一名优秀的程序员,十分优秀!