文件名称:RayTrace:3D 光线追踪渲染
文件大小:84KB
文件格式:ZIP
更新时间:2024-07-18 06:40:14
C++
光线追踪 3D 光线追踪渲染。 这曾经是我高级计算机图形学课程的学期项目之一。 由于这是仓促完成的,所以可能仍然存在错误和/或结构次优,请谨慎使用。 :) 用法 移动到构建目录 执行 make ./rayTracer output.jpg 场景.json 特征 基本光线追踪 抗锯齿 分布式计算 支持Json场景描述文件 复杂 obj 模型的八叉树加速 通过内插法线平滑对象面 软阴影 景深 缓存采样器加速 致谢 Picojson:非常好的 json 库 kixor obj 加载器我对它做了一些小的修复 OpenCV 库 废话极客
【文件预览】:
RayTrace-master
----.gitignore(23B)
----LICENSE(1KB)
----RayTracer.xcodeproj()
--------project.xcworkspace()
--------project.pbxproj(34KB)
--------xcuserdata()
----README.md(746B)
----RayTracer()
--------Sphere.h(889B)
--------OctoTree.cpp(5KB)
--------Sampler.h(3KB)
--------BRDF.cpp(139B)
--------Utils.cpp(595B)
--------picojson.h(26KB)
--------Frame.cpp(198B)
--------obj_parser.h(2KB)
--------Geometry.cpp(148B)
--------Render.h(9KB)
--------Prefix.h(578B)
--------Logger.cpp(143B)
--------Frame.h(5KB)
--------Vec3f.cpp(5KB)
--------Plane.cpp(775B)
--------Scene.h(1021B)
--------Defaults.h(500B)
--------objLoader.cpp(1KB)
--------Sampler.cpp(265B)
--------Vec3f.h(2KB)
--------Geometry.h(1KB)
--------build()
--------Camera.h(606B)
--------Plane.h(5KB)
--------Light.h(1016B)
--------objLoader.h(788B)
--------list.cpp(4KB)
--------Ray.cpp(137B)
--------Defaults.cpp(430B)
--------Material.h(1KB)
--------OctoTree.h(1KB)
--------Scene.cpp(141B)
--------BRDF.h(310B)
--------Box.cpp(2KB)
--------Body.h(8KB)
--------obj_parser.cpp(17KB)
--------ShadeRec.h(791B)
--------list.h(757B)
--------Material.cpp(147B)
--------Sphere.cpp(1KB)
--------Utils.h(2KB)
--------Triangle.cpp(2KB)
--------Logger.h(246B)
--------main.cpp(16KB)
--------string_extra.cpp(267B)
--------string_extra.h(160B)
--------Ray.h(824B)
--------Light.cpp(141B)
--------Box.h(606B)
--------Body.cpp(139B)
--------Triangle.h(2KB)
--------ShadeRec.cpp(147B)
--------Render.cpp(165B)
--------Camera.cpp(143B)