自己的引擎 - 01 2D風格的3d世界


3樓貓 發佈時間:2025-01-19 15:15:21 作者:玩家78123443 Language

我們要開始創造這個遊戲世界啦! 先畫個角色,之後給這個角色實體定義基礎最初的參數。 如下:

自己的引擎 - 01 2D風格的3d世界-第0張

角色在哪?(空間位置)  pos:{x:y:z} 對於一個2D遊戲空間位置Z代表了所在高度,而XY自然就是縱深位置了。 角色體積(碰撞體) size:{x:y:z} 這組數據決定了當前實體的空間佔位範圍,用來做碰撞啊,重疊啊計算。 角色部件組成(多個精靈體) 精靈體可以理解為實體內部包含的多個其他實體(稱之為部件),比如角色揹包同角色就是兩個實體相對於局部座標(碰撞體內部)通過部件的pos參數決定所在位置,組成實體。 一組部件合體為一個實體,實體有自己的體積及位置。 就這樣我們的2d遊戲世界最初的基礎設計完成啦。 有的小夥伴就說啦:這個Z參數是不是多餘啊? 嗯嗯 我們要做的是一個3維空間的遊戲雖然看著是2D的世界。 那麼這個Z參數是必須的哦,有了Z 我們就可以實現很多玩法啦。 比如

自己的引擎 - 01 2D風格的3d世界-第1張

地形的高度概念

自己的引擎 - 01 2D風格的3d世界-第2張

基於Z數據的高度空間實現

自己的引擎 - 01 2D風格的3d世界-第3張

磁吸附的實現

自己的引擎 - 01 2D風格的3d世界-第4張

跳躍的實現 (嗯嗯游泳待實現)

自己的引擎 - 01 2D風格的3d世界-第5張

戰鬥中跳躍

自己的引擎 - 01 2D風格的3d世界-第6張

Z高度的攻擊範圍

嗯嗯 明天繼續更哈~


© 2022 3樓貓 下載APP 站點地圖 廣告合作:asmrly666@gmail.com