我想知道如何製作一個跟隨玩家的視口,例如在sidescrolling遊戲中。我有一個半工作版本,但它需要我移除除了玩家之外的所有東西。是否有可能使用vanilla javascript創建一個跟隨玩家的視口?
ctx.translate(canvX,canvY);
drawBlocks();
ctx.restore()
這種方式現在可行,但我將不得不畫出敵人和其他物體,而且我不想不斷地重做這個過程。我正在尋找一個簡單的解決方案,基本上涉及跟隨玩家的相機。這可能嗎?
您確實沒有提供足夠的代碼來幫助您,但無論哪種方式,您都應該嘗試一種面向對象的方法,或者使用框架或庫(如pixi.js或phaser.io)進行研究。 –
我假設所有情況下的基本想法都是一樣的,但如果有幫助,您可以看到我開始使用的代碼。 https://www.codecademy.com/azhiguore/codebits/Jwh0VH – Azhi
沒有辦法只是'製造'一臺相機。我確實想到了一個黑客。你可以製作一個非常大的畫布,把它放在一個非常小的div中,然後隨着玩家的移動將畫布移動到div的內部,但這對性能有很大的影響。我的建議是嘗試使用遊戲引擎或其他庫,例如我提到的兩個庫,以瞭解它們如何處理輕鬆移動畫布周圍的一組精靈。 –