RenderManAPI  24.0
Riley.h
Go to the documentation of this file.
1 /*
2 # ------------------------------------------------------------------------------
3 #
4 # Copyright (c) 2020 Pixar. All rights reserved.
5 #
6 # The information in this file (the "Software") is provided for the exclusive
7 # use of the software licensees of Pixar ("Licensees"). Licensees have the
8 # right to incorporate the Software into other products for use by other
9 # authorized software licensees of Pixar, without fee. Except as expressly
10 # permitted herein, the Software may not be disclosed to third parties, copied
11 # or duplicated in any form, in whole or in part, without the prior written
12 # permission of Pixar.
13 #
14 # The copyright notices in the Software and this entire statement, including the
15 # above license grant, this restriction and the following disclaimer, must be
16 # included in all copies of the Software, in whole or in part, and all permitted
17 # derivative works of the Software, unless such copies or derivative works are
18 # solely in the form of machine-executable object code generated by a source
19 # language processor.
20 #
21 # PIXAR DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE, INCLUDING ALL
22 # IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL PIXAR BE
23 # LIABLE FOR ANY SPECIAL, INDIRECT OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
24 # WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION
25 # OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN
26 # CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. IN NO CASE WILL
27 # PIXAR'S TOTAL LIABILITY FOR ALL DAMAGES ARISING OUT OF OR IN CONNECTION WITH
28 # THE USE OR PERFORMANCE OF THIS SOFTWARE EXCEED $50.
29 #
30 # Pixar
31 # 1200 Park Ave
32 # Emeryville CA 94608
33 #
34 # ------------------------------------------------------------------------------
35 */
36 
37 /*
38  * Version 0.2
39  *
40  * This is a preview release and is not supported. This API will change substantially in the next
41  * release of RenderMan.
42  * Names, namespaces, methods, parameters, types, enums, and the structure of the interface itself
43  * are expected to change.
44  *
45  */
46 
47 #ifndef Riley_h
48 #define Riley_h
49 
50 #include "Riley_version.h" // Riley versioned namespace
51 
52 #include "RileyIds.h"
53 
54 #include "RiTypesHelper.h" // RtUString
55 #include "RixInterfaces.h"
56 
58 
59 // Id for acquiring Riley from RixContext::GetRixInterface
60 #define k_RixRileyManager RixInterfaceId(-1)
61 
62 //
63 // Result types.
64 //
65 enum class CameraResult
66 {
67  k_Error,
68  k_Success
69 };
70 
72 {
73  k_Error,
74  k_Success
75 };
76 
78 {
79  k_Error,
80  k_Success
81 };
82 
84 {
85  k_Error,
86  k_Success,
88 };
89 
90 enum class DisplayResult
91 {
92  k_Success,
93  k_Error,
94 };
95 
96 enum class RenderViewResult
97 {
98  k_Error,
99  k_Success
100 };
101 
103 {
104  k_Error,
105  k_Success
106 };
107 
109 {
110  k_Error,
111  k_Success,
113 };
114 
116 {
117  k_Error,
118  k_Success,
120 };
121 
123 {
124  k_Error,
125  k_Success
126 };
127 
129 {
130  k_Error,
131  k_Success,
133 };
134 
136 {
137  k_Error,
138  k_Success,
140 };
141 
142 enum class MaterialResult
143 {
144  k_Error,
145  k_Success,
147 };
148 
150 {
151  k_Success,
152  k_Error,
155 };
156 
158 {
159  k_Success,
160  k_Error,
162 };
163 
165 {
166  k_Error,
167  k_Success
168 };
169 
170 enum class StopResult
171 {
172  k_Success,
174 };
175 
176 //
177 // Input types.
178 //
179 struct Extent
180 {
181  uint32_t x;
182  uint32_t y;
183  uint32_t z;
184 };
185 
187 {
188  float width;
189  float height;
190 };
191 
193 {
194  k_Float, // 32-bit single precision floating point number
195  k_Integer, // 32-bit one's complement integer
196  k_Color, // 3-k_Float
197  k_Vector // 3-k_Float
198 };
199 
206 struct ShadingNode;
208 {
209  uint32_t nodeCount;
211 };
212 
214 {
215  enum class Type
216  {
217  k_Invalid,
218  k_Pattern,
219  k_Bxdf,
220  k_Integrator,
221  k_Light,
223  k_Projection,
227  };
228 
233 };
234 
235 struct Transform
236 {
237  uint32_t samples;
239  float const* time;
240 };
241 
242 //
243 // List types.
244 // Multiple APIs require a list of ids. Declaring an explicit type of these yields clearer code.
245 //
247 {
248  uint32_t count;
250 };
251 
253 {
254  uint32_t count;
256 };
257 
259 {
260  uint32_t count;
262 };
263 
265 {
266  uint32_t count;
268 };
269 
271 {
272  uint32_t count;
274 };
275 
279 class Riley
280 {
281 public:
282  virtual ~Riley(){};
283 
295 
296  // FIXME: Our current Riley implementations also require a unique `CameraId` to be used across
297  // the render views.
298 
314  virtual void Render(RenderViewList const& renderViews, RtParamList const& renderOptions) = 0;
315 
321  virtual StopResult RequestUpdate() = 0;
322 
328  virtual StopResult Stop() = 0;
329 
336  virtual bool SetRenderSettings(RtParamList const& renderOptions) = 0;
337 
343  virtual bool SetRenderMetadata(CameraId id, RtParamList const& metadata) = 0;
345  RtParamList const& metadata) = 0;
346  virtual bool SetRenderMetadata(GeometryPrototypeId id, RtParamList const& metadata) = 0;
347  virtual bool SetRenderMetadata(MaterialId id, RtParamList const& metadata) = 0;
348  virtual bool SetRenderMetadata(DisplacementId id, RtParamList const& metadata) = 0;
349  virtual bool SetRenderMetadata(IntegratorId id, RtParamList const& metadata) = 0;
350  virtual bool SetRenderMetadata(LightInstanceId id, RtParamList const& metadata) = 0;
351  virtual bool SetRenderMetadata(LightShaderId id, RtParamList const& metadata) = 0;
352  virtual bool SetRenderMetadata(CoordinateSystemId id, RtParamList const& metadata) = 0;
353  virtual bool SetRenderMetadata(RenderOutputId id, RtParamList const& metadata) = 0;
354  virtual bool SetRenderMetadata(RenderTargetId id, RtParamList const& metadata) = 0;
355  virtual bool SetRenderMetadata(DisplayId id, RtParamList const& metadata) = 0;
356 
365 
366  // FIXME: Our current Riley implementations require `SetOptions()` to be the first call made
367  // before any other scene manipulation. Additionally, only a small subset of options edits are
368  // supported.
369  // FIXME: Return a non-void error code to indicate an un-supported edit was attempted. Maybe
370  // return a `ParamList` containing the un-supported names?
371 
376  virtual void SetOptions(RtParamList const& sceneOptions) = 0;
377 
383  virtual void InvalidateTexture(RtUString const filename) = 0;
384 
423  UserId userId, RtUString name, RenderOutputType type, RtUString source,
424  RtUString accumulationRule, RtUString filter, FilterSize const& filterSize,
425  float relativePixelVariance, RtParamList const& params) = 0;
426 
431  RenderOutputId renderOutput, RtUString const* name, RenderOutputType const* type,
432  RtUString const* source, RtUString const* accumulationRule, RtUString const* filter,
433  FilterSize const* filterSize, float* relativePixelVariance, RtParamList const* params) = 0;
434 
439  virtual RenderOutputResult DeleteRenderOutput(RenderOutputId renderOutput) = 0;
440 
457  UserId userId, RenderOutputList const& renderOutputs, Extent const& extent,
458  RtUString filterMode, float pixelVariance, RtParamList const& params) = 0;
459 
467  RenderTargetId renderTarget, RenderOutputList const* renderOutputs, Extent const* extent,
468  RtUString const* filterMode, float const* pixelVariance, RtParamList const* params) = 0;
469 
474  virtual RenderTargetResult DeleteRenderTarget(RenderTargetId renderTarget) = 0;
475 
476  // FIXME: Do we want all render outputs to be consumed when the list is empty? What does that
477  // bring us?
478 
497  virtual DisplayId CreateDisplay( //
498  UserId userId, RenderTargetId renderTarget, RtUString name, RtUString driver,
499  RenderOutputList const& renderOutputs, RtParamList const& driverParams) = 0;
500 
505  virtual DisplayResult ModifyDisplay( //
506  DisplayId display, RenderTargetId const* renderTarget, RtUString const* name,
507  RtUString const* driver, RenderOutputList const* renderOutputs,
508  RtParamList const* driverParams) = 0;
509 
514  virtual DisplayResult DeleteDisplay(DisplayId display) = 0;
515 
516  // TODO: document
517  // FIXME: RenderView display and sample filters are not supported yet.
518  virtual RenderViewId CreateRenderView( //
519  UserId userId, RenderTargetId renderTargetId, CameraId cameraId, IntegratorId integratorId,
520  DisplayFilterList const& displayFilters, SampleFilterList const& sampleFilters,
521  RtParamList const& params) = 0;
522 
524  RenderViewId renderViewId, RenderTargetId const* renderTargetId, CameraId const* cameraId,
525  IntegratorId const* integratorId, DisplayFilterList const* displayFilters,
526  SampleFilterList const* sampleFilters, RtParamList const* params) = 0;
527 
528  virtual RenderViewResult DeleteRenderView(RenderViewId renderViewId) = 0;
529 
541  UserId userId, ShadingNetwork const& displayFilter, RtParamList const& attributes) = 0;
542 
555  DisplayFilterId displayFilterId, ShadingNetwork const* displayFilter,
556  RtParamList const* attributes) = 0;
557 
561  virtual DisplayFilterResult DeleteDisplayFilter(DisplayFilterId displayFilterId) = 0;
562 
574  UserId userId, ShadingNetwork const& sampleFilter, RtParamList const& attributes) = 0;
575 
588  SampleFilterId sampleFilterId, ShadingNetwork const* sampleFilter,
589  RtParamList const* attributes) = 0;
590 
594  virtual SampleFilterResult DeleteSampleFilter(SampleFilterId sampleFilterId) = 0;
595 
627  virtual CameraId CreateCamera( //
628  UserId userId, RtUString name, ShadingNode const& projection, Transform const& xform,
629  RtParamList const& properties) = 0;
630 
650  virtual CameraResult ModifyCamera( //
651  CameraId cameraId, ShadingNode const* projection, Transform const* xform,
652  RtParamList const* properties) = 0;
653 
657  virtual void DeleteCamera(CameraId cameraId) = 0;
658 
659  // FIXME: Properly document the following.
660  // A clipping plane should be specified by a transform only. 'params' allows for optional values
661  // to be provided, either for backward compatibility (i.e. provide a plane normal and origin
662  // point), or to support future features (e.g. use a clipping portal, different shapes, etc...).
664  Transform const& xform, RtParamList const& params) = 0;
666  ClippingPlaneId clippingPlaneId, Transform const* xform, RtParamList const* params) = 0;
667  virtual ClippingPlaneResult DeleteClippingPlane(ClippingPlaneId clippingPlaneId) = 0;
668 
674  virtual void SetDefaultDicingCamera(CameraId cameraId) = 0;
675 
684  virtual IntegratorId CreateIntegrator(UserId userId, ShadingNode const& integratorNode) = 0;
685 
696  IntegratorId integratorId, ShadingNode const* integratorNode) = 0;
697 
701  virtual IntegratorResult DeleteIntegrator(IntegratorId integratorId) = 0;
702 
714  UserId userId, Transform const& xform, RtParamList const& attributes) = 0;
715 
726  CoordinateSystemId coordsysId, Transform const* xform, RtParamList const* attributes) = 0;
727 
731  virtual void DeleteCoordinateSystem(CoordinateSystemId coordsysId) = 0;
732 
742  UserId userId, ShadingNetwork const& displacement, RtParamList const& attributes) = 0;
743 
758  DisplacementId displacementId, ShadingNetwork const* displacement,
759  RtParamList const* attributes) = 0;
760 
764  virtual void DeleteDisplacement(DisplacementId displacementId) = 0;
765 
776  virtual LightShaderId CreateLightShader( //
777  UserId userId, ShadingNetwork const& light, ShadingNetwork const& lightFilter) = 0;
778 
793  LightShaderId lightShaderId, ShadingNetwork const* light,
794  ShadingNetwork const* lightFilter) = 0;
795 
802  virtual void DeleteLightShader(LightShaderId lightShaderId) = 0;
803 
818  virtual MaterialId CreateMaterial( //
819  UserId userId, ShadingNetwork const& bxdf, RtParamList const& attributes) = 0;
820 
832  virtual MaterialResult ModifyMaterial( //
833  MaterialId materialId, ShadingNetwork const* bxdf, RtParamList const* attributes) = 0;
834 
838  virtual void DeleteMaterial(MaterialId materialId) = 0;
839 
856  UserId userId, RtUString type, DisplacementId displacementId,
857  RtPrimVarList const& primvars) = 0;
858 
878  RtUString type, GeometryPrototypeId geoPrototypeId, DisplacementId const* displacementId,
879  RtPrimVarList const* primvars) = 0;
880 
884  virtual void DeleteGeometryPrototype(GeometryPrototypeId geoPrototypeId) = 0;
885 
909  UserId userId, GeometryPrototypeId groupPrototypeId, GeometryPrototypeId geoPrototypeId,
910  MaterialId materialId, CoordinateSystemList const& coordsysList, Transform const& xform,
911  RtParamList const& attributes) = 0;
912 
942  GeometryPrototypeId groupPrototypeId, GeometryInstanceId instanceId,
943  MaterialId const* materialId, CoordinateSystemList const* coordsysList,
944  Transform const* xform, RtParamList const* attributes) = 0;
945 
953  virtual void DeleteGeometryInstance( //
954  GeometryPrototypeId groupPrototypeId, GeometryInstanceId instanceId) = 0;
955 
980  UserId userId, GeometryPrototypeId groupPrototypeId, GeometryPrototypeId geoPrototypeId,
981  MaterialId materialId, LightShaderId lightShaderId,
982  CoordinateSystemList const& coordsysList, Transform const& xform,
983  RtParamList const& attributes) = 0;
984 
1019  GeometryPrototypeId groupPrototypeId, LightInstanceId lightInstanceId,
1020  MaterialId const* materialId, LightShaderId const* lightShaderId,
1021  CoordinateSystemList const* coordsysList, Transform const* xform,
1022  RtParamList const* attributes) = 0;
1023 
1031  virtual void DeleteLightInstance( //
1032  GeometryPrototypeId groupPrototypeId, LightInstanceId lightInstanceId) = 0;
1033 };
1034 
1036 
1038 {
1039 public:
1049  virtual riley::Riley* CreateRiley(RtUString rendervariant, RtParamList const& params) = 0;
1050  virtual void DestroyRiley(riley::Riley* rl) = 0;
1051 
1054  virtual void GetOptionOverrides(RtParamList& options) const = 0;
1055 
1056 protected:
1058  {}
1059 };
1060 
1061 #endif
Definition: RileyIds.h:85
virtual void DeleteCamera(CameraId cameraId)=0
Deletes the specified camera.
virtual DisplacementId CreateDisplacement(UserId userId, ShadingNetwork const &displacement, RtParamList const &attributes)=0
Creates a displacement from a shading network.
SampleFilterResult
Definition: Riley.h:164
Definition: Riley.h:264
virtual bool SetRenderSettings(RtParamList const &renderOptions)=0
Sets the rendering process settings.
virtual IntegratorResult DeleteIntegrator(IntegratorId integratorId)=0
Deletes the specified integrator.
GeometryInstanceResult
Definition: Riley.h:115
virtual LightShaderResult ModifyLightShader(LightShaderId lightShaderId, ShadingNetwork const *light, ShadingNetwork const *lightFilter)=0
Modifies a light shader.
Definition: Riley.h:179
Definition: RileyIds.h:345
virtual RenderTargetId CreateRenderTarget(UserId userId, RenderOutputList const &renderOutputs, Extent const &extent, RtUString filterMode, float pixelVariance, RtParamList const &params)=0
Creates a render target containing storage for all of the given render outputs.
virtual void Render(RenderViewList const &renderViews, RtParamList const &renderOptions)=0
Rendering Process APIs.
virtual ClippingPlaneResult DeleteClippingPlane(ClippingPlaneId clippingPlaneId)=0
virtual DisplayFilterId CreateDisplayFilter(UserId userId, ShadingNetwork const &displayFilter, RtParamList const &attributes)=0
Creates a display filter from a shading network.
Definition: Riley.h:213
Definition: Riley.h:258
Definition: RileyIds.h:205
virtual MaterialId CreateMaterial(UserId userId, ShadingNetwork const &bxdf, RtParamList const &attributes)=0
Creates a material from a list of shading nodes.
virtual void InvalidateTexture(RtUString const filename)=0
Indicates that a texture file has been modified, and should be flushed from the texture cache...
Definition: RileyIds.h:165
Definition: RileyIds.h:45
virtual void DeleteGeometryPrototype(GeometryPrototypeId geoPrototypeId)=0
Deletes the specified geometry prototype.
Base class for all Rix interfaces.
Definition: RixInterfaces.h:133
uint32_t samples
Definition: Riley.h:237
virtual CoordinateSystemResult ModifyCoordinateSystem(CoordinateSystemId coordsysId, Transform const *xform, RtParamList const *attributes)=0
Creates a coordinate system from a transform and a set of attributes.
pxrcore::ParamList RtParamList
Definition: RiTypesHelper.h:687
Type type
Definition: Riley.h:229
Definition: RileyIds.h:305
virtual DisplayResult DeleteDisplay(DisplayId display)=0
Closes a display and detach it from its render target.
virtual StopResult RequestUpdate()=0
Requests the renderer to stop.
Definition: Riley.h:186
Definition: Riley.h:1037
RenderOutputId const * ids
Definition: Riley.h:267
virtual DisplayFilterResult DeleteDisplayFilter(DisplayFilterId displayFilterId)=0
Deletes the specified display filter.
virtual GeometryInstanceResult ModifyGeometryInstance(GeometryPrototypeId groupPrototypeId, GeometryInstanceId instanceId, MaterialId const *materialId, CoordinateSystemList const *coordsysList, Transform const *xform, RtParamList const *attributes)=0
Modifies properties on the provided geometry instance.
virtual void DeleteLightShader(LightShaderId lightShaderId)=0
Deletes the specified light shader.
virtual void DeleteMaterial(MaterialId materialId)=0
Deletes the specified material.
virtual CameraId CreateCamera(UserId userId, RtUString name, ShadingNode const &projection, Transform const &xform, RtParamList const &properties)=0
Creates a named camera from a projection shader, transform and list of properties.
virtual void GetOptionOverrides(RtParamList &options) const =0
Return a RtParamList containing expected option overrides.
uint32_t x
Definition: Riley.h:181
virtual void DeleteLightInstance(GeometryPrototypeId groupPrototypeId, LightInstanceId lightInstanceId)=0
Deletes the specified instance of a geometric light.
RixRileyManager()
Definition: Riley.h:1057
virtual GeometryInstanceId CreateGeometryInstance(UserId userId, GeometryPrototypeId groupPrototypeId, GeometryPrototypeId geoPrototypeId, MaterialId materialId, CoordinateSystemList const &coordsysList, Transform const &xform, RtParamList const &attributes)=0
Creates a new instance of a geometry prototype.
virtual RenderViewResult DeleteRenderView(RenderViewId renderViewId)=0
virtual GeometryPrototypeResult ModifyGeometryPrototype(RtUString type, GeometryPrototypeId geoPrototypeId, DisplacementId const *displacementId, RtPrimVarList const *primvars)=0
Modifies a geometry prototype.
float width
Definition: Riley.h:188
virtual StopResult Stop()=0
Requests the renderer to stop.
CoordinateSystemResult
Definition: Riley.h:77
virtual CoordinateSystemId CreateCoordinateSystem(UserId userId, Transform const &xform, RtParamList const &attributes)=0
Creates a coordinate system from a transform and a set of attributes.
virtual DisplacementResult ModifyDisplacement(DisplacementId displacementId, ShadingNetwork const *displacement, RtParamList const *attributes)=0
Modifies a displacement.
virtual DisplayResult ModifyDisplay(DisplayId display, RenderTargetId const *renderTarget, RtUString const *name, RtUString const *driver, RenderOutputList const *renderOutputs, RtParamList const *driverParams)=0
Modifies attributes of a display.
virtual SampleFilterId CreateSampleFilter(UserId userId, ShadingNetwork const &sampleFilter, RtParamList const &attributes)=0
Creates a sample filter from a shading network.
RtMatrix4x4 const * matrix
Definition: Riley.h:238
virtual RenderTargetResult ModifyRenderTarget(RenderTargetId renderTarget, RenderOutputList const *renderOutputs, Extent const *extent, RtUString const *filterMode, float const *pixelVariance, RtParamList const *params)=0
Modifies attributes of a render target.
virtual void DeleteDisplacement(DisplacementId displacementId)=0
Deletes the specified displacement.
Definition: RileyIds.h:225
virtual RenderOutputId CreateRenderOutput(UserId userId, RtUString name, RenderOutputType type, RtUString source, RtUString accumulationRule, RtUString filter, FilterSize const &filterSize, float relativePixelVariance, RtParamList const &params)=0
Creates a render output.
virtual SampleFilterResult ModifySampleFilter(SampleFilterId sampleFilterId, ShadingNetwork const *sampleFilter, RtParamList const *attributes)=0
Modifies a sample filter.
Type
Definition: Riley.h:215
ClippingPlaneResult
Definition: Riley.h:71
Definition: RileyIds.h:185
virtual ~Riley()
Definition: Riley.h:282
virtual riley::Riley * CreateRiley(RtUString rendervariant, RtParamList const &params)=0
Creates a new instance of the Riley class.
#define RILEY_NAMESPACE_ENTER
If RILEY_REQUIRE_VERSION_NAME is undefined, symbols from the version namespace are promoted to the to...
Definition: Riley_version.h:81
Definition: RileyIds.h:105
virtual CameraResult ModifyCamera(CameraId cameraId, ShadingNode const *projection, Transform const *xform, RtParamList const *properties)=0
Sets a new projection shader, transform and list of camera properties for the given camera...
virtual RenderOutputResult ModifyRenderOutput(RenderOutputId renderOutput, RtUString const *name, RenderOutputType const *type, RtUString const *source, RtUString const *accumulationRule, RtUString const *filter, FilterSize const *filterSize, float *relativePixelVariance, RtParamList const *params)=0
Modifies attributes of a render output.
virtual DisplayFilterResult ModifyDisplayFilter(DisplayFilterId displayFilterId, ShadingNetwork const *displayFilter, RtParamList const *attributes)=0
Modifies a display filter.
pxrcore::PrimVarList RtPrimVarList
Definition: RiTypesHelper.h:688
Definition: RileyIds.h:65
StopResult
Definition: Riley.h:170
IntegratorResult
Definition: Riley.h:122
virtual void DestroyRiley(riley::Riley *rl)=0
uint32_t z
Definition: Riley.h:183
CoordinateSystemId const * ids
Definition: Riley.h:249
virtual MaterialResult ModifyMaterial(MaterialId materialId, ShadingNetwork const *bxdf, RtParamList const *attributes)=0
Modifies a material.
uint32_t count
Definition: Riley.h:272
virtual RenderTargetResult DeleteRenderTarget(RenderTargetId renderTarget)=0
Deletes a render target and frees its storage.
uint32_t nodeCount
Definition: Riley.h:209
uint32_t count
Definition: Riley.h:266
CameraResult
Definition: Riley.h:65
DisplayFilterId const * ids
Definition: Riley.h:255
Definition: RileyIds.h:378
virtual GeometryPrototypeId CreateGeometryPrototype(UserId userId, RtUString type, DisplacementId displacementId, RtPrimVarList const &primvars)=0
Creates a geometry prototype.
float height
Definition: Riley.h:189
virtual IntegratorId CreateIntegrator(UserId userId, ShadingNode const &integratorNode)=0
Creates an integrator from an integrator shading node.
Definition: RileyIds.h:285
virtual bool SetRenderMetadata(CameraId id, RtParamList const &metadata)=0
Sets metadata associated with a given riley entity.
uint32_t count
Definition: Riley.h:254
virtual IntegratorResult ModifyIntegrator(IntegratorId integratorId, ShadingNode const *integratorNode)=0
Modifies an integrator.
RtUString handle
Definition: Riley.h:231
MaterialResult
Definition: Riley.h:142
#define RILEY_NAMESPACE_HEADER_EXIT
Definition: Riley_version.h:91
virtual DisplayId CreateDisplay(UserId userId, RenderTargetId renderTarget, RtUString name, RtUString driver, RenderOutputList const &renderOutputs, RtParamList const &driverParams)=0
Creates a display and attach it to a render target.
SampleFilterId const * ids
Definition: Riley.h:261
RenderViewId const * ids
Definition: Riley.h:273
virtual void DeleteCoordinateSystem(CoordinateSystemId coordsysId)=0
Deletes the specified coordinate system.
RenderViewResult
Definition: Riley.h:96
virtual LightShaderId CreateLightShader(UserId userId, ShadingNetwork const &light, ShadingNetwork const &lightFilter)=0
Creates a light shader.
virtual SampleFilterResult DeleteSampleFilter(SampleFilterId sampleFilterId)=0
Deletes the specified sample filter.
virtual RenderViewResult ModifyRenderView(RenderViewId renderViewId, RenderTargetId const *renderTargetId, CameraId const *cameraId, IntegratorId const *integratorId, DisplayFilterList const *displayFilters, SampleFilterList const *sampleFilters, RtParamList const *params)=0
Definition: Riley.h:270
virtual LightInstanceId CreateLightInstance(UserId userId, GeometryPrototypeId groupPrototypeId, GeometryPrototypeId geoPrototypeId, MaterialId materialId, LightShaderId lightShaderId, CoordinateSystemList const &coordsysList, Transform const &xform, RtParamList const &attributes)=0
Creates a new instance of a geometric light.
DisplacementResult
Definition: Riley.h:83
RtParamList params
Definition: Riley.h:232
Definition: RileyIds.h:145
virtual LightInstanceResult ModifyLightInstance(GeometryPrototypeId groupPrototypeId, LightInstanceId lightInstanceId, MaterialId const *materialId, LightShaderId const *lightShaderId, CoordinateSystemList const *coordsysList, Transform const *xform, RtParamList const *attributes)=0
Modifies properties on the provided instance of a geometric light.
virtual void SetOptions(RtParamList const &sceneOptions)=0
Scene Manipulation APIs.
Definition: Riley.h:207
virtual RenderOutputResult DeleteRenderOutput(RenderOutputId renderOutput)=0
Deletes a render output.
Definition: Riley.h:235
pxrcore::Matrix4x4 RtMatrix4x4
Definition: RiTypesHelper.h:74
Definition: RileyIds.h:125
virtual ClippingPlaneResult ModifyClippingPlane(ClippingPlaneId clippingPlaneId, Transform const *xform, RtParamList const *params)=0
RtUString name
Definition: Riley.h:230
RenderOutputResult
Definition: Riley.h:149
Definition: RileyIds.h:245
Definition: RileyIds.h:325
pxrcore::UString RtUString
Definition: RiTypesHelper.h:682
uint32_t count
Definition: Riley.h:248
float const * time
Definition: Riley.h:239
DisplayFilterResult
Definition: Riley.h:102
Definition: Riley.h:246
LightShaderResult
Definition: Riley.h:135
virtual RenderViewId CreateRenderView(UserId userId, RenderTargetId renderTargetId, CameraId cameraId, IntegratorId integratorId, DisplayFilterList const &displayFilters, SampleFilterList const &sampleFilters, RtParamList const &params)=0
Definition: RileyIds.h:265
Definition: Riley.h:252
virtual void DeleteGeometryInstance(GeometryPrototypeId groupPrototypeId, GeometryInstanceId instanceId)=0
Deletes the specified geometry instance.
virtual ClippingPlaneId CreateClippingPlane(Transform const &xform, RtParamList const &params)=0
GeometryPrototypeResult
Definition: Riley.h:108
uint32_t y
Definition: Riley.h:182
LightInstanceResult
Definition: Riley.h:128
ShadingNode const * nodes
Definition: Riley.h:210
virtual void SetDefaultDicingCamera(CameraId cameraId)=0
Sets the specified camera as active.
RenderOutputType
Definition: Riley.h:192
RenderTargetResult
Definition: Riley.h:157
uint32_t count
Definition: Riley.h:260
DisplayResult
Definition: Riley.h:90
An interface to a renderer instance.
Definition: Riley.h:279