Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Live Coding Reinstancing and HotReload tracking #14

Closed
aquanox opened this issue Apr 20, 2024 · 3 comments
Closed

Live Coding Reinstancing and HotReload tracking #14

aquanox opened this issue Apr 20, 2024 · 3 comments
Labels
enhancement New feature or request

Comments

@aquanox
Copy link
Owner

aquanox commented Apr 20, 2024

This is list of my ideas to add some extra QOL to the plugin as there are things that could happen when Live Coding Reinstancing or HotReload is being used when working with Unreal Engine (for example missing properties, not loading ini config).

It is possible to track object states for validity and display big red warning label that things may go bad until editor is restarted.

  • Can try track UStruct::PropertiesSize change (since we got a copy of subsystem info in SSDescriptor) validate with it
  • Can try track special names like RELOADED or REINSTANCED and similar
  • Can try track duplicated entries that could appear in certain situations
  • Can hook to FCoreUObjectDelegates::OnObjectsReinstanced to track that reinstancing was used
  • maybe something else
@aquanox aquanox added the enhancement New feature or request label Apr 20, 2024
@ameaninglessname
Copy link

ameaninglessname commented Apr 20, 2024

Is there any cached UObject reference in code?(I'm going to use the plugin now) Which may cause the corruption when re-instancing

@aquanox aquanox changed the title Live Coding and HotReload corruption tracking Live Coding and HotReload tracking Apr 20, 2024
@aquanox
Copy link
Owner Author

aquanox commented Apr 20, 2024

Is there any cached UObject reference in code?(I'm going to use the plugin now) Which may cause the corruption when re-instancing

It is not related to plugin but in general for Unreal Engine native development loop.

If you edit c++ code and change the memory layout or property reflection data you must close editor, build the project from IDE and launch again from IDE. Refer to this article. https://landelare.github.io/2023/01/07/cpp-speedrun.html#compiling for additional details.

I've created this ticket because I received more than several messages "why my properties disappear" or "why my properties do not show" with cause being use of Live Coding or HotReload after doing breaking changes in code and not restarting editor.

@aquanox aquanox changed the title Live Coding and HotReload tracking Live Coding Reinstancing and HotReload tracking Apr 20, 2024
@aquanox
Copy link
Owner Author

aquanox commented Jul 26, 2024

Dropped

@aquanox aquanox closed this as completed Jul 26, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature or request
Projects
None yet
Development

No branches or pull requests

2 participants