首页 > 代码库 > (转载)虚幻引擎3--【UnrealScript教程】章节一:16.DefaultProperties
(转载)虚幻引擎3--【UnrealScript教程】章节一:16.DefaultProperties
当在游戏中创建一个对象时,它的属性会初始化为“默认”值。这些值是由创立用于创建该对象的类的游戏程序员设置的。在很多编程语言中,当创建对象时会调用一个特殊的函数(即构造器)来初始化变量。UnrealScript中没有和这个概念相同的确切等价物。相反,UnrealScript使用一个段称为 defaultproperties 的特殊代码块来为属于该类的所有实例变量设置值,当创建该类的实例时将会使用该默认属性代码块进行初始化。这个代码块总是位于脚本的尾部,所有函数及状态声明的后面,尽管它是UnrealScript的一部分,但是这段代码不是标准的UnrealScript代码,并且遵循着略微不同的规则
正如前面所提到的, defaultproperties 块的规则和标准的UnrealScript语法略有不同。总的不同之处有:
· 在defaultproperties语句块中不允许存在语句,动态数组操作除外。这意味着您不能执行计算、调用函数等。 defaultproperties 仅用于分配特定的值给实例变量。
· 分号可以放在每行的末尾,但不是必须的。
· 避免出现空格 (比如在变量名、赋值运算符、及值之间)。
· defaultproperties(默认属性) 代码块的花括号应该另起一行。
除了上面列出的基本的不同之处外,某些类型的赋值语法也和UnrealScript中的标准赋值语法不同。
几行语句大概解释默认属性
class MyUSGame extends actor
placeable;
var string s;
var int i;
var float f;
var int ar[3];
function PostBeginPlay()
{
//ar[3]=3;
`log("s:"@s);
`log("++i:"@++i);
`log("f:"@f);
`log("ar:"@ar[2]);
//重置默认后的i
`log("default i:"@default.i);
}
defaultproperties
{
s="hello world";
i=1;
f=1.5000;
ar(2)=2;
}
class MyUSGame extends actor
placeable;
var string s;
var int i;
var float f;
var int ar[3];
function PostBeginPlay()
{
//ar[3]=3;
`log("s:"@s);
`log("++i:"@++i);
`log("f:"@f);
`log("ar:"@ar[2]);
//重置默认后的i
`log("default i:"@default.i);
}
defaultproperties
{
s="hello world";
i=1;
f=1.5000;
ar(2)=2;
}
(转载)虚幻引擎3--【UnrealScript教程】章节一:16.DefaultProperties
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。