Motivation
以下の記事を読んだ.
OOエンジニアの輪!~ 第 21 回 川合史朗 さんの巻 ~
これがプログラミングの神髄だ! ファイナルファンタジーのプログラマーが明かす秘密とLispトークバトル!
なるほどね.なんだ,Lispでゲーム作れるんじゃん!
差し当たって,界隈では有名なpdfらしい以下を参考にして勉強している.
PDFでの学習内容には特に触れない.環境構築の際に色々つまづいたので,それについてメモしておく.
1. 環境構築
1.1 ライブラリのインストール
前回の記事より,Lispの環境はできているので, ゲーム作成に必要な以下のライブラリをインストールする.
- Lispbuilder-SDL
冊子によると, ライブラリ間の依存関係等もあり色々ダウンロードしなくてはならないらしい.試しに色々検索してみると以下のサイトがヒット.
lispbuilder-sdl on mac
lispbuilder-sdlのインストール(SBCL編)
Unable to load sdl-gfx in quicklisp
先人の苦しんだ後が伺える. とりあえず必要なlispbuilderは以下とされている.
- win32-lispbuilder-sdl-gfx-binaries-2.0.13.tgz
- win32-lispbuilder-sdl-ttf-binaries-2.0.9.tgz
- win32-lispbuilder-sdl-mixer-binaries-1.2.11.tgz
- win32-lispbuilder-sdl-image-binaries-1.2.10.tgz
- win32-lispbuilder-sdl-binaries-1.2.14.tgz
- lispbuilder-sdl-ttf-0.3.0.tgz
- lispbuilder-sdl-mixer-0.4.tgz
- lispbuilder-sdl-image-0.5.0.tgz
- lispbuilder-sdl-gfx-0.7.0.tgz
- lispbuilder-sdl-0.9.8.1.tgz
OS指定のないファイルは, Quicklisp導入時点でダウンロードされているため必要ない. 自分の環境はMacOS X Yosemiteなので, 以下をダウンロード.
- max-lispbuilder-sdl-binaries-1.2.14.tar
- max-lispbuilder-sdl-gfx-binaries-2.0.16.tar
- max-lispbuilder-sdl-image-binaries-1.2.10.tar
- max-lispbuilder-sdl-mixer-binaries-1.2.11.tar
- max-lispbuilder-sdl-ttf-binaries-2.0.10.tar
解凍後, READMEを読む.すると,~.framework
をLibrary/Frameworks
へ移動すれば良いと書かれているので従う.
補足
正直, 環境構築に失敗して色々やりすぎて, どれが本当は必要で, どれが必要ないのかわからない.SDLパッケージはhomebrewでもダウンロード可能だが,うまくいかずに上記の方法で落ち着いた.一から環境構築する機会があれば試すことにする.
1.2 インストール後の確認
きちんとインストールできているか確認する.以下を実行する.
1 2 3 4 |
|
サンプルが動けば成功. ちなみに(do-external-symbols (s :sdl-examples) (when (fboundp s) (print s)))
とするとデモ一覧が見られるので, 好きなモノを実行してみると良いかもしれない.
あとは,PDFを参考にガシガシやっていけば良い.
1.3 トラブルシューティング
トラブル01
1 2 3 4 5 6 7 |
|
1 2 3 4 5 6 7 |
|
1 2 3 4 5 6 |
|
以上のようなエラーの場合, SDL_gfxやSDL_imageがLibrary/Frameworkにインストールできていない.
トラブル02
1 2 3 4 5 |
|
上記のような場合, cocoahelperがmakeされていない.~quicklisp/dists/quicklisp/software/lispbuilder-20110619-svn/lispbuilder-sdl/cocoahelper
へcd
し, make
を実行し, 再び以下を実行するとよい.
2. 今後の課題
前回から続けて記事を書いている.これもまとめていたものを公開する形になる.
前回の環境構築はうまくいったがこちらでなぜか二日ぐらい潰れた(特に画像が表示されなかった)ので,自分と同じような人の参考になればいいと思う.Lispに関しては,(そのうち)実際に作ったものを公開していく.
参考文献
OOエンジニアの輪!~ 第 21 回 川合史朗 さんの巻 ~
これがプログラミングの神髄だ! ファイナルファンタジーのプログラマーが明かす秘密とLispトークバトル!
Common LispでSTGを作りますが何か
lispbuilder-sdl on mac
lispbuilder-sdlのインストール(SBCL編)
Unable to load sdl-gfx in quicklisp
Unable to load sdl-gfx in quicklisp
windowsでsbcl + lispbuilder-sdl