Lights
Visionary Render has the ability change how the scenes appear by using lights. Most CAD packages use a very simple lighting system which illuminates the scene evenly. Visionary Render allows you to create lights to produce a much more realistic appearance to the scene. There are several different types of Lights available:
- Ambient
- Directional
- Point
- Spot
- Light Probe
- Reflection Probe
Overview
- A Light is a type of Assembly used to illuminate the scene.
- A Light can have a position and rotation, but some light types ignore those settings.
- A Light can be copied and pasted like any other Assembly.
- A Light’s position and rotation can be relative to its parent.
- A Light can have 3D icon placed in the scene at the position of the light.
- A Light can be enabled or disabled like any other Assembly – effectively turning the light on or off.
Types
Ambient Light
Ambient colour is the colour of an object where it is in shadow. This colour is what the object reflects when illuminated by ambient light rather than direct light. Position and rotation have no effect on this light source.
Property | Description |
---|---|
Enabled | Standard enabled/disabled setting. |
Type | Indicates what type of light it is. |
Colour | Simple colour of the light – specified in red, green, and blue components. |
Intensity | An indication of how bright the light is. Normal range is between 0.0 and 1.0. |
Directional Light
Like sunlight; parallel rays of light from a source at infinity that do not diminish with distance. Position is ignored with this light, only rotation affects this light source.
Property | Description |
---|---|
Enabled | Standard enabled/disabled setting. |
Type | Indicates what type of light it is. |
Colour | Simple colour of the light – specified in red, green, and blue components. |
Intensity | An indication of how bright the light is. Normal range is between 0.0 and 1.0. |
Cast Shadows | Indicates whether this light will cast shadows – when enabled, additional shadow properties will be shown. |
Point Light
A point light source is like a light bulb – light from all directions. Rotation has no effect on it, only position.
Property | Description |
---|---|
Enabled | Standard enabled/disabled setting. |
Type | Indicates what type of light it is. |
Colour | Simple colour of the light – specified in red, green, and blue components. |
Intensity | An indication of how bright the light is. Normal range is between 0.0 and 1.0. |
Radius | Distance at which the light fades to black, if 0 then no fade, infinite |
Inverse Square Falloff | When Inverse Square Falloff is enabled, the intensity of the light diminishes in a realistic manner as the distance from the light to the lit surface increases. |
Visible in Iray | Whether to enable this light when rendering the scene in Iray. |
Cast Shadows | Indicates whether this light will cast shadows – when enabled, additional shadow properties will be shown. |
Spot Light
Shines in a cone from a source set by the Assembly’s position. You can specify the spread of the cone using the Spread property and the distance at which it has effect using the Radius value.
Property | Description |
---|---|
Enabled | Standard enabled/disabled setting. |
Type | Indicates what type of light it is. |
Colour | Simple colour of the light – specified in red, green, and blue components. |
Intensity | An indication of how bright the light is. Normal range is between 0.0 and 1.0. |
Spread Angle | Angle of the arc of light – in degrees. |
Softness | Changes how hard or software the shadow edges appear. The larger the number the software more diffused the shadows, the smaller the number the sharper the shadow edges appear. |
Radius | Distance at which the light fades to black, if 0 then no fade, infinite. Distance is in metres. |
Inverse Square Falloff | When Inverse Square Falloff is enabled, the intensity of the light diminishes in a realistic manner as the distance from the light to the lit surface increases. |
Cast Shadows | Indicates whether this light will cast shadows – when enabled, additional shadow properties will be shown. |
Shadow Properties
The shadow properties become visible when cast shadows is enabled in the light properties.
Property | Description |
---|---|
Shadow Map Size | The size of the map used in producing the shadow. Larger the map the more detailed the shadow but the more graphics resources used to produce it. |
Shadow Strength | Indicates how dark a shadow should be, 0 being no shadow, 1 being full shadow with no visible detail in the shadow. |
Shadow Clip Offset | Specifies an offset to the near clip plane of the light when drawing shadow casters into the shadow map. This can be seen when the light frustum is drawn from the light position. |
Shadow Blur | Indicates how blurred the edges of the shadow should be – the bigger the number the more blurred the shadow edge appear. |
Shadow Overdarken | Value used to over darken the shadow to account for light bleeding. |
Lock Shadow Map | If set, the Shadow map will not be redrawn again until it is unset. |
Shadow Bounds Node | If set, adjusts the shadow map for a directional light to enclose just this node instead of the whole scene. |
Cascaded Shadows | Enable view-dependent cascaded shadow maps if this is a directional light. This is costly because all shadow casters in the scene are redrawn 4 times per frame, but it gives consistently high-resolution shadows regardless of scene size and view position. |
Split Distances | These define the distances from the viewer where each of the 4 cascades ends. The smaller the value the more detailed the shadow in that cascade but the less area it covers in the world. Each distance is relative to the previous distance, except for the first which is relative to the near clip plane of whichever view is using the shadow map - e.g. if the values were 5,5,5,5 then the first cascade would cover an area from 0 to 5 metres from the near clip plane, the second cascade would cover from 5 metres to 10 metres, the third from 10 to 15, etc. |
Stagger Split Updates | If true only one split of the cascaded shadow map will be drawn per frame, cycling through to the next split each frame. |
You can have up to 8 shadow casting lights enabled in your scene at once. Additional shadow casting lights will not illuminate or cast shadows in the scene.
Advanced
Property | Description |
---|---|
Max View Distance | Maximum distance in metres that this light will be rendered. |
Max View Distance Fade | The proportion of Max Fade Distance over which this light will fade. |
These properties aren’t applicable for Ambient and Directional lights.
Probes
Light Probe
A Light probe is used to apply real-time dynamic reflections to an assembly of its surrounding environment.
If you have a skybox enabled in the scene, then reflective materials on all objects in the scene will reflect that skybox. Adding a Light Probe to the scene is essentially like adding a local skybox which can be restricted to only affecting objects close to it. The content of this Light Probe’s skybox is automatically generated by rendering the scene from around a single point in the centre of the probe. This gives you the ability to have real-time dynamic reflections on object of their surrounding environment.
The reflection is based upon the centre of the probe so for more accurate reflections, the light probe would be added to the object itself. Thus, if the object was moved, the light probe would move with it and update accordingly. Otherwise, the reflections are based upon the centre of the probe position.
The image above shows a room with 3 geometric shapes. You can see the walls, windows and ceiling being reflected on the 3 shapes.
The same scene with the light probe disabled – now using the skybox for the reflection. There are several properties used to control the behaviour of a light probe:
Property | Description |
---|---|
Enabled | If disabled, the light probe is not updated and nothing in the scene uses it for reflections. |
Mode | Can be set to Bake or Custom. |
When Mode is set to Bake:
Property | Description |
---|---|
Bake Mode | When should the contents of the Light probe be updated. |
Resolution | This is the resolution of the cube map texture the light probe renders to. Obviously the higher this resolution the better quality the reflections will be, but the lower your framerate will be and the more graphics card memory you will use. Resolution is in pixels. |
Include Node | This is a VRLink to an assembly within the Scene. By default the light probe renders everything in the scene into its cube map texture. This 'Include Node' property allows you to specify that it should only render that assembly and its children into its cube map texture. |
Exclude Node | This is a VRLink to an assembly within the Scene. By default the light probe renders everything in the scene into its cube map texture, or everything in the 'Include Node' if one is specified. This 'Exclude Node' property allows you to specify that while rendering it should skip that assembly and its children. |
Render Shadows | Render shadows into the light Probe. |
Shape | By default the light probe renders everything at infinity (like a skybox), and everything in the scene should use it for reflections. By specifying one of the proxy shapes (Box or Ellipsoid) you can restrict the reflections to just objects that enter this shape. In addition the light probe is rendered onto this shape’s inner surface instead of at infinity, so objects close to the edge will have reflections that are “parallax correct”. |
Shape Size | This is the size of the Box or Ellipsoid shape. Units are metres. |
View Bounds Node | If specified, causes the light probe to use for rendering only when the camera is within the bounding box of the node. |
When Mode is set to Custom:
Property | Description |
---|---|
Custom Texture | A custom texture to apply to the light probe. |
Shape | By default the light probe renders everything at infinity (like a skybox), and everything in the scene should use it for reflections. By specifying one of the proxy shapes (Box or Ellipsoid) you can restrict the reflections to just objects that enter this shape. In addition the light probe is rendered onto this shape’s inner surface instead of at infinity, so objects close to the edge will have reflections that are 'parallax correct'. |
Shape Size | This is the size of the Box or Ellipsoid shape. Units are metres. |
View Bounds Node | If specified, causes the light probe to use for rendering only when the camera is within the bounding box of the node. |
Reflection Probe
In the lighting system within Visionary Render is a feature called a Reflection Probe. This allows you to change the appearance of an assembly by making it appear highly reflective. The reflection is updated in real-time and is dependent on the viewer’s position and orientation.
The option to create a Reflection Probe is on the Light menu along with Directional, Ambient, Spot and Point. All the assemblies under the Reflection Probe assembly will receive reflections from a dynamically updated cube map, constantly being rendered around the assembly it is attached to.
No assembly beneath the Reflection Probe assembly will be rendered into the cube map, but everything else in the scene will be (aside from helpers, if the User Interface > Helpers > Show Helpers in Reflections setting is disabled).
There are several properties used to control the behaviour of a reflection probe:
Property | Description |
---|---|
Enabled | If disabled, the reflection probe is not updated and nothing in the scene uses it for reflections. |
Mode | Can be set to Bake or Custom. |
When Mode is set to Bake:
Property | Description |
---|---|
Bake Mode | When should the contents of the reflection probe be updated. |
Resolution | This is the resolution of the cube map texture in pixels. Obviously the higher this resolution the better quality the reflections will be, but the lower your framerate will be and the more graphics card memory you will use. |
Render Shadows | Whether to render shadows into this probe. |
Shape | By default the probe renders everything at infinity (like a skybox), and everything in the scene should use it for reflections. By specifying one of the proxy shapes (Box or Ellipsoid) you can restrict the reflections to just objects that enter this shape. In addition the probe is rendered onto this shape’s inner surface instead of at infinity, so objects close to the edge will have reflections that are “parallax correct”. |
Shape Size | This is the size of the Box or Ellipsoid shape. Units are metres. |
When Mode is set to Custom:
Property | Description |
---|---|
Custom Texture | A custom texture to apply to the reflection probe. |
Shape | By default the probe renders everything at infinity (like a skybox), and everything in the scene should use it for reflections. By specifying one of the proxy shapes (Box or Ellipsoid) you can restrict the reflections to just objects that enter this shape. In addition the probe is rendered onto this shape’s inner surface instead of at infinity, so objects close to the edge will have reflections that are 'parallax correct'. |
Shape Size | This is the size of the Box or Ellipsoid shape. Units are metres. |
Image Based Lighting
Image based lighting (IBL) uses a technique that involves capturing omnidirectional real-world lighting information from an image. This image would typically be a sky cube or sky dome. In Visionary Render, this image is the applied Skybox in the scene or from a light probe. The skybox is analysed, and the resulting information used to generate the ambient light and reflection map within the scene.
If image based lighting is used, then ambient light is no longer required as it is generated from the image. In most cases, IBL will generate more accurate results.
To enable IBL, press F6 to open the Settings window, select the Renderer and then Select the Quality tab.
Controls
Depending on what type the light is there are several controls which are applicable. From the menu within the Scenes tree view you can:
- Position at Body: Point and Spot lights
- Fly To: Ambient, Directional, Point and Spot
- Enable/disable state: Ambient, Directional, Point, Spot and Reflection.
If any light has children assemblies, they will be considered when these controls are used.
Helpers
Lights in Visionary Render have “Helpers” which indicate the position, rotation, and other properties of a light. Helpers can be enabled or disabled from the toolbar.
Helper | Description |
---|---|
![]() | Spot light icon and helper showing direction and spread angle |
![]() | Point light icon and helper show the location and radius of the spread – no indication of direction as its omnidirectional. |
![]() | Directional light icon – show direction. |
Ambient light icon – no direction as its global illumination without direction. |