Reliable workflow to produce fast, interactive results.
Dynamic distortion based on focal distance.
Converted the ST maps to K1, K2, K3, P1, P2 values so it runs fast.
Also saves needing to reference 4.7 GB contained in 43 32 bit EXRs for this one lens.
Focus pull mapped in lens object as well.
Next up: applying to first set of 14 lenses with good sets of grids at multiple focal distances.
Here’s a test lens object to try out in Unreal 5.3 or later.
Not sure how I’ve managed to do Flame for 25+ years and lots of different kind of comps, and I’ve never dealt with or thought about lens distortion science or ST maps.
Tracking team was solid and kept you in the dark?
If using cam tracks, deliverables include STmaps generated from solve.
Point of my pointless exercise is push interactive tools like Unreal that can translate to flame quality.
Drawn to Flame back in the Long Long Ago for similar reasons. Color too. Interactive tools are a lot of fun.
This is a by-product of my RnD into datasets, cinema lenses in this case. Large set of verifiable data with a handful of set variables.
Data workflow btw unreal, flame and houdini based from the real world lenses. Map the rotation response curve and the tool not only looks right, but feels right when used.
Nice stuff! I put in a flame FR for something like this a while back in the hopes that action’s camera could natively apply lens distortion to all the objects inside (instead of a downstream ST map).
Think what’s great about how unreal implemented the lenses are as an object that attaches and over-rides the settings on the camera. Distortion, sensor size, focus and iris pulls are all embedded in one small package. Wish list would include adding aperture blades, focus min lock, bokeh kernel and sone way of addressing flares/glares which is usually heavily influenced by coatings.
If you’re just doing projection cleanups you can get away without them most of the time, but if you want to put cg into a tracked scene that resembles the real world, then dealing with lens distortion is a must.