2.5D 双人赛车
简介
此游戏是《2D 赛车》的”魔改版“——2.5D 双人赛车!
原作链接:https://codebus.cn/tonyddg/2d-racing-car
原作实现了 2D 视角的赛车游戏,但是我觉得不够真实、操纵感不强,故挤出数个周末完成了这个”魔改版“,实现了第一人称的视角。
实现方式较为简单,还有许多瑕疵,各位大神见笑了。
项目地址
https://github.com/zouhuidong/2_5D_RacingCar
游戏截图
自制地图 & 车辆
欢迎大家 DIY 地图和车辆!
创建文件夹
要制作地图,首先您需要在项目的 map 文件夹下创建一个文件夹,任何命名均可。
接下来请参照预设地图的文件夹格式,在您创建的文件夹内放入下列文件:
玩家 1 图像:Car.gif
玩家 2 图像:Car2.gif
地图:map.jpg
碰撞图:mask.png
背景音乐:music,mp3
地图属性:set.ini
地图缩略图:title.jpg
具体内容可以参考预设地图。
绘制地图
由于游戏是 ”3D“ 视角的,所以绘制地图时需要考虑到游戏时的视角,比如说开到某个位置的时候视角是怎样的,那么这个区域的景物也得顺着玩家的视野朝向才行。
其它方面,随心发挥吧~
注:由于我没有绘图软件的使用经验,所以我用了 Flash 来绘制地图。
绘制碰撞图
碰撞图色彩格式:
黑色(0xFFFFFF)为赛道,减速较小
黄色(0xFFFF00)为沙地,会减速
蓝色(0x0000FF)为冰面,会滑动
红色(0xFF0000)为围栏,无法通过
绿色(0xFFFFFF)为终点线
灰色(0xAAAAAA)为终点线的两端,用于判定方向(对应色值 RGB(170,170,170))
紫色(0xFF00FF)为玩家 2 起点
白色(0x000000)为玩家 1 起点
注意事项:
终点线最好为宽度为一的直线!
灰色只有两个像素点,分布在终点线的两端点
画碰撞图宁可把道路画粗一点,因为实际游戏中可能会因为碰撞图画的太窄,导致玩家好像在路上但是被卡住了
此外,设置玩家起始位置也要考虑玩家车辆的长度,如果玩家的起始位置离终点线太近,以至于玩家的车尾超过了终点线的话,那么开动车子的时候就会触发一次车子越过终点的判定。
绘制车辆
车身最好是画长一点,这样在游戏中才会显示得比较正常。车子还应避免有太多颜色,不要太过花哨,因为在游戏中的旋转缩放操作会导致车子上面的色彩变质。
最好车子不要太大,要自己去测试它能否适应赛道的大小,太大的话很容易一开起来就被卡住,因为在游戏中会对整个车身进行碰撞检测。
另外,尽量以一种从后往前看车的视角来绘制车子,这样在游戏中的立体感会更强。