Cycles: Make object flag names more obvious that hey are object and not shader

This commit is contained in:
Sergey Sharybin 2016-12-23 10:49:59 +01:00
parent 2ae39ff6b1
commit b9311b5e5a
15 changed files with 34 additions and 34 deletions

@ -72,7 +72,7 @@ void BVH_FUNCTION_FULL_NAME(BVH)(KernelGlobals *kg,
ss_isect->num_hits = 0; ss_isect->num_hits = 0;
const int object_flag = kernel_tex_fetch(__object_flag, subsurface_object); const int object_flag = kernel_tex_fetch(__object_flag, subsurface_object);
if(!(object_flag & SD_TRANSFORM_APPLIED)) { if(!(object_flag & SD_OBJECT_TRANSFORM_APPLIED)) {
#if BVH_FEATURE(BVH_MOTION) #if BVH_FEATURE(BVH_MOTION)
Transform ob_itfm; Transform ob_itfm;
bvh_instance_motion_push(kg, bvh_instance_motion_push(kg,

@ -61,7 +61,7 @@ ccl_device void BVH_FUNCTION_FULL_NAME(QBVH)(KernelGlobals *kg,
ss_isect->num_hits = 0; ss_isect->num_hits = 0;
const int object_flag = kernel_tex_fetch(__object_flag, subsurface_object); const int object_flag = kernel_tex_fetch(__object_flag, subsurface_object);
if(!(object_flag & SD_TRANSFORM_APPLIED)) { if(!(object_flag & SD_OBJECT_TRANSFORM_APPLIED)) {
#if BVH_FEATURE(BVH_MOTION) #if BVH_FEATURE(BVH_MOTION)
Transform ob_itfm; Transform ob_itfm;
bvh_instance_motion_push(kg, bvh_instance_motion_push(kg,

@ -81,7 +81,7 @@ ccl_device_noinline void motion_triangle_shader_setup(KernelGlobals *kg,
} }
/* Compute face normal. */ /* Compute face normal. */
float3 Ng; float3 Ng;
if(ccl_fetch(sd, flag) & SD_NEGATIVE_SCALE_APPLIED) { if(ccl_fetch(sd, flag) & SD_OBJECT_NEGATIVE_SCALE_APPLIED) {
Ng = normalize(cross(verts[2] - verts[0], verts[1] - verts[0])); Ng = normalize(cross(verts[2] - verts[0], verts[1] - verts[0]));
} }
else { else {

@ -157,7 +157,7 @@ ccl_device_inline float4 primitive_motion_vector(KernelGlobals *kg, ShaderData *
if(is_curve_primitive) { if(is_curve_primitive) {
center = curve_motion_center_location(kg, sd); center = curve_motion_center_location(kg, sd);
if(!(ccl_fetch(sd, flag) & SD_TRANSFORM_APPLIED)) if(!(ccl_fetch(sd, flag) & SD_OBJECT_TRANSFORM_APPLIED))
object_position_transform(kg, sd, &center); object_position_transform(kg, sd, &center);
} }
else else

@ -32,7 +32,7 @@ ccl_device_inline float3 triangle_normal(KernelGlobals *kg, ShaderData *sd)
const float3 v2 = float4_to_float3(kernel_tex_fetch(__prim_tri_verts, tri_vindex.w+2)); const float3 v2 = float4_to_float3(kernel_tex_fetch(__prim_tri_verts, tri_vindex.w+2));
/* return normal */ /* return normal */
if(ccl_fetch(sd, flag) & SD_NEGATIVE_SCALE_APPLIED) if(ccl_fetch(sd, flag) & SD_OBJECT_NEGATIVE_SCALE_APPLIED)
return normalize(cross(v2 - v0, v1 - v0)); return normalize(cross(v2 - v0, v1 - v0));
else else
return normalize(cross(v1 - v0, v2 - v0)); return normalize(cross(v1 - v0, v2 - v0));
@ -55,7 +55,7 @@ ccl_device_inline void triangle_point_normal(KernelGlobals *kg, int object, int
int object_flag = kernel_tex_fetch(__object_flag, object); int object_flag = kernel_tex_fetch(__object_flag, object);
/* compute normal */ /* compute normal */
if(object_flag & SD_NEGATIVE_SCALE_APPLIED) if(object_flag & SD_OBJECT_NEGATIVE_SCALE_APPLIED)
*Ng = normalize(cross(v2 - v0, v1 - v0)); *Ng = normalize(cross(v2 - v0, v1 - v0));
else else
*Ng = normalize(cross(v1 - v0, v2 - v0)); *Ng = normalize(cross(v1 - v0, v2 - v0));

@ -320,7 +320,7 @@ ccl_device void kernel_bake_evaluate(KernelGlobals *kg, ccl_global uint4 *input,
P, Ng, Ng, P, Ng, Ng,
shader, object, prim, shader, object, prim,
u, v, 1.0f, 0.5f, u, v, 1.0f, 0.5f,
!(kernel_tex_fetch(__object_flag, object) & SD_TRANSFORM_APPLIED), !(kernel_tex_fetch(__object_flag, object) & SD_OBJECT_TRANSFORM_APPLIED),
LAMP_NONE); LAMP_NONE);
sd.I = sd.N; sd.I = sd.N;

@ -767,7 +767,7 @@ ccl_device void object_transform_light_sample(KernelGlobals *kg, LightSample *ls
{ {
#ifdef __INSTANCING__ #ifdef __INSTANCING__
/* instance transform */ /* instance transform */
if(!(kernel_tex_fetch(__object_flag, object) & SD_TRANSFORM_APPLIED)) { if(!(kernel_tex_fetch(__object_flag, object) & SD_OBJECT_TRANSFORM_APPLIED)) {
# ifdef __OBJECT_MOTION__ # ifdef __OBJECT_MOTION__
Transform itfm; Transform itfm;
Transform tfm = object_fetch_transform_motion_test(kg, object, time, &itfm); Transform tfm = object_fetch_transform_motion_test(kg, object, time, &itfm);

@ -777,11 +777,11 @@ ccl_device_inline float4 kernel_path_integrate(KernelGlobals *kg,
/* holdout */ /* holdout */
#ifdef __HOLDOUT__ #ifdef __HOLDOUT__
if((sd.flag & (SD_HOLDOUT|SD_HOLDOUT_MASK)) && (state.flag & PATH_RAY_CAMERA)) { if((sd.flag & (SD_HOLDOUT|SD_OBJECT_HOLDOUT_MASK)) && (state.flag & PATH_RAY_CAMERA)) {
if(kernel_data.background.transparent) { if(kernel_data.background.transparent) {
float3 holdout_weight; float3 holdout_weight;
if(sd.flag & SD_HOLDOUT_MASK) if(sd.flag & SD_OBJECT_HOLDOUT_MASK)
holdout_weight = make_float3(1.0f, 1.0f, 1.0f); holdout_weight = make_float3(1.0f, 1.0f, 1.0f);
else else
holdout_weight = shader_holdout_eval(kg, &sd); holdout_weight = shader_holdout_eval(kg, &sd);
@ -790,7 +790,7 @@ ccl_device_inline float4 kernel_path_integrate(KernelGlobals *kg,
L_transparent += average(holdout_weight*throughput); L_transparent += average(holdout_weight*throughput);
} }
if(sd.flag & SD_HOLDOUT_MASK) if(sd.flag & SD_OBJECT_HOLDOUT_MASK)
break; break;
} }
#endif /* __HOLDOUT__ */ #endif /* __HOLDOUT__ */

@ -473,11 +473,11 @@ ccl_device float4 kernel_branched_path_integrate(KernelGlobals *kg, RNG *rng, in
/* holdout */ /* holdout */
#ifdef __HOLDOUT__ #ifdef __HOLDOUT__
if(sd.flag & (SD_HOLDOUT|SD_HOLDOUT_MASK)) { if(sd.flag & (SD_HOLDOUT|SD_OBJECT_HOLDOUT_MASK)) {
if(kernel_data.background.transparent) { if(kernel_data.background.transparent) {
float3 holdout_weight; float3 holdout_weight;
if(sd.flag & SD_HOLDOUT_MASK) if(sd.flag & SD_OBJECT_HOLDOUT_MASK)
holdout_weight = make_float3(1.0f, 1.0f, 1.0f); holdout_weight = make_float3(1.0f, 1.0f, 1.0f);
else else
holdout_weight = shader_holdout_eval(kg, &sd); holdout_weight = shader_holdout_eval(kg, &sd);
@ -486,7 +486,7 @@ ccl_device float4 kernel_branched_path_integrate(KernelGlobals *kg, RNG *rng, in
L_transparent += average(holdout_weight*throughput); L_transparent += average(holdout_weight*throughput);
} }
if(sd.flag & SD_HOLDOUT_MASK) if(sd.flag & SD_OBJECT_HOLDOUT_MASK)
break; break;
} }
#endif /* __HOLDOUT__ */ #endif /* __HOLDOUT__ */

@ -298,7 +298,7 @@ ccl_device_inline void shader_setup_from_sample(KernelGlobals *kg,
ccl_fetch(sd, N) = triangle_smooth_normal(kg, ccl_fetch(sd, prim), ccl_fetch(sd, u), ccl_fetch(sd, v)); ccl_fetch(sd, N) = triangle_smooth_normal(kg, ccl_fetch(sd, prim), ccl_fetch(sd, u), ccl_fetch(sd, v));
#ifdef __INSTANCING__ #ifdef __INSTANCING__
if(!(ccl_fetch(sd, flag) & SD_TRANSFORM_APPLIED)) { if(!(ccl_fetch(sd, flag) & SD_OBJECT_TRANSFORM_APPLIED)) {
object_normal_transform_auto(kg, sd, &ccl_fetch(sd, N)); object_normal_transform_auto(kg, sd, &ccl_fetch(sd, N));
} }
#endif #endif
@ -309,7 +309,7 @@ ccl_device_inline void shader_setup_from_sample(KernelGlobals *kg,
triangle_dPdudv(kg, ccl_fetch(sd, prim), &ccl_fetch(sd, dPdu), &ccl_fetch(sd, dPdv)); triangle_dPdudv(kg, ccl_fetch(sd, prim), &ccl_fetch(sd, dPdu), &ccl_fetch(sd, dPdv));
# ifdef __INSTANCING__ # ifdef __INSTANCING__
if(!(ccl_fetch(sd, flag) & SD_TRANSFORM_APPLIED)) { if(!(ccl_fetch(sd, flag) & SD_OBJECT_TRANSFORM_APPLIED)) {
object_dir_transform_auto(kg, sd, &ccl_fetch(sd, dPdu)); object_dir_transform_auto(kg, sd, &ccl_fetch(sd, dPdu));
object_dir_transform_auto(kg, sd, &ccl_fetch(sd, dPdv)); object_dir_transform_auto(kg, sd, &ccl_fetch(sd, dPdv));
} }
@ -364,7 +364,7 @@ ccl_device void shader_setup_from_displace(KernelGlobals *kg, ShaderData *sd,
P, Ng, I, P, Ng, I,
shader, object, prim, shader, object, prim,
u, v, 0.0f, 0.5f, u, v, 0.0f, 0.5f,
!(kernel_tex_fetch(__object_flag, object) & SD_TRANSFORM_APPLIED), !(kernel_tex_fetch(__object_flag, object) & SD_OBJECT_TRANSFORM_APPLIED),
LAMP_NONE); LAMP_NONE);
} }

@ -732,16 +732,16 @@ enum ShaderDataFlag {
SD_VOLUME_CUBIC|SD_HAS_BUMP|SD_HAS_DISPLACEMENT|SD_HAS_CONSTANT_EMISSION), SD_VOLUME_CUBIC|SD_HAS_BUMP|SD_HAS_DISPLACEMENT|SD_HAS_CONSTANT_EMISSION),
/* object flags */ /* object flags */
SD_HOLDOUT_MASK = (1 << 24), /* holdout for camera rays */ SD_OBJECT_HOLDOUT_MASK = (1 << 24), /* holdout for camera rays */
SD_OBJECT_MOTION = (1 << 25), /* has object motion blur */ SD_OBJECT_MOTION = (1 << 25), /* has object motion blur */
SD_TRANSFORM_APPLIED = (1 << 26), /* vertices have transform applied */ SD_OBJECT_TRANSFORM_APPLIED = (1 << 26), /* vertices have transform applied */
SD_NEGATIVE_SCALE_APPLIED = (1 << 27), /* vertices have negative scale applied */ SD_OBJECT_NEGATIVE_SCALE_APPLIED = (1 << 27), /* vertices have negative scale applied */
SD_OBJECT_HAS_VOLUME = (1 << 28), /* object has a volume shader */ SD_OBJECT_HAS_VOLUME = (1 << 28), /* object has a volume shader */
SD_OBJECT_INTERSECTS_VOLUME = (1 << 29), /* object intersects AABB of an object with volume shader */ SD_OBJECT_INTERSECTS_VOLUME = (1 << 29), /* object intersects AABB of an object with volume shader */
SD_OBJECT_HAS_VERTEX_MOTION = (1 << 30), /* has position for motion vertices */ SD_OBJECT_HAS_VERTEX_MOTION = (1 << 30), /* has position for motion vertices */
SD_OBJECT_FLAGS = (SD_HOLDOUT_MASK|SD_OBJECT_MOTION|SD_TRANSFORM_APPLIED| SD_OBJECT_FLAGS = (SD_OBJECT_HOLDOUT_MASK|SD_OBJECT_MOTION|SD_OBJECT_TRANSFORM_APPLIED|
SD_NEGATIVE_SCALE_APPLIED|SD_OBJECT_HAS_VOLUME| SD_OBJECT_NEGATIVE_SCALE_APPLIED|SD_OBJECT_HAS_VOLUME|
SD_OBJECT_INTERSECTS_VOLUME) SD_OBJECT_INTERSECTS_VOLUME)
}; };

@ -712,7 +712,7 @@ bool OSLRenderServices::get_object_standard_attribute(KernelGlobals *kg, ShaderD
else else
motion_triangle_vertices(kg, sd->object, sd->prim, sd->time, P); motion_triangle_vertices(kg, sd->object, sd->prim, sd->time, P);
if(!(sd->flag & SD_TRANSFORM_APPLIED)) { if(!(sd->flag & SD_OBJECT_TRANSFORM_APPLIED)) {
object_position_transform(kg, sd, &P[0]); object_position_transform(kg, sd, &P[0]);
object_position_transform(kg, sd, &P[1]); object_position_transform(kg, sd, &P[1]);
object_position_transform(kg, sd, &P[2]); object_position_transform(kg, sd, &P[2]);

@ -137,13 +137,13 @@ ccl_device void kernel_holdout_emission_blurring_pathtermination_ao(
/* holdout */ /* holdout */
#ifdef __HOLDOUT__ #ifdef __HOLDOUT__
if((ccl_fetch(sd, flag) & (SD_HOLDOUT|SD_HOLDOUT_MASK)) && if((ccl_fetch(sd, flag) & (SD_HOLDOUT|SD_OBJECT_HOLDOUT_MASK)) &&
(state->flag & PATH_RAY_CAMERA)) (state->flag & PATH_RAY_CAMERA))
{ {
if(kernel_data.background.transparent) { if(kernel_data.background.transparent) {
float3 holdout_weight; float3 holdout_weight;
if(ccl_fetch(sd, flag) & SD_HOLDOUT_MASK) if(ccl_fetch(sd, flag) & SD_OBJECT_HOLDOUT_MASK)
holdout_weight = make_float3(1.0f, 1.0f, 1.0f); holdout_weight = make_float3(1.0f, 1.0f, 1.0f);
else else
holdout_weight = shader_holdout_eval(kg, sd); holdout_weight = shader_holdout_eval(kg, sd);
@ -152,7 +152,7 @@ ccl_device void kernel_holdout_emission_blurring_pathtermination_ao(
L_transparent_coop[ray_index] += average(holdout_weight*throughput); L_transparent_coop[ray_index] += average(holdout_weight*throughput);
} }
if(ccl_fetch(sd, flag) & SD_HOLDOUT_MASK) { if(ccl_fetch(sd, flag) & SD_OBJECT_HOLDOUT_MASK) {
ASSIGN_RAY_STATE(ray_state, ray_index, RAY_UPDATE_BUFFER); ASSIGN_RAY_STATE(ray_state, ray_index, RAY_UPDATE_BUFFER);
*enqueue_flag = 1; *enqueue_flag = 1;
} }

@ -57,7 +57,7 @@ ccl_device_inline float wireframe(KernelGlobals *kg,
else else
motion_triangle_vertices(kg, ccl_fetch(sd, object), ccl_fetch(sd, prim), ccl_fetch(sd, time), Co); motion_triangle_vertices(kg, ccl_fetch(sd, object), ccl_fetch(sd, prim), ccl_fetch(sd, time), Co);
if(!(ccl_fetch(sd, flag) & SD_TRANSFORM_APPLIED)) { if(!(ccl_fetch(sd, flag) & SD_OBJECT_TRANSFORM_APPLIED)) {
object_position_transform(kg, sd, &Co[0]); object_position_transform(kg, sd, &Co[0]);
object_position_transform(kg, sd, &Co[1]); object_position_transform(kg, sd, &Co[1]);
object_position_transform(kg, sd, &Co[2]); object_position_transform(kg, sd, &Co[2]);

@ -410,7 +410,7 @@ void ObjectManager::device_update_object_transform(UpdateObejctTransformState *s
/* Object flag. */ /* Object flag. */
if(ob->use_holdout) { if(ob->use_holdout) {
flag |= SD_HOLDOUT_MASK; flag |= SD_OBJECT_HOLDOUT_MASK;
} }
state->object_flag[object_index] = flag; state->object_flag[object_index] = flag;
@ -716,9 +716,9 @@ void ObjectManager::apply_static_transforms(DeviceScene *dscene, Scene *scene, u
if(progress.get_cancel()) return; if(progress.get_cancel()) return;
} }
object_flag[i] |= SD_TRANSFORM_APPLIED; object_flag[i] |= SD_OBJECT_TRANSFORM_APPLIED;
if(object->mesh->transform_negative_scaled) if(object->mesh->transform_negative_scaled)
object_flag[i] |= SD_NEGATIVE_SCALE_APPLIED; object_flag[i] |= SD_OBJECT_NEGATIVE_SCALE_APPLIED;
} }
else else
have_instancing = true; have_instancing = true;