Jump to content

Recommended Posts

Posted

 I wonder if anyone here has any clues as to how most games achieve a character editor?

As a test I scale the bone but this isn't the result that's needed.  I'm thinking a float or two should be attached to each bone and the vertex shader can handle the scaling of the associated vertices around said bone.  I wonder if this can be achieved in Ultra yet...

auto model = character_viewer->GetCharacter();
auto value = 0.5f * (float)slider_head_height->GetValue();

auto head_bone = model->skeleton->FindBone("Head");
head_bone->SetScale(0.5f + value);

 

CharacterGenerator.thumb.png.4718cae420c27bab3a4af275a94718fd.png

  • Like 2
Posted

Thanks :D  In GUI alone Ultra is so much faster and more flexible than Leadwerks.  In Leadwerks rendering a character like this with a 2nd camera dropped the FPS from 200 to about 50 If I remember correctly.

Posted

And now I can manipulate the vertices around a single bone with the shaders.  Here only the toe bone is raised by 1.0f.  It's just a matter of finding a way to identify the bone I want to edit and deciding on the right way to edit them.  It will probably be something like expanding the vertices away from the bone's axis within a certain range and reducing that range to 0 as it nears either end of the bone.  Tomorrow I'll see what I can do.

CharacterBoneMorphing.thumb.png.848522a9e24f71296346443130c9855d.png

  • Like 3

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

×
×
  • Create New...