如何在2D赛车游戏中创建等距模仿?
问题描述:
我该如何修改2D赛车游戏看起来像等轴测图?闪存+的ActionScript3如何在2D赛车游戏中创建等距模仿?
游戏是完全在2D。汽车像它应该移动一样,而它在驾驶地面时一切都很好。 我已经添加了一个灰色斜坡。现在汽车应该像箭头所示的那样移动,造成3d(等角)的错觉。
斜坡在3个扇区
划分-first,扇区到右侧(在轿厢当前位于);
-second,扇区向左;
-third,sector on top;
另外我需要这辆车,当车速很高时从坡道跳出。开车时我reffer老绍尔游戏摇滚赛车(暴雪的游戏世嘉)
所以问题是
1)我应该如何改变汽车的角度和速度(velocityX和velocityY)在坡道上?
2)我该如何开始跳楼?比如在Rock'n'Roll比赛中?或者暴雪是如何实质上做到这一点的?(也许是建议)
Thaks。
答
最好的是在3D中计算游戏,然后简单地将其投影到等角线。
const angle:Number = Math.PI/3;//you may want to tweak this one
const xVec:Point = Point.polar(-Math.PI/2 + angle, 1);
const yVec:Point = Point.polar(-Math.PI/2 - angle, 1);
const zVec:Point = new Point(0, -1);
变换3D到2D:
function transform(x:Number, y:Number, z:Number):Point {
return new Point(x*xVec.x + y*yVec.x + z*zVec.x, x*xVec.y + y*yVec.y + z*zVec.y);
}