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:
Diffstat (limited to 'source/blender/blenkernel/intern/DerivedMesh.c')
-rw-r--r--source/blender/blenkernel/intern/DerivedMesh.c639
1 files changed, 319 insertions, 320 deletions
diff --git a/source/blender/blenkernel/intern/DerivedMesh.c b/source/blender/blenkernel/intern/DerivedMesh.c
index 50c10ea3c3d..18560d3dbc0 100644
--- a/source/blender/blenkernel/intern/DerivedMesh.c
+++ b/source/blender/blenkernel/intern/DerivedMesh.c
@@ -95,7 +95,7 @@ static MVert *dm_getVertArray(DerivedMesh *dm)
if (!mvert) {
mvert = CustomData_add_layer(&dm->vertData, CD_MVERT, CD_CALLOC, NULL,
- dm->getNumVerts(dm));
+ dm->getNumVerts(dm));
CustomData_set_layer_flag(&dm->vertData, CD_MVERT, CD_FLAG_TEMPORARY);
dm->copyVertArray(dm, mvert);
}
@@ -109,7 +109,7 @@ static MEdge *dm_getEdgeArray(DerivedMesh *dm)
if (!medge) {
medge = CustomData_add_layer(&dm->edgeData, CD_MEDGE, CD_CALLOC, NULL,
- dm->getNumEdges(dm));
+ dm->getNumEdges(dm));
CustomData_set_layer_flag(&dm->edgeData, CD_MEDGE, CD_FLAG_TEMPORARY);
dm->copyEdgeArray(dm, medge);
}
@@ -146,7 +146,7 @@ static MLoop *dm_getLoopArray(DerivedMesh *dm)
if (!mloop) {
mloop = CustomData_add_layer(&dm->loopData, CD_MLOOP, CD_CALLOC, NULL,
- dm->getNumLoops(dm));
+ dm->getNumLoops(dm));
CustomData_set_layer_flag(&dm->loopData, CD_MLOOP, CD_FLAG_TEMPORARY);
dm->copyLoopArray(dm, mloop);
}
@@ -160,7 +160,7 @@ static MPoly *dm_getPolyArray(DerivedMesh *dm)
if (!mpoly) {
mpoly = CustomData_add_layer(&dm->polyData, CD_MPOLY, CD_CALLOC, NULL,
- dm->getNumPolys(dm));
+ dm->getNumPolys(dm));
CustomData_set_layer_flag(&dm->polyData, CD_MPOLY, CD_FLAG_TEMPORARY);
dm->copyPolyArray(dm, mpoly);
}
@@ -171,7 +171,7 @@ static MPoly *dm_getPolyArray(DerivedMesh *dm)
static MVert *dm_dupVertArray(DerivedMesh *dm)
{
MVert *tmp = MEM_callocN(sizeof(*tmp) * dm->getNumVerts(dm),
- "dm_dupVertArray tmp");
+ "dm_dupVertArray tmp");
if (tmp) dm->copyVertArray(dm, tmp);
@@ -181,7 +181,7 @@ static MVert *dm_dupVertArray(DerivedMesh *dm)
static MEdge *dm_dupEdgeArray(DerivedMesh *dm)
{
MEdge *tmp = MEM_callocN(sizeof(*tmp) * dm->getNumEdges(dm),
- "dm_dupEdgeArray tmp");
+ "dm_dupEdgeArray tmp");
if (tmp) dm->copyEdgeArray(dm, tmp);
@@ -191,7 +191,7 @@ static MEdge *dm_dupEdgeArray(DerivedMesh *dm)
static MFace *dm_dupFaceArray(DerivedMesh *dm)
{
MFace *tmp = MEM_callocN(sizeof(*tmp) * dm->getNumTessFaces(dm),
- "dm_dupFaceArray tmp");
+ "dm_dupFaceArray tmp");
if (tmp) dm->copyTessFaceArray(dm, tmp);
@@ -201,7 +201,7 @@ static MFace *dm_dupFaceArray(DerivedMesh *dm)
static MLoop *dm_dupLoopArray(DerivedMesh *dm)
{
MLoop *tmp = MEM_callocN(sizeof(*tmp) * dm->getNumLoops(dm),
- "dm_dupLoopArray tmp");
+ "dm_dupLoopArray tmp");
if (tmp) dm->copyLoopArray(dm, tmp);
@@ -211,7 +211,7 @@ static MLoop *dm_dupLoopArray(DerivedMesh *dm)
static MPoly *dm_dupPolyArray(DerivedMesh *dm)
{
MPoly *tmp = MEM_callocN(sizeof(*tmp) * dm->getNumPolys(dm),
- "dm_dupPolyArray tmp");
+ "dm_dupPolyArray tmp");
if (tmp) dm->copyPolyArray(dm, tmp);
@@ -295,11 +295,11 @@ void DM_from_template(DerivedMesh *dm, DerivedMesh *source, DerivedMeshType type
int numLoops, int numPolys)
{
CustomData_copy(&source->vertData, &dm->vertData, CD_MASK_DERIVEDMESH,
- CD_CALLOC, numVerts);
+ CD_CALLOC, numVerts);
CustomData_copy(&source->edgeData, &dm->edgeData, CD_MASK_DERIVEDMESH,
- CD_CALLOC, numEdges);
+ CD_CALLOC, numEdges);
CustomData_copy(&source->faceData, &dm->faceData, CD_MASK_DERIVEDMESH,
- CD_CALLOC, numTessFaces);
+ CD_CALLOC, numTessFaces);
CustomData_copy(&source->loopData, &dm->loopData, CD_MASK_DERIVEDMESH,
CD_CALLOC, numLoops);
CustomData_copy(&source->polyData, &dm->polyData, CD_MASK_DERIVEDMESH,
@@ -463,7 +463,7 @@ void DM_to_mesh(DerivedMesh *dm, Mesh *me, Object *ob)
/* dm might depend on me, so we need to do everything with a local copy */
Mesh tmp = *me;
int totvert, totedge /*, totface */ /* UNUSED */, totloop, totpoly;
- int did_shapekeys=0;
+ int did_shapekeys = 0;
memset(&tmp.vdata, 0, sizeof(tmp.vdata));
memset(&tmp.edata, 0, sizeof(tmp.edata));
@@ -486,13 +486,13 @@ void DM_to_mesh(DerivedMesh *dm, Mesh *me, Object *ob)
int uid;
if (ob) {
- kb = BLI_findlink(&me->key->block, ob->shapenr-1);
+ kb = BLI_findlink(&me->key->block, ob->shapenr - 1);
if (kb) {
uid = kb->uid;
}
else {
printf("%s: error - could not find active shapekey %d!\n",
- __func__, ob->shapenr-1);
+ __func__, ob->shapenr - 1);
uid = INT_MAX;
}
@@ -558,16 +558,16 @@ void DM_to_meshkey(DerivedMesh *dm, Mesh *me, KeyBlock *kb)
float *fp;
MVert *mvert;
- if (totvert==0 || me->totvert==0 || me->totvert!=totvert) return;
+ if (totvert == 0 || me->totvert == 0 || me->totvert != totvert) return;
if (kb->data) MEM_freeN(kb->data);
- kb->data= MEM_callocN(me->key->elemsize*me->totvert, "kb->data");
- kb->totelem= totvert;
+ kb->data = MEM_callocN(me->key->elemsize * me->totvert, "kb->data");
+ kb->totelem = totvert;
- fp= kb->data;
- mvert=dm->getVertDataArray(dm, CD_MVERT);
+ fp = kb->data;
+ mvert = dm->getVertDataArray(dm, CD_MVERT);
- for (a=0; a<kb->totelem; a++, fp+=3, mvert++) {
+ for (a = 0; a < kb->totelem; a++, fp += 3, mvert++) {
copy_v3_v3(fp, mvert->co);
}
}
@@ -669,24 +669,24 @@ void DM_set_tessface_data(DerivedMesh *dm, int index, int type, void *data)
}
void DM_copy_vert_data(DerivedMesh *source, DerivedMesh *dest,
- int source_index, int dest_index, int count)
+ int source_index, int dest_index, int count)
{
CustomData_copy_data(&source->vertData, &dest->vertData,
- source_index, dest_index, count);
+ source_index, dest_index, count);
}
void DM_copy_edge_data(DerivedMesh *source, DerivedMesh *dest,
- int source_index, int dest_index, int count)
+ int source_index, int dest_index, int count)
{
CustomData_copy_data(&source->edgeData, &dest->edgeData,
- source_index, dest_index, count);
+ source_index, dest_index, count);
}
void DM_copy_tessface_data(DerivedMesh *source, DerivedMesh *dest,
- int source_index, int dest_index, int count)
+ int source_index, int dest_index, int count)
{
CustomData_copy_data(&source->faceData, &dest->faceData,
- source_index, dest_index, count);
+ source_index, dest_index, count);
}
void DM_copy_loop_data(DerivedMesh *source, DerivedMesh *dest,
@@ -729,29 +729,29 @@ void DM_free_poly_data(struct DerivedMesh *dm, int index, int count)
}
void DM_interp_vert_data(DerivedMesh *source, DerivedMesh *dest,
- int *src_indices, float *weights,
- int count, int dest_index)
+ int *src_indices, float *weights,
+ int count, int dest_index)
{
CustomData_interp(&source->vertData, &dest->vertData, src_indices,
- weights, NULL, count, dest_index);
+ weights, NULL, count, dest_index);
}
void DM_interp_edge_data(DerivedMesh *source, DerivedMesh *dest,
- int *src_indices,
- float *weights, EdgeVertWeight *vert_weights,
- int count, int dest_index)
+ int *src_indices,
+ float *weights, EdgeVertWeight *vert_weights,
+ int count, int dest_index)
{
CustomData_interp(&source->edgeData, &dest->edgeData, src_indices,
- weights, (float*)vert_weights, count, dest_index);
+ weights, (float *)vert_weights, count, dest_index);
}
void DM_interp_tessface_data(DerivedMesh *source, DerivedMesh *dest,
- int *src_indices,
- float *weights, FaceVertWeight *vert_weights,
- int count, int dest_index)
+ int *src_indices,
+ float *weights, FaceVertWeight *vert_weights,
+ int count, int dest_index)
{
CustomData_interp(&source->faceData, &dest->faceData, src_indices,
- weights, (float*)vert_weights, count, dest_index);
+ weights, (float *)vert_weights, count, dest_index);
}
void DM_swap_tessface_data(DerivedMesh *dm, int index, const int *corner_indices)
@@ -801,16 +801,16 @@ DerivedMesh *mesh_create_derived_for_modifier(Scene *scene, Object *ob,
DerivedMesh *dm;
KeyBlock *kb;
- md->scene= scene;
+ md->scene = scene;
- if (!(md->mode&eModifierMode_Realtime)) return NULL;
+ if (!(md->mode & eModifierMode_Realtime)) return NULL;
if (mti->isDisabled && mti->isDisabled(md, 0)) return NULL;
- if (build_shapekey_layers && me->key && (kb = BLI_findlink(&me->key->block, ob->shapenr-1))) {
+ if (build_shapekey_layers && me->key && (kb = BLI_findlink(&me->key->block, ob->shapenr - 1))) {
key_to_mesh(kb, me);
}
- if (mti->type==eModifierTypeType_OnlyDeform) {
+ if (mti->type == eModifierTypeType_OnlyDeform) {
int numVerts;
float (*deformedVerts)[3] = mesh_getVertexCos(me, &numVerts);
@@ -846,13 +846,13 @@ static float *get_editbmesh_orco_verts(BMEditMesh *em)
/* these may not really be the orco's, but it's only for preview.
* could be solver better once, but isn't simple */
- totvert= em->bm->totvert;
+ totvert = em->bm->totvert;
- orco = MEM_mallocN(sizeof(float)*3*totvert, "BMEditMesh Orco");
+ orco = MEM_mallocN(sizeof(float) * 3 * totvert, "BMEditMesh Orco");
eve = BM_iter_new(&iter, em->bm, BM_VERTS_OF_MESH, NULL);
- for (a=0; eve; eve=BM_iter_step(&iter), a+=3) {
- copy_v3_v3(orco+a, eve->co);
+ for (a = 0; eve; eve = BM_iter_step(&iter), a += 3) {
+ copy_v3_v3(orco + a, eve->co);
}
return orco;
@@ -861,11 +861,11 @@ static float *get_editbmesh_orco_verts(BMEditMesh *em)
/* orco custom data layer */
static void *get_orco_coords_dm(Object *ob, BMEditMesh *em, int layer, int *free)
{
- *free= 0;
+ *free = 0;
if (layer == CD_ORCO) {
/* get original coordinates */
- *free= 1;
+ *free = 1;
if (em)
return (float(*)[3])get_editbmesh_orco_verts(em);
@@ -877,7 +877,7 @@ static void *get_orco_coords_dm(Object *ob, BMEditMesh *em, int layer, int *free
* by a more flexible customdata system, but not simple */
if (!em) {
ClothModifierData *clmd = (ClothModifierData *)modifiers_findByType(ob, eModifierType_Cloth);
- KeyBlock *kb= key_get_keyblock(ob_get_key(ob), clmd->sim_parms->shapekey_rest);
+ KeyBlock *kb = key_get_keyblock(ob_get_key(ob), clmd->sim_parms->shapekey_rest);
if (kb->data)
return kb->data;
@@ -895,10 +895,10 @@ static DerivedMesh *create_orco_dm(Object *ob, Mesh *me, BMEditMesh *em, int lay
float (*orco)[3];
int free;
- if (em) dm= CDDM_from_BMEditMesh(em, me, FALSE, FALSE);
- else dm= CDDM_from_mesh(me, ob);
+ if (em) dm = CDDM_from_BMEditMesh(em, me, FALSE, FALSE);
+ else dm = CDDM_from_mesh(me, ob);
- orco= get_orco_coords_dm(ob, em, layer, &free);
+ orco = get_orco_coords_dm(ob, em, layer, &free);
if (orco) {
CDDM_apply_vert_coords(dm, orco);
@@ -911,16 +911,16 @@ static DerivedMesh *create_orco_dm(Object *ob, Mesh *me, BMEditMesh *em, int lay
}
static void add_orco_dm(Object *ob, BMEditMesh *em, DerivedMesh *dm,
- DerivedMesh *orcodm, int layer)
+ DerivedMesh *orcodm, int layer)
{
float (*orco)[3], (*layerorco)[3];
int totvert, free;
- totvert= dm->getNumVerts(dm);
+ totvert = dm->getNumVerts(dm);
if (orcodm) {
- orco= MEM_callocN(sizeof(float)*3*totvert, "dm orco");
- free= 1;
+ orco = MEM_callocN(sizeof(float) * 3 * totvert, "dm orco");
+ free = 1;
if (orcodm->getNumVerts(orcodm) == totvert)
orcodm->getVertCos(orcodm, orco);
@@ -928,7 +928,7 @@ static void add_orco_dm(Object *ob, BMEditMesh *em, DerivedMesh *dm,
dm->getVertCos(dm, orco);
}
else
- orco= get_orco_coords_dm(ob, em, layer, &free);
+ orco = get_orco_coords_dm(ob, em, layer, &free);
if (orco) {
if (layer == CD_ORCO)
@@ -939,7 +939,7 @@ static void add_orco_dm(Object *ob, BMEditMesh *em, DerivedMesh *dm,
layerorco = DM_get_vert_data_layer(dm, layer);
}
- memcpy(layerorco, orco, sizeof(float)*3*totvert);
+ memcpy(layerorco, orco, sizeof(float) * 3 * totvert);
if (free) MEM_freeN(orco);
}
}
@@ -954,41 +954,41 @@ static void add_orco_dm(Object *ob, BMEditMesh *em, DerivedMesh *dm,
void weight_to_rgb(float r_rgb[3], const float weight)
{
- const float blend= ((weight/2.0f)+0.5f);
+ const float blend = ((weight / 2.0f) + 0.5f);
- if (weight<=0.25f) { // blue->cyan
- r_rgb[0]= 0.0f;
- r_rgb[1]= blend*weight*4.0f;
- r_rgb[2]= blend;
+ if (weight <= 0.25f) { // blue->cyan
+ r_rgb[0] = 0.0f;
+ r_rgb[1] = blend * weight * 4.0f;
+ r_rgb[2] = blend;
}
- else if (weight<=0.50f) { // cyan->green
- r_rgb[0]= 0.0f;
- r_rgb[1]= blend;
- r_rgb[2]= blend*(1.0f-((weight-0.25f)*4.0f));
+ else if (weight <= 0.50f) { // cyan->green
+ r_rgb[0] = 0.0f;
+ r_rgb[1] = blend;
+ r_rgb[2] = blend * (1.0f - ((weight - 0.25f) * 4.0f));
}
- else if (weight <= 0.75f) { // green->yellow
- r_rgb[0]= blend * ((weight-0.50f)*4.0f);
- r_rgb[1]= blend;
- r_rgb[2]= 0.0f;
+ else if (weight <= 0.75f) { // green->yellow
+ r_rgb[0] = blend * ((weight - 0.50f) * 4.0f);
+ r_rgb[1] = blend;
+ r_rgb[2] = 0.0f;
}
else if (weight <= 1.0f) { // yellow->red
- r_rgb[0]= blend;
- r_rgb[1]= blend * (1.0f-((weight-0.75f)*4.0f));
- r_rgb[2]= 0.0f;
+ r_rgb[0] = blend;
+ r_rgb[1] = blend * (1.0f - ((weight - 0.75f) * 4.0f));
+ r_rgb[2] = 0.0f;
}
else {
/* exceptional value, unclamped or nan,
* avoid uninitialized memory use */
- r_rgb[0]= 1.0f;
- r_rgb[1]= 0.0f;
- r_rgb[2]= 1.0f;
+ r_rgb[0] = 1.0f;
+ r_rgb[1] = 0.0f;
+ r_rgb[2] = 1.0f;
}
}
/* draw_flag's for calc_weightpaint_vert_color */
enum {
- CALC_WP_MULTIPAINT= (1<<0),
- CALC_WP_AUTO_NORMALIZE= (1<<1)
+ CALC_WP_MULTIPAINT = (1 << 0),
+ CALC_WP_AUTO_NORMALIZE = (1 << 1)
};
static void weightpaint_color(unsigned char r_col[4], ColorBand *coba, const float input)
@@ -1020,13 +1020,13 @@ static void calc_weightpaint_vert_color(
{
float input = 0.0f;
- int make_black= FALSE;
+ int make_black = FALSE;
if ((selected > 1) && (draw_flag & CALC_WP_MULTIPAINT)) {
- int was_a_nonzero= FALSE;
+ int was_a_nonzero = FALSE;
unsigned int i;
- MDeformWeight *dw= dv->dw;
+ MDeformWeight *dw = dv->dw;
for (i = dv->totweight; i != 0; i--, dw++) {
/* in multipaint, get the average if auto normalize is inactive
* get the sum if it is active */
@@ -1034,7 +1034,7 @@ static void calc_weightpaint_vert_color(
if (dg_flags[dw->def_nr]) {
if (dw->weight) {
input += dw->weight;
- was_a_nonzero= TRUE;
+ was_a_nonzero = TRUE;
}
}
}
@@ -1050,7 +1050,7 @@ static void calc_weightpaint_vert_color(
}
else {
/* default, non tricky behavior */
- input= defvert_find_weight(dv, defbase_act);
+ input = defvert_find_weight(dv, defbase_act);
}
if (make_black) { /* TODO, theme color */
@@ -1065,11 +1065,11 @@ static void calc_weightpaint_vert_color(
}
}
-static ColorBand *stored_cb= NULL;
+static ColorBand *stored_cb = NULL;
void vDM_ColorBand_store(ColorBand *coba)
{
- stored_cb= coba;
+ stored_cb = coba;
}
/* return an array of vertex weight colors, caller must free.
@@ -1081,7 +1081,7 @@ static unsigned char *calc_weightpaint_vert_array(Object *ob, DerivedMesh *dm, i
{
MDeformVert *dv = DM_get_vert_data_layer(dm, CD_MDEFORMVERT);
int numVerts = dm->getNumVerts(dm);
- unsigned char *wtcol_v = MEM_mallocN (sizeof(unsigned char) * numVerts * 4, "weightmap_v");
+ unsigned char *wtcol_v = MEM_mallocN(sizeof(unsigned char) * numVerts * 4, "weightmap_v");
if (dv) {
unsigned char *wc = wtcol_v;
@@ -1089,7 +1089,7 @@ static unsigned char *calc_weightpaint_vert_array(Object *ob, DerivedMesh *dm, i
/* variables for multipaint */
const int defbase_tot = BLI_countlist(&ob->defbase);
- const int defbase_act = ob->actdef-1;
+ const int defbase_act = ob->actdef - 1;
char *dg_flags = MEM_mallocN(defbase_tot * sizeof(char), __func__);
const int selected = get_selected_defgroups(ob, dg_flags, defbase_tot);
@@ -1128,7 +1128,7 @@ static unsigned char *calc_colors_from_weights_array(const int num, float *weigh
void DM_update_weight_mcol(Object *ob, DerivedMesh *dm, int const draw_flag,
float *weights, int num, const int *indices)
{
- ColorBand *coba= stored_cb; /* warning, not a local var */
+ ColorBand *coba = stored_cb; /* warning, not a local var */
unsigned char *wtcol_v;
#if 0 /* See coment below. */
@@ -1148,7 +1148,7 @@ void DM_update_weight_mcol(Object *ob, DerivedMesh *dm, int const draw_flag,
int i, j;
#if 0 /* See comment below */
- /* If no CD_PREVIEW_MCOL existed yet, add a new one! */
+ /* If no CD_PREVIEW_MCOL existed yet, add a new one! */
if (!wtcol_f)
wtcol_f = CustomData_add_layer(&dm->faceData, CD_PREVIEW_MCOL, CD_CALLOC, NULL, numFaces);
@@ -1170,7 +1170,7 @@ void DM_update_weight_mcol(Object *ob, DerivedMesh *dm, int const draw_flag,
/* If indices is not NULL, it means we do not have weights for all vertices,
* so we must create them (and set them to zero)... */
if (indices) {
- w = MEM_callocN(sizeof(float)*numVerts, "Temp weight array DM_update_weight_mcol");
+ w = MEM_callocN(sizeof(float) * numVerts, "Temp weight array DM_update_weight_mcol");
i = num;
while (i--)
w[indices[i]] = weights[i];
@@ -1196,9 +1196,9 @@ void DM_update_weight_mcol(Object *ob, DerivedMesh *dm, int const draw_flag,
for (i = 0; i < numFaces; i++, mf++, wtcol_f_step += (4 * 4)) {
/*origindex being NULL means we're operating on original mesh data*/
#if 0
- unsigned int fidx= mf->v4 ? 3:2;
+ unsigned int fidx = mf->v4 ? 3 : 2;
-#else /* better zero out triangles 4th component. else valgrind complains when the buffer's copied */
+#else /* better zero out triangles 4th component. else valgrind complains when the buffer's copied */
unsigned int fidx;
if (mf->v4) {
fidx = 3;
@@ -1220,7 +1220,7 @@ void DM_update_weight_mcol(Object *ob, DerivedMesh *dm, int const draw_flag,
if (!wtcol_l) {
BLI_array_declare(wtcol_l);
totloop = 0;
- for (i=0; i<dm->numPolyData; i++, mp++) {
+ for (i = 0; i < dm->numPolyData; i++, mp++) {
ml = mloop + mp->loopstart;
BLI_array_grow_items(wtcol_l, mp->totloop);
@@ -1233,10 +1233,10 @@ void DM_update_weight_mcol(Object *ob, DerivedMesh *dm, int const draw_flag,
}
else {
totloop = 0;
- for (i=0; i < dm->numPolyData; i++, mp++) {
+ for (i = 0; i < dm->numPolyData; i++, mp++) {
ml = mloop + mp->loopstart;
- for (j=0; j < mp->totloop; j++, ml++, totloop++) {
+ for (j = 0; j < mp->totloop; j++, ml++, totloop++) {
copy_v4_v4_char((char *)&wtcol_l[totloop],
(char *)&wtcol_v[4 * ml->v]);
}
@@ -1258,11 +1258,11 @@ static void shapekey_layers_to_keyblocks(DerivedMesh *dm, Mesh *me, int actshape
return;
tot = CustomData_number_of_layers(&dm->vertData, CD_SHAPEKEY);
- for (i=0; i<tot; i++) {
+ for (i = 0; i < tot; i++) {
CustomDataLayer *layer = &dm->vertData.layers[CustomData_get_layer_index_n(&dm->vertData, CD_SHAPEKEY, i)];
float (*cos)[3], (*kbcos)[3];
- for (kb=me->key->block.first; kb; kb=kb->next) {
+ for (kb = me->key->block.first; kb; kb = kb->next) {
if (kb->uid == layer->uid)
break;
}
@@ -1278,28 +1278,28 @@ static void shapekey_layers_to_keyblocks(DerivedMesh *dm, Mesh *me, int actshape
cos = CustomData_get_layer_n(&dm->vertData, CD_SHAPEKEY, i);
kb->totelem = dm->numVertData;
- kb->data = kbcos = MEM_mallocN(sizeof(float)*3*kb->totelem, "kbcos DerivedMesh.c");
+ kb->data = kbcos = MEM_mallocN(sizeof(float) * 3 * kb->totelem, "kbcos DerivedMesh.c");
if (kb->uid == actshape_uid) {
MVert *mvert = dm->getVertArray(dm);
- for (j=0; j<dm->numVertData; j++, kbcos++, mvert++) {
+ for (j = 0; j < dm->numVertData; j++, kbcos++, mvert++) {
copy_v3_v3(*kbcos, mvert->co);
}
}
else {
- for (j=0; j<kb->totelem; j++, cos++, kbcos++) {
+ for (j = 0; j < kb->totelem; j++, cos++, kbcos++) {
copy_v3_v3(*kbcos, *cos);
}
}
}
- for (kb=me->key->block.first; kb; kb=kb->next) {
+ for (kb = me->key->block.first; kb; kb = kb->next) {
if (kb->totelem != dm->numVertData) {
if (kb->data)
MEM_freeN(kb->data);
kb->totelem = dm->numVertData;
- kb->data = MEM_callocN(sizeof(float)*3*kb->totelem, "kb->data derivedmesh.c");
+ kb->data = MEM_callocN(sizeof(float) * 3 * kb->totelem, "kb->data derivedmesh.c");
fprintf(stderr, "%s: lost a shapekey layer: '%s'! (bmesh internal error)\n", __func__, kb->name);
}
}
@@ -1319,11 +1319,11 @@ static void add_shapekey_layers(DerivedMesh *dm, Mesh *me, Object *UNUSED(ob))
if (me->totvert != dm->getNumVerts(dm)) {
fprintf(stderr,
"%s: vertex size mismatch (mesh/dm) '%s' (%d != %d)\n",
- __func__, me->id.name+2, me->totvert, dm->getNumVerts(dm));
+ __func__, me->id.name + 2, me->totvert, dm->getNumVerts(dm));
return;
}
- for (i=0, kb=key->block.first; kb; kb=kb->next, i++) {
+ for (i = 0, kb = key->block.first; kb; kb = kb->next, i++) {
int ci;
float *array;
@@ -1351,10 +1351,10 @@ static void add_shapekey_layers(DerivedMesh *dm, Mesh *me, Object *UNUSED(ob))
* - apply deform modifiers and input vertexco
*/
static void mesh_calc_modifiers(Scene *scene, Object *ob, float (*inputVertexCos)[3],
- DerivedMesh **deform_r, DerivedMesh **final_r,
- int useRenderParams, int useDeform,
- int needMapping, CustomDataMask dataMask,
- int index, int useCache, int build_shapekey_layers)
+ DerivedMesh **deform_r, DerivedMesh **final_r,
+ int useRenderParams, int useDeform,
+ int needMapping, CustomDataMask dataMask,
+ int index, int useCache, int build_shapekey_layers)
{
Mesh *me = ob->data;
ModifierData *firstmd, *md, *previewmd = NULL;
@@ -1362,17 +1362,17 @@ static void mesh_calc_modifiers(Scene *scene, Object *ob, float (*inputVertexCos
/* XXX Always copying POLYINDEX, else tessellated data are no more valid! */
CustomDataMask mask, nextmask, append_mask = CD_MASK_POLYINDEX;
float (*deformedVerts)[3] = NULL;
- DerivedMesh *dm=NULL, *orcodm, *clothorcodm, *finaldm;
+ DerivedMesh *dm = NULL, *orcodm, *clothorcodm, *finaldm;
int numVerts = me->totvert;
int required_mode;
- int isPrevDeform= FALSE;
+ int isPrevDeform = FALSE;
int skipVirtualArmature = (useDeform < 0);
- MultiresModifierData *mmd= get_multires_modifier(scene, ob, 0);
+ MultiresModifierData *mmd = get_multires_modifier(scene, ob, 0);
int has_multires = mmd != NULL, multires_applied = 0;
int sculpt_mode = ob->mode & OB_MODE_SCULPT && ob->sculpt;
- const int draw_flag= ((scene->toolsettings->multipaint ? CALC_WP_MULTIPAINT : 0) |
- (scene->toolsettings->auto_normalize ? CALC_WP_AUTO_NORMALIZE : 0));
+ const int draw_flag = ((scene->toolsettings->multipaint ? CALC_WP_MULTIPAINT : 0) |
+ (scene->toolsettings->auto_normalize ? CALC_WP_AUTO_NORMALIZE : 0));
/* Generic preview only in object mode! */
const int do_mod_mcol = (ob->mode == OB_MODE_OBJECT);
#if 0 /* XXX Will re-enable this when we have global mod stack options. */
@@ -1385,9 +1385,9 @@ static void mesh_calc_modifiers(Scene *scene, Object *ob, float (*inputVertexCos
ModifierApplyFlag app_flags = useRenderParams ? MOD_APPLY_RENDER : 0;
ModifierApplyFlag deform_app_flags = app_flags;
- if (useCache)
+ if (useCache)
app_flags |= MOD_APPLY_USECACHE;
- if (useDeform)
+ if (useDeform)
deform_app_flags |= MOD_APPLY_USECACHE;
if (mmd && !mmd->sculptlvl)
@@ -1429,10 +1429,10 @@ static void mesh_calc_modifiers(Scene *scene, Object *ob, float (*inputVertexCos
deformedVerts = inputVertexCos;
/* Apply all leading deforming modifiers */
- for (;md; md = md->next, curr = curr->next) {
+ for (; md; md = md->next, curr = curr->next) {
ModifierTypeInfo *mti = modifierType_getInfo(md->type);
- md->scene= scene;
+ md->scene = scene;
if (!modifier_isEnabled(scene, md, required_mode)) continue;
if (useDeform < 0 && mti->dependsOnTime && mti->dependsOnTime(md)) continue;
@@ -1484,10 +1484,10 @@ static void mesh_calc_modifiers(Scene *scene, Object *ob, float (*inputVertexCos
orcodm = NULL;
clothorcodm = NULL;
- for (;md; md = md->next, curr = curr->next) {
+ for (; md; md = md->next, curr = curr->next) {
ModifierTypeInfo *mti = modifierType_getInfo(md->type);
- md->scene= scene;
+ md->scene = scene;
if (!modifier_isEnabled(scene, md, required_mode)) continue;
if (mti->type == eModifierTypeType_OnlyDeform && !useDeform) continue;
@@ -1496,13 +1496,13 @@ static void mesh_calc_modifiers(Scene *scene, Object *ob, float (*inputVertexCos
continue;
}
if (sculpt_mode && (!has_multires || multires_applied)) {
- int unsupported= 0;
+ int unsupported = 0;
if (scene->toolsettings->sculpt->flags & SCULPT_ONLY_DEFORM)
- unsupported|= mti->type != eModifierTypeType_OnlyDeform;
+ unsupported |= mti->type != eModifierTypeType_OnlyDeform;
- unsupported|= md->type == eModifierType_Multires && ((MultiresModifierData*)md)->sculptlvl==0;
- unsupported|= multires_applied;
+ unsupported |= md->type == eModifierType_Multires && ((MultiresModifierData *)md)->sculptlvl == 0;
+ unsupported |= multires_applied;
if (unsupported) {
modifier_setError(md, "%s", TIP_("Not supported in sculpt mode."));
@@ -1536,7 +1536,7 @@ static void mesh_calc_modifiers(Scene *scene, Object *ob, float (*inputVertexCos
*/
numVerts = dm->getNumVerts(dm);
deformedVerts =
- MEM_mallocN(sizeof(*deformedVerts) * numVerts, "dfmv");
+ MEM_mallocN(sizeof(*deformedVerts) * numVerts, "dfmv");
dm->getVertCos(dm, deformedVerts);
}
else {
@@ -1561,9 +1561,9 @@ static void mesh_calc_modifiers(Scene *scene, Object *ob, float (*inputVertexCos
/* determine which data layers are needed by following modifiers */
if (curr->next)
- nextmask= curr->next->mask;
+ nextmask = curr->next->mask;
else
- nextmask= dataMask;
+ nextmask = dataMask;
/* apply vertex coordinates or build a DerivedMesh as necessary */
if (dm) {
@@ -1611,7 +1611,7 @@ static void mesh_calc_modifiers(Scene *scene, Object *ob, float (*inputVertexCos
/* set the DerivedMesh to only copy needed data */
- mask= curr->mask;
+ mask = curr->mask;
/* needMapping check here fixes bug [#28112], otherwise its
* possible that it wont be copied */
mask |= append_mask;
@@ -1648,7 +1648,7 @@ static void mesh_calc_modifiers(Scene *scene, Object *ob, float (*inputVertexCos
/* create an orco derivedmesh in parallel */
if (nextmask & CD_MASK_ORCO) {
if (!orcodm)
- orcodm= create_orco_dm(ob, me, NULL, CD_ORCO);
+ orcodm = create_orco_dm(ob, me, NULL, CD_ORCO);
nextmask &= ~CD_MASK_ORCO;
DM_set_only_copy(orcodm, nextmask | CD_MASK_ORIGINDEX);
@@ -1664,7 +1664,7 @@ static void mesh_calc_modifiers(Scene *scene, Object *ob, float (*inputVertexCos
/* create cloth orco derivedmesh in parallel */
if (nextmask & CD_MASK_CLOTH_ORCO) {
if (!clothorcodm)
- clothorcodm= create_orco_dm(ob, me, NULL, CD_CLOTH_ORCO);
+ clothorcodm = create_orco_dm(ob, me, NULL, CD_CLOTH_ORCO);
nextmask &= ~CD_MASK_CLOTH_ORCO;
DM_set_only_copy(clothorcodm, nextmask | CD_MASK_ORIGINDEX);
@@ -1688,7 +1688,7 @@ static void mesh_calc_modifiers(Scene *scene, Object *ob, float (*inputVertexCos
}
}
- isPrevDeform= (mti->type == eModifierTypeType_OnlyDeform);
+ isPrevDeform = (mti->type == eModifierTypeType_OnlyDeform);
/* grab modifiers until index i */
if ((index >= 0) && (modifiers_indexInObject(ob, md) >= index))
@@ -1698,7 +1698,7 @@ static void mesh_calc_modifiers(Scene *scene, Object *ob, float (*inputVertexCos
multires_applied = 1;
}
- for (md=firstmd; md; md=md->next)
+ for (md = firstmd; md; md = md->next)
modifier_freeTemporaryData(md);
/* Yay, we are done. If we have a DerivedMesh and deformed vertices
@@ -1729,18 +1729,18 @@ static void mesh_calc_modifiers(Scene *scene, Object *ob, float (*inputVertexCos
#endif
}
else {
- int recalc_normals= 0;
+ int recalc_normals = 0;
finaldm = CDDM_from_mesh(me, ob);
if (build_shapekey_layers) {
add_shapekey_layers(finaldm, me, ob);
- recalc_normals= 1;
+ recalc_normals = 1;
}
if (deformedVerts) {
CDDM_apply_vert_coords(finaldm, deformedVerts);
- recalc_normals= 1;
+ recalc_normals = 1;
}
if (recalc_normals) {
@@ -1819,10 +1819,10 @@ static void mesh_calc_modifiers(Scene *scene, Object *ob, float (*inputVertexCos
/* NavMesh - this is a hack but saves having a NavMesh modifier */
if ((ob->gameflag & OB_NAVMESH) && (finaldm->type == DM_TYPE_CDDM)) {
DerivedMesh *tdm;
- tdm= navmesh_dm_createNavMeshForVisualization(finaldm);
+ tdm = navmesh_dm_createNavMeshForVisualization(finaldm);
if (finaldm != tdm) {
finaldm->release(finaldm);
- finaldm= tdm;
+ finaldm = tdm;
}
}
#endif /* WITH_GAMEENGINE */
@@ -1837,20 +1837,20 @@ static void mesh_calc_modifiers(Scene *scene, Object *ob, float (*inputVertexCos
if (deformedVerts && deformedVerts != inputVertexCos)
MEM_freeN(deformedVerts);
- BLI_linklist_free((LinkNode*)datamasks, NULL);
+ BLI_linklist_free((LinkNode *)datamasks, NULL);
}
-float (*editbmesh_get_vertex_cos(BMEditMesh *em, int *numVerts_r))[3]
+float (*editbmesh_get_vertex_cos(BMEditMesh * em, int *numVerts_r))[3]
{
int i, numVerts = *numVerts_r = em->bm->totvert;
float (*cos)[3];
BMIter iter;
BMVert *eve;
- cos = MEM_mallocN(sizeof(float)*3*numVerts, "vertexcos");
+ cos = MEM_mallocN(sizeof(float) * 3 * numVerts, "vertexcos");
eve = BM_iter_new(&iter, em->bm, BM_VERTS_OF_MESH, NULL);
- for (i=0; eve; eve=BM_iter_step(&iter), i++) {
+ for (i = 0; eve; eve = BM_iter_step(&iter), i++) {
copy_v3_v3(cos[i], eve->co);
}
@@ -1872,8 +1872,8 @@ int editbmesh_modifier_is_enabled(Scene *scene, ModifierData *md, DerivedMesh *d
}
static void editbmesh_calc_modifiers(Scene *scene, Object *ob, BMEditMesh *em, DerivedMesh **cage_r,
- DerivedMesh **final_r,
- CustomDataMask dataMask)
+ DerivedMesh **final_r,
+ CustomDataMask dataMask)
{
ModifierData *md;
float (*deformedVerts)[3] = NULL;
@@ -1898,7 +1898,7 @@ static void editbmesh_calc_modifiers(Scene *scene, Object *ob, BMEditMesh *em, D
for (i = 0; md; i++, md = md->next, curr = curr->next) {
ModifierTypeInfo *mti = modifierType_getInfo(md->type);
- md->scene= scene;
+ md->scene = scene;
if (!editbmesh_modifier_is_enabled(scene, md, dm))
continue;
@@ -1925,7 +1925,7 @@ static void editbmesh_calc_modifiers(Scene *scene, Object *ob, BMEditMesh *em, D
*/
numVerts = dm->getNumVerts(dm);
deformedVerts =
- MEM_mallocN(sizeof(*deformedVerts) * numVerts, "dfmv");
+ MEM_mallocN(sizeof(*deformedVerts) * numVerts, "dfmv");
dm->getVertCos(dm, deformedVerts);
}
else {
@@ -1968,10 +1968,10 @@ static void editbmesh_calc_modifiers(Scene *scene, Object *ob, BMEditMesh *em, D
}
/* create an orco derivedmesh in parallel */
- mask= curr->mask;
+ mask = curr->mask;
if (mask & CD_MASK_ORCO) {
if (!orcodm)
- orcodm= create_orco_dm(ob, ob->data, em, CD_ORCO);
+ orcodm = create_orco_dm(ob, ob->data, em, CD_ORCO);
mask &= ~CD_MASK_ORCO;
DM_set_only_copy(orcodm, mask | CD_MASK_ORIGINDEX);
@@ -1989,7 +1989,7 @@ static void editbmesh_calc_modifiers(Scene *scene, Object *ob, BMEditMesh *em, D
}
/* set the DerivedMesh to only copy needed data */
- mask= curr->mask; /* CD_MASK_ORCO may have been cleared above */
+ mask = curr->mask; /* CD_MASK_ORCO may have been cleared above */
DM_set_only_copy(dm, mask | CD_MASK_ORIGINDEX);
@@ -2028,13 +2028,13 @@ static void editbmesh_calc_modifiers(Scene *scene, Object *ob, BMEditMesh *em, D
}
else {
*cage_r =
- getEditDerivedBMesh(em, ob,
- deformedVerts ? MEM_dupallocN(deformedVerts) : NULL);
+ getEditDerivedBMesh(em, ob,
+ deformedVerts ? MEM_dupallocN(deformedVerts) : NULL);
}
}
}
- BLI_linklist_free((LinkNode*)datamasks, NULL);
+ BLI_linklist_free((LinkNode *)datamasks, NULL);
/* Yay, we are done. If we have a DerivedMesh and deformed vertices need
* to apply these back onto the DerivedMesh. If we have no DerivedMesh
@@ -2093,9 +2093,9 @@ static void editbmesh_calc_modifiers(Scene *scene, Object *ob, BMEditMesh *em, D
static void clear_mesh_caches(Object *ob)
{
- Mesh *me= ob->data;
+ Mesh *me = ob->data;
- /* also serves as signal to remake texspace */
+ /* also serves as signal to remake texspace */
if (ob->bb) {
MEM_freeN(ob->bb);
ob->bb = NULL;
@@ -2110,12 +2110,12 @@ static void clear_mesh_caches(Object *ob)
if (ob->derivedFinal) {
ob->derivedFinal->needsFree = 1;
ob->derivedFinal->release(ob->derivedFinal);
- ob->derivedFinal= NULL;
+ ob->derivedFinal = NULL;
}
if (ob->derivedDeform) {
ob->derivedDeform->needsFree = 1;
ob->derivedDeform->release(ob->derivedDeform);
- ob->derivedDeform= NULL;
+ ob->derivedDeform = NULL;
}
if (ob->sculpt) {
@@ -2126,18 +2126,18 @@ static void clear_mesh_caches(Object *ob)
static void mesh_build_data(Scene *scene, Object *ob, CustomDataMask dataMask,
int build_shapekey_layers)
{
- Object *obact = scene->basact?scene->basact->object:NULL;
+ Object *obact = scene->basact ? scene->basact->object : NULL;
int editing = paint_facesel_test(ob);
/* weight paint and face select need original indices because of selection buffer drawing */
- int needMapping = (ob==obact) && (editing || (ob->mode & (OB_MODE_WEIGHT_PAINT|OB_MODE_VERTEX_PAINT|OB_MODE_TEXTURE_PAINT)));
+ int needMapping = (ob == obact) && (editing || (ob->mode & (OB_MODE_WEIGHT_PAINT | OB_MODE_VERTEX_PAINT | OB_MODE_TEXTURE_PAINT)));
clear_mesh_caches(ob);
mesh_calc_modifiers(scene, ob, NULL, &ob->derivedDeform,
- &ob->derivedFinal, 0, 1,
- needMapping, dataMask, -1, 1, build_shapekey_layers);
+ &ob->derivedFinal, 0, 1,
+ needMapping, dataMask, -1, 1, build_shapekey_layers);
- DM_set_object_boundbox (ob, ob->derivedFinal);
+ DM_set_object_boundbox(ob, ob->derivedFinal);
ob->derivedFinal->needsFree = 0;
ob->derivedDeform->needsFree = 0;
@@ -2146,7 +2146,7 @@ static void mesh_build_data(Scene *scene, Object *ob, CustomDataMask dataMask,
if ((ob->mode & OB_MODE_SCULPT) && ob->sculpt) {
/* create PBVH immediately (would be created on the fly too,
* but this avoids waiting on first stroke) */
- ob->sculpt->pbvh= ob->derivedFinal->getPBVH(ob, ob->derivedFinal);
+ ob->sculpt->pbvh = ob->derivedFinal->getPBVH(ob, ob->derivedFinal);
}
}
@@ -2155,7 +2155,7 @@ static void editbmesh_build_data(Scene *scene, Object *obedit, BMEditMesh *em, C
clear_mesh_caches(obedit);
if (em->derivedFinal) {
- if (em->derivedFinal!=em->derivedCage) {
+ if (em->derivedFinal != em->derivedCage) {
em->derivedFinal->needsFree = 1;
em->derivedFinal->release(em->derivedFinal);
}
@@ -2168,7 +2168,7 @@ static void editbmesh_build_data(Scene *scene, Object *obedit, BMEditMesh *em, C
}
editbmesh_calc_modifiers(scene, obedit, em, &em->derivedCage, &em->derivedFinal, dataMask);
- DM_set_object_boundbox (obedit, em->derivedFinal);
+ DM_set_object_boundbox(obedit, em->derivedFinal);
em->lastDataMask = dataMask;
em->derivedFinal->needsFree = 0;
@@ -2238,7 +2238,7 @@ DerivedMesh *mesh_create_derived_view(Scene *scene, Object *ob, CustomDataMask d
}
DerivedMesh *mesh_create_derived_no_deform(Scene *scene, Object *ob, float (*vertCos)[3],
- CustomDataMask dataMask)
+ CustomDataMask dataMask)
{
DerivedMesh *final;
@@ -2248,7 +2248,7 @@ DerivedMesh *mesh_create_derived_no_deform(Scene *scene, Object *ob, float (*ver
}
DerivedMesh *mesh_create_derived_no_virtual(Scene *scene, Object *ob, float (*vertCos)[3],
- CustomDataMask dataMask)
+ CustomDataMask dataMask)
{
DerivedMesh *final;
@@ -2258,7 +2258,7 @@ DerivedMesh *mesh_create_derived_no_virtual(Scene *scene, Object *ob, float (*ve
}
DerivedMesh *mesh_create_derived_physics(Scene *scene, Object *ob, float (*vertCos)[3],
- CustomDataMask dataMask)
+ CustomDataMask dataMask)
{
DerivedMesh *final;
@@ -2268,8 +2268,8 @@ DerivedMesh *mesh_create_derived_physics(Scene *scene, Object *ob, float (*vertC
}
DerivedMesh *mesh_create_derived_no_deform_render(Scene *scene, Object *ob,
- float (*vertCos)[3],
- CustomDataMask dataMask)
+ float (*vertCos)[3],
+ CustomDataMask dataMask)
{
DerivedMesh *final;
@@ -2281,7 +2281,7 @@ DerivedMesh *mesh_create_derived_no_deform_render(Scene *scene, Object *ob,
/***/
DerivedMesh *editbmesh_get_derived_cage_and_final(Scene *scene, Object *obedit, BMEditMesh *em, DerivedMesh **final_r,
- CustomDataMask dataMask)
+ CustomDataMask dataMask)
{
/* if there's no derived mesh or the last data mask used doesn't include
* the data we need, rebuild the derived mesh
@@ -2323,13 +2323,13 @@ static void make_vertexcosnos__mapFunc(void *userData, int index, const float co
{
float *vec = userData;
- vec+= 6*index;
+ vec += 6 * index;
/* check if we've been here before (normal should not be 0) */
if (vec[3] || vec[4] || vec[5]) return;
copy_v3_v3(vec, co);
- vec+= 3;
+ vec += 3;
if (no_f) {
copy_v3_v3(vec, no_f);
}
@@ -2345,27 +2345,27 @@ static void make_vertexcosnos__mapFunc(void *userData, int index, const float co
float *mesh_get_mapped_verts_nors(Scene *scene, Object *ob)
{
- Mesh *me= ob->data;
+ Mesh *me = ob->data;
DerivedMesh *dm;
float *vertexcosnos;
/* lets prevent crashing... */
- if (ob->type!=OB_MESH || me->totvert==0)
+ if (ob->type != OB_MESH || me->totvert == 0)
return NULL;
- dm= mesh_get_derived_final(scene, ob, CD_MASK_BAREMESH|CD_MASK_ORIGINDEX);
- vertexcosnos= MEM_callocN(6*sizeof(float)*me->totvert, "vertexcosnos map");
+ dm = mesh_get_derived_final(scene, ob, CD_MASK_BAREMESH | CD_MASK_ORIGINDEX);
+ vertexcosnos = MEM_callocN(6 * sizeof(float) * me->totvert, "vertexcosnos map");
if (dm->foreachMappedVert) {
dm->foreachMappedVert(dm, make_vertexcosnos__mapFunc, vertexcosnos);
}
else {
- float *fp= vertexcosnos;
+ float *fp = vertexcosnos;
int a;
- for (a=0; a< me->totvert; a++, fp+=6) {
+ for (a = 0; a < me->totvert; a++, fp += 6) {
dm->getVertCo(dm, a, fp);
- dm->getVertNo(dm, a, fp+3);
+ dm->getVertNo(dm, a, fp + 3);
}
}
@@ -2375,14 +2375,13 @@ float *mesh_get_mapped_verts_nors(Scene *scene, Object *ob)
/* ******************* GLSL ******************** */
-typedef struct
-{
- float * precomputedFaceNormals;
- MTFace * mtface; // texture coordinates
- MFace * mface; // indices
- MVert * mvert; // vertices & normals
+typedef struct {
+ float *precomputedFaceNormals;
+ MTFace *mtface; // texture coordinates
+ MFace *mface; // indices
+ MVert *mvert; // vertices & normals
float (*orco)[3];
- float (*tangent)[4]; // destination
+ float (*tangent)[4]; // destination
int numTessFaces;
} SGLSLMeshToTangent;
@@ -2390,56 +2389,56 @@ typedef struct
// interface
#include "mikktspace.h"
-static int GetNumFaces(const SMikkTSpaceContext * pContext)
+static int GetNumFaces(const SMikkTSpaceContext *pContext)
{
- SGLSLMeshToTangent * pMesh = (SGLSLMeshToTangent *) pContext->m_pUserData;
+ SGLSLMeshToTangent *pMesh = (SGLSLMeshToTangent *) pContext->m_pUserData;
return pMesh->numTessFaces;
}
-static int GetNumVertsOfFace(const SMikkTSpaceContext * pContext, const int face_num)
+static int GetNumVertsOfFace(const SMikkTSpaceContext *pContext, const int face_num)
{
- SGLSLMeshToTangent * pMesh = (SGLSLMeshToTangent *) pContext->m_pUserData;
- return pMesh->mface[face_num].v4!=0 ? 4 : 3;
+ SGLSLMeshToTangent *pMesh = (SGLSLMeshToTangent *) pContext->m_pUserData;
+ return pMesh->mface[face_num].v4 != 0 ? 4 : 3;
}
-static void GetPosition(const SMikkTSpaceContext * pContext, float fPos[], const int face_num, const int vert_index)
+static void GetPosition(const SMikkTSpaceContext *pContext, float fPos[], const int face_num, const int vert_index)
{
//assert(vert_index>=0 && vert_index<4);
- SGLSLMeshToTangent * pMesh = (SGLSLMeshToTangent *) pContext->m_pUserData;
- const float *co= pMesh->mvert[(&pMesh->mface[face_num].v1)[vert_index]].co;
+ SGLSLMeshToTangent *pMesh = (SGLSLMeshToTangent *) pContext->m_pUserData;
+ const float *co = pMesh->mvert[(&pMesh->mface[face_num].v1)[vert_index]].co;
copy_v3_v3(fPos, co);
}
-static void GetTextureCoordinate(const SMikkTSpaceContext * pContext, float fUV[], const int face_num, const int vert_index)
+static void GetTextureCoordinate(const SMikkTSpaceContext *pContext, float fUV[], const int face_num, const int vert_index)
{
//assert(vert_index>=0 && vert_index<4);
- SGLSLMeshToTangent * pMesh = (SGLSLMeshToTangent *) pContext->m_pUserData;
+ SGLSLMeshToTangent *pMesh = (SGLSLMeshToTangent *) pContext->m_pUserData;
- if (pMesh->mtface!=NULL) {
- float * uv = pMesh->mtface[face_num].uv[vert_index];
- fUV[0]=uv[0]; fUV[1]=uv[1];
+ if (pMesh->mtface != NULL) {
+ float *uv = pMesh->mtface[face_num].uv[vert_index];
+ fUV[0] = uv[0]; fUV[1] = uv[1];
}
else {
- const float *orco= pMesh->orco[(&pMesh->mface[face_num].v1)[vert_index]];
+ const float *orco = pMesh->orco[(&pMesh->mface[face_num].v1)[vert_index]];
map_to_sphere(&fUV[0], &fUV[1], orco[0], orco[1], orco[2]);
}
}
-static void GetNormal(const SMikkTSpaceContext * pContext, float fNorm[], const int face_num, const int vert_index)
+static void GetNormal(const SMikkTSpaceContext *pContext, float fNorm[], const int face_num, const int vert_index)
{
//assert(vert_index>=0 && vert_index<4);
- SGLSLMeshToTangent * pMesh = (SGLSLMeshToTangent *) pContext->m_pUserData;
+ SGLSLMeshToTangent *pMesh = (SGLSLMeshToTangent *) pContext->m_pUserData;
const int smoothnormal = (pMesh->mface[face_num].flag & ME_SMOOTH);
- if (!smoothnormal) { // flat
+ if (!smoothnormal) { // flat
if (pMesh->precomputedFaceNormals) {
- copy_v3_v3(fNorm, &pMesh->precomputedFaceNormals[3*face_num]);
+ copy_v3_v3(fNorm, &pMesh->precomputedFaceNormals[3 * face_num]);
}
else {
- MFace *mf= &pMesh->mface[face_num];
- float *p0= pMesh->mvert[mf->v1].co;
- float *p1= pMesh->mvert[mf->v2].co;
- float *p2= pMesh->mvert[mf->v3].co;
+ MFace *mf = &pMesh->mface[face_num];
+ float *p0 = pMesh->mvert[mf->v1].co;
+ float *p1 = pMesh->mvert[mf->v2].co;
+ float *p2 = pMesh->mvert[mf->v3].co;
if (mf->v4) {
float *p3 = pMesh->mvert[mf->v4].co;
@@ -2451,17 +2450,17 @@ static void GetNormal(const SMikkTSpaceContext * pContext, float fNorm[], const
}
}
else {
- const short *no= pMesh->mvert[(&pMesh->mface[face_num].v1)[vert_index]].no;
+ const short *no = pMesh->mvert[(&pMesh->mface[face_num].v1)[vert_index]].no;
normal_short_to_float_v3(fNorm, no);
}
}
-static void SetTSpace(const SMikkTSpaceContext * pContext, const float fvTangent[], const float fSign, const int face_num, const int iVert)
+static void SetTSpace(const SMikkTSpaceContext *pContext, const float fvTangent[], const float fSign, const int face_num, const int iVert)
{
//assert(vert_index>=0 && vert_index<4);
- SGLSLMeshToTangent * pMesh = (SGLSLMeshToTangent *) pContext->m_pUserData;
- float * pRes = pMesh->tangent[4*face_num+iVert];
+ SGLSLMeshToTangent *pMesh = (SGLSLMeshToTangent *) pContext->m_pUserData;
+ float *pRes = pMesh->tangent[4 * face_num + iVert];
copy_v3_v3(pRes, fvTangent);
- pRes[3]=fSign;
+ pRes[3] = fSign;
}
@@ -2471,9 +2470,9 @@ void DM_add_tangent_layer(DerivedMesh *dm)
MTFace *mtface, *tf;
MFace *mface, *mf;
MVert *mvert, *v1, *v2, *v3, *v4;
- MemArena *arena= NULL;
- VertexTangent **vtangents= NULL;
- float (*orco)[3]= NULL, (*tangent)[4];
+ MemArena *arena = NULL;
+ VertexTangent **vtangents = NULL;
+ float (*orco)[3] = NULL, (*tangent)[4];
float *uv1, *uv2, *uv3, *uv4, *vtang;
float fno[3], tang[3], uv[4][2];
int i, j, len, mf_vi[4], totvert, totface, iCalcNewMethod;
@@ -2485,34 +2484,34 @@ void DM_add_tangent_layer(DerivedMesh *dm)
nors = dm->getTessFaceDataArray(dm, CD_NORMAL);
/* check we have all the needed layers */
- totvert= dm->getNumVerts(dm);
- totface= dm->getNumTessFaces(dm);
+ totvert = dm->getNumVerts(dm);
+ totface = dm->getNumTessFaces(dm);
- mvert= dm->getVertArray(dm);
- mface= dm->getTessFaceArray(dm);
- mtface= dm->getTessFaceDataArray(dm, CD_MTFACE);
+ mvert = dm->getVertArray(dm);
+ mface = dm->getTessFaceArray(dm);
+ mtface = dm->getTessFaceDataArray(dm, CD_MTFACE);
if (!mtface) {
- orco= dm->getVertDataArray(dm, CD_ORCO);
+ orco = dm->getVertDataArray(dm, CD_ORCO);
if (!orco)
return;
}
/* create tangent layer */
DM_add_tessface_layer(dm, CD_TANGENT, CD_CALLOC, NULL);
- tangent= DM_get_tessface_data_layer(dm, CD_TANGENT);
+ tangent = DM_get_tessface_data_layer(dm, CD_TANGENT);
/* allocate some space */
- arena= BLI_memarena_new(BLI_MEMARENA_STD_BUFSIZE, "tangent layer arena");
+ arena = BLI_memarena_new(BLI_MEMARENA_STD_BUFSIZE, "tangent layer arena");
BLI_memarena_use_calloc(arena);
- vtangents= MEM_callocN(sizeof(VertexTangent*)*totvert, "VertexTangent");
+ vtangents = MEM_callocN(sizeof(VertexTangent *) * totvert, "VertexTangent");
// new computation method
iCalcNewMethod = 1;
if (iCalcNewMethod != 0) {
- SGLSLMeshToTangent mesh2tangent= {0};
- SMikkTSpaceContext sContext= {0};
- SMikkTSpaceInterface sInterface= {0};
+ SGLSLMeshToTangent mesh2tangent = {0};
+ SMikkTSpaceContext sContext = {0};
+ SMikkTSpaceInterface sInterface = {0};
mesh2tangent.precomputedFaceNormals = nors;
mesh2tangent.mtface = mtface;
@@ -2537,28 +2536,28 @@ void DM_add_tangent_layer(DerivedMesh *dm)
if (!iCalcNewMethod) {
/* sum tangents at connected vertices */
- for (i=0, tf=mtface, mf=mface; i < totface; mf++, tf++, i++) {
- v1= &mvert[mf->v1];
- v2= &mvert[mf->v2];
- v3= &mvert[mf->v3];
+ for (i = 0, tf = mtface, mf = mface; i < totface; mf++, tf++, i++) {
+ v1 = &mvert[mf->v1];
+ v2 = &mvert[mf->v2];
+ v3 = &mvert[mf->v3];
if (mf->v4) {
- v4= &mvert[mf->v4];
+ v4 = &mvert[mf->v4];
normal_quad_v3(fno, v4->co, v3->co, v2->co, v1->co);
}
else {
- v4= NULL;
+ v4 = NULL;
normal_tri_v3(fno, v3->co, v2->co, v1->co);
}
if (mtface) {
- uv1= tf->uv[0];
- uv2= tf->uv[1];
- uv3= tf->uv[2];
- uv4= tf->uv[3];
+ uv1 = tf->uv[0];
+ uv2 = tf->uv[1];
+ uv3 = tf->uv[2];
+ uv4 = tf->uv[3];
}
else {
- uv1= uv[0]; uv2= uv[1]; uv3= uv[2]; uv4= uv[3];
+ uv1 = uv[0]; uv2 = uv[1]; uv3 = uv[2]; uv4 = uv[3];
map_to_sphere(&uv[0][0], &uv[0][1], orco[mf->v1][0], orco[mf->v1][1], orco[mf->v1][2]);
map_to_sphere(&uv[1][0], &uv[1][1], orco[mf->v2][0], orco[mf->v2][1], orco[mf->v2][2]);
map_to_sphere(&uv[2][0], &uv[2][1], orco[mf->v3][0], orco[mf->v3][1], orco[mf->v3][2]);
@@ -2572,7 +2571,7 @@ void DM_add_tangent_layer(DerivedMesh *dm)
sum_or_add_vertex_tangent(arena, &vtangents[mf->v3], tang, uv3);
if (mf->v4) {
- v4= &mvert[mf->v4];
+ v4 = &mvert[mf->v4];
tangent_from_uv(uv1, uv3, uv4, v1->co, v3->co, v4->co, fno, tang);
sum_or_add_vertex_tangent(arena, &vtangents[mf->v1], tang, uv1);
@@ -2582,26 +2581,26 @@ void DM_add_tangent_layer(DerivedMesh *dm)
}
/* write tangent to layer */
- for (i=0, tf=mtface, mf=mface; i < totface; mf++, tf++, i++, tangent+=4) {
- len= (mf->v4)? 4 : 3;
+ for (i = 0, tf = mtface, mf = mface; i < totface; mf++, tf++, i++, tangent += 4) {
+ len = (mf->v4) ? 4 : 3;
if (mtface == NULL) {
map_to_sphere(&uv[0][0], &uv[0][1], orco[mf->v1][0], orco[mf->v1][1], orco[mf->v1][2]);
map_to_sphere(&uv[1][0], &uv[1][1], orco[mf->v2][0], orco[mf->v2][1], orco[mf->v2][2]);
map_to_sphere(&uv[2][0], &uv[2][1], orco[mf->v3][0], orco[mf->v3][1], orco[mf->v3][2]);
- if (len==4)
+ if (len == 4)
map_to_sphere(&uv[3][0], &uv[3][1], orco[mf->v4][0], orco[mf->v4][1], orco[mf->v4][2]);
}
- mf_vi[0]= mf->v1;
- mf_vi[1]= mf->v2;
- mf_vi[2]= mf->v3;
- mf_vi[3]= mf->v4;
+ mf_vi[0] = mf->v1;
+ mf_vi[1] = mf->v2;
+ mf_vi[2] = mf->v3;
+ mf_vi[3] = mf->v4;
- for (j=0; j<len; j++) {
- vtang= find_vertex_tangent(vtangents[mf_vi[j]], mtface ? tf->uv[j] : uv[j]);
+ for (j = 0; j < len; j++) {
+ vtang = find_vertex_tangent(vtangents[mf_vi[j]], mtface ? tf->uv[j] : uv[j]);
normalize_v3_v3(tangent[j], vtang);
- ((float *) tangent[j])[3]=1.0f;
+ ((float *) tangent[j])[3] = 1.0f;
}
}
}
@@ -2613,34 +2612,34 @@ void DM_add_tangent_layer(DerivedMesh *dm)
void DM_calc_auto_bump_scale(DerivedMesh *dm)
{
/* int totvert= dm->getNumVerts(dm); */ /* UNUSED */
- int totface= dm->getNumTessFaces(dm);
+ int totface = dm->getNumTessFaces(dm);
- MVert * mvert = dm->getVertArray(dm);
- MFace * mface = dm->getTessFaceArray(dm);
- MTFace * mtface = dm->getTessFaceDataArray(dm, CD_MTFACE);
+ MVert *mvert = dm->getVertArray(dm);
+ MFace *mface = dm->getTessFaceArray(dm);
+ MTFace *mtface = dm->getTessFaceDataArray(dm, CD_MTFACE);
if (mtface) {
double dsum = 0.0;
int nr_accumulated = 0;
int f;
- for (f=0; f < totface; f++ ) {
+ for (f = 0; f < totface; f++) {
{
- float * verts[4], * tex_coords[4];
- const int nr_verts = mface[f].v4!=0 ? 4 : 3;
+ float *verts[4], *tex_coords[4];
+ const int nr_verts = mface[f].v4 != 0 ? 4 : 3;
int i, is_degenerate;
- verts[0]=mvert[mface[f].v1].co; verts[1]=mvert[mface[f].v2].co; verts[2]=mvert[mface[f].v3].co;
- tex_coords[0]=mtface[f].uv[0]; tex_coords[1]=mtface[f].uv[1]; tex_coords[2]=mtface[f].uv[2];
- if (nr_verts==4) {
- verts[3]=mvert[mface[f].v4].co;
- tex_coords[3]=mtface[f].uv[3];
+ verts[0] = mvert[mface[f].v1].co; verts[1] = mvert[mface[f].v2].co; verts[2] = mvert[mface[f].v3].co;
+ tex_coords[0] = mtface[f].uv[0]; tex_coords[1] = mtface[f].uv[1]; tex_coords[2] = mtface[f].uv[2];
+ if (nr_verts == 4) {
+ verts[3] = mvert[mface[f].v4].co;
+ tex_coords[3] = mtface[f].uv[3];
}
// discard degenerate faces
is_degenerate = 0;
- if ( equals_v3v3(verts[0], verts[1]) || equals_v3v3(verts[0], verts[2]) || equals_v3v3(verts[1], verts[2]) ||
- equals_v2v2(tex_coords[0], tex_coords[1]) || equals_v2v2(tex_coords[0], tex_coords[2]) || equals_v2v2(tex_coords[1], tex_coords[2]))
+ if (equals_v3v3(verts[0], verts[1]) || equals_v3v3(verts[0], verts[2]) || equals_v3v3(verts[1], verts[2]) ||
+ equals_v2v2(tex_coords[0], tex_coords[1]) || equals_v2v2(tex_coords[0], tex_coords[2]) || equals_v2v2(tex_coords[1], tex_coords[2]))
{
is_degenerate = 1;
}
@@ -2662,10 +2661,10 @@ void DM_calc_auto_bump_scale(DerivedMesh *dm)
i = 0;
while (is_degenerate == 0 && i < 4) {
float cur_edge[2], signed_area;
- sub_v2_v2v2(cur_edge, tex_coords[(i+1)&0x3], tex_coords[i]);
- signed_area = prev_edge[0]*cur_edge[1] - prev_edge[1]*cur_edge[0];
+ sub_v2_v2v2(cur_edge, tex_coords[(i + 1) & 0x3], tex_coords[i]);
+ signed_area = prev_edge[0] * cur_edge[1] - prev_edge[1] * cur_edge[0];
- if (i == 0 ) {
+ if (i == 0) {
is_signed = (signed_area < 0.0f) ? 1 : 0;
}
else if ((is_signed != 0) != (signed_area < 0.0f)) {
@@ -2682,9 +2681,9 @@ void DM_calc_auto_bump_scale(DerivedMesh *dm)
// proceed if not a degenerate face
if (is_degenerate == 0) {
- int nr_tris_to_pile=0;
+ int nr_tris_to_pile = 0;
// quads split at shortest diagonal
- int offs = 0; // initial triangulation is 0,1,2 and 0, 2, 3
+ int offs = 0; // initial triangulation is 0,1,2 and 0, 2, 3
if (nr_verts == 4) {
float pos_len_diag0, pos_len_diag1;
float vtmp[3];
@@ -2693,10 +2692,10 @@ void DM_calc_auto_bump_scale(DerivedMesh *dm)
sub_v3_v3v3(vtmp, verts[3], verts[1]);
pos_len_diag1 = dot_v3v3(vtmp, vtmp);
- if (pos_len_diag1<pos_len_diag0) {
- offs=1; // alter split
+ if (pos_len_diag1 < pos_len_diag0) {
+ offs = 1; // alter split
}
- else if (pos_len_diag0==pos_len_diag1) { /* do UV check instead */
+ else if (pos_len_diag0 == pos_len_diag1) { /* do UV check instead */
float tex_len_diag0, tex_len_diag1;
sub_v2_v2v2(vtmp, tex_coords[2], tex_coords[0]);
@@ -2704,34 +2703,34 @@ void DM_calc_auto_bump_scale(DerivedMesh *dm)
sub_v2_v2v2(vtmp, tex_coords[3], tex_coords[1]);
tex_len_diag1 = dot_v2v2(vtmp, vtmp);
- if (tex_len_diag1<tex_len_diag0) {
- offs=1; /* alter split */
+ if (tex_len_diag1 < tex_len_diag0) {
+ offs = 1; /* alter split */
}
}
}
nr_tris_to_pile = nr_verts - 2;
- if (nr_tris_to_pile==1 || nr_tris_to_pile==2) {
- const int indices[] = {offs+0, offs+1, offs+2, offs+0, offs+2, (offs+3)&0x3 };
+ if (nr_tris_to_pile == 1 || nr_tris_to_pile == 2) {
+ const int indices[] = {offs + 0, offs + 1, offs + 2, offs + 0, offs + 2, (offs + 3) & 0x3 };
int t;
- for (t=0; t<nr_tris_to_pile; t++ ) {
+ for (t = 0; t < nr_tris_to_pile; t++) {
float f2x_area_uv;
- float * p0 = verts[indices[t*3+0]];
- float * p1 = verts[indices[t*3+1]];
- float * p2 = verts[indices[t*3+2]];
+ float *p0 = verts[indices[t * 3 + 0]];
+ float *p1 = verts[indices[t * 3 + 1]];
+ float *p2 = verts[indices[t * 3 + 2]];
float edge_t0[2], edge_t1[2];
- sub_v2_v2v2(edge_t0, tex_coords[indices[t*3+1]], tex_coords[indices[t*3+0]]);
- sub_v2_v2v2(edge_t1, tex_coords[indices[t*3+2]], tex_coords[indices[t*3+0]]);
+ sub_v2_v2v2(edge_t0, tex_coords[indices[t * 3 + 1]], tex_coords[indices[t * 3 + 0]]);
+ sub_v2_v2v2(edge_t1, tex_coords[indices[t * 3 + 2]], tex_coords[indices[t * 3 + 0]]);
- f2x_area_uv = fabsf(edge_t0[0]*edge_t1[1] - edge_t0[1]*edge_t1[0]);
- if (f2x_area_uv>FLT_EPSILON) {
+ f2x_area_uv = fabsf(edge_t0[0] * edge_t1[1] - edge_t0[1] * edge_t1[0]);
+ if (f2x_area_uv > FLT_EPSILON) {
float norm[3], v0[3], v1[3], f2x_surf_area, fsurf_ratio;
sub_v3_v3v3(v0, p1, p0);
sub_v3_v3v3(v1, p2, p0);
cross_v3_v3v3(norm, v0, v1);
f2x_surf_area = len_v3(norm);
- fsurf_ratio = f2x_surf_area/f2x_area_uv; // tri area divided by texture area
+ fsurf_ratio = f2x_surf_area / f2x_area_uv; // tri area divided by texture area
nr_accumulated++;
dsum += (double)(fsurf_ratio);
@@ -2744,8 +2743,8 @@ void DM_calc_auto_bump_scale(DerivedMesh *dm)
// finalize
{
- const float avg_area_ratio = (nr_accumulated>0) ? ((float)(dsum / nr_accumulated)) : 1.0f;
- const float use_as_render_bump_scale = sqrtf(avg_area_ratio); // use width of average surface ratio as your bump scale
+ const float avg_area_ratio = (nr_accumulated > 0) ? ((float)(dsum / nr_accumulated)) : 1.0f;
+ const float use_as_render_bump_scale = sqrtf(avg_area_ratio); // use width of average surface ratio as your bump scale
dm->auto_bump_scale = use_as_render_bump_scale;
}
}
@@ -2786,7 +2785,7 @@ void DM_vertex_attributes_from_gpu(DerivedMesh *dm, GPUVertexAttribs *gattribs,
if (gattribs->layer[b].name[0])
layer = CustomData_get_named_layer_index(ldata, CD_MLOOPUV,
- gattribs->layer[b].name);
+ gattribs->layer[b].name);
else
layer = CustomData_get_active_layer_index(ldata, CD_MLOOPUV);
@@ -2802,7 +2801,7 @@ void DM_vertex_attributes_from_gpu(DerivedMesh *dm, GPUVertexAttribs *gattribs,
else {
if (gattribs->layer[b].name[0])
layer = CustomData_get_named_layer_index(tfdata, CD_MTFACE,
- gattribs->layer[b].name);
+ gattribs->layer[b].name);
else
layer = CustomData_get_active_layer_index(tfdata, CD_MTFACE);
@@ -2823,7 +2822,7 @@ void DM_vertex_attributes_from_gpu(DerivedMesh *dm, GPUVertexAttribs *gattribs,
if (gattribs->layer[b].name[0])
layer = CustomData_get_named_layer_index(ldata, CD_MLOOPCOL,
- gattribs->layer[b].name);
+ gattribs->layer[b].name);
else
layer = CustomData_get_active_layer_index(ldata, CD_MLOOPCOL);
@@ -2839,7 +2838,7 @@ void DM_vertex_attributes_from_gpu(DerivedMesh *dm, GPUVertexAttribs *gattribs,
/* vertex colors */
if (gattribs->layer[b].name[0])
layer = CustomData_get_named_layer_index(tfdata, CD_MCOL,
- gattribs->layer[b].name);
+ gattribs->layer[b].name);
else
layer = CustomData_get_active_layer_index(tfdata, CD_MCOL);
@@ -2890,7 +2889,7 @@ void DM_set_object_boundbox(Object *ob, DerivedMesh *dm)
dm->getMinMax(dm, min, max);
if (!ob->bb)
- ob->bb= MEM_callocN(sizeof(BoundBox), "DM-BoundBox");
+ ob->bb = MEM_callocN(sizeof(BoundBox), "DM-BoundBox");
BKE_boundbox_init_from_minmax(ob->bb, min, max);
}
@@ -2914,12 +2913,12 @@ BLI_INLINE int navmesh_bit(int a, int b)
BLI_INLINE void navmesh_intToCol(int i, float col[3])
{
- int r = navmesh_bit(i, 0) + navmesh_bit(i, 3) * 2 + 1;
- int g = navmesh_bit(i, 1) + navmesh_bit(i, 4) * 2 + 1;
- int b = navmesh_bit(i, 2) + navmesh_bit(i, 5) * 2 + 1;
- col[0] = 1 - r*63.0f/255.0f;
- col[1] = 1 - g*63.0f/255.0f;
- col[2] = 1 - b*63.0f/255.0f;
+ int r = navmesh_bit(i, 0) + navmesh_bit(i, 3) * 2 + 1;
+ int g = navmesh_bit(i, 1) + navmesh_bit(i, 4) * 2 + 1;
+ int b = navmesh_bit(i, 2) + navmesh_bit(i, 5) * 2 + 1;
+ col[0] = 1 - r * 63.0f / 255.0f;
+ col[1] = 1 - g * 63.0f / 255.0f;
+ col[2] = 1 - b * 63.0f / 255.0f;
}
static void navmesh_drawColored(DerivedMesh *dm)
@@ -2948,7 +2947,7 @@ static void navmesh_drawColored(DerivedMesh *dm)
//glShadeModel(GL_SMOOTH);
glBegin(glmode = GL_QUADS);
for (a = 0; a < dm->numTessFaceData; a++, mface++) {
- int new_glmode = mface->v4?GL_QUADS:GL_TRIANGLES;
+ int new_glmode = mface->v4 ? GL_QUADS : GL_TRIANGLES;
int pi = polygonIdx[a];
if (pi <= 0) {
zero_v3(col);
@@ -2975,9 +2974,9 @@ static void navmesh_drawColored(DerivedMesh *dm)
}
static void navmesh_DM_drawFacesTex(DerivedMesh *dm,
- DMSetDrawOptionsTex setDrawOptions,
- DMCompareDrawOptions compareDrawOptions,
- void *userData)
+ DMSetDrawOptionsTex setDrawOptions,
+ DMCompareDrawOptions compareDrawOptions,
+ void *userData)
{
(void) setDrawOptions;
(void) compareDrawOptions;
@@ -3002,21 +3001,21 @@ static DerivedMesh *navmesh_dm_createNavMeshForVisualization(DerivedMesh *dm)
DerivedMesh *result;
int maxFaces = dm->getNumPolys(dm);
int *recastData;
- int vertsPerPoly=0, nverts=0, ndtris=0, npolys=0;
- float* verts=NULL;
- unsigned short *dtris=NULL, *dmeshes=NULL, *polys=NULL;
- int *dtrisToPolysMap=NULL, *dtrisToTrisMap=NULL, *trisToFacesMap=NULL;
+ int vertsPerPoly = 0, nverts = 0, ndtris = 0, npolys = 0;
+ float *verts = NULL;
+ unsigned short *dtris = NULL, *dmeshes = NULL, *polys = NULL;
+ int *dtrisToPolysMap = NULL, *dtrisToTrisMap = NULL, *trisToFacesMap = NULL;
int res;
result = CDDM_copy(dm);
if (!CustomData_has_layer(&result->polyData, CD_RECAST)) {
- int *sourceRecastData = (int*)CustomData_get_layer(&dm->polyData, CD_RECAST);
+ int *sourceRecastData = (int *)CustomData_get_layer(&dm->polyData, CD_RECAST);
if (sourceRecastData) {
CustomData_add_layer_named(&result->polyData, CD_RECAST, CD_DUPLICATE,
sourceRecastData, maxFaces, "recastData");
}
}
- recastData = (int*)CustomData_get_layer(&result->polyData, CD_RECAST);
+ recastData = (int *)CustomData_get_layer(&result->polyData, CD_RECAST);
/* note: This is not good design! - really should not be doing this */
result->drawFacesTex = navmesh_DM_drawFacesTex;
@@ -3031,17 +3030,17 @@ static DerivedMesh *navmesh_dm_createNavMeshForVisualization(DerivedMesh *dm)
size_t polyIdx;
/* invalidate concave polygon */
- for (polyIdx=0; polyIdx<(size_t)npolys; polyIdx++) {
- unsigned short* poly = &polys[polyIdx*2*vertsPerPoly];
+ for (polyIdx = 0; polyIdx < (size_t)npolys; polyIdx++) {
+ unsigned short *poly = &polys[polyIdx * 2 * vertsPerPoly];
if (!polyIsConvex(poly, vertsPerPoly, verts)) {
/* set negative polygon idx to all faces */
- unsigned short *dmesh = &dmeshes[4*polyIdx];
+ unsigned short *dmesh = &dmeshes[4 * polyIdx];
unsigned short tbase = dmesh[2];
unsigned short tnum = dmesh[3];
unsigned short ti;
- for (ti=0; ti<tnum; ti++) {
- unsigned short triidx = dtrisToTrisMap[tbase+ti];
+ for (ti = 0; ti < tnum; ti++) {
+ unsigned short triidx = dtrisToTrisMap[tbase + ti];
unsigned short faceidx = trisToFacesMap[triidx];
if (recastData[faceidx] > 0) {
recastData[faceidx] = -recastData[faceidx];
@@ -3055,19 +3054,19 @@ static DerivedMesh *navmesh_dm_createNavMeshForVisualization(DerivedMesh *dm)
}
/* clean up */
- if (verts!=NULL)
+ if (verts != NULL)
MEM_freeN(verts);
- if (dtris!=NULL)
+ if (dtris != NULL)
MEM_freeN(dtris);
- if (dmeshes!=NULL)
+ if (dmeshes != NULL)
MEM_freeN(dmeshes);
- if (polys!=NULL)
+ if (polys != NULL)
MEM_freeN(polys);
- if (dtrisToPolysMap!=NULL)
+ if (dtrisToPolysMap != NULL)
MEM_freeN(dtrisToPolysMap);
- if (dtrisToTrisMap!=NULL)
+ if (dtrisToTrisMap != NULL)
MEM_freeN(dtrisToTrisMap);
- if (trisToFacesMap!=NULL)
+ if (trisToFacesMap != NULL)
MEM_freeN(trisToFacesMap);
return result;
@@ -3132,7 +3131,7 @@ static void dm_debug_info_layers(DynStr *dynstr, DerivedMesh *dm, void *(*getEle
char *DM_debug_info(DerivedMesh *dm)
{
- DynStr *dynstr= BLI_dynstr_new();
+ DynStr *dynstr = BLI_dynstr_new();
char *ret;
const char *tstr;