//Initialization function void OsgMainApp::initOsgWindow(int x,int y,int width,int height){ __android_log_write(ANDROID_LOG_ERROR, "OSGANDROID", "Initializing geometry"); //Pending _notifyHandler = new OsgAndroidNotifyHandler(); _notifyHandler->setTag("Osg Viewer"); osg::setNotifyHandler(_notifyHandler); osg::notify(osg::ALWAYS)<<"Testing"<<std::endl; _viewer = new osgViewer::Viewer(); _viewer->setUpViewerAsEmbeddedInWindow(x, y, width, height); _root = new osg::Group(); _viewer->realize(); _state = _root->getOrCreateStateSet(); _state->setMode(GL_LIGHTING, osg::StateAttribute::ON); _state->setMode(GL_DEPTH_TEST, osg::StateAttribute::ON); _state->setMode(GL_CULL_FACE, osg::StateAttribute::ON); PaddleManip = new test::PaddleManipulator(_viewer->getCamera()); loadDefaultScene(); _viewer->setSceneData(_root.get()); _viewer->addEventHandler(PaddleManip); _viewer->addEventHandler(new osgViewer::StatsHandler); _viewer->addEventHandler(new osgGA::StateSetManipulator(_viewer->getCamera()->getOrCreateStateSet())); _viewer->addEventHandler(new osgViewer::ThreadingHandler); _viewer->addEventHandler(new osgViewer::LODScaleHandler); _manipulator = new osgGA::KeySwitchMatrixManipulator; // _manipulator->addMatrixManipulator( '1', "Trackball", new osgGA::TrackballManipulator() ); // _manipulator->addMatrixManipulator( '2', "Flight", new osgGA::FlightManipulator() ); // _manipulator->addMatrixManipulator( '3', "Drive", new osgGA::DriveManipulator() ); // _manipulator->addMatrixManipulator( '4', "Terrain", new osgGA::TerrainManipulator() ); // _manipulator->addMatrixManipulator( '5', "Orbit", new osgGA::OrbitManipulator() ); // _manipulator->addMatrixManipulator( '6', "FirstPerson", new osgGA::FirstPersonManipulator() ); // _manipulator->addMatrixManipulator( '7', "Spherical", new osgGA::SphericalManipulator() ); // // _viewer->setCameraManipulator( _manipulator.get() ); _viewer->getViewerStats()->collectStats("scene", true); _initialized = true; double cameraHeight = std::sin(osg::DegreesToRadians(20.0)) * 12.0; osg::Vec3d cameraPosition(0, cameraHeight, 0); osg::Vec3d center(0, 0, 12); osg::Vec3d cameraDirection = center - cameraPosition; //osg::Quat(osg::DegreesToRadians(20.0), osg::Vec3d(0, 0, 1)) * osg::Vec3d(0, 0, 1); cameraDirection.normalize(); _viewer->getCamera()->setViewMatrixAsLookAt(cameraPosition, center, cameraDirection ^ osg::Vec3d(1, 0, 0)); // _viewer->getCamera()->setProjectionMatrixAsFrustum(-5.0, 5.0, -5.0, 5.0, 1.0, 20.0); }
//-------------------------------------------------------------- void testApp::setup(){ ofSetFrameRate(60); ofSetVerticalSync(true); ofBackground(255*.15); //set up a standard timeline with a default duration to begin with timeline.setup(); timeline.getColors().load("defaultColors.xml"); timeline.setOffset(ofVec2f(0,0)); timeline.setDurationInFrames(300); timeline.setPageName("Main"); //set up a video timeline element so we can see the video frames timeline.addTrack("Video", &videoTrack); timeline.addTrack("Depth", &depthTrack); // timeline.addCurves("xshift", "xshift.xml", ofRange(-.15, .15)); // timeline.addCurves("yshift", "yshift.xml", ofRange(-.15, .15)); // timeline.addCurves("farclip", "farclip.xml", ofRange(500, 6000)); panel.setup("options"); panel.add(showDepthProjection.setup("show depth projection", ofxParameter<bool>())); panel.add(showDepthWireframe.setup("show wireframe", ofxParameter<bool>())); panel.add(showRGBProjection.setup("show rgb projection", ofxParameter<bool>())); panel.add(rgbTextureSlider.setup("rgb texture projection", ofxParameter<float>(), 0, 1)); // panel.add(xShift.setup("x shift",ofxParameter<float>(), -.15, .15)); // panel.add(yShift.setup("y shift",ofxParameter<float>(), -.15, .15)); xShift = 0.0045; yShift = 0.03; rgbTextureSlider = 0; //set up the game camera cam.setup(); cam.dampen = true; cam.speed = 20; cam.autosavePosition = true; cam.targetNode.setPosition(ofVec3f()); cam.targetNode.setOrientation(ofQuaternion()); cam.targetXRot = -180; cam.targetYRot = 0; cam.rotationZ = 0; player.updateVideoPlayer = false; //load loadDefaultScene(); ofToggleFullscreen(); }
//-------------------------------------------------------------- void testApp::setup(){ ofSetFrameRate(60); ofSetVerticalSync(true); ofBackground(25); //set up the game camera cam.setup(); cam.speed = 20; cam.autosavePosition = true; cam.targetNode.setPosition(ofVec3f()); cam.targetNode.setOrientation(ofQuaternion()); cam.targetXRot = -180; cam.targetYRot = 0; cam.rotationZ = 0; cam.setScale(1,-1,1); xshift = 0; yshift = 0; maxFeatures = 500; featureQuality = .5; minDistance = 10; gui.setup("tests"); gui.add(loadNew.setup("load new scene")); gui.add(xshift.setup("xshift", ofxParameter<float>(), -.15, .15)); gui.add(yshift.setup("yshift", ofxParameter<float>(), -.15, .15)); gui.add(farClip.setup("far clip", ofxParameter<float>(),1000, 4500)); gui.add(lightX.setup("lightX", ofxParameter<float>(),-1000, 1000)); gui.add(lightY.setup("lightY", ofxParameter<float>(),-1000, 1000)); gui.add(lightZ.setup("lightZ", ofxParameter<float>(),400, 2000)); gui.add(maxFeatures.setup("max features", ofxParameter<int>(),100, 5000)); gui.add(featureQuality.setup("feature quality", ofxParameter<float>(),.0000001, .01)); gui.add(minDistance.setup("min distance", ofxParameter<float>(), .0, 200)); gui.add(renderMode.setup("render", ofxParameter<bool>())); gui.loadFromFile("defaultSettings.xml"); renderMode = false; calculateRects(); //attemping to load the last scene loadDefaultScene(); }
//-------------------------------------------------------------- void testApp::setup(){ ofSetFrameRate(60); ofSetVerticalSync(true); ofBackground(255); //set up a standard timeline with a default duration to begin with timeline.setup(); timeline.getColors().load("defaultColors.xml"); timeline.setOffset(ofVec2f(0,0)); timeline.setDurationInFrames(300); timeline.setPageName("Main"); //set up a video timeline element so we can see the video frames timeline.addTrack("Video", &videoTrack); timeline.addTrack("Depth", &depthTrack); // timeline.addCurves("xshift", "xshift.xml", ofRange(-.15, .15)); // timeline.addCurves("yshift", "yshift.xml", ofRange(-.15, .15)); // timeline.addCurves("farclip", "farclip.xml", ofRange(500, 6000)); //set up the game camera cam.setup(); cam.speed = 20; cam.autosavePosition = true; cam.targetNode.setPosition(ofVec3f()); cam.targetNode.setOrientation(ofQuaternion()); cam.targetXRot = -180; cam.targetYRot = 0; cam.rotationZ = 0; player.updateVideoPlayer = false; //load loadDefaultScene(); }
//-------------------------------------------------------------- void testApp::setup(){ ofSetFrameRate(30); ofSetVerticalSync(true); ofBackground(25); ofEnableSmoothing(); justLoadedNewScene = false; rendering = false; //set up the game camera cam.setup(); cam.speed = 20; // cam.autosavePosition = true; // cam.loadCameraPosition(); cam.targetNode.setPosition(ofVec3f()); cam.targetNode.setOrientation(ofQuaternion()); cam.targetXRot = -180; cam.targetYRot = 0; cam.rotationZ = 0; ofxTimeline::removeCocoaMenusFromGlut("RGBDMultiLoader"); timeline.setup(); timeline.setFrameBased(true); timeline.setDurationInSeconds(60); timeline.setFrameRate(24); timeline.setPageName("Camera"); timeline.addTrack("cam", &camTrack); timeline.addCurves("cam damp"); timeline.addFlags("scene"); timeline.addFlags("notes"); timeline.addCurves("x shift", ofRange(-.15,.15), 0); timeline.addCurves("y shift", ofRange(-.15,.15), 0); timeline.addCurves("x offset", ofRange(-1000, 1000), 0); timeline.addCurves("z offset", ofRange(0, 2000)); timeline.addSwitches("pause video"); timeline.addPage("Rendering"); timeline.addCurves("Z Threshold", ofRange(500, 2000), 1200); timeline.addCurves("Point Alpha"); timeline.addCurves("Point Size", ofRange(.5, 10)); timeline.addCurves("Wireframe Alpha"); timeline.addCurves("Wireframe Thickness",ofRange(.5, 5)); timeline.addPage("Particles"); timeline.addCurves("particle fade", ofRange(0, 1.0)); timeline.addCurves("particle size max", ofRange(.5, 10),7); timeline.addCurves("particle size min", ofRange(.5, 5), 2); timeline.addCurves("birth rate", ofRange(0, .4)); timeline.addCurves("life span", ofRange(0, 300)); timeline.addCurves("life span var", ofRange(0, 1.0)); timeline.addPage("Particle Forces"); timeline.addCurves("perlin amp", ofRange(0, 1)); timeline.addCurves("perlin speed", ofRange(0,1)); timeline.addCurves("perlin density", ofRange(0, 1000)); timeline.addCurves("gravity amp", ofRange(-.5, .5), 0.0); timeline.addCurves("spin force", ofRange(-.5, .5), 0.0); timeline.addCurves("explode force", ofRange(0, 20), 0.0); timeline.addCurves("explode var", ofRange(0, 1.)); timeline.addCurves("z wind", ofRange(0, 2.)); timeline.addPage("Wireframe Flicker"); timeline.addCurves("Wireframe Perlin Density", "wireframePerlinDensity.xml", ofRange(10, 3000.0), 0.0); timeline.addCurves("Wireframe Perlin Speed", "wireframePerlinSpeed.xml", ofRange(0, .2), 0.0); timeline.addCurves("Wireframe Lumin Min", "wireframeLuminMin.xml", ofRange(0, .5), 0.0); timeline.addCurves("Wireframe Lumin Mid", "wireframeLuminMid.xml", ofRange(0, 1.0), .5); timeline.addCurves("Wireframe Lumin Contrast", "wireframeLuminContrast.xml", ofRange(0, 10.0), 1.0); timeline.addCurves("Wireframe Lumin Exponent", "wireframeLuminExponent.xml", ofRange(1.0, 5.0), 0.0); timeline.setCurrentPage(0); timeline.setMinimalHeaders(true); camTrack.setCamera(cam); ofAddListener(timeline.events().bangFired, this, &testApp::bangFired); luminosityChannel = 0; meshBuilder.addColors = true; meshBuilder.cacheValidVertices = true; meshBuilder.getHoleFiller().enable = true; renderTarget.allocate(1920, 1080, GL_RGB, 4); simplify = 1; scenePaths["jer"] = "/Volumes/IMPOSTER/EyeoMediaBin/Jer03"; //6297 - 6751 scenePaths["bruce"] = "/Volumes/IMPOSTER/BruceSterlingAustin/TAKE_07_08_14_15_35"; scenePaths["paola"] = "/Volumes/IMPOSTER/EyeoMediaBin/Paola03"; scenePaths["sofy"] = "/Volumes/IMPOSTER/ITPClouds/TAKE_07_12_21_07_00"; //9190 gui.setup("tests"); gui.add(simplify.setup("simplify", ofxParameter<int>(), 1, 8)); gui.add(drawWireframe.setup("draw wireframe",ofxParameter<bool>())); gui.add(drawPointcloud.setup("draw pointcloud",ofxParameter<bool>())); gui.add(drawParticles.setup("draw particles",ofxParameter<bool>())); gui.add(supressPlay.setup("supress play",ofxParameter<bool>())); gui.add(numAmbientParticles.setup("num ambient", ofxParameter<int>(), 500, 200000)); gui.add(particleBoxWidth.setup("ap box width", ofxParameter<int>(), 500, 3000)); gui.add(particleBoxHeight.setup("ap box height", ofxParameter<int>(), 500, 3000)); gui.add(particleBoxDepth.setup("ap box depth", ofxParameter<int>(), 3000, 10000)); gui.add(particleMaxDistance.setup("max particle distance", ofxParameter<float>(), 0, 1000)); gui.add(particeMaxSize.setup("max particle size", ofxParameter<float>(), .5, 9)); gui.add(particleFade.setup("particle alpha", ofxParameter<float>(), 0, 1.0)); gui.loadFromFile("defaultSettings.xml"); currentFrameNumber = 0; particleRenderer.meshBuilder = &meshBuilder; particleRenderer.setup(100000); loadShader(); //attemping to load the last scene loadDefaultScene(); if(numAmbientParticles < 0 ) numAmbientParticles = 50000; generateAmbientParticles(); cout << "generated " << clusters.getVertices().size() << " cluster points " << endl; glEnable(GL_VERTEX_PROGRAM_POINT_SIZE_ARB); // allows per-point size }