x

Search in
Sort by:

Question Status:

Search help

  • Simple searches use one or more words. Separate the words with spaces (cat dog) to search cat,dog or both. Separate the words with plus signs (cat +dog) to search for items that may contain cat but must contain dog.
  • You can further refine your search on the search results page, where you can search by keywords, author, topic. These can be combined with each other. Examples
    • cat dog --matches anything with cat,dog or both
    • cat +dog --searches for cat +dog where dog is a mandatory term
    • cat -dog -- searches for cat excluding any result containing dog
    • [cats] —will restrict your search to results with topic named "cats"
    • [cats] [dogs] —will restrict your search to results with both topics, "cats", and "dogs"

Office Holiday

Epic Games' offices will be on holiday from June 22nd to July 7th. During this period support will be limited. Our offices will reopen on Monday, July 8th. 

Hot reload crashes editor when UPROPERTY value is changed

Most of the objects in my scene are blueprints based on a custom AActor subclass with the following structure:

 AMyCustomActor
     |- UStaticMeshComponent (root)
         |- UMyCustomSceneComponent

I can add whatever code I like in the constructor of my custom USceneComponent (declare variables, print messages, and so on), and hot-reload works fine. As soon as I touch any of the UPROPERTY values in the constructor, however, hot-reload crashes with the following stacktrace:

http://pastebin.com/48ECapgF

If I compile with the editor closed, I have no issues or crashes at all and everything works as expected. It just seems that there's a problem to do with refreshing the blueprints and/or the actors using them.

Product Version: Not Selected
Tags:
more ▼

asked Apr 28 '15 at 05:04 AM in C++ Programming

avatar image

rohoon
142 16 19 33

(comments are locked)
10|2000 characters needed characters left
Viewable by all users

1 answer: sort voted first

Hello, rohoon

Sorry to hear about the crash, but please note that Hot Reload should only be used for minor code changes, that don't affect UPROPERTIES (UFUNCTIONS).

Thus, when you add/remove a function and change some Blueprint-exposed behavior, closing the editor and recompiling would be the correct solution.

Hope this helped! Good luck!

more ▼

answered May 08 '15 at 12:40 PM

avatar image

Andrii Melnyk
1.8k 60 19 112

avatar image rohoon May 10 '15 at 10:02 PM

Hi Andrew,

I should have phrased my question better. What I mean is this: If I have the class hierarchy I described before, then add the following line to the constructor the of the nested USceneComponent:

 MySimpleIntProperty = 5;

From that point on, hot-reload will ALWAYS crash the editor. As long as that line of code exists in my project, hot-reload will never work again, even if the next change I make is to simply add whitespace or a comment somewhere..

On a side note, I would have thought that changing the default value of existing UPROPERTYs would have been a perfect use case for hot-reloading (and it certainly works in all other scenarios I've tested). In any case, surely there's a better way for the editor to handle this than crashing with an Access Violation error.

avatar image rohoon May 13 '15 at 11:38 PM

Andrew,

I created a test project to demonstrate another bug, but it also demonstrates this hot-reload crash. Try making a whitespace-only change to the code and then recompile with the editor open.

bugtest.zip (444.5 kB)
(comments are locked)
10|2000 characters needed characters left
Viewable by all users
Your answer
toggle preview:

Up to 5 attachments (including images) can be used with a maximum of 5.2 MB each and 5.2 MB total.

Follow this question

Once you sign in you will be able to subscribe for any updates here

Answers to this question