
Legancy OpenGL / 固定渲染管线
介绍OpenGL在OpenGL3.3之前的固定渲染管线、或者叫立即渲染模式(Immediate mode)相关的内容
HW140701
这个作者很懒,什么都没留下…
展开
-
BVH动作文件读取以及使用OpenGL显示
使用OpenGL显示和加载BVH动作文件,该项目已经在我个人的Github上开源,项目地址:https://github.com/HW140701/LoadandDisplayBVH,欢迎大家批评指正和标星哦。原创 2019-07-18 11:21:40 · 3515 阅读 · 1 评论 -
OpenGL:将绘制场景保存为bmp图片
OpenGL:将绘制场景保存为bmp图片,方便出图void ScreenShot(){ GLint pView[4]; glGetIntegerv(GL_VIEWPORT,pView);//得到视图矩阵,pView[2]为宽即width,pView[3]为高即height GLsizei numComponet = 3; GLsizei bufferSize = pView...原创 2017-11-28 16:01:23 · 4005 阅读 · 2 评论 -
VS2010-MFC:用OpenGL在对话框中的PictureControl(图片控件)中绘制三维模型,可旋转、平移、缩放,可用于三维模型的预览
由于有这个需求,就是当在对话框设置一些数值的时候,可以在对话框上预览三维图像。(1)生成一个基于对话框的程序,或者直接在单文档或者多文档上插入一个对话框,生成一个新的对话框类CGridingDlg,名字可以任取。(2)配置好工程的OpenGL环境,不知道可以百度。(3)在CGridingDlg的头文件中添加以下变量:/*-----OpenGL绘图相关的变量---------...原创 2017-03-21 17:59:45 · 7071 阅读 · 17 评论 -
32位(x86)与64位(x64)程序中详细配置OpenGL(Glut/FreeGlut/Glew)环境小白教程
先说说题外话,OpenGL是一个跨平台优秀的三维可视化库,而在Windows中内部封装的OpenGL还是1.1版本,不吐槽,维护自身Direct3D的发展也是情有可原。如果你是Win32系统,编译环境也是Win32的话,对OpenGL只是练习,那么就用简单的GLUT来配置OpenGL环境就好了,但是如果你想用X64(64位)环境来编译的话,这个GLUT会编译不成功,因为它不提供64位下的使用环境,...原创 2017-05-02 09:20:25 · 14310 阅读 · 7 评论 -
OpenGL开启Gouraud明暗处理,减少马赫夫效应
在我们建立三维模型的过程中,当用多边形网格或者是三角面片来近似的表示曲面的表面时,曲面被离散成许多的平面多边形,如果我们的网格较大,离散度较粗,在模型表面使用明暗处理后,两两相邻的多边形会出现凸起或者是凹陷的折痕,在连接处显得比周围处亮或者暗,这就是所谓的马赫夫效应,如下图所示针对于出现的马赫夫效应,我们需要进行明暗处理,消除或者是减少三维模型的马赫夫效应,使其看上去更加的光滑美观,常...原创 2017-04-18 10:23:41 · 3911 阅读 · 0 评论 -
OpenGL函数封装:在任意两个三维点之间绘制给定半径的圆柱体管道
由于最近的需要在任意两个三维点直接绘制三维圆柱体管道,OpenGL太底层了,以至于什么东西都要自己写在网上参考了如下的博客:http://blog.youkuaiyun.com/ryfdizuo/article/details/6548257http://blog.sina.com.cn/s/blog_5cd804e70100oxca.htmlhttp://blog.sina.com.cn/s...原创 2017-03-13 19:46:48 · 2940 阅读 · 0 评论 -
OpenGL:三维模型,模型网格点与面片同时显示,模型网格轮廓线与面片同时显示
1、 OpenGL多边形偏移函数glPolygonOffser(GLfloat factor,GLfloat units)如果我们想显示一个三维模型的边缘,我们可能会采用GL_FILL先绘制一遍三维模型,然后在用GL_LINE用不同的颜色再绘制一遍,但是在这种情况下,我们所绘制的边缘线与面片叠在一起,时有时无,会产生非常不好的视觉效果。OpenGL采用了glPolygonOffset(GLfloa原创 2017-12-27 16:27:30 · 5881 阅读 · 14 评论 -
OpenGL+MFC对三维点云的法向量实现可视化
最近有小伙伴在问,我想显示一个求得的三维点云中的每一个点的法向量的指向,怎么获得这种逼真的三维显示效果呢?当然是OpenGL啦,也是我自己用的比较习惯,所以就花了十几分钟帮助上面提问的小伙伴解决问题,然后也提供给大家一个查看三维点云法向量的工具,稍后我会在我的CSDN的下载频道上传该软件的Release版本供大家使用,主要的显示效果是三维点云中的每一个点使用实心球体表示,法向量用一个方向箭...原创 2017-09-08 22:41:28 · 6551 阅读 · 8 评论 -
Marching Cube(C++ OpenGl代码)读取医学三维图像*.raw进行三维重建
示例数据可进入我的个站下载,免优快云积分,方便没有积分的盆友:http://www.stubbornhuang.com/448/Marching Cube(C++ OpenGl代码)读取医学三维图像*.raw进行三维重建#define GLUT_DISABLE_ATEXIT_HACK #include <stdlib.h>#include <string.h...原创 2016-11-23 20:19:42 · 9550 阅读 · 47 评论 -
体绘制RayCasting(光线投影算法)C++/OpenGL源码
RayCasting(光线投影算法)C++源码#include<stdio.h>#include<stdlib.h>#include<math.h>#include <GL/glut.h>#define EPSILON 0.000001#define WIDTH 400#define HEIGTH 500float Imag...原创 2016-11-20 19:49:21 · 8899 阅读 · 6 评论 -
OpenGL-----地球与太阳绕转代码
openGL-----地球与太阳绕转代码</pre><pre name="code" class="cpp">#define GLUT_DISABLE_ATEXIT_HACK#include <stdlib.h>#include <stdio.h>#include <GL/glut.h>#include <GL/...原创 2016-08-26 16:22:31 · 2427 阅读 · 0 评论 -
OpenGL画四个三角形组成四面体,并进行旋转
</pre><pre name="code" class="cpp">#define GLUT_DISABLE_ATEXIT_HACK#include <GL/glut.h>#include <stdlib.h>#include <stdio.h>static float roangles;void init(void)...原创 2016-03-21 21:02:17 · 7170 阅读 · 1 评论