CommonLispでパーティクル
Lisp Advent Calendar 2015 の17日目の記事です.
題の通りCommonLispでパーティクルを描画してみました.
使用したライブラリは以下,全部Quicklispで入ります.
GitHub - cffi/cffi: The Common Foreign Function Interface
GitHub - 3b/cl-opengl: cl-opengl is a set of CFFI bindings to the OpenGL, GLU and GLUT APIs.
GitHub - AlexCharlton/cl-glfw3: Common Lisp bindings to GLFW version 3.x
GitHub - Shinmera/trivial-main-thread: Compatibility library to run things in the main thread.
alexandria / alexandria · GitLab
作成したコードを載せます.
OpenGLでのパーティクル描画に関しては 実践編04 - OpenGL de プログラミング を参考に(というかほとんどCommonLispに書き換えただけ…)させていただきました.
上のサイトではglutを使っていますが,丸パクリは流石に避けたいなと思ったのでglfw3を使用しました. alexandriaはキーハンドリングの部分に使っていますが,無くても出来ますね:)
今回初めてCommonLispでGUIプログラミングをしてみたのですが,思ったより書きやすかったです.
またcl-openglに用意されているマクロ(引数の数で呼び出す関数を変えてくれる)がとても便利ですね!
まとめ
CommonLisp楽しい.OpenGL面白い.
#| 遅れて申し訳ありませんでしたorz |#