/RenderLab

App of RTR, PBR and Editor

Primary LanguageC++MIT LicenseMIT

RenderLab

0. 简介

渲染实验室,包含了实时渲染,离线渲染和场景编辑的功能

engine

1. 特性

  • 应用 App
    • 渲染实验室 RenderLab
    • 降噪器 Denoiser
    • 实时全局光照 RTGIwRRF
    • SObj 渲染器 SObjRenderer
    • SObj 采样器 SObjSampler
  • 组件 Component
    • 相机 Camera
    • 变换 Transform
    • 材质 Material
      • 玻璃 Glass
      • 镜子 Mirror
      • 漫反射 Diffuse
      • 金属工作流 Metal Workflow
      • 毛玻璃 Frosted Glass
    • 几何体 Geometry
      • 球 Sphere
      • 平面 Plane
      • 三角网格 TriMesh
    • 光源 Light
      • 面光源 AreaLight(不支持实时)
      • 点光源 PointLight
      • 方向光 DirectionalLight
      • 聚光灯 SpotLight
      • 无限远光源 InfiniteAreaLight
  • 查看器 Viewer
    • 拣选器 Picker
    • 直接光照光栅器 DirectIllumRaster
    • 漫游器 Roamer
  • 相交器 Intersector
    • 最近 RayIntersector
    • 可见性 VisibilityChecker
  • 过滤器
    • Box
    • Gaussian
    • Mitchell
    • Sinc
    • Triangle
  • 离线渲染
    • 路径追踪 PathTracing
  • 其他功能

2. 安装

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

3. TODO

Impotant

  • 自己编写数学运算库,放弃 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
    • (反)序列化
  • 实时渲染——面光源

  • 旋转拖动缩放物体

  • 重新架构 Raster

  • ...

Unimportant

  • 添加注释
  • 保存 Code 模式的 Trimesh
  • ...