实例介绍
本项目代码基于VC++实现了对一个球体的光线跟踪渲染算法,包含环境光,漫反射和镜面反射。渲染结束后输出每个像素的RGB值,并用OPenGL的库函数加以显示。要成功运行本历程须进行 OPenGL的环境配置。不过,即便不能运行,核心部分的代码也是完全正确的,有详细注释,对初学者有很大参考价值。
【实例截图】
【核心代码】
成功_对一个球的光线渲染实验
└── 成功_对一个球的光线渲染实验
├── Debug
│ ├── 对一个球的光线渲染实验.exe
│ ├── 对一个球的光线渲染实验.ilk
│ └── 对一个球的光线渲染实验.pdb
├── ipch
│ └── 对一个球的光线渲染实验-8b37c774
│ └── 对一个球的光线渲染实验-233a3d8d.ipch
├── 对一个球的光线渲染实验
│ ├── Debug
│ │ ├── cl.command.1.tlog
│ │ ├── CL.read.1.tlog
│ │ ├── CL.write.1.tlog
│ │ ├── DirLight.obj
│ │ ├── link.1228-cvtres.read.1.tlog
│ │ ├── link.1228-cvtres.write.1.tlog
│ │ ├── link.1228.read.1.tlog
│ │ ├── link.1228.write.1.tlog
│ │ ├── link.1548-cvtres.read.1.tlog
│ │ ├── link.1548-cvtres.write.1.tlog
│ │ ├── link.1548.read.1.tlog
│ │ ├── link.1548.write.1.tlog
│ │ ├── link.3096-cvtres.read.1.tlog
│ │ ├── link.3096-cvtres.write.1.tlog
│ │ ├── link.3096.read.1.tlog
│ │ ├── link.3096.write.1.tlog
│ │ ├── link.3296-cvtres.read.1.tlog
│ │ ├── link.3296-cvtres.write.1.tlog
│ │ ├── link.3296.read.1.tlog
│ │ ├── link.3296.write.1.tlog
│ │ ├── link.3892-cvtres.read.1.tlog
│ │ ├── link.3892-cvtres.write.1.tlog
│ │ ├── link.3892.read.1.tlog
│ │ ├── link.3892.write.1.tlog
│ │ ├── link.4048-cvtres.read.1.tlog
│ │ ├── link.4048-cvtres.write.1.tlog
│ │ ├── link.4048.read.1.tlog
│ │ ├── link.4048.write.1.tlog
│ │ ├── link.4588-cvtres.read.1.tlog
│ │ ├── link.4588-cvtres.write.1.tlog
│ │ ├── link.4588.read.1.tlog
│ │ ├── link.4588.write.1.tlog
│ │ ├── link.4672-cvtres.read.1.tlog
│ │ ├── link.4672-cvtres.write.1.tlog
│ │ ├── link.4672.read.1.tlog
│ │ ├── link.4672.write.1.tlog
│ │ ├── link.6044-cvtres.read.1.tlog
│ │ ├── link.6044-cvtres.write.1.tlog
│ │ ├── link.6044.read.1.tlog
│ │ ├── link.6044.write.1.tlog
│ │ ├── link.6064-cvtres.read.1.tlog
│ │ ├── link.6064-cvtres.write.1.tlog
│ │ ├── link.6064.read.1.tlog
│ │ ├── link.6064.write.1.tlog
│ │ ├── link.7360-cvtres.read.1.tlog
│ │ ├── link.7360-cvtres.write.1.tlog
│ │ ├── link.7360.read.1.tlog
│ │ ├── link.7360.write.1.tlog
│ │ ├── link.command.1.tlog
│ │ ├── link-cvtres.read.1.tlog
│ │ ├── link-cvtres.write.1.tlog
│ │ ├── link.read.1.tlog
│ │ ├── link.write.1.tlog
│ │ ├── main.obj
│ │ ├── mt.command.1.tlog
│ │ ├── mt.read.1.tlog
│ │ ├── mt.write.1.tlog
│ │ ├── Ray.obj
│ │ ├── Raytracer.obj
│ │ ├── rc.command.1.tlog
│ │ ├── rc.read.1.tlog
│ │ ├── rc.write.1.tlog
│ │ ├── Sphere.obj
│ │ ├── vc100.idb
│ │ ├── vc100.pdb
│ │ ├── vector.obj
│ │ ├── 对一个球的光线渲染实验.exe.embed.manifest
│ │ ├── 对一个球的光线渲染实验.exe.embed.manifest.res
│ │ ├── 对一个球的光线渲染实验.exe.intermediate.manifest
│ │ ├── 对一个球的光线渲染实验.lastbuildstate
│ │ ├── 对一个球的光线渲染实验.log
│ │ └── 对一个球的光线渲染实验_manifest.rc
│ ├── DirLight.cpp
│ ├── DirLight.h
│ ├── main.cpp
│ ├── Ray.cpp
│ ├── Ray.h
│ ├── Raytracer.cpp
│ ├── Raytracer.h
│ ├── Sphere.cpp
│ ├── Sphere.h
│ ├── vector.cpp
│ ├── vector.h
│ ├── 对一个球的光线渲染实验.vcxproj
│ ├── 对一个球的光线渲染实验.vcxproj.filters
│ └── 对一个球的光线渲染实验.vcxproj.user
├── 对一个球的光线渲染实验.sdf
├── 对一个球的光线渲染实验.sln
└── 对一个球的光线渲染实验.suo
6 directories, 93 files
标签:
小贴士
感谢您为本站写下的评论,您的评论对其它用户来说具有重要的参考价值,所以请认真填写。
- 类似“顶”、“沙发”之类没有营养的文字,对勤劳贡献的楼主来说是令人沮丧的反馈信息。
- 相信您也不想看到一排文字/表情墙,所以请不要反馈意义不大的重复字符,也请尽量不要纯表情的回复。
- 提问之前请再仔细看一遍楼主的说明,或许是您遗漏了。
- 请勿到处挖坑绊人、招贴广告。既占空间让人厌烦,又没人会搭理,于人于己都无利。
关于好例子网
本站旨在为广大IT学习爱好者提供一个非营利性互相学习交流分享平台。本站所有资源都可以被免费获取学习研究。本站资源来自网友分享,对搜索内容的合法性不具有预见性、识别性、控制性,仅供学习研究,请务必在下载后24小时内给予删除,不得用于其他任何用途,否则后果自负。基于互联网的特殊性,平台无法对用户传输的作品、信息、内容的权属或合法性、安全性、合规性、真实性、科学性、完整权、有效性等进行实质审查;无论平台是否已进行审查,用户均应自行承担因其传输的作品、信息、内容而可能或已经产生的侵权或权属纠纷等法律责任。本站所有资源不代表本站的观点或立场,基于网友分享,根据中国法律《信息网络传播权保护条例》第二十二与二十三条之规定,若资源存在侵权或相关问题请联系本站客服人员,点此联系我们。关于更多版权及免责申明参见 版权及免责申明
网友评论
我要评论