Aplicar transformaciones de matriz a BoundingBox
Tengo una matriz modelo que estoy manteniendo el seguimiento de la posición de la malla en mi mundo. Con cada llamada a glRotate()
y glTranslate()
tengo una llamada correspondiente a modelMatrix.rotate()
y modelMatrix.translate()
que parece estar funcionando correctamente.
Ahora necesito actualizar la caja delimitadora asociada a cada uno de mis modelos. Estoy trabajando en el marco libGDX y en la clase BoundingBox
encuentra aquí , hay un método mul()
que debería permitirme aplicar una matriz al cuadro delimitador pero los valores no se están actualizando correctamente y creo que puede ser el Manera que estoy tratando de aplicar. ¿Algunas ideas?
- Renderización SVG con OpenGL (y OpenGL ES)
- Uso seguro de glMapBufferRange () en Android / Java
- Android GLSurfaceView
- OpenGL (ES) - ¿Cuál es la diferencia entre frustum y ortho?
- Android Opengl ES Número máximo de texturas
Aquí está mi código relevante:
gl.glPushMatrix(); // Set the model matrix to the identity matrix modelMatrix.idt(); // Update the orbit value of this model orbit = (orbit + ORBIT_SPEED * delta) % 360; gl.glRotatef(orbit, 1.0f, 1.0f, 0); // Update the model matrix rotation modelMatrix.rotate(1.0f, 1.0f, 0, orbit); // Move the model to it's specified radius gl.glTranslatef(0, 0, -ORBIT_DISTANCE); // Update the model matrix translation modelMatrix.translate(0, 0, -ORBIT_DISTANCE); // Update the bounding box boundingBox.mul(modelMatrix); if (GameState.DEBUG) { renderBoundingBox(gl, delta); } // Bind the texture and draw texture.bind(); mesh.render(GL10.GL_TRIANGLES); gl.glPopMatrix();
- parámetros de glGenTexture?
- ¿Los OpenGL Point Sprites funcionan en Android?
- Dibujar texto o imagen en el flujo de la cámara (GLSL)
- GLSurfaceView procesa continuamente a pesar de cambiar el modo de render
- OpenGL ES 2.0 artefactos / dithering en FBO en Mali-400
- Preservar el contenido del búfer tras eglSwapBuffers
- La construcción de un visor de modelo 3d Android?
- Android OpenGL ES - Cómo dibujar un polígono cóncavo lleno?
Es importante el orden en que se calcula la multiplicación matricial. ¿Puede hacer ModelMatrix * Box en su lugar. Creo que ese es el problema.
- Prueba beta de Google Play y Referencia de campaña
- Error: Error al convertir bytecode a dex: Causa: no encontrado: Ljava / lang / Object;