Class: Mittsu::PointLight

Inherits:
Light show all
Defined in:
lib/mittsu/lights/point_light.rb

Constant Summary

Constants inherited from Object3D

Object3D::DefaultUp

Instance Attribute Summary collapse

Attributes inherited from Light

#color, #distance, #intensity, #only_shadow

Attributes inherited from Object3D

#cast_shadow, #children, #frustum_culled, #geometry, #id, #matrix, #matrix_auto_update, #matrix_world, #matrix_world_needs_update, #name, #parent, #position, #quaternion, #receive_shadow, #render_order, #rotation, #rotation_auto_update, #scale, #type, #up, #user_data, #uuid, #visible

Instance Method Summary collapse

Methods inherited from Object3D

#add, #apply_matrix, #get_object_by_id, #get_object_by_name, #get_object_by_property, #get_world_direction, #get_world_position, #get_world_quaternion, #get_world_rotation, #get_world_scale, #local_to_world, #look_at, #print_tree, #raycast, #remove, #rotate_on_axis, #rotate_x, #rotate_y, #rotate_z, #set_rotation_from_axis_angle, #set_rotation_from_euler, #set_rotation_from_matrix, #set_rotation_from_quaternion, #to_json, #to_s, #translate_on_axis, #translate_x, #translate_y, #translate_z, #traverse, #traverse_ancestors, #traverse_visible, #update_matrix, #update_matrix_world, #world_to_local

Methods included from EventDispatcher

#add_event_listener, #dispatch_event, #has_event_listener, #remove_event_listener

Constructor Details

#initialize(color = nil, intensity = 1.0, distance = 0.0, decay = 1.0) ⇒ PointLight

Returns a new instance of PointLight.



7
8
9
10
11
12
13
14
15
# File 'lib/mittsu/lights/point_light.rb', line 7

def initialize(color = nil, intensity = 1.0, distance = 0.0, decay = 1.0)
  super(color)

  @type = 'PointLight'

  @intensity = intensity
  @distance = distance
  @decay = decay # for physically correct light, should be 2
end

Instance Attribute Details

#decayObject

Returns the value of attribute decay.



5
6
7
# File 'lib/mittsu/lights/point_light.rb', line 5

def decay
  @decay
end

Instance Method Details

#cloneObject



17
18
19
20
21
22
23
24
25
# File 'lib/mittsu/lights/point_light.rb', line 17

def clone
  light = PointLight.new
  super(light)

  light.intensity = @intensity
  light.distance = @distance
  light.decay = @decay
  light
end