Work out a way to generate prop data for player transformation (Issue #158) during startup or dynamically.
To achieve this, have every object with a prop component check if a global library of props already contains this information. If it does not, add this as a prop to the global library.
Whenever a player wants to transform into the prop, create a new entity and synchronize the data between the client and server using a special ghost entity called PropVisualComponent. This will load all the associated meshes and materials to create a disguise. A convex hull for the prop's collider should also be generated for a given prop. This can be done either during runtime or in the editor and associated with a prefab.
The main issue here is to automate the process of creating a player disguise from a prop mesh and component data. This could be achieved through editor scripts or in runtime data. Either way we should not depend on us humans to have to constantly update and create a prop disguise from a given prop data prefab.
Work out a way to generate prop data for player transformation (Issue #158) during startup or dynamically.
To achieve this, have every object with a prop component check if a global library of props already contains this information. If it does not, add this as a prop to the global library.
Whenever a player wants to transform into the prop, create a new entity and synchronize the data between the client and server using a special ghost entity called
PropVisualComponent
. This will load all the associated meshes and materials to create a disguise. A convex hull for the prop's collider should also be generated for a given prop. This can be done either during runtime or in the editor and associated with a prefab.The main issue here is to automate the process of creating a player disguise from a prop mesh and component data. This could be achieved through editor scripts or in runtime data. Either way we should not depend on us humans to have to constantly update and create a prop disguise from a given prop data prefab.