2017/10/27(金) [n年前の日記]
#1 [love2d][windows] Windows10にlove2dをインストール
Lua言語を使って2Dゲームが作れる、love2dなるライブラリだか環境だかがあるらしい。
_LoVE - Free 2D Game Engine
「LOVE」という名前らしいけど、あまりに一般的な単語過ぎて検索時に困るので love2d と呼んでる場合が多いそうで。
SDL2 を使って描画するらしいので、昨日ビルドした SDL2 がちゃんとビルドできてるのか確認作業に使えるかもしれないなと。てなわけで少し触ってみようかと。
ただ、いきなり Raspberry Pi上で動かそうとしても勝手が分からんだろうから、まずは Windows10 x64上でインストールしてみたい。
_LoVE - Free 2D Game Engine
「LOVE」という名前らしいけど、あまりに一般的な単語過ぎて検索時に困るので love2d と呼んでる場合が多いそうで。
SDL2 を使って描画するらしいので、昨日ビルドした SDL2 がちゃんとビルドできてるのか確認作業に使えるかもしれないなと。てなわけで少し触ってみようかと。
ただ、いきなり Raspberry Pi上で動かそうとしても勝手が分からんだろうから、まずは Windows10 x64上でインストールしてみたい。
◎ Windows10 x64上にlove2dをインストール。 :
以下からダウンロード。
_LoVE - Free 2D Game Engine
love-0.10.2-win32.exe をDLして実行するとインストールできる。デフォルトでは、
環境変数 PATH に、love2d のインストール場所を追加。これで、DOS窓上で love.exe と打てば呼び出せるはず。
ちなみに、インストールフォルダには sdl2.dllも入ってた。Windows版は、Windows用のSDL2関連dllを集めてこなくても動くようになっているらしい。
_LoVE - Free 2D Game Engine
love-0.10.2-win32.exe をDLして実行するとインストールできる。デフォルトでは、
C:\Program Files (x86)\LOVE\もしくは、
C:\Program Files\LOVE\にインストールされる。
環境変数 PATH に、love2d のインストール場所を追加。これで、DOS窓上で love.exe と打てば呼び出せるはず。
ちなみに、インストールフォルダには sdl2.dllも入ってた。Windows版は、Windows用のSDL2関連dllを集めてこなくても動くようになっているらしい。
◎ 動作確認。 :
以下を参考にして動作確認。
_1. Love2Dでゲーム作りを始めよう - おりんくうと学ぶ2Dゲー開発
_2. ハロー・ワールド - おりんくうと学ぶ2Dゲー開発
_Getting Started - LOVE
ちなみに、love2d の wiki は、ページの一番下の「日本語」をクリックすると日本語に翻訳されたページが表示される。ありがたや。翻訳してくれた方に感謝…。 *1
まずは love.exe をそのまま実行。カラフルなウインドウが表示された。
ウインドウ内には、たしかに「NO GAME」と表示されてる。スクリプトソースが指定されない状態で起動すると、この画面を表示するらしい。
バージョン確認は以下で…と思ったが。
helloworld というフォルダを作成して、その中に main.lua というファイルを作成。以下を記述。
以下で実行。
Ruby や Python 等は、ruby hoge.rb だの python hoge.py といった形でファイル名を渡して実行するけど。love2d の場合、
_1. Love2Dでゲーム作りを始めよう - おりんくうと学ぶ2Dゲー開発
_2. ハロー・ワールド - おりんくうと学ぶ2Dゲー開発
_Getting Started - LOVE
ちなみに、love2d の wiki は、ページの一番下の「日本語」をクリックすると日本語に翻訳されたページが表示される。ありがたや。翻訳してくれた方に感謝…。 *1
まずは love.exe をそのまま実行。カラフルなウインドウが表示された。
ウインドウ内には、たしかに「NO GAME」と表示されてる。スクリプトソースが指定されない状態で起動すると、この画面を表示するらしい。
バージョン確認は以下で…と思ったが。
love --versionWindows上では、何も表示されない。まあ、love.exe を起動すれば、ウインドウのタイトルにバージョンが表示されるから困らないけど…。
helloworld というフォルダを作成して、その中に main.lua というファイルを作成。以下を記述。
function love.draw() love.graphics.print('Hello World!', 400, 300) end
以下で実行。
love.exe helloworldウインドウ内に「Hello World!」が表示された。
Ruby や Python 等は、ruby hoge.rb だの python hoge.py といった形でファイル名を渡して実行するけど。love2d の場合、
love "main.luaが入ったフォルダのパス"を渡す点に注意。
*1: 件のwikiのトップページでは、翻訳してくれた方が疲れてしまったのでもう更新はしない、との記述があるけど。ここまで大量の文書を翻訳してくれただけでも、めちゃくちゃ御の字。ありがたや…。
[ ツッコむ ]
#2 [raspberrypi][love2d] Raspberry Pi Zero Wにlove2dをインストール
Raspberry Pi Zero W + raspbian stretch 上で love2d をインストールしてみる。
一応、公式リポジトリにも love というパッケージが入っているのだけど、そちらの版は 0.9.x と古いようで。現行版の 0.10.x をインストールしたいなと。
_Building LoVE - LOVE
一応、公式リポジトリにも love というパッケージが入っているのだけど、そちらの版は 0.9.x と古いようで。現行版の 0.10.x をインストールしたいなと。
_Building LoVE - LOVE
◎ 必要なパッケージをインストール。 :
SDL2関係(libsdl2-dev等)はビルド済み・インストール済みとして、ソレ以外でビルドに必要なパッケージをインストール。
ちなみに、SDL2(OpenGL無効版)のビルドは、 _2017/10/26の日記 を参考にして作業すればいい…はず。
もし、Pi2 / Pi3 を使っていて、GL driver を有効にしているなら、SDL2(OpenGL有効版)が使えるだろうから、ビルドなんかしなくても以下で済むのではないかなあ…。たぶん。
sudo apt install build-essential autotools-dev automake libtool pkg-config sudo apt install libdevil-dev libfreetype6-dev libluajit-5.1-dev libphysfs-dev sudo apt install libopenal-dev libogg-dev libvorbis-dev libflac-dev libflac++-dev sudo apt install libmodplug-dev libmpg123-dev libmng-dev libtheora-dev sudo apt install libturbojpeg0-dev zlib1g-dev
ちなみに、SDL2(OpenGL無効版)のビルドは、 _2017/10/26の日記 を参考にして作業すればいい…はず。
もし、Pi2 / Pi3 を使っていて、GL driver を有効にしているなら、SDL2(OpenGL有効版)が使えるだろうから、ビルドなんかしなくても以下で済むのではないかなあ…。たぶん。
sudo apt install libsdl2-dev
◎ ソースを入手してビルド。 :
love2d のLinux用ソースを入手してビルド。love-0.10.2-linux-src.tar.gz を入手する。
_rude / love / ダウンロード - Bitbucket
インストール。
loveの在り処を確認。
共有ライブラリのキャッシュを更新。
共有ライブラリがあるか確認。
_rude / love / ダウンロード - Bitbucket
mkdir ~/love2d cd ~/love2d wget https://bitbucket.org/rude/love/downloads/love-0.10.2-linux-src.tar.gz tar zxvf love-0.10.2-linux-src.tar.gz cd love-0.10.2-linux-src ./configure make
インストール。
sudo make install
loveの在り処を確認。
$ which love /usr/bin/love/usr/bin 以下に love がインストールされている。
共有ライブラリのキャッシュを更新。
sudo ldconfig
共有ライブラリがあるか確認。
$ ldconfig -p | grep love liblove.so.0 (libc6,hard-float) => /usr/lib/liblove.so.0 liblove.so (libc6,hard-float) => /usr/lib/liblove.so/usr/lib 以下に liblove.so がコピーされた模様。
◎ 動作確認。 :
端末から実行。
ESCキーを叩いたら終了できた。ただし、端末にちょっと妙な文字が残ってるけど…。
SDL2 を使って描画をするらしい love2d が動いたということは、SDL2関係はちゃんとビルドできたし、インストールできてるということだろうか。同じく SDL2 を使う、golang + go-sdl2 も動いたし…。
となると、やっぱり gosu がおかしい…。
loveカラフルなウインドウが全画面で表示された。ちゃんと動いてるっぽい。
ESCキーを叩いたら終了できた。ただし、端末にちょっと妙な文字が残ってるけど…。
SDL2 を使って描画をするらしい love2d が動いたということは、SDL2関係はちゃんとビルドできたし、インストールできてるということだろうか。同じく SDL2 を使う、golang + go-sdl2 も動いたし…。
となると、やっぱり gosu がおかしい…。
◎ 余談。 :
hg clone を使ってリポジトリをクローンして、以下を打ってビルドしようとしたのだけど。
automagic とやらを動かした段階で、何か処理に失敗してるようで。
Raspberry Piの場合、Linux用のソースをダウンロードして、ソレを使ってビルドしたほうが良さそうだなと。
hg clone https://bitbucket.org/rude/love cd love /platform/unix/automagic ./configure make
automagic とやらを動かした段階で、何か処理に失敗してるようで。
$ platform/unix/automagic -d [automagic] Copying files... [automagic] Running genmodules... Generating src/Makefile.am ... src/Makefile.am is updated! ^.^ Generating configure-modules.ac configure-modules.ac is updated! ^.^ [automagic] Running autoheader... [automagic] Running libtoolize... libtoolize: putting auxiliary files in AC_CONFIG_AUX_DIR, 'platform/unix'. libtoolize: linking file 'platform/unix/ltmain.sh' libtoolize: putting macros in AC_CONFIG_MACRO_DIRS, 'platform/unix/m4'. libtoolize: linking file 'platform/unix/m4/libtool.m4' libtoolize: linking file 'platform/unix/m4/ltoptions.m4' libtoolize: linking file 'platform/unix/m4/ltsugar.m4' libtoolize: linking file 'platform/unix/m4/ltversion.m4' libtoolize: linking file 'platform/unix/m4/lt~obsolete.m4' [automagic] Running aclocal... [automagic] Running autoconf... configure.ac:52: error: possibly undefined macro: AM_PATH_SDL2 If this token and others are legitimate, please use m4_pattern_allow. See the Autoconf documentation. [automagic] Failed, sadface. [automagic] You can make this script more verbose running it in debug mode (-d) [automagic] This is generally a configuration error (I'm looking at you aclocal)
Raspberry Piの場合、Linux用のソースをダウンロードして、ソレを使ってビルドしたほうが良さそうだなと。
[ ツッコむ ]
#3 [love2d][ubuntu] Ubuntu 16.04 LTS上にlove2dをインストール
VMware + Ubuntu 16.04 LTS上で love2d をインストールしてみる。Linux上での使い方が分かれば、Raspberry Pi上での使い方も、ぼんやり分かってくるだろう…。
一応公式リポジトリにもパッケージが登録されてるので、以下でインストールはできるのだけど。
ただ、この版は 0.9.x で、ちと古い。以下を登録すれば、比較的新しい版をインストールできる模様。
_love-stable : Bart van Strien
インストール場所を確認。
端末から以下を実行。
一応公式リポジトリにもパッケージが登録されてるので、以下でインストールはできるのだけど。
sudo apt install love
ただ、この版は 0.9.x で、ちと古い。以下を登録すれば、比較的新しい版をインストールできる模様。
_love-stable : Bart van Strien
sudo add-apt-repository ppa:bartbes/love-stable sudo apt-get update sudo apt-get upgrade sudo apt install love
インストール場所を確認。
$ which love /usr/bin/love/usr/bin 以下にインストールされてる。
端末から以下を実行。
loveカラフルなウインドウが表示された。ちゃんと動いてるっぽい。ESCキーで終了できる。
[ ツッコむ ]
以上、1 日分です。