Cortex
10.0.0-a4
|
#include <Renderer.h>
Public Member Functions | |
IE_CORE_DECLAREMEMBERPTR (Procedural) | |
virtual Imath::Box3f | bound () const =0 |
virtual void | render (Renderer *renderer) const =0 |
virtual MurmurHash | hash () const =0 |
![]() | |
IE_CORE_DECLAREMEMBERPTR (RefCounted) | |
void | addRef () const |
Add a reference to the current object. | |
void | removeRef () const |
Remove a reference from the current object. | |
RefCount | refCount () const |
Returns the current reference count. | |
Static Public Attributes | |
static const Imath::Box3f | noBound |
Additional Inherited Members | |
![]() | |
typedef size_t | RefCount |
The Procedural class defines an interface via which the Renderer can ask for geometry to be generated in a deferred fashion, at a time which is convenient to it.
|
pure virtual |
Returns a bounding box guaranteed to completely contain the geometry generated by the render() method.
Implemented in IECore::Renderer::ExternalProcedural.
|
pure virtual |
Implement this to return a hash for procedural level instancing. Procedurals with the same hash will be reused by renderers that support this feature. If computing a sensible hash is difficult or impossible, return IECore::MurmurHash() from this function and this feature will be disabled.
Implemented in IECore::Renderer::ExternalProcedural.
|
pure virtual |
Called when the renderer is ready to receive the procedural geometry. Any relevant methods of renderer may be called, but the geometry generated must be contained within the box returned by bound().
Implemented in IECore::Renderer::ExternalProcedural.
|
static |
Sentinel value which may be returned by bound() implementations if a bound is not available, or computing one would be prohibitively expensive. Renderers should expand such procedurals unconditionally.