Skip to content

Commit

Permalink
fix lightmap scale not working
Browse files Browse the repository at this point in the history
  • Loading branch information
z3y committed Aug 15, 2024
1 parent d58259d commit a01dc62
Show file tree
Hide file tree
Showing 2 changed files with 4 additions and 6 deletions.
8 changes: 3 additions & 5 deletions Scripts/XatlasLightmapPacker.cs
Original file line number Diff line number Diff line change
Expand Up @@ -139,14 +139,14 @@ public void Execute(bool clearStream, bool regenerateData, bool directlyToUv2 =
{
var indicies = new NativeArray<int>(sm.GetIndices(j), Allocator.TempJob);

var areaMultiplier = new CalculateChartsAreaMultiplierJob(verts, uvs, modelMatrix, indicies, scale, result);
var areaMultiplier = new CalculateChartsAreaMultiplierJob(verts, uvs, modelMatrix, indicies, result);
areaMultiplier.Run(indicies.Length/3);

indicies.Dispose();
}
float area = result[0];
float uvArea = result[1];
float finalScale = math.sqrt(area) / math.sqrt(uvArea);
float finalScale = (math.sqrt(area) / math.sqrt(uvArea)) * scale;

var scaleJob = new ScaleUVsJob(uvs, finalScale);
scaleJob.Run(uvs.Length);
Expand Down Expand Up @@ -486,21 +486,19 @@ float determinant(float2 c, float2 c2, float2 c3)
[BurstCompile(CompileSynchronously = true, DisableSafetyChecks = true)]
private struct CalculateChartsAreaMultiplierJob : IJobParallelFor
{
public CalculateChartsAreaMultiplierJob(NativeArray<float3> verts, NativeArray<float2> uvs, Matrix4x4 modelMatrix, NativeArray<int> indices, float scaleMultiplier, NativeArray<float> result)
public CalculateChartsAreaMultiplierJob(NativeArray<float3> verts, NativeArray<float2> uvs, Matrix4x4 modelMatrix, NativeArray<int> indices, NativeArray<float> result)
{
this.verts = verts;
this.uvs = uvs;
this.modelMatrix = modelMatrix;
this.indices = indices;
this.scaleMultiplier = scaleMultiplier;
this.result = result;
}

public NativeArray<int> indices;
public NativeArray<float3> verts;
public NativeArray<float2> uvs;
public float4x4 modelMatrix;
public float scaleMultiplier;

public NativeArray<float> result; // length 2

Expand Down
2 changes: 1 addition & 1 deletion package.json
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
{
"name": "com.z3y.xatlaslightmap",
"description": "Xatlas lightmap uv packer for bakery lightmapper",
"version": "0.1.4",
"version": "0.1.5",
"unity": "2019.4",
"displayName": "Xatlas Lightmap",
"hideInEditor": false
Expand Down

0 comments on commit a01dc62

Please sign in to comment.