package Ġcom . ke mp . android . rendering . models Ċ Ċ import Ġcom . google . android . fil ament . gl tf io . Asset Loader Ċ import Ġcom . google . android . fil ament . gl tf io . Fil ament Asset Ċ import Ġcom . ke mp . core . Entity Ċ import Ġcom . ke mp . core . Scene Entity Ċ import Ġcom . ke mp . core . rendering . models . Material Instance Ċ import Ġcom . ke mp . core . rendering . models . Model Ċ import Ġcom . ke mp . core . rendering . models . Model Animator Ċ import Ġcom . ke mp . core . utils . Box Ċ Ċ class ĠAndroid Model ( private Ġval Ġasset Loader : ĠAsset Loader , Ġprivate Ġval Ġfil ament Asset : ĠFil ament Asset ) Ġ: ĠModel Ġ{ ĊĠĠĠ Ġvar Ġentity : ĠEntity Ġ= Ġ- 1 ĊĊĠĠĠ Ġoverride Ġfun Ġentity (): ĠEntity Ġ{ ĊĠĠĠĠĠĠĠ Ġreturn Ġentity ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġroot (): ĠScene Entity Ġ{ ĊĠĠĠĠĠĠĠ Ġreturn Ġfil ament Asset . root ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġlights (): ĠList < Scene Entity > Ġ{ ĊĠĠĠĠĠĠĠ Ġreturn Ġfil ament Asset . light Entities . toList () ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġcameras (): ĠList < Scene Entity > Ġ{ ĊĠĠĠĠĠĠĠ Ġreturn Ġfil ament Asset . camera Entities . toList () ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġentity ( name : ĠString ): ĠScene Entity Ġ{ ĊĠĠĠĠĠĠĠ Ġreturn Ġfil ament Asset . getFirst Entity ByName ( name ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġentities (): ĠList < Scene Entity > Ġ{ ĊĠĠĠĠĠĠĠ Ġreturn Ġfil ament Asset . entities . toList () ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġentities ( name : ĠString ): ĠList < Scene Entity > Ġ{ ĊĠĠĠĠĠĠĠ Ġreturn Ġfil ament Asset . get Entities ByName ( name ). toList () ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġentities Starting With ( name : ĠString ): ĠList < Scene Entity > Ġ{ ĊĠĠĠĠĠĠĠ Ġreturn Ġfil ament Asset . get Entities By Prefix ( name ). toList () ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġmaterials (): ĠList < Material Instance > Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġmaterials Wrap Ġ= Ġmutable ListOf < Material Instance >() ĊĠĠĠĠĠĠĠ Ġfil ament Asset . material Instances . forEach Ġ{ Ġmaterials Wrap . add ( Android Material Instance ( it )) Ġ} ĊĠĠĠĠĠĠĠ Ġreturn Ġmaterials Wrap ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġbounding Box (): ĠBox Ġ{ ĊĠĠĠĠĠĠĠ Ġreturn ĠBox ( fil ament Asset . bounding Box . center , Ġfil ament Asset . bounding Box . half Extent ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġname Of ( entity : ĠScene Entity ): ĠString Ġ{ ĊĠĠĠĠĠĠĠ Ġreturn Ġfil ament Asset . getName ( entity ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġanim ator (): ĠModel Animator Ġ{ ĊĠĠĠĠĠĠĠ Ġreturn ĠAndroid Model Animator ( fil ament Asset . anim ator ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġdispose () Ġ{ ĊĠĠĠĠĠĠĠ Ġasset Loader . destroy Asset ( fil ament Asset ) ĊĠĠĠ Ġ} Ċ }