2026-02-10 10:58:22    1    0    0

1 清单

1.1 核心修改

 
1. 支持dxc单独编译。支持运行单独加载dx11/dx12 shader blob。【82f97665】【36add27】

 
2. GPU资源接管。【3182b8e6】
2.1. 接入D3D12MA。支持启动参数切换开关。
2.2. 接管default/upload heap、placed/committed resource决策。
2.3. 接管small texture决策。
2.4. 接管scratch/staging buffer。梳理texture/buffer sync/async upload。

 
3. 封装ID3D12Resource。【ad51dee0】
3.1. 去除与之相关的global hash set 同步锁。
3.2. resource residency。接入微软官方residency数据结构。
3.3. resource mark access。

 
4. 新版resource barrier系统。【ad51dee0】
4.1. 实现于commandlist上,去掉全局usage锁。
4.2. 支持打包resource barrier统一flush。
 
5. Graphics Double Buffer封装。【bee0f1e7】
5.1. 无锁的double buffer resource结构,为后续改三线程提供工具。
5.2. 修复graphcis jobs导致的skin mesh render buffer同步问题。
 
6. read back buffer pool。【ad51dee0】
6.1. read back buffer实现真正有用的pool复用,避免每帧创建资源。

1.2 其它修改

  1. 支持启动参数切换dx11/dx12。
  2. 支持dx12 shader feature宏。
  3. 支持dx12 validtation info打印/拦截。
  4. 日常crash修复。
  5. 原理与最佳实践调研。
  6. 分析graphcis j
2025-03-02 18:49:59    377    0    1

1 abstract

  • Linear Transformed Spherical Distribution(LTSD, 线性变换球面分布)。
  • Linear Transformed Cosines(LTC,线性余弦变换)。
    • M矩阵(逆矩阵/归一化/bake lut)。描述bsdf形状
    • roughness / anisotropy / skewness。
    • Nelder–Mead method(downhill simplex method),下降单纯形法。
  • Shading -- 多边形边积分(非面积积分)。
    • Stoke’s theorem。
  • 水平面裁剪。
    • if-else check。
    • proxy sphere to lut by vector form factor(vector irradiance)。
  • Fresnel修正(bake lut2)。描述bsdf大小
    • like split sum dfg lut。

2 LTSD

对于一个球面分布,可以使用一个3x3的矩阵对它的方向向量(即该分布的自变量参数)进行线性变换,从而将其转为另一个球面分布。

title

  • ω0。原分布的方向向量(输入)。
  • M。线性变换矩阵。
  • ω。变换后的方向向量。

则有

ω=Mω0||Mω0||ω0=M1ω||M1ω||
2025-03-02 18:49:22    159    0    0

1 survey

[mat][pbr][frostbite]Moving%20Frostbite%20to%20Physically%20based%20rendering%203.0.pdf

title

  • 一般精准光源(如平行光)的直接光照时,光源单位光使用lux(lm/m^2),相当于是乘过立体角的,这样相当于乘了渲染方程的微元立体角。
  • 平行光的luminance一般为1.6*10^9 nit,但是我们一般使用12w lux的强度作为其能量,这是因为其立体角在0.000066左右,所以乘了其立体角之后就变成12w了。
    title
  • 点光/聚光灯一般以lm或者cd为单位,并以单位立体角上的强度作为着色表面入射的辐射照度E(不带单位1/sr,单位还是lm,相当于乘了1 sr),然后现经过平方反比衰减(E的单位变为lm/m^2,真正成为irradiance/illuminance)。然后经过RTE乘以brdf(单位1/sr)之后得到出射的radiance/luminance

1 old

  1. 辐射度量

title

球面度(solid angle)。sr。

辐射通量(radiant flux)。单位时间的辐射能。瓦特(W),焦耳每秒(J/s)。

Φ=dQdt

辐射强度(radiant intensity)。单位立体角的辐射通量。单位为瓦特每球面度(W/sr)。

I=dΦdΩ

辐射亮度(radiance)。光源方向的垂直方向上的单位表面积单位立体角所发出的辐射通量。也可以说是单位表面积所发出的辐射强度。瓦特每球面度平方米(W/(sr * m^2))。

L=dIdA

辐射照度(irradianc