我的OpenGL的项目配置的过程
我的OpenGL的项目配置的过程
- 摘要
- 1 openGL项目文件概览
- 2 启动项目后环境的配置
- (1)打开项目的属性
- (2) VC++目录下的配置
- 3 场景导入
- 4 读源码Source.cpp文件
摘要
我的用的环境是vs2017,win10系统,本文主要是介绍如何将自己的项目在别的机器上跑起来!
1 openGL项目文件概览
我的项目文件主要是下图缩食的这些文件,具体作用看我的注释,没有注释的就不用关注了;
2 启动项目后环境的配置
注意:在配置的时候一定要清楚自己使用的是vs2017的哪个解决方案配置和解决方案平台
解决方案配置:release/Debug
解决方案平台:x64/x86
我用的是release下的x64,如图所示,所以要改成这如下所示进行配置,要不然会有很多bug
(1)打开项目的属性
如图所示:
(2) VC++目录下的配置
- 包含目录,
配置包含目录过程的主要的目的是包含OpenGL使用的头文件,头文件里面只有这些函数的函数定义,没有函数实现,所以必须配置第二步骤的库目录;lib文件中有相应的函数的实现;
- 库目录
库目录 的配置主要是里面有OpenGL库函数的实现,
- 配置连接器中的输入
将下面的这段复制到附加依赖项中,不需要opencv_world343.lib
freetype.lib
assimp.lib
SOIL.lib
glfw3.lib
opengl32.lib
freeglut.lib
glew32.lib
opencv_world343.lib
至此环境配置完毕,
3 场景导入
场景导入主要是依赖于model类,这里主要是对"modelPath.txt"文件进行根据自己的路径进行配置,
modelPath.txt文件如下:
我的是E:\code\code\twobend_0428\sponzaScene
所以第一行要改成下面这样的,但是这里要注意,要将"“改成”/",这里是getline函数的要求,要不然会读取失败;
如下:E:/code/code/twobend_0428/sponzaScene
至此场景导入成功,前期的准备工作都已经完成了,
4 读源码Source.cpp文件
source.cpp文件主要使用了OpenGL中的延迟渲染的知识
可以先学习下面这个网址延迟渲染的知识,
https://learnopengl-cn.github.io/05%20Advanced%20Lighting/08%20Deferred%20Shading/
也可以看我的另外一篇文章对延迟渲染的总结:
https://blog.csdn.net/qq_41286360/article/details/102794290
读完这两个文章后再深入读代码,.cpp文件中主要是整个代码的过程,主要研究的是顶点着色器.vert和片元着色器.frag文件中的代码,其中最重要的是.frag文件中的代码,这个是最主要的,根据编写这个片元着色器.frag从而能够实现自己的需求;
读代码的时候要耐心,一行行的读,不要跳跃式的读,把每行代码读懂,自己才可以对代码就行修改,不懂了要自己研究,问别人是怎么回事;
我的OpenGL的项目配置的过程相关推荐
- STM32F0xx_EXIT中断配置详细过程
Ⅰ.概述 EXIT外部中断在使用到按键或者开关控制等应用中比较常见,低功耗中断唤醒也是很常见的一种.因此,EXIT在实际项目开发中也是比较常见的一种. STM32F0中外部中断EXIT属于中断和事件的 ...
- OpenGL 开发环境配置(Windows) - Visual Studio 2017 + GLFW + GLAD 详细图文教程
OpenGL 开发环境配置(Windows) - Visual Studio 2017 + GLFW + GLAD 详细图文教程 大部分 OpenGL 是直接面向设备商的,如果开发者需要使用 Open ...
- laravel + Vue 前后端分离 之 项目配置- 生产环境部署
几日之后,开始部署 生产环境, 有兴趣的同学可以先看一下laravel + Vue 前后端分离 项目配置 开发环境,好了,废话少说,开始总结 部署过程中的问题:https://blog.csdn.ne ...
- SourceInsight 4.0 之四 项目配置(库文件引入、配置宏添加、快捷键修改等)
问题 在创建完成 Source Insight 工程后,我们就可以使用绝大部分功能.但是如果用的多了就会发现,其与我们真正的 IDE(通常我们仅用 Source Insight 编辑代码,实际的编 ...
- jenkins的安装配置,插件配置,安装插件,配置maven,jdk路径,配置安装插件,项目配置,自动构建配置
1.下载jenkins,下载地址: https://jenkins.io/ 2.运行命令,启动jenkins 将jenkins上传到:/home/tuzq/software 安装JDK,maven ( ...
- maven配置junit5_JUnit 5和Selenium –改善项目配置
maven配置junit5 Selenium是一组支持浏览器自动化的工具和库,主要用于Web应用程序测试. Selenium的组件之一是Selenium WebDriver,它提供客户端库,JSON有 ...
- JUnit 5和Selenium –改善项目配置
Selenium是一组支持浏览器自动化的工具和库,主要用于Web应用程序测试. Selenium的组件之一是Selenium WebDriver,它提供客户端库,JSON有线协议(与浏览器驱动程序进行 ...
- VS2010项目配置详解
首先看一下项目设置中可以使用的宏(环境变量),常用的有: ConfigurationName 配置名字,通常是Debug或者Release IntDir 编译器使用的中间目录,产出obj文件 OutD ...
- javaweb项目得执行过程及servlet得请求(Httprequest)和响应(Httpresponse)
javaweb项目的执行过程及servlet核心要点 1.javaWeb应用的结构 1.Java Resources :java代码 2.WebContent:资源文件 如:html css ...
最新文章
- 【追寻javascript高手之路04】理解prototype
- scrum 敏捷开发
- Ubuntu16.04安装ROS后运行gazebo报错 it says it‘s incompatible with that RT“‘ failed.
- Bugku—web(一)
- CodeForces - 1312E Array Shrinking(区间dp)
- Leetcode刷题 34.在排序数组中查找元素的第一个和最后一个位置
- 失物招领php_新奥尔良圣徒队是否增加了失物招领?
- 第一节 接口概述 [转贴]
- 比特币未来几个月怎么样_您需要了解的关于比特币技术的未来
- python实现面部特效_Python实现在线批量美颜功能过程解析
- 保存网页为图片——滚动截取IE(WebBrowse)
- 影响力最大化 RIS 反向影响力采样算法
- GEE实战 | 计算NDVI NDWI
- java pdf转图片base64,itextpdf 实现html转pdf中中文及图片base64的解决方法
- MPB:使用QIIME 2分析微生物组16S rRNA基因扩增子测序数据(视频)
- Frida Hook Android App 进阶用法之 Java 运行时
- Windows10数据线连接坚果手机SmartisanTNT
- spry菜单栏(一)
- react通过hook实现父组件调用孙子组件方法(非redux)
- 浅析RGB 及RGB转换为ARGB