package Ġpw . bin om . scene Editor Ċ Ċ import Ġm og ot .* Ċ import Ġm og ot . math . Vector 2 i Ċ Ċ class ĠFlat Screen Behaviour ( val Ġengine : ĠEngine , Ġval Ġcamera : ĠCamera , Ġval Ġother : ĠSpatial ) Ġ: ĠBe haviour () Ġ{ ĊĠĠĠ Ġpublic Ġoverride Ġval Ġnode ĊĠĠĠĠĠĠĠ Ġget () Ġ= Ġsuper . node Ġas ĠSprite For 3 D ĊĊĠĠĠ Ġoverride Ġfun Ġcheck Node ( node : ĠNode ?) Ġ{ ĊĠĠĠĠĠĠĠ Ġnode Ġas ĠSprite For 3 D ? ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun ĠonUpdate ( delta : ĠFloat ) Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġp Ġ= Ġengine . math Pool . vec 3 f . poll () ĊĠĠĠĠĠĠĠ Ġp . set ( 0 f , Ġ 0 f , Ġ 0 f ) ĊĠĠĠĠĠĠĠ Ġother . local To Global ( p , Ġp ) ĊĊĠĠĠĠĠĠĠ Ġval Ġtemp Vec Ġ= Ġengine . math Pool . vec 2 i . poll () ĊĠĠĠĠĠĠĠ Ġif Ġ( camera . world To Screen Point ( p , Ġtemp Vec )) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġnode . visible Ġ= Ġtrue ĊĠĠĠĠĠĠĠĠĠĠĠ Ġnode . position . set ( temp Vec . x . toFloat (), Ġtemp Vec . y . toFloat ()) ĊĠĠĠĠĠĠĠ Ġ} Ġelse Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġnode . visible Ġ= Ġfalse ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġengine . math Pool . vec 3 f . push ( p ) ĊĠĠĠĠĠĠĠ Ġengine . math Pool . vec 2 i . push ( temp Vec ) ĊĠĠĠ Ġ} Ċ }