API ReferenceGE ExtensionseditortechsensorConfiguration
Sensor Configuration - Utilities
Provides coordinate frame conversions between vehicle-space and sensor-local frames, plus debug visualization for sensor boxes, beams, and local frames.
Provides coordinate frame conversions between vehicle-space and sensor-local frames, plus debug visualization for sensor boxes, beams, and local frames.
Public API
| Function | Signature | Description |
|---|---|---|
M.posVS2Coeffs | (posVS, veh) → vec3 | Converts vehicle-space position to local frame coefficients |
M.coeffs2PosVS | (c, veh) → vec3 | Converts local frame coefficients to vehicle-space position |
M.sensor2VS | (dirLoc, upLoc, veh) → dir, up | Converts sensor-local dir/up to vehicle-space |
M.vS2Sensor | (dirVS, upVS, veh) → dir, up | Converts vehicle-space dir/up to sensor-local |
M.dirWorldSpace2Sensor | (dirWS, upWS, veh) → dir, up | Converts world-space direction to sensor frame |
M.coeffsToDirWorldSpace | (c, veh) → vec3 | Converts coefficients to world-space direction |
M.dirToDirWorldSpace | (c) → vec3 | Converts direction to world-space |
M.computeBeamShapeRadius | (y, rangeRoundness, exp, limitCoef) → number | Computes beam radius at distance y via binary search |
M.renderBeamShape | (s, pos, fwd, up, right) | Renders ultrasonic/RADAR beam shape as cylinders |
M.drawMouseSphere | (p) | Draws blue sphere at mouse position for sensor placement |
M.renderLocalFrame | (posWS, dir, up) | Renders colored Dir/Up/Right axes with labels |
M.renderSensorBoxAndFrame | (pos, fwd, up, right) | Renders sensor box wireframe with aperture and filled faces |
Code Example
local util = require('editor/tech/sensorConfiguration/utilities')
-- Convert between coordinate frames
local veh = be:getPlayerVehicle(0)
local coeffs = util.posVS2Coeffs(vehicleSpacePos, veh)
local vsPos = util.coeffs2PosVS(coeffs, veh)
local dir, up = util.sensor2VS(sensorDir, sensorUp, veh)
-- Compute beam shape for visualization
local radius = util.computeBeamShapeRadius(5.0, -1.15, 0.3, 0.376)
-- Render sensor debug visuals
util.renderLocalFrame(worldPos, dir, up)
util.renderSensorBoxAndFrame(pos, fwd, up, right)
util.renderBeamShape(sensor, pos, fwd, up, right)
-- Beam shape uses binary search to find radius where:
-- (y/sqrt(distSq + r²)) * (1 - roundness) + roundness = limitCoef * (distSq + r²)^exponent
-- 10 iterations of bisection for convergence
-- Sensor box visualization:
-- Half-extents: 0.15 x 0.15 x 0.15
-- Aperture extends 1.2x forward with colored wireframe + solid triangles
-- Local frame: green=Dir, blue=Up, red=Right (thickness=7)See Also
- Sensor Configuration - Conversions - Related reference
- World Editor Guide - Guide
Sensor Configuration - Conversions
Handles creation and lifecycle management of live sensors (Camera, LiDAR, Ultrasonic, RADAR, IMU, GPS, etc.) for the sensor configuration editor, including coordinate conversions between vehicle space
Terraform - Fetch Sources
Collects terraforming sources (roads, splines) from the scene within a polygon or selection, converting them to a standardized format for the terraform engine.