Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > разработка игр, графический дизайн и моделирование > Gamedev - cоздание игр: Unity, OpenGL, DirectX
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 05.04.2017, 22:35   #1
zh010101
Новичок
Джуниор
 
Регистрация: 05.04.2017
Сообщений: 1
По умолчанию Трафарет OpenGL(((

Привет, всем.
Я хочу чтобы синий квадрат был виден. Для этого создаю трафарет. Потом рисую белый квадрат. Но рисуется только белый.
Код:
//---------------------------------------------------------------------------------------------------------------------------------------------
void draw()
{
	glClear(GL_COLOR_BUFFER_BIT | GL_STENCIL_BUFFER_BIT | GL_DEPTH_BUFFER_BIT);			

	glEnable(GL_STENCIL_TEST);

	glStencilFunc(GL_NEVER,2,0);
	glStencilOp(GL_REPLACE,GL_KEEP,GL_KEEP);
	glBegin(GL_POLYGON);
		glVertex3f(15,15,-1);
		glVertex3f(-15,15,-1);
		glVertex3f(-15,-15,-1);
		glVertex3f(15,-15,-1);
	glEnd();
	glClear(GL_COLOR_BUFFER_BIT | GL_DEPTH_BUFFER_BIT);
	glDisable(GL_STENCIL_TEST);

	glColor3f(0,0,1);
	glBegin(GL_QUADS);
		glVertex3f(10,10,-2);
		glVertex3f(-10,10,-2);
		glVertex3f(-10,-10,-2);
		glVertex3f(10,-10,-2);
	glEnd();

	glEnable(GL_STENCIL_TEST);
	glStencilFunc(GL_NOTEQUAL,2,255);
	glColor3f(1,1,1);
	glBegin(GL_POLYGON);
		glVertex3f(20,20,-1);
		glVertex3f(-20,20,-1);
		glVertex3f(-20,-20,-1);
		glVertex3f(20,-20,-1);
	glEnd();
	glDisable(GL_STENCIL_TEST);

	glutSwapBuffers();
}
//---------------------------------------------------------------------------------------------------------------------------------------------
void change_size(int width, int height)
{
	glViewport(0,0,width,height);
	glMatrixMode(GL_PROJECTION);
	glLoadIdentity();
	glOrtho(-width/2,width/2,-height/2,height/2,-10,10);
	glMatrixMode(GL_MODELVIEW);
}
Подскажите что не так
zh010101 вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Тень Трафарет OpenGL delphi bosyak Помощь студентам 1 17.01.2016 20:33
Qt+OpenGL. Qt "не видит" функции OpenGL EnterFix Qt и кроссплатформенное программирование С/С++ 4 29.01.2013 18:59
C++ OpenGL Kukurudza Общие вопросы C/C++ 4 08.02.2012 18:48
OpenGL Paul_AG Общие вопросы C/C++ 3 02.02.2010 20:28
OpenGl Freer Помощь студентам 1 25.05.2009 17:57