计算机图形——OpenGL

荒废了太久,趁着“寒假”死磕了两周,验证了不少想法,解开了不少疑惑,代码质量当然是没有的,一切只为看到结果。

有空了再写每一项的细节。

源码地址

2019/5/12 更新

延迟渲染

GBuffer
世界坐标

世界法线

漫反射

300个点光源

2019/3/6 更新

优化了光源,阴影以及我自己做了一个模型emm...

当我打开3DMax的时候,时间拉回到大约7年前,这是我上一次打开3DMax的时间,当时我在学校机房进行3DMax期末考试,一顿操作猛如虎,定睛一看,一片糊,于是我默默的双击了桌面的CS图标。时间拉回来,我把刚装好的3DMax卸载了,一顿操作行云流水。

demo.gif

2019/2/26 更新

HDR

未开启HDR,亮度超出范围,色彩丢失
hdr_未开启.png

hdr_未开启_近距离.png

开启HDR,整体亮度变暗
hdr_16.png

hdr_16_近距离.png

法线贴图

应用法线贴图前
法线贴图_无贴图.png

法线贴图_无贴图.gif

应用法线贴图后
法线贴图_有贴图.png

法线贴图_有贴图.gif

视差贴图

原图
墙壁.jpg

深度贴图.jpg

法线贴图.jpg

仅有法线贴图,没有视差贴图
视差贴图_无贴图.png

视差贴图_无贴图.gif

应用视差贴图后
视差贴图_有贴图.png

视差贴图_有贴图.gif

泛光

关闭泛光渲染
泛光_无.png
亮度贴图
泛光_发光贴图.png

泛光_最终效果.png

泛光_最终效果.gif

2019/2/2 更新

标准光照模型

环境光.png

漫反射.png

镜面反射.png

标准光照.png

带贴图
环境光 (贴图).png

环境光+漫反射 (贴图).png

环境光 + 漫反射 + 镜面反射 (贴图).png

渲染纳米机器人.png

纳米机器人(动图).gif

多纹理

双纹理混合
10个箱子.png

放射光贴图
放射光贴图.png

光源

方向光.png

点光源.png

聚光灯.png

多光源.png

描边

描边1.png

描边2.png

天空盒子

反射
天空盒子_反射环境.png

天空盒子_反射(机器人).png

折射
天空盒子_折射.png

天空盒子_折射(动态 机器人).gif

天空盒子_折射(动态).gif

没有反射贴图
天空盒子_机器人 无反射.png

天空盒子_机器人2.png

加入反射贴图
天空盒子_机器人(反射贴图).png

天空盒子_机器人(反射贴图)2.png

渲染实例化数组

1秒6千个模型渲染
实例化数组_1000.png

1秒12万个模型渲染
实例化数组_20000.png

实例化数组.png

后期处理

离屏渲染_正常.png

离屏渲染_灰度.png

离屏渲染_反色.png

离屏渲染_边缘检测.png

离屏渲染_核.png

离屏渲染_模糊.png

几何着色器

膨胀模型
几何着色器_顶点爆炸.png

显示法线
几何着色器_渲染法线.png

不透,全透,半透贴图渲染

没有忽略草丛贴图空白区域
箱子,草,窗.png

渲染顺序错误
箱子,窗,草.png

正确渲染
箱子,草,窗.png

多相机渲染

多相机渲染.png

方向光阴影(阴影映射)

256分辨率阴影贴图未平滑
阴影_方向光(未平滑锯齿) 256深度贴图锯齿.png

平滑后
阴影_方向光(平滑锯齿) 256深度贴图锯齿.png

512分辨率阴影贴图未平滑
阴影_方向光(未平滑锯齿) 512深度贴图锯齿.png

平滑后
阴影_方向光(平滑锯齿) 512深度贴图锯齿.png

1024分辨率阴影贴图未平滑
阴影_方向光(未平滑锯齿) 1024深度贴图锯齿.png

平滑后
阴影_方向光(平滑锯齿) 1024深度贴图锯齿.png

动态光源
阴影_方向光_动态光源.gif

两个方向光源
阴影_方向光x2.png

阴影贴图
阴影贴图.png

聚光灯阴影(阴影映射)

阴影_两个聚光灯.png

阴影_聚光灯.gif

点光源阴影(点阴影)

阴影_点阴影.png

阴影_点阴影.gif

阴影立方体贴图
阴影_点阴影(深度贴图).png

猜你喜欢

转载自www.cnblogs.com/mmc1206x/p/10853762.html