- Timestamp:
- 07/16/08 00:03:59 (5 years ago)
- Files:
-
- 1 modified
Legend:
- Unmodified
- Added
- Removed
-
OpenSceneGraph/trunk/examples/osgwidgetshader/osgwidgetshader.cpp
r8588 r8600 9 9 10 10 osgWidget::Widget* createWidget( 11 const std::string& name,12 osgWidget::color_type col,13 osgWidget::Widget::LAYER layer11 const std::string& name, 12 osgWidget::color_type col, 13 osgWidget::Widget::LAYER layer 14 14 ) { 15 osgWidget::Widget* widget = new osgWidget::Widget(name, 200.0f, 200.0f);15 osgWidget::Widget* widget = new osgWidget::Widget(name, 200.0f, 200.0f); 16 16 17 widget->setColor(col, col, col, 0.2f);18 widget->setLayer(layer);17 widget->setColor(col, col, col, 0.2f); 18 widget->setLayer(layer); 19 19 20 return widget;20 return widget; 21 21 } 22 22 23 23 int main(int argc, char** argv) { 24 osgViewer::Viewer viewer;24 osgViewer::Viewer viewer; 25 25 26 osgWidget::WindowManager* wm = new osgWidget::WindowManager(27 &viewer,28 1280.0f,29 1024.0f,30 MASK_2D31 );32 33 osgWidget::Canvas* canvas = new osgWidget::Canvas("canvas");26 osgWidget::WindowManager* wm = new osgWidget::WindowManager( 27 &viewer, 28 1280.0f, 29 1024.0f, 30 MASK_2D 31 ); 32 33 osgWidget::Canvas* canvas = new osgWidget::Canvas("canvas"); 34 34 35 canvas->attachMoveCallback();36 canvas->attachScaleCallback();35 canvas->attachMoveCallback(); 36 canvas->attachScaleCallback(); 37 37 38 canvas->addWidget(39 createWidget("w1", 0.2f, osgWidget::Widget::LAYER_LOW),40 0.0f,41 0.0f42 );43 44 canvas->addWidget(45 createWidget("w2", 0.4f, osgWidget::Widget::LAYER_MIDDLE),46 200.0f,47 0.0f48 );38 canvas->addWidget( 39 createWidget("w1", 0.2f, osgWidget::Widget::LAYER_LOW), 40 0.0f, 41 0.0f 42 ); 43 44 canvas->addWidget( 45 createWidget("w2", 0.4f, osgWidget::Widget::LAYER_MIDDLE), 46 200.0f, 47 0.0f 48 ); 49 49 50 canvas->addWidget(51 createWidget("w3", 0.6f, osgWidget::Widget::LAYER_HIGH),52 400.0f,53 0.0f54 );50 canvas->addWidget( 51 createWidget("w3", 0.6f, osgWidget::Widget::LAYER_HIGH), 52 400.0f, 53 0.0f 54 ); 55 55 56 56 57 wm->addChild(canvas);57 wm->addChild(canvas); 58 58 59 osg::Program* program = new osg::Program();59 osg::Program* program = new osg::Program(); 60 60 61 program->addShader(osg::Shader::readShaderFile(62 osg::Shader::VERTEX,63 "osgWidget/osgwidgetshader-vert.glsl"64 ));65 66 program->addShader(osg::Shader::readShaderFile(67 osg::Shader::FRAGMENT,68 "osgWidget/osgwidgetshader-frag.glsl"69 ));61 program->addShader(osg::Shader::readShaderFile( 62 osg::Shader::VERTEX, 63 "osgWidget/osgwidgetshader-vert.glsl" 64 )); 65 66 program->addShader(osg::Shader::readShaderFile( 67 osg::Shader::FRAGMENT, 68 "osgWidget/osgwidgetshader-frag.glsl" 69 )); 70 70 71 canvas->getGeode()->getOrCreateStateSet()->setAttribute(program);71 canvas->getGeode()->getOrCreateStateSet()->setAttribute(program); 72 72 73 return osgWidget::createExample(viewer, wm);73 return osgWidget::createExample(viewer, wm); 74 74 }
