GetUnProjectedPoint

(Difference between revisions)
Jump to: navigation, search
m
Line 1: Line 1:
Returns the un-projected point of a screen-space point :
+
{{lua-function|getUnProjectedPoint|object, vector}}
 +
 
 +
Returns the un-projected point of a screen-space point.
  
 
  point = getUnProjectedPoint(Camera, vec3(x, y, z))
 
  point = getUnProjectedPoint(Camera, vec3(x, y, z))
Line 5: Line 7:
 
It can be used for example to pick a 3d object using the mouse position :
 
It can be used for example to pick a 3d object using the mouse position :
  
<nowiki>function onSceneUpdate()
+
  function onSceneUpdate()
 
+
 
mx = getAxis("MOUSE_X")
+
    mx = getAxis("MOUSE_X")
my = getAxis("MOUSE_Y")
+
    my = getAxis("MOUSE_Y")
 
+
   
V1 = getUnProjectedPoint(Camera, vec3(mx, my, 0))
+
    V1 = getUnProjectedPoint(Camera, vec3(mx, my, 0))
V2 = getUnProjectedPoint(Camera, vec3(mx, my, 1))
+
    V2 = getUnProjectedPoint(Camera, vec3(mx, my, 1))
 
+
   
point, object = rayHit(V1, V2) -- note that rayHit only detects objects with physics enabled
+
    point, object = rayHit(V1, V2) -- note that rayHit only detects objects with physics enabled
 
+
   
if point then
+
    if point then
rotate(object, {0, 0, -1}, 1) -- rotate the selected object
+
        rotate(object, {0, 0, -1}, 1) -- rotate the selected object
end
+
    end
 
+
 
end</nowiki>
+
  end
  
 
[[Category:Lua scripting]]
 
[[Category:Lua scripting]]
 
[[Category:Lua function]]
 
[[Category:Lua function]]
 
[[Category:Camera]]
 
[[Category:Camera]]

Revision as of 18:25, 8 February 2014

getUnProjectedPoint(object, vector)

Returns the un-projected point of a screen-space point.

point = getUnProjectedPoint(Camera, vec3(x, y, z))

It can be used for example to pick a 3d object using the mouse position :

 function onSceneUpdate()
 
    mx = getAxis("MOUSE_X")
    my = getAxis("MOUSE_Y")	
    
    V1 = getUnProjectedPoint(Camera, vec3(mx, my, 0))
    V2 = getUnProjectedPoint(Camera, vec3(mx, my, 1))
    
    point, object = rayHit(V1, V2) -- note that rayHit only detects objects with physics enabled
    
    if point then
       rotate(object, {0, 0, -1}, 1) -- rotate the selected object
    end
 
 end
Personal tools
Namespaces
Variants
Actions
Navigation
Toolbox