Skip to content

Parenting issue when setting localPos of the hologram! #3608

@raven1934

Description

@raven1934

Describe the bug

Hey, anyone savvy enough here to check if parented holos have clamped distance from the parent that is in the ballpark of 16384 units, earlier i was using rangers to measure distances to which to project my snipers red dot, but for whatever reason when i use the parenting on my holos (to avoid the delay of moving the dot) it seems that the hologram can only at max move up to roughly at 16384 mark and despite receiving correct distance/position the holo cannot travel further than this distance from the parent prop... If true and if this isn't engine limit could we maybe get rid of the limit if its implemented by mod itself.

How to reproduce the bug

Try to move a prop parented hologram beyond the roughly 16384 unit mark on a long map, and then return its distance to the parent objects position... I'm already pulling my hair if this is a possibility as it def affects lot of the projects I've made in past that deal with semi-long distances.

@name ParentingDistanceClampTest
@inputs 
@outputs 
@persist Emitter:entity
@trigger none 
@strict
@model

if(first())
{
    Emitter=propSpawn("models/hunter/blocks/cube025x025x025.mdl",entity():pos()+vec(0,0,50),ang(0,0,0),1)
    Emitter:noCollideAll(1)
    
    #entity():propNotSolid(1)
    #entity():setPos(Emitter:massCenter())
    #entity():setAng(Emitter:angles())
    #entity():parentTo(Emitter)
    #entity():noCollideAll(1)

    holoCreate(1)
    holoModel(1,"hq_sphere")
    holoParent(1,Emitter)
    holoLocalPos(1,Emitter:massCenterL())
    holoLocalAng(1,ang(0,0,0))
    holoDisableShading(1,1)
    holoColor(1,vec(255,0,0))
    holoMaterial(1,"models/debug/debugwhite")    

    Filter=array(Emitter,entity(),holoEntity(1))
    
    rangerPersist(1)
    rangerHitWater(1)
    rangerDefaultZero(0)
    rangerFilter(Filter)
    rangerHitEntities(0)
}

R=rangerOffset(Emitter:massCenter(),Emitter:massCenter()+Emitter:forward()*65565)

holoLocalPos(1,Emitter:massCenterL()+vec(R:distance(),0,0))

print(round((holoEntity(1):pos()-Emitter:pos()):length())+" "+round(R:distance(),0))

runOnTick(1)


#Works fine when using normal holoPos() but when using parenting and holoLocalPos() it just doesnt work at all after like 16.5 k units from the parent

#@name 
#@inputs 
#@outputs 
#@persist 
#@trigger none 
#@strict
#
#holoCreate(1)
#holoDisableShading(1,1)
#
#timer(tickRealInterval()*2,0,function(){
#    let R = rangerOffset(entity():pos(),entity():pos()+entity():forward()*65565)
#    holoPos(1,R:position())
#})

This code should be able to indicate the issue, the commented lines are from friend whos ranger works fine as it is not parenting the holo and then setting its localPos

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type
    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions