Bring back assertions fix non convexity in exported mesh
This commit is contained in:
parent
76f3b9ef75
commit
ba686422a8
1
.gitattributes
vendored
1
.gitattributes
vendored
@ -2,3 +2,4 @@
|
|||||||
*.glb filter=lfs diff=lfs merge=lfs -text
|
*.glb filter=lfs diff=lfs merge=lfs -text
|
||||||
*.jpg filter=lfs diff=lfs merge=lfs -text
|
*.jpg filter=lfs diff=lfs merge=lfs -text
|
||||||
*.jpeg filter=lfs diff=lfs merge=lfs -text
|
*.jpeg filter=lfs diff=lfs merge=lfs -text
|
||||||
|
*.blend filter=lfs diff=lfs merge=lfs -text
|
||||||
|
@ -305,30 +305,30 @@ get_convex :: proc(assetman: ^Asset_Manager, path: cstring) -> (result: Loaded_C
|
|||||||
}
|
}
|
||||||
face.normal = plane.normal
|
face.normal = plane.normal
|
||||||
|
|
||||||
// for index in indices[3:] {
|
for index in indices[3:] {
|
||||||
// assert(
|
assert(
|
||||||
// abs(collision.signed_distance_plane(vertices[index].pos, plane)) < 0.01,
|
abs(collision.signed_distance_plane(vertices[index].pos, plane)) < 0.01,
|
||||||
// "mesh has non planar faces",
|
"mesh has non planar faces",
|
||||||
// )
|
)
|
||||||
// }
|
}
|
||||||
|
|
||||||
// first_vert_pos := vertices[indices[0]].pos
|
first_vert_pos := vertices[indices[0]].pos
|
||||||
|
|
||||||
for i in 0 ..< len(indices) {
|
for i in 0 ..< len(indices) {
|
||||||
edge_idx := halfedge.Edge_Index(first_edge_idx + i)
|
edge_idx := halfedge.Edge_Index(first_edge_idx + i)
|
||||||
prev_edge_relative := i == 0 ? len(indices) - 1 : i - 1
|
prev_edge_relative := i == 0 ? len(indices) - 1 : i - 1
|
||||||
next_edge_relative := (i + 1) % len(indices)
|
next_edge_relative := (i + 1) % len(indices)
|
||||||
i1, i2 := indices[i], indices[next_edge_relative]
|
i1, i2 := indices[i], indices[next_edge_relative]
|
||||||
v1, _ := &vertices[i1], &vertices[i2]
|
v1, v2 := &vertices[i1], &vertices[i2]
|
||||||
|
|
||||||
// assert(
|
assert(
|
||||||
// lg.dot(
|
lg.dot(
|
||||||
// lg.cross(v1.pos - first_vert_pos, v2.pos - first_vert_pos),
|
lg.cross(v1.pos - first_vert_pos, v2.pos - first_vert_pos),
|
||||||
// plane.normal,
|
plane.normal,
|
||||||
// ) >=
|
) >=
|
||||||
// 0,
|
0,
|
||||||
// "non convex face or non ccw winding",
|
"non convex face or non ccw winding",
|
||||||
// )
|
)
|
||||||
|
|
||||||
if v1.edge == -1 {
|
if v1.edge == -1 {
|
||||||
v1.edge = edge_idx
|
v1.edge = edge_idx
|
||||||
|
Binary file not shown.
Loading…
x
Reference in New Issue
Block a user