Difference between revisions of "Tutorial:Advanced Tiled Loader (日本語)"

m (Undo revision 17120 by Greenwing (talk))
m
 
Line 43: Line 43:
 
[[Tutorial:Efficient_Tile-based_Scrolling (日本語)|効率的なタイル・ベースのスクローリング]]
 
[[Tutorial:Efficient_Tile-based_Scrolling (日本語)|効率的なタイル・ベースのスクローリング]]
  
[[Category:Tutorials (日本語)]]
+
[[Category:Tutorials]]
  
 
{{#set:LOVE Version=0.7.2}}
 
{{#set:LOVE Version=0.7.2}}

Latest revision as of 08:00, 8 November 2016

このチュートリアルでは Kadoba による Advanced Tiled Loader (ATL) の基本的な使用方法について網羅しています。 Advanced Tiled Loader (AdvTiledLoader ディレクトリにて) のテクスチャパックは、Tiled により生成され、適切な場所へ配置する必要があります。さて love.load から始めましょう。

function love.load()
  
  loader = require("AdvTiledLoader.Loader")
  loader.path = "maps/" --これは .tmx ファイルの場所を変更します。
  map = loader.load("mapfile.tmx") -- これはマップファイルの名前へ変更します。
  tx = 0
  ty = 0
  scale = 1 -- これで拡大率を調整します。
  
end

ここで ATL を読み込みマップの位置を示します。マップを読み込んで変数を初期化します。 love.draw へ移動します:

function love.draw()
  local ftx, fty = math.floor(tx), math.floor(ty)
  love.graphics.push()
  love.graphics.scale(scale)
  love.graphics.translate(ftx, fty)
  map:draw()
  love.graphics.pop()
end

love.draw 関数にて tx と ty を整数へ変更します。この僅かに滑らかなグラフィックのためにこれは行うべきです。 love.graphics.translate にて画像周辺の平行移動により移動を行い、実際に表示を行うために map:draw を呼び出します。

function love.update(dt)
  if love.keyboard.isDown("up") then ty = ty + 250*dt end
  if love.keyboard.isDown("down") then ty = ty - 250*dt end
  if love.keyboard.isDown("left") then tx = tx + 250*dt end
  if love.keyboard.isDown("right") then tx = tx - 250*dt end
end

ここでキーボードに対して監視を行い平行移動の変数である tx および ty を適切に調整します。

詳細情報は[1]。 Kadoba による元々の投稿にあります。もっと高度なサンプルはローダー (ATL) 自身に記載されています。

関連

タイル・ベースのスクロール
効率的なタイル・ベースのスクローリング



そのほかの言語