make projective textures work in DIRECT+eglPlugin (see examples/pybullet/examples/projective_texture.py)

This commit is contained in:
erwincoumans
2018-10-05 19:24:44 -07:00
parent 111ffc784d
commit 2c13e70d1a
4 changed files with 44 additions and 0 deletions

View File

@@ -984,6 +984,16 @@ void EGLRendererVisualShapeConverter::setWidthAndHeight(int width, int height)
m_data->m_rgbColorBuffer = TGAImage(width, height, TGAImage::RGB);
}
void EGLRendererVisualShapeConverter::setProjectiveTextureMatrices(const float viewMatrix[16], const float projectionMatrix[16])
{
m_data->m_instancingRenderer->setProjectiveTextureMatrices(viewMatrix,projectionMatrix);
}
void EGLRendererVisualShapeConverter::setProjectiveTexture(bool useProjectiveTexture)
{
m_data->m_instancingRenderer->setProjectiveTexture(useProjectiveTexture);
}
//copied from OpenGLGuiHelper.cpp
void EGLRendererVisualShapeConverter::copyCameraImageDataGL(
unsigned char* pixelsRGBA, int rgbaBufferSizeInPixels,

View File

@@ -51,6 +51,9 @@ struct EGLRendererVisualShapeConverter : public UrdfRenderingInterface
virtual int loadTextureFile(const char* filename);
virtual int registerTexture(unsigned char* texels, int width, int height);
virtual void setProjectiveTextureMatrices(const float viewMatrix[16], const float projectionMatrix[16]);
virtual void setProjectiveTexture(bool useProjectiveTexture);
virtual void syncTransform(int shapeUid, const class btTransform& worldTransform, const class btVector3& localScaling);
};