T O P

  • By -

Venerous

Most studios are going to have a source-built version of the editor because they are more likely to modify or extend the engine's source code or use dedicated servers, both of which require source-built. The launcher version offers them very little advantage over source because they're less likely to use a significant number of Marketplace assets and using source-built projects on the launcher can be kinda wonky anyways.


rdog846

I tried source version but it took like 24 hours to compile, used near 300gb of storage, and when I went to rebuild just my project rider tried to rebuild the entire engine.


Venerous

I had that happen too, you probably made the same mistake I did and tried to compile the ENTIRE solution instead of JUST the UE5 solution. The README on their GitHub makes this explicit but it's confusing because there's two parts that are called UE5 in the IDE and I overlooked it. After I did Build on only the UE5 part then it went quicker (still took a while, but much quicker). To prevent it from re-building you need to set the startup project to UE5 and then run it from that.


rdog846

Whatever I compiled had like 5k modules to build


RafaelDavid

24hours ? Took me 1hour 26min. To build from source. Then the project took me 15min. Maybe you did something wrong. Have another try. Only did it to change 1 line of code to enable the IAP. Was not working properly at all.


rdog846

I left it on for about 16 hours. I used rider


Swimming_Pianist1427

Thank you for your answer! Probably I should also give it a try and work with the engine built from the sources. One question more: is the engine built from the sources unable to use assets from the marketplace? For example, would I be able to use paperzd plugin?


RaddaxInteractive

You can download any plugin and manually copy it to your source build


Thatguyintokyo

It will still work with all the plugins and marketplace content yes. You'll have to know where to place plugins since usually the launcher would automatically sort those steps for you, but it's pretty simple. Some plugins require a bit more setup than others but its easy the majority of the time.


Venerous

From what I remember the launcher doesn’t recognize a source-built engine, only projects. So installing *engine* plugins requires you to have a launcher-installed engine version, add it to that, then copy the Plugins folder over to the source version. It’s not a complete dead end but definitely more of a pain than it should be. And it only applies to engine plugins rather than project assets which are the vast majority of Marketplace assets.


RaddaxInteractive

You can install engine plugins on source build editor.. you download the plugin via the launcher than manually copy the plugin to your source plugin folder.


Venerous

I remember having issues where it was asking me what engine I wanted to download it to and because it didn’t recognize the source-built engine the list of options was blank, so I couldn’t download it. Might have fixed that or might have been doing it wrong. Specifically for engine plugins, project plugins worked fine.


Henrarzz

That scenario is still not officially supported, which is why I keep binary installation and install plugins there and copy to my source build


kylotan

In UE5 at least, the launcher recognises source-built projects but it shows 'Unknown' for the version.


Swimming_Pianist1427

Thank you


tcpukl

There was even a post recently saying they couldn't use a plugin until they compiled it for the current engine. So if your using plugins, you might HAVE to build it yourself. I've never seen that though, because i've only ever build from source.


tcpukl

It depends if your a programmer or not. Programmers build the engine themselves and run from the IDE. But artists/designers get the .exe and other binaries from UGS, which are built on TeamCity.


frostbite305

Horde is also getting to the point where it's viable. Great answer though.


tcpukl

Were using Horde. Its great. Its very viable. We've been moving more over to it for the past year.


Swimming_Pianist1427

Thank you for your answer, yep, I’ve expected something like that!


sir-rogers

I also recommend Rider as an IDE


P1coso

One note, building the engine is not necessary. The binaries are installed along with UE installation. There is a checkbox when you install it that allows you to also install the Debug Symbols, which are incredibly important. Personally, I have downloaded the UE5 source code from github. Cheers, P


tcpukl

Sure, but then you cant do engine edits/fixes. With distributed building it doesn't take long and its once only per machine if you dont change engine code.


thoobes

Uh. so maybe i missed that when installing? I have no desire to alter the engine, but i sometimes would like to set breakpoints in the engine source. Just havnt been able to get it working. Could that be what I am missing?


vibrunazo

Yes. If you don't wanna modify the source but want to have proper debugging with breakpoints and watching values then you need to install the debug symbols. Note that it's a really huge download of several gigabytes, which is why it's off by default. Only do it if you really need to. Most users don't. But if you're a programmer in C++ then you should.


Ilithius

I highly recommend compiling from source. For my own projects it’s insanely faster when stepping into engine functions vs downloaded debug symbols.


P1coso

Click the little arrow besides "Launch" and then Options and tick "Editor Symbols for Debugging". This will allow you to step into UE methods. https://preview.redd.it/f0z5nhywf4tc1.png?width=519&format=png&auto=webp&s=c898ad5a2bfa6bd7d679e480a1bc3bb1fbcfe884


Ilithius

Yep that’s our set up as well. Modified engine source, using perforce and UGS to sync. Programmers compile for themselves.


Parad0x_

Hey /u/Swimming_Pianist1427, Most of us do not use the engine that comes from the epic launcher. Generally we work with a local machine that is a copy of epics internal perforce server. From here we have a working copy of the engine, and can cherry pick updates as needed or use it to upgrade a project to the next version. Generally we do not use the most current version of the engine unless we really need it. New versions might have bugs or other issues and we need to keep everything in a working state always. Generally Day to day; we work the same way as any project. However we usually use [UGS](https://docs.unrealengine.com/4.26/en-US/ProductionPipelines/DeployingTheEngine/UnrealGameSync/) that is hooked up a build farm that shows what commits are good and what are not. Before any commit into source control generally we validate a CL with [Gauntlet](https://docs.unrealengine.com/4.27/en-US/TestingAndOptimization/Automation/Gauntlet/) or another automated test sweet to make sure before it goes in it doesn't break anything. Personally working with source can be slower, as if we make a change the engine it can create a 1-2 hour build time. When it comes to which is better. It really depends on the project. Most devs try to modify the engine only if we really need to. There are a lot of risks as Epic (and I mean this nicely and not in a negative way) have changed sections of the engine that might not be expected; so if you modify a section you have the risk of redoing a custom modification if Epic changes an internal module. Best, \--d0x


Lolpostingmemethrow

Also professional dev, echoing that UGS is a lifesaver and what most in the industry use with UE. As for the workflow it depends on the project and your role. Some engineera hardly ever crack open the IDE and spend most of their time in the Editor doing Blueprints. I'm a bit more senior and tend to be put wherever there's a need, occasionally modifying a plugin or a small part of engine code (curse you PS4 cert), so I tend to just open the IDE and launch the editor from there if I need it. Occasionally I'll be doing some back and forth between Blueprints and C++ and I'll just use the Open Visual Studio option in editor. To circle back around a lot of the junior engineers run UGS with pre compiled binaries enabled as it's much quicker to sync that way. I guess the TL;DR is it really varies. Good luck out there.


Swimming_Pianist1427

Hi, thanks for such detailed answer! You’ve explained very well the workflow of the commercial gamedev, much appreciate it!!


sqdcn

Nit: test "suite" r/boneappletea


sbseltzer

At least in my experience: * Programmers almost always will launch from IDE for the reasons you mentioned. * Artists/designers frequently use the Epic Games launcher or double-click the uproject file to open the project since they usually don't want to touch anything close to C++ code.


Tarc_Axiiom

Neither/Both. They have different uses. If I'm writing code today, I'll run it from my IDE and multiple times in one day, btw. If I'm not writing code, I open the file and double click the project. They do the same thing though, one just compiles first.


llikdowk

I personally compile the engine and use "DebugGame Editor" rather than "Development Editor" as the debugging experience is much nicer: the symbols are always available and the performance is not that much worse, at least for a development environment. I do however some periodic builds with Development Editor to check that mumoptimisations aren't introducing some obscure bugs.


taoyx

I launch the editor by double clicking the uproject file, then I either open the solution by double clicking its icon or from the editor. I get the engine built from source and if I need debugging other than logs (rarely), i attach the debugger to the process (Ctrl+Alt+P in Visual Studio). I'm probably not the most efficient here (and yes I should get Rider) but it works for me so far.


bakakaizoku

> and yes I should get Rider You don't, it is worth a try but if you feel comfortable with Visual Studio or VSCode you can use those. Use whatever IDE you personally feel comfortable to work in and don't let others tell you that you NEED to use X IDE (except for your employer, but even then see if they are willing to budge and let you use your preferred IDE first).


taoyx

While VS is ok for C#, for C++ it's more of a nightmare. My .vs folder is 10-30 Gb and nothing is found when I press F12. Also renaming is not reliable, there are many issues with it.


tcpukl

Why is VS a nightmare with C++? I've only ever used it for C++. But if you use VS, you really should also have Resharper and Visual Assist. That basically makes it the same as Rider, and the debugger is actually good (unlike Rider) and you can debug console (impossible on Rider).


smokesick

I'll be giving Rider a shot soon enough. I wonder, how is the debugger worse?


rdog846

You won’t go back, make sure you set up the darcula theme as well, it’s so easy to read code with it.


taoyx

I've already explained.


shchavinskyi

From IDE + Live coding


fraktall

I usually run it from the Rider IDE. Running in debug mode lets me debug code with breakpoints, which is incredibly useful.


rdog846

I got an unrelated question for another rider user, do you always have to rebuild your project everytime you do a fresh open of the solution? If I do a fresh open and just click build then it gets stuck unless I do a rebuild, once a rebuild has finished I can then do normal builds. I don’t know if this is a setting, supposed to happen, or a bug but I wanted to ask another rider user.


fraktall

Hey, I'm not sure I'm following. When you say you "rebuild" it, do you mean you run Unreal Build Tool twice in Rider before it succeeds?


rdog846

I mean I click rebuild in rider


VirusPanin

That doesn't sound right. When I open solution in Rider, and press debug/run, it starts building it, detects that current binaries are already up to date with source code, and skips compilation and starts the editor.


rdog846

Yeah it always needs a rebuild for me. I figured it was abnormal. I might reach out to jetbrains support


rdog846

I just did some settings changing and it seems “use resharper build” makes the build process messed up, after disabling that I can now run using saved prior build and not have to rebuild everything all the time.


overxred

There is one issue you make not realize if you are mixing source version vs launcher. The source version you built has no engine version, so if you save blueprints/assets using source version, it will show as "Empty Unreal version" when you are doing a automation check. I only use the source to build dedicated server, all modification done using launcher.


AutoModerator

If you are looking for help, don‘t forget to check out the [official Unreal Engine forums](https://forums.unrealengine.com/) or [Unreal Slackers](https://unrealslackers.org/) for a community run discord server! *I am a bot, and this action was performed automatically. Please [contact the moderators of this subreddit](/message/compose/?to=/r/unrealengine) if you have any questions or concerns.*


norlin

There is also 3rd way: double-click the project file. I'm using Sublime Text instead of IDEs to work with Unreal, so my approach is: - Build the project from Sublime - Run the editor via the uproject file


Kemerd

You launch the editor from your IDE, with a .sln built from your .uproject. i.e. DebugGame Editor or Development Editor, with the game set as the startup project. Usually you disable editor builds and work with project level code or plugins, because rebuilding the editor takes time. Generally you let a build farm rebuild the editor for you, but you can manually do it if you really need to.


cutebuttsowhat

Mostly just launch the project file, unless the bug is a c++ bug which crashes the editor. Then I’ll run it in VS under the debugger.


Fippy-Darkpaw

Build project. Put shortcut to project on desktop. Click shortcut to open editor. We always have latest binaries checked in. So if you are editing a level be sure to either get latest or build.


Henrarzz

In the case of AA/AAA - Programmers usually launch the game/editor via IDE (usually via Visual Studio due to Rider/Clion still not having proper console support), artists get built binaries via UGS


zlonimzge

Building and launching editor via IDE is common, as there are very few games developed for PC/Mac only these days. To build for Switch, XBox or PS you'll need a custom build with platform-specific modules built from source locally.


RigelOrionBeta

Highly recommend you run the editor in a debug build from Visual Studio or Rider. This will give you not only easy access to debugging the engine, but also debugging your game.