diff options
author | Brecht Van Lommel <brechtvanlommel@pandora.be> | 2012-04-16 12:35:21 +0400 |
---|---|---|
committer | Brecht Van Lommel <brechtvanlommel@pandora.be> | 2012-04-16 12:35:21 +0400 |
commit | 93df58160e56f81bb588a7df6a3a3d3d77365ce5 (patch) | |
tree | f53e6d8a7d2c7270f2ae3d53bd2d5f8ec5872153 /intern/cycles/render/object.cpp | |
parent | 9cf2e5baf64a927325efeba5ed20c20dfec3da57 (diff) |
Fix #30966: cycles nan mesh vertices got set to (0, 0, 0), now remove them instead.
Diffstat (limited to 'intern/cycles/render/object.cpp')
-rw-r--r-- | intern/cycles/render/object.cpp | 8 |
1 files changed, 4 insertions, 4 deletions
diff --git a/intern/cycles/render/object.cpp b/intern/cycles/render/object.cpp index f83c85c632d..5f7a5810c09 100644 --- a/intern/cycles/render/object.cpp +++ b/intern/cycles/render/object.cpp @@ -54,7 +54,7 @@ void Object::apply_transform() return; for(size_t i = 0; i < mesh->verts.size(); i++) - mesh->verts[i] = transform(&tfm, mesh->verts[i]); + mesh->verts[i] = transform_point(&tfm, mesh->verts[i]); Attribute *attr_fN = mesh->attributes.find(Attribute::STD_FACE_NORMAL); Attribute *attr_vN = mesh->attributes.find(Attribute::STD_VERTEX_NORMAL); @@ -159,9 +159,9 @@ void ObjectManager::device_update_transforms(Device *device, DeviceScene *dscene } else { foreach(Mesh::Triangle& t, mesh->triangles) { - float3 p1 = transform(&tfm, mesh->verts[t.v[0]]); - float3 p2 = transform(&tfm, mesh->verts[t.v[1]]); - float3 p3 = transform(&tfm, mesh->verts[t.v[2]]); + float3 p1 = transform_point(&tfm, mesh->verts[t.v[0]]); + float3 p2 = transform_point(&tfm, mesh->verts[t.v[1]]); + float3 p3 = transform_point(&tfm, mesh->verts[t.v[2]]); surface_area += triangle_area(p1, p2, p3); } |