Melhorando suas habilidades Hackeando o seu primeiro Game

Melhorando suas habilidades Hackeando o seu primeiro Game

Palestra ministrada da Trilha Ruby da TDC Florianópolis 2016

298d330a34834dcc3717885d5391b445?s=128

Andre Luis Anastacio

May 16, 2016
Tweet

Transcript

  1. MELHORANDO
 SUAS HABILIDADES
 HACKEANDO O SEU PRIMEIRO GAME!

  2. André Luís Anastácio Desenvolvedor Twitter / Github - ndrluis

  3. None
  4. MEETUP REMOTO DE CLOJURE

  5. None
  6. O que é ser Hacker?

  7. “Em informática, hacker[1] [ráquer][2] é um indivíduo que se dedica,

    com intensidade incomum, a conhecer e modificar os aspectos mais internos de dispositivos…”
  8. “Em informática, hacker[1] [ráquer][2] é um indivíduo que se dedica,

    com intensidade incomum, a conhecer e modificar os aspectos mais internos de dispositivos…” Fonte: Águas de Lindóia
  9. “Em informática, hacker[1] [ráquer][2] é um indivíduo que se dedica,

    com intensidade incomum, a conhecer e modificar os aspectos mais internos de dispositivos…” Fonte: Águas de Lindóia Open Sans
  10. “Em informática, hacker[1] [ráquer][2] é um indivíduo que se dedica,

    com intensidade incomum, a conhecer e modificar os aspectos mais internos de dispositivos…” Fonte: Águas de Lindóia Open Sans
  11. “Em informática, hacker[1] [ráquer][2] é um indivíduo que se dedica,

    com intensidade incomum, a conhecer e modificar os aspectos mais internos de dispositivos…” Fonte: Águas de Lindóia Open Sans Wikipedia
  12. http://bit.ly/19fn7hI

  13. COMOFAS EM RUBY?

  14. RPG Maker RGSS Ruby Game Script System

  15. MRI Gosu Chingu ~> ndrluis/chingu Exemplo ~> ndrluis/ld32

  16. 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
  17. 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
  18. Javascript Phase.io / Babylon.js / Quintus / Impact Crafty.js /

    Melon.js / Pixi.js
  19. Opal Transpiler Ruby ~> JS Dare - domgetter/dare Opal Phaser

    - orbitalimpact/opal-phaser Exemplo ~> OpenGameDev/pong-opal-phaser
  20. Tá…. E mobile ein André?

  21. Crosswalk Project https://crosswalk-project.org

  22. RubyMotion HipByte/RubyMotionSamples

  23. Desenvolver games exercita inovação

  24. GameJams exercitam o espirito hacker

  25. Obrigado! Duvidas / Sugestões Broder para pair programming andreluisanastacio@gmail.com