簡體   English   中英

如何在3D模式下的LibGDX中在兩點之間畫一條線

[英]How to draw a line between two points in LibGDX, in 3D

我正在嘗試學習LibGDX的3D方面,但是遇到了問題。 我想從畫線0, 0, -50, 0, 5 我已經嘗試了一些方法來完成這項工作。
首先,我查看是否可以創建一條線作為Model 據我所知,我做不到。
然后我意識到,理論上我可以使用ShapeRenderer畫一條線。 這是我嘗試執行此操作的代碼。

public class Main implements ApplicationListener {
    ...
    public ShapeRenderer srend;
    ...
    @Override
    public void create() {
        ...
        srend = new ShapeRenderer();
        srend.setColor(Color.RED);
        ...
    }

    @Override
    public void render() {
        ...
        srend.begin(ShapeType.Line);
        srend.line(0, 0, -5, 0, 0, 5);
        srend.end();
        ...
    }
    ...
}

但是由於某種原因,這似乎不起作用。 我經常使用ShapeRenderers,但是初始化或使用它時可能會出錯,但我認為這並不是問題所在。
我只是剛剛開始使用LibGDX的3D部分,所以我認為問題出在我繪制實際線條的地方。

模型構建器對我來說效果很好。

ModelBuilder modelBuilder = new ModelBuilder();
modelBuilder.begin();
MeshPartBuilder builder = modelBuilder.part("line", 1, 3, new Material());
builder.setColor(Color.RED);
builder.line(0.0f, 0.0f, -5.0f, 0.0f, 0.0f, 5.0f);
lineModel = modelBuilder.end();
lineInstance = new ModelInstance(lineModel);

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM