Switching from Blueprint Programming to C++/Blueprint - will my files still work


I did quite some work on my project using blueprints only and v4.6.1, no visual studio installed.

I am thinking now about installing Visual Studio (VS), downloading the UE4 Source Code from GitHub and built the editor again from that.

I take it, that I will have to uninstall the already installed Editor v4.6.1.

Will my project, which was created only with blueprints in v4.6.1, still work after I install VS2013 and built the Editor again?

Or do I have to follow additional steps.

I am a bit hesitant to switch to VS2013 and UE4 with C++, because I invested quite some time already in my project and do not want to loose it.

It should still work fine, but you don’t have to use the source-code version of the engine unless you want to make engine-level changes (highly unlikely usually). You can just create a solution file for your project and start working in code straight away.

Adding to what TheJamsh said, yes it will work perfectly, I recently converted a blueprint only project to a code/blueprint hybrid and it is super easy to do.

If you want to keep all of your current blueprints and add new code to your project, all you need to do is go to File -> Add Code To Project to create a new class file. Creating that file will cause UE4 to generate the source files for your project, which you will then be able to work on in Visual Studio. An alternate way to make it a code/blueprint hybrid is right click on your ProjectName.uproject icon in your project folder and select “Generate Visual Studio Project Files”.

If you want to completely move it to code, it might be faster to start a new project since you will need to manually convert all of the blueprints to code anyways.

Best thing to do is first create a backup copy of your project, then add in the code. It is a simple process but it is always good to have a backup just in case! :slight_smile:

EDIT: You do not need to uninstall UE4 at all, that’s only if you want to edit the engine source as mentioned above.

Thank you for clarifying this.
I thought I have to rebuild the editor.
So I will get VS2013 Windows Desktop version installed. Then will will ‘add code’ and in this way I will code new functionalities that are not implemented in blueprints right now (like changing PhAT constraint parameters at runtime).
I actually seem to remember now a UE4 review saying that you can get your C++ coded bits to show up as new building blocks in blueprints without having to restart anything. Like I code a ‘set PhAT constraint’ function to set eg swing angle, and then I can use it in future like any other blueprint function from when I right click inside the blueprint.

If you are working on your own, or in a small team I would recommend getting the Community version of Visual Studio 2013. It is equivalent to the Pro edition with a different licence (less than 5 users per company, make under $1 million in sales per year, and not used for Enterprise solutions), and was recently released free to the public.

Here is where you can get a copy of it:

Because it is a full edition, you can use plugins with Visual Studio, something the Express version cannot do (among other things). :slight_smile:

Yes you can create blueprint nodes in C++ (as well as variables, structs, and other objects) that can be used in a blueprint using the correct specifiers. For more info on this and more I suggest going through the Programming guide and refer back to it as you progress:

Also make sure to read over the pages listed here to get started with Visual Studio:

If you want to add C++ code to your project, you don’t actually have to download the engine source code. You can use the editor to add a class:
File -> Add Code To Project
You may then open the source code in visual studio

No, actually, you don’t need to do that. IF you were to rebuild the editor, the editor you build gets built in a different location from the editor you installed from the launcher.

Yes, it will. If you rebuild the editor itself, the project will recognize that the engine build has changed and it will ask you to convert the project to the new editor build. You don’t lose any data or work when you do this.

Don’t worry, you can still use all of your blueprints! In fact, I take a bit of a hybrid approach. I create code classes which implement stuff I don’t want to do in blueprints. Then I let my blueprints inherit from those classes and they can finish implementing the rest of the game logic. Within the code, you can decide what kinds of things are exposed and accessible to blueprints, so that lets you do a bit of the information hiding and encapsulation software engineering patterns.

Again, you don’t need to download the engine source code to add C++ code to your project. You only need the engine source code if you want to change or add behaviors to the engine itself.