欢迎光临散文网 会员登陆 & 注册

【Algodoo/零基础教程】第一期·基础

2023-01-04 22:20 作者:无论何时何地6  | 我要投稿

有关变量


algodoo中共有3种变量 这里分别讲解


所有地图都可以使用的全局变量

创建:

按下~键进入控制台

输入

_变量名:=值

或者 _变量名=值

下划线不可省略

(英文状态下按键和输入

应该还有别的按键但我忘了)

这里的冒号是为了区分“创建”和“修改”

:=是创建新的变量赋值为

=是赋值为

但是如果没有这个变量就相当于是创建并赋值


好处:方便

坏处:一般删不掉 不同地图会互相干扰

如果创建后使用同名的另一个变量只能:=

可移植性差 因为存储依靠config


删除的话

除非你重置algodoo

或者在algodoo的“文件所在位置”

找到config再删


大部分algodoo制作者联名不建议使用此种变量

因为一旦互相干扰就难以梳理

删不掉的特性更是让它双倍烦人


只能在该场景使用的场景变量

规范创建:scene.my.变量名:=值

好处:不会互相干扰

坏处:scenery.my.不能省略

没啥好说的 大部分algodoo创作者都用


只能应用在某一物体身上的局部变量

规范创建:在物体左上角的写入框

写入 _变量名:=值

物体会自动生成一个该变量对应的区域

一般的,该变量可以被其他物体检测和修改

好处:

方便 作为局部变量 不会多个物体抢占同一个

坏处:作为局部变量 不能多个物体运用同一个

没什么好说的


接下来是你需要注意的

变量不能使用中文 事实上 algodoo不能输入中文

输入中文需要粘贴中文进入algodoo

algodoo区分变量的大小写


变量名不能和以下内容重合:

物体的自带的局部变量或函数的名字

各种自带的函数或变量或数据类型的名字

(一定一定要注意这点)

除非你想自己更新algodoo的某些函数或变量

否则千万不要这样做


例如你把一个变量叫做for

(循环函数 改天再说)

那你就等着重下algodoo或者自己重新造for函数出来


有些变量是“值”类似标量 例如碰撞层

有些变量是[横轴,纵轴]类似矢量 例如速度(vel)

有些变量是[值,值,值,……]比较离谱

例如RGB颜色(color)


你也知道 algodoo物体位于2d平面

所以 algodoo规定向右向上为正 反之为负

速度vel和坐标pos的确定就根据此


创建变量最好使用:=

如果使用=创建局部变量

一旦和全局变量重名就会修改全局变量

而非创建一个新的局部变量


撤销上一步操作为Ctrl+z的快捷键

或是下方的撤回键

但是这不是重点

重点是变量是不会回档的

撤回只是重新创建上一个状态的物体

所以最好准备一个包含初始化你所有变量的程序

每次运行前粘贴进控制台


或者把初始化变量的程序

写进一个物体的onspawn的(e)=>{}的大括号里面

(onspawn 物体生成时执行其中的内容

因为重新载入场景就是重新生成物体

利用这个造一个初始化物体就避免很多麻烦)


一些琐事

图片可以粘贴进algodoo 越清楚的图片越好

algodoo的全荧幕可以用Ctrl+F的快捷键或者F11关掉

algodoo的一些值不能确定为整数

而是120.00000000000002这样的

原因可能是二进制小数和十进制小数转换的问题

实际上没差

algodoo的变量会自动确定数据类型

algodoo的函数似乎也是数据类型

(最后一条来自太神·小冯)

【Algodoo/零基础教程】第一期·基础的评论 (共 条)

分享到微博请遵守国家法律