void MilluminApp::draw() { gl::enableAlphaBlending(); gl::clear( Color( 0.1f, 0.1f, 0.1f ) ); //draw our spiral gl::pushModelView(); gl::translate(Vec2f(getWindowWidth()/2, getWindowHeight()/2)); gl::rotate(mRot); gl::scale(Vec3f(4.f, 4.f, 1.f)); gl::color(ColorA(1.f, 0.f, 0.f, 1.f)); archimedes.draw(); gl::popModelView(); //draw our publishable texture if(mTex){ gl::color(ColorA(1.f, 1.f, 1.f, 1.f)); gl::draw(mTex); } mScreenSyphon.publishScreen(); //publish the screen mTextureSyphon.publishTexture(&mTex); //publish our texture //anything that we draw after here will not be published mClientSyphon.draw(Vec2f(300.0f, 0.0f)); //draw our client image }
void SyphonServerDirectoryApp::draw() { gl::clear( Color( 0, 0, 0 ) ); gl::color( ColorA::white() ); gl::enableAlphaBlending(); if(dir.isValidIndex(dirIdx)) client.draw(Vec2f::zero()); gl::drawStringCentered(serverName + ":" + appName, Vec2f(getWindowCenter().x, 20.f)); gl::drawStringCentered("press any key to move through available Syphon servers", Vec2f(getWindowCenter().x, 580.f)); }
void SyphonBasicApp::draw() { gl::enableAlphaBlending(); gl::clear(Color::white()); gl::color(ColorA(1.f, 1.f, 1.f, 1.f)); mShader->bind(); mShader->uniform( "tex0", 0 ); mShader->uniform( "sampleOffset", Vec2f( cos( mAngle ), sin( mAngle ) ) * ( 3.0f / getWindowWidth() ) ); gl::draw(mLogo, Vec2f::zero()); mShader->unbind(); mClientSyphon.draw(Vec2f(16.f, 64.f)); //draw our client image mScreenSyphon.publishScreen(); //publish the screen's output mTextureSyphon.publishTexture(mLogo); //publish our texture without shader //anything that we draw after here will not be published gl::drawStringCentered("This text will not be published to Syphon.", Vec2f(getWindowCenter().x, 20.f), ColorA::black()); }