This page has been translated automatically.
视频教程
界面
要领
高级
实用建议
基础
专业(SIM)
UnigineEditor
界面概述
资源工作流程
Version Control
设置和首选项
项目开发
调整节点参数
Setting Up Materials
设置属性
照明
Sandworm
使用编辑器工具执行特定任务
如何擴展編輯器功能
嵌入式节点类型
Nodes
Objects
Effects
Decals
光源
Geodetics
World Nodes
Sound Objects
Pathfinding Objects
Players
编程
基本原理
搭建开发环境
使用范例
C++
C#
UnigineScript
统一的Unigine着色器语言 UUSL (Unified UNIGINE Shader Language)
Plugins
File Formats
材质和着色器
Rebuilding the Engine Tools
GUI
双精度坐标
应用程序接口
Animations-Related Classes
Containers
Common Functionality
Controls-Related Classes
Engine-Related Classes
Filesystem Functionality
GUI-Related Classes
Math Functionality
Node-Related Classes
Objects-Related Classes
Networking Functionality
Pathfinding-Related Classes
Physics-Related Classes
Plugins-Related Classes
IG Plugin
CIGIConnector Plugin
Rendering-Related Classes
VR-Related Classes
创建内容
内容优化
材质
Material Nodes Library
Miscellaneous
Input
Math
Matrix
Textures
Art Samples
Tutorials

Unigine::Decal Class

Header: #include <UnigineDecals.h>
Inherits from: Node

Decal class is used for base decals operation. To create, modify or get information on special types of the decals, use decal-related classes.

Decal Class

Members


void setMaterial ( const Ptr<Material> & mat ) #

Sets a new material for the decal.

Arguments

  • const Ptr<Material> & mat - Smart pointer to the material to be used for the decal.

Ptr<Material> getMaterial ( ) const#

Returns the material used for the decal.

Return value

Smart pointer to the material used for the decal.

Ptr<Material> getMaterialInherit ( ) const#

Inherits material for the decal (i.e. creates a material instance). Modifications made in a new material instance will not affect the source material.
Notice
A child material will be created only once, all subsequent calls to this method will return the first created child material.

Return value

Smart pointer to the inherited material.

int isMaterialInherited ( ) const#

Returns the value indicating if a given material is inherited (instanced). Modifications made in a material instance do not affect the source material.

Return value

1 if the material is inherited successfully; otherwise, 0.

void setMaxFadeDistance ( float distance ) #

Updates a maximum fade-out distance, across which the decal smoothly becomes invisible due to the alpha fading. It is counted starting from the maximum visibility distance value.

Arguments

  • float distance - A new minimum fade-out distance, in units. If a negative value is provided, 0 will be used instead.

float getMaxFadeDistance ( ) const#

Returns a maximum fade-out distance, across which the decal smoothly becomes invisible due to the alpha fading. It is counted starting from the maximum visibility distance value.

Return value

Distance value, in units.

void setMaxVisibleDistance ( float distance ) #

Updates the maximum visibility distance, starting at which the decal begins to fade out until becomes completely invisible.

Arguments

  • float distance - A maximum visibility distance, in units. If a negative value is provided, 0 will be used instead.

float getMaxVisibleDistance ( ) const#

Returns a maximum visibility distance, starting at which the decal begins to fade out until becomes completely invisible.

Return value

Distance value, in units.

void setMinFadeDistance ( float distance ) #

Updates a minimum fade-in distance, across which the decal smoothly becomes visible due to the alpha fading. It is counted starting from the minimum visibility distance value.

Arguments

  • float distance - A new minimum fade-in distance, in units. If a negative value is provided, 0 will be used instead.

float getMinFadeDistance ( ) const#

Returns a minimum fade-in distance, across which the decal smoothly becomes visible due to the alpha fading. It is counted starting from the minimum visibility distance value.

Return value

Distance value, in units.

void setMinVisibleDistance ( float distance ) #

Updates a minimum visibility distance, starting at which the decal begins to fade in and then becomes completely visible.

Arguments

  • float distance - A new minimum visibility distance, in units. If a negative value is provided, 0 will be used instead.

float getMinVisibleDistance ( ) const#

Returns the minimum visibility distance, starting at which the decal begins to fade in and then becomes completely visible.

Return value

Distance value, in units.

void setOpacity ( float opacity ) #

Sets opacity for the decal. This parameter enables you to control whether the decal should be opaque or semi-transparent.

Arguments

  • float opacity - New opacity value to be set in the [0.0f; 1.0f] range (1.0f - the decal is fully opaque).

float getOpacity ( ) const#

Returns the current opacity for the decal.

Return value

Current opacity value in the [0.0f; 1.0f] range (1.0f - the decal is fully opaque).

void setRadius ( float radius ) #

Sets the new height of the projection box/pyramid along the Z axis.

Arguments

  • float radius - Height of the projection box/pyramid along the Z axis, in units.

float getRadius ( ) const#

Returns the current height of the projection box along the Z axis.

Return value

The height of the projection box along the Z axis, in units.

void setViewportMask ( int mask ) #

Sets a bit mask for rendering a decal into the viewport. The decal is rendered, if its mask matches the camera viewport mask and the viewport mask of the decal's material.

Arguments

  • int mask - An integer value, each bit of which is used to set a mask.

int getViewportMask ( ) const#

Returns the current bit mask for rendering into the viewport. The decal is rendered, if its mask matches the camera viewport mask and the viewport mask of the decal's material.

Return value

The integer value, each bit of which is used to set a mask.

void setIntersectionMask ( int mask ) #

Sets a new intersection mask for the decal. This mask can be used to cut out areas intersected by the decal from grass, mesh clutter and world clutter (e.g. to remove grass or forest from the surface of roads projected using decals).
Notice
The areas will be cut out only if intersection masks of grass and clutter objects matches this mask (one bit at least).

Arguments

  • int mask - Integer, each bit of which is a mask.

int getIntersectionMask ( ) const#

Returns the current intersection mask of the decal. This mask can be used to cut out areas intersected by the decal from grass, mesh clutter and world clutter (e.g. to remove grass or forest from the surface of roads projected using decals).
Notice
The areas will be cut out only if intersection masks of grass and clutter objects matches this mask (one bit at least).

Return value

Integer, each bit of which is a mask.

int isTerrainHole ( ) const#

Returns a value indicating if the decal is used to create a hole in the terrain.

Return value

1 if the decal is used to create a terrain hole; otherwise, 0.

int inside ( const Math::vec3& p ) #

Returns a value indicating if the point with the given coordinates is inside the decal (in object-space).

Arguments

  • const Math::vec3& p - Point coordinates.

Return value

1 if the point is inside the decal; otherwise, 0.

void setMaterialFilePath ( const char * path ) #

Sets the material for the decal by file path.

Arguments

  • const char * path - Material file path.

const char * getMaterialFilePath ( ) const#

Returns the path to the material file used for the decal.

Return value

Material file path.

void setMaterialGUID ( const UGUID& materialguid ) #

Sets the material for the decal by GUID.

Arguments

  • const UGUID& materialguid - Material GUID.

UGUID getMaterialGUID ( ) const#

Returns the GUID of the material used for the decal.

Return value

Material GUID.

void setCastBakedGlobalIllumination ( bool illumination ) #

Sets a value indicating if the decal is to be ignored when baking Global Illumination (lightmaps and probes). When enabled, the decal behaves the same way as surfaces with the Dynamic Lighting Mode selected: they are invisible for Voxel Probes and Environment Probes and are not baked into lightmaps.

Arguments

  • bool illumination - true to ignore the decal when baking Global Illumination (lightmaps and probes); false to bake the decal to lightmaps and probes.

bool isCastBakedGlobalIllumination ( ) const#

Returns a value indicating if the decal is to be ignored when baking Global Illumination (lightmaps and probes). When enabled, the decal behaves the same way as surfaces with the Dynamic Lighting Mode selected: they are invisible for Voxel Probes and Environment Probes and are not baked into lightmaps.

Return value

true if the decal is to be ignored when baking Global Illumination (lightmaps and probes); otherwise, false.
Last update: 2024-12-13
Build: ()