Hello,
a clever guy solved my problem. He said I must set the environment variable
LC_NUMERIC to "C", but we don't know why. Maybe, GTK set the LC_NUMERIC on an
inappropriate value.
I changed the following part and now it works fine, although the oldloc get the
value "C" and I set LC_NUMERIC on "C". (???)
[...]
if(da.createWidget(640, 480))
{
if(argc >= 2)
{
const char* oldloc = setlocale(LC_NUMERIC,"C"); // new
osg::ref_ptr<osg::Node> model = osgDB::readNodeFile(argv[1]);
setlocale(LC_NUMERIC,oldloc); // new
if(model.valid()) da.setSceneData(model.get());
}
[...]
And this following message came from GL2Extensions.cpp
> With GTK:
> glVersion=2, isGlslSupported=YES, glslLanguageVersion=1
>
>
> Without GTK:
> glVersion=2.1, isGlslSupported=YES, glslLanguageVersion=1.2
The problem is here the point ("."). The function atof() can not convert the
string to the right float. See line 328 and line 344 in GL2Extensions.cpp.
(328) _glVersion = atof( version );
(344) _glslLanguageVersion = atof( langVerStr );
I hope it is a helpful knowledge.
Cheers,
Martin
--
Der GMX SmartSurfer hilft bis zu 70% Ihrer Onlinekosten zu sparen!
Ideal für Modem und ISDN: http://www.gmx.net/de/go/smartsurfer
_______________________________________________
osg-users mailing list
[email protected]
http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org