updateGFX
Definition
-- @/lua/vehicle/hydros.lua:390
local function updateGFX(dt) -- dt in seconds
local invPhysSteps = physicsDt / dt
if virtualWheelEnabled then
electrics.values.steering_input = virtualWheelAngleFun()
end
for k, f in pairs(inputFlex) do
local eval = electrics.values[k]
if eval then
local offset = f.offset
if f.offsetDiff ~= 0 and not(k == "steering_input" and FFBID >= 0 and playerInfo.anyPlayerSeated) then
offset = offset + signApply(f.offsetDiff, min(abs(f.offsetDiff), f.maxRate * dt))
offset = min(max(offset + eval, f.inLimit), f.outLimit) - eval
else
offset = signApply(offset, max(0, abs(offset) - f.minRate * dt))
end
f.offsetDiff = 0
f.offset = offset
f.value = eval + offset
end
end
-- update the source command value
for i = 1, hydroCount do
local h = M.hydros[i]
h.prevstate = h.state
h.cmd = min(max(inputFlex[h.inputSource].value or 0, h.inputInLimit), h.inputOutLimit) * h.inputFactor
-- flex input
if h.forceLimit then
local stress = obj:getBeamStress(h.bcid) * h.inputFactor
local absStress = abs(stress)
if absStress > h.forceLimit then
inputFlex[h.inputSource].offsetDiff = inputFlex[h.inputSource].offsetDiff + signApply(stress, absStress - h.forceLimit) / (v.data.beams[h.bcid].beamSpring * min(h.multOut, h.multIn))
end
end
if h.cmd == h.inputCenter and h.analogue == false and h.autoCenterRate then
-- set autocenter rate
h._inrate, h._outrate = h.autoCenterRate * physicsDt, h.autoCenterRate * physicsDt
else
h._inrate, h._outrate = h.inRate * physicsDt, h.outRate * physicsDt
end
if h.cmd >= h.inputCenter then
h.cmd = h.cOut + h.cmd * h.multOut
else
h.cmd = h.cIn + h.cmd * h.multIn
end
h.smoothrate = abs(h.state - h.cmd) * invPhysSteps
end
if FFBHydrosExist then
local FFBhcount = 0
local hydroPos = 0
local simWheelPos = 0
for i, h in ipairs(FFBHydros) do
h._inrate, h._outrate = h.inRate * physicsDt, h.outRate * physicsDt
local hbcid = h.bcid
if not h.fIsBroken(obj, hbcid) then
FFBhcount = FFBhcount + 1
hydroPos = hydroPos + toInputSpace(h, h.fgetDisplacement(obj, hbcid) * h.invFFBHydroRefL)
simWheelPos = simWheelPos + toInputSpace(h, h.state)
end
end
local invDt = 1 / (dt + 1e-30)
dtInternal = 0
local y0 = y1
local invFFBCount = 1 / max(1, FFBhcount)
y1, hydroPos = simWheelPos * invFFBCount, hydroPos * invFFBCount
local prevy2R, prevPredy2 = y2R, y2
y2 = electrics.values.steering_input or 0 -- current pos
y2R = y2
local predDelta = y2R - prevy2R
if (hydroPos - y2R) * predDelta >= 0 then
local pred = min(max(predDelta / (prevPredy2 - prevy2R), 0), 1) * predDelta * dt / (prevdt + 1e-10)
y2 = y2R + sign(pred) * max(abs(pred) - overshoot, 0)
end
overshoot = 0
local wheelvel = (y2 - prevPredy2) * invDt
local delta2 = wheelvel
local delta0 = (y1-y0) / (prevdt + 1e-30)
local delta1 = (y2-y1) * invDt
m1 = (sign(delta0)+sign(delta1)) * min(abs(delta0),abs(delta1), 0.5*abs((dt*delta0 + prevdt*delta1) / (prevdt + dt + 1e-30)))
local m2 = (sign(delta1)+sign(delta2)) * min(abs(delta1), abs(delta2), 0.25*abs(delta1 + delta2))
delta1m1 = delta1 - m1
delta1m1m2 = m1 + m2 - 2*delta1
prevdt = dt
GforceVelCoef = min(1, 1/(abs(wheelvel) + 1))
M.curForceLimit = curForceLimitSmoother:getWithRate(M.wheelFFBForceLimit, obj:getRealdt(), 1) -- ffb spike preventer after spawn/reload/pause/etc. uses dtReal, since this safety smoother is intended to follow wall time
local speedT = max(electrics.values.airspeed, abs(electrics.values.wheelspeed)) / ffbSpeedFast
M.wheelFFBForceCoefCurrent = lerp(M.wheelFFBForceCoefLowSpeed, M.wheelFFBForceCoef, clamp(speedT, 0, 1)) -- approach maxForce as we get closer to the fast speed threshold
if ai.isDriving() then
M.wheelFFBForceCoefCurrent = 0 -- free up the wheel while AI is driving
FFBsmooth:set(0)
curForceLimitSmoother:set(0)
end
end
-- update electrics steering
if steeringHydro then
electrics.values.steering = -toInputSpace(steeringHydro, steeringHydro.state) * v.data.input.steeringWheelLock
end
if M.enableFFB and M.enableVibration and playerInfo.anyPlayerSeated then
vibrationUpdate(dt)
end
ffbDuringCurFrame = false
end
Callers
@/lua/vehicle/controller/advancedCouplerControl.lua
local function updateGFX(dt)
if couplerGroup.spawnSoundDelayTimer > 0 then
@/lua/vehicle/controller/tech/MQTToutput.lua
local function updateGFX(dt)
updateData(dt)
@/lua/vehicle/powertrain/hydraulicPump.lua
local function updateGFX(device, dt)
for _, consumer in ipairs(device.connectedConsumers) do
for _, consumer in ipairs(device.connectedConsumers) do
consumer:updateGFX(device.accumulatorPressure, dt)
end
@/lua/vehicle/extensions/tech/advancedIMU.lua
local function updateGFX(dtSim)
for sensorId, _ in pairs(advancedIMUs) do
@/lua/vehicle/extensions/tech/idealRADARSensor.lua
local function updateGFX(dtSim)
for sensorId, _ in pairs(idealRADARs) do
@/lua/vehicle/controller/controlModes.lua
local function updateGFX(dt)
inputs.steering = input.steering
@/lua/vehicle/controller/powertrainControl/rimPullControl.lua
local function updateGFX(dt)
--read the rim pull input from the relevant axis action
@/lua/vehicle/controller/gauges/analogOdometer.lua
local function updateGFX(dt)
updateTimer = updateTimer + dt
@/lua/vehicle/controller/drivingDynamics/supervisors/components/awdControl.lua
local function updateGFX(dt)
end
local function updateGFXDebug(dt)
updateGFX(dt)
@/lua/vehicle/electrics.lua
local function updateGFX(dt)
updateIgnitionStarterHandler(dt)
customValueParser.updateGFX(dt)
@/lua/vehicle/extensions/dynoClient.lua
local function updateGFX(dt)
if not dynoObjectID then return end
@/lua/vehicle/extensions/tech/CANBus/ProjectBavariaController.lua
local function updateGFX(dt)
if playerInfo.firstPlayerSeated then
@/lua/vehicle/controller/hydraulics/electricHydraulics.lua
local function updateGFX(dt)
local motorThrottle = 0
@/lua/vehicle/wheels.lua
local function updateGFX(dt)
updateThermalsGFXMethod(dt)
@/lua/vehicle/powertrain/combustionEngine.lua
local function updateGFX(device, dt)
device:updateFuelUsage()
device.turbocharger.updateGFX(dt)
device.supercharger.updateGFX(dt)
device.turbocharger.updateGFX(dt)
device.supercharger.updateGFX(dt)
device.nitrousOxideInjection.updateGFX(dt)
device.supercharger.updateGFX(dt)
device.nitrousOxideInjection.updateGFX(dt)
device.thermals.updateGFX(dt)
@/lua/vehicle/controller/braking/compressionBrake.lua
local function updateGFX(dt)
local compressionBrakeCoefActual = compressionBrakeCoef * (1 - sign(controlledEngine.requestedThrottle))
@/lua/vehicle/props.lua
local function updateGFX()
local evals = electrics.values
@/lua/vehicle/extensions/tech/CANBus/ProjectBavariaShifter.lua
local function updateGFX(dt)
if playerInfo.firstPlayerSeated then
@/lua/vehicle/main.lua
lastDt = dtSim
sensors.updateGFX(dtSim) -- must be before input and ai
mapmgr.sendTracking() -- must be before ai
mapmgr.sendTracking() -- must be before ai
wheels.updateGFX(dtSim)
ai.updateGFX(dtSim) -- must be before input and after wheels
wheels.updateGFX(dtSim)
ai.updateGFX(dtSim) -- must be before input and after wheels
input.updateGFX(dtSim) -- must be as early as possible
ai.updateGFX(dtSim) -- must be before input and after wheels
input.updateGFX(dtSim) -- must be as early as possible
electrics.updateGFX(dtSim)
input.updateGFX(dtSim) -- must be as early as possible
electrics.updateGFX(dtSim)
controller.updateGFX(dtSim)
electrics.updateGFX(dtSim)
controller.updateGFX(dtSim)
electrics.updateGFXSecondStep(dtSim)
extensions.hook("updateGFX", dtSim) -- must be before drivetrain, hydros and after electrics
hydros.updateGFX(dtSim) -- must be early for FFB, but after (input, electrics) and before props
powertrain.updateGFX(dtSim)
hydros.updateGFX(dtSim) -- must be early for FFB, but after (input, electrics) and before props
powertrain.updateGFX(dtSim)
energyStorage.updateGFX(dtSim)
powertrain.updateGFX(dtSim)
energyStorage.updateGFX(dtSim)
drivetrain.updateGFX(dtSim)
energyStorage.updateGFX(dtSim)
drivetrain.updateGFX(dtSim)
beamstate.updateGFX(dtSim) -- must be after drivetrain
drivetrain.updateGFX(dtSim)
beamstate.updateGFX(dtSim) -- must be after drivetrain
protocols.updateGFX(dtSim)
beamstate.updateGFX(dtSim) -- must be after drivetrain
protocols.updateGFX(dtSim)
sounds.updateGFX(dtSim)
protocols.updateGFX(dtSim)
sounds.updateGFX(dtSim)
thrusters.updateGFX() -- should be after extensions.hook
sounds.updateGFX(dtSim)
thrusters.updateGFX() -- should be after extensions.hook
if playerInfo.firstPlayerSeated then
damageTracker.updateGFX(dtSim)
end
props.updateGFX() -- must be after hydros
material.updateGFX()
props.updateGFX() -- must be after hydros
material.updateGFX()
fire.updateGFX(dtSim)
material.updateGFX()
fire.updateGFX(dtSim)
recovery.updateGFX(dtSim)
fire.updateGFX(dtSim)
recovery.updateGFX(dtSim)
powertrain.updateGFXLastStage(dtSim)
@/lua/vehicle/extensions/odometer.lua
local function updateGFX(dt)
relativeOdometer = relativeOdometer + abs(electrics.values.wheelspeed or 0) * dt
@/lua/vehicle/controller/beaconSpin.lua
local function updateGFX(dt)
electrics.values[electricsName] = electrics.values.lightbar > 0 and ((electrics.values[electricsName] + (dt * beaconSpeed)) % 360) or 0 --this needs to be 0 as otherwise the spotlights stay turned on :|
@/lua/vehicle/controller.lua
local function updateGFX(dt)
for i = 1, gfxUpdateCount, 1 do
if controller.updateGFX ~= nil then
print(" sortedControllers[" .. i .. "].updateGFX(dt) -- " .. tostring(controller.typeName))
end
@/lua/vehicle/extensions/tech/CANBus/CANBusPeak.lua
local function updateGFX(dt)
if M.isConnected and next(canMessageCallbacks) ~= nil then
@/lua/ge/extensions/util/export.lua
local function updateGFX(dt)
if lastMeshInfo and lastMeshInfo.dataIsReady then
@/lua/ge/map.lua
local function updateGFX(dtReal, dtSim)
if dtSim > 0 then
@/lua/vehicle/extensions/escCalibration.lua
local function updateGFX(dt)
if skewStiffnessTestState == idleState then
@/lua/vehicle/extensions/tech/tyreBarrier.lua
local function updateGFX(dtSim)
if IMUcontroller ~= nil then
@/lua/vehicle/extensions/vehiclePerformanceData.lua
local function updateGFX(dt)
--iterate active recordings and execute the update method
@/lua/vehicle/controller/braking/brakedDifferentialSteering.lua
local function updateGFX(dt)
local steering = electrics.values.steering_input or 0
@/lua/vehicle/controller/controllerTemplate.lua
local function updateGFX(dt)
end
@/lua/vehicle/controller/drivingDynamics/actuators/electronicSplitShaftLock.lua
local function updateGFX(dt)
if not controlParameters.isEnabled then
local function updateGFXDebug(dt)
updateGFX(dt)
@/lua/vehicle/energyStorage.lua
local function updateGFX(dt)
for i = 1, storageCount, 1 do
if storage.updateGFX then
storage:updateGFX(dt)
end
@/lua/vehicle/controller/driveModes.lua
local function updateGFX(dt)
for _, buttonData in pairs(simpleControlButtons) do
@/lua/vehicle/powertrain/sequentialGearbox.lua
local function updateGFX(device, dt)
if device.targetGearIndex then
@/lua/vehicle/controller/inputOutputDemo.lua
--If you overload this method performance wise, fps will drop gracefully, so disk IO and other heavily unpredictable things are done/triggered from here (or user input)
local function updateGFX(dt)
LogInterestingData()
@/lua/vehicle/extensions/tech/powertrainSensor.lua
local function updateGFX(dtSim)
for sensorId, _ in pairs(powertrains) do
@/lua/vehicle/controller/drivingDynamics/sensors/virtualSensors.lua
local function updateGFX(dt)
end
local function updateGFXDebug(dt)
updateGFX(dt)
local virtual = M.virtual
@/lua/vehicle/powertrain/nitrousOxideInjection.lua
local function updateGFX(dt)
if assignedEngine.engineDisabled then
@/lua/vehicle/controller/propAnimation/sequentialLever.lua
local function updateGFX(dt)
if not relevantGearbox then
@/lua/vehicle/controller/drivingDynamics/supervisors/components/brakeControl.lua
local function updateGFX(dt)
electrics.values.isYCBrakeActive = isYCBrakeActive and 1 or 0
local function updateGFXDebug(dt)
updateGFX(dt)
@/lua/vehicle/extensions/inputAnalyzer.lua
local function updateGFX(dt)
inputCheckTimer = inputCheckTimer + dt
@/lua/vehicle/extensions/aeroDebug.lua
local function updateGFX(dt)
if not isEnabled then
@/lua/vehicle/powertrain/manualGearbox.lua
local function updateGFX(device, dt)
--local gearIndex = device.grindingShiftTargetIndex or device.gearIndex
@/lua/vehicle/controller/lineLock.lua
local function updateGFX(dt)
electrics.values[electricsName] = lineLockActive
@/lua/vehicle/powertrain/turbocharger.lua
local function updateGFX(dt)
--Some verification stuff
@/lua/vehicle/controller/sbrGauges.lua
local function updateGFX(dt)
updateTimer = updateTimer + dt
@/lua/vehicle/powertrain/combustionEngineThermals.lua
local function updateGFX(dt)
updateCoolingGFXMethod(dt)
@/lua/vehicle/protocols.lua
local function updateGFX(dtSim)
if not playerInfo.firstPlayerSeated then return end
@/lua/vehicle/energyStorage/fuelTank.lua
local function updateGFX(storage, dt)
storage.remainingVolume = storage.storedEnergy / (storage.fuelLiquidDensity * storage.energyDensity)
@/lua/vehicle/controller/propAnimation/dualAxisLever.lua
local function updateGFX(dt)
updateTargetQueue(dt)
@/lua/vehicle/controller/pneumatics/liftAxleControl.lua
local function updateGFX(dt)
if currentMode == modes.drop then
@/lua/vehicle/extensions/utRecorder.lua
local function updateGFX(dt)
local pos = obj:getPosition()
@/lua/vehicle/extensions/telemetryLogger.lua
local function updateGFX(dt)
if not isRecording then
@/lua/vehicle/extensions/tech/LINBus/LINBusPeak.lua
local function updateGFX(dt)
if M.isConnected then
@/lua/vehicle/controller/tech/screens.lua
local function updateGFX(dt)
end
@/lua/vehicle/extensions/advancedwheeldebug.lua
local function updateGFX(dt)
if not isDebugEnabled then
@/lua/vehicle/controller/propAnimation/hPattern.lua
local function updateGFX(dt)
if not relevantGearbox and not demoMode then
@/lua/vehicle/extensions/cruiseControl.lua
local function updateGFX(dt)
if not isEnabled then
@/lua/vehicle/extensions/api.lua
local function updateGFX()
httpJsonServer.update()
@/lua/vehicle/controller/braking/transbrake.lua
local function updateGFX(dt)
electrics.values[electricsName] = gearbox.lockCoef == 0
@/lua/vehicle/ai.lua
M.updateGFX = nop
local function updateGFX(dtGFX)
dt = dtGFX
@/lua/vehicle/controller/sound/reverseWarn.lua
local function updateGFX(dt)
tick = tick + dt
@/lua/vehicle/controller/dragTimer.lua
local function updateGFX(dt)
end
@/lua/vehicle/controller/hydraulics/hydraulicTrailerFeet.lua
local function updateGFX(dt)
local currentPosition = feetCylinder.currentExtendPercent
@/lua/vehicle/controller/gauges/genericGauges.lua
local function updateGFX(dt)
updateTimer = updateTimer + dt
@/lua/vehicle/thrusters.lua
local invalidThrusterControlWarned
local function updateGFX()
table.clear(thrusterState)
@/lua/vehicle/controller/drivingDynamics/sensors/vehicleData.lua
local function updateGFX(dt)
end
local function updateGFXDebug(dt)
updateGFX(dt)
@/lua/vehicle/energyStorage/n2oTank.lua
local function updateGFX(storage, dt)
storage.remainingMass = storage.storedEnergy / storage.energyDensity
@/lua/vehicle/extensions/perfectLaunch.lua
local function updateGFX(dt)
if state == "idle" then
straightLine.updateGFX(dt)
end
@/lua/vehicle/controller/beamNavigator.lua
local function updateGFX(dt)
updateTimer = updateTimer + dt
@/lua/vehicle/controller/esc.lua
local function updateGFX(dt)
warningLightsTimer = warningLightsTimer + dt
@/lua/vehicle/fire.lua
local function updateGFX(dt)
local rand = random(1) --use the same random value for all effects in this frame
@/lua/vehicle/controller/etkGauges.lua
local function updateGFX(dt)
if not uiIsReady then
@/lua/vehicle/powertrain/automaticGearbox.lua
local function updateGFX(device, dt)
--interpolate gear ratio to simulate the opening/closing clutches of the auto gearbox
@/lua/vehicle/extensions/tech/dumpPlayerInput.lua
-- this is called every frame
local function updateGFX(dt)
if not f then return end
@/lua/vehicle/controller/gauges/customModules/electricMotorData.lua
local function updateGFX(dt)
end
@/lua/vehicle/powertrain/compressor.lua
local function updateGFX(device, dt)
if streams.willSend("pneumaticsData") then
@/lua/vehicle/controller/braking/hydraulicPumpBrake.lua
local function updateGFX(dt)
--the engine technically runs the hydraulic pump for the brakes, so no spinning engine means no brake pressure
@/lua/vehicle/controller/axleLift.lua
local function updateGFX(dt)
local frontPos = frontRaisedPosition
@/lua/vehicle/controller/braking/adaptiveBrakeLights.lua
local function updateGFX(dt)
local brakeValue = electrics.values.brake or 0
@/lua/vehicle/controller/drivingDynamics/actuators/activeDiffLock.lua
local function updateGFX(dt)
if not controlParameters.isEnabled then
local function updateGFXDebug(dt)
updateGFX(dt)
@/lua/vehicle/controller/powertrainControl/antiLag.lua
local function updateGFX(dt)
local throttle = electrics.values.throttle
@/lua/vehicle/controller/lightbar.lua
-- @param dt: Delta time since last frame in seconds
local function updateGFX(dt)
-- Skip if lightbar system isn't active
@/lua/vehicle/controller/vehicleController/vehicleController.lua
--drivingStrategy.core.updateGFX(dt)
@/lua/vehicle/controller/gauges/customModules/environmentData.lua
local function updateGFX(dt)
end
@/lua/vehicle/energyStorage/pressureTank.lua
local function updateGFX(storage, dt)
-- calculate pressure from stored energy and capacity: PV = nRT, e = nRT, therefore PV = e and P = e / V
@/lua/vehicle/powertrain/electricMotor.lua
local function updateGFX(device, dt)
device:updateEnergyUsage()
@/lua/vehicle/controller/drivingDynamics/supervisors/components/diffControl.lua
local function updateGFX(dt)
end
local function updateGFXDebug(dt)
updateGFX(dt)
@/lua/vehicle/powertrain/electricServo.lua
local function updateGFX(device, dt)
--note: this method is only executed if any electrics name for the target angle is set
@/lua/vehicle/controller/propAnimation/googlyEyes.lua
local function updateGFX(dt)
local sizeCoef = linearScale(sensors.gz, 0, defaultGravity * gravityMaxSizeCoef, maxSizeCoef, minSizeCoef)
@/lua/vehicle/controller/wendoverGauges.lua
local function updateGFX(dt)
updateTimer = updateTimer + dt
@/lua/vehicle/controller/gauges/customModules/accelerationData.lua
local function updateGFX(dt)
end
@/lua/vehicle/extensions/core/quickAccess.lua
local function updateGFX(dt)
if actionCallbackCountdown then
@/lua/vehicle/controller/pyrotechnicCharge.lua
local function updateGFX(dt)
if not hasTriggered then
@/lua/vehicle/controller/drivingDynamics/supervisors/tractionControl.lua
local function updateGFX(dt)
isActiveSmoothed = isActiveSmoother:getUncapped(tractionControlActive and 1 or 0, dt)
local function updateGFXDebug(dt)
updateGFX(dt)
@/lua/vehicle/material.lua
local function updateGFX()
-- check for changes
@/lua/vehicle/controller/linearActuators/linearActuatorTrailerFeet.lua
local function updateGFX(dt)
local currentPosition = actuator.currentExtendPercent
@/lua/vehicle/controller/sound/airbrakes.lua
local function updateGFX(dt)
local brake = electrics.values[electricsBrakeName] or 0
@/lua/vehicle/controller/gauges/customModules/dynamicRedlineData.lua
local function updateGFX(dt)
end
@/lua/vehicle/controller/braking/postCrashBrake.lua
local function updateGFX(dt)
if state == "idle" then
@/lua/vehicle/extensions/tech/CANBus/RacingDisplay.lua
local function updateGFX(dt)
if playerInfo.firstPlayerSeated then
@/lua/vehicle/powertrain.lua
local function updateGFX(dt)
M.currentGravity = obj:getGravity()
if device.updateGFX then
device:updateGFX(dt)
end
@/lua/vehicle/electricsCustomValueParser.lua
local function updateGFX(dt)
--copy our main electrics into the sandboxed environment
@/lua/vehicle/powertrain/supercharger.lua
local function updateGFX(dt)
-- Some verification stuff
@/lua/vehicle/powertrain/genericTorqueProvider.lua
local function updateGFX(device, dt)
device.outputRPM = device.outputAV1 * avToRPM
@/lua/vehicle/powertrain/frictionClutch.lua
local function updateGFX(device, dt)
local kClutchToBellHousing = 30
@/lua/vehicle/extensions/tech/wheelForces.lua
local function updateGFX()
end
@/lua/vehicle/controller/powertrainControl/activeCenterDiff.lua
local function updateGFX(dt)
end
@/lua/vehicle/controller/pneumatics/actuators.lua
local function updateGFX(dt)
for _, g in pairs(crossFlowGroups) do
@/lua/vehicle/controller/dummy.lua
local function updateGFX(dt)
electrics.values.throttle = math.min(math.max(input.throttle or 0, 0), 1)
@/lua/vehicle/energyStorage/electricBattery.lua
local function updateGFX(storage, dt)
storage:setStoredEnergy(storage.storedEnergy)
@/lua/vehicle/controller/vivaceGauges.lua
local function updateGFX(dt)
updateTimer = updateTimer + dt
@/lua/vehicle/extensions/scenario/shiftBooster.lua
local function updateGFX(dt)
if boostTime > 0.01 then
@/lua/vehicle/controller/drivingDynamics/actuators/activeCenterDiffLock.lua
local function updateGFX(dt)
if not controlParameters.isEnabled then
local function updateGFXDebug(dt)
updateGFX(dt)
@/lua/vehicle/extensions/gameplayInterface.lua
local function updateGFX(dt)
checkValueChangeNotificationMethod(dt)
@/lua/vehicle/extensions/dynamicVehicleData.lua
local function updateGFX(dt)
timer = timer + dt
@/lua/vehicle/powertrain/hydraulicCylinder.lua
local function updateGFX(cylinder, dt)
local valvePosition = electrics.values[cylinder.directionElectricsName] or 0
@/lua/vehicle/controller/sound/AVAS.lua
local function updateGFX(dt)
local gear = electrics.values.gear
@/lua/vehicle/controller/hydraulicSuspension.lua
local function updateGFX(dt)
if currentPumpFlow > 0 then
@/lua/vehicle/controller/gauges/customModules/navigationData.lua
local function updateGFX(dt)
end
@/lua/vehicle/controller/gauges/customModules/tireData.lua
local function updateGFX(dt)
end
@/lua/vehicle/extensions/straightLine.lua
local function updateGFX(dt)
if baseTargetPos then
@/lua/vehicle/extensions/tech/CANBus/ButtonBox.lua
local function updateGFX(dt)
if playerInfo.firstPlayerSeated then
@/lua/vehicle/controller/playerController.lua
local function updateGFX(dt)
ballGroundContactNodesPast, ballGroundContactNodesNew = ballGroundContactNodesNew, ballGroundContactNodesPast
@/lua/vehicle/extensions/dragAi.lua
local function updateGFX(dt)
if state == "ready" then
@/lua/vehicle/extensions/tech/platooning.lua
local function updateGFX(dtSim)
@/lua/vehicle/powertrain/centrifugalClutch.lua
local function updateGFX(device, dt)
local kClutchToHousing = 20
@/lua/vehicle/extensions/mqttGrafanaDemo.lua
local function updateGFX(dt)
if not client then return end
@/lua/vehicle/controller/drivingDynamics/actuators/electronicDiffLock.lua
local function updateGFX(dt)
if not controlParameters.isEnabled then
local function updateGFXDebug(dt)
updateGFX(dt)
@/lua/vehicle/sounds.lua
local function updateGFX(dt)
--crash sounds
@/lua/vehicle/extensions/tech/roadsSensor.lua
local function updateGFX(dtSim)
for sensorId, _ in pairs(roadsSensors) do
@/lua/vehicle/extensions/tech/mesh.lua
local function updateGFX(dtSim)
for sensorId, _ in pairs(meshes) do
@/lua/vehicle/extensions/tech/ACC.lua
local function updateGFX(dtSim)
@/lua/vehicle/controller/couplings/fifthwheel.lua
local function updateGFX(dt)
--print(state)
@/lua/ge/extensions/core/input/bindings.lua
local wasWalking
local function updateGFX(dtRaw)
if filechangeTimeout then
@/lua/vehicle/controller/twoStepLaunch.lua
local function updateGFX(dt)
if twoStepState == "idle" then
@/lua/vehicle/extensions/vehicleStatsLogger.lua
local function updateGFX(dt)
if not doLogging then
@/lua/vehicle/powertrain/hydraulicAccumulator.lua
local function updateGFX(device, dt)
for _, consumer in ipairs(device.connectedConsumers) do
for _, consumer in ipairs(device.connectedConsumers) do
consumer:updateGFX(device.accumulatorPressure, dt)
end
@/lua/vehicle/controller/4wd.lua
local function updateGFX(dt)
electrics.values.modeRangeBox = rangeBox and (rangeBox.mode == "low" and 1 or 0) or 0
@/lua/vehicle/extensions/debug/advancedExternalDebug.lua
local function updateGFX(dt)
mainDebugPacket.isActiveVehicle = playerInfo.firstPlayerSeated
@/lua/vehicle/controller/pneumatics/airbrakes.lua
local function updateGFX(dt)
updateSounds(dt)
@/lua/vehicle/controller/drivingDynamics/supervisors/slipProviders/virtualSpeedSlip.lua
local function updateGFX(dt)
end
local function updateGFXDebug(dt)
updateGFX(dt)
@/lua/vehicle/controller/airplaneSurfaces.lua
local function updateGFX(dt)
local rudder = input.rudder or 0
@/lua/vehicle/controller/drivingDynamics/supervisors/components/aeroControl.lua
local function updateGFX(dt)
end
local function updateGFXDebug(dt)
updateGFX(dt)
@/lua/vehicle/controller/drivingDynamics/CMU.lua
local function updateGFX(dt)
checkForRollOverAndCrash(dt)
local function updateGFXDebugNotEnabled(dt)
updateGFX(dt)
local function updateGFXDebugEnabled(dt)
updateGFX(dt)
@/lua/vehicle/controller/pneumatics.lua
local function updateGFX(dt)
for _, g in pairs(beamGroups) do
@/lua/vehicle/extensions/gameplayStatistic.lua
local function updateGFX(dt)
if lenstatSchedule > 0 then
@/lua/vehicle/controller/nitrousOxideInjection.lua
local function updateGFX(dt)
local tankRatio = engine.nitrousOxideInjection.getTankRatio()
@/lua/vehicle/controller/sound/linearMovement.lua
local function updateGFX(dt)
--get the current length of our sensor beam
@/lua/vehicle/controller/jato.lua
local function updateGFX(dt)
local jatoInput = min(electrics.values.jatoInput or 0, 1)
@/lua/vehicle/controller/pneumatics/lowAirPressureWarning.lua
local function updateGFX(dt)
local pressure = relevantPressureTank and relevantPressureTank.currentPressure or 0
@/lua/vehicle/beamstate.lua
local function updateGFX(dt)
-- Planet timers
@/lua/vehicle/extensions/gameplayInterfaceModules/interactCargoContainers.lua
local anyContainerNeedsUpdate = false
local function updateGFX(dtSim)
anyContainerNeedsUpdate = false
@/gameplay/missionTypes/hypermiling/fluidConsumptionToGraph.lua
local function updateGFX(dtSim)
updateTimer = updateTimer + dtSim
@/lua/vehicle/sensors.lua
local function updateGFX(dt)
local ffisensors = M.ffiSensors
@/lua/vehicle/extensions/tech/GPS.lua
local function updateGFX(dtSim)
for sensorId, _ in pairs(GPSs) do
@/lua/vehicle/controller/drivingDynamics/supervisors/components/motorTorqueControl.lua
local function updateGFX(dt)
end
local function updateGFXDebug(dt)
updateGFX(dt)
@/lua/vehicle/controller/drivingDynamics/supervisors/yawControl.lua
local function updateGFX(dt)
isActiveSmoothed = isActiveSmoother:getUncapped(yawControlActive and 1 or 0, dt)
local function updateGFXDebug(dt)
updateGFX(dt)
@/lua/vehicle/controller/drivingDynamics/actuators/activeDiffBias.lua
local function updateGFX(dt)
if not controlParameters.isEnabled then
local function updateGFXDebug(dt)
updateGFX(dt)
@/lua/vehicle/extensions/tech/OBDEmulator.lua
local function updateGFX(dt)
if playerInfo.firstPlayerSeated then
@/lua/vehicle/input.lua
local lockTypeWarned
local function updateGFX(dt)
gxSmoothMax = gx_Smoother:getUncapped(0, dt)
@/lua/ge/main.lua
if geluaProfiler then geluaProfiler:start() end
map.updateGFX(dtReal, dtSim)
if geluaProfiler then geluaProfiler:add("luaPreRender map update") end
extensions.core_input_bindings.updateGFX(dtRaw)
simTimeAuthority.update(dtReal)
@/lua/vehicle/controller/tirePressureControl.lua
local function updateGFX(dt)
pEnv = obj:getEnvPressure()
@/lua/vehicle/controller/shiftLights.lua
local function updateGFX(dt)
local rpm = electrics.values[inputElectricsName]
@/lua/vehicle/extensions/core/booster.lua
local function updateGFX(dtSim)
local planets = {}
@/lua/vehicle/extensions/escMeasurement.lua
local function updateGFX(dt)
if workerCoroutine ~= nil then
@/lua/vehicle/extensions/tech/CANBus/ProjectBavariaKombi.lua
local function updateGFX(dt)
if playerInfo.firstPlayerSeated then
@/lua/vehicle/controller/loggerTemplate.lua
-- If you overload this method performance wise, fps will drop gracefully, so disk IO and other heavily unpredictable things are done/triggered from here (or user input)
local function updateGFX(dt)
logInterestingData()
@/lua/vehicle/extensions/simpleTripApp.lua
local function updateGFX(dtSim)
local dtReal = obj:getRealdt()
@/lua/vehicle/controller/drivingDynamics/supervisors/yawProviders/STMEstimate.lua
local function updateGFX(dt)
end
local function updateGFXDebug(dt)
updateGFX(dt)
@/lua/vehicle/controller/propAnimation/singleAxisLever.lua
local function updateGFX(dt)
local gearModeIndex = electrics.values.gearModeIndex or 0
@/lua/vehicle/controller/gauges/customModules/combustionEngineData.lua
local function updateGFX(dt)
end
@/lua/vehicle/controller/drivingDynamics/sensors/sensorHub.lua
local function updateGFX(dt)
--print(M.accNoiseX + M.accNoiseY + M.accNoiseZ)
local function updateGFXDebug(dt)
updateGFX(dt)