getDirectionVector
Definition
-- @/=[C]:-1
function getDirectionVector(...)
Callers
@/lua/ge/extensions/gameplay/crawl/utils.lua
local vehiclePos = veh:getPosition()
local vRot = quatFromDir(veh:getDirectionVector(), veh:getDirectionVectorUp())
local x,y,z = vRot * vec3(1,0,0),vRot * vec3(0,1,0),vRot * vec3(0,0,1)
state.crawlerData.dynamicData.vehPos:set(veh:getPositionXYZ())
state.crawlerData.dynamicData.vehDirectionVector:set(veh:getDirectionVector())
state.crawlerData.dynamicData.vehDirectionVectorUp:set(veh:getDirectionVectorUp())
@/lua/ge/extensions/editor/aiTests.lua
local pos = obj:getPosition()
local dirVec = obj:getDirectionVector()
local nodes = map.getMap().nodes
v.pos:set(obj:getPosition())
v.rot:set(quatFromDir(obj:getDirectionVector(), obj:getDirectionVectorUp()) * quat(0, 0, 1, 0))
@/lua/ge/extensions/flowgraph/nodes/vehicle/touchingStatic.lua
self.xOffset:set(veh:getDirectionVector():cross(veh:getDirectionVectorUp()) * (self.pinIn.widthOffset.value or 0))
self.yOffset:set(veh:getDirectionVector() * (self.pinIn.lengthOffset.value or 0))
self.xOffset:set(veh:getDirectionVector():cross(veh:getDirectionVectorUp()) * (self.pinIn.widthOffset.value or 0))
self.yOffset:set(veh:getDirectionVector() * (self.pinIn.lengthOffset.value or 0))
self.zOffset:set(veh:getDirectionVectorUp() * (self.pinIn.heightOffset.value or 0.5))
@/lua/ge/extensions/editor/camPathEditor.lua
-- Transform offset from local space to world space using vehicle direction vectors
local forward = vec3(playerVehicle:getDirectionVector())
local up = vec3(playerVehicle:getDirectionVectorUp())
-- Transform offset from local space to world space using vehicle direction vectors
local forward = vec3(playerVehicle:getDirectionVector())
local up = vec3(playerVehicle:getDirectionVectorUp())
@/lua/vehicle/extensions/advancedwheeldebug.lua
local vehForward = obj:getDirectionVector()
local vehRight = obj:getDirectionVectorRight()
@/lua/vehicle/ai.lua
pos = obj:getFrontPosition(),
dirVec = obj:getDirectionVector(),
prevDirVec = obj:getDirectionVector(),
dirVec = obj:getDirectionVector(),
prevDirVec = obj:getDirectionVector(),
upVec = obj:getDirectionVectorUp(),
local dirVec = obj:getDirectionVector()
local avgFrontWheelPos, frontWheelCount = vec3(), 0
@/lua/vehicle/controller/tech/cosimulationCoupling.lua
kOut[16], kOut[17] = obj:getGroundSpeed(), obj:getAltitude() -- Ground speed, m/s. Altitude, meters.
local fwd = obj:getDirectionVector()
fwd:normalize()
@/lua/vehicle/mapmgr.lua
pos = pos or obj:getPosition()
dir = dir or obj:getDirectionVector()
@/lua/ge/extensions/core/cameraModes/path.lua
local veh = data.veh
local forward = vec3(veh:getDirectionVector())
local up = vec3(veh:getDirectionVectorUp())
@/lua/ge/extensions/flowgraph/nodes/vehicle/special/wheelDistance.lua
vehCenter:set(vehicle:getSpawnWorldOOBB():getCenter())
dirVec:set(vehicle:getDirectionVector())
-- We need to identify all vehicle wheels and then calculate the distance from the start line for each wheel
local dot = pointToTrigger:dot(dirVec:normalized())
local distanceFromStart = -dot --(vehicle:getDirectionVector() * dot):len()
@/lua/ge/extensions/editor/vehicleEditor/liveEditor/veFlexbodyDebug.lua
local refPos = vEditor.vdata.nodes[vEditor.vdata.refNodes[0].ref].pos
local rotInv = quatFromDir(-vEditor.vehicle:getDirectionVector(), vEditor.vehicle:getDirectionVectorUp()):inversed()
local vertPosLocal = rotInv * flexbodyObj:getDebugVertexPos(chosenVertID) + refPos
@/lua/vehicle/extensions/perfectLaunch.lua
local velocity = obj:getVelocity()
local directionVector = obj:getDirectionVector()
local actualVelocity = max((directionVector:dot(velocity) / (directionVector:length() * directionVector:length()) * directionVector):length(), 0)
@/lua/ge/extensions/freeroam/dragRace.lua
-- We need actual distance from starting line and not the center
local dot = vec3(nodePos.x, nodePos.y, nodePos.z):dot(vehicle:getDirectionVector():normalized())
maxFwd = math.max(dot, maxFwd)
-- Point inbetween both wheels is calculated so that we can get a somewhat accurate distance measurement
local centerPoint = vehicle:getPosition() + maxFwd * vehicle:getDirectionVector():normalized()
local centerPointToTrigger = vec3(centerPoint - trigger:getPosition())
local dot = centerPointToTrigger:dot(vehicle:getDirectionVector():normalized())
local distanceFromStart = -dot
if debugDist and debugDrawer then
debugDrawer:drawLine((vehicle:getDirectionVector() + centerPoint), centerPoint, ColorF(1,0,0,1))
@/lua/ge/extensions/flowgraph/nodes/vehicle/flipUpright.lua
if veh then
spawn.safeTeleport(veh, veh:getPosition(), quatFromDir(veh:getDirectionVector()), nil, nil, nil, nil, false )
extensions.hook('onVehicleFlippedUpright', veh:getID())
@/lua/ge/extensions/gameplay/discover.lua
-- use this to get the position, rotation and partConfig of all vehicles
for id in activeVehiclesIterator() do local veh = scenetree.findObjectById(id) print(veh) dump({veh:getPosition(), quatFromDir(veh:getDirectionVector(), veh:getDirectionVectorUp()), veh.jbeam, veh.partConfig}) end
]]
@/lua/ge/ge_utils.lua
-- Spawn the vehicle on the left of the player vehicle
local dir = vec3(playerVehicle:getDirectionVector()):normalized()
local offset = vec3(-dir.y, dir.x, 0)
else
options.rot = quatFromDir(vec3(playerVehicle:getDirectionVector()):normalized(), vec3(playerVehicle:getDirectionVectorUp()):normalized())
end
@/lua/ge/extensions/gameplay/taxi.lua
local vehPos = veh:getPosition()
local vehFwd = veh:getDirectionVector()
local bestDist = math.huge
@/lua/vehicle/controller/drivingDynamics/sensors/sensorHub.lua
M.worldVelocity = obj:getVelocity()
M.directionVector = obj:getDirectionVector()
M.directionVectorUp = obj:getDirectionVectorUp()
@/lua/vehicle/controller/tech/tyreBarrier.lua
if isPreamble then
thrusters.applyVelocity(obj:getDirectionVector():normalized() * (initialVel + initalVelOffset) / 3.6, 0.5)
local pos, vel = obj:getPosition(), obj:getVelocity()
@/lua/ge/extensions/gameplay/rally/cutCapture.lua
local vehPos = self.vehicle:getPosition()
local vehRot = quatFromDir(self.vehicle:getDirectionVector(), self.vehicle:getDirectionVectorUp())
local now = rallyUtil.getTime()
@/lua/vehicle/beamstate.lua
local pos = obj:getPosition()
local front = obj:getDirectionVector()
local up = obj:getDirectionVectorUp()
@/lua/vehicle/extensions/mqttGrafanaDemo.lua
local function updateWheelData()
local vectorForward = obj:getDirectionVector()
local vectorUp = obj:getDirectionVectorUp()
@/lua/vehicle/controller/esc.lua
local velocity = obj:getVelocity()
local directionVector = obj:getDirectionVector()
local actualVelocity = (directionVector:dot(velocity) / (directionVector:length() * directionVector:length()) * directionVector):length()
local vectorForward = vec3(v.data.nodes[v.data.refNodes[0].ref].pos) - vec3(v.data.nodes[v.data.refNodes[0].back].pos) -- obj:getDirectionVector() --vector facing forward
local vectorUp = vec3(v.data.nodes[v.data.refNodes[0].up].pos) - vec3(v.data.nodes[v.data.refNodes[0].ref].pos)
@/lua/vehicle/extensions/utRecorder.lua
local pos = obj:getPosition()
local dir = obj:getDirectionVector()
local d = {
@/lua/ge/extensions/editor/vehicleEditor/liveEditor/vePropTransformer.lua
local dirFront = vEditor.vehicle:getDirectionVector()
local dirUp = vEditor.vehicle:getDirectionVectorUp()
local dirFront = vEditor.vehicle:getDirectionVector()
local dirUp = vEditor.vehicle:getDirectionVectorUp()
local dirFront = vEditor.vehicle:getDirectionVector()
local dirUp = vEditor.vehicle:getDirectionVectorUp()
@/lua/vehicle/controller/tech/roadsSensor.lua
-- Compute the player vehicle pose data.
pos, fwd, vel = obj:getPosition(), obj:getDirectionVector(), vec3(obj:getSmoothRefVelocityXYZ())
fwd:normalize()
@/lua/ge/extensions/scenario/busdriver.lua
-- calculate smoothness rating
local fwd = vec3(pv:getDirectionVector()):normalized()
local up = vec3(pv:getDirectionVectorUp()):normalized()
if abs(stopDistance) < 20 then
local fwd = vec3(pv:getDirectionVector()):normalized()
local busStopFwd = vec3(busStop:getTransform():getColumn(1)):normalized()
local ob = pv:getSpawnWorldOOBB()
local vDirVec=vec3(pv:getDirectionVector())
local tr = quat(nextStop[4])
@/lua/vehicle/scriptai.lua
local vehCenterPositionRelative = vec3(
vehCenterPosRel:dot(obj:getDirectionVectorUp():cross(obj:getDirectionVector())),
-(vehCenterPosRel:dot(obj:getDirectionVector())),
vehCenterPosRel:dot(obj:getDirectionVectorUp():cross(obj:getDirectionVector())),
-(vehCenterPosRel:dot(obj:getDirectionVector())),
vehCenterPosRel:dot(obj:getDirectionVectorUp())
local prevDirVec = aiDirVec
aiDirVec = obj:getDirectionVector()
local dir, up = obj:getDirectionVector(), obj:getDirectionVectorUp()
initConditions.dir = {x = dir.x, y = dir.y, z = dir.z}
@/lua/ge/map.lua
local ff = 0.5 * vecUp:dot(vec3(obj:getDirectionVectorUp())) -- frictionCoeff * Normal Force.
local objDirVec = vec3(obj:getDirectionVector())
local fw = vecUp:dot(sign(objVel:dot(objDirVec)) * objDirVec) -- road grade force
@/lua/ge/extensions/core/cameraModes/crash.lua
local driverPos = veh2:getPosition() + veh2:getNodePosition(driverNode)
if veh2:getDirectionVector():dot(bb1:getCenter() - driverPos) > 0 then
self.cockpitView = true
@/lua/ge/extensions/flowgraph/nodes/vehicle/alignForCoupling.lua
if self.pinIn.relativeRotationQuat.value then
desiredRot = desiredRot * quatFromDir(vec3(v1:getDirectionVector()), vec3(v1:getDirectionVectorUp()))
else
@/lua/vehicle/extensions/chassisData.lua
local vectorForward = vec3(v.data.nodes[v.data.refNodes[0].ref].pos) - vec3(v.data.nodes[v.data.refNodes[0].back].pos) -- obj:getDirectionVector() --vector facing forward
local vectorUp = vec3(v.data.nodes[v.data.refNodes[0].up].pos) - vec3(v.data.nodes[v.data.refNodes[0].ref].pos)
@/lua/ge/extensions/editor/vehicleEditor/liveEditor/veView.lua
if focusObj then
local fwd = focusObj:getDirectionVector()
view.pos = focusPos + focusRot * vec3(0, 0, 5)
@/lua/ge/extensions/editor/vehicleEditor/liveEditor/veGeneralData.lua
local data = {}
data.heading = vec3(obj:getDirectionVector())
data.pos = vec3(obj:getPosition())
@/lua/ge/extensions/gameplay/drag/general.lua
local vehiclePos = vehicle:getPosition()
local forward = vehicle:getDirectionVector()
local up = vehicle:getDirectionVectorUp()
local vehiclePos = vehicle:getPosition()
local forward = vehicle:getDirectionVector()
local up = vehicle:getDirectionVectorUp()
@/ui/modules/apps/IndicatedAirspeed/app.js
bngApi.activeObjectLua('(obj:getDirectionVector():dot(obj:getVelocity() - obj:getFlow())) * math.sqrt(obj:getDensityAtNode(0) / 1.225)', callback)
var displaySpeed = Math.max(airspeed * speedScale, 0)
@/lua/ge/extensions/flowgraph/nodes/scene/raceLineParking.lua
local vDirVec=veh:getDirectionVector()
local tr = self.pinIn.rotation.value or {0,0,0,0}
local fwd = veh:getDirectionVector():normalized()
local zVec,yVec,xVec = tr*vec3(0,0,1), tr*vec3(0,1,0), tr*vec3(1,0,0)
@/lua/ge/extensions/core/multiSpawn.lua
pos = playerVeh:getPosition() + playerVeh:getInitialNodePosition(playerVeh:getRefNodeId()) -- centered
rot = playerVeh:getDirectionVector()
start = 1 -- avoids spawning conflict at player position
@/lua/vehicle/extensions/escMeasurement.lua
local velocity = obj:getVelocity()
local directionVector = obj:getDirectionVector()
local actualVelocity = (directionVector:dot(velocity) / (directionVector:length() * directionVector:length()) * directionVector):length()
@/lua/ge/extensions/editor/tech/sensorConfiguration/utilities.lua
local function posVS2Coeffs(posVS, veh)
local fwd, up = veh:getDirectionVector(), veh:getDirectionVectorUp()
fwd:normalize()
local function coeffs2PosVS(c, veh)
local fwd, up = veh:getDirectionVector(), veh:getDirectionVectorUp()
fwd:normalize()
local function sensor2VS(dirLoc, upLoc, veh)
local fwd, up = veh:getDirectionVector(), veh:getDirectionVectorUp()
fwd:normalize()
local function vS2Sensor(dirVS, upVS, veh)
local fwd, up = veh:getDirectionVector(), veh:getDirectionVectorUp()
fwd:normalize()
local function dirWorldSpace2Sensor(dirWS, upWS, veh)
local fwd, up = veh:getDirectionVector(), veh:getDirectionVectorUp()
fwd:normalize()
@/lua/ge/extensions/editor/sceneView.lua
if focusObj then
local fwd = focusObj:getDirectionVector()
view.pos = focusPos + focusRot * vec3(0, 0, 5)
@/lua/vehicle/controller/sbrGauges.lua
mapData.x, mapData.y = obj:getPositionXYZ()
local dir = obj:getDirectionVector():normalized()
mapData.rotation = deg(atan2(dir:dot(vecX), dir:dot(vecY)))
@/lua/ge/extensions/util/trackBuilder/splineTrack.lua
local trackPosition = subTrackPositions[subTrackIndex]
local vehicleDir = playerVehicle:getDirectionVector()
M.setTrackPosition(trackPosition.position.x, trackPosition.position.y, trackPosition.position.z, (-math.atan2(vehicleDir.y, -vehicleDir.x) + math.pi / 2) * 180 / math.pi)
@/lua/vehicle/extensions/tech/wheelForces.lua
--local leftVector = -obj:getDirectionVectorRight()
--local forwardVector = obj:getDirectionVector()
for _, data in ipairs(wheelData) do
@/lua/ge/extensions/campaign/exploration.lua
local vehiclePosition = vehicle:getPosition()
local vehicleDirection = vehicle:getDirectionVector()
lastRampTriggerPos = {desiredPos = vehiclePosition, desiredDir = vehicleDirection}
@/lua/ge/extensions/gameplay/rally/vehicleCapture.lua
local vehPos = self.vehicle:getPosition()
local vehRot = quatFromDir(self.vehicle:getDirectionVector(), self.vehicle:getDirectionVectorUp())
local now = rallyUtil.getTime()
@/lua/vehicle/extensions/tech/techCore.lua
pos = obj:getPosition(),
dir = obj:getDirectionVector(),
up = obj:getDirectionVectorUp(),
M.handleSetVelocity = function(request)
thrusters.applyVelocity(obj:getDirectionVector() * request['velocity'], request['dt'])
request:sendACK('VelocitySet')
@/lua/ge/extensions/career/modules/playerDriving.lua
local playerVehObj = getPlayerVehicle(0)
spawn.safeTeleport(getObjectByID(vehId), playerVehObj:getPosition(), quatFromDir(playerVehObj:getDirectionVector()), nil, nil, nil, nil, false)
core_vehicleBridge.executeAction(getObjectByID(vehId),'setIgnitionLevel', 0)
local vehId = inventory.getVehicleIdFromInventoryId(favoriteVehicleInventoryId)
spawn.safeTeleport(getObjectByID(vehId), playerVehObj:getPosition(), quatFromDir(playerVehObj:getDirectionVector()), nil, nil, nil, nil, false)
end)
spawn.safeTeleport(trailer, vehBBCenter - vehicle:getDirectionVector() * (vehBB:getHalfExtents().y + trailerBB:getHalfExtents().y), vehRot, nil, nil, nil, true, args.resetVeh)
@/lua/ge/extensions/flowgraph/nodes/vehicle/applyVelocity.lua
else
dirVec:set(veh:getDirectionVector())
end
@/lua/ge/extensions/core/funstuff.lua
if veh then
local dir = veh:getDirectionVector()
dir:normalize()
if veh then
local dir = veh:getDirectionVector()
dir:normalize()
local pos = vehicle:getPosition()
local rot = quatFromDir(vehicle:getDirectionVector(), vehicle:getDirectionVectorUp())
-- Create a point at the bottom center in local space (Z is up/down)
@/gameplay/missionTypes/collection/customNodes/collectionNode.lua
pos = marker.pos,
rot = quatFromDir(-1*veh:getDirectionVector())
}
@/lua/ge/extensions/gameplay/missions/missionManager.lua
startingInfo.vehPos = veh:getPosition()
startingInfo.vehRot = quatFromDir(vec3(veh:getDirectionVector()), vec3(veh:getDirectionVectorUp()))
startingInfo.vehId = veh:getID()
@/lua/vehicle/extensions/scenario/shiftBooster.lua
local forceVec = obj:getDirectionVector()
-- get a boost vector
@/lua/ge/extensions/tech/impactgen/crashOutput.lua
local pos = veh:getSpawnWorldOOBB():getCenter()
local dir = veh:getDirectionVector()
@/lua/ge/extensions/gameplay/discover/discover_037.lua
local pos = vehicle:getPosition()
local rot = quatFromDir(vehicle:getDirectionVector(), vehicle:getDirectionVectorUp())
-- Create a point at the bottom center in local space (Z is up/down)
@/lua/vehicle/extensions/aeroDebug.lua
--obj:setWind(0,0,55.55)
M.directionVector = -obj:getDirectionVector()
M.directionVectorUp = obj:getDirectionVectorUp()
@/lua/ge/extensions/career/modules/delivery/precisionParking.lua
local vehicleRot = vehicle:getRotation()
local vehicleDir = vehicle:getDirectionVector()
@/lua/ge/extensions/flowgraph/modules/prefabModule.lua
-- get current position and rotation
vehicleTransforms[k] = {pos = veh:getPosition(), rot = quat(0, 0, 1, 0) * quatFromDir(veh:getDirectionVector(), veh:getDirectionVectorUp())}
end
@/lua/ge/extensions/flowgraph/nodes/scene/camera/cameraCircle.lua
if veh then
local dirVec = veh:getDirectionVector()
self.angle = self.angle + math.deg(math.atan2(dirVec.x, dirVec.y))
@/lua/ge/spawn.lua
pos = veh:getPosition()
rot = quatFromDir(veh:getDirectionVector(), veh:getDirectionVectorUp())
end
pos = veh:getPosition()
rot = quatFromDir(veh:getDirectionVector(), veh:getDirectionVectorUp())
end
-- Translate the trailer back so that the trailers BB touches the cars BB
local direction = car:getDirectionVector()
direction:normalize()
@/lua/ge/extensions/scenario/waypoints.lua
local vehiclePos = vehicle:getPosition()
local vRot = quatFromDir(vehicle:getDirectionVector(), vehicle:getDirectionVectorUp())
local x,y,z = vRot * vec3(1,0,0),vRot * vec3(0,1,0),vRot * vec3(0,0,1)
local vPos = vehicle:getPosition()
local vRot = quatFromDir(vehicle:getDirectionVector(), vehicle:getDirectionVectorUp())
for i, corner in ipairs(vehWpData.wheelOffsets) do
@/lua/ge/extensions/util/export.lua
local node = gltfRoot.nodes[e + 1]
local d = veh:getDirectionVector()
local u = veh:getDirectionVectorUp()
@/lua/vehicle/recovery.lua
pos = objPosition,
dirFront = obj:getDirectionVector(),
dirUp = obj:getDirectionVectorUp()
@/lua/vehicle/extensions/dragAi.lua
distanceVector = vec3(distanceVector.x, distanceVector.y, 0)
local directionVector = obj:getDirectionVector()
directionVector = vec3(directionVector.x, directionVector.y, 0)
@/lua/ge/extensions/tech/multiscreen.lua
if veh then
local vehicleRotation = quatFromDir(veh:getDirectionVector(), veh:getDirectionVectorUp())
local vehiclePosition = veh:getPosition()
@/lua/ge/extensions/tech/techCore.lua
local function coeffs2PosVS(c, veh)
local fwd, up = veh:getDirectionVector(), veh:getDirectionVectorUp()
fwd:normalize()
local function sensor2VS(dirLoc, upLoc, veh)
local fwd, up = veh:getDirectionVector(), veh:getDirectionVectorUp()
fwd:normalize()
@/lua/vehicle/controller/gauges/customModules/navigationData.lua
mapData.x, mapData.y = obj:getPositionXYZ()
local dir = obj:getDirectionVector()
mapData.rotation = deg(atan2(dir:dot(vecX), dir:dot(vecY)))
@/lua/ge/extensions/gameplay/rally/vehicleTracker.lua
local vehiclePos = vehicle:getPosition()
local vRot = quatFromDir(vehicle:getDirectionVector(), vehicle:getDirectionVectorUp())
local x,y,z = vRot * vec3(1,0,0),vRot * vec3(0,1,0),vRot * vec3(0,0,1)
-- local vPos = vehicle:getPosition()
-- local vRot = quatFromDir(vehicle:getDirectionVector(), vehicle:getDirectionVectorUp())
-- for i, corner in ipairs(self.wheelOffsets) do
@/lua/vehicle/bdebugImpl.lua
local initRefNodePos = v.data.nodes[v.data.refNodes[0].ref].pos
local rot = quatFromDir(-obj:getDirectionVector(), obj:getDirectionVectorUp())
local relCOGPos = rot:inversed() * (p - vehPos) + initRefNodePos
@/lua/ge/extensions/core/quickAccess.lua
local vehPos = veh:getPosition()
local vehFwd = veh:getDirectionVector()
local bestWp = nil
onSelect = function()
spawn.safeTeleport(playerVeh, playerVeh:getPosition(), quatFromDir(playerVeh:getDirectionVector()), nil, nil, nil, nil, false )
extensions.hook('onVehicleFlippedUpright', playerVeh:getID())
getPlayerVehicle(0):resetBrokenFlexMesh()
spawn.safeTeleport(getPlayerVehicle(0), getPlayerVehicle(0):getPosition(), quatFromDir(getPlayerVehicle(0):getDirectionVector(), getPlayerVehicle(0):getDirectionVectorUp()), nil, nil, nil, nil, true)
return {"hide"}
veh:resetBrokenFlexMesh()
spawn.safeTeleport(veh, veh:getPosition(),quatFromDir(veh:getDirectionVector(), veh:getDirectionVectorUp()))
end
@/lua/ge/extensions/core/hotlapping.lua
if veh and veh:getPosition():squaredDistance(cpPos) <= 25 then -- only gets set if vehicle is roughly within checkpoint (otherwise, no normal)
cpDir = veh:getDirectionVector()
end
@/lua/ge/extensions/core/recoveryPrompt.lua
if veh then
spawn.safeTeleport(veh, veh:getPosition(), quatFromDir(veh:getDirectionVector()), nil, nil, nil, nil, false )
local invVehId = career_modules_inventory.getInventoryIdFromVehicleId(target.vehId)
else
spawn.safeTeleport(veh, veh:getPosition(), quatFromDir(veh:getDirectionVector()), nil, nil, nil, nil, true )
end
@/lua/ge/extensions/flowgraph/nodes/vehicle/recoverInPlace.lua
veh:resetBrokenFlexMesh()
spawn.safeTeleport(veh, veh:getPosition(),quatFromDir(veh:getDirectionVector(), veh:getDirectionVectorUp()))
end
@/lua/vehicle/extensions/straightLine.lua
if not target then
local direction = obj:getDirectionVector():z0()
local pos = obj:getPosition()
local distanceVector = targetPos - myPos
local directionVector = obj:getDirectionVector()
local angleError = (distanceVector:dot(directionVector) / (directionVector:length() * distanceVector:length()))
@/lua/ge/extensions/editor/trafficManager.lua
vehData.vehType = core_vehicles.getModel(vehData.model).model.Type
vehData.home = vehData.home or {pos = veh:getPosition(), rot = quatFromDir(veh:getDirectionVector(), veh:getDirectionVectorUp())} -- reset transform
vehData.aiType = vehData.aiType or "basic" -- basic, script, target, user
currVeh:queueLuaCommand('recovery.saveHome()')
sessionData.home = {pos = currVeh:getPosition(), rot = quatFromDir(currVeh:getDirectionVector(), currVeh:getDirectionVectorUp())}
editor.showNotification("Updated home position of current vehicle.")
pos = currVeh:getPosition(),
rot = quatFromDir(currVeh:getDirectionVector(), currVeh:getDirectionVectorUp()),
model = currVeh.jbeam,
pos.x, pos.y, pos.z = options.objPos[0], options.objPos[1], options.objPos[2]
spawn.safeTeleport(currVeh, pos, quatFromDir(currVeh:getDirectionVector(), currVeh:getDirectionVectorUp()), nil, nil, false, true)
end
local dirVec = mapVehData.dirVec or currVeh:getDirectionVector()
options.objRot[0], options.objRot[1], options.objRot[2] = dirVec.x, dirVec.y, dirVec.z
local obj = scenetree.findObject(nameId)
spawn.safeTeleport(obj, obj:getPosition(), quatFromDir(obj:getDirectionVector(), obj:getDirectionVectorUp()), nil, nil, false, true)
@/lua/ge/extensions/core/cameraModes/unicycle.lua
local veh = getPlayerVehicle(0)
self:setCustomData({pos=data.pos, front=veh:getDirectionVector(), up=veh:getDirectionVectorUp()})
end
@/lua/vehicle/extensions/tech/vehiclePOI.lua
-- [Note: these are in world-space].
local pos, fwd, vehLength, vehFront = obj:getPosition(), obj:getDirectionVector(), obj:getInitialLength(), obj:getFrontPosition()
fwd:normalize()
@/lua/ge/extensions/editor/gen/decal.lua
local function forTarget()
local dircar = veh:getDirectionVector()
lo('>>^^^^^^^^^^ forTarget:'..tostring(dircar)..':'..tostring(car.target and car.target.p)..':'..tostring(car.target and car.target.rd and car.target.rd.ind..'_'..car.target.side or nil))
-- lo('?? for_time:'..ctime..':'..tostring(car.time))
-- lo('?? for_DV:'..tostring(veh:getDirectionVector())..':'..tostring(veh:getVelocity():normalized()))
if veh:getVelocity():length() > 8 then
@/lua/ge/extensions/flowgraph/nodes/scene/rectMarker.lua
local ob = veh:getSpawnWorldOOBB()
local vDirVec=veh:getDirectionVector()
local rotationValues = self.pinIn.rotation.value or zerosTable4
@/lua/ge/extensions/freeroam/bigMapMode.lua
-- Project the vehicle direction vector on to the camera plane and then determine the angle
local vehDir = playerVehicle:getDirectionVector()
local vehicleDirLocalX, vehicleDirLocalY = vehDir:dot(core_camera.getRight()), vehDir:dot(core_camera.getUp())
@/lua/ge/extensions/gameplay/traffic/vehicle.lua
if self.respawnSpeed then
-- obj:queueLuaCommand('thrusters.applyVelocity(obj:getDirectionVector() * '..(self.respawnSpeed * self.alpha)..')') -- makes vehicle start at speed
-- NOTE: test this to see if it can be enabled
@/lua/ge/extensions/gameplay/race/race.lua
local vehiclePos = vehicle:getPosition()
local vRot = quatFromDir(vehicle:getDirectionVector(), vehicle:getDirectionVectorUp())
local x,y,z = vRot * vec3(1,0,0),vRot * vec3(0,1,0),vRot * vec3(0,0,1)
else
finalDir = getObjectByID(id):getDirectionVector() -- last resort, this shouldn't happen
end
local vehiclePos = veh:getPosition()
local vRot = quatFromDir(veh:getDirectionVector(), veh:getDirectionVectorUp())
local x,y,z = vRot * vec3(1,0,0),vRot * vec3(0,1,0),vRot * vec3(0,0,1)
@/lua/ge/extensions/flowgraph/nodes/mission/postClean.lua
spawn.safeTeleport(veh, veh:getPosition(), quatFromDir(veh:getDirectionVector(), veh:getDirectionVectorUp()), nil, nil, nil, nil, doRepair)
end
@/lua/ge/extensions/core/checkpoints.lua
vehicleCheckpoints[vehicleId].pos = (cpData and vec3(cpData.desiredPos)) or vehicle:getPosition()
vehicleCheckpoints[vehicleId].dirVec = (cpData and vec3(cpData.desiredDir)) or vehicle:getDirectionVector()
vehicleCheckpoints[vehicleId].upVec = vehicle:getDirectionVectorUp()
@/lua/ge/extensions/editor/cosimulationSignalEditor.lua
local function coeffs2PosVS(c, veh)
local fwd, up = veh:getDirectionVector(), veh:getDirectionVectorUp()
fwd:normalize()
local function sensor2VS(dirLoc, upLoc, veh)
local fwd, up = veh:getDirectionVector(), veh:getDirectionVectorUp()
fwd:normalize()
local veh = vehicle.veh
local pos, rot = veh:getPosition(), quatFromDir(veh:getDirectionVector(), veh:getDirectionVectorUp())
csv:add('vehicle', nil, 'posX', tostring(pos.x), "number", nil, nil, nil)