【Unity&DragonBones】DB中的Demon分析(一)CoreElement场景代码分析
发布日期:2021-05-09 11:45:03 浏览次数:3 分类:技术文章

本文共 2821 字,大约阅读时间需要 9 分钟。

DragonBones C#运行库支持Unity 5.x

下载DragonBones:

打开DragonBones为Unity创建的Demon工程文件,里面就有一个名字为CoreElement的场景

可以看到该.CS文件的结构如下所示

为什么要定义一个名字为coreElement命名空间namespace

因为命名空间把复杂并且在整个工程文件内有相同名字类似功能的函数规范在这一个.CS文件内。

命名空间namespace作用:局部作用域,避免重复调用

参考资料:

------------------------------------------------------------------------------------------------------------------------------------------------

[RequireComponent(typeof(UnityArmatureComponent))]

这句话的意思:如果脚本A上加了[RequireComponent(typeof(B))],则当AddComponent<A>()时,如果当前没有添加组件B,则组件B会被自动添加。

参考资料:

------------------------------------------------------------------------------------------------------------------------------------------------

点开 class CoreElement : MonoBehaviour ,首先就是一大段声明

------------------------------------------------------------------------------------------------------------------------------------------------

private为私有对象,仅该名字为CoreElement的class类内部调用

constant意思是不可改变的变量,一旦初始化赋值,再也不能改变这个变量的值

第1段代码定义了动画的三种类型为“正常”、“瞄准”、“攻击”,

        private const string NORMAL_ANIMATION_GROUP = "normal";

        private const string AIM_ANIMATION_GROUP = "aim";
        private const string ATTACK_ANIMATION_GROUP = "attack";

***------------------------------------------------------------------------------------------------------------------------------------------------***

readonly只读

第2段代码定义了相关参数

        private const float G = -0.005f;   //下落时候的加速度

        private const float GROUND = 0.0f;   //地面的速度。在此处添加底边的下落速度,可以重置“下落速度”为最初始的状态
        private const float JUMP_SPEED = -0.2f;   //起跳的速度
        private const float NORMALIZE_MOVE_SPEED = 0.03f;   //“正常状态”下的移动速度
        private const float MAX_MOVE_SPEED_FRONT = NORMALIZE_MOVE_SPEED * 1.4f;   //最大前进移动速度
        private const float MAX_MOVE_SPEED_BACK = NORMALIZE_MOVE_SPEED * 1.0f;   //最大后退移动速度

   //左(或者右)武器可能替换的精灵的名字   存放入一个静态只读字符串数组内。也就是说无论有几个“机甲”对象,都公用一套武器对象属性为(私有的、静态的、只读的字符串数组)

        private static readonly string[] WEAPON_LEFT_LIST = { "weapon_1502b_l", "weapon_1005", "weapon_1005b", "weapon_1005c", "weapon_1005d" };
        private static readonly string[] WEAPON_RIGHT_LIST = { "weapon_1502b_r", "weapon_1005", "weapon_1005b", "weapon_1005c", "weapon_1005d", "weapon_1005e" };

参考资料:

***------------------------------------------------------------------------------------------------------------------------------------------------***

------------------------------------------------------------------------------------------------------------------------------------------------

------------------------------------------------------------------------------------------------------------------------------------------------

------------------------------------------------------------------------------------------------------------------------------------------------

------------------------------------------------------------------------------------------------------------------------------------------------

转载地址:https://blog.csdn.net/BuladeMian/article/details/53584807 如侵犯您的版权,请留言回复原文章的地址,我们会给您删除此文章,给您带来不便请您谅解!

上一篇:【Unity&DragonBone】为什么我从DragonBone导入Unity没有图片
下一篇:【DragonBones】使用DragonBones来创建像素人物骨骼

发表评论

最新留言

表示我来过!
[***.240.166.169]2023年09月22日 20时31分32秒