Here’s a quick CVEX lens shader for Houdini, allowing you to render in Mantra with an equidistant fisheye lens. Also check out Matt Estela’s stereo spherical panorama camera that he got working for some VR tests we did.
–> http://mattebb.com/projects/houdini/fisheye_camera.otl
Pretty nice.
May I suggest you implement an equisolid shader as well? It matches the real fisheye lens. And it’s also a more common input format for fulldomes 🙂
By the way, regarding the stereo spherical panorama, you can use the same technique for fisheye rendering as well. Which I in fact hope to commit to Cycles soon. I have a working patch missing only tiny review cleanups, in case you bother to ‘compare the results’, it would be nice to see if Blender/Cycles and Maya/Houdini are producing the same image distortions.
Sure, have you got any code or formulas to point to?
Hi Matt, basically:
http://www.dalaifelinto.com/?p=619
http://www.dalaifelinto.com/?p=399
Or for pure code:
https://developer.blender.org/diffusion/C/browse/master/src/kernel/kernel_projection.h
As for the Spherical Stereo Rendering all I have is here:
http://www.dalaifelinto.com/?p=1009
And the patch is here:
https://developer.blender.org/D1223
Fun fact, this is also based on Paul Bourke’s work, as explained here:
http://www.dalaifelinto.com/?p=686
Cheers
I’ve been halfheartedly cribbing stuff from here: https://github.com/zicher3d-org/domemaster-stereo-shader
Hi Matt.
My name is Andrew Hazelden, and I’m one of the contributors to the Domemaster3D project.
Your Houdini CVEX lens shader progress is really interesting. Would you mind if I use your fisheye_camera.otl file as the basis for porting the LatLongStereo shader to Mantra?
Cheers,
Andrew
Not at all! However you may want to check Matt Estela’s page (I linked to it above in the pose) since if I’m understanding what you’re talking about correctly, it’s already done.
[…] (Side Effects Software) — DomeMaster — Houdini Fisheye Camera — Houdini Stereo Spherical Panorama […]
Hi,
About the so called “equisolid shader” or stereographic projection etc.
Would it be just your fisheye with a 360° fov ??? like this picture http://www.kolor.com/wiki-en/images-en/9/9f/Little_planet_360_video_cycling.jpg
I’m pretty lost in these technique as for me to have thi particular type of projection you need first a polar projection (spherical) then reproject it by using a stereographic projection. ( https://en.wikipedia.org/wiki/Stereographic_projection )
is it the same as using a 360 fisheye lens ????
The fisheye CVEX shader in the original post is not capable of what you want in your ‘little planet’ image, but in general it’s a similar technique. Just some slightly different math for the projection. You don’t need to first have a polar projection if you’re generating the projection yourself, just need do design the ‘lens’ to warp the rays to the correct directions.
how to enable defocus on this cam?
Hey Matt, this is super helpful. Thanks for posting it.
I was curious how you’d go about getting NDC coordinates with a equidistant projection like this.
Ideally I’d like a toNDC() function that uses a fisheye model like this.