Unreal's default Construction Script has differing behavior during Play in Editor than Packaged builds. In Packaged Builds, all Construction Scripts are executed at run-time, which can create large frame 1 spikes while loading a level if there are a lot of placed actors with custom construction script setup.
To fix this, this plugin provides two new construction script variants which can be used with Actors, StaticMeshActors, and SkeletalMeshActors; and can be integrated easily into any other actor class as needed:
- CachedConstructionScript - This reproduces the Play in Editor behavior in the packaged build, only running in editor for Placed Actors. In order for this to function properly, and values that the construction script changes must be non-transient and saved into the level data. If an actor with a CachedConstructionScript is spawned in fresh during runtime, the CachedConstructionScript will be run.
- EditorOnlyConstructionScript - This will only ever run in editor, never during run time. This is the best option to ensure that you aren't accidentally adding extra processing to your packaged build for in-editor convenience features that are intended to be development only.
In addition, this plugin also provides Construction Scripts for ActorComponents and SceneComponents, as long as the component is attached to a BetterConstructionScript supporting Actor:
- ConstructionScript - A construction script that will always run, regardless of if in PIE or in a Packaged build.
- CachedConstructionScript - Same as above.
- EditorOnlyConstructionScript - Same as above.
Join my Discord Server, message me on twitter @sclark39, or post in the Forum Thread to ask questions and offer suggestions; or check out my other Marketplace Plugins and support my work!