使用OpenGL,没有加载一些glut等包,居然真的画出来了。

首先创建工程,其步骤如下:

  1)创建一个Win32 Console Application。

  2)创建一个空的。转载了http://blog.sina.com.cn/s/blog_9579544301016wvp.html

复制代码如下:

#pragma comment(lib, "opengl32.lib")
#pragma comment(lib, "glu32.lib")#include <windows.h>// C RunTime Header Files
#include <stdlib.h>
#include <malloc.h>
#include <memory.h>
#include <tchar.h>
#include <gl/GL.h>
#include <gl/GLU.h>HWND    hWnd;
HDC     hDC;
HGLRC   hRC;void Game_Init();
void Game_Main();
void Game_ShutDown(); // Set up pixel format for graphics initialization
void SetupPixelFormat()
{PIXELFORMATDESCRIPTOR pfd, *ppfd;int pixelformat;ppfd = &pfd;ppfd->nSize = sizeof(PIXELFORMATDESCRIPTOR);ppfd->nVersion = 1;ppfd->dwFlags = PFD_DRAW_TO_WINDOW | PFD_SUPPORT_OPENGL | PFD_DOUBLEBUFFER;ppfd->dwLayerMask = PFD_MAIN_PLANE;ppfd->iPixelType = PFD_TYPE_COLORINDEX;ppfd->cColorBits = 16;ppfd->cDepthBits = 16;ppfd->cAccumBits = 0;ppfd->cStencilBits = 0;pixelformat = ChoosePixelFormat(hDC, ppfd);SetPixelFormat(hDC, pixelformat, ppfd);
}// Initialize OpenGL graphics
void InitGraphics()
{hDC = GetDC(hWnd);SetupPixelFormat();hRC = wglCreateContext(hDC);wglMakeCurrent(hDC, hRC);glClearColor(0, 0, 0, 0.5);glClearDepth(1.0);glEnable(GL_DEPTH_TEST);
}// Resize graphics to fit window
void ResizeGraphics()
{// Get new window size
    RECT rect;int width, height;GLfloat aspect;GetClientRect(hWnd, &rect);width = rect.right;height = rect.bottom;aspect = (GLfloat)width / height;// Adjust graphics to window sizeglViewport(0, 0, width, height);glMatrixMode(GL_PROJECTION);glLoadIdentity();gluPerspective(45.0, aspect, 1.0, 100.0);glMatrixMode(GL_MODELVIEW);
}// Draw frame
void DrawGraphics()
{glClear(GL_COLOR_BUFFER_BIT | GL_DEPTH_BUFFER_BIT);// Set location in front of camera
    glLoadIdentity();glTranslated(0, 0, -10);// Draw a square
    glBegin(GL_QUADS);glColor3d(1, 0, 0);glVertex3d(-2, 2, 0);glVertex3d(2, 2, 0);glVertex3d(2, -2, 0);glVertex3d(-2, -2, 0);glEnd();// Show the new scene
    SwapBuffers(hDC);
}// Handle window events and messages
LONG WINAPI MainWndProc (HWND hWnd, UINT uMsg, WPARAM  wParam, LPARAM  lParam)
{switch (uMsg){case WM_SIZE:ResizeGraphics();break;case WM_CLOSE:DestroyWindow(hWnd);break;case WM_DESTROY:PostQuitMessage(0);break;// Default event handlerdefault:return DefWindowProc (hWnd, uMsg, wParam, lParam);break;}return 1;
}int WINAPI WinMain (HINSTANCE hInstance, HINSTANCE hPrevInstance, LPSTR lpCmdLine, int nCmdShow)
{const LPCWSTR appname = TEXT("OpenGL Sample");WNDCLASS wndclass;MSG      msg;// Define the window classwndclass.style         = 0;wndclass.lpfnWndProc   = (WNDPROC)MainWndProc;wndclass.cbClsExtra    = 0;wndclass.cbWndExtra    = 0;wndclass.hInstance     = hInstance;wndclass.hIcon         = LoadIcon(hInstance, appname);wndclass.hCursor       = LoadCursor(NULL,IDC_ARROW);wndclass.hbrBackground = (HBRUSH)(COLOR_WINDOW+1);wndclass.lpszMenuName  = appname;wndclass.lpszClassName = appname;// Register the window classif (!RegisterClass(&wndclass)) return FALSE;// Create the windowhWnd = CreateWindow(appname,appname,WS_OVERLAPPEDWINDOW | WS_CLIPSIBLINGS | WS_CLIPCHILDREN,CW_USEDEFAULT,CW_USEDEFAULT,CW_USEDEFAULT
,CW_USEDEFAULT
,NULL,NULL,hInstance,NULL);if (!hWnd) return FALSE;// Initialize OpenGL
    InitGraphics();// Display the window
    ShowWindow(hWnd, nCmdShow);UpdateWindow(hWnd);// Event loopwhile (1){if (PeekMessage(&msg, NULL, 0, 0, PM_NOREMOVE) == TRUE){if (!GetMessage(&msg, NULL, 0, 0)) return TRUE;TranslateMessage(&msg);DispatchMessage(&msg);}DrawGraphics();}wglDeleteContext(hRC);ReleaseDC(hWnd, hDC);
}  

直接运行会报错error LNK2019: unresolved external symbol _main referenced in function ___tmainCRTStartup
纠错方法:

  找到Project -> properties -> Linker -> System ->subSystem 选择Windows (/SUBSYSTEM:WINDOWS)。

  3)编译  -> 运行

  4)ok

转载于:https://www.cnblogs.com/konkon/p/3830458.html

vs2010 OpenGL 初体验相关推荐

  1. linux 拷机软件,拷机软件跑起来,OS X平台下OpenGL初体验

    拷机软件跑起来,OS X平台下OpenGL初体验 2012-11-12 18:55:03 作者:tina Tag:Mac 热度:745℃ 苹果自成一套的体系可以尽情展示自家的技术水准,但是也会给一些程 ...

  2. [OpenGL ES 01]OpenGL ES之初体验

    [OpenGL ES 01]OpenGL ES之初体验 罗朝辉 (http://blog.csdn.net/kesalin) 本文遵循"署名-非商业用途-保持一致"创作公用协议 一 ...

  3. C#代码生成工具:文本模板初体验 使用T4批量修改实体框架(Entity Framework)的类名...

    转自:http://www.cnblogs.com/huangcong/archive/2011/07/20/1931107.html 在之前的文本模板(T4)初体验中我们已经知道了T4的用处,下面就 ...

  4. AndroidStudio初体验

    style="display: none;" frameborder="0"> 收藏成功 确定 收藏失败,请重新收藏 确定 查看所有私信查看所有通知 暂没 ...

  5. vulkan初体验之三色三角形

    vulkan初体验之三色三角形 文章目录 vulkan初体验之三色三角形 vulkan与OpenGL 先来个效果图 核心类--VulkanManager类 创建Vulkan实例 销毁Vulkan实例 ...

  6. (转)iOS6和Xcode4.5初体验-图多杀猫

    iOS6和Xcode4.5初体验-图多杀猫 看了WWDC2012的发布会后,作为一个开发者,当然选择第一时间下载ios6beta和与之配套的Xcode4.5preview,当然,还有最新的iTunes ...

  7. 苹果电脑安装python3密码_mac系统安装Python3初体验

    前沿 对于iOS开发不要随便拆卸系统自带的Python,因为有很多 library 还是使用 Python2.7. 1 安装Xcode 1.1 App Store 搜索Xcode 并安装 1.2 安装 ...

  8. MapReduce编程初体验

    需求:在给定的文本文件中统计输出每一个单词出现的总次数 第一步: 准备一个aaa.txt文本文档 第二步: 在文本文档中随便写入一些测试数据,这里我写入的是 hello,world,hadoop he ...

  9. 小程序 缩放_缩放流星应用程序的初体验

    小程序 缩放 by Elie Steinbock 埃莉·斯坦博克(Elie Steinbock) 缩放流星应用程序的初体验 (First Experiences Scaling a Meteor Ap ...

最新文章

  1. 1280*720P和1920*1080P的视频在25帧30帧50帧60帧时的参数
  2. 39页作业(还款年限—月还款额表)
  3. arcgis engine 获取高亮Feature、element
  4. linux7编译mysql5.7安装,CentOS 7.4 使用源码包编译安装MySQL 5.7.20
  5. 霍夫曼编码及解码实验c语言,Huffman编码与解码_C语言实现
  6. html执行严格语法标准,JS语法(ES6)
  7. springboot+vue+easychart报表导出前后台
  8. Linux下OpenCV摄像头录像(c++)
  9. Nmap端口扫描windows版
  10. 广义线性混合模型GLMM
  11. html 打印 a4 像素,精确打印A4纸张排版HTML
  12. 4家运营商、17家通信企业这样回应5G牌照发放
  13. 探寻Linux 中国之路
  14. table总结insertRow、deleteRow 学习
  15. shell圣诞树脚本
  16. 【Day2.2】茶卡盐湖
  17. 满满干货!送给想学生物竞赛的同学们一份入门指南
  18. 第三方直播平台都有哪些
  19. 2016-2017年江苏省留学生创业优惠政策及创业补贴
  20. 浅谈zto大数据计算与业务系统的融合

热门文章

  1. 高级点的php书,深入理解php:高级技巧、面向对象与核心技术(原书第3版) 中文pdf扫描版[76MB]...
  2. spring mvc使用html页面,Spring MVC静态页面
  3. java connection 单例_Java设计模式之单例模式详解
  4. Nodejs获取MySQL数据_nodejs同步调用获取mysql数据时遇到的大坑
  5. python多用户登录_python 多用户登录
  6. java利用redis实现排行榜_Java简单使用redis-zset实现排行榜
  7. deeplung代码实现主题讲解
  8. OpenCV:无法启动此程序,因为计算机中丢失opencv_world310.dll
  9. 机器学习-Adaboost 算法(集成学习)
  10. pytorch:nn.Sequential讲解