some suggestions from expert artists to a poor programmer, about character creation

Hi folks

has been ages since my last visit here…got some time finally to dedicate to my favorite hobby :smile:

Anyway, I would like to ask you (to the majority, since here the biggest audience is made of CG artists) about character creation for Unity.

My main concerns are related to workflow and technical optimization, so would love to hear from you guys what would you suggest to a programmer that just knows the basics of modeling :slight_smile:

  1. poly number: I am planning a project for mac and iphone, that will basically involve various characters, kinda like the sims; what kind of poly number would you suggest for the characters ? And what about the texture size? I will not have 4000 character at the time, but a good estimate is about 40

  2. what do you use for animations? So far I’ve downloaded a character from animeeple and i am able to open it correctly in cheetah3d, and in unity it plays well; but i saw also the characters sold by gameprefabs and mixamo; so was wondering what would you suggest? My idea is to get characters that i can personalize to give a bit of variety, but most of all, I would like to use them in Cheetah, so I am looking for figures that has rigs that can be used on Cheetah3d (i am aware that modifying the geometry will cause the weight of the rigging to go off).

Basically I would like to know what would you suggest as far as it goes for animation services and ease of use with Cheetah3d (i can also use cinema 4d but is a stretch since it is on my workstation at the office, and I cannot use it freely during work hours, so I would love to rely on c3d as much as i can, since i am decently good now in doing rigging in there :slight_smile: )

  1. Is cheetah enough or should i get some other apps? So far i have Poser pro for animations, 3dcoat for UV mapping and poly decimation/retopology…is this enough or should i just do like all do and get either maya or cinema4d (or just bite the bullet and learn blender)?
    I do not have any need to create CG like the opening scenes that you see in many games (there are many people much more skilled than me, so I just stick with what I know best: programming lol), so my needs are basically modeling, rig and animate for Unity.

I know that many would answer “it depends” and is pretty much a matter of personal preferences, but hearing suggestions is always better than just pick something blindly :slight_smile: between the answers there will be for sure one that can fit my needs (and skills) :slight_smile:

Thanks in advance!

HI,

Interesting post. There really aren’t any write/wrong answers I could give you, what you’re asking is more of a preference, opinion, or user experience with a specific character pipeline.
From my point of view, I use and have used quite a bit of software. I have my preferences, depending on what Im working on. When working on characters and organic modeling in general, and I know I am going to be rigging and animating the asset, I like to use Softimage. It has great character animation tools, great nonlinear/nondestructive character rigging and animation tools, and it’s fast to use- very fast. You can rig and start animating a character (depending on the complexity) in a matter of minutes. 3dsMax and Maya have good tools as well, but if I was getting a new job at a studio and was asked what I would prefer to work with, I would choose Softimage.
I cant comment on Cheetah3d, since it’s not a software package I work with, though funny enough I know a programmer that also works with Cheetah3d on occasion on his Mac.
Blender has come a long way. It has most, if not all the tools that a commercial 3d package like Maya comes with. It just has a bit of a learning curve, but it has many useful tools, including for animation. Might be worth researching if Blender fits your needs, if your on a tight budget.
If you’re working exclusively with Mac, you wont be able to use 3dsMax (great animation tools) or Softimage, unless of course you perform dual boot with Windows, which I know of a lot of artists that work this way in order to stay in the Mac environment as much as possible.
Again, it depends on the user’s preferences, mine is to do character work with Softimage.
Here’s my workflow breakdown:

  1. initial blocking of base geometry modeled in Softimage or 3dsMax
  2. export to ZBrush for sculpting
  3. continuous process back and forth between the two
  4. texturing in 3D with ZBrush/3dsMax
  5. normal maps, displacement maps, diffuse map, etc. in ZBrush
  6. texture touchups and post work in Photoshop
  7. final model setup for rigging
  8. create character rig in Softimage
  9. animate in Softimage
  10. transfer to Unity if you would like or render with mental ray to create some visuals for whatever you need
  11. create logic and behavior scripts to have character move, attack, do stuff, etc. in Unity

Thanks for your reply!

Indeed i know that it is a matter of preferences, but usually some category of people stick to a workflow that is easy, especially if they are not artist; so my idea was to get some opinion and see if there is anything easy to use, that does almost all the job (if possible) and that does not take me to a new whole level of pain while trying to integrate with Unity.

I started few years ago with 3ds, then i realized that i will never work with 3d, it takes too much time and full dedication; and for that I already have my programming life, so unless i can avoid to sleep or the day stretch to 48 hours; i gotta pick one of the 2.

Then I started to use Poser for static renders, since it comes with a bunch of rigged chars, and all that you gotta do is to place items and create your own artistic vision and render it (or animate it; sounds perfect for intro or cinematics); but nobody in the game industry uses it, so was another thing that i just left there installed and use it randomly at will.

in the end i found blender (too messy and only indie uses it), google sketch (more cad oriented) and cheetah3D (works with fbx and is easy enough to use), but then a whole new level of pain was introduced, when i tried to import and use assets in Unity3d.

My idea was that a 3d model, if is in a supported format, should just work, so if i create it in bobsoft or 3ds or maya or whatever, and save it in fbx, it will work without problems(like i open a text file with any editor, if is txt is formatted always in the same way; same for code…if is in textual format you can always use any editor and it gets formatted with the right spaces and tabs), but it is not what it really happens…some textures are missing, the materials are all messed up; flipped normals, parts that are totally off center or misplaced, and the list is long.

So instead of loosing precious time converting and adapting myself to various software and play with them until Unity shows me what i wanna see (i am not asking too much right ? :P), I would love to get a workflow that works from A to Z, kinda like you did with your breakdown, so I know that if i mess up something I do not have to go around and pray the deity of the winter solstice to find out what the heck is going on to that animation, or why do i have to spend time just to flip normals back and forth :slight_smile:

So far Mixamo and Animeeple has animation services that seems supported by Unity; but what are the specs that they use? So if i make a character I can rig it exactly as the specs should be, so every time that i go in and out animeeple or mixamo and unity, I get consistent results and can make modifications easily. Are you able to just get everything done in Softimage and it works fine when you import in Unity?

So far, if i can choose, I would love to just stick with Mac (I already have to switch sometimes since i have some old assets that i wrongly saved in max…hammering my own fingers since if i would save them as 3ds or fbx i would not have problems…but at that time i had no clue :smile:); so I guess that Softimage is not an option (but from what you say sounds really interesting).

Character development for games is not easy, if anything, it is the opposite. There is no program that does “most” of the work for you. This is a very involved process that takes specific knowledge and experience in this area to be able to complete. I don’t want to sound negative, but it’s the truth. As of right now, there no one program that has an automated solution that will give you the results you are looking for with minimal work. Again, working with game characters is an involved process and usually takes someone with experience and expertise specifically in this area of game development.

Welcome to the world of Data Asset Exchange, one of the buggiest, difficult, and frustrating areas of game development with any engine. Unlike programming, this area is very inconsistent. You will read ads, propaganda, information, etc. from software vendors about how using xprogram with xexporter will work to transfer xyz data from one environment to another, but it’s not true. In real production, the way it works is you will run into bugs, differences in data, errors, and all kinds of unforeseen failures when transferring data back and forth. The problems you describe, i.e. missing textures, centers offset, animation missing, incorrect scaling, missing data, etc. are exactly what happens on a day to day basis in game development. It comes with the territory and you have to find workarounds and fixes yourself, most of the time. Exchanging data from one environment to another, via another software format, simply increases potential risks of data not coming through as the user expects, and some not coming through at all. It’s just part of working in mixed pipeline environments and there isn’t anything you can do about it.
Some solutions are to:

  • R&D a pipeline that works for you, find a solution that is as consistent as possible and stick with it
  • Use the less amount of software possible for your DAE. Don’t force your character asset/data to have to pass through 3 different animation packages before it gets to your game engine. The least amount of times your data has to transfer, the better the chances it can be intact by the time it gets in-engine
  • Accept the fact there is no “easy” or “simple” solution; developing a good asset pipeline is a job in itself
  • To answer your questions regarding Softimage, yes, I get everything done in Softimage (rigging and animation) and pipe it from there directly to Unity via FBX. I have developed my own method that transfers all of my data with no loss, but it took me a lot of r&d and time to nail down my character/animation pipeline for Unity. There were a lot of pitfalls and certain procedures that must be followed to the letter, else characters will appear in Unity distorted, missing data/animation, “crushed” to a center point, explode, etc.

I honestly wish it was as easy as clicking one button and everything works perfect and consistently every time without bugs, but it simply doesn’t. Perhaps in the future some company will develop such a program or middleware that can remedy these issue with a simple click, here’s hoping.

I apologize; probably I didn’t explained what i mean by “one software (to rule them all)” :slight_smile: I am trying to do everything in the same application, without the need to swap back and forth (as you mentioned in one of the solutions to avoid problems with assets management); I am aware that is hard to deal with these problems while using different assets coming from different apps, and I was not looking for the “easy button” app that will make everything that i want starting from a primitive :slight_smile:

My hope is that we can get something like the PDF standard; someone will decide to become a dictator in the 3d application industry and set an ISO standard for 3d files; so you can use that format only if you implement it exactly in the same way, so whoever loads that file, on whatever app or platform, will get the same results.

In the meantime I will take your suggestions as gold, and try softimage…all that i wish for is an app that i can learn and can give me the tools to start from A and finish with the final model, rigged and textured (it doesn’t need to be uber easy; just user friendly :smile:), that can be exported directly into Unity and will need no adjustment :slight_smile: you said that you do everything with Softimage, so is worth to take a look at it (even if is windows… oh well) :slight_smile:

On Unity forums? I would say its quite oposite. Majority here are programmers.

Other than Eric and few others I do not recall that many programmers, compared to the great number of artists :slight_smile:

This exists in other areas of software, but not in 3d data asset exchange. It’s unfortunate, but there is no international authority that has created a true standard in this area. Probably the closest things have been Collada, which I believe, if memory serves me correctly, was started as an in-house project by Sony. Then there’s filmbox (.FBX) which was first widely adopted by Kaydara, when Motion Builder was independent. Then Autodesk bought out Kaydara and became the owner of Motion Builder and FBX. The problem is, eventhough FBX is widely accepted and many 3d packages use it (Cheetah3D, Softimage, Maya, 3dsMax, Blender, Cinema4D, etc.), it is not widely implemented correctly. Seems like you will run into many bugs depending on the implementation, and when the companies release new updates (which nowadays is almost once every 6 months), sometimes FBX exporters that used to work no longer due, or new bugs are introduced, etc. It’s very tough, and since there are a multitude of different, in many cases, competing companies, creating their own implementations of FBX exporters/importers, there is no unified development, making things even worse for the developers that have to deal with the end product. I don’t want to sound like a pessimist, but unless one company/development unit works on all FBX implementation for all software, then I don’t see anything like what you described becoming a reality. This doesnt mean that all is lost however, data can in fact be exchanged from software to software, but you have to really lock down a smooth pipeline before you can truly start to get a smooth dev pipe going from one to the other without problems, but it is possible.

Indeed FBX is “supported”; but your mileage may vary…exported a 3ds props from sketch into FBX and imported into cheetah and it was working fine; did some changes, saved and imported into Unity and the normals were flipped…got the same 3ds file in blender and exported it in fbx, and this time it was correctly loaded into Unity.

So far the only format that i have found to be really universal are obj and X; sadly either one seems to not be able to hold textures, materials and animations; but just the object itself :frowning: the X format is eve worst since has limitation on the number of tris/quads that you can add to an object, so is technically unusable.

I hear you; and i have got the fbx libraries and built my own plugins and importer/exporter, while working for commission with a team (i was the tools guy basically), and understand how many issues could possibly get into even the easiest and simplest importer/exporter; but if Autodesk own the rights for that library and format; shouldn’t they enforce the developers to do importers/exporters in a certain way ? (like adobe does…there is no way to do it wrong when you use their API, the pdf is loaded with 3 lines of code); they should just make an API, and give it to the devs, so when you implement it you gotta do nothing else more that the method that they implemented and boom; all done.

So far I am tempted to contact either animeeple or mixamo and ask them for the specs that they use for their characters; so i can just make one and rig it as they do and be sure that everything will work; but I am not sure if they are willing to give these info.

Im sure Mixamo would help you with your questions, dont see why not. I personally have never used Mixamo, but I have had a detailed look at their site and information. If what they advertise is accurate, then I would say they have a pretty nice and user friendly system setup not only for working with characters, but also applying those characters to Unity.

You know, last time I checked, they did have some free characters on their site, I guess it’s so you can check out the quality of the work and get a taste for their system, but why not download some of these free characters and animations so you can evaluate if their product fits your needs?

Good point! Downloaded a male and a female figure with a basic free animation, and they work fine in Unity.

Tried to open them in Cheetah and the skeleton is correctly attached, but seems that i am not able to do too much with them; tried to make a new animation but i do not see the handles to do the transform (i can modify the geometry thou, but if i cannot move the character i cannot redistribute the weight for the rigging once modified the geometry, so i cannot verify if the weighting is done correctly or not).

I will try tomorrow at the office with cinema4d, maybe the problem is cheetah; and also will try tonight with blender.

I do not know how feasible is it, but would be great to have a skeleton that you just apply to your character and then start the rigging process; so at least you know that the bones are named correctly and in the right order of parenting :slight_smile:

Softimage has this already. Just one of the many reasons I recommend it when it comes to character pipelines.