RPG Character Editor

Update:

Added multiple races/sexes, ability to switch clothing.


This is an updated version of my RPG character editor. This version uses the full model, and adds hairstyles as well as skin, hair and eye coloring, as well as a new GUI (courtesy of ngui).

Rendering uses a custom shader that takes in a diffuse texture, mask texture and bumpmap. The skin, eyes, hair and accent colors are each stored in a separate channel in the mask. The colors are mixed in based on the appropriate mask in the shader. (I may remove the bumpmap though, so I can have an extra texture for complexion). Models are not mine, used with permission.

Comments welcome

damn nice…great work!

Very nice.

Do you have plans on adding Height and Weight?
And any plans on ETA and price?

PM sent

I have planned to add Height, but not weight (too many models would have to be customized). I hadn’t considered selling, I’m just doing it for my game - it would probably take a lot of work to make it general enough to work for everyone, right now the work to get the data into unity is quite cumbersome, have to run Max Scripts, then run a C# app in windows, then import them with special classes in unity. Not sure… I guess I’ll look into the workflow and see what it might take to streamline it.

If you don’t mind me asking, how are you handling the model customization? Are you using blend shapes/morph targets, or are you using joints weighted to the verts? I read an interesting article where they discussed using a rig for customization and then through code transfer the adjusted mesh to the game rig which contained a lower bone count.

Dane

I do it all with morphtargets - I calculate the delta for each vertex, and then store just the delta information. In unity, I then clone the mesh for each actor, and then directly modify the vertexes using a set of classes to read and apply the morph data on the fly. Because Unity will add/reorder vertexes at import time, there is no correlation between your model and the vertex in max (besides position). So I ended up writing a set of functions to find the vertexes by position, and by face (when source vertexes had the same position).
I didn’t create the original source art myself, so I can’t comment on how they did the initial face creation. But for the morphs that I did, I just modified the meshes manually.

Nice work. I like good CEs and this one goes to the right direction.

I really want to do such a CE for Anime Cell Shading like Characters with much “sliders”.

Coool !!!

Very nice!

everything looks just perfect! the gui fits very well!

Very nice I plan on having somthing like this in my game once I start making one…Im a beginner in coding in uniscript…How hard was it to code somthing like that?

Most of the work is in external tools, creating the morphs (etc). For coding, I would say maybe 30-40 hours? But that includes additional work I’ve not shown yet. I’ll post a new video soon.

I didn’t use Unityscript, though - it’s all C#. would probably be more complicated (at least for me) in Unityscript.

yes morphs are what gives you the variable shapes. We are optimizing Daz3d Genesis base for just this reason to use in unity.

@Jaimi
I do like your models morphs. did you make the base model yourself?
Good work.

No, I didn’t - the Actor models are from Ryzom (an MMO), they are not my work. They were released under a Creative Commons license. I’ve done some of the morphs and textures, but most came with the models. It’s been a chore to get the models into FBX and cleaned up, and writing the apps to extract the morphs and mask data, but in the end I feel it’s been worth it.

That does look good.

Could I just suggest that you also include presets in the character creation for people that hate to deal with sliders?

yes we are doing this with Daz3d models. they have it all built in. And exporting the animations and morphs to fbx is not that hard. In the end paying daz the license to us is worth it. If you want to see some of our main characters morphs send me PM.

Yes, definitely. This part of the editor is actually for me to create the presets. In the end-user version, I’ll give them a race to choose from (which will preselect the model set, plus some morphs and skin/hair colors), and then give them the face editor.

Update: Added new video to the first post, showing multiple races and sexes, plus ability to swap body pieces. Each character is made from 7 pieces - hair, head, torso, arms, hands, legs, feet, which are combined on the skeletal model on the fly.

Very impressive. I have been thinking about a face (human) editor myself and was just wondering if you wouldn’t mind sharing how you know what vertices belongs for instance to the nose so that when that lever is affected that you move the correct vertices.

Appreciate any insights you are able to give. If there are any book/article/code that covers some of the techniques that you have been using that would be interesting to know as well.

Thanks,

mobbe