This page has been translated automatically.
视频教程
界面
要领
高级
实用建议
UnigineEditor
界面概述
资产工作流程
设置和首选项
项目开发
调整节点参数
Setting Up Materials
Setting Up Properties
照明
Landscape Tool
Sandworm
使用编辑器工具执行特定任务
Extending Editor Functionality
嵌入式节点类型
Nodes
Objects
Effects
Decals
光源
Geodetics
World Nodes
Sound Objects
Pathfinding Objects
Players
编程
基本原理
搭建开发环境
Usage Examples
C++
C#
UnigineScript
UUSL (Unified UNIGINE Shader Language)
Plugins
Rebuilding the Engine Tools
GUI
双精度坐标
应用程序接口
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
创建内容
Content Optimization
Materials
Material Nodes Library
Miscellaneous
Input
Math
Matrix
Textures
Art Samples
Tutorials
注意! 这个版本的文档是过时的,因为它描述了一个较老的SDK版本!请切换到最新SDK版本的文档。
注意! 这个版本的文档描述了一个不再受支持的旧SDK版本!请升级到最新的SDK版本。

Scripts

This type of node is used to write a UnigineScript logic in an ULON-based material file. The Script node specifies a single script that can be used in different Expression nodes.

The syntax is the following:

ULON
Script script_name =
#{
    // UnigineScript code
#}

As a node’s value you must specify a UnigineScript-based code enclosed in "#{" and "#}".

Usage Examples#

The script node is usually used as a script value for the Expression node.

ULON
Script named_script =
#{
    // UnigineScript code
#}

Expression expression_name = named_script

You can also specify a path to an external script file (in usc or h format) or the name of a different Script node inside this material:

ULON
Script external_script = "some/path/to/your/script.usc";	// script.usc consists of some UnigineScript code

Script linked_script = external_script 

Expression RENDER_CALLBACK_* = linked_script

To include the code of a different script use the following marker: #script script_name.

Source code (ULON)
Script a = 
#{
        // UnigineScript code A
}#

Script b = 
#{
        // UnigineScript code B
        #script a
}#

// the result script b will look like this: 
Script b = 
#{
        // UnigineScript code B
        // UnigineScript code A
#}
Last update: 2021-12-13
Build: ()