Ruby Game Development

Ruby Game Development

Palestra ministrada na Rubyconf 2015

298d330a34834dcc3717885d5391b445?s=128

Andre Luis Anastacio

September 19, 2015
Tweet

Transcript

  1. None
  2. André Luís Anastácio 23 - andreanastacio.com.br - @ndrluis Desenvolvedor Irado

  3. None
  4. None
  5. None
  6. None
  7. None
  8. OpenGameDev

  9. RPG Maker RGSS Ruby Game Scripting System

  10. Ruby MRI Gosu Chingu - ndrluis/chingu Exemplo - ndrluis/ld-32

  11. Javascript Phaser.io / Babylon.js / Quintus / Impact Crafty.js /

    Melon.js / PIXI.js
  12. Opal - Transpiler Ruby -> JS Dare - domgetter/dare Opal

    Phaser - orbitalimpact/opal-phaser Pong Example - OpenGameDev/pong-opal-phaser
  13. Mas fazer jogos para desktop está fora de moda, quero

    jogos para mobile.
  14. Crosswalk Project https://crosswalk-project.org

  15. Rubymotion HipByte/RubyMotionSamples

  16. Fazer Games exercita a inovação

  17. GameJams exercitam o espirito Hacker

  18. class Grass < GameObject traits :bounding_box, :collision_detection def setup @image

    = Image["#{self.filename}.png"] self.rotation_center = :top_left end def self.solid all.select { |block| block.alpha == 255 } end def self.inside_viewport all.select { |block| block.game_state.viewport.inside?(block) } end end
  19. class GrassTiles include Chingu::NamedResource def initialize @builded_classes = build_classes end

    def all @builded_classes.flat_map(&:all) end private def build_classes class_names.map do |class_name| Class.new(Grass).tap do |klass| Object.const_set class_name, klass end end end def class_names Dir.glob(File.join(ROOT, 'media', 'grass_*.png')).map do |f| File.basename(f, '.png').split("_").each {|s| s.capitalize! }.join("") end end end
  20. LightTable Chris Granger - http://bit.ly/1V1qfFg

  21. None
  22. Obrigado! Twitter / Github - @ndrluis