Sha256: f000bd8678ccca70474b146e5cd56a9fc4f5b3235b452858a27bd23f766c68db
Contents?: true
Size: 936 Bytes
Versions: 3
Compression:
Stored size: 936 Bytes
Contents
# frozen_string_literal: true module Rendering module RenderPipeline def self.draw Engine::GameObject.mesh_renderers.each do |mesh_renderer| mesh_renderer.update(0) end instance_renderers.values.each do |renderer| renderer.draw_all end end def self.add_instance(mesh_renderer) instance_renderers[[mesh_renderer.mesh, mesh_renderer.material]].add_instance(mesh_renderer) end def self.remove_instance(mesh_renderer) instance_renderers[[mesh_renderer.mesh, mesh_renderer.material]].remove_instance(mesh_renderer) end def self.update_instance(mesh_renderer) instance_renderers[[mesh_renderer.mesh, mesh_renderer.material]].update_instance(mesh_renderer) end private def self.instance_renderers @instance_renderers ||= Hash.new do |hash, key| hash[key] = InstanceRenderer.new(key[0], key[1]) end end end end
Version data entries
3 entries across 3 versions & 1 rubygems
Version | Path |
---|---|
ruby_rpg-0.0.4 | lib/engine/rendering/render_pipeline.rb |
ruby_rpg-0.0.3 | lib/engine/rendering/render_pipeline.rb |
ruby_rpg-0.0.2 | lib/engine/rendering/render_pipeline.rb |