Gamasutra: The Art & Business of Making Gamesspacer
View All     RSS
July 29, 2014
arrowPress Releases
July 29, 2014
PR Newswire
View All
View All     Submit Event





If you enjoy reading this site, you might also want to check out these UBM Tech sites:


 
Unity Asset Store: the hidden cost of a DIY.
by Alejandro Garza Cuellar on 03/27/14 09:17:00 pm   Featured Blogs

The following blog post, unless otherwise noted, was written by a member of Gamasutra’s community.
The thoughts and opinions expressed are those of the writer and not Gamasutra or its parent company.

 

Recently we heard from Mike Bithell, developer of Thomas was Alone, how the Unity Asset Store was a great addition for non programmers. How for less than the price of a pizza, we could buy Scripts or plugins or something that  would get done in a matter of minutes, something that would take us hours, days or weeks. But what about when you are an indie too, but are fully focused on programming?

Well, one of the things that we often forget when developing a game, specially when you are an indie, is that everything has a cost. EVERYTHING. We rarely take thye time to messure how much an hour of hour work is really valued, or at least how we value it. And without knowing this, how can we know how much is a class, method or plugin in Unity is actually worth if we write it?

This is a question most of us just pass over and start with the Do It Yourself (DIY) mentality. But are we aware of the real cost of a DIY? For example lets say that we want a kick ass GUI controler for our game. First we browse the Asset Store, or the forums, and find, for example, NGUI, which is priced at $95. Then we rage about how expensive the thing is and that we could code it ourselves and that blah blah blah. The next step should be to ask ourselves, what is better, to buy it or to write it? And here there should be two things to consider: our current skill using Unity and the true DIY cost.

If our skills are very low, maybe we could attempt to code it, for the sake of learning. In coding (NOTE: coding, not algorithm design, that's a very different beast), practicing is the only way to learn more and improve our skills. Yet if our skills are good enough, then probably we won't learn much or nothing at all from attempting the DIY, it is at that point that knowing the cost for us comes into play.

Let's say that I value my hour of work at $5, then that means that a day of work is worth $40 to me (considering 8 hours only, yet we know that since we love doing what we do, we rarely spend only 8 hours). In perspective, if I could code NGUI completely from scratch by myself in less than 2 and a half days, I would be saving money. Any extra hour is driving the price of myGUI up by $5. So, if I could code it in say one week (6 days of 8 hours each), it would cost me $240. And i don't know how good are you in math, but $240 is way higher than $95. So, I'm actually spending an extra $145 for building my own tool. And yes, you will say, but what about the knowledge you acquired when programming it? Well, we actually said in the second paragraph that if you have enough knowledge in the field, then you won't be learning practically anything at all.

By failing to acknowledge the real cost of doing something by ourselves, we might as well end up paying much more money for something. This is something that we should always take into account, as indies, we don't run on infinite budgets, and sometimes spending money will save us lots of it!!! I know it's crazy, but is true.

Now, what happens when what you need is art? What happens when you are in need of 3D models? Different from code, the art will be an integral (and visual) part of the game. We just can't go and buy all the models from it and use it in a game. Or can we?

In my studio (Authentic Illusions), we are very good at programming (or so we say :P) and ... well, just that. Since we are a bunch of guys doing PhDs in Artificial Intelligence, we've become good at it, and at prototyping. The problem is we can't hire anyone else, and none of us is good at 3D modeling. And one of the key things that has helped us a lot in building better, and more visual prototypes, is the Unity Asset Store.

Recognize any of these guys (and girl)?

Our lack of more people in the art department has led us to one conclusion: We need someone there (I know, plot twist)!!! But being able to show what we could do if we had people with those skills has allowed us to show to general public, not just friends, what could be, if we could do it. We even went as far as to start a Kickstarter campaing using those models (if you'd like to see, or are awesome enough to join the dream we are trying to accomplish, it is here).

So, never forget, if you are a coder, DIY has its cost too, your time also costs, and most of the time, you'll end up paying way more money for going that route. If again you are a coder, or have a team made purely of coders, the Asset Store (or similar services), can help you make a more visual prototype of your game. Showing to someone a game that looks way different to what you intended (specially if models are pretty bad or are just cubes (plain white cubes, not the awesome ones from TwA)) might, and very possibly will deviate atention and real critique to what you what feedback from.

Never undermine the hidden cost of the DIY.

- Alejandro Garza

 

References:

http://blogs.unity3d.com/2014/02/25/mike-bithell-the-asset-store-is-a-path-to-more-ambitious-indie-games/

 

And if you are really awesome, and would like some good Karma, visit our project at:

https://www.kickstarter.com/projects/979861484/crushing-darkness-an-augmented-reality-trading-car

https://www.facebook.com/pages/Crushing-Darkness-virtual-Trading-Card-Game/1433446716897915?ref=hl


Related Jobs

CCP
CCP — Newcastle, England, United Kingdom
[07.29.14]

Development Director
Treyarch / Activision
Treyarch / Activision — Santa Monica, California, United States
[07.29.14]

Cinematic Animator (temporary) - Treyarch
Activision Publishing
Activision Publishing — Seattle, Washington, United States
[07.29.14]

Senior Software Engineer - Services - Activision Seattle
Camy Electronics & Plastics
Camy Electronics & Plastics — Los Angeles, California, United States
[07.28.14]

Sales and Marketing Assistant






Comments


Wes Jurica
profile image
This is my rationale as well. There is little reason for me to toil away at creating a feature or tool when there are Asset Store developers that have put in 100s or 1000s of hours into their packages to get the thing just right. The only cost of purchasing from the Asset Store that you don't mention is the cost of learning the package that you've purchased (obviously not applicable to models, textures, etc).

In 2013, I made a Global Game Jam game and tried to use a premade asset for character control. It didn't work at all and I explained this to my professor that had went to the event with me. He thought it was ridiculous that I would even consider using something premade and of course it didn't work. He even made a point of telling the entire class, upon our return, how these things will never work because they can't possibly fit your specific use.

Now, more than a year on, I've successfully used many packages in our commercial games. In my mind, these are no different than using Unity itself or any other API or engine or tool that helps you make a game. They make things quicker, easier and cheaper than doing everything from scratch. And for those that think that it turns game making into LEGOs or something, believe me, there is still a lot of coding to be done.

Joseph Donegan
profile image
The ability to use third-party packages is itself a skill, and one that should be practiced perhaps as much as coding things yourself. So if you have no experience in using someone elses API and tailoring your own code to make use of it then it will fail, but the more experience you get the more you will be able to pick and choose the tools you need to get the job done, which is exactly what seems to have happened in this case.

stephan maich
profile image
off-topic (and great points mentioned in your article), if you need affordable 2d/3d original assets, email a brotha. hopefully, i'm not violating some TOS of this site by being so crassly self-promotional yet vague.

Greg Scheel
profile image
A few thoughts:

First, your time is probably worth more like $100 an hour, at least if you are properly remunerated, which is not likely at an indie shop, especially for your first game.

Second, the big problem with Unity is that so much of what one would expect to find in an engine, is an extra. I have had the good fortune to have not gotten far with Unity, and the switch to Unreal 4 is an eye opener.

Third, the parts you buy in Unity may, or may not be suitable for purpose, and there is a time cost in evaluation, both before and after purchase.

Fourth, starving artists are easy to find, just check out your local art school, and ask about both students and alumni. Of course, if you are totally unfunded this won't get you far.

Lars Kroll Kristensen
profile image
I started up on my own this January, after having worked profesionally with Unity for about 7 years. In that time, I've seen Unity technologies deliver again and again on their promise of democratizing game development, and probably the asset store is the crowning achievement. Either that, or forcing the other engine developers to change their pricing to a point where everyone can join in.

But I digress.

When I started up alone, the first thing I did, was to decide going it alone, in order to slash costs to an absolute minimum. I also decided on a value for my own time, and decided that whenever I started a feature, I would check asset store first, and see if I could buy what I needed. Now, my first daily action, is to check what's on sale on asset store today. Like the OP, I too am a coder, and pretty good at it. However, I also enjoy coding, so I gotta admit I don't always buy code instead of doing it myself, even when I could. Sometimes, I decide to shoulder the cost of doing it myself, because I also want to have fun doing what I do.

The mental image I put on it, is that of a cook: the cook knows what the finished dish should be like. He knows how the flavours should combine, what taste experience he wants to give to his customers. The cook will go to the market early in the morning, to buy the best produce, meats, and herbs from the local farmers. The visit to the market may inspire him: "Wow... those are some beautiful apples.. maybe I should make an apple pie for desert today?". He'll bring home the wares, and combine them, and bring out a beautiful dish.

Of course, metaphors are dangerous: When you're making a game, you want your art style to be coherent across the board, and if you want something stylised in a particular and unique way, graphically, then you can't buy your way to art. If you're building behaviour that is unique, you need to do at least some coding yourself. So.. there ARE definitely limits to this way of making games.

Alejandro Garza Cuellar
profile image
It is true that when you like something, you prefer doing it yourself and, it can be seen as how much we are willing to spend to enjoy things. I completely agree with you with that and that there are limits to what you can do. The coding i like the most is AI, so for me, programming anything that is not AI is worth getting in another place. But then again that is a very personal oppinion related to what i like to code the most.

Dominik Gotojuch
profile image
Great article and it touches upon a very important topic of time management. When you go indie, time is often considered to be your greatest asset - you have it and there is lots of it. It's easy to go and spend it like there is no tomorrow. But the problem is that, like some of you already said, there is a very serious price tag on your time. And in fact, it is finite, since a single day only has 24 hours (sadly).

In terms of 3rd party libraries or middleware integration - I am a strong supporter of not reinventing the wheel, but I did have some horrible experiences with embracing and learning external libraries. Sometimes the time, effort and cost of setting up and maintaining a library like that can match or even outgrow whatever you would have spent on your own solution.

Amir Sharar
profile image
Uncanny! I recently made purchases on the UAS using the exact same thought process. I also factored in, as Greg Scheel alluded to, evaluation of similar products and the product itself.

Another thing I factored was the amount of estimated time it would take to learn these assets (I bought uSequencer and Camera Path Animator to save me programming time). Since these are tools, I'll need to invest time in learning and mastering them.

Still, even with that consideration I estimate that I'll save time. My own tool would be untested in comparison, and I'd rather not spend time debugging my own tool when the creator of the asset could be doing it for me.

Allan Rowntree
profile image
Personally I'm more of an indie on a shoestring, and have only opted to buy in the assets that would have taken significant time for me to develope e.g. GUI systems and Pathfinding solution.

But you then have the problems that some systems can be clunky, and some can be well developed and maintained.

Also as with an App store it is easy to end up purchasing assets that you then never use. And often you cannot try before you buy.

Maybe they could have a free to try assets but with a royalty percentage if you use them on a project or a small monthly fee and a percentage for supported/regularly updated or code based assets.

Personally I'm trying out Unreal as you get quite a solid engine with impressive graphics capabilities but oddly still not much in the way of a GUI system.

Another thing is with revenue from an Asset store an engine provider, especially one with a Free version of it's engine, is less likely to improve the engines feature set, and could therefore hinder their own products technical development and overall future.

Dusty Hunsaker
profile image
I'll agree with most of this, but I will have to disagree on the art side of things. As others have mentioned, building your game around generic assets is a good way to have a generic looking game.

Alejandro Garza Cuellar
profile image
Totally agree on the art, yet it allows you to get up and running faster a prototype to show to other people what you are doing.

Jesse Tucker
profile image
I've purchased two things from the asset store. The first was a basic tile-based movement code and asset pack that I was then able to modify to my needs. It ended up not being quite what I needed it to be, but it was a great place to start and a great way to get over the initial inertia of starting a project.

After I had made significant progress, I needed a bunch of animated character models. There happened to be an asset store sale and I picked up ten fully animated models for $20. I won't be using them in the end, but they're great for placeholder art while I put together the rest of my game. I wouldn't personally see any major graphical assets as something I'd use for a final product because it would probably be embarrassing to have the same primary art assets as another game out there.

By now I've spent less than $50 on assets, but once I get my project further along I'll probably pick up one of the better GUI assets as well.

All in all, the asset store has helped me to quickly overcome some roadblocks while encouraging me to "own" the parts of the game that are most important to me.

Michael Thornberg
profile image
As good as their store is (I own things from there) there is no denying that Unity itself have been seriously undercut by their competitors. They need to adjust their price of admission... fast. Unity Pro $75/month (forced to be paid for a year) vs Unreal 4 $19/month (no limit + 5% off gross revenue) ... Unity.. think about that one. It is a much much lower price of admission. Oh, and you own Unreal 4 after the very first month, with the Unity plan you don't own it... ever. But I digress, the store is really really good if you need things. Personally I don't need much in the art area because I can do art quite well myself. But there are other things like, streaming tools, editing etc.. which are really handy. And a must if you plan on doing more serious work. For that, the store is fantastic.

Alejandro Garza Cuellar
profile image
Hi Michael, i think i am not the only one waiting the monthly subscription of unity pro to go down. It will most definitely go down since it won't be able to compete in that war.

- Lex

Flavio Creasso
profile image
Well... There is a small thing we also need to consider, everytime "you pay" by something you have two persons: the buyer and the seller.

When you decide to pay the DIY cost, both are the same "YOU", so it's like you getting a 50C coin from one pocket to another, also you not even need to have a coin, you probably don't need a credit card or paypal account to pay yourself... Well, I think you got the idea, you can write your HUD plugin without "ANY" Money, but the HUD plugin's owner will require you to have the Money right now!

Being na indie developer "usually" says that you have no Money, but a plenty of time to invest into your game. So (being sincere here) I think it's na error value himself as US$100/hour. You can get this Money on your RL job, but the Indie Developer skills usually don't worth so much.

While it's a good practice keep in mind that everything has a cost, consider that Always you'll have infinite credit when you decide "to buy from yourself". ;)

Jeff Leigh
profile image
Asset stores = paint by numbers. It will take you only so far and teach you nothing.

Stock footage. Caulk. It fills in the gaps, but if your game is all stock assets... you might as well be selling duck-tape wallets.

Wes Jurica
profile image
The assets you buy, whether art or code, can teach you a lot if you take the time to look at them. I've learned a lot about coding from looking at mature packages like NGUI and even some of the less professional packages.

Wasteland 2 looks great and varied and uses a ton of Asset Store packages. I think a lot of it comes down to making them your own.

The most valuable things to me on the Asset Store are the tools like SceneMate, frameworks like NGUI, and wrappers like the Prime31 stuff. Surely you can see the value in those things. Or maybe you prefer to write your own 3d modelling/picture editing/IDE software and the OS that they run on. ;)

Troy Walker
profile image
Wasteland 2 also promoted the creation of very "specific" assets to be produced and published via the asset store for their needs... they just didn't willy nilly assets.

Wes Jurica
profile image
Of course they didn't "willy nilly assets." And yes they had a program for specific things they needed that weren't on the store, yet they still used assets that were available to the community before their project started (they've talked about this in their Kickstarter updates).

Lars Kroll Kristensen
profile image
True. If you're a student, it doesn't make sense to buy your assets: You won't learn a damn thing. If on the other hand your goal is to make a game, it makes sense. Even if some artsy types will scoff at your work :-)

Kujel s
profile image
In my case I take pride in my code and I feel it was a useful learning experience to write my own engine. I'm now able to prototype a lot of ideas is just a few days.

Either way if you write your own or you use someone else's it's a whole lot easier to get started with a some kind of foundation.

Alan Barton
profile image
From my perspective, the hardest asset type to deal with is the 3D models. The advantage of buying an asset is that it (hopefully) saves time. The downsides are many indeed and burn a lot of time. e.g.
(1) It costs serious time if the model has mistakes in it and there are many subtle mistakes that can occur.
(2) It costs serious time if the model cannot be converted correctly. There are so many formats and that is a big worry when trying to buy a 3d model.
(3) It costs time if the model doesn't have rigging … and can the rigging be converted ok?
(4) It costs time if the model isn't broken up enough to allow different materials to be applied.
(5) It costs time if the materials are using 3d editor specific materials as they may not convert.
(6) It costs time if Polygon count reduction is needed (and even if it can be done at all and still look ok?).

Fixing each of these above are non-trivial skilled tasks to do, after you've bought your 3d model.

Then we have the issues like:
(7) If its a licensed 3d model, then you don't own the IP, so any game you create with these characters can't define your game. If that character is for example on your title screen, then you're now helped to create an iconic character that isn't owned by you, so it'll appear in other people's games.
(8) Which leads to a generic looking game and that’s not good for any game, so its a lesser choice as a result to buy a 3d model.
(9) When you buy a 3d model, its unlikely to look exactly how you want it to look.
(10) Many Indies work on almost zero budget, so if they are working in their spare time, its usually easier to burn time than burn money. The only indies who are on a deadline (because they are effectively out of work) therefore have limited time and as a result, they usually have very limited money to buy 3d models (and that's true usually for even most established indies).
(11) Just finding 3d model assets burns many hours, even days of searching time, so the savings are diminishing considerably by all the searching that is required (and licence reading required with each model found, to make sure its suitable to licence and can even be allowed to be used?).
(12) Most Animation is usually game specific, so most 3d models that are bought still needs to be animated.

All of this reduces the potential for buying 3d models rather than learning to make your own. Its a very hard choice to make, but even fixing 3d models requires a lot of 3d editor experience to be learned. So its far from easy to buy a 3d model.

Also for artists who want to sell more 3d models, they can help reduce points 1 to 6 to make their assets more likely to be bought, but there isn't much any of us can do about points 7 to 12 and indie budgets usually don't cover the living costs of one person let alone hiring contract artists. Also engine assets can only help reduce the problems with points 1 to 6, but it does at least help.

Its a very tough problem to solve and I don't have the answers ... just many questions :)

What artists do is very skilled and consumes a lot of their time. It's therefore extremely hard for most programmers to do what artists do, even to a fraction as good as full time artists, yet buying 3d models still carries considerable workload for the indie programmers.

I think this will improve over time as assets especially for engines will make the assets easier to use, but its a minefield of issues and can add up to considerable time burned for Indies, but then many Indies tend not to use the biggest most mature engines, so there will be a market for the 3d model sales sites, outside of engines.

I think where it works best is collaborations between artists and programmers. Then perhaps it could help the artists on a team save some of their time, by buying in assets, because then the artists will know how best to tidy up and adapt the models, but for lone one person indie programmers, its an exceptionally difficult problem.

I wish buying more models was the answer, but there's so many problems with it. I don't know the answer.

Anyway that's my brain download on the subject, for what its worth. I don't have the answers, but I navigating this minefield at the moment, looking for what to do for the best.

Amir Barak
profile image
Another perspective;
If you find yourself purchasing a lot of code modules from the assets store isn't that an indication that maybe, just maybe, you've gotten yourself over your head?

What I mean is, start small. Build a library of tools. Nobody needs to make their first game an MMO, so why would you buy heaps of code for it? Start small...

Focus your game on one or two systems. Next game builds on that. Sure, it'll take you a year or more to build a wide range of tools. But you'll be better for it in the end (imho). I've got heaps of code modules, algorithms and whatnot from years of programming. And the experience I've gained from doing those has its own monetary value (something you lose by purchasing other people's code).

Unity equips its users with the basic tools to get going without worrying much about platforms, resolutions, memory or object-model (although I find their implementation of ECS somewhat lacking imo).

As far as buying art... unless you pay someone to make unique content don't bother and make something yourself. Generic assets make for generic games and I'd like to think that people care more about the craft of crafting than simply making something for a quick cash-grab...

Nathan Warden
profile image
There's also a hidden cost of using plugins. We've purchased several plugins that were around $100 and from an editor perspective worked great, had 4-5 star ratings with good demos, but we needed API access and found out that the API access was either extremely difficult or practically non-exsistent. Thus, it was like throwing away a hundred dollars, plus the time we spent trying to get code level access to work, plus we ended up having to code it ourselves and accumulate those DIY costs anyway. Lesson learned, if it will take less than a week to write and it's a fairly important piece, write it yourself.

I haven't personally ran into this because I avoid it like the plague, but another possible hidden cost is if you use a plugin as a core piece of your product, but low and behold you hit a wall with it. If you can't find a workaround you are then either forced to use another plugin or write it yourself. While I certainly have and will use a plugin for an important part of my game, I would personally never make a core portion of my game using someone else's plugin.

Wes Jurica
profile image
I agree with you on this, 100%. I made the mistake once of buying a package without source. No good. Since then I only buy packages with full access. Not only can you extend these open packages, but you learn a lot from digging through them.

Kenneth Barber
profile image
Plugins can save time and take you part of the way towards a finished game but your game play and narrative should be your own. Buying GUI libraries, shaders, particle systems, is good savings in time and frustration and will allow you focus on your games uniqueness. You shouldn't however buy entire game implementations or even your core mechanics.


none
 
Comment: