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/kernel/svm/svm_tex_coord.h | |
parent | 9cf2e5baf64a927325efeba5ed20c20dfec3da57 (diff) |
Fix #30966: cycles nan mesh vertices got set to (0, 0, 0), now remove them instead.
Diffstat (limited to 'intern/cycles/kernel/svm/svm_tex_coord.h')
-rw-r--r-- | intern/cycles/kernel/svm/svm_tex_coord.h | 30 |
1 files changed, 15 insertions, 15 deletions
diff --git a/intern/cycles/kernel/svm/svm_tex_coord.h b/intern/cycles/kernel/svm/svm_tex_coord.h index bcf3716ae57..f494b6d66e1 100644 --- a/intern/cycles/kernel/svm/svm_tex_coord.h +++ b/intern/cycles/kernel/svm/svm_tex_coord.h @@ -34,7 +34,7 @@ __device void svm_node_tex_coord(KernelGlobals *kg, ShaderData *sd, float *stack case NODE_TEXCO_OBJECT: { if(sd->object != ~0) { Transform tfm = object_fetch_transform(kg, sd->object, OBJECT_INVERSE_TRANSFORM); - data = transform(&tfm, sd->P); + data = transform_point(&tfm, sd->P); } else data = sd->P; @@ -44,18 +44,18 @@ __device void svm_node_tex_coord(KernelGlobals *kg, ShaderData *sd, float *stack Transform tfm = kernel_data.cam.worldtocamera; if(sd->object != ~0) - data = transform(&tfm, sd->P); + data = transform_point(&tfm, sd->P); else - data = transform(&tfm, sd->P + svm_background_offset(kg)); + data = transform_point(&tfm, sd->P + svm_background_offset(kg)); break; } case NODE_TEXCO_WINDOW: { Transform tfm = kernel_data.cam.worldtondc; if(sd->object != ~0) - data = transform(&tfm, sd->P); + data = transform_perspective(&tfm, sd->P); else - data = transform(&tfm, sd->P + svm_background_offset(kg)); + data = transform_perspective(&tfm, sd->P + svm_background_offset(kg)); break; } case NODE_TEXCO_REFLECTION: { @@ -79,7 +79,7 @@ __device void svm_node_tex_coord_bump_dx(KernelGlobals *kg, ShaderData *sd, floa case NODE_TEXCO_OBJECT: { if(sd->object != ~0) { Transform tfm = object_fetch_transform(kg, sd->object, OBJECT_INVERSE_TRANSFORM); - data = transform(&tfm, sd->P + sd->dP.dx); + data = transform_point(&tfm, sd->P + sd->dP.dx); } else data = sd->P + sd->dP.dx; @@ -89,18 +89,18 @@ __device void svm_node_tex_coord_bump_dx(KernelGlobals *kg, ShaderData *sd, floa Transform tfm = kernel_data.cam.worldtocamera; if(sd->object != ~0) - data = transform(&tfm, sd->P + sd->dP.dx); + data = transform_point(&tfm, sd->P + sd->dP.dx); else - data = transform(&tfm, sd->P + sd->dP.dx + svm_background_offset(kg)); + data = transform_point(&tfm, sd->P + sd->dP.dx + svm_background_offset(kg)); break; } case NODE_TEXCO_WINDOW: { Transform tfm = kernel_data.cam.worldtondc; if(sd->object != ~0) - data = transform(&tfm, sd->P + sd->dP.dx); + data = transform_perspective(&tfm, sd->P + sd->dP.dx); else - data = transform(&tfm, sd->P + sd->dP.dx + svm_background_offset(kg)); + data = transform_perspective(&tfm, sd->P + sd->dP.dx + svm_background_offset(kg)); break; } case NODE_TEXCO_REFLECTION: { @@ -127,7 +127,7 @@ __device void svm_node_tex_coord_bump_dy(KernelGlobals *kg, ShaderData *sd, floa case NODE_TEXCO_OBJECT: { if(sd->object != ~0) { Transform tfm = object_fetch_transform(kg, sd->object, OBJECT_INVERSE_TRANSFORM); - data = transform(&tfm, sd->P + sd->dP.dy); + data = transform_point(&tfm, sd->P + sd->dP.dy); } else data = sd->P + sd->dP.dy; @@ -137,18 +137,18 @@ __device void svm_node_tex_coord_bump_dy(KernelGlobals *kg, ShaderData *sd, floa Transform tfm = kernel_data.cam.worldtocamera; if(sd->object != ~0) - data = transform(&tfm, sd->P + sd->dP.dy); + data = transform_point(&tfm, sd->P + sd->dP.dy); else - data = transform(&tfm, sd->P + sd->dP.dy + svm_background_offset(kg)); + data = transform_point(&tfm, sd->P + sd->dP.dy + svm_background_offset(kg)); break; } case NODE_TEXCO_WINDOW: { Transform tfm = kernel_data.cam.worldtondc; if(sd->object != ~0) - data = transform(&tfm, sd->P + sd->dP.dy); + data = transform_perspective(&tfm, sd->P + sd->dP.dy); else - data = transform(&tfm, sd->P + sd->dP.dy + svm_background_offset(kg)); + data = transform_perspective(&tfm, sd->P + sd->dP.dy + svm_background_offset(kg)); break; } case NODE_TEXCO_REFLECTION: { |