Fisheye camera mode ... testers are welcome

Hi.

I’ve been working since the begin of the year for SAT - La Société des arts technologiques - in order to implement a dome solution for BGE.

http://blendereciabackup.wordpress.com/files/2009/01/ss24.jpg?w=99

Right now the code is stable enough, and very close to its final state, for I think it’s a good time to catch some testers feedback here :slight_smile:

You can find the build in Graphicall.org windows only + patch.
Some pictures of it being used in real dome instalations:

If you want to read more about this implementation I wrote two posts in my blog:

All the settings are done in the Game Settings panel.
Enjoy it :slight_smile: and please drop a note if it doesn’t work with a specific file or computer.
You can find documentation here: http://wiki.blender.org/index.php/Dev:Source/GameEngine/Fisheye_Dome_Camera

Wow looks like a big improvement on the last one…very impressive. I would make it show a black bkrnd at the borders of the lens

Wow looks like a big improvement on the last one…very impressive. I would make it show a black background at the borders of the lens
Thanks. when you say the last one you mean the first build, or the early tests with GLSL and normal map?

Regarding the background, I want to show the background color choose in the Game Settings panel. I had forgot about that though :stuck_out_tongue: Thanks for remind me :slight_smile:

Brecht fixed the specular bug today (thanks Brecht !!!). In fact for some reasons the specular is still not working. I need to find out the problem :frowning:

In the mean time I did the code to support truncated fisheyeshttp://img301.imageshack.us/img301/6964/sstruncatedcv4.th.jpg

And started a panoramic mode:

http://img27.imageshack.us/img27/9758/ss27pngdr5.th.jpg

However this panoramic is lame :slight_smile: I just drawn the images side-by-side. I still need to find the math to to the cylindrical distortion (I have a clue though).

These changes are only in my computer. If i have time this weekend (what I doubt) I update the graphical build.

Cheers

Now we have the option to set the angle from 90º to 250º (I will extend it to 360º later). The idea is to have it working in partial domes and domes bigger than 180º as well.

In the mean time I’m in Montreal doing tests with the real dome. I put a video online:
http://vimeo.com/3170858 (YoFrankie)
http://vimeo.com/3170094 (OceanViz)

I finished school assignments this week and started to code again yesterday (after almost a month of break).

I updated the code with current SVN, fix some bugs and ported it to work with Display List.

I updated the build at Graphicall.org - http://graphicall.org/builds/builds/showbuild.php?action=show&id=922

I hope you like it.

wow- that’s so cool

this one should be sticky or posted in news and discussion, or posted on blender news to get more attention!

The Panorama option is working nicely now.

Some images:
http://img21.imageshack.us/gal.php?g=ss34j.jpg

http://triton.imageshack.us/Himg21/scaled.php?server=21&filename=ss38l.jpg&xsize=640&ysize=480

http://triton.imageshack.us/Himg15/scaled.php?server=15&filename=ss34f.jpg&xsize=640&ysize=480

http://triton.imageshack.us/Himg15/scaled.php?server=15&filename=ss36a.jpg&xsize=640&ysize=480

http://triton.imageshack.us/Himg14/scaled.php?server=14&filename=ss37.jpg&xsize=640&ysize=480

And there are some exciting news coming … I write back here soon.

will be happy to test when a source/linux build is available…
good work indeed, probably it will resurrect my old dome project once done with Ashsid video texture plugin… (http://www.foton.be/movies/dome01c.avi ) thanks !

There is now a branch to keep the code fresh and accessible to everyone.
Follow one of those building guides:
http://www.blender.org/development/building-blender/

And checkout the source code in: https://svn.blender.org/svnroot/bf-blender/branches/ge_dome/

If you found any bug please let me know. You can report in this thread if you want. If you can isolate any bug in a simple easy to debug file than it would be great :slight_smile:

I want it working smoothly ASAP so we can have it by Blender 2.49.

@Olm-Z: That would be really nice. I spotted a truncated dome in your video, is this right? Not sure if it would work out-of-the-box with the current truncated dome mode (GameSettings->mode = 2).

I didn’t build for Linux but you can get the source code and build it on your own. I would love to hear your feedback.

Cheers

Graphicall Build updated: http://www.graphicall.org/builds/builds/showbuild.php?action=show&id=922

Nice additions:

  • 360º Spherical Panoramic working 100%
  • wireframe mode show you the geometry (for calibration purpose or for fun)
    -bug fixes, clean ups … there are 3 bugs left:
  1. Reflect Texture coordinates uses the camera current orientation. Therefore we can see seams between the cameras that compound our image.
  2. sometimes the images go blank. It needs further investigations.
  3. sometimes object disapears …

And now a preview (i.e. mockup, gimped) of my next goal :slight_smile:

http://img256.imageshack.us/img256/5470/ss51.jpg

looks interesting… will we be able to make a wide rectangle panoramic image that doesn’t repeat the full 360… if we want an image without distortion… ie just real wide camera angle sorta thing… looking very cool tho!

Any chance of doing 6 panel ‘game-style’ and ‘QuickTime VR’ style skydome projections?

looks interesting… will we be able to make a wide rectangle panoramic image that doesn’t repeat the full 360…

Yes it would, but it’s not in my top-priority list right now, sorry :slight_smile:
But just out of curiosity, would you like an image with a lot of sky and ground as this one or only the horizontal camera?

Any chance of doing 6 panel ‘game-style’ and ‘QuickTime VR’ style skydome projections?

Could you clarify how would that be? Links please :slight_smile:
And what exactly would be their use?

Now we have Warp Mesh support.
Therefore you can take the rendered image (e.g. from the spherical panoramic or the fisheye) and wrap it in a custom mesh.

More details here:
http://wiki.blender.org/index.php/Dev:Source/GameEngine/Fisheye_Dome_Camera

http://img21.imageshack.us/img21/6109/warpedfisheye500.jpg
(as an example, this is the kind of image needed for a Spherical Mirror Dome with a projector 4x3).

Code updated in the branch.

I just updated the build in Graphicall as well.
Now it supports warped meshes (it’s already in the default file that comes with the build).

Once again, testers are welcome :slight_smile:

Yeah, I meant the ‘game’ skyboxes that are created using 6 plains that have the sky and floor mapped onto the faces of the cube. Then the software interprets this to ‘remove the corners’ so that it looks like a dome when viewed.

A similar process is used to creat Quicktime VR images.

and a more blender-centric version …

http://en.wikibooks.org/wiki/Blender_3D:_Noob_to_Pro/Build_a_skybox

@Tea_Monster:

EnvMap mode implemented (mode 2).
Can you test to see if this is what you had in mind?

http://wiki.blender.org/uploads/1/19/Dev-GameEngine-Dome-EnvMap.jpg

You can get a fresh build here: http://www.graphicall.org/builds/builds/showbuild.php?action=show&id=922

In order to extend the use of warping meshes, I created a script to create my own warp data file to use with domes + spherical mirrors. - http://blenderartists.org/forum/showthread.php?p=1440461#post1440461

Although the script is not that trivial, it’s well documented, and can provide you with other ideas to use this dome mode (eg I’m planning to use it to play BGE games in cylindrical surfaces)

whats fish eye