A already made a bug report, but bug repors are very often not that effective (forgotten). I am making copy here, so others can put their experience.
Most anoying bugs:
-recently browsed materials, models, etc… are considered changed, even if they were only viewed. Result? I have very soon hundreds of files to be commited or discarded. This is very annoying.
-with bigger project (10GB+?, or maybe just lots of updates) there is lots of problems with synchronizing. It is not possible to sync project to empty project. It crashes all the time. New people are not able to sync our project (20GB now), syncing is crashing. Small updates are OK, but such big update is not possible. After literally one week of trying to update project from 0 by selectively choosing updates we gave up.
-it is not possible to copy synced project, I copied my project to somebody else (he was not able to synce because problem mentioned above), but assets server consider this all new/changed files and offers discard/commit. OMG, WHY? You really should do something with mechanism of identifying what is new file and what not.
-commiting is very slow, I am suspecting, that bigger the project is, the slower commit. 100MB commit can take 1/2 hour on local network. Syncing is OK.
Now the asset server is totally useless. We are waiting for svn support in 3.5, but anyway assets server licence is not that cheap and it does not work. It looks like somebody made it and nobody tried this in bigger project.
Other situation: First sync miraculously does not crash during initiation and it is syncing. After many hours, when it downloads many GBs, there is some problem on network, asset server is offline for few minutes and syncing crashes. This is OK. But when I start syncing again, it is going from beginning, like there is no 12GB of download data. WTF?? Who designed this piece of crap? Asset server is very expensive, it does not work and support is ZERO.
The asset server works like a DB: its all or nothing
For big projects its definitely a pain, I would never do the initial pull through it, but through a 7z projects … is also worlds smaller
Well, it means, that this project has zero priority and no testing was done. Majority of these problems can be found during testing of basic functionality. If this functionality was part of PRO, I wouldnt care much, but it is paid extra and it is quite expensive.
Agreed, but its good that you got it, cause in the future it will likely change its name to Team License or something alike cause from what mentioned on the blog etc, the SVN / Perforce editor windows, cache server and potentially other features will become exclusive to this license and not be available in free or pro
I expect that any new ‘team supportive features’ (beyond the meta) in the future will require its ownership or you will have to work without them.
They might be holding on any updates because of the major rewrite of 3.5. Being able to teamwork on the scenes as announced in 3.5 is going to be a game-changer along many other features. Won’t be surprised to see AS 3.0 *(bad bad name for a product with Flash integration coming) released along 3.5. (They better support it…)
In all cases, from following Aras tweets; this year was a major revamp of their workflow and they are still trying to adjust to it. I know it’s poor comfort for the loss of productivity (read: $) but they are working on 3.5 features since the beginning of the year, so all changes are branches of the “out dated” 3.x ( file formats, OS support, multithreading code, ect).
Considering Unity is still a relatively small team, they are literary working on 2 “Unitys” at the same time and probably 2 Asset Servers too, but I think they probably just dumped the old one; It’s still 3 products in all!. In their place I’ll prioritize the newest ones and only fix the money-cow developers problems (Pro licenses with mobile) until 3.5 release.
Please read this as just conjecture, I can’t really prove any of this but if it makes sense it would explain quite a lot of why some frustration is accumulating from all fronts. (Just see the number of topics about criticism from the 3.2 → 3.41 releases relative silence from unity devs on the forums)
there is no teamwork on scenes, the changes on 3.5 is that you can finally merge changes from different team members. Thats naturally a major step, but not the same as teamwork on scenes as expected in 2011 with concurrent scene editing which would require a realtime server backend, not just discrete step versioning.
The thing closest to this was a 3rd party plugin in works, called Asset Cloud (see showcase board) that sadly vanished or didn’t develop any further
As for relatively small: I’ve to disagree! with 70 or so engineers it is by now the 3rd largest game engine engineering team on the globe (epic and cry are larger, but no other engine team to my knowledge gets up to that engineers numbers, be it gamebryo or trinigy). The reason its though still not as simple as that is that unity is the only general purpose engine of these 3 large teams, the other two focus on FPS primarily and the rest is ‘your problem’ which is a major difference in the effort you have to put in … Also I recall that UT has had major problems even finding someone for the vacant spots on the Asset Server side … the job posting was there for 8+ months and I am not sure if its filled by now. Finding capable VCS system developers isn’t that easy cause its no really ‘booming field’, most people don’t give a crap about learning it at all as there are enough systems, no need to develop an own one etc and finding such a capable talented dev is a requirement for this position, what happens if someone not from the field does it is what we bear with at the time.
I’m personally happy with my investment if enough of the team features end on this now Asset Server then Team License exclusively so the investment and upgrade to U3 of it made sense. I’ve no problem using GIT or SVN for the versioning with the plain text files etc, cause I never really liked the AS anyway … postgres sql (still the worst sql server on earth due to its system hogging nature) stream server with ‘monolithic commit and updates’ being called a versioning system never really made it for me, its only benefit is that non artists don’t need max / maya installed to make use of max and maya files in the project as the cache is synced along
For artists I tend to believe there is nothing better than AS for an out-of-the-box solution, extremely fast to implement with minimum maintenance overhead on small-midLarge projects ( ~ 3gb compressed per backup, on a clean project). I used SVN during my days in web-development however, with my today’s limited infrastructure, no dedicated server and reliance on in-house contractors for artist-related-work, it’s a no-go.
Back to AS; It’s a good production product in <5 person teams over intranet-type of connections. Scaling that, I can see eventual performance problems and frustrations as you say and can see in this thread.
About the teamwork aspect, you are right; I didn’t use the right term but it is a significant improvement nevertheless. I guess my point was more about Unity having problems supporting old-infrastructures (pre-3.5) while doing an important re-vamp of their base code without putting aside support. (removal of old OS support; multithreading; new functionalities; and all the goodies we hope will work when the time comes!)
Looking at the team page of Unity web site, I don’t see where you take the 70 engineers number… more like 60 non-management employees and from those; 1/2 are QA, console specific developers or marketing. So, ~30 developers (discarding consoles including all the artists, technical or not). The page might be outdated though…
Well, I dont agree with this. Give me one average developer, source code of Unity, some budget and I will deliver you decent VCS system (or give me budget and source code of Unity).This is not about being talented developer, but about knowing what must be done and some decent testing. And that know-how is nothing secret, funcionality is obvious and all algorithms and approaches were 1000x described.
Aplication design (functionality, use cases, procesess) shouldnt be on the shoulders of developer, but some architect, or product manager or whatever. Developer just develops. If I have brilliant developer, everything is far easier, but it is not necessary. The most important is having clear idea what must be done and do decent testing.
well use cases would require that the ‘eat your own dogs food’ pattern would be followed more closely and I’m unsure that Unity Studios serve this purpose well enough at the time … Unity on that front suffers similar problems as torque always suffered them. Technicians creating technology for other technicians but not for own usage → will not always do what you expect and sometimes lack fundamental stuff just cause it in theory never mattered
I am calling this developement anarchy. Products from technicians are very often brilliant in something, but globally unusable (terrible GUI, lack of basic functionality…)…It reminds me one classical joke:
Linux guy: “Why should I click on some stupid windows icon, I rather write grep -v bash /etc/passwd | grep -v nologin”
If unity developement look like they hire some programmer, tell him do this and leave it on him, this is REALLY bad. I know few companies which works like this (it is VERY typical for companies which grew too fast) and it ALWAYS ends really bad. Programmer cant be product owner/product manager. This is something which works in small companies/small projects, but never in something biger.
Application must be specified by person, who exactly understands needs of users and has some vision for further growth. Very few technicians/programmers can do this.
I’m using the AS with a small, 8 persons team. The project is about 5GB in size. Initial pull from AS is nearly impossible - it takes more than 12 hours on local wired net. The PostgreSQL is working at 100% CPU performing its queries and download speed is near zero for initial hours - the entire time is used by the DB. The only way to download the project is copy it from someone and then sync the latest changes.
For the software so expensive I would expect it would not only work but work with decent performance.
never had that problem on my win2k8 system and thats only a Core 2 Duo E6600 (2x2.4ghz) on 4GB RAM, data on 3x1TB RAID5 with AS 2.0.0.0, up to ~8GB it normally worked within the network. problem is the moment its meant to go outside it will not work out of my experience due to the lack ‘multi step updates’. either the update goes through as a single block or not at all
I feel that it’s a waste of time for Unity to develop a VCS. It’s not a simple task, and there are so many mature packages out there already. I was using Perforce at my last job for the last six years, and it is light years ahead of the asset server. The AS UI is so clunky, not to mention all the performance issues mentioned above when syncing large projects. It would be nice if they just provided integration with existing third party systems.
The integration with Perforce and Subversion is coming with 3.5. As I understood, it will cost you extra which isn’t nice if you want to use Perforce which is also quite expensive.
Will only cost you extra if you don’t already have an Asset Server license (guess with the changes it will be called something like Team Service License then and no longer AS, as the Asset Cache Server was mentioned to be bound to it too which is a team oriented server)
and why it shouldn’t be nice is beyond me … you can throw out 4-5 figure USD fees per year for perforce but a 1 time fee for AS on top of your Pro is too much? → fail on priorities if you rate the VCS higher than the tech you use to put anything into the VCS