zoukankan      html  css  js  c++  java
  • OpenGL Hello World

    ▶ OpenGL 的环境配置与第一个程序

    ● CUDA 中自带 OpenGL 需要的头文件和库,直接拉进项目里边去就行

    ● VS项目属性右键,属性,C/C++ 目录,包含目录,添加 CUDA 的头文件目录,我的是 "C:Program FilesNVIDIA GPU Computing ToolkitCUDAv9.1extrasCUPTIinclude" ,一般代码中使用  #inlcude <CL/cl.h>  来包含头文件。

    ● VS项目属性右键,属性,C/C++ 目录,库目录,添加 CUDA 的库目录,注意 32 位和 64 位工程是不同的,64位 "C:ProgramDataNVIDIA CorporationCUDA Samplesv9.1commonlibx64",从外边随便找来一个 glut32.lib 也放进去(64 位 glut 依赖 32 位的文件)

    ● 找来 “C:ProgramDataNVIDIA CorporationCUDA Samplesv9.1inwin64Debug” 下的 freeglut.dll,放进可执行文件目录(懒得配置了)

    ▶ 第一个程序,画一条线

    ● 代码

     1 #include <stdio.h>
     2 #include <GLglut.h>
     3 
     4 void lineSegment()                  // 线对象描述
     5 {
     6     glClear(GL_COLOR_BUFFER_BIT);   // 清理显示窗口
     7 
     8     glColor3f(1.0, 1.0, 0.0);       // 线的颜色     
     9     
    10     glBegin(GL_LINES);              // 对象描述
    11     glVertex2i(100, 30);            // 两个端点
    12     glVertex2i(50, 100);
    13     glEnd();
    14 
    15     glFlush();                      // 刷新缓冲区
    16 }
    17 
    18 int main(int argc, char ** argv)
    19 {
    20     glutInit(&argc, argv);                          // 初始化 GL
    21 
    22     glutInitDisplayMode(GLUT_SINGLE | GLUT_RGB);    // 设定窗口缓存和颜色模型
    23     glutInitWindowPosition(400, 200);               // 设定窗口位置、大小、标题、背景颜色
    24     glutInitWindowSize(400, 300);
    25     glutCreateWindow("Example");
    26     glClearColor(0.0, 0.0, 0.3, 1.0);
    27 
    28     glMatrixMode(GL_PROJECTION);                    // 使用正投影将世界坐标系微微矩阵区域的内容映射到屏幕上
    29     gluOrtho2D(0.0, 200.0, 0.0, 150.0);             // 坐标范围
    30     glutDisplayFunc(lineSegment);                   // 将图形输送到显示窗口
    31     glutMainLoop();                                 // 现实所有对象并等待
    32 
    33     return 0;
    34 }

    ● 输出结果

  • 相关阅读:
    通过SSH隧道的本地转发实现Django连接远程数据库
    Mysql多数据库备份
    apollo 项目配置中心开源框架部署
    nginx 配置多个 https 域名访问
    beetl 模板语法
    异常:由 spring-session pom 引发
    异常:NoSuchFieldError: BEST_MATCHING_HANDLER_ATTRIBUTE
    【Redis__验证】手机验证和限制登录功能
    【Linux__环境】配置
    【Layui__上传】多图上传
  • 原文地址:https://www.cnblogs.com/cuancuancuanhao/p/9879060.html
Copyright © 2011-2022 走看看