PUN Classic (v1), PUN 2, Bolt는 휴업 모드입니다. Unity2022에 대해서는 PUN 2에서 서포트하지만, 신기능의 추가는 없습니다. 현재 이용중인 고객님의 PUN 및 Bolt 프로젝트는 중단되지 않고, 퍼포먼스나 성능이 떨어지는 일도 없습니다. 앞으로의 새로운 프로젝트에는 Photon Fusion 또는 Quantum을 사용해 주십시오.

Global/Per-Prefab Query Options

Whenever Bolt attaches a prefab (either due to instantiation on the client/server or a rescope on the client), it needs to query for three components: IEntityBehaviour, IPriorityCalculator, and IEntityReplicationFilter. IEntityBehaviour is familiar to most users of Bolt as this is what EntityBehaviour<TState> implements. The other two are described in the documentation and rarely used by users.

Bolt allows multiples of each to exist. By default Bolt will perform a GetComponentsInChildren<T> on your entity for each of these types to find them during Attach(). Since this has to walk the entity’s children it is not necessarily the most performant option and it allocates some memory as well.

You can change the query behaviour globally for each of these interfaces in Bolt Settings, to either none, getComponent(), getComponents(), and getComponentsInChildren(). In addition, if you wish to override a prefab’s setting so that it is different than the global setting, you can do it in the entity’s setting on the prefab (the prefab will default to UseGlobal).

For most users of Bolt, IEntityBehaviour should be GetComponent() as they will have one IEntityBehaviour implemented class. IPriorityCalculator and IEntityReplicationFilter should be none as users usually don’t implement these (if you do, choose the appropriate setting for your scenario which is probably GetComponent).

Back to top