Short Contents

9. Error Messages

This is a list of most of the error messages 3Delight can produce along with a brief description of possible causes for each.

A2010 RiProcDynamicLoad: cannot find shared object 'libname'
Specified shared object was not found. This is usually a search path problem.
A2011 RiProcDynamicLoad: 'libname' is not a shared library (system error: syserror)
Search paths may be in incorrect order or the file is corrupted.
A2012 RiProcDynamicLoad: 'a' does not contain the necessary entry points (system error: b)
Library is missing one of the ConvertParameters, Subdivide or Free entry points and cannot be used.
A2037 RiReadArchive: recursive instantiation of 'a'
An archive requires itself recursively. It cannot be read properly.
A2055 RiProcRunProgram: cannot communicate with program 'program'
This message only appears on WINDOWS platforms and means that 3DELIGHT was unable to write a request to the specified program.
A2056 RiProcRunProgram: error reading output of program 'program'
This message only appears on WINDOWS platforms and means that 3DELIGHT was unable to read the result back from the specified program.
A2057 RiProcRunProgram: error reading output of program 'program'. Missing request response delimiter (0xFF).
The program procedural doesn't output the needed end-of-stream delimiter.
A2058 RiProcRunProgram: program 'program' has died
program terminated ungracefully. This means that RiProcRunProgram was not completed correctly. It may have crashed or simply not have been written with the required loop to process more than one request.
A2059 RiProcRunProgram: cannot launch program 'program'
3DELIGHT is unable to start the specified program.
A2060 RiProcRunProgram: system returned error 'syserror'
3Delight was unable to run the specified program. An error string is provided as a debugging help.
A2061 RiProcRunProgram: pipe creation failed
On unix systems this means the the pipe() system call has failed. This should never happens and could mean serious system overload.
A2062 RiProcRunProgram: cannot create child process (memory problems?)
On unix systems this means the the fork() system call has failed. This should never happens and could mean serious system overload.
A2063 RiProcRunProgram: system error in the child process
A child process which was fork()ed is unable to issue a dup2() command. This should never happens and could mean serious system overload.
A2064 RiProcRunProgram: cannot execute 'program'
On unix systems this means the the execl() system call has failed. The specified program may not be executable (verify permissions).
A2065 RiProcRunProgram: cannot open reading stream for program 'program'
3DELIGHT was not able to establish a reading connection with program. This should never happens and could mean serious system overload.
A2066 RiProcRunProgram: program 'program' seems to have crashed or terminated early. It should handle multiple requests; one per line.

A2067 RiProcRunProgram: cannot find program 'program'
This usually means bad search path settings.
A2084 cannot find archive 'archivename'
The specified archive could not be found. If it is an inline archive, it may have gone out of context. If it is a file, the search paths may be wrong.
A2085 cannot open archive file 'archivename'
Verify permissions.
C2046 RiBegin not called before RiCall
This function has to be called before any other Ri Calls.
C2047 non closed condition block (missing RiIfEnd)
RIB conditions are not balanced properly.
C2049 [filename:line]: premature call to RiMotionEnd
Some motion steps have not been described yet. An example would be:
MotionBegin [0 0.5 1.0]
	Translate 0 0 1
    # Missing two more steps
MotionEnd
C2080 RiBegin not called
RiBegin should be the first function called when using the Ri API.
D2002 cannot connect to display driver 'displayname' (system error: syserror)
Some entry points are missing.
D2003 cannot open display driver 'displayname' (system error: syserror)
The dso could not be loaded. It could be a library problem.
D2004 failed to open display driver 'displayname' (display driver returned 'displayerror')
Display driver's DspyImageOpen() entrypoint returned a failure code. A code of 3 is usually for an unsupported combination of number of channels and format. A code of 4 usually occurs when the file cannot be created (no permission of the directory does not exist).
D2005 display driver 'a' did not deallocate its data properly
Display driver's open() returned a failure and did not free the image data.
D2006 failed to close 'filename', display driver 'displayname' (display driver returned 'displayerror')
Display driver's close() entry point returned a failure code.
D2007 rendering aborted, display driver 'displayname' will be closed
Rendering was interrupted, all display driver will receive the DspyImageClose() call.
D2008 failed to write bucket to 'a' (display driver returned 'b')
Display driver returned an error when attempting to write a bucket.
D2009 query to display driver 'a' failed (display driver returned 'b')
Display driver did not specify a image resolution. A default one is provided.
D2045 PixelFilter reset to 'box' 1x1 (display driver requirement)
The display driver cannot accept the specified pixel filter. Forced to 1x1. The only display driver that could do this is the `dsm' display driver.
D2094 failed to open display driver 'displayname' (display driver returned with a null handle)
Display driver's DspyImageOpen() entrypoint did not set the image handle.
D2202 dspy_dsm: cannot create a temporary file (system error: message)
The deep shadow map display driver requires some temporary files during the render. This message means it was unable to create then, most likely because of incorrect permissions on the directory it tried to use. On linux and OS X, the following directories are tried, in order: '$DL_TMPDIR', '$TMPDIR', '/tmp/' and '.'. On windows, it is '%TMP%' and '\'.
D6018 dspy_ghost: missing parameters for cloud-based render.
Internal errror. Means that some parameters have no been communicated properly to 3Delight when rendering on the cloud.
L2029 cannot setup networking (licensing will not work)
Licensing mechanism requires a network in order work properly.
L2030 cannot contact license server 'servername' (system error: syserror)
Make sure the license server is running on the computer named servername.
L2031 make sure the license server is running on 'servername' (as specified in file 'configfile')
The renderer is unable to contact the license server that has been specified in the configuration file. Make sure that the license server (licserver) specified in the file is actually running.
L2032 please complete the 'configfile' file as explained in the License Server Guide
This means that you are running without a license and that a watermark will be displayed. Specifying a valid license server in the the configuration file will solve the problem.
L2033 invalid license key
Server was contacted, but license key is invalid. It may have expired or the setup is not done properly.
L2034 all licenses are taken, waiting for a free license as specified in configfile (delay) ...
There are not enough licenses available to proceed with the render. 3DELIGHT will wait until a license is available. If the preferred behavior in this case is to exit immediately, please disable the license waiting option in 3DELIGHT's configuration file.
L2035 cannot resolve license server 'servername' (as specified in file 'configfile')
The computer named servername could not be found. This looks like an incorrect setup in the configuration file.
L2036 no more than 'numservers' license servers can be specified
Some special licenses allow many license servers to run (for geographically separated sites for example). This error message indicates that you are trying to run more license servers than permitted.
L5034 licserver: can't connect to service control manager

L5035 licserver: service does not exist

L5036 licserver: can't open existing service

L5037 licserver: error uninstalling service

L5038 licserver: error installing service

L5039 Manages licenses for 3Delight and related products.

L5040 licserver: service uninstalled

L5041 licserver: service installed

L5059 License does not support this version of 'product'. Use an older version or contact sales to renew support.

O6000 invalid handle 'handle' given for node creation
NSICreate expects a string handle which is not empty and does not start with a !
O6001 error creating node 'handle' of unknown type 'type'
The specified node type is unknown to the renderer.
O6002 error creating node 'handle' of type 'newtype', already exists as type 'oldtype'
The specified node already exists and is incompatible with the requested node.
O6003 unknown node handle 'handle' passed to function
A node handle was given to the API for a node which does not exist or has been released.
O6004 invalid parameter name (empty)
An API call was given a parameter with an empty name.
O6005 invalid type for parameter 'paramname'
An API call was given a parameter with an invalid type description.
O6006 unable to build OSL shader group (root layer is 'layername')
The shading system was unable to build the OSL shading group that starts at layer layername. This could happen, for example, if one of the shaders in the group hasn't been found. Usually, this error message will be preceded by other OSL-related errors.
O6007 wrong type for attribute 'attribute' on node 'handle' of type 'type'
An attribute was set on a node with a type which is incompatible with what the node expects. See the list of supported attributes for the given node type in the manual.
O6008 textureinfo() can only return 'type', 'resolution' and 'channels' attributes.
Only a minimal set of attributes is supported, by design.
O6010 unable to build OSL shader group (root layer is 'layername') because of cycle
The shading system was unable to build the OSL shading group that starts at layer layername because it contains a cycle.
O6011 error while parsing a NSI parameter list in a LUA scripting context (souce:linenumber)
Most probable cause is a bad formating of a NSI parameter. For example, a color lacking one of the components or a wrong array length.
O6012 LUA error : errormessage
Most probable cause is a syntax error.
O6014 unable to find OSL shader file 'filename' for layer 'layername'
The requested shader file was not found.
O6015 node 'handle' given for attribute 'attribute' is of wrong type ('type' where 'type' is expected)
A node of the wrong type was specified for the given attribute or option.
O6019 can't connect a NSI node 'handle' to itself (from 'attribute' to 'attribute')
Our NSI implementation doesn't allow connections between attribute of the same node.
O6020 node 'handle' does not have required attribute 'attribute' and will be ignored
A required attribute is absent from the node, which won't be rendered
O6021 node 'handle' has too few items in attribute 'attribute' (according to attribute 'attribute') and will be ignored
An attribute has fewer items than expected (according to the contents of another attribute) and the node won't be rendered.
O6022 attribute 'attribute' on node 'handle' of type 'type' is outside its acceptable range
An attribute was set to a value outside the range that it meaningful for it (usually a negative value)
O6023 attribute 'attribute' on node 'handle' at time time is incompatible with its definition at previously defined time steps and will be ignored
A motion-blurred attribute changes type, array length, count or flags from one time step to another.
O6024 cannot find display driver 'display' on node 'outputdrivernode'
Output driver `display' could not be found. Possible reasons are bad search paths or misspellings.
O6025 outputlayer node 'handle' is missing required attributes
The node is missing required attributes and will be ignored.
O6027 attribute 'attribute' on node 'handle' is ignored because values are outside the [0..1] range
The crop window on the camera has values outside the accepted 0-1 range.
O6028 empty region given to attribute 'attribute' on node 'handle' will be ignored
The crop window on the camera defines a left bound higher than its right bound or a top bound higher than its bottom bound.
O6029 no image will be rendered because no cameras have been provided
At least a camera node should be accessible from the scene's root in order to render an image.
O6030 output layer 'layer' will be ignored because it's connected to multiple cameras
NSI supports only one camera per output layer.
O6031 layer 'layer' will not be included in output driver 'driver' because it's not connected to same camera as its other layers
3Delight supports only one camera per output driver.
O6032 no image will be rendered because no valid output driver was found
No image can be generated since no valid output driver was defined.
O6034 wrong number of values count for attribute 'attribute' on node 'handle' of type 'type' (expected expected, got actual)
An attribute was set on a node with a number of values which is incompatible with what the node expects. See the list of supported attributes for the given node type in the manual.
O6035 attribute 'attribute' on node 'handle' of type 'type' defines an invalid range
In a range attribute, the first value must be lower than or equal to the second value.
O6036 unsupported value 'value' for attribute 'attribute' on node 'handle' of type 'type'
Only a few predefined values are supported for this attribute.
O6037 connection from OSL global 'globalname' of layer 'layername' is not allowed
It is not valid to use an OSL global as the source of a connection in a shading network. A parameter must be used instead.
O6038 missing indices attribute 'attributename' on node 'nodename'
Indirect addressing was requested on an attribute with the NSIParamIndirect flag but the required indices are missing.
O6039 indices attribute 'attributename' on node 'nodename' has incorrect type
The attribute used for indirect addressing has an incorrect type. It must be an integer.
O6040 node 'handle' has too few items in attribute 'attribute' and will be ignored
An attribute has fewer items than expected and the node won't be rendered.
O6041 face with duplicate vertex index on catmull-clark subdivision mesh 'nodename' will be ignored
A face is using the same vertex twice in a row, defining an invalid edge. It will not be rendered.
O6042 more than two faces attached between vertices nodename and vertex1 on catmull-clark subdivision mesh 'vertex2'
The mesh definition is not a manifold. Some faces will be ignored.
O6043 face will be skipped on catmull-clark subdivision mesh 'nodename'
A face will not be rendered on the mesh. This is usually the consequence of another error such as duplicated vertices or non manifold mesh. It will also occur for a face with fewer than 3 vertices.
O6044 invalid action 'action' passed to NSIRenderControl
The action will be ignored.
P1000 invalid grouping membership 'groupname'
Format is invalid. There might be multiple '+' or '-' in the membership.
P1001 catmull-clark subdivision mesh 'objectname': edge between vertices vertex1 and vertex2 has more than two attached faces
The mesh definition is not a manifold. Some faces will be ignored.
P1002 catmull-clark subdivision mesh 'objectname': face has the same vertex index twice
A face is using the same vertex more than once. Some vertices will be ignored.
P1003 catmull-clark subdivision mesh 'objectname': vertex ID out of range
A face is using an unknown vertex. It is ignored.
P1004 catmull-clark subdivision mesh 'objectname': face with less than 3 vertices
A face has no area. This error may occur with more vertices if they are duplicated.
P1005 catmull-clark subdivision mesh 'objectname': facevertex variables are inconsistent so discontinuities may occur
The facevertex variables specified do not form well-defined zones. This can be caused by a bad mesh design or small errors in the values.
P1006 catmull-clark subdivision mesh: tag 'tagname' has invalid number of arguments
Refer to the specification of RiSubdivisionMesh for the required number of arguments.
P1007 catmull-clark subdivision mesh: tag 'tagname' contains an invalid vertex index 'index'
Some vertices may be missing.
P1011 catmull-clark subdivision mesh: tag 'hole' contains an invalid face index 'faceindex'
Some vertices may be missing.
P1012 catmull-clark subdivision mesh: unknown tag
There may be typing error in the name or it is not supported yet.
P1013 display parameter 'param' has wrong type
The required parameter is not declared properly. It is not compatible with the display server.
P1015 RiBlobby: truncated description
The blobby description is missing entries.
P1016 RiBlobby: empty description
The blobby has no description in the RIB file
P1017 RiBlobby: unknown field opcode op
The operation op is not recognized. Maybe a parameter in a previous operation code was omitted.
P1018 RiBlobby: needs at least one non-constant leaf
All leaves are constants. There is no possible surface.
P1020 RiBlobby: invalid operand index
An operator parameter (operand index) is out of bounds. It may have been omitted.
P1021 RiBlobby: invalid float index
A float index is out of bounds. Might be invalid or there are not enough float values.
P1022 RiBlobby: leaf requires more values
There are not enough values for a leaf. Matrices take 16 floating point numbers for example.
P1023 RiBlobby: less leaves than specified
There are less leaves in the blobby than declared.
P1024 PointsGeneralPolygons: polygon is either non planar or self-intersecting
Unable to generate geometry for the given polygon, probably because of topological problems with the mesh.
P1025 unexpected geometry inside transformation motion block
A motion block cannot combine both geometry and transforms.
P1026 more Ri calls than there are time steps in motion block
There should be as many Ri commands as motion steps inside a motion block.
P1027 primitives inside motion block are incompatible (object 'obj')
Both primitives must have the same general structure.
P1028 invalid bounding box for primitive (or part of) 'object'
This happens when a bounding box is pushed behind the viewing plane because of bad displacement bounds.
P1029 cannot find display driver 'display'
Display driver `display' could not be found. Possible reasons are bad search paths or misspellings.
P1030 cannot display string variable 'v'
String variable cannot be displayed.
P1031 unknown display variable 'var' ('displayname' display driver)
The variable to display is unknown to 3DELIGHT.
P1032 invalid frame aspect ratio 'aspectratio'
The provided image aspect ratio is either too small (too close to zero) or negative.
P1033 degenerate screen window
The RiScreenWindow is flat on one of its axis (left=right or top=bottom)
P1034 invalid clipping planes
Values passed to RiClipping are swapped or equal (far <= near)
P1035 degenerate crop window
The RiCropWindow is flat on one of the axis (left=right or top=bottom).
P1036 invalid crop window
One or more values passed RiCropWindow is negative or greater than 1.0.
P1037 camera to screen matrix too general, reverting to identity
Current transformation when calling RiProjection is not a 2D (x,y) affine transformation.
P1038 RI_FOV out of range, setting to 90 degrees
Maximum field of view for RiProjection is 180 degrees.
P1039 unrecognized projection 'projection'
3Delight supports the following projection types in RiProjection: perspective, orthographic, cylindrical, fisheye.
P1040 invalid pixel samples
The supplied value is either negative or excessively large.
P1041 invalid pixel filter width or height
The given pixel width or height passed to RiPixelFilter filter is smaller than 1.
P1042 invalid depth of field argument(s)
At least one of the arguments passed to RiDepthOfField is less than 0.
P1043 invalid shutter range
Shutter close time is less than shutter open time.
P1044 invalid exposure argument(s)
At least one of the arguments passed to RiExposure is less or equal to 0.
P1045 invalid quantize arguments
Quantize `max' is less than `max' or dithering amplitude is less than 0.
P1046 invalid variable 'variable' passed to RiQuantize
The variable specified by variable has not been declared. Declare it using RiDeclare or use an inline declaration.
P1047 invalid depth filter 'a'
The filter name passed to RiHider is invalid. More about hider filters in hider-parameters
P1049 unknown RiHider parameter 'param'
param is not a valid parameter to RiHider. More about RiHider parameters in hider-parameters
P1051 [filename:line]: invalid context for 'command'
The issued Ri command is not allowed in the current context. An example would be to issue a RiOption inside the world block.
P1052 invalid declaration 'declaration' for variable 'var'
The variable var is badly declared (syntax error).
P1054 variable 'type var' cannot be assigned to shader variable of the same name but of type 'type' (shader is 'shader' and primitive is 'prim')
There is a type mismatch between a variable attached to a primitive and its destination parameter in the shader.
P1055 invalid parameter passed to RiOrientation: 'orientation'
Only `lh' and `rh' are accepted as parameters to RiOrientation (RI_LH and RI_RH respectively).
P1056 invalid parameter passed to RiSides: 'sides'
RiSides only accepts `1' or `2' as a parameter.
P1057 invalid parameter passed to RiGeometricApproximation: param
The only valid parameters are `motionfactor' and `focusfactor'.
P1058 light source with handle 'lighthandle' was already declared (the original light remains active but is no longer accessible)
lightid is taken by another light source. Since it will be reserved for the new light source, the old one will not be accessible for subsequent RiIlluminate calls.
P1059 invalid light handle 'lighthandle' passed to RiIlluminate
lighthandle was not assigned to any light source.
P1060 invalid argument value 'shadingrate' passed to RiShadingRate
The given RiShadingRate is either 0 or negative.
P1061 invalid argument 'interpolation' passed to RiShadingInterpolation
RiShadingInterpolation only accepts `constant' or `smooth' as a parameter (RI_CONSTANT and RI_SMOOTH respectively).
P1062 field of view fov is out of range for fisheye projection
RiProjection requires a fov parameter between 0 and 360. The default is 180 for a fisheye projection.
P1063 unknown fisheye mapping 'mapping'
The valid mapping types for a fisheye projection are: stereographic, equidistant (default), equisolidangle, orthographic.
P1067 invalid argument to RiMotionBegin
The error could only be triggered when using the C API. Here is an example:
RiMotionBegin( 0, RI_NULL );
P1068 invalid polygon passed to RiPointsPolygons
A polygon (or hole) must have at least three vertices.
P1080 RiNuPatch (NURBS) specified with inconsistent parametric min|max values
A max parametric value (either in `u' or `v') is less than a min.
P1081 RiNuPatch (NURBS) specified with illegal uorder|vorder
uorder or vorder parameters specified to RiNuPatch is less than two.
P1082 RiNuPatch (NURBS) specified with invalid uknot vector
A knot vector, in the `u' parametric direction, is not in an increasing order.
P1083 RiNuPatch (NURBS) specified with invalid vknot vector
A knot vector, in the `v' parametric direction, is not in an increasing order.
P1084 invalid object handle passed to ObjectInstance: objecthandle
RiObjectInstance was called with a handle which was not previously declared using a RiObjectBegin
P1096 unknown coordinate system 'coordsys' passed to 'shadeop', using 'world' instead
An unknown coordinate system was specified to either occlusion(), indirectdiffuse() or gather(). The renderer will revert to using the `world' space. This could be a typo or a coordinate system not being properly declared by RiCoordinateSystem.
P1108 wrong number of values for 'class name type[dim]': found numfound value(s)
This happens when the number of values in a RIB does not make sense for the type. For example, giving 7 values for "P" instead of some multiple of 3.
P1109 required parameters not provided, required 'parmaname' is missing
The required parameter was not provided in the RIB. This may also happen if there was not at least one complete value, for example if "P" is specified with a single float.
P1113 unknown filter name 'filter'
3DELIGHT knows the following filters: `box', `triangle', `catmull-rom', `b-spline', `gaussian', `sinc', `bessel' and `mitchell'.
P1117 invalid error handler name: handler
Valid handlers are `print', `ignore' and `abort'.
P1123 unknown built-in RiProcedural 'procedural', expected 'DelayedReadArchive', 'RunProgram' or 'DynamicLoad'
The RenderMan interface only describes DelayedReadArchive, RunProgram or DynamicLoad as valid procedurals for use with the Procedural RIB statement.
P1124 invalid geometry after displacement for primitive 'object'
This happens when a displacement shader computes invalid values (NaN or infinity). The shader must be fixed.
P1165 undefined coordinate system 'coordsys' in shader
The coordinate system name given to one of the transform functions in the shader was not declared.
P1170 invalid display channel 'name'
The name of the channel to display could not be understood. Check the declaration.
P1171 RiIfBegin/RiElseIf: expression parse error in 'expression'
The given expression could not be understood.
P1176 invalid relative shading rate: 'ratemultiplier'
The value is either 0 or negative.
P1181 invalid subset 'groupname'
Format is invalid. There might be multiple '+' or '-' in the subset.
P2375 primitive is too large for RIB parser
A primitive has exceeded an internal limitation of the RIB parser. This usually happens because the RIB is corrupted.
P2378 invalid shading model 'shadingmodel', reverting to 'matte'
valid shading models for photon mapping are enumerated in Photon Mapping
P2379 no caustic or global photon maps declared, photon mapping will have no effect
At least one global or caustic photon map should be declared in order to use photon mapping. Here is an example on how to do that:
Attribute "photon" "globalmap" ["global.ph"]
Attribute "photon" "causticmap" ["caustic.ph"]
More about photon mapping in Photon Mapping.
R0500 unsupported transmission mode 'mode', will use 'Os'
The specified transmission mode is not supported, the default mode will be used.
R0501 texture 'texturename' is of an unsupported file format
The file format is not supported directly. It should be converted using tdlmake first. See section Using the Texture Optimizer - tdlmake.
R0502 cannot output string variable 'varname' because it is of type 'type'
Outputting string variables is not supported by 3DELIGHT.
R0504 'ricall' is not implemented yet
ricall API entry is not supported yet.
R0505 normals of class 'normalclass' are not supported for ricall.
The renderer does not accept normals of class normalclass for RiCurves and RiNuCurves primitives.
R0513 motion blur of 'attribute' is not implemented
3DELIGHT doesn't support motion blur for attributes. An example would be:
MotionBegin [0 1]
    Color 1 0 0
    Color 0 1 0
MotionEnd
R0516 RiSubdivisionMesh: unsupported subdivision scheme 'scheme'
Only catmull-clark subdivision surfaces are supported.
R0519 unsupported option 'opt'
The given RiOption is not supported.
R0530 RiHierarchicalSubdivisionMesh: unsupported subdivision scheme 'scheme'
Only catmull-clark subdivision surfaces are supported.
R0531 unsupported hit mode 'mode'
The specified ray hit mode is not supported.
R0532 Camera 'cameraname' is not defined.
The provided camera name has not been declared with RiCamera[V].
R1172 RiIfBegin/RiElseIf: unknown variable 'varname' in conditional expression
An undefined variable was referenced during the evaluation of a conditional expression.
R1183 parameter 'parametername' of shader 'shadername' should be made varying for best performance when ray tracing object 'objectname'
For best performance, setting uniform shader parameters from uniform primitive variables should usually be avoided. The primitive variable should be made constant or the shader parameter should be made varying.
R2000 object 'prim' (displacement 'shader', surface 'shader') has no displacement bound but was displaced by 'dispbound' (in eye space)
A displacement shader was attached to an object that doesn't have any displacement bounds. This could cut off displaced parts of the object. A displacement bounds should be specified for the object (dispbound must be increased).
R2001 object 'rim' (displacement 'shader', surface 'shader') exceeded its displacement bound by dispbound%
A displacement bounds is be specified for the object but is not big enough. This could cut off displaced parts of the object. Maybe the bounds should be enlarged.
R2054 primitive (or parts of) 'prim' discarded during eye-split
Object is too close to the camera. Parts of it are clipped.
R2075 cannot allocate 'size' Kbytes for dynamic array
3Delight ios running out of memory.
R2076 cannot create file 'filename' for baking (system error: syserror)
3Delight was unable to create a file passed to bake. This can happen for many reasons and the provided system error should help with the debugging.
R2077 trying to access element index of array 'arrayname' of size arraysize, run-time check failed (line line of file shadername)
There was an out of bound access in the specified shader on the specified array.
R2078 $DELIGHT environment variable is not set
Proper working of 3DELIGHT depends on this. Please fix.
R2086 incomplete (or invalid) parameters set for subsurface scattering
Detected some out of bound parameters for subsurface scattering. Please refer to Subsurface Scattering for guidelines.
R2093 object 'name' (displacement 'shader', surface 'shader') used only usedbound% of its displacement bound
The displacement bound specified for the object is much larger than needed. Performance could be increased by reducing it.
R2377 automatic photonmaps enabled but no lights cast photons
No lights in the scene have been enabled for photon tracing, this is required for the automatic photon mapping feature. The following option should be used to enable photon tracing for a particular light:
Attribute "light" "tracephotons" ["on"]
Further details about automatic photon mapping in Photon Mapping
R2385 vtransform() or ntransform() with a projection matrix will yield unexpected results
The vtransform and ntransform shadeops should not be used with projection matrices or with coordinate spaces which involve projections (eg. "raster" if using perspective projection). It is impossible to correctly project a vector without knowing where it is in space. The solution is to turn the vector into two points, transform those and build a new vector from the transformed points.
R5010 renderdl: '-rifend' option missing
A `-rifargs' option was specified to renderdl but not corresponding `-rifend' was found.
R5011 renderdl: a RI filter must be specified before '-rifargs'
A `-rifargs' option was specified to renderdl but not RI filter was specified using the `-rif' option.
R5012 unable to load RI filter 'filter' (syserror)
3DELIGHT is unable to load the specified filter. The system's error message is shown in syserror.
R5013 missing 'RifPluginManufacture' in RI filter 'filter'
3DELIGHT was able to load the specified filter but was unable to find the mandatory RifPluginManufacture symbol.
R5014 missing 'RifPluginDelete' in RI filter 'filter', this causes a memory leak under Windows
On Windows platforms, RI filters should declare the RifPluginDelete function to delete a specific plugin. This is needed on windows since objects should be deallocated in the DLL that did the allocation.
R5017 procedural object 'identifier' exceeded its bounds by excedent%
The bounds supplied to the RiProcedural call were not large enough for the objects which the procedural generated upon expansion.
R5018 unknown or unavailable interface requested to RixContext (interfaceid)
A shader plugin (RslPlugin) called GetRixInterface with an interface identifier which is either invalid or inappropriate for the current context (eg. k_RixLocalData in an initialization function).
R5019 string values are not allowed in 3D texture files (see parameter 'parametername' of bake3d()/texture3d())
A shader tried to bake or retrieve a string value. This is often caused by a misnamed parameter.
R5027 failed to open bake file manager service socket (errormessage)
This happens when using the
R5031 error writing to point cloud file 'filename' (errormessage)
There was an error while writing to a given point cloud file. The error returned by the system is included in the error message.
R5042 unknown camera 'camera'
Any camera provided to RiDisplay must be declared using RiCamera.
R5044 Invalid (empty) camera name specified to RiCamera

R5045 Token 'tokenname' is reserved by 3Delight. Please use another name
Some strings are reserved to 3Delight and cannot be used to name some resources (such as cameras). Please choose another name.
R5046 RiBlobby: can't load plugin 'plugin' (error)
You specified an invalid plug-in to RiBlobby. The system error is returned as part of the error message. A common error is invalid path to the plug-in.
R5047 RiBlobby: can't find ImplicitFieldNew entry point in plugin 'plugin' (check for correct "C" linkage)
Every RiBlobby plug-in must have a ImplicitFieldNew entry point that is correctly exported.
R5049 point cloud file 'ptcfile' does not contain radiance for subsurface
Make sure to bake the radiance channel into any point cloud file that is to be used with the subsurface() shadeop. Refer to Two Pass Point-Based Subsurface Scattering and subsurface shadeop.
R5050 Cannot run more than one licens free license at once (errorcode)
Only one free 3Delight instance can be run at once on some given local network. For example, running 3Delight on a laptop which is connected to a school network could cause this error since some other user might run the free version of 3Delight as well. The displayed error code at the end of the message can be used for troubleshooting and should be sent to us if you think that there are no good reasons to see this message.
R5051 'importance' parameter to rayinfo() must be varying
In an SIMD execution context, each shading sample can have a different importance. That is why it is necessary for the output of rayinfo("importance", ...) to be varying.
R5053 channel channel is out of range for texture 'texturename' (last valid channel is maxchannel)
This happens when asking for a texture channel that is out of range. For example, if the texture has only one channel, then the following code will produce an error:
uniform float channel = 1; /* out of range for mono textures. */
color test = ptexture( "monochromatic.ptex", channel, faceindex );
R5054 filter 'badfilter' is unkown, will default to 'defaultfilter'
A wrong fitler name was specified to a texturing function (such as texture or ptexture).
R5055 please use ptexture shadeop to open ptexture files (ptexture is ptexturename)
When working with ptextures, one has to use the ptexture() shadeop.
R5056 invalid volume intersection strategy 'strategy' (valid tokens are "additive" and "exclusive")

R5057 invalid number of parameters for distribution 'distribution'
The named distribution given to trace() needs a specific number of parameters. For example the `blinn' distribution needs one parameters which is the roughness:
color result = trace( P, N, "samples", 16, "distribution", "blinn", "roughness", 0.1, "wo", -I );
R5058 The specified distribution 'distribution' was invalid.

R5060 memory limit exceeded, rendering aborted
Rendering was interrupted because memory use exceeded the "processmemory" option.
R5062 The specified bsdf 'bsdf' needs 'udir' direction and 'roughnessv' value.
For anisotropic BSDFs (such as the Ashikhmin-Shirley BRDF), the renderer expects a vector for anisotropy direction and a second roughness value.
R5063 The subsurface() shadeop should be specified with an "irradiance" channel for correct rendering and better performance when using global illumination.
See Table 6.13.
R5064 Cannot outpout deep data (including for deep shadow maps) when using ray tracer in progressive or editable mode.
When using the `raytrace' hider, deep image data can only be output when `progressive' and `editable' are disabled. For example, the following RiHider declaration will produce this error message (won't output any deep image data to the display driver):
Hider "raytrace" "int progressive" [1]
Display "image.exr" "deepexr" "rgba"  # Won't work because of the above.
R5065 unknown "type" parameter passed to subsurface(), only 'pointcloude' and 'raytrace' are accepeted.
R5066 unknown color profile 'colorprofile'. Only sRGB, bt709 and linear are accepted.
R5067 texture lookup of 'texturename' uses a very small filter width
Texture lookups with very small filters can have a severe impact on performance and quality. They are likely to be bad user settings.
R6016 won't start render since no display drivers open successfully
Not a single display driver can receive the rendered image data so there is no point rendering it.
S0523 encountered invalid operand 'operand' during the evaluation of shader 'shadername'
The shader evaluator encountered an unknown opcode. This could happen when reading corrupted or very old shader files.
S2050 cannot find shader 'shadername', will use 'default'
3DELIGHT was unable to find the specified shader. A possible cause is wrong or unset shaders paths (refer to Search Paths Options). 3DELIGHT will try loading a default shader to replace the missing one.
S2051 cannot load shader 'shadername', will use 'default'
3DELIGHT was unable to load the specified shader and will try loading a default shader to replace the missing one.
S2052 shader 'shadername' is of the wrong type
3DELIGHT detected a mismatch between the Ri call and shader's type (such as specifying a surface shader for a lightsource).
S2068 shader 'shader' uses a different interface version: please recompile
The specified shader was compiled with a different version of 3DELIGHT and should be recompiled. Note that 3DELIGHT can perform automated re-compilation if the shader was compiled with the `--embed-source' option. More about this option in shaderdl options.
S2069 the interface of shader 'shader' is invalid
You have specified an invalid shader to 3Delight. Try recompile the shader from the source code.
S2071 cannot open shader 'shader'

S2072 the shader 'shader' uses a different interface version. Automatic conversion was successful. It should be recompiled for better performance.
The specified shader was compiled for an older version of 3Delight but it has been compiled with the `--embed-source' option. This means the 3Delight is able to recompile it on runtime. Still, re-compiling it manually once and for all is a better solution.
S2073 'paramname' is not a parameter of shader 'shader'
You are trying to set a parameter which is not part of the specified shader.
S2074 cannot assign variable of type 'type' to parameter 'typeinshader varname' (shader: 'shadername')
3Delight detected a type mismatch between a shader parameter and the value provided for the shader.
S2088 cannot find dso shadeop 'shadeop'
3DELIGHT is unable to find the DSO that contains the shadeop.
S2089 cannot load dso shadeop 'shadeop' (systemerror)
3DELIGHT is unable to load the DSO that contains the shadeop.
S2090 cannot find 'func' function in dso shadeop 'shadeop' (may be missing extern "C")
After loading the DSO, 3DELIGHT is unable to get the required function.
S2100 co-shader 'handle' not found in parameter 'parametername' of shader 'shadername'
The requested co-shader could not be found.
S2101 bake3d(): bad value replaced by 0 in file 'bakefile'
bake3d() was given infinite or NaN values to bake. They were replaced by 0.
S2102 bake3d(): point with bad geometry skipped in file 'bakefile'
bake3d() was given infinite or NaN values for a point's geometry. That point was skipped.
S2105 cannot find RtxPlugin 'plugin'
3DELIGHT is unable to find the DSO that contains the plugin.
S2106 cannot load RtxPlugin 'plugin' (systemerror)
3DELIGHT is unable to load the DSO that contains the plugin.
S2107 cannot find 'func' function in RtxPlugin 'plugin' (may be missing extern "C")
After loading the DSO, 3DELIGHT is unable to get the required function.
S2383 not enough parameters for format string
The format string given to a function such as printf or format required more arguments than were given.
S2384 parameter type does not match format string (got type but expected expectedtype)
The format string given to a function such as printf or format requires that the following arguments be of a certain type. The actual arguments did not match the requirement.
T0400 '-optionname' option is not useful for 'algoname' algorithm
The option specified by optionname is not used for the asked algoname algorithm. For example, specifying the `-nscales' option to the "simple" algorithm is useless since `-nscales' is only valid for local tone mapping.
T0425 missing space/time coordinates for '-skymap' option ('-h' for help)
Parameter set passed to the `skymap' option is incomplete, please refer to Using the Texture Optimizer - tdlmake.
T0426 invalid space/time coordinates 'coordinate' for '-skymap' option
Parameter set passed to the `skymap' option is invalid, please refer to tdlmake options.
T0427 missing field of view for '-fov' option ('-h' for help)
The `fov' option requires one scalar value as decribed in tdlmake options.
T0430 missing wrapping mode for '-smode', '-tmode' or '-mode' option ('-h' for help)

T0450 '-optionname' option is not useful for this texture type
The option specified by optionname is not used for the asked conversion. For example, specifying the `-fov' option to a simple texture conversion is useless since `-fov' is only valid for environment maps. More about tdlmake options in tdlmake options.
T0451 output is the same as input
Overwriting the input file is not permitted.
T0455 tdlmake: warning, reading texture 'texturename' may take a large
tdlmake: amount of memory. Please refer to user's manual if you are tdlmake: unable to convert this file See Working with Large Textures.
T0456 tdlmake: error reading previous mipmap level
tdlmake accesses the destination texture in both writing and reading when building mip map levels and this error indicates the mixing of those two operations did not succeed. We encountered such errors when textures are being created on SAMBA drives (WINDOWS platforms). The problem can be fixed by updating to a newer SAMBA device driver or creating the texture on a local drive.
T0459 tdlmake: cannot read file 'texture' (system error: systemerror)
tdlmake is unable to read the file
T0460 tdlmake: invalid zfile 'filename'

T0461 missing factor or size for '-preview' option ('-h' for help)

T0462 size 'value' ('-preview' option's argument) is not a valid scalar

T0463 '-preview' option is ignored (size 'value' is out of range)
An out-of-range value has been specified to the `-preview' option. See section Using the Texture Optimizer - tdlmake.
T0464 missing input gamma for '-gamma' option ('-h' for help)

T0465 input gamma 'value' ('-gamma' option's argument) is not a valid number
The parameter should be a positive scalar.
T0466 missing input gamma for '-rgbagamma' option ('-h' for help)

T0467 input gamma 'progname' ('-rgbagamma' option's argument) is not a valid number
One of the four values provided to `rgbagamma' is not valid. Each of the four values should be a positive scalar.
T0468 input gamma 'value' ('-option' option's argument) is not a positive number

T0469 missing color space for '-colorspace' option ('-h' for help)

T0470 color space 'colorspace' ('-colorspace' option's argument) was not recognized
See section Using the Texture Optimizer - tdlmake.
T0471 missing size for '-tilesize' option ('-h' for help)

T0472 size 'value' ('-tilesize' option's argument) is not a valid integer

T2013 netcache: cannot create cache directory 'a'
This looks like some permission problems.
T2014 netcache: cannot create 'directory', network caching disabled
The network caching algorithm was unable to create a mutex file for concurrent file access. For safety reasons 3DELIGHT will disable all network caching logic.
T2015 netcache: cache directory is located on a slow access device ('a')
The directory is probably on the network (instead of a local drive), which defeats the purpose of a network cache. 3DELIGHT will still use the specified directory but there might be no performance gains.
T2016 netcache: cannot compute cache size, caching disabled
The network caching algorithm is not able to compute cache's size. For safety reasons 3DELIGHT will disable all network caching logic.
T2017 netcache: cannot perform a locking operations to clean the cache
At the end of a render, 3DELIGHT's network cache has to perform some maintenance tasks. This error message signifies that those tasks were not executed because 3DELIGHT is unable to get a system lock. The effect of this will be generally unnoticeable and could only result in some files being accessed on the network instead of the file cache. A possible cause is a restrictrive permission on the network cache directory.
T2018 netcache: cannot resolve path for 'filename', this file won't be cached
This is a low level system error. If it happens, contact us.
T2019 netcache: cannot open lock file 'lockfile'
3DELIGHT needs to access a lock file in the networking cache directory in order to work properly (because of potential concurrent renders). This means no caching will be performed and that 3DELIGHT will access the file(s) on the network. A possible cause is a restrictrive permission on the network cache directory.
T2020 netcache: cached file 'file' lost but lock exist, remove lock manually (lock name is 'lockname')
When 3DELIGHT uses a cached file, it locks it so that no other concurrent render removes the file while it is being used. This error messages signifies a problem in that a lock exists but the file doesn't. This can happen if cached files are deleted manually (which is not a good practice). To solve the problem, the lock file needs to be removed manually (removing the entire network cache directory will remove all the locks).
T2021 netcache: lock for 'file' exists but cached file is desynchronized, will use original
Looks like the found cached file was not supposed to be there. Refreshing it.
T2022 netcache: invalid lock file file, content: text
Network cache lock file is probably corrupted. This will not cause any rendering artifacts since 3DELIGHT will safely revert to the original, non-cached, file. Removing the lock file manually will fix the problem.
T2023 netcache: system clock skewed, please fix (detected on file 'filename')
3DELIGHT detected an invalid timestamp on some file (a timestamp in the future for example). When this happens, the renderer is not able to update the cache with new files and this could affect performance. Fixing the clock, or removing the file will fix the problem.
T2024 netcache: cannot delete old lock file 'lockfile', please do it manually
3DELIGHT detected a "leftover" lock file (probably because of an aborted render) and is trying to delete it but couldn't. This could be caused by restrictive file permissions and the file should be deleted manually.
T2025 netcache: cannot create lock file 'lockfile'
For every cached and used file, 3DELIGHT creates a corresponding lock file. This message means that no such lock file was created and 3DELIGHT will safely revert to the original, non-cached, file. A possible cause is a restrictrive permission in the network cache directory.
T2026 netcache: 'file' is larger than maximum cache size, consider increasing cache size
A file is too big for the cache. It is either really big or the cache size is not big enough. Cache size is adjusted through an option:
Option "netcache" "int cachesize" [n]
Where `n' is the size of the cache.
T2027 netcache: cannot copy 'file' to cache
3DELIGHT was unable to transfer to file from its network location to the cache. A possible cause is a restrictrive permission on the file or the network cache directory.
T2028 netcache: lock file 'a' has disappeared
A lock file was deleted too early. This is an indication that a texture file could have been removed from the cache while being read by another process.
T2038 file 'filename' is not a valid TIFF ('error')
The specified file is indeed a TIFF but it 3DELIGHT doesn't know how to handle it. This could happen if data encoding in the TIFF is not supported. Make sure you ran tdlmake on that file. Please refer to supported formats to see what is supported by tdlmake.
T2039 file 'filename' is not a valid texture file (error)
The file format seems invalid or corrupted.
T2040 'filename' not found
The specified texture or shadow file cannot be found. This usually indicates a problem with search paths.
T2041 texture 'texturename' was not generated by 'tdlmake' (performance and/or quality will suffer)
Textures used by 3DELIGHT work better when generated with 'tdlmake'.
T2042 'filename' texture is not adequate for 3delight, try using 'tdlmake'
3Delight cannot read the specified texture file directly. tdlmake is a utility that can convert pretty much any image file format to a readable texture so it should be tried on the input texture. See section Using the Texture Optimizer - tdlmake.
T2053 netcache: inner cache is larger than outer cache
There is likely a configuration mistake as the inner cache is meant to be smaller and faster.
T2087 netcache: could not copy file from 'sourcefile' to 'targetfile'
When using write caching, the output file could not be written back to the network once complete. This could be caused by a permission issue or a full target disk.
T2092 netcache: could not update timestamp of file 'filename'
When using write caching, the file in the cache is touched after being written back to the network. This message is shown when this fails, most likely because of a permission issue in the cache.
T2104 netcache: 'filename' has modification time in the future, it will not be cached
The file has an incorrect modification time. This prevents proper operation of the netcache and should be fixed.
T2372 netcache: more than one source for output file 'filename'; only one will be cached
This is typically caused by more than one display having the same target.
T2373 cannot read 3D texture file 'filename' (message)
The renderer is unable to open the specified file. The 3D texture file is either a point cloud file or a brick map file.
T2389 error estimating light contribution for photon generation
3DELIGHT was unable to properly spread photons between lights. Photon map quality may be suboptimal.
T5061 Can't access directory where MARI textures are (for file mari_texture_name)
tdlmake is trying to find MARI textures but is unable to list the files in the containing directory.

3Delight 10.0. Copyright 2000-2011 The 3Delight Team. All Rights Reserved.