![]() |
VR-Forces 4.8 Class Documentation
|
Wrapper around Nvidia Variable Rate Shading Image functionality Creates a texture of the correct size for the provided channel. More...

Public Types | |
| typedef std::vector< unsigned char > | VariableRatePixelBuffer |
Public Member Functions | |
| DtVariableRateShadingImage (DtDe &de, DtOsgChannel *channel) | |
| CTOR. More... | |
| void | initGLObjects (osg::State &state) |
| initalise the gl extensions, get the image texel sizes and calculate the image size More... | |
| void | createShadingRateImageTextureForChannel (osg::State &state) |
| create the shading rate image texture with correct dimensions for it's rendertexture accounting for texel sizes More... | |
| unsigned int | imageWidth () const |
| return the texel width of the shading rate texture More... | |
| unsigned int | imageHeight () const |
| return the texel height of the shading rate texture More... | |
| unsigned int | shadingRateTexelWidth () const |
| return the shading rate texel width (number of pixels each texel covers) More... | |
| unsigned int | shadingRateTexelHeight () const |
| return the shading rate texel height (number of pixels each texel covers) More... | |
| void | useImageData (bool useData) |
| should we use the image data array to populate the texture More... | |
| void | dirtyImageData () |
| flag the image data is dirty so it gets loaded on next bind call More... | |
| std::vector < VariableRatePixelBuffer > & | imageData () |
| return the data used to populate the shading rate texture More... | |
| DtGlRenderTexture * | texture () |
| /brief return the texture used as the shading rate image More... | |
| void | bindShadingImage (osg::State &state) |
| bind the shading rate texture More... | |
| bool | isInitalised () |
| has initGLObject been called and succeeded More... | |
Static Public Member Functions | |
| static void | populateDataForvated (int width, int height, float centerX, float centerY, VariableRatePixelBuffer &data) |
| convienince method to create forvated image data, centerX/Y are in normalise coords 0,0 at bottom left More... | |
| static void | populateDataFocusRect (int width, int height, float focusMinX, float focusMinY, float focusMaxX, float focusMaxY, unsigned char focusVal, unsigned char contextVal, VariableRatePixelBuffer &data) |
| convienince method to create focus rect image data, min/max x/y are in normalise coords 0,0 at bottom left. More... | |
Protected Member Functions | |
| virtual | ~DtVariableRateShadingImage () |
| DTOR. More... | |
| void | loadImageData (osg::State &state) |
| load the image data into the texture More... | |
Private Member Functions | |
| DtVariableRateShadingImage (const DtVariableRateShadingImage &other) | |
| Copy Constructor not implemented – Copy Not Allowed. More... | |
| DtVariableRateShadingImage & | operator= (const DtVariableRateShadingImage &other) |
| Assignment Operator Not implemented – Assignment Not Allowed. More... | |
Wrapper around Nvidia Variable Rate Shading Image functionality Creates a texture of the correct size for the provided channel.
The texture factors in the shading rate Texel size (typically 16x16). The shading rate image format is R8UI it's texel values are used as lookups in the the currently bound shading rate image palette
| typedef std::vector<unsigned char> makVrv::DtVariableRateShadingImage::VariableRatePixelBuffer |
|
private |
Copy Constructor not implemented – Copy Not Allowed.
| makVrv::DtVariableRateShadingImage::DtVariableRateShadingImage | ( | DtDe & | de, |
| DtOsgChannel * | channel | ||
| ) |
CTOR.
|
protectedvirtual |
DTOR.
|
private |
Assignment Operator Not implemented – Assignment Not Allowed.
| void makVrv::DtVariableRateShadingImage::initGLObjects | ( | osg::State & | state | ) |
initalise the gl extensions, get the image texel sizes and calculate the image size
| void makVrv::DtVariableRateShadingImage::createShadingRateImageTextureForChannel | ( | osg::State & | state | ) |
create the shading rate image texture with correct dimensions for it's rendertexture accounting for texel sizes
return the texel width of the shading rate texture
return the texel height of the shading rate texture
return the shading rate texel width (number of pixels each texel covers)
return the shading rate texel height (number of pixels each texel covers)
| void makVrv::DtVariableRateShadingImage::useImageData | ( | bool | useData | ) |
should we use the image data array to populate the texture
| void makVrv::DtVariableRateShadingImage::dirtyImageData | ( | ) |
flag the image data is dirty so it gets loaded on next bind call
| std::vector<VariableRatePixelBuffer>& makVrv::DtVariableRateShadingImage::imageData | ( | ) |
return the data used to populate the shading rate texture
| DtGlRenderTexture* makVrv::DtVariableRateShadingImage::texture | ( | ) |
/brief return the texture used as the shading rate image
| void makVrv::DtVariableRateShadingImage::bindShadingImage | ( | osg::State & | state | ) |
bind the shading rate texture
|
inline |
has initGLObject been called and succeeded
|
static |
convienince method to create forvated image data, centerX/Y are in normalise coords 0,0 at bottom left
|
static |
convienince method to create focus rect image data, min/max x/y are in normalise coords 0,0 at bottom left.
|
protected |
load the image data into the texture
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |