Welcome to mirror list, hosted at ThFree Co, Russian Federation.

git.blender.org/blender.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorBrecht Van Lommel <brechtvanlommel@pandora.be>2013-01-03 16:08:54 +0400
committerBrecht Van Lommel <brechtvanlommel@pandora.be>2013-01-03 16:08:54 +0400
commit57cf48e7c6fd04f864072c21433a822907774f78 (patch)
tree45f3fa51f532a03e25c4d8ffa0c1be58027d01b2 /intern/cycles/kernel/kernel_bvh.h
parent8ca977b16e745f716d044a5b6ccbb5be4a70ac94 (diff)
Cycles Hair: refactoring to support generic attributes for hair curves. There
should be no functional changes yet. UV, tangent and intercept are now stored as attributes, with the intention to add more like multiple uv's, vertex colors, generated coordinates and motion vectors later. Things got a bit messy due to having both triangle and curve data in the same mesh data structure, which also gives us two sets of attributes. This will get cleaned up when we split the mesh class.
Diffstat (limited to 'intern/cycles/kernel/kernel_bvh.h')
-rw-r--r--intern/cycles/kernel/kernel_bvh.h12
1 files changed, 6 insertions, 6 deletions
diff --git a/intern/cycles/kernel/kernel_bvh.h b/intern/cycles/kernel/kernel_bvh.h
index 15af35a05f8..d32287f91e8 100644
--- a/intern/cycles/kernel/kernel_bvh.h
+++ b/intern/cycles/kernel/kernel_bvh.h
@@ -214,13 +214,13 @@ __device_inline void bvh_curve_intersect(KernelGlobals *kg, Intersection *isect,
int flags = kernel_data.curve_kernel_data.curveflags;
int prim = kernel_tex_fetch(__prim_index, triAddr);
- float4 v00 = kernel_tex_fetch(__cur_segs, prim);
+ float4 v00 = kernel_tex_fetch(__curve_segments, prim);
int v1 = __float_as_int(v00.x);
int v2 = __float_as_int(v00.y);
- float4 P1 = kernel_tex_fetch(__cur_keys, v1);
- float4 P2 = kernel_tex_fetch(__cur_keys, v2);
+ float4 P1 = kernel_tex_fetch(__curve_keys, v1);
+ float4 P2 = kernel_tex_fetch(__curve_keys, v2);
float l = v00.w;
float r1 = P1.w;
@@ -720,13 +720,13 @@ __device_inline float3 bvh_curve_refine(KernelGlobals *kg, ShaderData *sd, const
}
int prim = kernel_tex_fetch(__prim_index, isect->prim);
- float4 v00 = kernel_tex_fetch(__cur_segs, prim);
+ float4 v00 = kernel_tex_fetch(__curve_segments, prim);
int v1 = __float_as_int(v00.x);
int v2 = __float_as_int(v00.y);
- float4 P1 = kernel_tex_fetch(__cur_keys, v1);
- float4 P2 = kernel_tex_fetch(__cur_keys, v2);
+ float4 P1 = kernel_tex_fetch(__curve_keys, v1);
+ float4 P2 = kernel_tex_fetch(__curve_keys, v2);
float l = v00.w;
float r1 = P1.w;
float r2 = P2.w;