Пример #1
0
void SludgeFloorMaker::drawRect()
{
    glClearColor(0, 0, 0, 0);
    glClear(GL_COLOR_BUFFER_BIT);
	
	glColor3f(1.0f, 1.00f, 1.00f);
	pasteSprite(&backdrop.sprites[0], &backdrop.myPalette, FALSE);

	glDisable(GL_TEXTURE_2D);
    glColor3f(1.0f, 0.35f, 0.35f);
    glBegin(GL_LINES);
    {
        glVertex3f(  0.0,  0.0, 0.0);
        glVertex3f(  1000.0,  0.0, 0.0);
        glVertex3f(  0.0, 0.0, 0.0);
        glVertex3f(  0.0, 1000.0, 0.0);
    }
    glEnd();

	if (lit) {
		glColor3f(1.0f, 0.00f, 1.00f);
		glBegin(GL_QUADS);
		{
			glVertex3i(  litX-8,  litY-8, 0);
			glVertex3i(  litX+8,  litY-8, 0);
			glVertex3i(  litX+8,  litY+8, 0);
			glVertex3i(  litX-8,  litY+8, 0);
		}
		glEnd();
	}
	
	drawFloor(getFloor(), r, g, b);
	
	if (selection == 1) {
		glColor3f(1.0f, 0.00f, 1.00f);
		glBegin(GL_LINES);
		{
			glVertex3i(selx1, sely1, 0);
			glVertex3i(selx2, sely2, 0);
		}
		glEnd();
	}
}
void SludgeZBufferMaker::drawRect()
{
    glClearColor(0, 0, 0, 0);
    glClear(GL_COLOR_BUFFER_BIT);
	
	int i;
	int b = buffer();
	
	
	if (backdrop.total>1)
		for (i=1; i< backdrop.total; i++) {
			if (i == b) {
				glColor4f(1.0f, 1.0f, 1.0f, 1.0f);
			} else 
				glColor4f(0.2f, 0.0f, 0.5f, 1.0f);
			
			pasteSprite(&backdrop.sprites[i], &backdrop.myPalette, false);
		}
	
	glDisable(GL_TEXTURE_2D);
	
		
    glColor3f(1.0f, 0.35f, 0.35f);
    glBegin(GL_LINE_LOOP);
    {
        glVertex3f(  0.0,  0.0, 0.0);
        glVertex3f(  backdrop.sprites[0].width,  0.0, 0.0);
        glVertex3f(  backdrop.sprites[0].width, -backdrop.sprites[0].height, 0.0);
        glVertex3f(  0.0, -backdrop.sprites[0].height, 0.0);
    }
    glEnd();

	if (b>0) {
		glColor4f(0.0f, 1.0f, 0.0f, 0.7f);
		glBegin(GL_LINES);
		{
			glVertex3f(  0.0,  backdrop.sprites[b].special, 0.0);
			glVertex3f(  backdrop.sprites[0].width,  backdrop.sprites[b].special, 0.0);
		}
		glEnd();
	}
}