Delaney King Profile picture
Jun 9 16 tweets 5 min read Twitter logo Read on Twitter
#gamedev
Okay so joints are best thought of as the central pivot of a ball.
Like you get on action figures.

The joint should go in the centre of the mass, NOT where out bones actually are.
To give you an example- poke your finger into your hip joint at the side and move your leg around, find where the joint in a human is.

Okay so what you have no doubt discovered it it is near the outside of our leg, not the middle.

But this is because of how our bones work...
Human bones are curved, so they can absorb shock. You don't want a straight bone as the force will run down the length and shatter it. See how our hip socket is actually deep, comes out then bends down.

BUT 3d bones are a straight line between two pivots. Image
So you see the pivot isn't where you think it is in the actual bone.
I am pointing to the bit you can feel, that orients down the bone itself. Image
If you simplify the 3d model in your mind right down, what you are doing is putting a ball joint in the blue areas here: Image
Another abstraction we make is that 3d bones have one fixed pivot point. Our bones roll against each other, which allows us to do things like kneel on our legs. Image
If you look at action figures again, you can see that to simulate the way our knees bend you need TWO pivots.
Because the bone heads are round and roll against each other. Image
So our joint placement is a cheaty abstraction of the real deal.
Furthermore, our skin weighting is also a hack.
Vertices rotate around a pivot (joint), compressing on one side, stretching on the other- so you are looking for the middle of the mass. Image
Here is an example of doing it wrong: this is from Vampire The Masquerade Bloodlines. The artist has put the joint where the bone is. Not the center of movement. So the leg BORKS when moved sideways. Image
So the way to figure out where you want a joint is this...

It's the center of the arc of every vertex between where it is and where you want it to be when rotated.
So look at that vertex here... it has orbited the joint. Image
The vertices of the pink mesh will orbit the joint when the pink bone is rotated. So I place the joint based on the extremes of where I want those to go. Image
Weight painting just softens the effect by distributing the vertex between more than one joint.

Extra joints can be added for more complex and accurate rigging, such as knees that can kneel without shearing like scissors.
So the easiest way to learn is to look at articulated action figures, as they are a simplified simulation of what we are doing. Image
In fact creating meshes as rigid and soft sections like this really helps you learn where to put the key edge loops (blue) and it looks very much like the shapes of action figures as well. Image
I am covering this with some nice clean visual guides and diagrams in my forthcoming book Violent Triangles, so stay tuned.
As always you can make me smile by buying me a coffee here:

ko-fi.com/dellak

• • •

Missing some Tweet in this thread? You can try to force a refresh
 

Keep Current with Delaney King

Delaney King Profile picture

Stay in touch and get notified when new unrolls are available from this author!

Read all threads

This Thread may be Removed Anytime!

PDF

Twitter may remove this content at anytime! Save it as PDF for later use!

Try unrolling a thread yourself!

how to unroll video
  1. Follow @ThreadReaderApp to mention us!

  2. From a Twitter thread mention us with a keyword "unroll"
@threadreaderapp unroll

Practice here first or read more on our help page!

More from @delaneykingrox

Jun 18
#gamedev
Okay so lemme just drop a serious lesson about game design for this whole trending thing.
Why is this the ideal design and can we boil it down further.

Yes, we can. Image
This design is simply a difficulty slider.

That's it.

You have a choice at every single stage to make your life harder or easier by picking a direction.
With dungeon levels, the idea is that the deeper you go, the deadlier it becomes.

As you press on, your opponents get harder and your resources are used up.

Reversing your direction takes you back to a safe space with resources.
Read 18 tweets
Jun 18
Absolute truth here. One thing I can tell you is never work for or with your heroes.
Never 'for' because it makes you exploitable.
Never 'with' as the real human will spoil any love you had for their work.
#gamedev
The games industry takes the "dream" energy of young employees and milks it. You work long hours, accept unpaid overtime or low wages because you hunger to be part of that dream.

You are easily exploited and discarded once you wake up or are burnt out.
Instead aim for companies and teams that you feel will support and mesh with you, that will care to some degree about you.

This is why I suggest starting with established indy if you can, rather than throwing yourself into the AAA machine.
Read 7 tweets
Jun 18
The comments fall into three main categories.
A) people naming games that do this.
B) people saying they enjoy the fuck all bits because holding down a stick is fun.
C) people who do not understand what a joke is and are very angry about the lack of detail in my diagram.
This is, brace yourself, not a complete game design document.

But if you want a complete one I offer reasonable rates for design :)
I mean, a complete one would need at least a few dots on it with things like "rock you clip through here" and "npc encounter that fucks up if you approach from wrong direction".

And if you like Elden Ring I could copy paste a few bosses and slap on a red fresnel shader.
Read 5 tweets
Jun 17
My hand sculpted oldschool chaos dwarfs are returning to production!

@FenrisGames in the UK will be releasing the entire range, including the unreleased variants.
Shipping from the UK in the top quality resin you expect from Fenris. ImageImageImage
I am currently working on adjusting the masters taking advantage of the new material- (so the flag poles will be sturdy and modular).
I had to stop production on the original metal models because shipping from Australia suddenly became ridiculously expensive and the majority of my customers where in Europe.

Now you can grab ultra light models from the UK. :)
Read 4 tweets
Jun 17
#gamedev DM question re this post: basically asking about dynamic cloth.

This quick paint over demonstrates cloth for a static mesh. The original artist simulated the cloth and had to sub divide to get a passable bend...

However
...once the cloth had settled and baked into the static mesh, thr extra topo does nothing. And of course the edge is jagged.

So this example shows how the orientation of the grain of the mesh helps make nice bends.

The same is true of dynamic mesh!
You still want a well subdivided mesh for dynamic cloth, however you don't have to have the grain in a lateral/longitudinal grid.

You can have it diagonally orientated, or adjust the density and orientation to accommodate certain areas such as where the legs raise on a tunic
Read 4 tweets
Jun 17
Once again for the people at the back, being depressed and being very sad are not the same thing at a biochemical level.

The activities that alleviate sadness have little or no effect on depression.
Anyone who says "hey just play with your cat" or "go for a walk in nature" have clearly not faced actual depression.
Trying to cheer up someone who is depressed is about the same as asking a diabetic to think really hard to make some insulin .
Read 11 tweets

Did Thread Reader help you today?

Support us! We are indie developers!


This site is made by just two indie developers on a laptop doing marketing, support and development! Read more about the story.

Become a Premium Member ($3/month or $30/year) and get exclusive features!

Become Premium

Don't want to be a Premium member but still want to support us?

Make a small donation by buying us coffee ($5) or help with server cost ($10)

Donate via Paypal

Or Donate anonymously using crypto!

Ethereum

0xfe58350B80634f60Fa6Dc149a72b4DFbc17D341E copy

Bitcoin

3ATGMxNzCUFzxpMCHL5sWSt4DVtS8UqXpi copy

Thank you for your support!

Follow Us on Twitter!

:(