Easy Object Culling enables developers to easily integrate a flexible culling system into their new or existing projects. It provides a culling object with user-configurable settings that handles the culling logic, and it provides a cullable parent object which is used to determine which objects can be culled. There are two separate no-cull zones that can be fully adjusted. There is an Instance Reactivation Zone in which all cullable instances will be active, and any cullable instances outside of this zone will get deactivated. There is also a Draw Zone in which all cullable instances will have their draw events enabled, and any cullable instances outside of this zone get their draw events disabled. It is up to the developers to determine if culling will help increase their game's performance, and this package is a great way to determine if it will!
How To Use:
Add an instance of obj_culling to the first room.
Make obj_cullable the parent object of the objects that you want to cull.
Adjust the settings in the Create event of obj_culling to better suit the project. Detailed instructions for each setting are provided in the comments of obj_culling.
Optional - Place "skip_draw_cull = pointer_null" in a child object's Create event to skip draw culling for all instances of that object.
Optional - Place "skip_deactivation = pointer_null" in a child object's Create event to skip instance deactivation for all instances of that object.
Fully adjustable no-cull zones.
Debugging option that shows the zone bounds.
Per-object disabling of the Draw Culling and/or Instance Culling features.
Flags to globally disable/enable the Draw Culling and/or Instance Culling features.
Ability to delay culling checks for a user-defined number of steps to potentially further increase performance.
Fully-documented code for easy understanding and usage of the culling system.
Thank you for viewing this product! Please reach out to me if you have any questions regarding this culling system!
Disclaimer - This package only includes the culling objects. The tileset utilized in the demo screenshots is made by Szadi art. This package may or may not improve performance. Any performance increases are highly dependent on the target hardware requirements and design of your game!
End User Licence Agreement (EULA).