docs: add godot development tips and cold knowledge
补充了Godot开发相关的冷知识和注意事项,包括异常处理、异步函数、导出变量和节点就绪时序的细节
This commit is contained in:
@@ -68,3 +68,10 @@
|
|||||||
1. 所有直接继承Object或者没写继承的类不许去new,要么就继承RefCounted,不然会内存泄漏
|
1. 所有直接继承Object或者没写继承的类不许去new,要么就继承RefCounted,不然会内存泄漏
|
||||||
2. 游戏对象的分类有很多,比如说角色A就写一个场景A.tscn,脚本就是A.gd,class ACharacter extends BaseCharacter(这个只是伪代码,建议写成一个单独的文件)
|
2. 游戏对象的分类有很多,比如说角色A就写一个场景A.tscn,脚本就是A.gd,class ACharacter extends BaseCharacter(这个只是伪代码,建议写成一个单独的文件)
|
||||||
3. 比如玩家的技能(Skill),应该放在Struct里写成Skill.gd,类名BaseSkill,因为这个类只负责表示玩家的技能卡对应的行为,并不耦合于节点树和角色的行为类
|
3. 比如玩家的技能(Skill),应该放在Struct里写成Skill.gd,类名BaseSkill,因为这个类只负责表示玩家的技能卡对应的行为,并不耦合于节点树和角色的行为类
|
||||||
|
|
||||||
|
## 冷知识
|
||||||
|
|
||||||
|
1. godot没有try-catch或者try-except语句,尽量少用assert除非你在调试
|
||||||
|
2. godot的异步函数不需要声明,但是他的Signal和Coroutine都可以用await等待,把Signal也看做是Coroutine就行了
|
||||||
|
3. 不要在@export变量里写Gradient等资源,而是用GradientTexture,否则编辑器会直接爆炸
|
||||||
|
4. godot的_ready顺序是先子节点再父节点,注意时序问题
|
||||||
|
|||||||
Reference in New Issue
Block a user