Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Sign up for free
Menu
Search
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Pricing
Search
Sign in
Sign up for free
2017 TGDF - 從零開始的遊戲開發框架
Search
Sponsored
·
Ship Features Fearlessly
Turn features on and off without deploys. Used by thousands of Ruby developers.
→
蒼時弦や
July 02, 2017
Technology
450
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
2017 TGDF - 從零開始的遊戲開發框架
Page 7 Video:
https://www.youtube.com/watch?v=QBYZAZlH9cw
蒼時弦や
July 02, 2017
More Decks by 蒼時弦や
See All by 蒼時弦や
2024 - COSCUP - Clean Architecture in Rails
elct9620
2
260
2023 - RubyConfTW - Rethink Rails Architecture
elct9620
0
310
20230916 - DDDTW - 導入 Domain-Driven Design 的最佳時機
elct9620
0
550
2023 - WebConf - 選擇適合你的技能組合
elct9620
0
780
20230322 - Generative AI 小聚 ft. Happy Designer
elct9620
0
520
2022 - 默默會 - 重新學習 MVC 的 Model
elct9620
1
550
MOPCON 2022 - 從 Domain-Driven Design 看網站開發框架隱藏
elct9620
1
550
2022 - COSCUP - 我想慢慢寫程式該怎麼辦?
elct9620
0
350
2022 - COSCUP - 打造高速 Ruby 專案開發流程
elct9620
0
390
Other Decks in Technology
See All in Technology
AI時代に求められる優秀なTechLeadの振る舞い
pospome
10
13k
あなたのDartコードは丸見えかもしれない ~reFlutterで暴くFlutterアプリの中身と多層防御~
zozotech
PRO
0
770
リアクションエンジニア ― 小さなリアクションから、話しかけやすい組織をつくる ―
ryuguyana
1
130
自律的なチームを作るためにTechPMがやらないこと
ny7760
1
510
AIエージェントの監視、思考を見るか行動を見るか / Monitoring AI Agents: Thoughts or Actions
yusukeshimizu
1
150
Consistency for mere mortals - A gentle guide to consistency
ufried
0
120
超⼩型・多⾔語検索モデル Bekko Embedding
hotchpotch
1
110
You Have Agency(サンキュー、Ruby)
snoozer05
PRO
5
680
Kiro Crew の Bot (続く役目を任せる窓口) | 目指せ Kiro マスター 12
inariku
PRO
0
200
AI時代の組織作り:チーム開発から「個人×AI」への移行と、持続可能な「開発資本」の築き方
ham0215
1
100
In-Context Learning再入門。ICLの勾配降下的解釈の研究動向を追ってみる。
dai08srhg
1
290
Autonomous AI Lakehouse - Live AI Hubから始めるセキュアなAIデータ活用 -
oracle4engineer
PRO
3
190
Featured
See All Featured
A brief & incomplete history of UX Design for the World Wide Web: 1989–2019
jct
2
560
Leveraging LLMs for student feedback in introductory data science courses - posit::conf(2025)
minecr
1
470
How to Think Like a Performance Engineer
csswizardry
28
2.9k
Crafting Experiences
bethany
1
420
How to Align SEO within the Product Triangle To Get Buy-In & Support - #RIMC
aleyda
2
1.9k
Lessons Learnt from Crawling 1000+ Websites
charlesmeaden
PRO
1
1.7k
Code Reviewing Like a Champion
maltzj
529
40k
The Psychology of Web Performance [Beyond Tellerrand 2023]
tammyeverts
49
3.6k
Groundhog Day: Seeking Process in Gaming for Health
codingconduct
0
460
[RailsConf 2023 Opening Keynote] The Magic of Rails
eileencodes
31
10k
Designing for humans not robots
tammielis
254
26k
世界の人気アプリ100個を分析して見えたペイウォール設計の心得
akihiro_kokubo
PRO
74
43k
Transcript
從零開始的 遊戲開發框架 Photo from https://www.pexels.com/
WEB DEVELOPER GAME DEVELOPER 襟 儘 䓛⛳ @elct9620
None
None
想做個自己的遊戲引擎
CG from http://www.rpgmakerweb.com/
None
None
None
None
Magica & Seeker
build :main do dynamic_library "sdl2" include_path "extra/include" define :debug flag
"-Wall" source "src/**/*.cpp" dest "build" use :cxx end Magicafile
Seeker Engine mruby Game (C++/Ruby)
RubyVM GameObject C++ GC Bad Address 1 2
RubyVM GameObject (Ruby Object) C++ GC 2 1 Create Ruby
Object
Hiro Framework
mruby Hiro Framework
mruby Hiro Core Hiro Renderer …
Data_Get_Struct( mrb, self, &hiro_scene_type, data ); Type Reference
Premature Optimization Is the Root of all evil
Hiro mruby Hiro.rb … Core Engine
Ruby Script Hiro RubyVM SDL inih …
Domain Specific Language
Character.define :aotoki do name 'Aotokitsuruya' animations( stand: animation('char/stand01.png'), walk: animation('char/walk01.png')
) end DSL Sample
Scene.define :starter do character(:aotoki).say 'Hi, Player' say 'Welcome to use
DSL in your game' confirm 'Are you read to start?' do yes do goto :first_level end no do exit_game end end end DSL Sample
Makes Programmers Happy
Q&A