OpenGL学习笔记(1) 画一个三角形】的更多相关文章

最近找实习有一丢丢蛋疼,沉迷鬼泣5,四周目通关,又不想写代码,写篇笔记复习一下,要好好学图形学啊 用OpenGL画一个三角形 项目的简介 记录一下跟着learnOpenGL学习的过程 笔记里的代码放在github上,依赖都用相对路径配好了,直接下载就能用,IDE是VS2017,代码 选择Triangle项目作为启动项可以测试这个代码 使用的库是glad和glfw,感觉用glad和glfw开发OpenGL的方式和DX挺像的,也有可能是我见识少, 感觉很多教材用来教学的库都是GLUT, 嘛,学图形学…
画一个正方形 其实,画正方形就是画两个三角形,用四个顶点以及使用索引来实现 完整代码在Square项目的Application.cpp里 先贴上窗口初始化代码 void BaseInit() { glfwInit();//初始化 glfwWindowHint(GLFW_CONTEXT_VERSION_MAJOR, 3);//配置GLFW glfwWindowHint(GLFW_CONTEXT_VERSION_MINOR, 3);//配置GLFW glfwWindowHint(GLFW_OPENG…
OpenGL环境搭建参考博客:VS2015下OpenGL库的配置. #include<GL\glew.h> #include<GLTools.h> #include<GLShaderManager.h> #ifdef __APPLE__ #include<GL\glut.h> #else #define FREEGLUT_STATIC #include<GL\glut.h> #endif GLShaderManager shaderManager…
目录 1. 绪论 2. 概述 3. 详论 3.1. 准备 3.2. 实现 3.3. 解析 3.3.1. 场景树对象 3.3.2. 绘制方法 4. 结果 1. 绪论 最近想学习一下Unity3d,无奈发现现在大部分教程不仅是视频形式的,面对的也是美术.设计之类的非程序员,更多的时候都是把Unity3d当作PS一样的工具来用,真正面对程序开发的教程反而非常少,更不用说希望能研究到一些底层图形技术的技术工作者了. 说一下我看的两本Unity3d书籍吧.第一本是<Unity 3D游戏开发(第2版)>(…
目录 1. 概述 2. 详论 2.1. 网格(Mesh) 2.1.1. 顶点 2.1.2. 顶点索引 2.2. 材质(Material) 2.2.1. 创建材质 2.2.2. 使用材质 2.3. 光照 3. 代码 1. 概述 上一篇文章<Unity3D学习笔记1--绘制一个三角形>中介绍了Unity3D的HelloWorld--绘制一个简单的三角形.不过这个三角形太简单了,连材质都没有.那么这里就将三角形扩展为一个矩形的面,并且为这个面贴上纹理. 2. 详论 2.1. 网格(Mesh) 前面说…
转自:OpenGL学习笔记:拾取与选择 在开发OpenGL程序时,一个重要的问题就是互动,假设一个场景里面有很多元素,当用鼠标点击不同元素时,期待作出不同的反应,那么在OpenGL里面,是怎么知道我当前鼠标的位置是哪一个物体呢? OpenGL有一套机制,叫做Picking, 里面涉及到几个核心概念: 1. selection mode. 选择模式 2. name stack. 名字栈 3. hit record. 命中记录 4. viewing volume. 视角范围 在OpenGL的pick…
在GL中特别提出了缓冲区对象这一概念,是针对提高绘图效率的一个手段.由于GL的架构是基于客户——服务器模型建立的,因此默认所有的绘图数据均是存储在本地客户端,通过GL内核渲染处理以后再将数据发往GPU显示.假设这样一种情况,有一批数据并不经常更改而数目又挺大,如果按照通常的做法无非是不断重复不断重复发送数据,整个操作主要内容变成了传输数据.针对这种窘况,GL内核允许客户将客户端的数据直接在GPU显存区域开辟一段缓冲区存储,存储具备这种特点的数据. 此时,考虑另一种极端情况,绘图数据需要实时渲染更…
p { text-indent: 2em } .triangle-container p { text-indent: 0 } img { margin: 15px 0 } 三角形的场景很常见,打开一个页面可以看到各种各样的三角形: 由于div一般是四边形,要画个三角形并不是那么直观.你可以贴一张png,但是这种办法有点low,或者是用svg的形式,但是太麻烦.三角形其实可以用CSS画出来.如上图提到,可以分为两种三角形,一种是纯色的三角形,第二种是有边框色的三角形,先介绍最简单的纯色三角形.…
C#.NET学习笔记2---C#.第一个C#程序 技术qq交流群:JavaDream:251572072  教程下载,在线交流:创梦IT社区:www.credream.com 6.第一个C#程序:   a.单行注释://   b.多行注释:/* ...  */ ,注意*和/之间没有空格  唯一需要学的三条控制台指令:   想控制台打印:hello...   using System; using System.Collections.Generic; using System.Linq; usi…
来源:https://zhuanlan.zhihu.com/p/26160325 三角形的场景很常见,打开一个页面可以看到各种各样的三角形: 由于div一般是四边形,要画个三角形并不是那么直观.你可以贴一张png,但是这种办法有点low,或者是用svg的形式,但是太麻烦.三角形其实可以用CSS画出来.如上图提到,可以分为两种三角形,一种是纯色的三角形,第二种是有边框色的三角形,先介绍最简单的纯色三角形. 1. 三角形的画法 三角形可以用border画出来,首先一个有四个border的div应该是…