[Bf-blender-cvs] [e8b1cfe] master: Cycles code refactor: replace magic ~0 values in the code with defines.
Brecht Van Lommel
noreply at git.blender.org
Sat Mar 29 15:33:07 CET 2014
Commit: e8b1cfed0a3afbf69b5bd5a7e0a51381622e844f
Author: Brecht Van Lommel
Date: Sat Mar 29 13:03:47 2014 +0100
https://developer.blender.org/rBe8b1cfed0a3afbf69b5bd5a7e0a51381622e844f
Cycles code refactor: replace magic ~0 values in the code with defines.
===================================================================
M intern/cycles/kernel/geom/geom_bvh_subsurface.h
M intern/cycles/kernel/geom/geom_bvh_traversal.h
M intern/cycles/kernel/geom/geom_curve.h
M intern/cycles/kernel/geom/geom_motion_triangle.h
M intern/cycles/kernel/geom/geom_object.h
M intern/cycles/kernel/geom/geom_triangle.h
M intern/cycles/kernel/kernel_camera.h
M intern/cycles/kernel/kernel_emission.h
M intern/cycles/kernel/kernel_light.h
M intern/cycles/kernel/kernel_path.h
M intern/cycles/kernel/kernel_path_state.h
M intern/cycles/kernel/kernel_primitive.h
M intern/cycles/kernel/kernel_shader.h
M intern/cycles/kernel/kernel_shadow.h
M intern/cycles/kernel/kernel_types.h
M intern/cycles/kernel/kernel_volume.h
M intern/cycles/kernel/osl/osl_services.cpp
M intern/cycles/kernel/osl/osl_shader.cpp
M intern/cycles/kernel/svm/svm_attribute.h
M intern/cycles/kernel/svm/svm_closure.h
M intern/cycles/kernel/svm/svm_image.h
M intern/cycles/kernel/svm/svm_tex_coord.h
M intern/cycles/kernel/svm/svm_vector_transform.h
M intern/cycles/kernel/svm/svm_wireframe.h
M intern/cycles/render/background.cpp
M intern/cycles/render/mesh_displace.cpp
===================================================================
diff --git a/intern/cycles/kernel/geom/geom_bvh_subsurface.h b/intern/cycles/kernel/geom/geom_bvh_subsurface.h
index 994c98e..ae4641d 100644
--- a/intern/cycles/kernel/geom/geom_bvh_subsurface.h
+++ b/intern/cycles/kernel/geom/geom_bvh_subsurface.h
@@ -51,10 +51,10 @@ ccl_device uint BVH_FUNCTION_NAME(KernelGlobals *kg, const Ray *ray, Intersectio
const float tmax = ray->t;
float3 P = ray->P;
float3 idir = bvh_inverse_direction(ray->D);
- int object = ~0;
+ int object = OBJECT_NONE;
float isect_t = tmax;
- const uint visibility = ~0;
+ const uint visibility = PATH_RAY_ALL_VISIBILITY;
uint num_hits = 0;
#if FEATURE(BVH_MOTION)
@@ -205,7 +205,7 @@ ccl_device uint BVH_FUNCTION_NAME(KernelGlobals *kg, const Ray *ray, Intersectio
/* primitive intersection */
for(; primAddr < primAddr2; primAddr++) {
/* only primitives from the same object */
- uint tri_object = (object == ~0)? kernel_tex_fetch(__prim_object, primAddr): object;
+ uint tri_object = (object == OBJECT_NONE)? kernel_tex_fetch(__prim_object, primAddr): object;
if(tri_object != subsurface_object)
continue;
@@ -267,7 +267,7 @@ ccl_device uint BVH_FUNCTION_NAME(KernelGlobals *kg, const Ray *ray, Intersectio
#if FEATURE(BVH_INSTANCING)
if(stackPtr >= 0) {
- kernel_assert(object != ~0);
+ kernel_assert(object != OBJECT_NONE);
/* instance pop */
#if FEATURE(BVH_MOTION)
@@ -286,7 +286,7 @@ ccl_device uint BVH_FUNCTION_NAME(KernelGlobals *kg, const Ray *ray, Intersectio
gen_idirsplat_swap(pn, shuf_identity, shuf_swap, idir, idirsplat, shufflexyz);
#endif
- object = ~0;
+ object = OBJECT_NONE;
nodeAddr = traversalStack[stackPtr];
--stackPtr;
}
diff --git a/intern/cycles/kernel/geom/geom_bvh_traversal.h b/intern/cycles/kernel/geom/geom_bvh_traversal.h
index e838fba..153efe3 100644
--- a/intern/cycles/kernel/geom/geom_bvh_traversal.h
+++ b/intern/cycles/kernel/geom/geom_bvh_traversal.h
@@ -56,15 +56,15 @@ ccl_device bool BVH_FUNCTION_NAME
const float tmax = ray->t;
float3 P = ray->P;
float3 idir = bvh_inverse_direction(ray->D);
- int object = ~0;
+ int object = OBJECT_NONE;
#if FEATURE(BVH_MOTION)
Transform ob_tfm;
#endif
isect->t = tmax;
- isect->object = ~0;
- isect->prim = ~0;
+ isect->object = OBJECT_NONE;
+ isect->prim = PRIM_NONE;
isect->u = 0.0f;
isect->v = 0.0f;
@@ -332,7 +332,7 @@ ccl_device bool BVH_FUNCTION_NAME
#if FEATURE(BVH_INSTANCING)
if(stackPtr >= 0) {
- kernel_assert(object != ~0);
+ kernel_assert(object != OBJECT_NONE);
/* instance pop */
#if FEATURE(BVH_MOTION)
@@ -351,14 +351,14 @@ ccl_device bool BVH_FUNCTION_NAME
gen_idirsplat_swap(pn, shuf_identity, shuf_swap, idir, idirsplat, shufflexyz);
#endif
- object = ~0;
+ object = OBJECT_NONE;
nodeAddr = traversalStack[stackPtr];
--stackPtr;
}
#endif
} while(nodeAddr != ENTRYPOINT_SENTINEL);
- return (isect->prim != ~0);
+ return (isect->prim != PRIM_NONE);
}
#undef FEATURE
diff --git a/intern/cycles/kernel/geom/geom_curve.h b/intern/cycles/kernel/geom/geom_curve.h
index f13f92e..9d2f2dd 100644
--- a/intern/cycles/kernel/geom/geom_curve.h
+++ b/intern/cycles/kernel/geom/geom_curve.h
@@ -241,7 +241,7 @@ ccl_device_inline bool bvh_cardinal_curve_intersect(KernelGlobals *kg, Intersect
P_curve[3] = _mm_load_ps(&kg->__curve_keys.data[kb].x);
}
else {
- int fobject = (object == ~0)? kernel_tex_fetch(__prim_object, curveAddr): object;
+ int fobject = (object == OBJECT_NONE)? kernel_tex_fetch(__prim_object, curveAddr): object;
motion_cardinal_curve_keys(kg, fobject, prim, time, ka, k0, k1, kb, (float4*)&P_curve);
}
@@ -308,7 +308,7 @@ ccl_device_inline bool bvh_cardinal_curve_intersect(KernelGlobals *kg, Intersect
P_curve[3] = kernel_tex_fetch(__curve_keys, kb);
}
else {
- int fobject = (object == ~0)? kernel_tex_fetch(__prim_object, curveAddr): object;
+ int fobject = (object == OBJECT_NONE)? kernel_tex_fetch(__prim_object, curveAddr): object;
motion_cardinal_curve_keys(kg, fobject, prim, time, ka, k0, k1, kb, P_curve);
}
@@ -618,7 +618,7 @@ ccl_device_inline bool bvh_curve_intersect(KernelGlobals *kg, Intersection *isec
P_curve[1]= kernel_tex_fetch(__curve_keys, k1);
}
else {
- int fobject = (object == ~0)? kernel_tex_fetch(__prim_object, curveAddr): object;
+ int fobject = (object == OBJECT_NONE)? kernel_tex_fetch(__prim_object, curveAddr): object;
motion_curve_keys(kg, fobject, prim, time, k0, k1, P_curve);
}
@@ -653,7 +653,7 @@ ccl_device_inline bool bvh_curve_intersect(KernelGlobals *kg, Intersection *isec
P_curve[1] = _mm_load_ps(&kg->__curve_keys.data[k1].x);
}
else {
- int fobject = (object == ~0)? kernel_tex_fetch(__prim_object, curveAddr): object;
+ int fobject = (object == OBJECT_NONE)? kernel_tex_fetch(__prim_object, curveAddr): object;
motion_curve_keys(kg, fobject, prim, time, k0, k1, (float4*)&P_curve);
}
@@ -863,7 +863,7 @@ ccl_device_inline float3 bvh_curve_refine(KernelGlobals *kg, ShaderData *sd, con
float3 P = ray->P;
float3 D = ray->D;
- if(isect->object != ~0) {
+ if(isect->object != OBJECT_NONE) {
#ifdef __OBJECT_MOTION__
Transform tfm = sd->ob_itfm;
#else
@@ -981,7 +981,7 @@ ccl_device_inline float3 bvh_curve_refine(KernelGlobals *kg, ShaderData *sd, con
/*sd->curve_transparency = isect->v;*/
/*sd->curve_radius = sd->u * gd * l + r1;*/
- if(isect->object != ~0) {
+ if(isect->object != OBJECT_NONE) {
#ifdef __OBJECT_MOTION__
Transform tfm = sd->ob_tfm;
#else
diff --git a/intern/cycles/kernel/geom/geom_motion_triangle.h b/intern/cycles/kernel/geom/geom_motion_triangle.h
index 05642d8..08ddc89 100644
--- a/intern/cycles/kernel/geom/geom_motion_triangle.h
+++ b/intern/cycles/kernel/geom/geom_motion_triangle.h
@@ -117,7 +117,7 @@ ccl_device_inline float3 motion_triangle_refine(KernelGlobals *kg, ShaderData *s
float t = isect->t;
#ifdef __INTERSECTION_REFINE__
- if(isect->object != ~0) {
+ if(isect->object != OBJECT_NONE) {
#ifdef __OBJECT_MOTION__
Transform tfm = sd->ob_itfm;
#else
@@ -144,7 +144,7 @@ ccl_device_inline float3 motion_triangle_refine(KernelGlobals *kg, ShaderData *s
/* compute refined position */
P = P + D*rt;
- if(isect->object != ~0) {
+ if(isect->object != OBJECT_NONE) {
#ifdef __OBJECT_MOTION__
Transform tfm = sd->ob_tfm;
#else
@@ -168,7 +168,7 @@ ccl_device_inline float3 motion_triangle_refine_subsurface(KernelGlobals *kg, Sh
float t = isect->t;
#ifdef __INTERSECTION_REFINE__
- if(isect->object != ~0) {
+ if(isect->object != OBJECT_NONE) {
#ifdef __OBJECT_MOTION__
Transform tfm = sd->ob_itfm;
#else
@@ -194,7 +194,7 @@ ccl_device_inline float3 motion_triangle_refine_subsurface(KernelGlobals *kg, Sh
P = P + D*rt;
- if(isect->object != ~0) {
+ if(isect->object != OBJECT_NONE) {
#ifdef __OBJECT_MOTION__
Transform tfm = sd->ob_tfm;
#else
@@ -293,7 +293,7 @@ ccl_device_inline bool motion_triangle_intersect(KernelGlobals *kg, Intersection
{
/* primitive index for vertex location lookup */
int prim = kernel_tex_fetch(__prim_index, triAddr);
- int fobject = (object == ~0)? kernel_tex_fetch(__prim_object, triAddr): object;
+ int fobject = (object == OBJECT_NONE)? kernel_tex_fetch(__prim_object, triAddr): object;
/* get vertex locations for intersection */
float3 verts[3];
@@ -327,7 +327,7 @@ ccl_device_inline void motion_triangle_intersect_subsurface(KernelGlobals *kg, I
{
/* primitive index for vertex location lookup */
int prim = kernel_tex_fetch(__prim_index, triAddr);
- int fobject = (object == ~0)? kernel_tex_fetch(__prim_object, triAddr): object;
+ int fobject = (object == OBJECT_NONE)? kernel_tex_fetch(__prim_object, triAddr): object;
/* get vertex locations for intersection */
float3 verts[3];
diff --git a/intern/cycles/kernel/geom/geom_object.h b/intern/cycles/kernel/geom/geom_object.h
index b1106c2..06f7d28 100644
--- a/intern/cycles/kernel/geom/geom_object.h
+++ b/intern/cycles/kernel/geom/geom_object.h
@@ -162,7 +162,7 @@ ccl_device_inline void object_inverse_dir_transform(KernelGlobals *kg, ShaderDat
ccl_device_inline float3 object_location(KernelGlobals *kg, ShaderData *sd)
{
- if(sd->object == ~0)
+ if(sd->object == OBJECT_NONE)
return make_float3(0.0f, 0.0f, 0.0f);
#ifdef __OBJECT_MOTION__
@@ -182,7 +182,7 @@ ccl_device_inline float object_surface_area(KernelGlobals *kg, int object)
ccl_device_inline float object_pass_id(KernelGlobals *kg, int object)
{
- if(object == ~0)
+ if(object == OBJECT_NONE)
return 0.0f;
int offset = object*OBJECT_SIZE + OBJECT_PROPERTIES;
@@ -192,7 +192,7 @@ ccl_device_inline float object_pass_id(KernelGlobals *kg, int object)
ccl_device_inline float object_random_number(KernelGlobals *kg, int object)
{
- if(object == ~0)
+ if(object == OBJECT_NONE)
return 0.0f;
int offset = object*OBJECT_SIZE + OBJECT_PROPERTIES;
@@ -202,7 +202,7 @@ ccl_device_inline float object_random_number(KernelGlobals *kg, int object)
ccl_device_inline uint object_particle_id(KernelGlobals *kg, int object)
{
- if(object == ~0)
+ if(object == OBJECT_NONE)
return 0.0f;
int offset = object*OBJECT_SIZE + OBJECT_PROPERTIES;
@@ -212,7 +212,7 @@ ccl_device_inline uint object_particle_id(KernelGlobals *kg, int object)
ccl_device_inline float3 object_dupli_generated(KernelGlobals *kg, int object)
{
- if(object == ~0)
+ if(object == OBJECT_NONE)
return make_float3(0.0f, 0.0f, 0.0f);
int offset = object*OBJECT_SIZE + OBJECT_DUPLI;
@@ -222,7 +222,7 @@ ccl_device_inline float3 object_dupli_generated(KernelGlobals *kg, int object)
ccl_device_inline float3 object_dupli_uv(KernelGlobals *kg, int object)
{
- if(object == ~0)
+ if(object == OBJECT_NONE)
return make_float3(0.0f, 0.0f, 0.0f);
int offset = object*OBJECT_SIZE + OBJECT_DUPLI;
diff --git a/intern/cycles/kernel/geom/geom_triangle.h b/intern/cycles/kernel/geom/geom_triangle.h
index 7b115da..ab59524 100644
--- a/intern/cycles/kernel/geom/geom_triangle.h
+++ b/intern/cycles/kernel/geom/geom_triangle.h
@@ -28,7 +28,7 @@ ccl_device_inline float3 triangle_refine(KernelGlobals *kg, ShaderData *sd, cons
float t = isect->t;
#ifdef __INTERSECTION_REFINE__
- if(isect->o
@@ Diff output truncated at 10240 characters. @@
More information about the Bf-blender-cvs
mailing list