渲染实验室,包含了实时渲染,离线渲染和场景编辑的功能
- 应用 App
- 渲染实验室 RenderLab
- 降噪器 Denoiser
- 实时全局光照 RTGIwRRF
- SObj 渲染器 SObjRenderer
- SObj 采样器 SObjSampler
- 组件 Component
- 相机 Camera
- 变换 Transform
- 材质 Material
- 玻璃 Glass
- 镜子 Mirror
- 漫反射 Diffuse
- 金属工作流 Metal Workflow
- 毛玻璃 Frosted Glass
- 寒霜 Frostbite
- Gooch
- 几何体 Geometry
- 球 Sphere
- 平面 Plane
- 三角网格 TriMesh
- 圆盘 Disk
- 胶囊 Capsule
- 光源 Light
- 点光源 PointLight
- 面光源 AreaLight
- 方向光 DirectionalLight
- 聚光灯 SpotLight
- 无限远光源 InfiniteAreaLight
- 球光源 SphereLight
- 胶囊光源 CapsuleLight
- 圆盘光源 DiskLight
- 离线渲染
- 路径追踪 PathTracing
- 其他功能
- 几何数学库 UGM
- AI 降噪 OptixAIDenoiser
CMake: 3.1.0 以上
Visual Studio: 2017
系统:windows 64位
Qt: 5.12.0 64位
CUDA: 9.0
Optix: 6.0
驱动:418.81 or later is required
安装方法见于 setup.md
- 材质(HC-GGX + Disney Diffuse)
- 离线
- 实时
- 光照
- 直接
- diffuse
- 点
- 聚光灯
- sphere
- 离线
- 实时
- disk
- 离线
- 实时
- rectangle / frustum
- 离线
- 实时
- tube / line
- 离线
- 形状
- 光源
- 实时
- 形状
- 光源
- 离线
- specular
- Sphere
- disk
- rectangle / frustum
- tube / line
- diffuse
- 间接
- distant light probe
- local light probe
- SSR
- planar reflection
- 直接
- 相机
- GGX LTC LUT (matrix(4) + norm(2) + sphere(1))
- Texture
- disk
- sphere
-
自己编写数学运算库,放弃 glm
-
重构指针
-
补充安装方法
-
线性化 BVH
-
Imaging Pipline
-
简单模型载入
-
方向光
- 离线
- 实时
- 光照计算
- 阴影
- UI
- (反)序列化
-
聚光灯
- 离线
- 实时
- 光照计算
- 阴影
- UI
- (反)序列化
-
环境光
- 离线
- 别名法 AliasMethod
- 无限远光源 InifiniteAreaLight
- 实时
- 从 equirectangular map 到 cubemap
- 渲染 skybox
- irradiace map
- pre-filtering an HDR environment map
- pre-computing the BRDF
- IBL
- diffuse
- specular
- UI
- (反)序列化
- 离线
-
延迟管线(金属工作流)
- GBuffer
- Direct Light
- Ambient Light
- Sky Box
- window
- 优化
-
Gooch
-
Frostbite
-
GLSL include
-
光源与其他 Component 统一
-
GLSL 库函数
-
将 Engine 取出
-
去除 CUDA 和 Optix 的依赖
-
重构 OpenGL 库(资源管理)
-
拷贝粘贴,模型、图像等复用
-
CSM
-
封装 UBO,改进 FBO
-
解析 Shader(uniform)
-
实时渲染——面光源
-
旋转拖动缩放物体
-
重新架构 Raster
-
重构序列化
-
Bloom
-
重构 MicrofacetDistribution
- 添加注释
- 保存 Code 模式的 Trimesh
- 优化 intersector
- 清除 useless 参数
- AreaLight 改名为 RectLight
- 边缘黑斑(大概是因为 ambient light 中直接写 directlight 的纹理导致的
- 切换 Raster 发生内存泄露
- 胶囊体的 uv
- 胶囊体光源离线有问题
- disk 序列化
- 胶囊体阴影不正确