Fix invalid MinMaxAABB error for PolygonSGO.
This commit is contained in:
@@ -6,8 +6,8 @@ using UnityEngine;
|
|||||||
|
|
||||||
namespace Cryville.Crtr.Components {
|
namespace Cryville.Crtr.Components {
|
||||||
public abstract class SectionalGameObject : SkinComponent {
|
public abstract class SectionalGameObject : SkinComponent {
|
||||||
protected bool headGenerated;
|
protected Vector3? prevpt;
|
||||||
protected Vector3 prevpt;
|
protected Quaternion? prevrot;
|
||||||
protected int vertCount = 0;
|
protected int vertCount = 0;
|
||||||
protected MeshWrapper mesh = new MeshWrapper();
|
protected MeshWrapper mesh = new MeshWrapper();
|
||||||
|
|
||||||
@@ -24,10 +24,11 @@ namespace Cryville.Crtr.Components {
|
|||||||
}
|
}
|
||||||
|
|
||||||
public void AppendPoint(Vector3 p, Quaternion r) {
|
public void AppendPoint(Vector3 p, Quaternion r) {
|
||||||
|
if (prevpt == p && prevrot == r) return;
|
||||||
AppendPointInternal(p, r);
|
AppendPointInternal(p, r);
|
||||||
// if (!headGenerated) Logger.Log("main", 0, "Skin/Polysec", "{0}", r);
|
// if (!headGenerated) Logger.Log("main", 0, "Skin/Polysec", "{0}", r);
|
||||||
headGenerated = true;
|
|
||||||
prevpt = p;
|
prevpt = p;
|
||||||
|
prevrot = r;
|
||||||
vertCount++;
|
vertCount++;
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -37,7 +38,8 @@ namespace Cryville.Crtr.Components {
|
|||||||
|
|
||||||
public virtual void Reset() {
|
public virtual void Reset() {
|
||||||
vertCount = 0;
|
vertCount = 0;
|
||||||
headGenerated = false;
|
prevpt = null;
|
||||||
|
prevrot = null;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -142,8 +144,8 @@ namespace Cryville.Crtr.Components {
|
|||||||
vertices.Add(p + (Vector3)sp);
|
vertices.Add(p + (Vector3)sp);
|
||||||
}
|
}
|
||||||
|
|
||||||
if (headGenerated) {
|
if (prevpt != null) {
|
||||||
float len = (p - prevpt).magnitude;
|
float len = (p - prevpt.Value).magnitude;
|
||||||
lengths.Add(len);
|
lengths.Add(len);
|
||||||
sumLength += len;
|
sumLength += len;
|
||||||
}
|
}
|
||||||
|
Reference in New Issue
Block a user