Class: Ra::Engine
- Inherits:
-
Object
- Object
- Ra::Engine
- Defined in:
- lib/ra/engine.rb
Overview
An engine takes uses a world / camera to generate a canvas.
Constant Summary collapse
- PRECISION =
255
Instance Method Summary collapse
-
#initialize(world:, camera:) ⇒ Engine
constructor
A new instance of Engine.
- #render ⇒ Ra::Canvas
Constructor Details
#initialize(world:, camera:) ⇒ Engine
Returns a new instance of Engine.
10 11 12 13 |
# File 'lib/ra/engine.rb', line 10 def initialize(world:, camera:) @world = world @camera = camera end |
Instance Method Details
#render ⇒ Ra::Canvas
16 17 18 19 20 21 22 23 24 |
# File 'lib/ra/engine.rb', line 16 def render Ra::Canvas.new(w: @camera.w, h: @camera.h, precision: PRECISION).tap do |canvas| @camera.h.times do |y| @camera.w.times do |x| draw(x:, y:, canvas:) end end end end |