AlignToVector

This function can be used to orient an entity's axis to match a user-defined axis in world space.

Syntax

Parameters

Example

--Create a window
window = Window:Create()
context = Context:Create(window)

world = World:Create()

local camera = Camera:Create()
camera:SetRotation(35,0,0)
camera:Move(0,0,-8)

local light = DirectionalLight:Create()
light:SetRotation(35,35,0)

--Create a model
local model = Model:Box()

while true do
if window:Closed() or window:KeyHit(Key.Escape) then return false end
Time:Update()
world:Update()

--Get the vector between the mouse position and the center of the screen
local v = window:GetMousePosition()
local dx = v.x - context:GetWidth()/2.0
local dy = context:GetHeight()/2.0 - v.y
v = Vec3(dx,dy,0):Normalize()

--Align the model to the vector
model:AlignToVector(v,2)

world:Render()
context:Sync()
end