|
| SLGLTextureIBL () |
| Default constructor. More...
|
|
| SLGLTextureIBL (SLAssetManager *assetMgr, SLstring shaderPath, SLGLTexture *sourceTexture, SLVec2i size, SLTextureType texType, SLenum target, SLbool readBackPixels=true, SLint min_filter=GL_LINEAR, SLint mag_filter=GL_LINEAR) |
| ctor for generated textures More...
|
|
virtual | ~SLGLTextureIBL () |
|
virtual void | build (SLint texID=0) |
|
void | logFramebufferStatus () |
|
| SLGLTexture () |
| Default ctor for all stack instances (not created with new) More...
|
|
| SLGLTexture (SLAssetManager *assetMgr, const SLVCol4f &colors, SLint min_filter=GL_LINEAR, SLint mag_filter=GL_LINEAR, SLint wrapS=GL_REPEAT, const SLstring &name="2D-Texture") |
| ctor for 1D texture with internal image allocation More...
|
|
| SLGLTexture (SLAssetManager *assetMgr, SLint min_filter, SLint mag_filter, SLint wrapS, SLint wrapT, SLenum target=GL_TEXTURE_2D) |
| ctor for empty 2D textures More...
|
|
| SLGLTexture (SLAssetManager *assetMgr, unsigned char *data, int width, int height, int cvtype, SLint min_filter, SLint mag_filter, SLTextureType type, SLint wrapS, SLint wrapT) |
| ctor for 2D textures from byte pointer More...
|
|
| SLGLTexture (SLAssetManager *assetMgr, const SLstring &imageFilename, SLint min_filter=GL_LINEAR_MIPMAP_LINEAR, SLint mag_filter=GL_LINEAR, SLTextureType type=TT_unknown, SLint wrapS=GL_REPEAT, SLint wrapT=GL_REPEAT) |
| ctor for 2D textures with internal image allocation More...
|
|
| SLGLTexture (SLAssetManager *assetMgr, const SLVstring &imageFilenames, SLint min_filter=GL_LINEAR, SLint mag_filter=GL_LINEAR, SLint wrapS=GL_REPEAT, SLint wrapT=GL_REPEAT, const SLstring &name="3D-Texture", SLbool loadGrayscaleIntoAlpha=false) |
| ctor for 3D texture with internal image allocation More...
|
|
| SLGLTexture (SLAssetManager *assetMgr, SLint depth, const SLstring &imageFilename, SLint min_filter=GL_LINEAR, SLint mag_filter=GL_LINEAR, SLint wrapS=GL_REPEAT, SLint wrapT=GL_REPEAT, const SLstring &name="3D-Texture", SLbool loadGrayscaleIntoAlpha=false) |
| ctor for 3D texture from a single file with depth as 3rd dimension More...
|
|
| SLGLTexture (SLAssetManager *assetMgr, const SLstring &imageFilenameXPos, const SLstring &imageFilenameXNeg, const SLstring &imageFilenameYPos, const SLstring &imageFilenameYNeg, const SLstring &imageFilenameZPos, const SLstring &imageFilenameZNeg, SLint min_filter=GL_LINEAR, SLint mag_filter=GL_LINEAR, SLTextureType type=TT_unknown) |
| ctor for cube mapping with internal image allocation More...
|
|
| ~SLGLTexture () override |
|
virtual void | build (SLint texUnit) |
|
void | deleteData () |
| Delete all data (CVImages and GPU textures) More...
|
|
void | deleteDataGpu () |
| Deletes the OpenGL texture objects and releases the memory on the GPU. More...
|
|
void | deleteImages () |
| Deletes the CVImages in _images. No more texture mapping in ray tracing. More...
|
|
void | bindActive (SLuint texUnit=0) |
|
void | fullUpdate () |
|
void | drawSprite (SLbool doUpdate, SLfloat x, SLfloat y, SLfloat w, SLfloat h) |
| Draws the texture as 2D sprite with OpenGL buffers. More...
|
|
void | cubeUV2XYZ (SLint index, SLfloat u, SLfloat v, SLfloat &x, SLfloat &y, SLfloat &z) |
| Computes the unnormalised vector x,y,z from tex. coords. uv with cubemap index. More...
|
|
void | cubeXYZ2UV (SLfloat x, SLfloat y, SLfloat z, SLint &index, SLfloat &u, SLfloat &v) |
| Computes the uv and cubemap image index from a unnormalised vector x,y,z. More...
|
|
SLstring | filterString (SLint glFilter) |
| Returns OpenGL texture filter as string. More...
|
|
void | texType (SLTextureType bt) |
|
void | uvIndex (SLbyte i) |
|
void | bumpScale (SLfloat bs) |
|
void | minFiler (SLint minF) |
|
void | magFiler (SLint magF) |
|
void | needsUpdate (SLbool update) |
|
void | textureSize (int width, int height) |
|
void | deleteImageAfterBuild (SLbool delImg) |
| If deleteImageAfterBuild is set to true you won't be able to ray trace the scene. More...
|
|
SLuint | width () |
|
SLuint | height () |
|
SLuint | depth () |
|
SLbyte | uvIndex () |
|
SLint | bytesPerPixel () |
|
SLint | bytesOnGPU () |
|
SLint | bytesInFile () |
|
CVVImage & | images () |
|
SLenum | target () const |
|
SLuint | texID () const |
|
SLTextureType | texType () |
|
SLfloat | bumpScale () const |
|
SLCol4f | getTexelf (SLfloat u, SLfloat v, SLuint imgIndex=0) |
| SLGLTexture::getTexelf returns a pixel color from u & v texture coordinates. More...
|
|
SLCol4f | getTexelf (const SLVec3f &cubemapDir) |
| SLGLTexture::getTexelf returns a pixel color at the specified cubemap direction. More...
|
|
SLbool | hasAlpha () |
|
SLMat4f | tm () |
|
SLbool | autoCalcTM3D () const |
|
SLbool | needsUpdate () |
|
SLstring | typeName () |
| Returns the texture type as string. More...
|
|
SLstring | typeShortName () |
| Returns the texture type short. More...
|
|
bool | isTexture () |
|
SLstring | minificationFilterName () |
|
SLstring | magnificationFilterName () |
|
void | build2DMipmaps (SLint target, SLuint index) |
|
SLbool | copyVideoImage (SLint camWidth, SLint camHeight, CVPixelFormatGL glFormat, SLuchar *data, SLbool isContinuous, SLbool isTopLeft) |
| Copies the image data from a video camera into the current video image. More...
|
|
SLbool | copyVideoImage (SLint camWidth, SLint camHeight, CVPixelFormatGL srcFormat, CVPixelFormatGL dstFormat, SLuchar *data, SLbool isContinuous, SLbool isTopLeft) |
|
void | calc3DGradients (SLint sampleRadius, const function< void(int)> &onUpdateProgress) |
|
void | smooth3DGradients (SLint smoothRadius, function< void(int)> onUpdateProgress) |
|
SLVec2f | dudv (SLfloat u, SLfloat v) |
|
| SLObject (const SLstring &Name="", const SLstring &url="") |
|
virtual | ~SLObject () |
|
void | name (const SLstring &Name) |
|
void | url (const SLstring &url) |
|
const SLstring & | name () const |
|
const SLstring & | url () const |
|
Texture object generated in run time from another texture.
This class is mainly used to generate the textures used for reflections in the Image Base Lighting (IBL) techniques. It takes a source texture and projects it into a cube map with different rendering techniques to produces the textures needed in IBL like the irradiance or the prefilter map. This textures can be given to the SLMaterial with IBL. It uses the SLGLFrameBuffer class to render the scene into a cube map. These generated textures only exist on the GPU. There are no images in the SLGLTexture::_images vector.