摘要: 在飞行射击游戏中,恐怕没有一个游戏不用到跟踪算法的。比如在玩街机的时候,是不是经常挂于BOSS的“跟踪弹”?这是怎样实现的呢?很简单,只要有高中的一点数学知识就行了!首先回忆几个三角函数sin,cos,tan(tg),arctan(arctg)sin(x)—对边/斜边。在1,2项限为正,3,4项限为负cos(x)—邻边/斜边。在1,4项限为正,2,3项限为负tan(x)—对边/邻边。在1,3项限为正,2,4项限为负考虑到游戏里面的坐标系如下所示:假设敌人子弹的坐标为slug.x,slug.y,子弹的速度为slug.speed(全部是double型)上面的三角形的斜边就代表子弹的速度,则子弹每次 阅读全文
posted @ 2010-09-21 10:23 子非あ鱼 阅读(5524) 评论(0) 推荐(0)
摘要: 直接切入正体回忆以前Direct3D中的空间向量图形知识,以及研究Unity3D里是怎么表示的。 Vector3: Vector3这词最早是谁发明的无从考证了,但是Unity3D里出现了这个名词的时候,我才意识到这个不是D3D和openGL才有的变量名,D3D里叫做 D3DXVECTOR3继承自_D3DVECTOR结构体,其中_D3DVECTOR结构体只有3个单精度数X,Y,Z。用于表示向量。 Unity3D中Vector3类定义(只写有用的): 属性: x,y,z表示一个空间向量。 this 用于访问x,y,z三个数据使用数组的方式访问,比如[0][1][2] normalized 返回单位 阅读全文
posted @ 2010-09-21 10:19 子非あ鱼 阅读(2780) 评论(0) 推荐(0)
摘要: 致力于赛车性能算法已有多时,在确定赛车最终版本之时,做下总结。文章还是不会非常详尽,点到为指,不想太多利用工作时间。在制作前,必须先了解真实车辆的原理:车辆分前轮驱动,后轮驱动和四驱动。动力由引擎提供,反应的力到轮胎上,因此产生转数,即RPM。引擎的功率可以由RPM得到公式为 : RPM = 引擎功率×60/2×pi , 这些都是模拟,只为了更好的为下面的动作服务。还有大众关心的“漂移” ,所谓 漂移就是,在后驱车辆中,前轮方向旋转大角度,地面给于一定向心力,同时后轮又给予更多动力,导致“漂移”动作。基于上面原理,就更容易理解下面的文章。我先说明,有非常多种方法来开发一款赛 阅读全文
posted @ 2010-09-21 10:01 子非あ鱼 阅读(7423) 评论(1) 推荐(2)