Is there a way to build sources from github in away, where I wouldn’t need to rebuild them everytime I decide to rebuild my game sources ?
It’s pretty annoying, sometimes I want to rebuild my game, but that also means I need to rebuild entire engine, and that can take a while. Obviously launcher builds do not suffer from it, so I guess there must be some way to do it with github as well.
The problem is that when you need to rebuild your game UBT cleans the engine and editor along and thus rebuilds everything. If you are forced to rebuild your game code you’d go to manually delete the Binaries and the Intermediate under your games project directory, and then recreate the project files. I think you dont have to close VS for that, just reload the solution when the project files are fully regenerated. Then the games object and binary files are quite clean now, and you can safely Build them instead of rebuild everything.
I havent found any better way and if someone knows, please share
=\ Rebuilding with a single keypress isn’t really the issue. We are trying to cut down on compilation times b/c the full engine, editor and such are wiped with each build too. It would be optimal if we could focus on the game module itself and not have it require the other projects.
the issue is when you Rebuild your project (the “re-” part is the culprit), the engines editor target gets cleaned and rebuild along with the games object and exe files. So automatic cleaning of just the games project isnt sensible.
Building the game project (without “re-” ) is working just fine, as you point out in your tutorial and as your answer.
So if something goes wrong with building, as with inside’s build, he has to clean it manually. Not exactly difficult but not a great workflow. F.e. my computer isnt the fastest, if I have to rebuild Im bound to wait ages.
PS saw your edit. I gonna try if the command “Build only project” does it.
Perfectly clear. Sorry about that, my head must have been foggy over the weekend when i was looking at it.
Your fix works about the same, although it does appear to only target the game project, so that’s good. I was using Build > Build Project, so now i have a hot key for it. Ill keep pushing for better compile times, but i think this is a fix.
Full solution build with only game changes:
UBT execution time: 20.44 seconds
Building my game project with only game changes:
UBT execution time: 17.00 seconds
Oh Im sorry if I wasnt clear. English is not my first language, so my excuses if I got it wrong or overly complex.
So I just try again, simple and easy, so everybody understands it right.
Build Project -> Builds the game projects changed files.
Rebuild Project (Rebuild Selection keyboard command as Rama suggested) -> Rebuilds the Engine, Editor and Game, just all of it. The difference for me is far more then 3 seconds (or 300, whatever that point means, thousands separators, decimal point and number grouping are not the same everywhere).
Thats with any version including 4.5 Preview, and thats the unwished behaviour some of us dont want. What inside askes for as far as I understand, and what I would find very convenient, would be that if you rebuild the game project, that it cleans and build just that project, and not anything else.
Might be helping to deselect the engine targets from the solution configuration to achieve that but Im not going to start another rebuild just now.
I hope this is easy to understand and clear. Maybe I did misunderstand something and beeing getting off topic, but I dont think I am.
I believe that that is exactly his problem. He is having no trouble building just the project, hotkey or otherwise. That works fine.
The problem is that the rebuild command triggers what would be a full solution rebuild rather than localized to the project, but only if the engine is included in the generated solution.
The best solution I can think of, beyond fixing UBT (because I do consider this a bug, personally), would be to add an extension for VS to do the localized clean yourself, and just stick to build rather than rebuild.
I’d have to check the checkin history, but I think they might have changed the default arguments when generating projects. If someone here is still generating projects, they can use this commandline instead to generate them: