Difference between revisions of "Reference:Object Modifiers"
Jholsenback (talk | contribs) m (simplified) |
Jholsenback (talk | contribs) m (tense) |
||
Line 30: | Line 30: | ||
<p class="Note"><strong>Note:</strong> Some conditions can produce unexpected results. When applied to <em>CSG</em> components most modifiers work as expected, however by design some modifiers are not passed from nested objects to a <em>CSG</em> resultant involving those objects.</p> | <p class="Note"><strong>Note:</strong> Some conditions can produce unexpected results. When applied to <em>CSG</em> components most modifiers work as expected, however by design some modifiers are not passed from nested objects to a <em>CSG</em> resultant involving those objects.</p> | ||
− | <p>This is true when using the following keywords and / or keyword blocks: <code>[[Reference:No Image Object Modifier|no_image]]</code>, <code>[[Reference:No Reflection Object Modifier|no_reflection]]</code>, <code>[[Reference:No Shadow Object Modifier|no_shadow]]</code>, <code>[[Reference:No Radiosity Object Modifier|no_radiosity]]</code>, <code>[[Reference:Double Illuminate Object Modifier|double_illuminate]]</code>, <code>[[Reference:Hollow Object Modifier|hollow]]</code>, <code>[[Reference:Photons|photons]]</code> and <code>[[Reference:Radiosity|radiosity]]</code>. <em>CSG</em> unions pass all modifiers listed above unless <code>split_union off</code> has been set, in which case the | + | <p>This is true when using the following keywords and / or keyword blocks: <code>[[Reference:No Image Object Modifier|no_image]]</code>, <code>[[Reference:No Reflection Object Modifier|no_reflection]]</code>, <code>[[Reference:No Shadow Object Modifier|no_shadow]]</code>, <code>[[Reference:No Radiosity Object Modifier|no_radiosity]]</code>, <code>[[Reference:Double Illuminate Object Modifier|double_illuminate]]</code>, <code>[[Reference:Hollow Object Modifier|hollow]]</code>, <code>[[Reference:Photons|photons]]</code> and <code>[[Reference:Radiosity|radiosity]]</code>. <em>CSG</em> unions pass all modifiers listed above unless <code>split_union off</code> has been set, in which case the former list is ignored as with <code>difference</code>, <code>intersection</code> and <code>merge</code>.</p> |
<p>While not technically object modifiers, object interior and finish subsurface blocks see similar <em>CSG</em> propagation complications. Interiors get attached to the objects where interiors are defined. The <code>interior</code> and <code>subsurface</code> object and finish modifier block results, respectively, vary where definitions are part of components making up any given <em>CSG</em>. Furthermore, in the case of subsurface, if the distance between the two surfaces is similar or smaller than the translucency value, we start to see through the object. In a <em>CSG</em>, if the back surface doesn't have a similar translucency, you may also see unexpected results.</p> | <p>While not technically object modifiers, object interior and finish subsurface blocks see similar <em>CSG</em> propagation complications. Interiors get attached to the objects where interiors are defined. The <code>interior</code> and <code>subsurface</code> object and finish modifier block results, respectively, vary where definitions are part of components making up any given <em>CSG</em>. Furthermore, in the case of subsurface, if the distance between the two surfaces is similar or smaller than the translucency value, we start to see through the object. In a <em>CSG</em>, if the back surface doesn't have a similar translucency, you may also see unexpected results.</p> |
Latest revision as of 20:43, 27 March 2020
A variety of modifiers can be attached to objects. Some modifiers are specific to a particular object or group of objects, while some modifiers can be applied to all objects. Objects can anything from a simple predefined primitive, such as a sphere or a box to a complex object using Constructive Solid Geometry or CSG.
OBJECT_MODIFIER: clipped_by { UNTEXTURED_SOLID_OBJECT... } | clipped_by { bounded_by } | bounded_by { UNTEXTURED_SOLID_OBJECT... } | bounded_by { clipped_by } | no_shadow | no_image [ Bool ] | no_radiosity [ Bool ] | no_reflection [ Bool ] | inverse | sturm [ Bool ] | hierarchy [ Bool ] | double_illuminate [ Bool ] | hollow [ Bool ] | interior { INTERIOR_ITEMS... } | material { [MATERIAL_IDENTIFIER][MATERIAL_ITEMS...] } | texture { TEXTURE_BODY } | interior_texture { TEXTURE_BODY } | pigment { PIGMENT_BODY } | normal { NORMAL_BODY } | finish { FINISH_ITEMS... } | photons { PHOTON_ITEMS...} radiosity { RADIOSITY_ITEMS...} TRANSFORMATION
Note: Some conditions can produce unexpected results. When applied to CSG components most modifiers work as expected, however by design some modifiers are not passed from nested objects to a CSG resultant involving those objects.
This is true when using the following keywords and / or keyword blocks: no_image
, no_reflection
, no_shadow
, no_radiosity
, double_illuminate
, hollow
, photons
and radiosity
. CSG unions pass all modifiers listed above unless split_union off
has been set, in which case the former list is ignored as with difference
, intersection
and merge
.
While not technically object modifiers, object interior and finish subsurface blocks see similar CSG propagation complications. Interiors get attached to the objects where interiors are defined. The interior
and subsurface
object and finish modifier block results, respectively, vary where definitions are part of components making up any given CSG. Furthermore, in the case of subsurface, if the distance between the two surfaces is similar or smaller than the translucency value, we start to see through the object. In a CSG, if the back surface doesn't have a similar translucency, you may also see unexpected results.
See also: Transformations
See also: Hierarchy in blob
or height_field