Поделиться через


Образец CUBE: демонстрация приложения OpenGL

Обновлен: Ноябрь 2007

Образец CUBE представляет простое приложение OpenGL. Он показывает, как интегрировать OpenGL with с интерфейсом SDI в MFC и использовать контексты ресурсов OpenGL в сочетании с контекстами устройств.

Более подробное описание OpenGL см. в документации по SDK для Windows.

7zx6z2e4.alert_security(ru-ru,VS.90).gifПримечание о безопасности.

Этот образец кода служит для демонстрации основных принципов и не предназначен для использования в приложениях или на веб-узлах, поскольку не может считаться примером наиболее безопасного кода. Корпорация Майкрософт не несет ответственности за случайные или косвенные убытки в случае использования образца кода не по назначению.

Чтобы получить образцы и инструкции по их установке, выполните следующие действия.

  • В меню Справка среды Visual Studio выберите пункт Примеры.

    Дополнительные сведения см. в разделе Поиск файлов примеров.

  • Самая последняя версия и полный список образцов доступны в Интернете на странице образцов Visual Studio 2008.

  • Кроме того, образцы находятся на жестком диске компьютера. По умолчанию образцы кода и файл Readme копируются в папку, находящуюся в папке \Program Files\Visual Studio 9.0\Samples\. Все образцы кода для экспресс-выпусков Visual Studio находятся в Интернете.

Построение и запуск образца

Построение и запуск образца CUBE

  1. Откройте решение cube.sln.

  2. В меню Построение выберите команду Построить.

  3. В меню Отладка выберите пункт Запуск без отладки.

Во время запуска образца рисуется трехмерный цветной куб. Чтобы запустить анимацию куба, выберите команду Play из меню Edit или нажмите кнопку Play в панели инструментов.

Ключевые слова

В этом образце показаны следующие ключевые слова:

CCmdUI::SetCheck; CDC::GetSafeHdc; CDC::RealizePalette; CDC::SelectPalette; CDialog::DoModal; CDocument::OnNewDocument; CFrameWnd::Create; CFrameWnd::DockControlBar; CFrameWnd::EnableDocking; CFrameWnd::GetActiveView; CObject::AssertValid; CObject::Dump; CObject::Serialize; CPalette::CreatePalette; CView::GetDocument; CView::OnDraw; CWinApp::AddDocTemplate; CWinApp::InitInstance; CWinApp::LoadStdProfileSettings; CWinApp::OnFileNew; CWnd::DoDataExchange; CWnd::GetClientRect; CWnd::InvalidateRect; CWnd::KillTimer; CWnd::MessageBox; CWnd::OnCreate; CWnd::OnDestroy; CWnd::OnEraseBkgnd; CWnd::OnPaletteChanged; CWnd::OnQueryNewPalette; CWnd::OnSize; CWnd::OnTimer; CWnd::PreCreateWindow; CWnd::RedrawWindow; CWnd::SetTimer; ChoosePixelFormat; DescribePixelFormat; GetPixelFormat; LoadBitmap; PIXELFORMATDESCRIPTOR; PeekMessage; SetPixelFormat; SwapBuffers; glBegin; glClear; glClearColor; glClearDepth; glEnd; glFinish; glLoadIdentity; glMatrixMode; glPopMatrix; glPushMatrix; glRotatef; glTranslatef; glViewport; gluPerspective; wglCreateContext; wglDeleteContext; wglGetCurrentContext; wglGetCurrentDC; wglMakeCurrent

7zx6z2e4.alert_note(ru-ru,VS.90).gifПримечание.

Некоторые образцы, включая данный, не модифицировались с учетом изменений в мастерах, библиотеках и компиляторе Visual C++, однако по-прежнему демонстрируют выполнение требуемой задачи.

См. также

Другие ресурсы

Примеры MFC