Relax job constraints, add ref type support, misc fixes

Relaxed generic constraints for job scheduling/execution to allow reference types (removed struct requirement). Updated IJob, IJobParallelFor, and IJobParallel extension methods to support both value and reference types, introducing RunRef for struct-specific overloads. Adjusted JobExecutor and JobScheduler to match new constraints. Bumped assembly version to 3.1.1. Added Value property to Wrapper<T> for ref access and inlined Get(). Changed GGXMipGenerationJob sample count to linear roughness. Removed unused usings in JobInfo.cs.
This commit is contained in:
2026-04-27 12:54:29 +09:00
parent 9f7507ba71
commit 8ce7fddd32
8 changed files with 44 additions and 23 deletions

View File

@@ -342,7 +342,7 @@ internal unsafe struct GGXMipGenerationJob : IJobParallelFor
var totalWeight = 0.0f;
// 3. Monte Carlo Integration Loop
var dynamicSampleCount = (uint)max(1.0f, SAMPLE_COUNT * sqrt(pLevel->roughness));
var dynamicSampleCount = (uint)max(1.0f, SAMPLE_COUNT * pLevel->roughness);
for (var i = 0u; i < dynamicSampleCount; i++)
{
// Generate a Hammersley random sequence point