Exemplo n.º 1
0
//--------------------------------------------------------------
void testApp::draw()
{
	ofEnableBlendMode(OF_BLENDMODE_ADD);
	
	// sys.debugDraw();
	
	// bind texture, enable point sprite while drawing particles
	sprite.bind();
	ofEnablePointSprites();
	sys.draw();
	ofDisablePointSprites();
	sprite.unbind();
}
Exemplo n.º 2
0
//--------------------------------------------------------------
void ofApp::draw(){
    ofSetColor(255,255,255);

    /* //Another way of zooming
    float zoom = 0.08;
    glPushMatrix();
    glTranslatef(100,50,0);
    glScalef(zoom,zoom,0);
    image.draw(w/8, h/8);
    glPopMatrix();*/

    image.draw(imgPos.x, imgPos.y, image.width, image.height);
    ofVec2f mousePos(ofGetMouseX(), ofGetMouseY());

    ofSetColor(57, 74, 84);
    ofNoFill();
    ofSetLineWidth(10);
    ofSetCircleResolution(500);
    ofCircle(mousePos.x, mousePos.y, radius);

    ofPath magnifierPath;
    ofMesh magnifierMesh;
    magnifierPath.setCircleResolution(100);
    magnifierPath.setFilled(true);
    magnifierPath.circle(mousePos.x, mousePos.y, radius);
    magnifierPath.close();
    magnifierMesh=magnifierPath.getTessellation();

    for (int i=0; i<magnifierMesh.getNumVertices(); i++) {
        ofVec2f vertPos = magnifierMesh.getVertex(i);
        ofVec2f zoomedPos = ((vertPos - mousePos) / zoomFactor) + mousePos;
        ofVec2f uvPos = zoomedPos - imgPos;
        magnifierMesh.addTexCoord(uvPos);
    }


    ofSetColor(255, 255, 255);
    image.bind();
    magnifierMesh.draw();
    image.unbind();

}
Exemplo n.º 3
0
void GeoParticle::draw(ofImage mGrad, ofImage explosionSprite)
{
	if(m_isExploding == true){
		
		for(int j = 0 ; j < 50; j ++){
			
			ofPushMatrix();

				if(m_gradNum == 0 ){ofSetColor(251,236,119,alphaExplode);}
				if(m_gradNum == 1 ){ofSetColor(238,158,100,alphaExplode);}
				if(m_gradNum == 2 ){ofSetColor(211,75,63,alphaExplode);}
				if(m_gradNum == 3 ){ofSetColor(87,193,235,alphaExplode);}
				if(m_gradNum == 4 ){ofSetColor(72,165,76,alphaExplode);}
				if(m_gradNum == 5 ){ofSetColor(169,233,180,alphaExplode);}

				explosionSprite.draw(pos.x+ofRandom(-alphaExplode,alphaExplode),pos.y+ofRandom(-alphaExplode,alphaExplode), 30,30);
			ofPopMatrix();
			
		}
	}
	ofSetColor(255);
	mGrad.bind();

	ofPushMatrix();
		ofTranslate(pos.x, pos.y);
		ofScale(GeoSize, GeoSize);
		//set alpha for explosion
		ofSetColor(255, (int)255 - 255 * (m_explodeTime / s_explosionTimeout));
		m_vbo.bind();
		glDrawArrays(GL_TRIANGLES, 0, m_numTriangles*3);
		m_vbo.unbind();
	ofPopMatrix();

	mGrad.unbind();

	
}