Difference between revisions of "Lovetoys (日本語)"

(Created page with "{{#set:Name=Lovetoys}} {{#set:LOVE Version=Any}} {{#set:Description=Lua によるゲーム開発用の完全機能を有するエンティティ・コンポーネント・シ...")
 
m (Remove code example as it keeps getting outdated.)
Line 2: Line 2:
 
{{#set:LOVE Version=Any}}
 
{{#set:LOVE Version=Any}}
 
{{#set:Description=Lua によるゲーム開発用の完全機能を有するエンティティ・コンポーネント・システムフレームワークです。}}
 
{{#set:Description=Lua によるゲーム開発用の完全機能を有するエンティティ・コンポーネント・システムフレームワークです。}}
 +
{{#set:Keyword=Framework}}
  
  
Line 10: Line 11:
 
まだ  version 1.0 には到達していませんが、ソフトウェアは試験済みであり、多数のゲームで採用されているため明確に安定動作していると言えるでしょう。不具合を発見した場合はレポート (issue) を作成して報告をお願いします。または プル (pull) リクエストを与えてください。 :)
 
まだ  version 1.0 には到達していませんが、ソフトウェアは試験済みであり、多数のゲームで採用されているため明確に安定動作していると言えるでしょう。不具合を発見した場合はレポート (issue) を作成して報告をお願いします。または プル (pull) リクエストを与えてください。 :)
  
 
+
入手と試用は [https://github.com/Lovetoys/lovetoys Github] からどうぞ!
実装に関する簡単な用例です:
 
 
 
<source lang="lua">
 
-- lovetoys インポート
 
require("lovetoys/lovetoys")
 
 
 
function love.load()
 
    engine = Engine()
 
    world = love.physics.newWorld(0, 9.81*80, true)
 
    world:setCallbacks(beginContact, endContact)
 
    eventmanager = EventManager()
 
end
 
 
 
function love.update(dt)
 
    -- エンジンの更新関数
 
    engine:update(dt)
 
    world:update(dt)
 
end
 
 
 
function love.draw()
 
    -- エンジンの描画関数
 
    engine:draw()
 
end
 
 
 
function love.keypressed(key, isrepeat)
 
    eventmanager:fireEvent(KeyPressed(key, isrepeat))
 
end
 
 
 
function love.mousepressed(x, y, button)
 
    eventmanager:fireEvent(MousePressed(x, y, button))
 
end
 
 
 
</source>
 
<br/>
 
<br/>
 
入手と試用は [https://github.com/Lovetoys/lovetoys Github] から。
 
  
 
良い用例および適切な実装方法を参照したい場合は[https://github.com/Lovetoys/examples プロジェクトの用例]または[https://github.com/Lovetoys/Lovetoys-games ゲーム]を参照してください。
 
良い用例および適切な実装方法を参照したい場合は[https://github.com/Lovetoys/examples プロジェクトの用例]または[https://github.com/Lovetoys/Lovetoys-games ゲーム]を参照してください。

Revision as of 02:41, 27 March 2017




Lovetoys は Lua によるゲーム開発用のエンティティ・コンポーネント・システムフレームワーク (Entity Component System Framework = 実体構成要素機構基盤) です。当初は LÖVE 2D ゲームエンジン用に開発されましたが、現在は Lua を採用している全てのゲームと互換性を有しています! それは大雑把に述べると [Richard Lords http://www.richardlord.net/blog/what-is-an-entity-framework] (リチャード・ロード) による ECS の紹介に基づいています。 この構成要素対象の全般の関する概念が理解できない場合は、前述のリンクをクリックして熟読してください。それは非常に価値があります!

Lovetoys はエンティティ、コンポーネントおよびシステムといった心臓部だけをしているわけではなく、完全機能によるゲーム開発用フレームワークですがシーングラフと同様の発行・照会型メッセージ通信システムを搭載しているため、構造化手法により複雑なゲームですら簡単に作成することを可能にしています。

まだ version 1.0 には到達していませんが、ソフトウェアは試験済みであり、多数のゲームで採用されているため明確に安定動作していると言えるでしょう。不具合を発見した場合はレポート (issue) を作成して報告をお願いします。または プル (pull) リクエストを与えてください。 :)

入手と試用は Github からどうぞ!

良い用例および適切な実装方法を参照したい場合はプロジェクトの用例またはゲームを参照してください。

そのほかの言語