diff options
author | RĂ©mi Verschelde <remi@verschelde.fr> | 2022-05-04 19:08:43 +0200 |
---|---|---|
committer | GitHub <noreply@github.com> | 2022-05-04 19:08:43 +0200 |
commit | 84f64ddde956f5ecba4674750442df89b75556c9 (patch) | |
tree | 920e09993cd21dc3f809735a4669b6adaf7cd7cd /modules/raycast | |
parent | 3a82b7eeef005fdc654aaccadbaa80b4520b5f13 (diff) | |
parent | de0ca3b999819a99a5dcab99f0083a760277b95e (diff) |
Merge pull request #60723 from reduz/refactor-module-initialization
Diffstat (limited to 'modules/raycast')
-rw-r--r-- | modules/raycast/register_types.cpp | 12 | ||||
-rw-r--r-- | modules/raycast/register_types.h | 6 |
2 files changed, 14 insertions, 4 deletions
diff --git a/modules/raycast/register_types.cpp b/modules/raycast/register_types.cpp index 053039a85b..42de1d971d 100644 --- a/modules/raycast/register_types.cpp +++ b/modules/raycast/register_types.cpp @@ -36,7 +36,11 @@ RaycastOcclusionCull *raycast_occlusion_cull = nullptr; -void register_raycast_types() { +void initialize_raycast_module(ModuleInitializationLevel p_level) { + if (p_level != MODULE_INITIALIZATION_LEVEL_SCENE) { + return; + } + #ifdef TOOLS_ENABLED LightmapRaycasterEmbree::make_default_raycaster(); StaticRaycasterEmbree::make_default_raycaster(); @@ -44,7 +48,11 @@ void register_raycast_types() { raycast_occlusion_cull = memnew(RaycastOcclusionCull); } -void unregister_raycast_types() { +void uninitialize_raycast_module(ModuleInitializationLevel p_level) { + if (p_level != MODULE_INITIALIZATION_LEVEL_SCENE) { + return; + } + if (raycast_occlusion_cull) { memdelete(raycast_occlusion_cull); } diff --git a/modules/raycast/register_types.h b/modules/raycast/register_types.h index 0abc5eb63a..a917285390 100644 --- a/modules/raycast/register_types.h +++ b/modules/raycast/register_types.h @@ -28,5 +28,7 @@ /* SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. */ /*************************************************************************/ -void register_raycast_types(); -void unregister_raycast_types(); +#include "modules/register_module_types.h" + +void initialize_raycast_module(ModuleInitializationLevel p_level); +void uninitialize_raycast_module(ModuleInitializationLevel p_level); |