Веб программирование

Сфера в OpenGL

 
 

Приветствую! Сегодня мы с вами нарисуем сферу с помощью OpenGL! Я надеюсь, что этот урок вам понравится и вы полюбите язык C++ также как полюбил его я.

C++ кстати говоря мне понравился именно из-за простого и понятного программирования под OpenGL, хотя программистом графиков я не стал, а стал системщиком.

ВНИМАНИЕ! ДЛЯ НАПИСАНИЯ ПРОГРАММЫ ТРЕБУЕТСЯ Microsoft Visual C++ 6.0!

СКАЧАТЬ ВЫ МОЖЕТЕ ЕГО НА САЙТЕ VBBOOK.RU!

Теперь начнем приготовление. Создайте новый проект:

File -> New -> Win32 Console Application -> Empty Project

Далее назовите его Sphere.

Затем установите:

Build -> Set Active Configuration -> Win32 Release

И добавьте в:

Project -> Settings -> Link -> Object/library modules

Библиотеки opengl32.lib, glaux.lib, glu32.lib

Все, подготовку закончили.

Вот вам код:

void CALLBACK resize(int width,int height)
{
   glViewport(0,0,width,height);
   glMatrixMode( GL_PROJECTION );
   glLoadIdentity();
   glOrtho(-5,5, -5,5, 2,12);   
   gluLookAt( 0,0,5, 0,0,0, 0,1,0 );
   glMatrixMode( GL_MODELVIEW );
}    



void CALLBACK display(void)
{
 glClear( GL_COLOR_BUFFER_BIT | GL_DEPTH_BUFFER_BIT );

        glTranslated(0.01,0,0);
	    glColor3d(1,0,0);
        auxSolidSphere( 1 );

  
  auxSwapBuffers();

}



void main()
{
float pos[4] = {3,3,3,1};
float dir[3] = {-1,-1,-1};

    GLfloat mat_specular[] = {1,1,1,1};

    auxInitPosition( 50, 10, 400, 400);
    auxInitDisplayMode( AUX_RGB | AUX_DEPTH | AUX_DOUBLE );
    auxInitWindow( "Our First OpenGL Application!" );
    auxIdleFunc(display);
    auxReshapeFunc(resize);

  
    glEnable(GL_DEPTH_TEST);

    glEnable(GL_COLOR_MATERIAL);

    glEnable(GL_LIGHTING);
    glEnable(GL_LIGHT0);

    glLightfv(GL_LIGHT0, GL_POSITION, pos);
    glLightfv(GL_LIGHT0, GL_SPOT_DIRECTION, dir);

    glMaterialfv(GL_FRONT, GL_SPECULAR, mat_specular);
    glMaterialf(GL_FRONT, GL_SHININESS, 128.0);

    auxMainLoop(display);
}

Не забудьте подключить библиотеки: 

windows.inc

GL/gl.h

GL/glu.h

GL/glaux.h

Вот и все. А совсем ленивые могут скачать исходники в исходниках :).


Есть вопросы? Спроси на нашем форуме!!
Гость [10.07.2012 12:50]

Спасибо!!!!!!!!!!

SaNeer [11.07.2012 13:02]

Что-то совсем лихо )

AntiCat [06.01.2013 23:33]

и куда вставлять? Форма пуста..
Отписал бы поподробнее.. и если могбы допиши небольшое пояснение что куда и по какой причине..

abdulloh114 [17.03.2013 12:22]

а как скачать эту программу я впервые здесь



Оставлять комментарии можно только зарегистрированным




Предупреждение: Вся информация представлена исключительно в образовательных целях.
Ни авторы, ни администрация не несут ответственности в случае ее использования в противозаконных целях.