mittsu 0.2.0 → 0.2.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: 5a1f361bd9c5e37267db5e1e076dcb88d5149678
4
- data.tar.gz: 32b0587711b8409e79e420f5ec3a5e41508ca7dc
3
+ metadata.gz: 198e7e5303fe8bbbb7e492202d6c6fbff7bcd22f
4
+ data.tar.gz: c82f5a49d70ea80dd057380ccfd8431941142d7d
5
5
  SHA512:
6
- metadata.gz: a69094dcb1f20b7d5582cc24d6e260fc4ee7194877a1687e6d6bf851b576eda7e18dc094d424cb4ecafb13eb0913cf11e8038d8d1c87d212161de798a8e83e38
7
- data.tar.gz: 96272baf7be394553b5e1019b029209b029f89787dfa6de84e086fc848e1d9bfa5c7e61c0730afe971d799f6e26741e156b9cba40dc78b51ca0c70ec2c29cf95
6
+ metadata.gz: 565731b3928d01109ae3b8e2b4a5481e2e1a73f3ba3b2decf39340701b3a29110b68813eb6fe53034dea3f01d35bee1ab6eb3f1fe46bcb62b23d9152e47317b9
7
+ data.tar.gz: cf32a40173d2041dc16a1f2c5843f85bff809aae621cd6ae55be215bd5c64fd01187350abf399178c19ef045b6556d7712f9a26aa5918fa015a648ef986f8c2b
@@ -26,12 +26,12 @@ module Mittsu
26
26
 
27
27
  def dispatch_event(event = {})
28
28
  return if @_listeners.nil?
29
- listener_array = @_listeners[event.type]
29
+ listener_array = @_listeners[event[:type]]
30
30
  if listener_array
31
31
  evt = Event.new(event[:type], self)
32
32
  array = listener_array.dup
33
33
  array.each do |l|
34
- l.call(self, evt)
34
+ l.call(evt)
35
35
  end
36
36
  end
37
37
  end
@@ -239,7 +239,7 @@ module Mittsu
239
239
  target.set(0.0, 0.0, 1.0).apply_quaternion(@_quaternion)
240
240
  end
241
241
 
242
- def raycast; end
242
+ def raycast(raycaster, intersects); end
243
243
 
244
244
  def traverse(&callback)
245
245
  callback.yield self
@@ -41,11 +41,11 @@ module Mittsu
41
41
  end
42
42
  end
43
43
 
44
- def intersect_object(object, recursive)
44
+ def intersect_object(object, recursive = false)
45
45
  intersects = []
46
46
  intersect(object, intersects, recursive)
47
47
  intersects.sort do |a, b|
48
- a.distance <=> b.distance
48
+ a[:distance] <=> b[:distance]
49
49
  end
50
50
  end
51
51
 
@@ -70,8 +70,10 @@ module Mittsu
70
70
  def intersect(object, intersects, recursive)
71
71
  object.raycast(self, intersects)
72
72
 
73
- object.children.each do |child|
74
- intersect(chil, intersects, true)
73
+ if recursive
74
+ object.children.each do |child|
75
+ intersect(child, intersects, true)
76
+ end
75
77
  end
76
78
  end
77
79
  end
@@ -116,6 +116,13 @@ module Mittsu
116
116
  # NOOP
117
117
  end
118
118
 
119
+ def deinit
120
+ @initted = nil
121
+ @model_view_matrix = nil
122
+ @normal_matrix = nil
123
+ @active = nil
124
+ end
125
+
119
126
  protected
120
127
 
121
128
  def project_children
@@ -1018,5 +1018,16 @@ module Mittsu
1018
1018
  glUniformMatrix4fv(uniforms['viewMatrix'], 1, GL_FALSE, array_to_ptr_easy(camera.matrix_world_inverse.elements))
1019
1019
  end
1020
1020
  end
1021
+
1022
+ def remove_child(object)
1023
+ if object.is_a?(Mesh) || object.is_a?(PointCloud) || object.is_a?(Line)
1024
+ @_opengl_objects.delete(object.id)
1025
+
1026
+ # elsif object.is_a?(ImmediateRenderObject) || object.immediate_render_callback
1027
+ # removeInstances( _webglObjectsImmediate, object );
1028
+ end
1029
+
1030
+ object.deinit
1031
+ end
1021
1032
  end
1022
1033
  end
@@ -1,4 +1,4 @@
1
1
  module Mittsu
2
- VERSION = "0.2.0"
2
+ VERSION = "0.2.1"
3
3
  REVISION = "71"
4
4
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: mittsu
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.2.0
4
+ version: 0.2.1
5
5
  platform: ruby
6
6
  authors:
7
7
  - Daniel Smith
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2017-02-15 00:00:00.000000000 Z
11
+ date: 2017-04-09 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: opengl-bindings