我真的不明白我想渲染側面滾動的方式嗎?當我的角色移動時,我怎麼知道要渲染什麼?我應該爲角色使用什麼樣的定位? 我希望我的問題很清楚如何渲染2D側面滾輪遊戲
回答
我發現最簡單的方法是使用characterX和characterY變量[integer或float,無論你想要什麼]然後有一個cameraX和cameraY變量。場景中的每個對象被繪製在theObjectX-cameraX,theObjectY-cameraY ...
CameraX/CameraY通過類似至中點公式補間所以最終他們將達到PlayerX的/ playery [Cx = (Cx*99+Px)/100]
...是啊
通過這樣做,每個對象在舞臺的空間移動,變換隻在渲染[頭痛節省你]
- 使用矩陣來定義相機參照系。
- 使用空間分區將您的級別拆分爲屏幕/窗口。
把你的玩家精靈想象成任何其他實體,就像敵人和交互對象一樣。 現在你想要的是相機的抽象。您可以使用此佈局將相機定義爲3x3矩陣:
[rotX_X, rotY_X, 0]
[rotX_Y, rotY_Y, 0]
[transX, transY, 1]
左上角的2x2子矩陣是旋轉矩陣。 transX和transY定義了翻譯部分,即起源。你也可以免費擴展。只需簡單地用標量縮放旋轉部分,然後您就可以進行縮放。
爲了正確地使用旋轉,你的精靈需要是多邊形/基元,比如說三角形或四邊形;繪製時不能將矩陣應用於精靈的位置。如果你不需要旋轉,只需轉換中心點就可以正常工作。 如果您想讓相機跟隨播放器,請將播放器的位置作爲相機原點。那是翻譯矢量[transX,transY] 那麼如何將矩陣應用於實體位置和模型頂點?你做一個向量矩陣乘法。其中v'是新的矢量,v是舊的矢量,M^-1是矩陣的逆。相機需要是一個逆變換,因爲它定義了一個局部座標系。一個比喻可能是:如果你在我面前,我從我的參考框架左轉,我正在轉向右邊。這適用於所有仿射和線性變換,如縮放,旋轉和平移。
將你的關卡分成幾個子部分,這樣你可以挑選出不需要渲染的物體和景物。您的視口具有一定的大小/分辨率。只渲染與您的視口相交的風景和實體。不是根據視口邊界檢查每個實體,而是將每個實體分配到某個子屏幕,並根據視口和相機邊界測試子屏幕的邊界。如果你把你的水平到部分,它們的大小與視口一樣的,那麼在任何特定時間可見 屏幕的最大數量爲:
- 2,如果你的相機只左右滾動。
- 4如果相機向左,向右,向上和向下滾動。
- 4如果您的相機以任何方向滾動,並且還可以旋轉。
畫面切換是一個事件,您可以使用它來激活屬於該畫面的實體。這可能是敵人,背景動畫,門或任何你喜歡的東西。
我可能在出生之前玩過我的第一個側面卷軸,我敢肯定你不知道側面卷軸的定義是什麼: http://en.wikipedia.org/wiki/Side-scrolling_video_game我實際上*在Amiga側面滾輪上工作*,並且我可以告訴你旋轉整個屏幕並放大和縮小是**不** **側面滾輪是什麼;) – SyntaxT3rr0r 2010-04-15 19:52:20
- 1. 2D側滾動HTML5遊戲
- 2. Java側面滾動遊戲
- 3. 在遊戲中渲染2D地圖 - 裁剪和滾動
- 4. 渲染遊戲幀
- 5. 如何在JavaFX中渲染場景? (2D遊戲)
- 6. 如何爲側面滾動遊戲製作2D物理模擬器
- 7. 在2D遊戲中滾動?
- 8. 側滾動遊戲背景
- 9. 的Java 2D遊戲瓷磚渲染優化
- 10. 在OpenGL ES中爲2D遊戲渲染圖像android
- 11. 側滾動背景2d XNA遊戲,急需幫助
- 12. 如何正確高效地在2D遊戲中渲染Java圖形
- 13. 如何使用Unity爲移動設備製作2D側滾動遊戲
- 14. 在2D遊戲
- 15. 用於側面滾動空間射擊遊戲的Java遊戲服務器
- 16. Java Applet遊戲2D窗口滾動
- 17. 用於2D滾動遊戲的Java nullpointerexception
- 18. Libgdx渲染3D遊戲的地板
- 19. IndexOutofbouds在遊戲的世界渲染
- 20. 在遊戲中渲染循環
- 21. OpenGL的遊戲引擎渲染
- 22. ASCII DOS遊戲 - 渲染方法
- 23. 4維遊戲渲染優化
- 24. 側滾動遊戲,類和流
- 25. 自由運行/側滾動型遊戲
- 26. Flash側滾動遊戲理論
- 27. 紅寶石側滾動遊戲
- 28. Java 2D遊戲NullPointerException
- 29. 2d遊戲物理?
- 30. AndEngine和XML-Levels的側面滾動遊戲
我正在做一個類似的項目,嘿。 – Warty 2010-04-13 04:00:02
你能解釋一下「側面卷軸」是什麼意思嗎? – ysap 2010-04-13 04:06:54
「側面卷軸」通常是指某種類型的視頻遊戲。想象一下2d環境的2d視口。視口只能向左/向右滑動。維基百科說:http://en.wikipedia.org/wiki/Side-scrolling_video_game – Ponkadoodle 2010-04-13 04:10:13