Re: [osg-users] Glimpse into future support for distortion correction

2007-02-22 Thread Toshiyuki TAKAHEI
Hi Robert,

On Thu, 22 Feb 2007 17:33:28 +
"Robert Osfield" <[EMAIL PROTECTED]> wrote:
> 
> One of the tasks bubbling along in the background is support for
> distortion correction in osgViewer.  osgViewer itself won't provide
> the support but will allow you to set up the required cameras and
> distortion meshes as custom scene graph elements.   This week I
> generalised a couple of components in osgViewer, SceneView and Camera
> to allow to work, ableit in app hardwired way.

Nice work! It represents promising possibility of the osgViewer.

By the way, 'distortion meshes as custom scene graph elements' is
reasonable, but in my experiences, I need 'pixel level' distortion
in many cases. So I made a distortion/blending map creation tool
'Projection Designer', and also defined the distortion map
as an image file which encodes pixel warp mapping in color of pixels.
http://orihalcon.jp/projdesigner/
(Projection Designer is currently Windows version only, but its Linux
version is almost done.)

I also made osgdistortion based real-time distortion viewer:
http://orihalcon.jp/download/osgdistortviewer_src.zip
At that time I used Producer's camera configuration file to
specify the off-screen rendering matrixes. Maybe osgViewer also
need such kind of configuration data.

Regards,



Forwarded by Toshiyuki TAKAHEI <[EMAIL PROTECTED]>
------- Original Message ---
From:Toshiyuki TAKAHEI <[EMAIL PROTECTED]>
To:  osg-users@openscenegraph.net
Date:Mon, 07 Aug 2006 15:08:56 +0900
Subject: [osg-users] BOF presentation : osgDirector, ProjectionDesigner and 
osgdistortviewer


Hi all,

At the end of the Siggraph2006 BOF, I showed some of my OSG related
works.

1) osgDirector and Orihalcon framework

Last year I released osgDirector and Orihalcon framework
at http://orihalcon.sourceforge.net/.
osgDirector is a wxWidgets based graphical scene graph editor.
It contains some libraries which wrap and extend the OSG features.

2) ProjectionDesigner and osgdistortviewer

The second topic is about my recent work.
ProjectionDesigner is a geometry correction and edge blending
setup tool for immersive environment with a curved screen.
I made it for full dome projection with 13 channels.
http://orihalcon.jp/projdesigner/
Once you complete the projector configuration with it,
you can export a distortion map file, a blend map file and
camera configuration file (for Producer).

This is a sample OSG program using them for real-time
geometry / edge blending correction.
http://orihalcon.jp/download/osgdistortviewer_src.zip
I made it based on osgprerender, and add some additional arguments.
Ex.
osgdistortviewer.exe --distortionmap distort.png --blendmap blend.png 
dumptruck.osg
(distortion with a polygon mesh)
Ex.
osgdistortviewer.exe --shaderDistortion --distortionmap distort.png --blendmap 
blend.png dumptruck.osg
(distortion with GLSL shaders)

It's not easy to set up many projectors with it,
but anyway, you can do it.


I hope these projects would be helpful for you.

-- 
Toshiyuki TAKAHEI <[EMAIL PROTECTED]>


___
osg-users mailing list
osg-users@openscenegraph.net
http://openscenegraph.net/mailman/listinfo/osg-users
http://www.openscenegraph.org/


Re: [osg-users] Glimpse into future support for distortion correction

2007-02-22 Thread Toshiyuki TAKAHEI
Hi Robert,

On Thu, 22 Feb 2007 20:35:48 +
"Robert Osfield" <[EMAIL PROTECTED]> wrote:
> >
> > By the way, 'distortion meshes as custom scene graph elements' is
> > reasonable, but in my experiences, I need 'pixel level' distortion
> > in many cases.
> 
> The general approach I've take could easily use a texture map to set
> up the normals, its just a matter of setting up the scene graph
> approrpriate, you can use all the normal scene graph primitive for the
> rendering of the distortion mesh.
> 
> In this instance the distortion mesh usedis just an osg::Geometry
> convering the full screen, with vertices arranged as a grid, with each
> vertex having a Vec3 tex coord normal pointing into the cubemap.  The
> graphics hardware interpolates between the tex coords so that
> resulting tex coord used to look up the cubemap should be interpolated
> reasonably well.

Interesting. My distortion setup tool is intended to use with multiple
projections, and each PC renders only minimum required area into off-screen
buffer, not full cubemap, because of rendering performance.
Anyway, when I have time to work, I'll try to support these
distortion mesh output in my tool.


> > So I made a distortion/blending map creation tool
> > 'Projection Designer', and also defined the distortion map
> > as an image file which encodes pixel warp mapping in color of pixels.
> > http://orihalcon.jp/projdesigner/
> > (Projection Designer is currently Windows version only, but its Linux
> > version is almost done.)
> 
> Cool, would a OSX port be possible as well? ;-)

OK, I'll try. ;-)


> My hope for the config file support for osgViewer is that it'll make
> it possible for you to output a configuration file that could be
> loaded my osgViewer based apps.
> 
> 
> > I also made osgdistortion based real-time distortion viewer:
> > http://orihalcon.jp/download/osgdistortviewer_src.zip
> > At that time I used Producer's camera configuration file to
> > specify the off-screen rendering matrixes. Maybe osgViewer also
> > need such kind of configuration data.
> 
> The osgViewer config file would contain both the camera setup and the
> distortion mesh (and any textures required).  The config file format
> will be an extension of the .osg file format so it'll be possible to
> embed mini scene graphs directly into the config file, so things like
> external references to texture maps will all be possible.

Yes, the native support of camera setup configuration will
make the distortion/blending and cluster rendering be
transparent to contents. It's a really desirable solution!

Regards,

-- 
Toshiyuki TAKAHEI <[EMAIL PROTECTED]>


___
osg-users mailing list
osg-users@openscenegraph.net
http://openscenegraph.net/mailman/listinfo/osg-users
http://www.openscenegraph.org/


[osg-users] BOF presentation : osgDirector, ProjectionDesigner and osgdistortviewer

2006-08-06 Thread Toshiyuki TAKAHEI
Hi all,

At the end of the Siggraph2006 BOF, I showed some of my OSG related
works.

1) osgDirector and Orihalcon framework

Last year I released osgDirector and Orihalcon framework
at http://orihalcon.sourceforge.net/.
osgDirector is a wxWidgets based graphical scene graph editor.
It contains some libraries which wrap and extend the OSG features.

2) ProjectionDesigner and osgdistortviewer

The second topic is about my recent work.
ProjectionDesigner is a geometry correction and edge blending
setup tool for immersive environment with a curved screen.
I made it for full dome projection with 13 channels.
http://orihalcon.jp/projdesigner/
Once you complete the projector configuration with it,
you can export a distortion map file, a blend map file and
camera configuration file (for Producer).

This is a sample OSG program using them for real-time
geometry / edge blending correction.
http://orihalcon.jp/download/osgdistortviewer_src.zip
I made it based on osgprerender, and add some additional arguments.
Ex.
osgdistortviewer.exe --distortionmap distort.png --blendmap blend.png 
dumptruck.osg
(distortion with a polygon mesh)
Ex.
osgdistortviewer.exe --shaderDistortion --distortionmap distort.png --blendmap 
blend.png dumptruck.osg
(distortion with GLSL shaders)

It's not easy to set up many projectors with it,
but anyway, you can do it.


I hope these projects would be helpful for you.

-- 
Toshiyuki TAKAHEI <[EMAIL PROTECTED]>


___
osg-users mailing list
osg-users@openscenegraph.net
http://openscenegraph.net/mailman/listinfo/osg-users
http://www.openscenegraph.org/


Re: [osg-users] BOF presentation : osgDirector, ProjectionDesigner and osgdistortviewer

2006-08-07 Thread Toshiyuki TAKAHEI
Hi Robert,

On Mon, 7 Aug 2006 11:09:36 +0100
"Robert Osfield" <[EMAIL PROTECTED]> wrote:
> 
> Cool projects.  Feel free to add links to them all under the Community
> section, and note on the front page about the new ProjectionDesigner.

Thank you for your suggestion. I'll put the link to the OSG web site soon.

> 
> I haven't download the source to these projects yet, so can't know for
> sure yet, but looking at your websites it looks like the underlying
> API's you've used are portable, but not yet ported to other platforms
> beyond Windows.  Do you have any plans for other platform support?

Yes. ProjectionDesigner depends on Qt and DevIL library, so
I think it is easy to port it to Linux, Macintosh and other platforms.
But currently I don't have any proper PCs to work with,
so currently I have no plan to port it by myself.
If some of you could help me, highly welcome.
I'll put this project to the sourceforge soon.

> One of the items I have thought about tackling, over the coming six
> months, is adding better support for multi-pipe & distortion
> correction & edge blending.  Current we have Producer to support
> multi-pipe and its configuration files for setting it up, it'd be nice
> to be able to have configuration files to add the distortion
> correction and edge blending too.
> 
> If we have this in core then it'd be easy to add support for novel
> displays to normal OSG apps.  Your ProjectionDesigner may well provide
> a useful to for generating the configuration files.

Before I began this project, I couldn't found any open source projects of
distortion correction for curved screens. Open Producer has powerful
solution for multi-pipe rendering, but it still lacks the non-linear
correction and edge blending. That's why I made this software.

ProjectionDesigner is useful tool for this purpose, but I think
more important thing is universal format of configuration files.
Set of distortion map, blend map and Producer's camera configuration file
will work for any shape of screen with any number of projectors.
Scalable realtime 3D framework such as OSG should support
this kind of universal output interface.
In the future if you have a better setup tool than the ProjectionDesigner,
I hope it would export configuration files in the same format.

In Producer's .cfg file, I want to write like:

Camera "left"
{
Lens {
Frustum -0.0921693 0.0921693 -0.0624869 0.0624869 0.1 100;
}
Offset {
Rotate -45.0 1 0 0;
}
Distortion distortmap_left.png;
Blend blendmap_left.png;
}

With this modification, Producer's configuration file
would work for any kind of projection environments.
Current Producer may be terminated by the last two lines,
but at least I want Producer to just ignore the unknown tokens
and provide some functions to retrieve them.
Of course if you put these correction in OSG / Producer core,
it would be highly useful.

Regards,

-- 
Toshiyuki TAKAHEI <[EMAIL PROTECTED]>


___
osg-users mailing list
osg-users@openscenegraph.net
http://openscenegraph.net/mailman/listinfo/osg-users
http://www.openscenegraph.org/


[osg-users] osgField NodeKit released

2006-10-05 Thread Toshiyuki TAKAHEI
Hi all,

Today I released osgField NodeKit, which provides a universal way
to implement and serialize animations based on osgIntrospection.
http://orihalcon.jp/osgfield/

It's a kind of value update event chain mechanism like OpenInventor and
VRML2's Field/Engine classes. With this NodeKit you can also write
exporters which supports not only transform animations, but also
material animation and more.

I also updated my osgDirector to support the osgField functions.
You can design both the scene graph and animation event chains
from its graphical user interfaces.
http://orihalcon.jp/orihalconfw/

Any comments, suggestions and contributions are welcome.

I hope you'll like it.
Have fun!

-- 
Toshiyuki TAKAHEI


___
osg-users mailing list
osg-users@openscenegraph.net
http://openscenegraph.net/mailman/listinfo/osg-users
http://www.openscenegraph.org/


[osg-users] Earth model with terrain relief

2006-11-07 Thread Toshiyuki TAKAHEI
Hi,

Today I tried to create an earth model with terrain relief using
osgdem and Blue Marble images.

Here is the steps:

http://earthobservatory.nasa.gov/Newsroom/BlueMarble/BlueMarble_monthlies.html
Download 'topographic shading' image, split it to 2048x2048 west.png and
2048x2048 east.png images.
Download 'topography' image, resize it to 4096x2048 topo.png image.

Prepatring:
(http://www.openscenegraph.org/osgwiki/pmwiki.php/UserGuides/Osgdem)

gdal_translate west.png west.tif 
gdaladdo -r average west.tif 2 4 8 16 32 

gdal_translate east.png west.tif 
gdaladdo -r average east.tif 2 4 8 16 32 

gdal_translate topo.png west.tif 
gdaladdo -r average topo.tif 2 4 8 16 32 


Then, at first, I tried to generate a height field.

osgdem --xx 10 --yy 10 -t west.tif \ 
  --xx 10 --yy 10 -d topo-west.tif \
  -l 3 -v 1.0 -o test.ive

>> works fine. I got a height field of the world.


Next, I tried to generate a textured earth model.
(http://www.andesengineering.com/BlueMarbleViewer/)

osgdem --bluemarble-west -t west.tif --bluemarble-east -t east.tif \
  --geocentric -l 5 -o earth.ive

>> works fine. I got a high resolution textured globe model.


Then I tried to generate an earth model with terrain relief.

osgdem --bluemarble-west -t west.tif --bluemarble-east -t east.tif \
  --whole-globe -d topo.tif --geocentric -v 1.0 -l 5 -o earth.ive

>> Not works properly. I got a high resolution textured globe model
without any height relief.

It seems that the current osgdem can't generate a globe height field.
Or do I have any mistakes in arguments?

regards,

-- 
Toshiyuki TAKAHEI <[EMAIL PROTECTED]>


___
osg-users mailing list
osg-users@openscenegraph.net
http://openscenegraph.net/mailman/listinfo/osg-users
http://www.openscenegraph.org/