FnUsdAbstractionLib 0.6.0
All Classes Namespaces Functions Variables Typedefs Enumerations Enumerator Friends Pages
usg::StormRenderInterface Class Reference
Inheritance diagram for usg::StormRenderInterface:
usg::RenderInterface

Public Types

using GLContextSharedPtr = std::shared_ptr< class GLContext >
 
- Public Types inherited from usg::RenderInterface
using DataFormat = uint8_t
 
using RenderSettingsDescriptorVector = std::vector< RenderSettingsDescriptor >
 

Public Member Functions

void executeRenderer ()
 
void finalizeRender ()
 
- Public Member Functions inherited from usg::RenderInterface
 RenderInterface (bool createHandle=true)
 
bool isValid () const
 True if RenderInterface is valid (has a valid object binding.)
 
 operator bool () const
 
const TokenrendererId () const
 Identifier token for this renderer interface - should be unique!
 
ArgSetrendererArgs ()
 
void initRenderer (const ArgSet &args)
 
bool rendererInitialized () const
 
const RenderSettingsDescriptorVector & renderSettings () const
 Returns the available render settings.
 
void setRenderSetting (const Token &key, const Value &v)
 Sets the render setting if it exists.
 
bool isRenderSetting (const Token &key) const
 Returns whether the key identifies a render setting.
 
const RenderSettingsDescriptorgetRenderSetting (const Token &key) const
 Returns the render setting for key. If it doesn't exist, returns an empty descriptor.
 
void setRefineLevel (int level)
 Sets the refine level for subdiv prims.
 
void setProgressiveRendering (bool progressiveRendering)
 Sets whether the rendering should be done progressively.
 
void setEnablePresentation (bool enable)
 Enables/disables presentation to the screen.
 
void setPresentationOutput (const Token &name)
 Sets the AOVs which will be rendered to the viewport if presentation is enabled.
 
void setEnableLighting (bool enabled)
 Enables/disables scene lighting.
 
bool isLightingEnabled () const
 Returns whether scene lighting is enabled or disabled.
 
void setCameraFraming (const fdk::Box2i &displayWindow, const fdk::Box2i &dataWindow, float pixelAspectRatio=1.0f)
 
void setFreeCameraMatrices (const fdk::Mat4d &viewMatrix, const fdk::Mat4d &projectionMatrix)
 
void setOutputLayerSize (int32_t width, int32_t height)
 Set pixel w/h of the OutputLayers.
 
void setEnableShadows (bool enabled)
 Turns the shadow task on or off.
 
bool isShadowsEnabled () const
 Returns whether the shadow task is on or off.
 
virtual const SourceCodeGeneratorgetSourceCodeGenerator (const Token &sourceType) const
 Return the MaterialSource generator to use for source type sourceType.
 
void setEnableMaterials (bool enabled)
 Enables/disables using scene materials.
 
bool isMaterialEnabled () const
 Returns whether scene materials are enabled/disabled.
 
void setDisplayRender (const bool displayRender)
 
bool isDisplayRender () const
 
void setDisplayProxy (const bool displayProxy)
 
bool isDisplayProxy () const
 
void setDisplayGuides (const bool displayGuides)
 
bool isDisplayGuides () const
 
void setFlatShading (bool enable)
 
bool isFlatShading () const
 
void executeTasks (bool fullyConverge=false)
 
bool isConverged () const
 Is the buffer converged (whether the renderer is still adding samples or not).
 
void setOutputLayers (const TokenArray &names)
 Set the list of named OutputLayers to be rendered.
 
OutputLayer getOutputLayer (const Token &name) const
 
void setSceneName (const std::string &sceneName)
 Set the identifier name for the scene.
 
const std::string & getSceneName () const
 Get the identifier name for the scene.
 

Static Public Member Functions

static void getGLBufferFormat (const DataFormat &inFormat, uint32_t *outGLFormat, uint32_t *outGLType, uint32_t *outGLInternalFormat=nullptr)
 Convert a DataFormat enumeration to the appropriate GL data format values.
 
static GLContextSharedPtr getCurrentGLContext ()
 
static GLContextSharedPtr getSharedGLContext ()
 
static void makeCurrentGLContext (const GLContextSharedPtr &glcontext)
 
- Static Public Member Functions inherited from usg::RenderInterface
static const std::vector< RenderPluginDesc > & rendererPlugins ()
 Return the list of all loaded plugin names.
 
static bool rendererPluginExists (Token id, RenderPluginDesc *desc=nullptr)
 Checks whether the renderer plugin exists.
 

Protected Member Functions

virtual void _initHydraGL ()
 Starts up the Hydra GL instance. Call this before using the GLContext.
 
bool _initRenderer (const Token &rendererId) override
 Subclasses can do any custom initializations in this method.
 
void _configureScene (const StageRef stage, fdk::TimeValue frame)
 Temp!
 
void _enableCameraLight (bool enable)
 Enables or disables the viewer camera light.
 
void _setCameraLightPosition (const fdk::Vec3f &pos)
 Sets the viewer camera light position.
 
void _reloadTextures (const std::vector< std::string > &textures)
 Notifies Hydra that the textures need to be reloaded.
 
virtual bool _initRenderer (const Token &rendererId)
 Subclasses can do any custom initializations in this method.
 

Protected Attributes

bool _flipFrontFacing
 
bool _applyRenderState
 
bool _enableIdRender
 
bool _enableSampleAlphaToCoverage
 
bool _cameraLightEnabled
 
fdk::Vec3f _cameraLightPosition
 
uint64_t _sampleCount
 
int32_t _drawMode
 
fdk::Hash _lastStageProcessHash
 Previous process hash of the stage to be rendered.
 
- Protected Attributes inherited from usg::RenderInterface
std::unique_ptr< RenderInterfaceHandle, void(*)(RenderInterfaceHandle *)> _pImpl
 
Token _rendererId
 Renderer identifier string.
 
ArgSet _rendererArgs
 Arguments to renderer.
 
std::vector< RenderSettingsDescriptor_rendererSettings
 Arguments to renderer.
 
std::string _sceneName
 Identifier name for scene.
 
bool _showViewerGeometry = true
 True if we show the ViewerContext geometry, otherwise show from inputs.
 
bool _flatShading = false
 Materials are not lit, they are constant-shaded colors & textures.
 
bool _enableLighting = true
 
bool _enableSceneMaterials = true
 
bool _enableShadows = false
 
bool _displayRender = true
 True if we are showing render prims.
 
bool _displayProxy = false
 True if we are showing proxy prims.
 
bool _displayGuides = false
 True if we are showing guide prims.
 
float _pointSize = 3.0f
 
fdk::Vec4f _pointColor {1.0f, 0.0f, 0.0f, 1.0f}
 
int _refineLevel = 0
 The refine level for subdiv prims.
 

Friends

class StormRenderInterfaceHandle
 

Additional Inherited Members

- Static Public Attributes inherited from usg::RenderInterface
static DataFormat FormatUNorm8
 
static DataFormat FormatUNorm8Vec2
 
static DataFormat FormatUNorm8Vec3
 
static DataFormat FormatUNorm8Vec4
 
static DataFormat FormatSNorm8
 
static DataFormat FormatSNorm8Vec2
 
static DataFormat FormatSNorm8Vec3
 
static DataFormat FormatSNorm8Vec4
 
static DataFormat FormatFloat16
 
static DataFormat FormatFloat16Vec2
 
static DataFormat FormatFloat16Vec3
 
static DataFormat FormatFloat16Vec4
 
static DataFormat FormatFloat32
 
static DataFormat FormatFloat32Vec2
 
static DataFormat FormatFloat32Vec3
 
static DataFormat FormatFloat32Vec4
 
static DataFormat FormatInt16
 
static DataFormat FormatInt16Vec2
 
static DataFormat FormatInt16Vec3
 
static DataFormat FormatInt16Vec4
 
static DataFormat FormatUInt16
 
static DataFormat FormatUInt16Vec2
 
static DataFormat FormatUInt16Vec3
 
static DataFormat FormatUInt16Vec4
 
static DataFormat FormatInt32
 
static DataFormat FormatInt32Vec2
 
static DataFormat FormatInt32Vec3
 
static DataFormat FormatInt32Vec4
 
static DataFormat FormatFloat32UInt8
 Depth-stencil format.
 
static DataFormat FormatInvalid
 
static DataFormat FormatCount
 

Member Function Documentation

◆ _initRenderer()

bool usg::StormRenderInterface::_initRenderer ( const Token rendererId)
overrideprotectedvirtual

Subclasses can do any custom initializations in this method.

Reimplemented from usg::RenderInterface.



©2025 The Foundry Visionmongers, Ltd. All Rights Reserved.
www.thefoundry.co.uk