getTerrain
Definition
-- @/lua/ge/extensions/core/terrain.lua:9
local function getTerrain()
local terrain = terrainId and scenetree.findObjectById(terrainId)
if not terrain then
local terrains = scenetree.findClassObjects("TerrainBlock")
if next(terrains) then
terrain = scenetree.findObject(terrains[1])
terrainId = terrain:getId()
end
end
return terrain
end
Callers
@/lua/ge/extensions/util/forestGenerator.lua
if core_terrain.getTerrain() then
data.pos.z = core_terrain.getTerrainHeight(data.pos)
if core_terrain.getTerrain() then
data.pos.z = core_terrain.getTerrainHeight(data.pos)
@/lua/ge/extensions/flowgraph/nodes/gameplay/decalLine.lua
-- if self.data.snapToTerrain and core_terrain and core_terrain.getTerrain() then
-- data.position.z = core_terrain.getTerrainHeight(data.position)
@/gameplay/missionTypes/scatterPickup/customNodes/scatterStuffInZonesNode.lua
local z = zone.center.z
if core_terrain.getTerrain() and core_terrain.getTerrainHeight(blue) > 0 then
z = core_terrain.getTerrainHeight(blue)
@/lua/ge/extensions/core/cameraModes/bigMap.lua
local function getRayCastHit(ray, relativeToCam)
local dist = intersectsRay_Plane(ray.pos, ray.dir, core_terrain.getTerrain() and core_terrain.getTerrain():getWorldBox().minExtents or vec3(0,0,0), vec3(0,0,1))
local hitPoint = ray.pos + ray.dir * dist
local function getRayCastHit(ray, relativeToCam)
local dist = intersectsRay_Plane(ray.pos, ray.dir, core_terrain.getTerrain() and core_terrain.getTerrain():getWorldBox().minExtents or vec3(0,0,0), vec3(0,0,1))
local hitPoint = ray.pos + ray.dir * dist
@/lua/ge/extensions/editor/api/roadRiver.lua
road:setField("material", 0, "BlankWhite")
if not core_terrain.getTerrain() then
road:setField("overObjects", 0, "true")
@/lua/ge/extensions/core/terrain.lua
local function getTerrainHeight(point)
local terrain = getTerrain()
if terrain then
local function getTerrainNormal(point)
local terrain = getTerrain()
if terrain then
local function getTerrainSmoothNormal(point)
local terrain = getTerrain()
if terrain then
@/lua/ge/extensions/flowgraph/nodes/gameplay/decalCircle.lua
-- if self.data.snapToTerrain and core_terrain and core_terrain.getTerrain() then
-- data.position.z = core_terrain.getTerrainHeight(data.position)
@/lua/ge/extensions/core/multiSpawn.lua
pos.z = z
elseif core_terrain.getTerrain() then
pos.z = core_terrain.getTerrainHeight(pos)
@/lua/ge/extensions/gameplay/traffic/vehicle.lua
local isDaytime = self:checkTimeOfDay()
local terrainHeight = core_terrain.getTerrain() and core_terrain.getTerrainHeight(self.pos) or 0
local terrainHeightDefault = core_terrain.getTerrain() and core_terrain.getTerrain():getPosition().z or 0
local terrainHeight = core_terrain.getTerrain() and core_terrain.getTerrainHeight(self.pos) or 0
local terrainHeightDefault = core_terrain.getTerrain() and core_terrain.getTerrain():getPosition().z or 0
local isTunnel = self.pos.z < terrainHeight
local terrainHeight = core_terrain.getTerrain() and core_terrain.getTerrainHeight(self.pos) or 0
local terrainHeightDefault = core_terrain.getTerrain() and core_terrain.getTerrain():getPosition().z or 0
local isTunnel = self.pos.z < terrainHeight
@/lua/ge/extensions/editor/masterSpline/splineMgr.lua
local nodes, nmls = spline.nodes, spline.nmls
local terrain = core_terrain.getTerrain()
if terrain then
@/lua/ge/extensions/editor/api/gizmo.lua
else
if core_terrain.getTerrain() then
initialGizmoTerrainOffset = gizmoPos.z - core_terrain.getTerrainHeight(gizmoPos)
else
if core_terrain.getTerrain() then
objectTerrainOffsets[index] = objPos.z - core_terrain.getTerrainHeight(objPos)
else
if core_terrain.getTerrain() then
newGizmoTerrainHeight = core_terrain.getTerrainHeight(newGizmoPos)
@/lua/ge/extensions/editor/toolUtilities/geom.lua
local function catmullRomConformToTerrain(spline, minNumDivIn)
local terrain = core_terrain.getTerrain()
if not terrain then
@/lua/ge/extensions/util/terrainGenerator.lua
local height = 0
if core_terrain.getTerrain() then
height = core_terrain.getTerrain():getHeightScaleUser()
if core_terrain.getTerrain() then
height = core_terrain.getTerrain():getHeightScaleUser()
end
function C:setTerrainOffset(vec) -- sets a new position for the terrain block (vec3(0, 0, 0) is the corner of the terrain block)
if core_terrain.getTerrain() then
core_terrain.getTerrain():setPosition(vec)
if core_terrain.getTerrain() then
core_terrain.getTerrain():setPosition(vec)
be:reloadCollision()
function C:centerTerrain() -- makes the origin the center of the terrain block
if core_terrain.getTerrain() then
local n = core_terrain.getTerrain():getWorldBlockSize() * -0.5
if core_terrain.getTerrain() then
local n = core_terrain.getTerrain():getWorldBlockSize() * -0.5
self:setTerrainOffset(vec3(n, n, 0))
function C:resetTerrain(deleteOnly) -- resets the terrain block
local terrain = core_terrain.getTerrain()
if terrain then terrain:delete() end
local terrain = core_terrain.getTerrain()
if terrain then
if not matData then -- if no material data exists, try to get it from the existing terrain
if core_terrain.getTerrain() then
for _, m in ipairs(core_terrain.getTerrain():getMaterials()) do -- get all existing materials from terrain
if core_terrain.getTerrain() then
for _, m in ipairs(core_terrain.getTerrain():getMaterials()) do -- get all existing materials from terrain
if m:getInternalName() ~= 'warning_material' then -- always ignore warning material
if not self.terrainId and core_terrain.getTerrain() then
log('I', logTag, 'Base terrain found, now deleting it in order to create custom terrain')
self.terrainId = nil
local terrain = core_terrain.getTerrain()
local terrainBitmap = GBitmap()
@/lua/ge/extensions/gameplay/parking.lua
debugDrawer:drawCylinder(lastPos, lastPos + vecUpHigh, 0.25, ColorF(0, 1, 0, 0.5))
if core_terrain.getTerrain() then
lastPos.z = core_terrain.getTerrainHeight(lastPos)
@/lua/ge/extensions/editor/objectToSplineEditor.lua
local points = {}
local hasTerrain = core_terrain.getTerrain() and true or false
@/lua/ge/extensions/editor/util/transformUtil.lua
function C:helperPositionDownToTerrain()
if not core_terrain.getTerrain() then return end
self:set(vec3(self.pos.x, self.pos.y, core_terrain.getTerrainHeight(self.pos) or self.pos.z))
function C:helperAlignWithTerrain()
if not core_terrain.getTerrain() then return end
local terrainNormal = core_terrain.getTerrainSmoothNormal(self.pos)
@/lua/ge/extensions/editor/forestEditor.lua
end
editor.drawBrush('ellipse', hit.pos, editor.getPreference("forestEditor.general.brushSize") / 2, nil, color, core_terrain.getTerrain())
local cam = getCameraMouseRay()
@/lua/ge/extensions/freeroam/bigMapMode.lua
local bbox
if core_terrain.getTerrain() then
bbox = core_terrain.getTerrain():getWorldBox()
if core_terrain.getTerrain() then
bbox = core_terrain.getTerrain():getWorldBox()
includeClustersInBbox(bbox)
@/lua/ge/extensions/editor/gen/terrain.lua
local trn = core_terrain.getTerrain()
if not trn then return end
@/lua/ge/extensions/ui/apps/minimap/topomap.lua
local scanPos = vec3()
local terrain = core_terrain.getTerrain()
@/lua/ge/extensions/editor/trafficSignalsEditor.lua
if im.Button("Down to Terrain##instance") then
if core_terrain.getTerrain() then
signalPos[2] = core_terrain.getTerrainHeight(currInstance.pos)
@/lua/ge/extensions/editor/audioRibbonEditor.lua
-- For each ribbon node, check both terrain and river surfaces.
local terrain = core_terrain.getTerrain()
local nodes = ribbon.nodes