Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
Game Dev in Ruby
Search
Danielle Smith
December 03, 2014
38
0
Share
Game Dev in Ruby
Short talk on Game dev in Ruby using the Gosu gem
Danielle Smith
December 03, 2014
More Decks by Danielle Smith
See All by Danielle Smith
Ruby Ruby
daninithepanini
0
150
A Brief History of Ruby
daninithepanini
0
42
Static Type Inferencing ... in Ruby?
daninithepanini
0
25
Off the Rails
daninithepanini
0
36
Action Game
daninithepanini
0
38
RubyGL
daninithepanini
0
29
YeSQL
daninithepanini
0
27
Euler vs Hamilton
daninithepanini
0
44
Featured
See All Featured
Speed Design
sergeychernyshev
33
1.6k
Fashionably flexible responsive web design (full day workshop)
malarkey
408
66k
Designing Experiences People Love
moore
143
24k
Agile Actions for Facilitating Distributed Teams - ADO2019
mkilby
0
170
The SEO identity crisis: Don't let AI make you average
varn
0
430
Bootstrapping a Software Product
garrettdimon
PRO
307
120k
Leveraging Curiosity to Care for An Aging Population
cassininazir
1
210
The AI Revolution Will Not Be Monopolized: How open-source beats economies of scale, even for LLMs
inesmontani
PRO
3
3.3k
Writing Fast Ruby
sferik
630
63k
Amusing Abliteration
ianozsvald
1
150
Bridging the Design Gap: How Collaborative Modelling removes blockers to flow between stakeholders and teams @FastFlow conf
baasie
0
500
How Fast Is Fast Enough? [PerfNow 2025]
tammyeverts
3
510
Transcript
Game Dev in Ruby by Daniel Smith
It’s awesome
Game dev is fun!
Ruby is fun!
None
The Gosu Gem
Simple 2D engine
Sprite-based
Great Community
Challenges
Interpreted Language
Garbage Collector is EVIL
Not quite mobile yet
require ‘gosu’
class MyAwesomeGame < Gosu::Window def initialize super WIDTH, HEIGHT, FULLSCREEN
end end
Game Loop
... def update # game logic end def draw #
put stuff on the screen end
Input
... def button_down id # ... end def button_up id
exit if id == Gosu::KbEscape end
Images
... def initialize ... @ship_image = Gosu::Image.new self, “ship.png” end
def draw @ship_image.draw x, y, z end
Shut up and show some games!
#{code.demo :live}
Thanks!