Commit Graph

48 Commits (330fdcf43da5cef9d7258ce90b6511c2bab89f04)

Author SHA1 Message Date
ternaryop8479 330fdcf43d fix: 修复法线贴图计算问题并修复G-Buffer和非Primary Ray的tangent有关bug
- G-Buffer添加tangent上传
- BVH部分附加tangent到Triangle数据
- 删除原tangent近似计算代码并在代码中使用传入的tangent
2026-03-06 23:59:46 +08:00
ternaryop8479 c88e786deb feat: 添加法线贴图测试Demo
- 新增normal_map_cornell_box.cpp测试程序
- 加载albedo和normal贴图应用于短方块
- 生成测试用砖块纹理和法线贴图
2026-03-06 19:53:42 +08:00
ternaryop8479 39822e9dae feat: 实现纹理数组支持PBR贴图
- 添加纹理数组(bindless texture)支持
- RayTracer添加texture_arrays_成员存储6种纹理类型
- 添加build_texture_arrays_函数构建纹理数组
- 修改shader使用sampler2DArray进行纹理采样
- 添加sample_texture_array辅助函数
2026-03-06 19:24:44 +08:00
ternaryop8479 61739bf2d6 chore: removed AGENTS.md 2026-03-05 22:07:48 +08:00
ternaryop8479 56b30edde2 chore: 微调cornell_box demo 2026-03-05 22:07:30 +08:00
ternaryop8479 0c48d53d5c feat: 实现完整PBR材质系统及修复
- 扩展Material类,添加PBR纹理槽(Albedo/Normal/Metallic/Roughness/AO/Emission)
- 添加Mesh::compute_tangents()方法用于法线贴图计算
- 扩展RayTracer材质上传,支持纹理句柄传递
- 更新raytracing compute shader,添加PBR纹理采样和法线贴图TBN变换
- 修复GLSL/C++结构体内存对齐问题
- 添加ACES色调映射解决自发光过曝问题
- 修复累积缓冲区应在色调映射前存储HDR值
- 修复G-Buffer材质类型未传递给光线追踪的问题
- 添加玻璃材质折射逻辑(折射比例、法线翻转、全内反射)
- Cornell Box示例添加玻璃球(折射)、发光球(自发光)和金属球测试
2026-03-05 21:57:26 +08:00
ternaryop8479 fab45b52a3 Revert "refactor: 为后续PBR材质贴图等内容修改并重写纹理部分"
This reverts commit 9b63afd9ae.
不想写了年后再说
2026-02-16 22:12:53 +08:00
ternaryop8479 9b63afd9ae refactor: 为后续PBR材质贴图等内容修改并重写纹理部分 2026-02-16 14:07:37 +08:00
ternaryop8479 df2a2ea65e feat: 为example添加相机操控功能 2026-02-16 14:04:35 +08:00
ternaryop8479 022c15681a docs: 修订README排版,修改细节 2026-02-16 11:54:41 +08:00
ternaryop8479 7de250ec79 docs: 添加README.md 2026-02-15 22:14:03 +08:00
ternaryop8479 191b764747 refactor: 删除config模块无用内容 2026-02-15 15:49:21 +08:00
ternaryop8479 c039b83c57 style: 格式化代码及注释 2026-02-15 15:30:05 +08:00
ternaryop8479 d598b26845 fix&style: 修复screen_blit崩溃问题,微调raytracer内部接口规范 2026-02-15 00:19:34 +08:00
ternaryop8479 d0a3b1d772 fix: 修复CMake过程中找不到spdlog头文件编译报错问题 2026-02-15 00:03:49 +08:00
ternaryop8479 7b2699a74f chore: 移除info类型日志的代码详细追踪信息 2026-02-14 23:58:00 +08:00
ternaryop8479 00243a090f chore: 将screen_blit shader的加载方式从硬编码修改为由shader_manager加载 2026-02-14 23:55:41 +08:00
ternaryop8479 2284124628 refactor&feat: 重写日志系统,添加代码追踪信息 2026-02-14 23:11:26 +08:00
ternaryop8479 9136627b2a chore: 将stb作为普通目录上传 2026-02-14 13:39:49 +08:00
ternaryop8479 25447b0f34 chore: 将spdlog和stb作为普通目录上传 2026-02-14 13:36:49 +08:00
ternaryop8479 d38b92b8da remove:删除model_loader模块 2026-02-12 00:00:48 +08:00
ternaryop8479 6b6c754b5f feat:添加降噪模块(均值滤波) 2026-02-11 23:37:25 +08:00
ternaryop8479 ee7c843845 build:编写CMakeLists.txt 2026-02-11 23:23:50 +08:00
ternaryop8479 c975a153c7 refactor:移除include/extended_folders.list,上传lib/stb中内容 2026-02-11 22:52:54 +08:00
ternaryop8479 24be211acc Revert "fix&feat:修复spp过高会崩溃问题,添加均值滤波功能"
This reverts commit bc4ec55b95.
修复单次spp过高导致崩溃问题时引入了多帧累积失效问题,故进行一次回滚。
2026-02-11 22:25:26 +08:00
ternaryop8479 bc4ec55b95 fix&feat:修复spp过高会崩溃问题,添加均值滤波功能 2026-02-11 19:01:41 +08:00
ternaryop8479 adb23b6798 Fix:修改.gitignore,不上传LSP语言文件 2026-02-11 12:31:35 +08:00
ternaryop8479 e0e81e5dc6 Fix:修改.gitignore,不上传LSP语言文件 2026-02-11 12:30:33 +08:00
ternaryop8479 dbe0bd3385 Fix&Add: 禁Buffer/Texture类拷贝,添加Materials/Lights->GPU按需上传功能 2026-02-11 12:12:38 +08:00
ternaryop8479 b8ae9808a8 Refractor&Add: 使用shared_ptr优化Shader管理、添加基于G-Buffer的光线追踪、添加场景重建API 2026-02-11 00:27:37 +08:00
ternaryop8479 52c6ace2cd Fix&Add:修复最多只能上传256个material的虫,添加BVH上传代码和光线追踪实现 2026-02-10 17:29:53 +08:00
ternaryop8479 d418dedcd4 Fix&Add:修复最多只能上传256个material的虫,添加BVH上传代码和光线追踪实现 2026-02-10 17:28:43 +08:00
ternaryop8479 d0d97032db Fix&Add:修复最多只能上传256个material的虫,添加BVH上传代码和光线追踪实现 2026-02-10 17:10:59 +08:00
ternaryop8479 03baf12976 Fix: 修改raytracing.comp部分细节 2026-02-10 15:01:47 +08:00
ternaryop8479 5826c8c729 Revert "Fix:修复了material最大只能加载255个的问题"
This reverts commit 2e850c40ff.
上一个修复可能导致未知的GPU数据传递问题,故回滚至上一次commit.
2026-02-10 00:39:35 +08:00
ternaryop8479 2e850c40ff Fix:修复了material最大只能加载255个的问题 2026-02-10 00:32:56 +08:00
ternaryop8479 dbf5b8579c Refactor:重写所有代码、重新设计架构,实现大体架构和G-Buffer渲染 2026-02-09 22:16:57 +08:00
ternaryop8479 136677c456 Initial structure. 2026-02-09 18:32:13 +08:00
ternaryop8479 96ffcd4edc 这个架构最后一次commit 2026-02-09 17:47:21 +08:00
ternaryop8479 01dd5bd91e Last commit today 2026-02-08 23:46:46 +08:00
ternaryop8479 8ce33436d5 Last commit today 2026-02-08 22:46:24 +08:00
ternaryop8479 c1c062180d 完成光栅化渲染G-Buffer 2026-02-08 21:46:28 +08:00
ternaryop8479 0107df50cb 大重构改了文档&实现了初步OpenGL窗口创建和一些基础的初始化工作 2026-02-08 15:13:56 +08:00
ternaryop8479 d99cb1cd83 删除了Polygon类并添加Triangle类,改为从最基本的面片开始实现代码,后续再添加其他内容。 2026-01-31 22:55:29 +08:00
ternaryop8479 9869136865 Removed texture saving logic. 2026-01-25 18:34:01 +08:00
ternaryop8479 ace62a1854 First commit: Basic logic and implementation. 2026-01-25 10:20:42 +08:00
ternaryop8479 0d946a00cb First commit: Basic logic and implementation. 2026-01-25 09:31:06 +08:00
ternaryop8479 965b8c2db0 First commit: Basic logic and implementation. 2026-01-25 09:29:36 +08:00