Busty's Animated Art Preview (Patreon)
Content
I would have uploaded a nice, crisp .mp4 preview (only 8mb), but Patreon doesn't support any reasonable video standards. Instead you get this absolute chonker of a gif (61mb). Whatever, nobody's here to listen to me rant about file formats.
I've spent the last two days rigging and animating Busty's character art (which was added as static in v0.8), and I'm quite happy with how it's turned out! Obviously her body proportions are silly, but that's entirely the point. I've leaned into that and given her some of the jiggliest, least-physics-bound boobies of all time. For this initial animation pass I've included a standard idle and pair of bounce animations, plus some looping bounce-and-sway animations that I think I can use in some new events pretty easily.
I'm not sure I've ever given an explanation of what "rigging" and "animating" actually means in regards to my art, so I'm going to do that here as a little patron only bonus!
Rigging in Live2D means taking the static 2D art (which is drawn as multiple stacked layers) and defining how it should warp and rotate depending on different parameters. Busty's skirt, for example, has two warps being applied to it: one for "SkirtSwayX" and one for "SkirtSwayY". Combined, those two parameters can be used to give the illusion of her skirt bouncing up and down, left and right.
Things get tricky when some pieces of art (like bra straps) need to span two different, separately moving layers (like boobs and shoulders). This is where "glue" comes in; Live2D provides a tool for linking vertices of different pieces of art together so that motion of one influences the other. Getting it to look right is more of an art than a science, but it's a critical technique for getting everything to look natural.
Animating for Live2D models means creating a timeline of values for all of the parameters I created in the rigging step. Live2D provides a moderately robust timeline tool for setting values at specific times in an animation and then having mathematical curves create the in-between values.
Helping out with the animating is Live2D's physics system, which I rely heavily on to get the natural bouncy physics we all know and love. That system works by defining an input variable (For example: "XRotate", the paramter name I use for twisting a character left/right), an output variable ("BoobSwayX", to continue our example), and an imaginary pendulum with some physical parameters (how long the string is, how fast it reacts, how strong gravity is). By tweaking those physical parameters you can have your output relate to the input in a bunch of different ways: hair can bounce fast and settle quickly, boobs take more time to get moving but tend to jiggle to a stop over many seconds, etc. Ren'py doesn't support real-time physics, so all of my physics are baked into animations and then cleverly* stacked in Ren'py to create the illusion of mathematically accurate motion.
Hope you enjoyed that more technical look at how A Very Full House is made! Let me know if you want more behind-the-scenes explanations of how I make things!
*Yes, I'm calling my own work clever. Yes, I am that vain.