osgART 2.0 RC3 con OpenSceneGraph 2.9.7 o posterior (incluyendo 3.0.0)

Hace bastante tiempo tuve problemas para usar osgART 2.0 RC3 con OpenSceneGraph 2.9.7 o cualquier versión posterior, no conseguía que el video de la cámara web se mostrara en el fondo así que siempre me limitaba a usar OpenSceneGraph 2.9.6. Hoy me he dado cuenta de que mi aplicación osgART podía funcionar con OpenSceneGraph 2.9.7 o superior (la versión actual 3.0.0 también funciona!), pero como siempre me quedaba en la 2.9.6 no sabía que había solucionado el problema!

NOTA: Si quieres instalar OpenSceneGraph 3.0.0 en Ubuntu 11.10 o Ubuntu 12.04 tendrás que aplicar los parches que he creado y subido a mi repositorio de github.

La clave del problema esta que al configurar el osgART::VideoGeode para el fondo se puede usar TEXTURE_2D o TEXTURE_RECTANGLE. Si usas TEXTURE_RECTANGLE funcionará en versiones nuevas de OpenSceneGraph. Se puede ver un ejemplo en la línea 40 de “examples/osgartsimple/osgartsimple.cpp” en el código fuente de osgART 2.0 RC3:

osg::Group* createImageBackground(osg::Image* video) {
	osgART::VideoLayer* _layer = new osgART::VideoLayer();
	_layer->setSize(*video);
	osgART::VideoGeode* _geode = new osgART::VideoGeode(osgART::VideoGeode::USE_TEXTURE_2D, video);
	addTexturedQuad(*_geode,video->s(),video->t());
	_layer->addChild(_geode);
	return _layer;
}

Si tienes instalado OpenSceneGraph 2.9.7 o superior con osgART 2.0 RC3 tal cual viene el código fuente, al ejecutar este ejemplo desde “/usr/local/bin/osgartsimple” verás algo como esto al mostrar el típico patrón “Hiro” a la cámara:

Si modificas el código anterior a esto:

osg::Group* createImageBackground(osg::Image* video) {
	osgART::VideoLayer* _layer = new osgART::VideoLayer();
	_layer->setSize(*video);
	osgART::VideoGeode* _geode = new osgART::VideoGeode(osgART::VideoGeode::USE_TEXTURE_RECTANGLE, video);
	addTexturedQuad(*_geode,video->s(),video->t());
	_layer->addChild(_geode);
	return _layer;
}

Y luego compilas e instalas osgART 2.0 RC3 otra vez, “/usr/local/bin/osgartsimple” funcionará sin problemas.

You might also like

osgART 2.0 RC3 with OpenSceneGraph 2.9.7 or later (including 3.0.0)
Long time ago I had problems using osgART 2.0 RC3 with OpenSceneGraph 2.9.7 or later, I couldn't get...

Instalar OpenSceneGraph 2.9.6 con soporte para Collada en Ubuntu 12.04
Aunque normalmente uso OpenSceneGraph 2.8.3 para trabajar con osgART 2.0 RC3 también se puede usar OpenSceneGraph...

Scripts para instalar ARToolKit, Collada DOM, OpenSceneGraph y osgART
He creado unos scripts y parches para que la instalación de todas estas librerías sean menos "dolorosa"....

ARSlides v1.0: Aplicación de presentación de diapositivas en realidad aumentada
Me alegra informaros de que (por fin) he publicado el código de la aplicación en realidad aumentada...

Dejar un comentario?

0 Comentarios.

Deje un comentario

Este sitio usa Akismet para reducir el spam. Aprende cómo se procesan los datos de tus comentarios.