本文整理汇总了C++中texture::load方法的典型用法代码示例。如果您正苦于以下问题:C++ texture::load方法的具体用法?C++ texture::load怎么用?C++ texture::load使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类texture
的用法示例。
在下文中一共展示了texture::load方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。
示例1: main
void main (int argc,char **argv)
{
setlocale(LC_CTYPE, ""); //making autoconverting for non cp866 symbols
// инициализация библиотеки GLUT
glutInit(&argc,argv);
// инициализация дисплея (формат вывода)
glutInitDisplayMode (GLUT_RGBA | GLUT_DOUBLE | GLUT_DEPTH);
// создание окна:
// 1. устанавливаем верхний левый угол окна
glutInitWindowPosition(200,200);
// 2. устанавливаем размер окна
glutInitWindowSize(600,600);
// 3. создаем окно
glutCreateWindow("Anytime, anywhere…");
// устанавливаем обработчик выхода (для освобождения выделенной памяти)
atexit(onExit);
// переходим в полноэкранный режим
//glutFullScreen();
cfg=new Config();
try
{
cfg->readFile(cfgPath.c_str());
} catch (...)
{
printf("Config doesn't parsed\n");
}
// очистка объектов
objects.clear();
cam=new camera();
// загрузка камеры
cam->loadCamera(cfg);
hasVBO=glutExtensionSupported("GL_ARB_vertex_buffer_object")!=0; // check if VBO supported
hasFragmentShader=glutExtensionSupported("GL_ARB_fragment_shader")!=0; // check if fragment shader is supported
hasVertexShader=glutExtensionSupported("GL_ARB_vertex_shader")!=0; // check if fragment shader is supported
newOGL=atof((const char *)glGetString(GL_VERSION))>=1.5f; // check OGL version
// проверяем наличие необходимых расширений
object3DS::checkExtensions();
shader::checkExtensions();
if (!hasVBO) { printf("VBO does not supported\n"); } // no VBO
if (!hasFragmentShader) { printf("Fragment shaders not supported\n"); } // no fragment shader
if (!hasVertexShader) { printf("Vertex shaders not supported\n"); } // no vertex shader
if (!newOGL) { printf("OLG 2.0 functions not supported\n"); } // old OGL
ilInit();
devilError = ilGetError();
if (devilError != IL_NO_ERROR)
{
wprintf(L"Devil Error (ilInit): %s\n", iluErrorString(devilError));
exit(2);
}
iluInit();
ilutInit();
ilutRenderer(ILUT_OPENGL);
// загрузка объектов по файлу конфигурации
loadObjects(objects);
for (unsigned int i=0; i<objects.size(); i++)
{
objects[i]->buffer(); // buffer objects to VBO
}
modelShader.loadVertexShader("Phong.vsh");
modelShader.loadFragmentShader("Phong.fsh");
modelShader.createProgram();
planeShader.loadVertexShader("Phong.vsh");
planeShader.loadFragmentShader("Phong.l3.fsh");
planeShader.createProgram();
// 4. устанавливаем функцию, которая будет вызываться для перерисовки окна
glutDisplayFunc(display);
// 5. устанавливаем функцию, которая будет вызываться при изменении размеров окна
glutReshapeFunc(reshape);
// 6. устанавливаем таймер для перерисовки окна по времени
glutTimerFunc(delayPerFrames,simulation,0);
// 7. устанавливаем обработчик обычных клавиш
glutKeyboardFunc(processNormalKeys);
// 8. устанавливаем обработчик функциональных клавиш
glutSpecialFunc(processSpecialKeys);
glEnable(GL_CULL_FACE);
glEnable(GL_LIGHTING);
glEnable(GL_LIGHT0);
glEnable(GL_LIGHT1);
glEnable(GL_TEXTURE_2D);
glActiveTexture(GL_TEXTURE0);
surfaceTex.load(L"textures\\ceram.jpg");
// вывод строк описывающих OpenGL
// вывод производителя
printf("%s\n",glGetString(GL_VENDOR));
printf("%s\n",glGetString(GL_RENDERER));
//.........这里部分代码省略.........