{"id":18582311,"url":"https://github.com/ubpa/renderlab_bk_20200303","last_synced_at":"2025-05-16T04:10:53.632Z","repository":{"id":108165133,"uuid":"244654318","full_name":"Ubpa/RenderLab_bk_20200303","owner":"Ubpa","description":null,"archived":false,"fork":false,"pushed_at":"2020-03-03T14:15:56.000Z","size":5468,"stargazers_count":2,"open_issues_count":0,"forks_count":1,"subscribers_count":3,"default_branch":"master","last_synced_at":"2024-12-26T17:10:32.867Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"language":"C++","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/Ubpa.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2020-03-03T14:15:39.000Z","updated_at":"2022-12-05T07:35:35.000Z","dependencies_parsed_at":null,"dependency_job_id":"5ba5bd8c-04b3-4a6b-8e65-bfba1f023251","html_url":"https://github.com/Ubpa/RenderLab_bk_20200303","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Ubpa%2FRenderLab_bk_20200303","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Ubpa%2FRenderLab_bk_20200303/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Ubpa%2FRenderLab_bk_20200303/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Ubpa%2FRenderLab_bk_20200303/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/Ubpa","download_url":"https://codeload.github.com/Ubpa/RenderLab_bk_20200303/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":239321539,"owners_count":19619725,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":[],"created_at":"2024-11-07T00:10:33.570Z","updated_at":"2025-02-17T16:21:58.962Z","avatar_url":"https://github.com/Ubpa.png","language":"C++","funding_links":[],"categories":[],"sub_categories":[],"readme":"# RenderLab\n\n\u003ch1 align=center\u003e\n\u003cimg src=\"logo/horizontal.png\" width=50%\u003e\n\u003c/h1\u003e\n\n## 0. 简介\n\n渲染实验室，包含了实时渲染，离线渲染和场景编辑的功能\n\n![engine](https://raw.githubusercontent.com/Ubpa/ImgBed/master/RenderLab/000.jpg)\n\n## 1. 特性\n\n- 应用 App\n  - 渲染实验室 RenderLab\n  - 降噪器 Denoiser\n  - 实时全局光照 RTGIwRRF\n  - SObj 渲染器 SObjRenderer\n  - SObj 采样器 SObjSampler\n- 组件 Component\n  - 相机 Camera\n  - 变换 Transform\n  - 材质 Material\n    - 玻璃 Glass\n    - 镜子 Mirror\n    - 漫反射 Diffuse\n    - 金属工作流 Metal Workflow\n    - 毛玻璃 Frosted Glass\n    - 寒霜 Frostbite\n    - Gooch\n  - 几何体 Geometry\n    - 球 Sphere\n    - 平面 Plane\n    - 三角网格 TriMesh\n    - 圆盘 Disk\n    - 胶囊 Capsule\n  - 光源 Light\n    - 点光源 PointLight\n    - 面光源 AreaLight\n    - 方向光 DirectionalLight\n    - 聚光灯 SpotLight\n    - 无限远光源 InfiniteAreaLight\n    - 球光源 SphereLight\n    - 胶囊光源 CapsuleLight\n    - 圆盘光源 DiskLight\n- 离线渲染\n  - 路径追踪 PathTracing\n- 网格编辑\n  - 参数化 Paramaterization\n  - 粘合 Glue\n  - 变形 DeformRBF\n  - 极小曲面 MinSurf\n  - 各向同性网格重划分 IsotropicRemeshing\n  - Loop 细分 LoopSubdivision\n- 其他功能\n  - [几何数学库 UGM](https://github.com/Ubpa/RenderLab/tree/master/include/CppUtil/Basic/UGM) \n  - AI 降噪 OptixAIDenoiser\n\n## 2. 安装\n\nCMake: 3.1.0 以上\n\nVisual Studio: 2017\n\n系统：windows 64位\n\nQt: 5.12.0 64位\n\nCUDA: 9.0\n\nOptix: 6.0\n\n驱动：418.81 or later is required\n\n安装方法见于 [setup.md](setup.md) \n\n## 3. TODO\n\n### Copy Frostbite\n\n[MovingFrostbiteToPBR](https://github.com/Ubpa/Note/tree/master/CG/courses/MovingFrostbiteToPBR) \n\n- [x] 材质（HC-GGX + Disney Diffuse） \n  - [x] 离线\n  - [x] 实时\n- [ ] 光照\n  - [x] 直接\n    - [x] diffuse\n      - [x] 点\n      - [x] 聚光灯\n      - [x] sphere\n        - [x] 离线\n        - [x] 实时\n      - [x] disk\n        - [x] 离线\n        - [x] 实时\n      - [x] rectangle / frustum\n        - [x] 离线\n        - [x] 实时\n      - [x] tube / line\n        - [x] 离线\n          - [x] 形状\n          - [x] 光源\n        - [x] 实时\n          - [x] 形状\n          - [x] 光源\n    - [x] specular\n      - [x] Sphere\n      - [x] disk\n      - [x] rectangle / frustum\n      - [x] tube / line\n  - [ ] 间接\n    - [x] distant light probe\n    - [ ] local light probe\n    - [ ] SSR\n    - [ ] planar reflection\n- [ ] 相机\n\n### LTC\n\n- [x] GGX LTC LUT (matrix(4) + norm(2) + sphere(1))\n- [ ] Texture\n- [ ] disk\n- [ ] sphere\n\n### Impotant\n\n- [x] 自己编写数学运算库，放弃 glm\n- [x] 重构指针\n- [x] 补充安装方法\n- [x] 线性化 BVH\n- [x] Imaging Pipline\n- [x] 简单模型载入\n- [x] 方向光\n  - [x] 离线\n  - [x] 实时\n    - [x] 光照计算\n    - [x] 阴影\n  - [x] UI\n  - [x] （反）序列化\n- [x] 聚光灯\n  - [x] 离线\n  - [x] 实时\n    - [x] 光照计算\n    - [x] 阴影\n  - [x] UI\n  - [x] （反）序列化\n- [x] 环境光\n  - [x] 离线\n    - [x] 别名法 AliasMethod\n    - [x] 无限远光源 InifiniteAreaLight\n  - [x] 实时\n    - [x] 从 equirectangular map 到 cubemap\n    - [x] 渲染 skybox\n    - [x] irradiace map\n    - [x] pre-filtering an HDR environment map\n    - [x] pre-computing the BRDF\n    - [x] IBL\n      - [x] diffuse\n      - [x] specular\n  - [x] UI\n  - [x] （反）序列化\n- [x] 延迟管线（金属工作流）\n  - [x] GBuffer\n  - [x] Direct Light\n  - [x] Ambient Light\n  - [x] Sky Box\n  - [x] window\n  - [x] 优化\n- [x] Gooch\n- [ ] Frostbite\n- [x] GLSL include\n- [x] 光源与其他 Component 统一\n- [ ] GLSL 库函数\n- [ ] 将 Engine 取出\n- [x] 去除 CUDA 和 Optix 的依赖\n- [ ] 重构 OpenGL 库（资源管理）\n- [ ] 拷贝粘贴，模型、图像等复用\n- [ ] CSM\n- [ ] 封装 UBO，改进 FBO\n- [ ] 解析 Shader（uniform）\n- [ ] 实时渲染——面光源\n- [ ] 旋转拖动缩放物体\n- [ ] 重新架构 Raster\n- [ ] 重构序列化\n- [ ] Bloom\n- [ ] 重构 MicrofacetDistribution\n- [ ] opengl 的 c++ 版本\n- [x] 半边结构\n- [x] loop\n- [x] 极小化曲面\n- [x] 参数化\n- [x] 空间场平滑插值 RBF\n- [ ] 释放 OpenGL 资源\n- [ ] TriMesh 性能优化\n\n### Unimportant\n\n- [ ] 添加注释\n- [ ] 保存 Code 模式的 Trimesh\n- [ ] 优化 intersector\n- [x] 清除 useless 参数\n- [ ] AreaLight 改名为 RectLight\n\n### Bugs\n\n- [x] 边缘黑斑（大概是因为 ambient light 中直接写 directlight 的纹理导致的\n- [ ] 切换 Raster 发生内存泄露\n- [ ] 胶囊体的 uv\n- [ ] 胶囊体光源离线有问题\n- [x] disk 序列化\n- [ ] 胶囊体阴影不正确\n\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fubpa%2Frenderlab_bk_20200303","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fubpa%2Frenderlab_bk_20200303","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fubpa%2Frenderlab_bk_20200303/lists"}