godot/scene
reduz 6236a688b7 Implement Feature Build Profiles
This PR is a continuation of #50381 (which was implemented exactly a year ago!)

* Add a visual interface to select which classes should not be built into Godot (well, they are built if something else uses them, but if not used the optimizer will remove them out).
* Add a detection system to scan the project and figure out the actual classes used.
* Added the ability for SCons to load build profiles.

Obligatory Screen:

A simple test with a couple of nodes in the scene resulted in a 25% reduction for the final binary size

TODO:

* Script languages need to implement used class detection (left for another PR).
* Options to disable servers or server functionalities (like 2D or 3D physics, navigation, etc). Are missing, that should also greatly aid in reducing binary size.
* Options to disable some modules would be desired.
* More options to disable drivers (OpenGL, Vulkan, etc) would be desired.

In general this PR is a starting point for more contributors to improve and enhance this functionality.
2022-07-22 10:53:23 +02:00
..
2d Account for relative z-indexes when y-sorting 2022-07-08 09:18:00 -05:00
3d Remove unused hints 2022-07-12 00:44:13 +02:00
animation Merge pull request #62510 from MinusKube/animation-reset-crash 2022-06-29 10:19:33 +02:00
audio Use suffixes for units in nodes and resources 2022-05-19 14:34:27 -05:00
debugger Remake resource thread safety and API 2022-06-22 13:46:46 +02:00
gui Merge pull request #62774 from Rindbee/make-the-meta-click-area-fit 2022-07-13 14:14:34 +02:00
main Rename soft shadow quality project settings for easier searching 2022-07-13 19:56:02 +02:00
multiplayer Add suffixes to all nodes and resources 2022-06-11 09:41:05 -05:00
resources Implement Feature Build Profiles 2022-07-22 10:53:23 +02:00
SCsub [Net] New replication interface, spawner and synchronizer nodes. 2022-02-04 14:56:30 +01:00
property_utils.cpp Cleanup and move char functions to the `char_utils.h` header. 2022-02-04 11:35:01 +02:00
property_utils.h Update copyright statements to 2022 2022-01-03 21:27:34 +01:00
register_scene_types.cpp Refactor Font configuration and import UI, and Font resources. 2022-07-06 14:12:36 +03:00
register_scene_types.h Update copyright statements to 2022 2022-01-03 21:27:34 +01:00
scene_string_names.cpp Update copyright statements to 2022 2022-01-03 21:27:34 +01:00
scene_string_names.h Update copyright statements to 2022 2022-01-03 21:27:34 +01:00