作者StubbornLin (Victor)
看板GameDesign
标题Re: [问题]音速小子的行为模式
时间Sun Jun 4 01:25:00 2006
※ 引述《etrexetrex (ETREX)》之铭言:
: 使用键盘『←』跟『→』去影响物件面对的方向
: 重力的影响是 物件面对的方向会渐渐朝下
: 只有当物件没有踩地时才会有重力影响
: 踩地的判定是"物件面对方向的下方"
: 也就是"脚",是否碰触地面
: 图解: →
: *
: →是面对方向
: *是脚
: 结果因为腾空时,物件因重力影响而面对正下方
: 所以他的脚接触地面时,人已经陷入地里...
: 图解:
: —————*↓—————
: —是地面
: 嗯...我就死在这
判断目前的速度v在经过了一段很短的时间後的下一刻
这段时间是Δt,在经过Δt的路线上
是否会穿过某样物体,而这个Δt,就是上次更新和这次更新的时间差
新的的座标位置
y = y + vy*Δt;
新的速度
vy = vy + g*Δt;
作法是,目前的座标,和下一刻的座标,两点间的连线
看是否会交某个物件
如果不会穿过某样物体,也就是没有碰撞,就让它继续往下掉
如果会穿过某样物体,就要进行碰撞的运算
这要看你的的球是否要给它弹性的特性,在这里我们假设它没有弹性
也就是掉下去就不会再弹起来
接着,你只要找出Δt内行进路线里,最先与物体接触的那点
把球的位置设在那点上面,这样应该就OK了
--
VICTOR工作室 |
PTT游戏设计版隆重开幕!
|
不管是新手老手,程式美工音乐企划....
URL :
http://www.kinmen.info/vic/ |
都欢迎来游戏设计版参与讨论 XD
|
战略高手>
C/C++ |
GameTopics>
Visual Basic 6.0 |
GameDesign
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 59.116.65.9