Bonjour,
J'ai un petit problème avec OpenSceneGraph sur Visual Studio : j'essaie de faire tourner l'exemple du tutorial trouvé sur le site officiel, qui est censé afficher une capsule 3D, seulement quand je lance le déboguage tout se passe bien mais pas de capsule (seulement le fond bleu tout moche)
J'ai essayé avec d'autres formes et c'est pareil, sauf avec la box auquel cas il y a des "bouts de box" qui se baladent en clignotant quand on fait bouger la scène.
De plus j'ai essayé sur deux ordinateurs différents, avec les mêmes résultats.
J'avoue que je suis un peu perdu, je n'ai pas trouvé de discussion qui parle de ce problème donc ça doit être quelque chose de très simple qui m'a échappé, mais quoi? (je précise que je débute en OpenSceneGraph ET en VisualStudio)
A tout hasard je vous met le code
(le #include <windows.h> c'est parce qu'il paraît que c'est obligé avec VS, et les commentaires c'est les bouts d'exercice que je n'ai pas encore atteint :'( )
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44 #include <windows.h> #include <osgViewer/Viewer> #include <osg/ShapeDrawable> //#include <osgViewer/ViewerEventHandlers> //#include <osgGA/StateSetManipulator> int main() { //Creating the viewer osgViewer::Viewer viewer ; //Creating the root node osg::ref_ptr<osg::Group> root (new osg::Group); //The geode containing our shpae osg::ref_ptr<osg::Geode> myshapegeode (new osg::Geode); //Our shape: a capsule, it could have been any other geometry (a box, plane, cylinder etc.) osg::ref_ptr<osg::Cone> myCapsule (new osg::Cone(osg::Vec3f(),1,2)); //Our shape drawable osg::ref_ptr<osg::ShapeDrawable> capsuledrawable (new osg::ShapeDrawable(myCapsule.get())); myshapegeode->addDrawable(capsuledrawable.get()); root->addChild(myshapegeode.get()); viewer.setSceneData( root.get() ); //viewer.setThreadingModel(osgViewer::Viewer::ThreadingModel::SingleThreaded); //Stats Event Handler s key //viewer.addEventHandler(new osgViewer::StatsHandler); //Windows size handler //viewer.addEventHandler(new osgViewer::WindowSizeHandler); // add the state manipulator //viewer.addEventHandler( new osgGA::StateSetManipulator(viewer.getCamera()->getOrCreateStateSet()) ); //The viewer.run() method starts the threads and the traversals. return (viewer.run()); }
Si quelqu'un a une idée? Merci!
Partager