Falloff Gem Glass MultiID Tiling Override Triplanar Mapping Template Override
Falloff
🎱 Falloff properties have been added to Physical Materials as an Operator.
Add the new Falloff
operator:
Gem
The Gem operator overrides the physical material and any operators below. It can be thought of as a custom Gem material shader.
Index of Refraction | The index of refraction or IOR describes the change in direction of a light ray traveling. A higher IOR looks like a more intense reflection. It is a standard property in PBR materials. Lists of accurate IOR values can be found online. The Gem operator’s default values are equivalent to a basic diamond: Default Value: 2.417 Default Abbe Number: 55 |
Abbe Number | Increases or decreases the dispersion effect. Numeric Range:
|
Color | Defines the color of the gem’s reflection. We use a color picker that can use RGB, HSV or HEX inputs. |
The meshes must be separate nodes for the effect to work, and having a large number of nodes in the scene will hinder performance. However, as long as the gems' meshes are not unique, the shader can optimize them quite heavily. A common scenario when uploading a model into the platform is that the meshes are not instanced/linked despite appearing the same, and thus can't be optimized by the shader. One way to guarantee they are correctly instanced is the following:
1. Import the model
2. Open the model asset
3. Delete all but one of the gems
4. Duplicate one of the gems as many times as needed to replace the missing gems
Ensure there are no operators added to the 'Polymesh' or 'Null' (model) nodes representing the gems
Glass
🥃 Glass can be represented in WebGL using the new Transmission properties in Physical Materials.
Under Transparency
, turn on Full Transmission
:
Transmission
properties will be displayed:
MultiID
The MultiID operator lets you assign different materials on a single mesh. This works by associating mesh faces to different “IDs” or “groups”. You can set up your model’s MultiID values in another software or add a Material IDs operator in the model asset.
To use this feature apply a material with a MultiID operator to a model that has been setup with material id values. Then the corresponding Material ID Asset of the MultiID operator is applied to the model asset.
Default Color | Defines the default color when no material asset is assigned to the Material ID group. We use a color picker that can use RGB, HSV or HEX inputs. |
Material ID 0 - Material ID 29 | This is where a user applies which material asset is applied to the corresponding Material ID number. You need a model asset with Material IDs in order for this to work correctly. |
Is MultiID | MultiID when checked enables having multiple materials on a single mesh. |
Tiling Override
Tiling Overrides are useful for adjusting multiple textures at once. It leaves the tiling attributes of the texture asset unmodified and only adjusts it in the material asset.
UV Transform
The UV Transform section adjusts placement and size of the Texture Asset linked in the Image Asset slot of the material.
Texture assets have their own texture coordinates, U and V. These are used to describe width and height of texture assets. Texture coordinates are measured in scale of 0 to 1, with 0 and 1 at opposite sides of the texture.
U Offset | Control from where texture is placed in U direction or horizontally.
Numeric Range:
|
||||
V Offset | Control from where texture is placed in V direction or vertically.
Numeric Range:
|
||||
Scale Mode |
|
||||
U Tiling or U Scale Tile | Value input for Scale Mode that determines Left/Right or Horizontal Tiling | ||||
V Tiling or V Scale Tile | Value input for Scale Mode that determines Top/Bottom or Vertical Tiling |
Maps
Enables UV Transform settings for texture asset linked in the material slot.
Anisotropy | Overrides tiling values of Anisotropy Image Asset texture from the material. |
Ambient Occlusion | Overrides tiling values of Ambient Occlusion Image Asset texture from the material. |
Base | Overrides tiling values of Base Image Asset texture from the material. |
Bump | Overrides tiling values of Bump Image Asset texture from the material. |
Clear Coat Normal | Overrides tiling values of Clear Coat Normal Image Asset texture from the material. |
Emissive | Overrides tiling values of Emissive Image Asset texture from the material. |
Light | Overrides tiling values of Light Image Asset texture from the material. |
Metallic | Overrides tiling values of Metallic Image Asset texture from the material. |
Normal | Overrides tiling values of Normal Image Asset texture from the material. |
Opacity | Overrides tiling values of Opacity Image Asset texture from the material. |
Roughness | Overrides tiling values of Roughness Image Asset texture from the material. |
Specular | Overrides tiling values of Specular Image Asset texture from the material. |
Specular Intensity | Overrides tiling values of Specular Intensity Image Asset texture from the material. |
Transparency | Overrides tiling values of Transparency Image Asset texture from the material. |
Triplanar Mapping
Triplanar Mapping
Triplanar mapping is a Material Operator that is a useful tool for when needing to map textures on a material which is being applied to an asset that doesn’t require the use of UVs. Under the Material Property you must select ‘Add Operator’ in order to activate this operator. Once added you will be able to apply the operator to various sections of a material, such as the Base Image or Normal Image. It works by projecting the same texture on the X,Y,Z axis simultaneously and allows the user to control various elements such as the amount of blending between the 3 Axes as well as scale and rotation. These projections work in either World Space or Local.
PROPERTY | DESCRIPTION | ||||
Projection | Allows user to select the type of projection space:
|
||||
Blending | Control the blending of the projected textures on the X,Y,Z axis using a slider. Slider range is from 0.01 - 1.00. A value of 1 denoting 100% blending of the textures and 0.01 denoting 0%. The Triplanar operator default blending value is 0.5. | ||||
Translation | Allows the user to position the texture on the X,Y,Z axis. Values for translating the texture depend on whether using Local or World space. | ||||
Rotation | Allows the user to rotate the texture on the X,Y,Z axis. | ||||
Scale | Scale values will depend on whether using Local or World space. A scale of 1.0 XYZ in World Space would be a scale of 100XYZ in Local. | ||||
Image Selection | Use the checkboxes for the items below to inform the operator which input to apply the Triplanar mapping
|
Template Override
Plug
- Material
Role
Override a single template property with a new value.
Properties
-
Property Name: name of the property to replace
- Must start with
TK_
and must be an existing property in a template material
- Must start with
-
Property Type:
Map
,Color
, orNumber
-
Map: Texture asset used to replace the original map value
- Only available if the property type is set to
Map
- Only available if the property type is set to
-
Color: Color value used to replace the original color value
- Only available if the property type is set to
Color
- Only available if the property type is set to
-
Number: Number value used to replace the original number value
- Only available if the property type is set to
Number
- Only available if the property type is set to
Limitations
- Can only be applied on a template material
- If the wrong Property type is selected, based on the original type of the property in the template material, it's undefined behavior
- The number value doesn't have any validation or limits, this might cause undefined behavior depending on the role of the
TK_
property in the material definition