Hey All,
I just joined today and I've been poking around at a bunch of different threads picking up whatever tidbits of knowledge I can, but I figured the fastest way to get direct answers is to just post my questions. And if these questions have been answer before, you can feel free to yell at me and I'll search harder next time.
I'm very new to this whole game design thing, especially on the art side since my formal background is as a software engineer - I picked up game stuff as a hobby just a month or so ago and I've been messing around with Unreal Engine 4 and Unity. I thought it'd be a fun and a cool way to spend my free time, but I've quickly come to the realization that I'm diving into a gigantic universe with basically endless information to learn... it is fun, but it's also all kinds of stressful when you're a perfectionist like me. I'm crying just thinking about how much there is to do and how little I know to design the game of my dreams.
But I guess the first step is to always just learn as much as I can, so here goes my list of questions:
- From what I've seen poking around, I hear that some people design characters via sculpting with ZBrush from a base mesh or some other programs and then convert their high-poly meshes to low-poly meshes for use in-game. That sounds really efficient to me for designing unique characters - is this a common workflow in industry?
- How do games achieve the illusion of having a ton characters/people (NPCs)? I understand that characters have "skins" that are interchangeable. Is this simple a swapping of textures on the same model? Is it an actual change of the entire polygonal mesh?
- In theory could you apply the same animations to multiple skeleton rigs of varying sizes? I'm under the (possibly false) impression that you can have different skeleton rig sizes as long as the joints are the same, right?
- One of the big concepts I'm trying to achieve in my game is hyperrealism in terms of movement for characters. Is it honestly possible to animate all of the movements using stuff like Poser or is it really better off mo'capped, like I've seen in industry game studios?
- With brutal honesty, how much can one achieve as a solo developer/designer? Is it just a matter of time, or are some goals completely out of reach for a single individual?
Thanks for your time guys. I'm looking forward to building stuff over the next several years.
1) ZBrush is pretty much an industry standard. From personal expierience I'd say there are alternatives just as good, but cheaper, if you want to get into that kind of thing. There is also Blender as a free alternative, not as good, but usable.
But first things first.
ZBrush is MOSTLY used for sculpting high-poly models that then get baked onto low-poly retopo meshes. ZBrush usually is used with a base mesh created in a boxmodelling 3D App like Maya, Max or Blender. There are tools and workflows to create the base mesh in ZBrush itself, but the oldschool way of creating the base somewhere else is still often found. Also, oftentimes base meshes are kept and reused from project to project.
Efficient - Define that word before using it for describing the AAA studios art pipeline of choice. Which ZBrush mostly is. MOST Indie studios will NOT have ZBrush in their pipeline, at least not for high-poly scrulpting, BECAUSE high-poly sculpting is not a very efficient way to create 3D models... especially when you are creating a simple low-poly look, like many Indie games do (which do it just as often because they lack the resources to create beautiful AAA style high-poly art for a full game as they do it as an artistic statement).
Now, if you like high-poly 3D art, I am the last person trying to tell not to touch it with a ten foot pole. Because creating high-poly art can be a ton of fun, especially after you have spent many years to get a certain degree of mastery on the tools and develop your artistic skills.
But just be warned that you will have a rough time trying to create ALL the art for a full game, no matter how small that game is, in true AAA high-poly fashion, and you will need a certain degree of artistic skill, with simpler art styles often letting you get away with less artistic skill.
And that is before getting into how retopology, rigging and animating very detailled models is even more of a pain, and demanding a whole new skillset to be developed again.
2) Most of the more detailled "skins" nowadays are different 3D models that can be mapped to the same rig and use the same animations as the original 3D model (which in turn means the proportions have to match more or less, which of course is also a necessity for gameplay reasons).
If you can share rigs and animations between models you can save a ton of time, and you can go a step further and create modular models (which is how some character designers work, apart from morph targets / blend shape / shape key systems that actually morph the mesh between different end states).
Most of the time NPCs in crowds are much simpler 3D models than NPCs you find standing around on their own, which again are simpler than important story NPCs, which will never be of the sam quality as your Player characters. Just look at different characters in your favorite RPG and see how much less gubbinz an unimportant NPC often has on the model compared to Geralt or whoever your Player character is... which makes sense storywise of course, but is also simplyfing modelling and animating that NPC compared to your player character.
Mostly the illusion is making clever use of the limited resources you can spend on your NPCs... and if we are talking about AAA games, even limited resources for that game being a ton of money :)
3) Not the most knowledgeable person when it comes to animation retargetting, but AFAIK that is the term you are looking for. You are trying to retarget an animation to a different skeleton.
4) Hyperrealism is Hyperexpensive... and we are talking about tens of millions of USD here, not just some grands. But sure, go for it.
Mocap is a good solution to achieve the same result a more skilled animator could do by hand. It can also be a faster way of achieving the same results given your Mocap setup is good, and everyone is well trained in it. Just be aware that most low cost mocap alternatives are... suboptimal, to say the least. The like of iPi and similar systems working with multiple cameras can be a bitch to setup, need a lot of room, and can need a lot of postprocessing or reshooting as the result often is riddled with noise.
I have seen a very promising low cost setup using accelerometers and I guess bluetooth units strapped to the limbs to capture the data. Created by some chinese company, sold for <5000$, it was showing promising results for a reasonable cost.
But before pondering about that, you need a good rig. And if we are talking about Hyperrealism, you will spend quite some time setting up that rig. After all, what good is the best animation if the Knee is bending at the wrong place, or the model is not deformed right with blend shapes / shape keys when a joint is bent (shape keys are often employed to work around the limitations of simple weight painted deformation of a skinned mesh)? What good is it when the clothing is not also animated nicely (often just slapping a cloth physics setup on it will give you suboptimal results or costs too much performance), of the face looks like a death mask because no matter how many bones you throw in there, you will not get realistic results without shape keys and wrinkle maps?
Another thing is that some animations just cannot be done with mocap. When your hero needs to be larger than life, you will either struggle to find an actor that can stretch its limbs enough or do all the backflips and trickery, or you will need to do a lot of manual retouching after mocap anyway.
So learning to animat models the manual way IMO is not a bad idea before getting your feet wet with mocap.
5) Depends on your timeframe. In the usual 2-4 year timeframe, with a single dev? Not much if you are aiming for AAA visuals and scope. Especially not when also working a day job or part time (which, unless you already have some games that rake in a lot of money, or live in your parents basement, is a necessity for most devs, even the ones that want to pay their bills from their game development), and not being an industry veteran with many years of expierience.
My recommendation would be to get your feet wet, learn the tools of the trade while also getting a reality check as to how long some things take, while working on very, very small projects if you need that to motivate you.
You can always tackle a much bigger project some years down the line when you know what you can achieve in what time, and are ready to spend 5-10 years of your life on a slightly larger project (that is still far away from AAA quality), or are ready to go out and find a team to join (just be aware that its hard to find people working on YOUR ideas for free), or spend some of your money on external help (which, given you have enough cash you can burn is the best idea probably... just make sure you are ready to loose all that money, game development seldom is giving you a nice RoI unless you can spend big or spend wisely)
EDIT: oh, about the ZBrush alternative I was talking about. I am using 3D Coat mostly, which CAN be just as usable as ZBrush as a sculpting tool, while being much better as a painting and retopo tool and costing half as much as ZBrush.
ZBrush does outdo it in some areas in sculpting (mostly some specialist Brushes which can speed up your work if you have learned how to use them), and doesn't need a beefy GPU to run as most things are running on the CPU while 3D Coat pushes a lot of things to the GPU, but in turn you get a dated, obscure UI in ZBrush that will give you nightmares if you do not use ZBrush every day, whereas 3D Coat has a more friendly, more intuitive UI.
I ended up spending on a license for both of them, but tend to use 3D Coat over ZBrush most of the time unless its something where the speedup by a specific ZBrush Brush is making up for the headache of getting into the ZBrush UI again. Which to date is mostly sculpting rocky surfaces from scratch. That "adaptive trim" brush in ZBrush is just a godsend for that.