Unity笔记 《Unity游戏设计与实现》

这书不错,学习以下设计思路很好。

第零章
介绍了一些Unity基础。
camera控制:alt、ctrl + alt、F按键 的使用。
一个小例子不断polish的过程。
物理控制的经验:
1)避免漂浮感,调整物体大小(rigidbody 1.0 = 1米)或在PhysicsManager中提高Gravity的Y的绝对值(例子中为-20)。
2)固定高度的跳跃

float   y_speed = Mathf.Sqrt(2.0f*Mathf.Abs(Physics.gravity.y)*this.JumpHeight);

v = sqrt( 2 g h )

第一章
卷动背景,移动攻击。
记下可以做成游戏的构思,说不定什么时候会用到。

无限循环背景,处理跟随物体移动过快问题。
根据摄像机位置找到n(整体背景的位置),直接用乘法来计算位置,无论多快的移动用这个算法3块背景就足够了!
这里讨论了两种四折五入的做法,对于负数结果是不同的。
Mathf.RoundToInt( vf );
Mathf.FloorToInt( vf +0.5f );

关于碰撞形状的选择。球和方形挤在一起时会发生位移,而方形和方形挤在一起时却确难的多发生位移。
球碰撞在侧视图中往往会有误差,认为能打到敌人的却没有打到。

加入高风险高回报的机制提高有趣性。这里用的是攻击距离,实际实现用的是发起攻击到伤害的时间。

“预判断”(碰撞体存在比动作稍长)机制让游戏更容易上手。

制作“攻击反馈”。先搞清player面向x正,y是上,z向里对应Vector3.right Vector3.up Vector3.forward。
按照一个轴旋转的Quaternion:

blowout_xz = Quaternion.AngleAxis(y_angle, Vector3.up)*blowout_xz;

=============================================================
Find References In Scene可以找到一个脚本在哪个gameobject上。
这个常见,do{ … }while(false)是一种goto,可以在里面写break。
2个scene,titlescene和gamescene。注意自己打开的是哪个。

AnimatedTextureExtendedUV利用texture的scale和offset实现帧动画,用于刀光的实现。

AttackColliderControl刀的碰撞球。
OnTriggerEnter和OnTriggerStay的区别。

CameraControl和玩家一起移动。
this.transform.position = new Vector3(player.transform.position.x + this.offset.x, this.transform.position.y, this.transform.position.z);

FadeControl动态加入的component算法,使用一个1x1纹理用于全屏淡出。
fader = gameObject.AddComponent();

FloorControl作者得意的无限背景。

GUIControl加入SceneControl处理gui部分,这个ui的弄法较老。

LevelControl生成怪物,这样的方式来初始化。这个类并不是继承monobehaviour所以不会做为组件使用。
this.level_control = new LevelControl();
this.level_control.scene_control = this;
this.level_control.player = this.player;
this.level_control.OniGroupPrefab = this.OniGroupPrefab;
this.level_control.create();

OniControl单个怪物控制。

OniEmitterControl最后结算时的怪物塔,就是简单的绑定了sphere的一些oni随机位置落下。

OniGroupControl怪物方阵控制。

OniStillBodyControl最后结算时的怪物塔。

PlayerControl控制玩家

ResultControl用于结算数据,这个在SceneControl里直接new出使用。
this.result_control = new ResultControl();

SceneControl场景控制模块,放在场景里的empty gameobject上。可以说是主模块。
除了主要的prefab(玩家

  • 1
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

好热哦

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值