Лекция 5 ( )
GLfloat fogColor[4]= {0.5f, 0.5f, 0.5f, 1.0f}; // Цвет тумана glClearColor(0.5f,0.5f,0.5f,1.0f); // Будем очищать экран, заполняя его цветом тумана. glEnable(GL_FOG); // Включает туман glDisable(GL_FOG); // Выключает туман
glFogi(GL_FOG_MODE, GLint param); // Выбираем тип тумана GL_EXP - Обычный туман, заполняющий весь экран. Во многом он напоминает туман отдаленно, но легко справляется со своей работой даже на старых PC. GL_EXP2 - Это следующий шаг после GL_EXP. Затуманит весь экран, за то придает больше глубины всей сцене. GL_LINEAR - Это лучший режим прорисовки тумана. Объекты выходят из тумана и исчезают в нем гораздо лучше.
glFogfv(GL_FOG_COLOR, fogColor); // Устанавливаем цвет тумана glFogf(GL_FOG_DENSITY, 0.35f); // Насколько густым будет туман
glHint(GL_FOG_HINT, GLenum hintval); hintval может быть : GL_DONT_CARE, GL_NICEST или GL_FASTEST GL_DONT_CARE - позволяет OpenGL выбрать формулу для расчета тумана ( по вершинам или по пикселям ). GL_NICEST - Создает туман по пикселям ( хорошо смотрится ). GL_FASTEST - Вычисляет туман по вершинам ( быстрее, но не так красиво )).
glFogf(GL_FOG_START, 1.0f); // Глубина, с которой начинается туман glFogf(GL_FOG_END, 5.0f); // Глубина, где туман заканчивается
GLuint fogMode[]= { GL_EXP, GL_EXP2, GL_LINEAR }; GLuint fogfilter= 0; GLfloat fogColor[4]= {0.5f, 0.5f, 0.5f, 1.0f}; glClearColor(0.5f,0.5f,0.5f,1.0f); glEnable(GL_FOG); glFogi(GL_FOG_MODE, fogMode[fogfilter]); glFogfv(GL_FOG_COLOR, fogColor); glFogf(GL_FOG_DENSITY, 0.35f); glHint(GL_FOG_HINT, GL_DONT_CARE); glFogf(GL_FOG_START, 1.0f); glFogf(GL_FOG_END, 5.0f); // Рисование объектов
BOOL PlaySound( LPCTSTR pszSound, HMODULE hmod, DWORD fdwSound ); pszSound NULL => прекратить воспроизведение всех мелодий Либо имя файла / ресурса / системного события / адрес памяти fdwSound SND_ALIAS => мелодия системного события SND_FILENAME => мелодия из файла SND_RESOURCE => мелодия из ресурса exe SND_MEMORY => взять мелодию из памяти
fdwSound SND_ASYNC => асинхронное воспроизведение (не ждать окончания воспроизведения) SND_SYNC => синхронное воспроизведение (подождать окончания воспроизведения) SND_LOOP => воспроизведение в цикле SND_PURGE => остановить мелодию не из wav- файла hmod Handle файла, из которого брать мелодию (если воспроизводим из ресурсов) иначе NULL