如何在2D赛车游戏中创建等距模仿?

时间:2010-07-12 12:09:50

标签: flash 2d actionscript-3 isometric

如何修改2d赛车游戏看起来像isometry? Flash + ActionScript3

ScreeShot

游戏完全在2d。汽车就像它应该移动一样,当它开车时,一切都很好。 我添加了一个灰色斜坡。现在汽车应该像箭头一样移动,创造出一个3d(等距)的幻觉。

斜坡分为3个扇区

- 首先,右边的部门(汽车当前所在的地方);

- 第二,左边的部门;

- 第三,扇区在上面;

另外我需要汽车,当速度很高时从斜坡跳出来。我接受了老式的Scholl游戏Rock'n'Roll Racing(暴雪的世嘉游戏)

所以问题是

1)在坡道上行驶时,如何更改汽车的角度和速度(velocityX和velocityY)

2)如何开始跳出坡道?例如在Rock'n'Roll赛车中?或者暴雪是如何做到的?(也许是建议)

Thaks。

1 个答案:

答案 0 :(得分:2)

最好是用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);
}