2012-08-13 16 views
5

मेरे पास एक बहुत ही सरल प्रोग्राम है, जो एक तरंगफ्रंट ओबीजे फ़ाइल लोड करता है, घूमता है और इसे प्रदर्शित करता है। समस्या यह है कि कार्यक्रम इसे कुछ मुद्दों (जैसे गायब त्रिकोण) के साथ प्रस्तुत करता है। मुझे एक ही समस्या थी जब मैंने नेहे के ट्यूटोरियल से ली गई वर्टेक्स बफर के साथ पिरामिड प्रस्तुत करने का प्रयास किया। इसलिए मुझे नहीं पता कि इस प्रतिपादन के कारण क्या हैं। क्या आप मेरी मदद कर सकते हैं? Buggy Space Shuttleमेष प्रतिपादन समस्या libgdx

package com.jam.libgdx3DTest; 

import com.badlogic.gdx.Game; 
import com.badlogic.gdx.Gdx; 
import com.badlogic.gdx.graphics.*; 
import com.badlogic.gdx.graphics.g3d.loaders.obj.ObjLoader; 

import java.io.InputStream; 

public class Libgdx3DTest extends Game { 

    private Mesh shuttleMesh; 
    private Camera camera; 
    private float rotateAngle; 

    public void create() { 
     if (shuttleMesh == null) { 
      InputStream in = Gdx.files.internal("shuttle.obj").read(); 
      shuttleMesh = ObjLoader.loadObj(in, false); 
     } 
    } 

    public void render() { 
     Gdx.gl.glClear(GL10.GL_COLOR_BUFFER_BIT | GL10.GL_DEPTH_BUFFER_BIT); 

     Gdx.gl10.glMatrixMode(GL11.GL_MODELVIEW_MATRIX); 

     Gdx.gl10.glLoadIdentity(); 

     camera.update(); 
     camera.apply(Gdx.gl10); 

     rotateAngle += 0.5f; 
     Gdx.gl10.glRotatef(rotateAngle, 0f, 1f, 0f); 
     Gdx.gl10.glRotatef(-90f, 1f, 0f, 0f); 

     shuttleMesh.render(GL11.GL_TRIANGLES); 
    } 

    public void resize(int width, int height) { 
     float aspectRatio = (float) width/(float) height; 
     camera = new PerspectiveCamera(67, 2f * aspectRatio, 2f); 
     camera.translate(0f, 0f, 12f); 
    } 

    public void pause(){ 
    } 

    public void resume(){ 
    } 

    public void dispose() { 
    } 
} 
+2

अगर यह जवाब मदद कर सकते हैं देखें होना चाहिए: http://stackoverflow.com/questions/9019669/ एंड्रॉइड-जाल-रेंडर-इश्यू – Wroclai

+0

धन्यवाद आदमी, मुझे लगता है कि शायद यह समस्या है। मैं मॉडल को "त्रिकोणीय" करने की कोशिश करूंगा। –

उत्तर

2

मैं तुम्हें घुमावदार मुद्दों कर रहा हो सकता है लगता है अर्थात मॉडल अलग ओपन से घुमावदार है।

ओपनजीएल विंडिंग डिफ़ॉल्ट रूप से विपरीत रूप से है हालांकि इसे glFrontFace (GL_CW) के साथ बदला जा सकता है;

0

मुझे लगता है कि यह आपकी समस्या

है
shuttleMesh.render(GL11.GL_TRIANGLES) 

shuttleMesh.render(GL11.GL_TRIANGL_FAN); 

मा को