$30 off During Our Annual Pro Sale. View Details »
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
Common Lisp製のゲームエンジンTrialについてすこし
Search
t-sin
May 26, 2022
Programming
0
1.2k
Common Lisp製のゲームエンジンTrialについてすこし
Shibuya.lisp lispmeetup #103
で発表したときの資料です。
t-sin
May 26, 2022
Tweet
Share
More Decks by t-sin
See All by t-sin
Lispの紹介 〜 令和最新版
tsin45
0
710
Carp言語さわってみた 〜鯉を取り戻せ編〜
tsin45
0
1.2k
Common Lispでのゲームボーイエミュレータ実装進捗報告 vol.1
tsin45
0
860
Other Decks in Programming
See All in Programming
re:Invent 2025 のイケてるサービスを紹介する
maroon1st
0
150
生成AI時代を勝ち抜くエンジニア組織マネジメント
coconala_engineer
0
2.5k
AI Agent Dojo #4: watsonx Orchestrate ADK体験
oniak3ibm
PRO
0
110
AIコーディングエージェント(NotebookLM)
kondai24
0
230
TerraformとStrands AgentsでAmazon Bedrock AgentCoreのSSO認証付きエージェントを量産しよう!
neruneruo
4
1.8k
Java 25, Nuevas características
czelabueno
0
110
認証・認可の基本を学ぼう後編
kouyuume
0
250
Vibe codingでおすすめの言語と開発手法
uyuki234
0
110
Tinkerbellから学ぶ、Podで DHCPをリッスンする手法
tomokon
0
140
SwiftUIで本格音ゲー実装してみた
hypebeans
0
490
Giselleで作るAI QAアシスタント 〜 Pull Requestレビューに継続的QAを
codenote
0
290
Navigating Dependency Injection with Metro
l2hyunwoo
1
180
Featured
See All Featured
Bioeconomy Workshop: Dr. Julius Ecuru, Opportunities for a Bioeconomy in West Africa
akademiya2063
PRO
0
31
Evolution of real-time – Irina Nazarova, EuRuKo, 2024
irinanazarova
9
1.1k
ピンチをチャンスに:未来をつくるプロダクトロードマップ #pmconf2020
aki_iinuma
128
55k
Distributed Sagas: A Protocol for Coordinating Microservices
caitiem20
333
22k
Mind Mapping
helmedeiros
PRO
0
39
Navigating Team Friction
lara
191
16k
[SF Ruby Conf 2025] Rails X
palkan
0
560
Bootstrapping a Software Product
garrettdimon
PRO
307
120k
世界の人気アプリ100個を分析して見えたペイウォール設計の心得
akihiro_kokubo
PRO
65
35k
実際に使うSQLの書き方 徹底解説 / pgcon21j-tutorial
soudai
PRO
196
70k
The Invisible Side of Design
smashingmag
302
51k
What the history of the web can teach us about the future of AI
inesmontani
PRO
0
370
Transcript
Common Lisp製のゲームエンジン Trialについてすこし @t-sin 2022-05-26 lispmeetup #103
ゲームエンジン: Trial • Common Lispのライブラリをたくさん書いてる Shinmeraさん作のゲームエンジン – https://github.com/Shirakumo/trial • SteamストアにあるゲームKandria
(early access)に使ってる – メトロイドヴァニアという探索系2Dアクションっぽい – https://store.steampowered.com/app/1261430/Kandria/ • Shinmeraさんのソフトウェアといえばこのへんが有名? – https://shirakumo.github.io/radiance/ – https://github.com/portacle/portacle
ゲームエンジンについて • ゲーム開発に特化した共通プログラムのこと • 単なるライブラリから統合開発環境までいろんな形態のものがある • ゲームに特殊化してない共通プログラムを「ミドルウェア」といっ て区別したりする – 3Dグラフィック向けとかサウンド向けとか
– 区別するものの、境目はあいまいっぽい • 参考: Wikipediaの『ゲームエンジン』の記事 – ゲームエンジンの一覧、こんなにあるのかーとなれるのでオススメ
ゲームエンジンの形態 • 統合開発環境型 – 大規模: Unity、Unreal Engine、Godot、 – 中〜小規模: RPGツクール、WOLFエディタ、吉里吉里(Z)
• ライブラリ型 – SDL (Simple DirectMedia Layer)、DXライブラリ • API型 – Direct X • ……境目はあいまい – DXライブラリは3Dグラフィックライブラリとも捉えられるし Direct XはマルチメディアAPIとも言える
Trialは? • 現時点ではライブラリ型っぽい • Kandria用に別途マップエディタを用意してあるもよう – https://twitter.com/Shinmera/status/1512750290474311681 – https://twitter.com/Shinmera/status/1466359294945894403 –
https://twitter.com/Shinmera/status/1403729050531663877 • まだドキュメントはほとんどない – 使いたい場合は参照実装のゲームリポジトリのコード読んでとなってる – https://github.com/shinmera/vpetjam
trial.asdを眺めてみる • 太字はShinmeraさん製 • • • • • • •
感想: – 生OpenGL、varjo (Lisp→GLSLコンパイラ)未使用 – サウンドのライブラリは含まれてない (自作はされている) – パーティクルエンジン (flare) 内蔵 – COM (com-on) とか DOM操作 (lquery) とか何につかってるんだ…?? :depends-on (:alexandria :3d-vectors :3d-matrices :verbose :deploy :closer-mop :trivial-garbage :trivial-indent :bordeaux-threads :cl-opengl :cl-gamepad :cl-ppcre :pathname-utils :flare :for :flow :glsl-toolkit :fast-io :ieee-floats :float-features :lquery :static-vectors :mmap :messagebox :form-fiddle :lambda-fiddle :jsown :zpng (:feature :linux :clx) (:feature :windows :com-on)))
まとめ • Common Lisp製ゲームエンジンTrialについて述べた – Steamに出せるくらいの本格ゲームがつくれる – 現状はまだ他人がさくっと使えない – もしかしたらKandriaのレベルエディタはリポジトリとして生えるかも?
• 「ゲームエンジン」についてちょろっと解説した • Trialの中をasdファイルだけ覗いた – 依存ライブラリの自作率すごい – もうちょっとディープに中を見たかったけど今回むりだった