Collaberation between artists and programmers

Every so often, someone will want to make a team game. I have never seen any blenderartists team game finished, or even get beyond an ever-increasing pile of assets, or maybe, if started by a programmer, never really getting team members.

There are several things team’s need to be able to do:

  • Communicate with each other
  • Submit work for inclusion in the project
  • Critique other peoples work
    Where ‘work’ can be art, code, sound etc.

A fantastic platform for programmers is github or gitlab. It provides wiki’s, bugtrackers, and lots of other stuff. Being based on a version control system is also a big plus. As a programmer, I would 100% recommend using gitlab for collaborating between team members.
But artists and for those that have never used git before, the learning curve is dreadful.

So what I want to know are:

  • Are their any services people use for managing team projects (including files, version control, feedback etc.) that are palatable to artists, but offer enough code management tools to be useful to programmers.

File Sharing

  • Dropbox, Google Drive etc.: great for artists as it’s simple to set up, but not at all good for code.
  • Git, SVN, Bazaar: Great for programmers, but incomprehensible to mere mortals (ahem, er, artists).

Instant Communication

  • IRC: No history/logs for review later
  • Skype: Linux client sucks. Seriously. Even the web client is pretty bad.

Project Tracking

  • Forums (eg phpbb, disquel): Work well, but spam-bots love them
  • Emails: Private and get ‘accidentally on purpose’ deleted
  • Wiki’s: Can work quite well so long as they have page history. A pain to maintain, and not that useful for communication, more for documentation.

What other services are there?

I think a very robust Verse client would be a very good idea :smiley:

chat + blendering in the same window, I can code, and direct when artists need direction etc.

It’s not ideal but you can also try using both, git and dropbox for example.

You make a git repository and start coding the game in it (also for level editors). Once you have a first version you copy that version to a dropbox folder so that artists can see how the game is looking. Once in a while you update the dropbox with the new version of the game (when you have a stable release) and copy the changes made by artists on the dropbox to the git repository (whenever you want).

This way artists are always working with a stable release and don’t interfere with the repository.

P.S. If you make all your game in a .blend forget about it, for this to work a game must consist of multiple blends (not only for levels, also for models), and python files. Also textures, sounds and so one should be all external. In other words, use BGECore Framework :smiley:

Hi, for upbge which is more a coding project, we (small team) use a very large set of tools:

  • The main is github that we use for code sharing, review, features requests, bug reports, but you’re right, it not easy to learn. I don’t know gitlab (if this is something different from github).
  • For file sharing beetween us, we often use pasteall, and other tools whenwe want to have persistant data (not removed after 5 month).
  • For project interface with people, we have the help of a web developper (which gave us almost all the tools that the Blender foundation use already…)
  • For tchat, IRC is fine, and both clients I used (on windows) are free and have a log history: hex chat and pidgin (linux/windows compatible)
  • We sometimes use mails.
  • We also use framapad for project planning for the future month (which is a text collaborative tool. Everyone can write and do comments in the same text file which is online and you just have to bookmark the link).
  • We also use team viewer to give help to someone (generally for cross platform issues). Someone can take the control over your computer to help you.

And we have a leader, which is very important in my opinion, who is more experienced than us, very motivated, and give us ideas and propose us tasks that we can make/or not. As it’s volonteer work, we can manage our work as we want and someone who is interested can join us and leave the project doesn’t fit his expectations.

It’s mainly useful to evaluate their feature sets.

Git Is great for diffable files but unless you use lfs or other git variants, you can’t really store binary / assets without large storage costs. A vcs is a fundamental requirement for programming in this day and age.

For assets, a more loose version in system is fine, using drive or dropbox.

For chat, irc is good for intermediate conversation and Skype or hangouts for the organised discussions.

Google docs is good for collaborative documents, and trello and hackpad are good for todos

although not in game setups, but i used torrent-sync a lot.

  • no limits to size
  • not hosted elsewhere just on your machines (privacy it yours not theirs)
  • all sides stay in sync
  • not realtime working on same blend file (maybe use linking to other blend files for assets ?)

as for collaboration … maybe write an addon for that (to chat), or get a more Second Live approach into the game engine ea multiple people in same screen, multiplayer interaction.

You should add Slack as a communication tool. It is much better than IRC. It saves messages, easily upload files, and a lot of other things.

Slack looks great… the only thing is the 5gb max on the free version… but i guess that could be ok…

This might sound stupid because one it’s not free,
Second this ain’t advertising for microsoft.
Third but not least microsoft sharepoint does all of what you asked.
But again you have to pay per user.