VE Lua Documentation

Press F to search!

inverseLerp

Definition


-- @/lua/common/mathlib.lua:1197

function inverseLerp(from, to, value)
  local dif = to - from
  return abs(dif) > 1e-60 and (value - from) / dif or 0
end

Callers

@/lua/ge/extensions/scenario/raceMarkers/overhead.lua

local function inverseLerp(min, max, value)
 if math.abs(max - min) < 1e-30 then return min end
  self.currentColor = ColorF(color[1],color[2],color[3],color[4] or 1)
  self.currentColor.a = self.currentColor.a * (clamp(inverseLerp(self.fadeNear,self.fadeFar,distanceFromMarker),0,1))
@/gameplay/missionTypes/collection/customNodes/collectionMarkersNode.lua
      local dist = (cameraPos - pos):length()
      local r = clamp(inverseLerp(40, 400, dist),0,1)
      local c = clamp(inverseLerp(1, 100, dist),0,1)
      local r = clamp(inverseLerp(40, 400, dist),0,1)
      local c = clamp(inverseLerp(1, 100, dist),0,1)
      debugDrawer:drawCylinder(pos + vec3(0,0,-100), pos + vec3(0,0,1000), lerp(0.1, 2, r), ColorF(0.5+0.5*clr[1],0.5+0.5*clr[2],0.5+0.5*clr[3],lerp(0.00, 0.3, c)))
@/lua/ge/extensions/scenario/raceMarkers/crawlMarker.lua

local function inverseLerp(min, max, value)
 if math.abs(max - min) < 1e-30 then return min end
  self.currentColor = ColorF(color[1],color[2],color[3],color[4] or 1)
  self.currentColor.a = self.currentColor.a * (clamp(inverseLerp(self.fadeNear,self.fadeFar,distanceFromMarker),0,1))
        else
          targetAlpha = clamp(inverseLerp(200.0, 300.0, distanceFromMarker), 0, 1)
        end
        else
          columnHeight = lerp(50.0, 200.0, clamp(inverseLerp(200.0, 1200.0, distanceFromMarker), 0, 1))
        end
@/lua/ge/extensions/gameplay/drag/times.lua
        if timer.distance and not timer.isSet and distanceFromOrigin >= timer.distance then
          local t = inverseLerp(prevDistance, distanceFromOrigin, timer.distance)
@/lua/ge/extensions/scenario/raceMarkers/attention.lua

local function inverseLerp(min, max, value)
 if math.abs(max - min) < 1e-30 then return min end
@/lua/ge/extensions/gameplay/markers/bigmapMarker.lua

local function inverseLerp(min, max, value)
 if math.abs(max - min) < 1e-30 then return min end
@/lua/ge/extensions/scenario/raceMarkers/sideColumnMarker.lua

local function inverseLerp(min, max, value)
 if math.abs(max - min) < 1e-30 then return min end
  self.currentColor.z = color.z
  self.currentColor.w = clamp(inverseLerp(self.fadeNear,self.fadeFar,distanceFromMarker),0,0.75) + clamp(self.minAlpha, 0, 0.25)
  end
  local baseHeight = clamp(inverseLerp(10,40,distanceFromMarker),self.radius,self.radius*3)
  base = scenetree.findObjectById(self.baseId)
  local sideRadius = math.max(0.125, distanceFromMarker*0.03)
  local sideHeight = clamp(inverseLerp(60,180,distanceFromMarker),0,20)+1 +clamp(inverseLerp(1800,2040,distanceFromMarker),0,20)
  --debugDrawer:drawTextAdvanced(self.pos, String(string.format("%0.2f -> %0.2f / %0.2f / %0.2f", distanceFromMarker, sideRadius, sideHeight, baseHeight)), ColorF(1,1,1,1), true, false, ColorI(0,0,0,192))
  local sideRadius = math.max(0.125, distanceFromMarker*0.03)
  local sideHeight = clamp(inverseLerp(60,180,distanceFromMarker),0,20)+1 +clamp(inverseLerp(1800,2040,distanceFromMarker),0,20)
  --debugDrawer:drawTextAdvanced(self.pos, String(string.format("%0.2f -> %0.2f / %0.2f / %0.2f", distanceFromMarker, sideRadius, sideHeight, baseHeight)), ColorF(1,1,1,1), true, false, ColorI(0,0,0,192))
@/gameplay/missionTypes/precisionParking/customNodes/parkingPointsNode.lua
  if angle ~= angle then angle = 0 end
  local angleScore = clamp(inverseLerp(7.5,1.6, angle), 0,1)

  local sideScore = clamp(inverseLerp(0.55,0.18,math.abs(self.pinIn.sideDist.value)), 0,1)
  local forwardScore = clamp(inverseLerp(0.75,0.22,math.abs(self.pinIn.forwardDist.value)), 0,1)
  local sideScore = clamp(inverseLerp(0.55,0.18,math.abs(self.pinIn.sideDist.value)), 0,1)
  local forwardScore = clamp(inverseLerp(0.75,0.22,math.abs(self.pinIn.forwardDist.value)), 0,1)
@/lua/ge/extensions/scenario/raceMarkers/sideMarker.lua

local function inverseLerp(min, max, value)
 if math.abs(max - min) < 1e-30 then return min end

  local closeFade = 1--clamp(inverseLerp(closeFadeNear, closeFadeFar, distanceFromMarker - (self.radius+2)),0,1)
  local distantFade = clamp(self.blendTimer / self.blendDuration,0,1)
@/lua/ge/extensions/career/modules/marketplace.lua
        -- Lerp from 1 to 0.4 as ratio goes from 0.98 to 0.85
        local t = math.max(0, math.min(1, inverseLerp(0.98, 0.85, marketRatio)))
        offerTimeMultiplier = lerp(1, 0.4, t)
        -- Lerp from 1 to 4.0 as ratio goes from 1.1 to 1.5
        local t = math.max(0, math.min(1, inverseLerp(1.1, 1.5, marketRatio)))
        offerTimeMultiplier = lerp(1, 4.0, t)
@/lua/ge/extensions/scenario/raceMarkers/singleHologramMarker.lua

local function inverseLerp(min, max, value)
 if math.abs(max - min) < 1e-30 then return min end
  self.columnColor.z = color.z
  self.columnColor.w = clamp(inverseLerp(60,120,distanceFromMarker),0.15,1) * alpha
  local scalarThin = lerp(self.modeInfos[self.oldMode or 'default'].scalarThin, self.modeInfos[self.mode or 'default'].scalarThin, t)
  local sideHeight = clamp(inverseLerp(60,180,distanceFromMarker),0,20)+1 +clamp(inverseLerp(1800,2040,distanceFromMarker),0,20)
  local scalarThin = lerp(self.modeInfos[self.oldMode or 'default'].scalarThin, self.modeInfos[self.mode or 'default'].scalarThin, t)
  local sideHeight = clamp(inverseLerp(60,180,distanceFromMarker),0,20)+1 +clamp(inverseLerp(1800,2040,distanceFromMarker),0,20)
@/lua/ge/extensions/gameplay/markerInteraction.lua

local function inverseLerp(min, max, value)
 if math.abs(max - min) < 1e-30 then return min end
  atParkingSpeedPrev = atParkingSpeed
  return clamp(inverseLerp(parkingSpeedMin*1.25, parkingSpeedMin*0.75, playerVelocity),0,1), atParkingSpeed, atParkingSpeedChanged
end
@/lua/ge/extensions/scenario/raceMarkers/sideHologramMarker.lua

local function inverseLerp(min, max, value)
 if math.abs(max - min) < 1e-30 then return min end
  -- old w color function to fade slightly on distance:
  -- clamp(inverseLerp(self.fadeNear,self.fadeFar,distanceFromMarker),0,0.75) + clamp(self.minAlpha, 0, 0.25)
  self.columnColor.z = color.z
  self.columnColor.w = clamp(inverseLerp(60,120,distanceFromMarker),0.15,1) * alpha
  local sideRadius = math.max(0.125, distanceFromMarker*0.03)
  local sideHeight = clamp(inverseLerp(60,180,distanceFromMarker),0,20)+1 +clamp(inverseLerp(1800,2040,distanceFromMarker),0,20)
  local sideRadius = math.max(0.125, distanceFromMarker*0.03)
  local sideHeight = clamp(inverseLerp(60,180,distanceFromMarker),0,20)+1 +clamp(inverseLerp(1800,2040,distanceFromMarker),0,20)
@/lua/ge/extensions/core/groundMarkers.lua

local function inverseLerp(min, max, value)
 if abs(max - min) < 1e-30 then return min end

    local t = inverseLerp(M.startingStep-from.distToTarget/M.stepDistance, M.startingStep-to.distToTarget/M.stepDistance, i)
    local distFromVehicle = M.startingDist-lerp(from.distToTarget, to.distToTarget, t)
@/lua/ge/extensions/scenario/raceMarkers/cylinderMarker.lua
  local distance = self.pos:distance(camPos)-self.radius/2
  local markerAlpha = clamp(inverseLerp(self.fadeNear,self.fadeFar,distance),0,1)
@/lua/ge/extensions/gameplay/markers/missionMarker.lua

local function inverseLerp(min, max, value)
  if math.abs(max - min) < 1e-30 then return min end
@/lua/ge/extensions/career/modules/delivery/precisionParking.lua
  -- Calculate scores using adaptive thresholds
  local angleScore = clamp(inverseLerp(7.5, 1.6, adjustedAngle), 0, 1)
  local sideScore = clamp(inverseLerp(maxSideTolerance, minSideTolerance, sideDist), 0, 1)
  local angleScore = clamp(inverseLerp(7.5, 1.6, adjustedAngle), 0, 1)
  local sideScore = clamp(inverseLerp(maxSideTolerance, minSideTolerance, sideDist), 0, 1)
  local forwardScore = clamp(inverseLerp(maxForwardTolerance, minForwardTolerance, forwardDist), 0, 1)
  local sideScore = clamp(inverseLerp(maxSideTolerance, minSideTolerance, sideDist), 0, 1)
  local forwardScore = clamp(inverseLerp(maxForwardTolerance, minForwardTolerance, forwardDist), 0, 1)