So the initial problem I had was that after upgrading to 4.7, one of my blueprints (based on a C++ class) would move faster than the other blueprint (also based on a C++ class) it was attached to.
Now, I couldn’t let this go, so I kept minimizing the scope and commenting away code to see where the issue was until I managed to get it down to where I could reproduce it in a new project.
Steps to reproduce:
-
Create a new blank C++ project.
-
Create a new empty blueprint based on actor and place it in the level.
-
Add a new C++ class to the project with the “Add code to project” button. Base it on Actor and call it MyActor.
-
Replace the default constructor contents with
Root = CreateDefaultSubobject<USceneComponent>(TEXT("dummy")); RootComponent = Root;
-
Put the following in the header file, below public: and above the default constructor:
UPROPERTY(VisibleDefaultsOnly, BlueprintReadOnly, Category = Components) USceneComponent* Root;
The contents of the MyActor.cpp file should be: http://hastebin.com/ufozabayis.cpp
The contents of the MyActor.h file should be: http://hastebin.com/hicitisoho.cpp (maybe a different API if the project name is different)