function08
function08
Function 08
Index
• Context
• Making of some intros
• Conclusions
Index
• Context
• Making of some intros
• Conclusions
Context
• In anyway, cubes involved or not, 75% of the intros show abstract stuff
• And 99.9% of the intros don’t (cannot) show non-abstract organic shapes.
• I would classify like this:
• Context
• Making of some intros
• Conclusions
Making of “Kindernoiser”
•A message
Started here at Function 2007
Making of Luxo
• Collaboration 4k Gargaj again
with
Making of Stiletto (technical)
• Features
• Simple geometry (revolution profiles)
• Planar shadows (render with a flatenning matrix - raycast)
• Animation!
Making of “Luxo 4k”
Making of “Luxo 4k”
Making of “Luxo 4k”
Compressing
• 11 signals to store, 246 samples each (more than 10 seconds at 24 fps)
• Curves were delta encoded
• Prediction of smooth curves at high framerates (24 fps) works very
well of course, competitive with splines, but easier to work with ☺
• Less precission required as going down the hierarchy of bones \o/
• First nodes compressed to 3.5 bits per frame
• Last nodes compressed to 1.7 bits per frame
• In the end, arround 100 bytes per curve for the complete animation
• Arround 979 bytes of total animation data
•At replay time, linear interpolation for subframe accuracy.
Making of “Luxo 4k”
• In the end, with animation curves (979), animation player (220), mesh
data (96), mesh generation (147), hierarchical object animation, lighting,
plus shadows, materials, font and graphics and sound setup, it went to
3500.
• So, basically Gargaj had 600 bytes to generate some music!
• Without gm.dls, nor dx tricks, nor other cheats.
• The day Gargaj showed it at Pixar the intro was 100 bytes over the limit.
• Worked almost two weeks more to get it down to 4096.
Making of “Luxo 4k”
• Conclusion were:
• Curve based animations in 4k are not impossible, but would need
better compression for real cases (intros longer than 20 seconds).
• Making an intro when the target is precisely set in advance is MUCH
more difficult than just making an intro where the storyboard can be
adapted to the capabilities of the techniques, tricks and code.
• Didn’t impress much to the average demoscener, not even to intro
coders
Making of “Stiletto”
Geometry
• The idea was to be the first to put some organic and non trivial
geometry (not terrains or architectural structures, nor abstract shit of
course)
• Used: modeling in Maya, compression and subdivision.
• More details on subdivision and compression just here:
http://www.rgba.org/iq/divulgation/bcn2007/bcn2007.htm
Animation
• Once I knew I could put an interesting mesh, I had to animate it.
• Googled for “animation cycle”, found this nice image...
Conclusions
• Other than the mesh, features were almost identical to Luxo4k
(shadows, flat background, animation. Actually Stiletto had far more
complex geometry.
• However, it was much simpler to do.
• I was free to make any animation I could
• And adapt all my cameras, intro and design for it
• While Luxo it was the other way arround, first have an idea, and
then develop whatever possible to get it to work.
• Regarding technique, go for formulanimation over curve compression
when possible.
Conclussions
• However, coders should forget about instant success and feel challenged
to try non abstract shit.