Table of Contents Previous Chapter Details Viewpoint Slideshow Next Chapter Details X3D Resources

X3D Example Archives: Conformance Nist, Lights, Point Light

X3D Scenes Descriptions
default complexpl Test browser to apply default values of a PointLight node to complex geometry (ElevationGrid, Extrusion, and IndexedFaceSet). The test should generate all three complex geometry with the default color. IndexedLineSet and PointSet are not lit geometry, therefore are not part of this test.
default primitivespl Test browser to apply all the default values of a PointLight node to simple geometry (cone, sphere, cylinder, box). A row containing all four simple geometry is drawn in the local coordinate system and a PointLight node is defined at the beggining of the test. All figures should be illuminated with white light.
test - ambeffect - ambientcom This test addresses the effect of the PointLight ambientIntensity on the ambient of a complex object (IndexedFaceSet). Two IndexedFaceSets are drawn in the local coordinate system and a PointLight is defined to shine on them along the -Z axis. The IndexedFaceSet to the left contains an ambientIntensity 0.3 and the one to the right contains an initial ambientIntensity of 1. The ambientIntensity of the light is increased on both geometry as the animation progresses. Since both materials ambientIntensity are constants, at the end of the animation the one to the right will be brigther than the one to the left. This is because at the end of the animation the figure to the right will have maximum ambient (both material and light ambientIntensity will be 1)
test - ambeffect - ambientsim This test addresses the effect of the PointLight ambientIntensity on the ambient of a simple object (Sphere). Two spheres are drawn in the local coordinate system and a PointLight is defined to shine on them along the -Z axis. The sphere to the left contains an ambientIntensity 0.3 and the sphere to the right contains an initial ambientIntensity of 1 The ambientIntensity of the light is increased on both spheres as the animation progresses. Since both materials ambientIntensity are constants, at the end of the animation the one to the right will be brigther than the one to the left. This is because at the end of the animation the sphere to the right will have maximum ambient (both material and light ambientIntensity will be 1)
test - ambientcom Test browser to set the ambientIntensity field to a range of values on complex geometry (Extrusion, ElevationGrid and IndexedFaceSet). One row of the complex geometry is drawn in the local coordinate system. The ambientIntensity of the light should increase as the animation progresses. The animation is started by clicking on the text above the geometry. The ambientIntensity ranges from 0 to 1.
test - ambientsim Test browser to set the ambientIntensity field to a range of values on simple geometry (cone, sphere, cylinder and box). One row of the simple geometry is drawn in the local coordinate system. The ambientIntensity of the light should increase as the animation progresses. The animation is started by clicking on the text above the geometry. The ambientIntensity values range from 0 to 1.
test - colorcom Test browser to set the color field to a range of values on complex geometry (Extrusion, ElevationGrid and IndexedFaceSet). One row of the complex geometry is drawn in the local coordinate system. The amount of of RGB color in the light should increase as the animation progresses. The animation is started by clicking on the text above the geometry. The amount of color ranges from 0 0 0 to 1 1 1.
test - colorsim Test browser to set the color field to a range of values on simple geometry (cone, sphere, cylinder and box). one row of the simple geometry is drawn in the local coordinate system. The amount of RGB color in the light should increase as the animation progresses. The animation is started by clicking on the text above the geometry. The amount of color ranges from 0 0 0 to 1 1 1 .
test - com - attenuationspecial This test checks the special attenuation value of 0 0 0. This value should produce the same behaviour as 1 0 0 (the default value). The light should not attenuate as long as the objects are within the radius of the light. The objects in question are a set of complex geometry (cone, spehere, box and cylinder). The test starts by clicking on the text above the geometry. The objects will move further away from the light along the -Z axis and stop at position Z = -50 The intensity of the light should not change at any time during the animation.
test - com - scope Test browser to shade light only on objects within its the radius field. The figures in question are a complex geometry (ElevationGrid). Four sets of ElevationGrrids are drawn in the XY plane forming cross-like figure and a PointLight with radius 5.5 and intensity 1 is also defined at the origin. If the implementation under test does NOT ignore the radius, then the last figure of each set (except the ones along the +X axis) should not be illuminated. (the last two figures along the +X axis should not be illuminated)
test - comc 1 - attenuation Test browser to apply attenuation values to a set of complex geometry. The second index of the attenuation field is set to 0.2, which should cause the attenuation to decrease inversively proportional to the distance from the light. The light brightness should decrease as the objects move away from the light.
test - comc 2 - attenuation Test browser to apply attenuation values to a set of complex geometry. The third index of the attenuation field is set to 0.1, which should cause the attenuation to decrease inversively proportional to the square of the distance from the light. The light brightness should decrease rapidly as the objects move away from the light. The ambientIntensity and the intensity are set to 1 for all geometry.
test - inteffect - diffusecom This test addresses the effect of the light intensity on the diffuse color of complex geometry. One row of complex geometry is drawn in the local coordinate system and PointLight is also defined with radius 50 and intensity 0 at location 0 0 10. The test starts by clicking on the text above the geometry. The intensity of the light is increased as the test progresses and the diffuse color brightness of the objects should also increase. Intensity ranges from 0 to 1. The geometry are originally defined with a diffuseColor of 0 0 1.
test - inteffect - diffusesim This test addresses the effect of the light intensity on the diffuse color of simple geometry. One row of simple geometry is drawn in the local coordinate system and PointLight is also defined with radius 50 and intensity 0 at location 0 0 10. The test starts by clicking on the text above the geometry. The intensity of the light is increased as the test progresses and the diffuse color brightness of the objects should also increase. Intensity ranges from 0 to 1. The geometry are originally defined with a diffuseColor of 0 0 1.
test - inteffect - specularcom This test addresses the effect of the light intensity on the specular color of complex geometry. One row of complex geometry is drawn in the local coordinate system and a PointLight is also defined with radius 50 and intensity 0 at location 0 0 10. The test starts by clicking on the text above the geometry. The intensity of the light is increased as the test progresses and the specular color of the light should also increase (in a linear fashion). Intensity ranges from 0 to 1. The geometry are originally defined with a diffuseColor of 1 0 0 and a specularColor of 0 1 0.
test - inteffect - specularsim This test addresses the effect of the light intensity on the specular color of simple geometry. One row of simple geometry is drawn in the local coordinate system and a PointLight is also defined with radius 50 and intensity 0 at location 0 0 10. The test starts by clicking on the text above the geometry. The intensity of the light is increased as the test progresses and the specular color of the objects should also increase (in a linear fashion). Intensity ranges from 0 to 1. The geometry are originally defined with a diffuseColor of 1 0 0 and a specularColor of 0 1 0.
test - intensitycom Test browser to set the intensity field to a range of values on complex geometry (Extrusion, ElevationGrid and IndexedFaceSet). One row of the complex geometry is drawn in the local coordinate system. The intensity of the light should increase as the animation progresses. The animation is started by clicking on the text above the geometry. The intensity ranges from 0 to 1.
test - intensitysim Test browser to set the intensity field to a range of values on simple geometry (cone, sphere, cylinder and box). one row of the simple geometry is drawn in the local coordinate system. The intensity of the light should increase as the animation progresses. The animation is started by clicking on the text above the geometry. The intensity ranges from 0 to 1.
test - locationcom Test browser to set the location field to a range of values on a a complex geometry (Extrusion) The geometry is drawn in the local coordinate system and it should be a doughnut like "figure". The location of the light is changed as the animation progresses. The animation is started by clicking on the text above the geometry. The location values used are 0 0 10,10 0 0, 0 0 -10,-10 0 0.
test - locationsim Test browser to set the location field to a range of values on a set of simple geometry (sphere) The geometry are drawn in the local coordinate system. The location of the light is changed as the animation progresses. The animation is started by clicking on the text above the geometry. The location values used are 0 0 5,5 0 0,0 0 -5,-5 0 0.
test - on This test sets the on field to true/false for two PointLight node defined using two different Transform node. The test should generate two default size Spheres. The leftmost one should be illuminated and the rightmost one should be dark.
test - red - on - blue This test addresses the ability of a browser to apply a red light on a blue object. Four simple geometries are defined on the local coordinate system and the emissive and diffuse color are both set to 0 0 1. A point light is also defined and a red color is associated with it. This light illuminates the objects making them look black. The dot product of the light and object color produce a black appearing object.
test - sim - attenuationspecial This test checks the special attenuation value of 0 0 0. This value should produce the same behaviour as 1 0 0 (the default value). The light should not attenuate as long as the objects are within the radius of the light. The objects in question are a set of simple geometry (cone, spehere, box and cylinder). The test starts by clicking on the text above the geometry. The objects will move further away from the light along the -Z axis and stop at position 0 0 -50. The intensity of the light should not change at any time during the animation.
test - sim - scope Test browser to shine light only on objects within its radius. The objects in question are a set of simple geometry (Cone, Sphere, Cylinder, and Box). A set of four simple geometry is drawn in the local coordinate system and a PointLight with radius 5.5 and intensity 1 is also drawn at the origin. If the implementation under test does NOT ignore the radius, then the last figure of each set should not be illuminated.
test - simc 1 - attenuation Test browser to apply attenuation values to a set of simple geometry. The second index of the attenuation field is set to 0.2, which should cause the attenuation to decrease inversively proportional to the distance from the light. The light brightness should decrease as the objects move away from the light.
test - simc 2 - attenuation Test browser to apply attenuation values to a set of simple geometry. The third index of the attenuation field is set to 0.1, which should cause the attenuation to decrease inversively proportional to the square of the distance from the light. The light brightness should decrease rapidly as the objects move away from the light. The intensity and the ambientIntensity are set to 1 for all geometry.

Online at http://www.web3d.org/x3d/content/examples/ConformanceNist/Lights/PointLight

Master source code archive is under subversion control at
http://sourceforge.net/p/x3d/code/HEAD/tree/www.web3d.org/x3d/content/examples/ConformanceNist/Lights/PointLight

Table of Contents Previous Chapter Details Viewpoint Slideshow Next Chapter Details X3D Resources

Also available: current and archived nightly builds and distributions of these examples, all published under an Open-Source License.

The X3D Resources: Examples page and Savage Developers Guide provide more information about the production of this archive.