2016-06-12 15 views
0

libGdxでモデルのレンダリングに問題があります。
私はブレンダーで単純な車モデルを作成しましたが、libGdxでレンダリングすると、レンダリングが正しく行われません。 enter image description hereBlenderモデルがlibGDXで正しくレンダリングされていません

これは、それがlibGdxでどのように見えるかです:あなたが見ることができるように

、車輪が全てです。これは、それが(それが見えるようになっているか)をブレンダーに見えるものである
間違った方向を指していますが、私はそれらをまったく回していないので意味がありません。

モデルにオブジェクトが1つしかないときに機能しますが、ホイールなどのオブジェクトを追加するとこのようなことが起こります。ここで

public void create() { 
    camera=new PerspectiveCamera(67,800,480); 
    camera.position.set(0f, 0f, 20f); 
    camera.lookAt(0f, 0f, 0f); 
    camera.near=1f; 
    camera.far=100f; 

    batch=new ModelBatch(); 
    builder=new ModelBuilder(); 

    UBJsonReader jsonreader=new UBJsonReader(); 
    G3dModelLoader modelloader=new G3dModelLoader(jsonreader); 
    cubemodel=modelloader.loadModel(Gdx.files.getFileHandle("carmodel.g3db", Files.FileType.Internal)); 
    cube=new ModelInstance(cubemodel,0,0,0); 


    environment=new Environment(); 
    environment.set(new ColorAttribute(ColorAttribute.AmbientLight,0.65f,0.65f,0.65f,1f)); 


} 

は私の(レンダリングです)方法:ここで

public void render() { 
    Gdx.gl.glClearColor(1, 1, 1, 1); 
    Gdx.gl.glClear(GL20.GL_COLOR_BUFFER_BIT | GL20.GL_DEPTH_BUFFER_BIT); 

    Gdx.gl20.glEnable(GL20.GL_DEPTH_TEST); 
    camera.update(); 
    batch.begin(camera); 
    batch.render(cube, environment); 
    batch.end(); 
    camera.rotateAround(new Vector3(0f, 0f, 0f), new Vector3(0f, 1f, 0f), 0.5f); 
} 

は私のモデルである: carmodel.g3db

あなたが何かを必要とする場合はここで

は私のcreate()メソッドであります私はそれを投稿します。

ありがとうございます!

+0

カメラの遠近度は10,000です。 100のようなエラーの少ないものに減らしてください。 – Xoppa

+0

@Xoppaは既に試してみましたが、うまくいきませんでした。私は10と1000近くを使用しました – Paul

答えて

1

私はBlenderを使ってからしばらくしていますが、これはLibGDXでモデルの向きを一致させるために使用した設定です。これにより、LibGDXカメラの向きと位置がBlenderカメラと同じであれば、シーンは同じになります。

  1. モデルを通常作成してください。 Blenderファイルを保存します。
  2. 各モデルの中心を中心に+ X軸を中心に90度回転させて変形を適用します。
  3. -Z forwardとY upをエクスポートします。
  4. 元の向きでモデルをさらに変更したい場合は、Blenderファイルを保存しないでください。
+0

私の質問があいまいに見える場合は謝罪し、モデルの向きは問題ではありません。モデルの向きは問題ありません。問題は、モデルが適切にレンダリングされないことです。 – Paul

+0

あなたのモデルの法線が反転しているようです。 – Tenfour04

+0

ああ、彼らが正常になるようにそれらを逆転させる方法を教えてもらえますか?どうもありがとうございました。私は今、問題が一日以上あったのかと思っていました。 – Paul

関連する問題