Class: Engine::Components::SpriteRenderer
Instance Attribute Summary collapse
#game_object
Instance Method Summary
collapse
#_erase!, #destroy!, #destroyed?, destroyed_components, erase_destroyed_components, method_added, #set_game_object, #ui_renderer?, #update
allowed_class?, #awake, get_class, included, register_class, #uuid
Instance Attribute Details
#material ⇒ Object
Returns the value of attribute material.
7
8
9
|
# File 'lib/engine/components/renderers/sprite_renderer.rb', line 7
def material
@material
end
|
Instance Method Details
#colour=(value) ⇒ Object
9
10
11
|
# File 'lib/engine/components/renderers/sprite_renderer.rb', line 9
def colour=(value)
material.set_vec4("spriteColor", colour_to_vec4(value))
end
|
#colour_to_vec4(value) ⇒ Object
13
14
15
16
17
18
19
|
# File 'lib/engine/components/renderers/sprite_renderer.rb', line 13
def colour_to_vec4(value)
if value.is_a?(Array)
value
else
[value[:r], value[:g], value[:b], value[:a] || 1.0]
end
end
|
#destroy ⇒ Object
36
37
38
|
# File 'lib/engine/components/renderers/sprite_renderer.rb', line 36
def destroy
@mesh_renderer.destroy
end
|
#renderer? ⇒ Boolean
21
22
23
|
# File 'lib/engine/components/renderers/sprite_renderer.rb', line 21
def renderer?
true
end
|
#start ⇒ Object
25
26
27
28
29
30
|
# File 'lib/engine/components/renderers/sprite_renderer.rb', line 25
def start
@mesh_renderer = MeshRenderer.create(mesh: Engine::Mesh.quad, material: material)
@mesh_renderer.set_game_object(game_object)
@mesh_renderer.start
set_default_frame_coords
end
|
32
33
34
|
# File 'lib/engine/components/renderers/sprite_renderer.rb', line 32
def sync_transform
@mesh_renderer.sync_transform
end
|