| 386 | } |
| 387 | |
| 388 | void FinalResult(Float4 bakeOutput[BasisCount]) |
| 389 | { |
| 390 | SG sgLobes[SGCount]; |
| 391 | |
| 392 | SGSolveParam params; |
| 393 | params.NumSGs = SGCount; |
| 394 | params.OutSGs = sgLobes; |
| 395 | params.XSamples = SampleDirs.Data(); |
| 396 | params.YSamples = Samples.Data(); |
| 397 | params.NumSamples = NumSamples; |
| 398 | SolveSGs(params); |
| 399 | |
| 400 | for(uint64 i = 0; i < SGCount; ++i) |
| 401 | bakeOutput[i] = Float4(Float3::Clamp(sgLobes[i].Amplitude, 0.0f, FP16Max), 1.0f); |
| 402 | } |
| 403 | |
| 404 | void ProgressiveResult(Float4 bakeOutput[BasisCount], uint64 passIdx) |
| 405 | { |