小编Les*_*tat的帖子

导入javax.vecmath

我想javax.vecmath在我的Java程序中使用但不幸的是它说:

导入javax.vecmath无法解析

我应该在项目中自己添加jar吗?我在哪里可以找到该jar文件?我在Ubuntu/Eclipse Galileo上.

java eclipse jar vecmath

7
推荐指数
3
解决办法
2万
查看次数

LibGDX中的表中的LinearLayout模拟

我想使用带有以下布局的scene2d包在LibGDX中创建一个游戏菜单屏幕

|    label    |
| btn btn btn |
|    label    |
Run Code Online (Sandbox Code Playgroud)

我的代码如下:

Table table = getTable();
table.add(label1);
table.row();
table.add(button1);
table.add(button2);
table.add(button3);
table.row();
table.add(label2);
table.row();
Run Code Online (Sandbox Code Playgroud)

但不是我想要的,我得到这样的东西:

| label       |
| btn btn btn |
| label       |
Run Code Online (Sandbox Code Playgroud)

原因是因为每个table.add()方法调用都会创建一个新的单元格.但我想将所有3个按钮放在一个单元格内.我怎样才能达到预期的效果,可能在LibGDX中存在类似的东西LinearLayout或其他什么?

layout android libgdx scene2d

7
推荐指数
1
解决办法
3367
查看次数

使用libgdx绘制填充多边形

我想用libgdx绘制一些(填充的)多边形用于Android游戏.它不应该充满图形/纹理.我只有多边形(闭合路径)的顶点,并试图与网格的可视化,但在某些时候,这不是最好的解决办法,我想.

我的矩形代码是:

private Mesh mesh;
@Override
public void create() {
    if (mesh == null) {
        mesh = new Mesh(true, 4, 0, 
                new VertexAttribute(Usage.Position, 3, "a_position")
        );
        mesh.setVertices(new float[] { -0.5f, -0.5f, 0
                                        0.5f, -0.5f, 0,
                                        -0.5f, 0.5f, 0,
                                        0.5f, 0.5f, 0 });

    }
}
...
@Override
public void render() {
    Gdx.gl.glClear(GL10.GL_COLOR_BUFFER_BIT);
    mesh.render(GL10.GL_TRIANGLE_STRIP, 0, 4);
}
Run Code Online (Sandbox Code Playgroud)

是否有一个函数或东西以更简单的方式绘制填充多边形?

java libgdx

7
推荐指数
2
解决办法
3万
查看次数

如何检查两个Box2d机构是否在任何时刻发生碰撞/重叠?

如何检查2个物体(两个夹具)是否碰撞(重叠)?

我知道ContactListener在它们开始碰撞时和停止时触发方法.但有没有办法在任何特定时刻检查它?喜欢:

if(body1.overlaps(body2))...
Run Code Online (Sandbox Code Playgroud)

其他细节,其中之一是传感器.这是在libgdx中.

java android box2d libgdx

7
推荐指数
1
解决办法
7071
查看次数

网格上的纹理无法正确呈现Libgdx

我试图在网格上放置一个纹理,但是失败了.我试图渲染这样的东西,可以看到纹理,但我得到了这个,我几乎看不到三角形.我正在运行以下代码:

public class Game implements ApplicationListener{

Mesh mesh;
ShaderProgram shader;
Texture texture;

public static void main(String[] args) {
    LwjglApplication app = new LwjglApplication(new Game(), "Mesh Tutorial 1", 800, 600, true);
}

protected static ShaderProgram createMeshShader() {

    String vert = Gdx.files.internal("data/VertexShader.txt").readString();
    String frag = Gdx.files.internal("data/FragmentShader.txt").readString();

    ShaderProgram.pedantic = false;
    ShaderProgram shader = new ShaderProgram(vert, frag);
    return shader;
}

@Override
public void create() {


    if (mesh == null) {
        mesh = new Mesh(true, 3, 3, 
                new VertexAttribute(Usage.Position, 3, ShaderProgram.POSITION_ATTRIBUTE), …
Run Code Online (Sandbox Code Playgroud)

java opengl shader mesh libgdx

7
推荐指数
1
解决办法
1940
查看次数

libGDX JglfwApplication vs LwjglApplication

有人可以解释LwjglApplication和JglfwApplication之间的区别吗?

Lwgl和Jglf代表2个缩写词是什么?

libgdx

7
推荐指数
1
解决办法
582
查看次数

在libgdx模型加载器演示中,font.draw()没有在屏幕上放置"fps"文本

我开始使用libgdx.我在trunk(StillModelViewerGL20.java)中打开了示例模型加载器.在源代码中,我在render回调中看到了这段代码:

batch.begin();  
font.draw(batch, "fps: " + Gdx.graphics.getFramesPerSecond(), 20, 30);    
batch.end();
Run Code Online (Sandbox Code Playgroud)

但我在屏幕上看不到任何文字.在此示例中是否需要修复以查看文本?

java text libgdx

6
推荐指数
1
解决办法
2391
查看次数

着色器/矩阵问题 - 看不到对象

我试图在屏幕上放一个立方体并点亮它.我想在立方体上加一个阴影.

当我运行我的代码时,我可以看到背景图像,但没有立方体.

我很确定立方体本身是正确的,因为我设法用纯色着色器显示它.

我已经设法让着色器程序编译,但我根本看不到立方体.我不知道GLES/LibGdx是否有运行时异常的机制,但我在日志中看不到任何内容.

我在假设

  • 该模型不在视野范围内
  • 该模型呈现透明

我试图将我的代码削减到我认为问题所在的位置.如果您还需要查看其他内容,请询问.

建立

shader = new ShaderProgram(
        Gdx.files.internal("shaders/phongVertexShader.glsl"),
        Gdx.files.internal("shaders/phongFragmentShader.glsl"));
if (!shader.isCompiled()) {
    throw new IllegalStateException(shader.getLog());
}
mesh = Shapes.genCube();
mesh.getVertexAttribute(Usage.Position).alias = "a_position";
mesh.getVertexAttribute(Usage.Normal).alias = "a_normal";
Run Code Online (Sandbox Code Playgroud)

给予

public void onRender() {
    Gdx.gl.glClearColor(0, 0, 0, 1);
    Gdx.gl.glClear(GL10.GL_COLOR_BUFFER_BIT);
    batch.setProjectionMatrix(camera.combined);

    angle += Gdx.graphics.getDeltaTime() * 40.0f;
    float aspect = Gdx.graphics.getWidth()
            / (float) Gdx.graphics.getHeight();
    projection.setToProjection(1.0f, 20.0f, 60.0f, aspect);
    view.idt().trn(0, 0, -2.0f);
    model.setToRotation(axis, angle);
    combined.set(projection).mul(view).mul(model);

    Gdx.gl20.glViewport(0, 0, Gdx.graphics.getWidth(),
        Gdx.graphics.getHeight());

    shader.begin();

    float[] light = {10, 10, 10};

    shader.setUniformMatrix("mvpMatrix", combined); …
Run Code Online (Sandbox Code Playgroud)

java opengl opengl-es matrix libgdx

6
推荐指数
1
解决办法
1060
查看次数

在libgdx UI中设置复选框图像的大小

我无法弄清楚如何管理复选框图像大小.当然,可以在我的纹理图集中创建不同大小的图像并采取适当的图像,但我不想这样做.

这是我的代码:

AtlasRegion checkboxOn = AssetsHelper.textures.findRegion("checked");
AtlasRegion checkboxOff = AssetsHelper.textures.findRegion("unchecked");
CheckBoxStyle checkBoxStyle = new CheckBoxStyle();
checkBoxStyle.font = AssetsHelper.font66yellow;
checkBoxStyle.checkboxOff = checkboxOff;
checkBoxStyle.checkboxOn = checkboxOn;
CheckBox cbSound = new CheckBox(" Sound", checkBoxStyle);
Run Code Online (Sandbox Code Playgroud)

cbSound对象没有这样的方法来重新定义复选框的图像,但是有方法getImage(),但似乎它也不起作用.这不起作用:

cbSound.getImage().width = 120;
cbSound.getImage().height = 120;
Run Code Online (Sandbox Code Playgroud)

仅供参考:例如,当我想绘制图像时,我确实喜欢这样:

batch.draw(textureRegion, 0, 0, widthIwant, heightIwant);
Run Code Online (Sandbox Code Playgroud)

但是在CheckBox类中只覆盖了这个(没有设置宽度和高度):

public void draw (SpriteBatch batch, float parentAlpha) {
    image.setRegion(isChecked ? style.checkboxOn : style.checkboxOff);
    super.draw(batch, parentAlpha);
}
Run Code Online (Sandbox Code Playgroud)

问题:如何更改复选框图像的宽度和高度?

提前致谢.

java checkbox game-engine libgdx

6
推荐指数
1
解决办法
3392
查看次数

libGDX IntelliJ IDEA无法访问com.badlogic.gdx.Application

我用libGDX setup ui创建了一个项目.该项目在Eclipse中运行良好但是当我在Android Studio中导入它时,android项目MainActivity.java抛出了4个异常:

java: cannot access com.badlogic.gdx.Application
class file for com.badlogic.gdx.Application not found

java: cannot find symbol
symbol:   variable super
location: class com.vestrel00.nekko.MainActivity

java: cannot find symbol
symbol:   method initialize(com.vestrel00.nekko.KFNekko,com.badlogic.gdx.backends.android.AndroidApplicationConfiguration)
location: class com.vestrel00.nekko.MainActivity

java: method does not override or implement a method from a supertype
Run Code Online (Sandbox Code Playgroud)

有没有人有办法解决吗?

android intellij-idea libgdx android-studio

6
推荐指数
1
解决办法
7374
查看次数