Show HN: Visualizing the math that powers 3D character animation
21–30 of 55 posts
Re: Show HN: Visualizing the math that powers 3D character animation
#22Nice work, but displaying the time evolution of individual quaternion components is about as intuitive of a visualization as displaying the time evolution of an individual pixel to visualize video compression...
Re: Show HN: Visualizing the math that powers 3D character animation
#23On the subject of quaternions, here is an article that pops up on HN from time to time. https://marctenbosch.com/quaternions/ It is called "Let's remove Quaternions from every 3D Engine". The author suggests replacing quaternions with rotors and geometric algebra. In 3D, the formulas are essentially the same, but framed differently. It makes some "surprising" properties more intuitive and is extensible to any number…
Re: Show HN: Visualizing the math that powers 3D character animation
#24On the subject of quaternions, here is an article that pops up on HN from time to time. https://marctenbosch.com/quaternions/ It is called "Let's remove Quaternions from every 3D Engine". The author suggests replacing quaternions with rotors and geometric algebra. In 3D, the formulas are essentially the same, but framed differently. It makes some "surprising" properties more intuitive and is extensible to any number…
Wow that's fascinating, thanks for sharing it! Although I disagree with how the author describes quaternions as black boxes. The two questions he asks: - Why does i2=j2=k2=−1 and ij=k? - Why do we take a vector and upgrade it to an "imaginary" vector in order to transform it, like q(xi+yj+zk)q∗? Are clearly explained in these interactive videos created by Grant Sanderson and Ben Eater: https://eater.net/quaternions A…
GA breaks down quaternions (and their generalization to arbitrary dimensions) into smaller pieces that are much more obvious.
It takes hundreds of years to invent quaternions from scratch, but it takes 10 minutes to invent quaternions from GA.
Re: Show HN: Visualizing the math that powers 3D character animation
#25On the subject of quaternions, here is an article that pops up on HN from time to time. https://marctenbosch.com/quaternions/ It is called "Let's remove Quaternions from every 3D Engine". The author suggests replacing quaternions with rotors and geometric algebra. In 3D, the formulas are essentially the same, but framed differently. It makes some "surprising" properties more intuitive and is extensible to any number…
Re: Show HN: Visualizing the math that powers 3D character animation
#26Re: Show HN: Visualizing the math that powers 3D character animation
#27Nice work, but displaying the time evolution of individual quaternion components is about as intuitive of a visualization as displaying the time evolution of an individual pixel to visualize video compression...
Hahaha this is a fair comment. I guess my intention was to show the complex number crunching that happens in the background to make characters move. I'm still thinking about better ways to visualize things.
Re: Show HN: Visualizing the math that powers 3D character animation
#28On the subject of quaternions, here is an article that pops up on HN from time to time. https://marctenbosch.com/quaternions/ It is called "Let's remove Quaternions from every 3D Engine". The author suggests replacing quaternions with rotors and geometric algebra. In 3D, the formulas are essentially the same, but framed differently. It makes some "surprising" properties more intuitive and is extensible to any number…
Given that Miegakure has been “coming soon” for over ten years (maybe the dev initially planned it as a 10-year-game, but if so I wish he would’ve said so when people asked when it was coming) I’m going to suggest putting a hold on deciding whether this way of reckoning rotations results in a better development process.
And if anything, I don't think the engine is the problem. He already shipped 4D toys, which I suspect is a way to monetize the devtools he made for Miegakure (nothing wrong with that). And even before that, the 4D was fine.
But while it is nice having good 4D, turning it into an entertaining game with good graphics, good puzzle design, a story that doesn't suck (even a simple one), etc... is hard. And we are not talking about a FPS or 2D platformer here, there are no game design books about making games like Miegakure, and there are many, many things that can go wrong. And to be honest, I hope for the best, but I don't expect much.
One big difficulty I see is that not only the designers have to understand 4D to make interesting worlds/puzzles, but the game has to teach that to players too, with the right difficulty curve.
Re: Show HN: Visualizing the math that powers 3D character animation
#29Sample all the curves you see on the graphs to get the orientation of each joint... ```
When the curves are "sampled", does that mean in a 60 fps animation, there are 60 timestep values t={t1, t2, ... t60} sampled from a uniform distributions, and evaluated at x(t), y(t), z(t), and w(t), and then those values are stepped through sequentially? If that is the case, why not just set t={1/60, 2/60, ... 1}?
Or does "sampling" here just mean function is evaluated at an appropriate t value, and not refering to statistical sampling?
Re: Show HN: Visualizing the math that powers 3D character animation
#30I'm a little confused about why the curves are "sampled" to update the joint transformations: ``` So if we are rendering 60 frames per second, we are basically doing the following 60 times a second: Sample all the curves you see on the graphs to get the orientation of each joint... ``` When the curves are "sampled", does that mean in a 60 fps animation, there are 60 timestep values t={t1, t2, ... t60} sampled from a…
I agree that it's definitely an abuse of terminology.