//-------------------------------------------------------------- void testApp::draw() { shader.begin(); shader.setUniform1f("elapsedTime", ofGetElapsedTimef()); shader.setUniform2f("mouse", mouseX, mouseY); shader.setUniform2f("resolution", ofGetWindowWidth(), ofGetWindowHeight()); shader.end(); glEnable(GL_DEPTH_TEST); glEnable(GL_CULL_FACE); glCullFace(GL_BACK); ofEnableAlphaBlending(); cam.begin(); shader.begin(); for (int i = 0; i < abc.size(); i++) { ofMesh mesh; if (abc.get(i, mesh)) { ofSetColor(255); mesh.draw(); // mesh.drawWireframe(); } } shader.end(); cam.end(); glDisable(GL_DEPTH_TEST); }
//-------------------------------------------------------------- void testApp::draw() { cam.begin(); glPointSize(4); // get meshes and draw { ofMesh mesh; abc.get("/Cloner/ClonerShape", mesh); ofSetColor(255, 0, 0); mesh.draw(); } { std::vector<glm::vec3> points; abc.get("/Emitter/EmitterCloud", points); ofSetColor(0, 255, 0); glBegin(GL_POINTS); for (int i = 0; i < points.size(); i++) glVertex3fv(&points[i].x); glEnd(); } { vector<ofPolyline> curves; abc.get("/Tracer/TracerSpline", curves); ofSetColor(0, 0, 255); for (int i = 0; i < curves.size(); i++) curves[i].draw(); } // or simply, abc.draw(); cam.end(); ofSetColor(255); ofDrawBitmapString(ofToString(abc.getTime()) + "/" + ofToString(abc.getMaxTime()), 10, 20); }
//-------------------------------------------------------------- void testApp::draw() { cam.begin(); glPointSize(4); { ofMesh mesh; abc.get("/polymesh")->get(mesh); ofSetColor(255, 0, 0); mesh.draw(); } { vector<ofVec3f> points; abc.get("/points")->get(points); ofSetColor(0, 255, 0); glBegin(GL_POINTS); for (int i = 0; i < points.size(); i++) glVertex3fv(points[i].getPtr()); glEnd(); } { vector<ofPolyline> curves; abc.get("/curves")->get(curves); ofSetColor(0, 0, 255); for (int i = 0; i < curves.size(); i++) curves[i].draw(); } // or simply, abc.draw(); cam.end(); ofSetColor(255); ofDrawBitmapString(ofToString(abc.getTime()) + "/" + ofToString(abc.getMaxTime()), 10, 20); }
//-------------------------------------------------------------- void testApp::draw() { ofEnableLighting(); // the position of the light must be updated every frame, // call enable() so that it can update itself // pointLight.enable(); material.begin(); cam.begin(); // get meshes and draw { ofMesh mesh; abc.get("/Aa-CHAN", mesh); ofSetColor(0, 0, 255); mesh.draw(); } { ofMesh mesh; abc.get("/KASHIYUKA", mesh); ofSetColor(255, 0, 0); mesh.draw(); } { ofMesh mesh; abc.get("/NOCCHi", mesh); ofSetColor(255, 255, 255); mesh.draw(); } // or simply, abc.draw(); cam.end(); material.end(); // turn off lighting // ofDisableLighting(); ofSetColor(255); ofDrawBitmapString(ofToString(abc.getTime()) + "/" + ofToString(abc.getMaxTime()), 10, 20); }
void update() { float abc_range = (abc.getMaxTime() - abc.getMinTime()); float t = fmodf(ofGetElapsedTimef(), abc_range) + abc.getMinTime(); abc.setTime(t); abc.get("ClonerShape", mesh); updateMesh(mesh); light0.orbit(ofGetElapsedTimef() * 10, 0, 2000); light1.orbit(ofGetElapsedTimef() * -20, 60, 2000); }
void ofApp::draw(){ #ifndef NO_ALEMBIC float t = currentFrame / 24.0; if (t > abc.getMaxTime()){ t = abc.getMaxTime(); } abc.setTime(t); #endif targetFbo.begin(); ofViewport(ofRectangle(0,0,1920, 1080)); ofClear(0,0,0,0); glClear(GL_DEPTH); CM.cameraStart(); CM.drawCameraInternals(frame.img, frame.mask, backgroundPlate); ofPushMatrix(); ofScale(-scaleFac,scaleFac,scaleFac); ofTranslate(ofVec3f(-adjustments->x,adjustments->y,adjustments->z)); drawMesh(frame.head, ofColor::darkGoldenRod); drawMesh(frame.rightEye, ofColor::red); drawMesh(frame.leftEye, ofColor::blue); ofPushStyle(); //ofScale(10,10,10); ofNoFill(); ofNode n; FDM.getOrientation(frame, n); n.draw(); ofSetColor(255); ofMatrix4x4 mat = n.getGlobalTransformMatrix(); ofMultMatrix(mat); if(drawFaceBox){ ofBoxPrimitive(100, 100, 100).draw(); } ofPopStyle(); ofPopMatrix(); ofPolyline curve; #ifndef NO_ALEMBIC vector<ofPolyline> curvesMe; abc.get("SplineSpline", curvesMe); #endif ofSetColor(ofColor::white); //////////////// ofDisableDepthTest(); CM.cameraEnd(); ofEnableAlphaBlending(); targetFbo.end(); targetFbo.getTextureReference().drawSubsection(0, 0, 1920/2, 1080/2, 0, targetFbo.getHeight() - 1080, 1920, 1080); gui.draw(); //FDM.maskStandIn.draw(mouseX, mouseY); }
//-------------------------------------------------------------- void testApp::draw() { ofFill(); cam.begin(); /* glPointSize(4); // get meshes and draw { ofMesh mesh; abc.get("/Cloner/ClonerShape", mesh); ofSetColor(255, 0, 0); mesh.draw(); } { vector<ofVec3f> points; abc.get("/Emitter/EmitterCloud", points); ofSetColor(0, 255, 0); glBegin(GL_POINTS); for (int i = 0; i < points.size(); i++) glVertex3fv(points[i].getPtr()); glEnd(); } { vector<ofPolyline> curves; abc.get("/Tracer/TracerSpline", curves); ofSetColor(0, 0, 255); for (int i = 0; i < curves.size(); i++) curves[i].draw(); } */ // or simply, abc.draw(); //ofMesh mesh; //abc.get("/Null/Sphere/SphereShape", mesh); //cout << mesh.getNumNormals() << endl; //ofLight l; //l.setPosition(mesh.getCentroid() + ofVec3f(0,0,0)); //l.enable(); //ofSetColor(ofColor::white); //ofSetColor(255, 0, 0); /* ofEnableDepthTest(); texture.getTextureReference().bind(); // mesh.draw(); abc.draw(); texture.getTextureReference().unbind(); ofDisableDepthTest(); */ //glCullFace( GL_FRONT ); //abc.draw(); ofEnableDepthTest(); glEnable( GL_CULL_FACE ); glCullFace( GL_BACK ); //* ofSetColor( 255, 255, 255, 255.0 * 0.5 ); for( int i=0; i<meshNames.size(); i++ ){ ofxAlembic::IGeom *geo = abc.get( meshNames[i] ); if( i == numTextured ){ geo->drawTextured( &texture ); }else{ geo->draw(); } } //*/ glCullFace( GL_FRONT ); ofSetColor( 255, 255, 255, 255.0 * 0.5 ); //* for( int i=0; i<meshNames.size(); i++ ){ ofxAlembic::IGeom *geo = abc.get( meshNames[i] ); if( i == numTextured ){ geo->drawTextured( &texture ); }else{ geo->draw(); } } //*/ glDisable( GL_CULL_FACE ); cam.end(); ofSetColor(255); ofDrawBitmapString(ofToString(abc.getTime()) + "/" + ofToString(abc.getMaxTime()), 10, 20); }