Not sure if this is exacly that but known VS update regretion was fixed in latest stable release of 4.12. If you want to use 4.10 you either need to revert that update or switch to VS2013… or you find change that fix that and patch it manulay to 4.10
Hi. I would like to download the Unreal Engine 4.12 source code form github and convert my current project version (4.10) to that version (4.12).
How do I know I won’t have compatibility problems during the conversion of the project?
How can a UE game developer keep up with the infinite number of updates he must do because of the Engine? Why isn’t there just a stable version of the Engine?
Now I have to download the 4.12, compile the engine (IT WILL TAKE A DECADE!) and convert the project… lots of work that distracts me from my major job: gameplay programming.
It should be fine if it’s blueprint only, if you got C++ some APIs may changed you get error so you will need to fix them,
It’s good to update your work in progress project on each update, when you compile you will get warnings about depricated stuff that you use and even tip how to fix it so it makes updateing go smoothly, there some stuff that changes without warning (aspecially editor code) then you need to deduce yourself how to fix it. The longer you hasitate with UE4 update the less updateable to latest version your project will be, so always update to latest if you have a chance. once your project will be far advance you can lock to some UE4 version so you can optimize game to that version
You don’t need to follow updates, i don’t know single person (maybe Epic devlopers) who even know everything about UE4 to begin with, it’s too massive. You just focus on your code and what effect your code and thats it.
Again you will get warning if you use deprecated stuff, note that this stuff will still workregardless of error, it’s just warning to inform you thigns will change, if you get a error just fix thing that is broken. Everything depends if anything has changed in API you use. Most things i meet will (and i
'm using UE4 since 4.0) are quite minor lot of them can be fixed with mass “find and replace”, there updates where you don’t need to do anything to at all, as either API didn’t been changed (nice example is 4.10 which only contained fixes) or changes in API didn’t effect your code. Also stable releases (x.y.z the z number) don’t have any API changes, so it is safe to update without any issues.
Indeed you don’t need ot update, but as you see you hit a good example of what is called a regression, code get naturally old and get less compatible to newest solutions (in this case newest VS), so you would hit problem like here eventually and the less updated you code is the more work awaits you. It’s a risk that you need put in to account when you not updating.
Indeed what you say is right. I’m just saying that when I download an Engine (and wait a lot of time for compiling it!!!) i’d like to work with that engine forever. Now I have to download the release packet from the GitHub repository, I have to compile the Engine from scratch (LOTS OF TIME!!!) and finally I have to copy-convert my old 4.10 project to the new 4.12.
Also, I may have compatibility issues and I have to rewrite some code.
It’s time wasting and makes me lose my main focus, gameplay programming.
The list of errors show is likely caused by Visual Studio Update 3. As points out, this has been fixed in 4.12.5. If you are currently using the launcher version of the engine or want to avoid having to build the engine, you can update the engine and project to this version though the launcher and continue working. When upgrading a project from one version to another, it is always a good idea to keep a copy of the project on the original version in case you do have conversion issues or need to have a backup.
Well you dont really convert, project should work out of the box on new version, only issue is C++ where you need to recompile your module and sometimes modify things. I work with UE4 since 4.0 and never need to rewrite things. i max spend hour or 2 on that, once per few months (i don’t update on stabe releses, or else there bug which effects me) so i don’t really see issue. Here my tips to make things easier:
-Dont fork engine, useless step that guidelines mention, it just for those who want to modify engine and submit changes. just clone my repository and pull updates and recompile the engine
-You telling recompiling few times… this is something that should not happen, in project settings in NMake tab add “-rocket” option on Rebuild and Clean, it make sure you won’t delete engine while rebuilding so only you project rebuilds, you need to do that each time you regenerate project file, which you should do once you do update
-Don’t build whole solution (which referes to UE4 source project), build only your project, you can configure your solution to do so
But as i said do as you wish, that remeber about the risks
No you misunderstood. I need to compile the whole Engine every time I download a new version. I compiled the UE4.10 to work with my game, and now I downloaded UE4.12 source release from GitHub and I’m currently building it.
What I’m afraid about, is that every time a new Engine version comes out, I need to redo these steps:
Download UE 4.X new version from GitHub
Download and install dependencies
Generate Visual Studio solution
Build the UE4 Project inside Visual Studio (lots of time!)
All of these steps are ONLY about getting the newer version of the Engine.
Not to talk about the game project conversion with possible risk of errors and warnings due to the new version…
The first error window shows the use of AttachParent and GetControlledPawn. As the message mentions, these have been depreciated and you will instead want to use the current versions for these (SetupAttachment/AttachToComponent for AttachParent and GetPawn instaed of GetControlledPawn).
The second screenshot mentions delegates, you may want to check the signature of the delegates in use as some were updated in 4.12. Be sure to check the output log / error list when building in Visual Studio to fix any build errors after updating.
The AActor pointer needs to be added to the function declaration / definition. Since your function is called ApplyFullDamage, your parameter list in the .h and .cpp for the function would be ApplyFullDamage(AActor* OverlappedActor, AActor* OtherActor) and you would then remove the AActor from the AddDynamic() line.
I’m glad you were able to solve the compile errors after the project conversion. For the lighting build failure, I would suggest you take a look at this guide.
If you are still having issues with lighting after following the guide, it would be best to create a new post for the lighting issue in order to keep the information for one issue from being lost in the context of another.
Compilation takes a lot of tiem indeed, but updateing code takes just few hours max, i really don’t see issue and i think you overreacting, you only do that once per few months if you dont care about stable releses