View Full Version : Workflow for multiple projects and version control
aeonflame
11-06-2009, 06:32 AM
Hi.
I'm looking into using UDK for a few projects of mine, but I'm curious about a few things.
What is the recommended workflow for multiple projects?
Should I be using a separate install for each project, or is there some way of creating external project directories and referencing them from one install?
I've been looking at the docs on directory structure at http://udn.epicgames.com/Three/DirectoryLayout.html, which seems to imply you can create separate game projects. I've tried duplicating UTGame to TestGame, and passing the -game=Test parameter to the UDK Launcher, and UDK editor, but this doesn't seem to make any difference, it still seems to use UTGame. This seems to suggest that only one modification is supported per UDK install, but I'd like to be sure :)
Secondly, what's the recommended way of integrating version control? I'm currently using the free 2-user Perforce license for all my other projects, so if possible I'd like to continue using Perforce for my UDK projects too. It seems like the UDK editor has some sort of version control integration, but the menu items always seem to be blanked out, and I can't find any information on setting up bindings etc... Is this supported in UDK, or is it a leftover from the official UnrealEd for official licensees?
For general usage, what are people typically committing to version control? The entire UDK folder including binaries, or simply the UTGame and Development folders?
It looks like I can move the development folder into the UTGame folder, so I can just commit a single folder if necessary by modifying the following entry in UTEngine.ini:
[UnrealEd.EditorEngine]
EditPackagesInPath=..\Development\Src
I'm sure some people working on larger UT3 mods have already looked into some of this, but I can't seem to find any information publically available.
Any suggestions are hugely welcome!
Cheers.
lcizzle
11-06-2009, 01:28 PM
Agreed, some of this stuff would be nice to know.
lcizzle
11-06-2009, 04:19 PM
Steve Polge
You can put all un-cooked content in the utgame\content directory, or add a new paths entry in the [Core.System] of UTEngine.ini (in utgame\config) to point to the directory containing your content. Since your packaged mod will include only the content cooked into your maps and compiled scripts, it isn't necessary to keep them separated during development from UT content except for your own organizational purposes.
That's what I was unsure about. Does this answer your question too?
DarkVeil
11-06-2009, 04:56 PM
What is the recommended workflow for multiple projects?
Should I be using a separate install for each project, or is there some way of creating external project directories and referencing them from one install?
It's possible to "publish" multiple games (cooked maps) from a single UDK/UTGame installation, but multiple games within a single development directory isn't really supported in UDK. Instead, simply create multiple root UDK directories, one for each game you're creating.
It seems like the UDK editor has some sort of version control integration, but the menu items always seem to be blanked out
It's easy to enable source control features in UDK!
Simply open up UTEditorUserSettings.ini and search for "SourceControl". You'll want to make sure the "Disabled" option is set to "false". Next time you start the UDK Editor, you'll see a Perforce dialog box where you can select your workspace and user settings to use with UDK.
For example, in UTEditorUserSettings.ini:
[SourceControl]
Disabled=False
Also, you can change the default value for other programmers by changing the option in UTGame's DefaultEditorUserSettings.ini file.
Good luck!
aeonflame
11-06-2009, 05:33 PM
Awesome, thanks for the reply.
It's possible to "publish" multiple games (cooked maps) from a single UDK/UTGame installation, but multiple games within a single development directory isn't really supported in UDK. Instead, simply create multiple root UDK directories, one for each game you're creating.
Okay, that's all I wanted to know. Multiple UDK installs it is!
It's easy to enable source control features in UDK!
...
Well, so it is! Seems to work well for the most part. I've successfully created a package and committed it with the integration.
There was one issue however, as a test I tried to commit all the Engine assets, however whenever I try this it crashes. This happens 100% of the time.
The log is available at:
http://aeonflame.com/downloads/udk/sccrash/Launch.log
and the crashdump at:
http://aeonflame.com/downloads/udk/sccrash/unreal-v5860-2009.11.06-22.14.32.dmp
Repro steps:
Load UDK
Open content browser
Right-click on engine package folder, select source control->Add to Depot...
Then select Source Control->Submit...
Before the commit dialog pops up the application crashes.
Apart from that all is okay though. My current plan is to check in the entire UDK folder, and then use the integrated source control as I work. Will committing everything (and this causing everything to be read-only) cause any potential problems?
[EDIT]
Having done some more digging, it seems that trying to 'Submit' a folder is what causes the issue. Submitting any one package works fine, but trying to commit a folder of packages kills it. As such this isn't such a large issue, since you can right-click on a single item and select everything manually from the commit dialog (or rather, I assume you can, and this won't cause other issues within the editor).
DarkVeil
11-06-2009, 06:41 PM
Sorry for the inconvenience. We're looking into this crash. Thanks for providing detailed repro steps!
roychr
11-06-2009, 10:51 PM
Question #1 has the above problem has been fixed and could we use subversion has an alternative if my team is already used to subversion via tortoise. For example Unity had issues with Subversion pro 2.6...
AaronJones
11-09-2009, 01:39 PM
I've reproduced the issue locally. We'll take a look at this; thanks for the steps/details!
aeonflame
11-09-2009, 06:07 PM
No problem, thanks for looking into it! :)
Iron_Mala
11-09-2009, 06:17 PM
Getting the hook, is UDK only compatible with Perforce?
How should I integrate(if possible) with other VCSs?
Out team plan to use Microsoft Team Foundation Server and all our server side code are in it... How could we use it with our client code?
Thanks
aeonflame
11-09-2009, 06:41 PM
I have not tried it, since I use perforce. But according to another thread on these forums it should work with anything that has an SCC binding available. A quick google seems to imply you can get one for TFS from here: http://go.microsoft.com/fwlink/?LinkId=58454.
For subversion, try: http://ankhsvn.open.collab.net/
I assume the process will be the same, simply set Disabled under [SourceControl] in UTEditorUserSettings.ini to false.
Iron_Mala
11-09-2009, 06:55 PM
I have not tried it, since I use perforce. But according to another thread on these forums it should work with anything that has an SCC binding available. A quick google seems to imply you can get one for TFS from here: http://go.microsoft.com/fwlink/?LinkId=58454.
For subversion, try: http://ankhsvn.open.collab.net/
I assume the process will be the same, simply set Disabled under [SourceControl] in UTEditorUserSettings.ini to false.
Oh! Awesome!
Thanks a lot aeonflame.
Will check it here.
Regards...
Iron_Mala
11-09-2009, 07:29 PM
Another point I forgot to ask... Which folders should be added to source control, and which ones should be ignored?
I mean, I want to build a game from scratch, without any demo world, map, meshs etc...
So, what from UDK directory should I extract, put on an empty folder, and start my project from that adding it to source control?
Thanks
SizzlinMo
11-18-2009, 05:55 AM
I have not tried it, since I use perforce. But according to another thread on these forums it should work with anything that has an SCC binding available. A quick google seems to imply you can get one for TFS from here: http://go.microsoft.com/fwlink/?LinkId=58454.
For subversion, try: http://ankhsvn.open.collab.net/
I assume the process will be the same, simply set Disabled under [SourceControl] in UTEditorUserSettings.ini to false.
I have had a look at support for SVN in UDK and came up with the following results.
Unified SCC
Displays the following error on editor loading “Object instance not set to an instance of an object”. Occasionally fails to reach this far and hangs on the editor splash displaying the state "Connecting to Source Control Server"
Agent SVN
Crashes UDK on loading.
TamTam SVN SCC
Is detected (Displays evaluation countdown on editor exit) but does not enable the source control buttons in UDK.
AnkhSVN
Does not support universal SCC protocol but a newer version for VS 2008+ etc.
Visual SVN
Is not intended as a general purpose solution so does not support SCC (in case you were wondering)
PushOK (website) (http://www.pushok.com/soft_download.php?id=3)
Seems to work fine. Horrible UI if you ask me but that’s hardly UDKs fault.
Let it be said that this was tested on Windows 7 which I am quite new to so it is still possible that some of these will work on XP/Vista.
photex
12-02-2009, 11:46 PM
Thanks for taking the time to test these and let us know how they work.
Iron_Mala
12-03-2009, 06:50 AM
What about Microsoft Team Foundation Server with UDK? Anyone had tried it some time?
Didanix
12-03-2009, 07:44 AM
I'm also interested in getting Perforce to work with the UDK, though I haven't tested it yet.
Keep up the good work, loving it so far. :-)
EDIT: Tried adding all the packages to the depot and I can confirm that submitting any of the package folders (for example Engine) crashes the UDK. Haven't tried with individual packages yet, though.
Tom Shannon
12-08-2009, 01:26 PM
When I set
[SourceControl]
Disabled=False
Nothing happens when I open UDK (it's not asking for my SCC login info)
I'm running XP 64 Visual SVN and PushOK SVNSCC x64
Iron_Mala
12-08-2009, 01:42 PM
For me it asks the login and pass of the Team Foundation server(since I already installed the SCC provider from Microsoft) it says, connecting under the splash screen of editor but, nothing happens... Any clues???
Tom Shannon
12-16-2009, 02:39 PM
When I set
[SourceControl]
Disabled=False
Nothing happens when I open UDK (it's not asking for my SCC login info)
Bump!
Yeah, still happening. I never can get the login info to come up. Any clues?
srijken
12-19-2009, 04:10 PM
AnkhSVN
Does not support universal SCC protocol but a newer version for VS 2008+ etc.
Just to clarify some things :). The new version is for 2005, 2008 and 2010, and it *is* a universal SCC Provider
Iron_Mala
12-20-2009, 10:04 PM
I Still cant use the SCC provider for VS2k8 and use TFS on it...
:(
srijken
12-21-2009, 06:36 AM
You're versioning the same solution in 2 systems at the same time?
openHand
12-21-2009, 01:50 PM
so is there a general consensus on what scc to use with UDK? Any good tutorials for setting it up?
Gambit
12-13-2010, 09:37 AM
Has anyone tried Github?
Lemming42
02-08-2011, 09:19 PM
When I set
[SourceControl]
Disabled=False
Nothing happens when I open UDK (it's not asking for my SCC login info)
I'm running XP 64 Visual SVN and PushOK SVNSCC x64
Have you tried clicking the "Connect Source Control" button that sits on the bottom of the main window? That forces the login screen to appear. It's the far left button on the bottom row, below the main viewport. I can post a screenshot if it helps.
meintgames
01-25-2012, 02:21 PM
When I set
[SourceControl]
Disabled=False
Nothing happens when I open UDK (it's not asking for my SCC login info)
I'm running XP 64 Visual SVN and PushOK SVNSCC x64
Also, did you refresh the ini file?
You should remove the UDKEditor.ini and UDKEditorUserSettings.ini after updating DefaultEditor.ini and DefaultEditorUserSettings.ini to refresh them.
Powered by vBulletin® Version 4.2.0 Copyright © 2013 vBulletin Solutions, Inc. All rights reserved.