[Bf-blender-cvs] [b9e1f358bf1] hair_object: Remove disused functions for generating hair interpolation texture buffers.

Lukas Tönne noreply at git.blender.org
Sun Sep 9 10:59:50 CEST 2018


Commit: b9e1f358bf1a2535a023fe752948f62ce7426c5b
Author: Lukas Tönne
Date:   Sun Sep 9 09:59:23 2018 +0100
Branches: hair_object
https://developer.blender.org/rBb9e1f358bf1a2535a023fe752948f62ce7426c5b

Remove disused functions for generating hair interpolation texture buffers.

===================================================================

M	source/blender/blenkernel/BKE_hair.h
M	source/blender/blenkernel/intern/hair_draw.c

===================================================================

diff --git a/source/blender/blenkernel/BKE_hair.h b/source/blender/blenkernel/BKE_hair.h
index e7a2c4ed864..f7b3092f0aa 100644
--- a/source/blender/blenkernel/BKE_hair.h
+++ b/source/blender/blenkernel/BKE_hair.h
@@ -248,16 +248,6 @@ enum {
 void BKE_hair_batch_cache_dirty(struct HairSystem* hsys, int mode);
 void BKE_hair_batch_cache_free(struct HairSystem* hsys);
 
-void BKE_hair_get_texture_buffer_size(
-        const struct HairExportCache *cache,
-        int *r_size,
-        int *r_strand_map_start,
-        int *r_strand_vertex_start,
-        int *r_fiber_start);
-void BKE_hair_get_texture_buffer(
-        const struct HairExportCache *cache,
-        void *texbuffer);
-
 /* === Render API === */
 
 /* Calculate required size for render buffers. */
diff --git a/source/blender/blenkernel/intern/hair_draw.c b/source/blender/blenkernel/intern/hair_draw.c
index e88e3cdb3ca..fe53af472cf 100644
--- a/source/blender/blenkernel/intern/hair_draw.c
+++ b/source/blender/blenkernel/intern/hair_draw.c
@@ -72,119 +72,6 @@ void BKE_hair_draw_settings_free(HairDrawSettings *draw_settings)
 
 /* === Draw Cache === */
 
-typedef struct HairFiberTextureBuffer {
-	unsigned int parent_index[4];
-	float parent_weight[4];
-	float root_position[3];
-	int pad;
-} HairFiberTextureBuffer;
-BLI_STATIC_ASSERT_ALIGN(HairFiberTextureBuffer, 8)
-
-typedef struct HairStrandVertexTextureBuffer {
-	float co[3];
-	float nor[3];
-	float tang[3];
-	float len;
-} HairStrandVertexTextureBuffer;
-BLI_STATIC_ASSERT_ALIGN(HairStrandVertexTextureBuffer, 8)
-
-typedef struct HairStrandMapTextureBuffer {
-	unsigned int vertex_start;
-	unsigned int vertex_count;
-	
-	/* Shape attributes */
-	float taper_length;         /* Distance at which final thickness is reached */
-	float taper_thickness;      /* Relative thickness of the strand */
-} HairStrandMapTextureBuffer;
-BLI_STATIC_ASSERT_ALIGN(HairStrandMapTextureBuffer, 8)
-
-static void hair_get_strand_buffer(
-        const HairExportCache *cache,
-        HairStrandMapTextureBuffer *strand_map_buffer,
-        HairStrandVertexTextureBuffer *strand_vertex_buffer)
-{
-	for (int i = 0; i < cache->totcurves; ++i) {
-		const HairFiberCurve *curve = &cache->fiber_curves[i];
-		const HairFiberVertex *verts = &cache->fiber_verts[curve->vertstart];
-		const float (*tangents)[3] = &cache->fiber_tangents[curve->vertstart];
-		const float (*normals)[3] = &cache->fiber_normals[curve->vertstart];
-		HairStrandMapTextureBuffer *smap = &strand_map_buffer[i];
-		HairStrandVertexTextureBuffer *svert = &strand_vertex_buffer[curve->vertstart];
-		
-		smap->vertex_start = curve->vertstart;
-		smap->vertex_count = curve->numverts;
-		smap->taper_length = curve->taper_length;
-		smap->taper_thickness = curve->taper_thickness;
-		
-		float len = 0.0f;
-		for (int j = 0; j < curve->numverts; ++j)
-		{
-			copy_v3_v3(svert[j].co, verts[j].co);
-			copy_v3_v3(svert[j].tang, tangents[j]);
-			copy_v3_v3(svert[j].nor, normals[j]);
-			
-			if (j > 0)
-			{
-				len += len_v3v3(verts[j-1].co, verts[j].co);
-			}
-			svert[j].len = len;
-		}
-	}
-}
-
-static void hair_get_fiber_buffer(const HairExportCache *cache,
-                                  HairFiberTextureBuffer *fiber_buf)
-{
-	const int totfibers = cache->totfollicles;
-	const HairFollicle *follicle = cache->follicles;
-	HairFiberTextureBuffer *fb = fiber_buf;
-	for (int i = 0; i < totfibers; ++i, ++fb, ++follicle) {
-		copy_v3_v3(fb->root_position, cache->follicle_root_position[i]);
-		
-		fb->parent_index[0] = follicle->curve;
-		fb->parent_index[1] = HAIR_CURVE_INDEX_NONE;
-		fb->parent_index[2] = HAIR_CURVE_INDEX_NONE;
-		fb->parent_index[3] = HAIR_CURVE_INDEX_NONE;
-		fb->parent_weight[0] = 1.0f;
-		fb->parent_weight[1] = 0.0f;
-		fb->parent_weight[2] = 0.0f;
-		fb->parent_weight[3] = 0.0f;
-	}
-}
-
-void BKE_hair_get_texture_buffer_size(
-        const HairExportCache *cache,
-        int *r_size,
-        int *r_strand_map_start,
-        int *r_strand_vertex_start,
-        int *r_fiber_start)
-{
-	*r_strand_map_start = 0;
-	*r_strand_vertex_start = *r_strand_map_start + cache->totcurves * sizeof(HairStrandMapTextureBuffer);
-	*r_fiber_start = *r_strand_vertex_start + cache->totverts * sizeof(HairStrandVertexTextureBuffer);
-	*r_size = *r_fiber_start + cache->totfollicles * sizeof(HairFiberTextureBuffer);
-}
-
-void BKE_hair_get_texture_buffer(
-        const HairExportCache *cache,
-        void *buffer)
-{
-	int size, strand_map_start, strand_vertex_start, fiber_start;
-	BKE_hair_get_texture_buffer_size(cache, &size, &strand_map_start, &strand_vertex_start, &fiber_start);
-	
-	HairStrandMapTextureBuffer *strand_map = (HairStrandMapTextureBuffer*)((char*)buffer + strand_map_start);
-	HairStrandVertexTextureBuffer *strand_verts = (HairStrandVertexTextureBuffer*)((char*)buffer + strand_vertex_start);
-	HairFiberTextureBuffer *fibers = (HairFiberTextureBuffer*)((char*)buffer + fiber_start);
-	
-	hair_get_strand_buffer(
-	            cache,
-	            strand_map,
-	            strand_verts);
-	hair_get_fiber_buffer(
-	            cache,
-	            fibers);
-}
-
 void (*BKE_hair_batch_cache_dirty_cb)(HairSystem* hsys, int mode) = NULL;
 void (*BKE_hair_batch_cache_free_cb)(HairSystem* hsys) = NULL;



More information about the Bf-blender-cvs mailing list