X-Git-Url: https://harrygodden.com/git/?a=blobdiff_plain;f=scene.h;h=8aaafe9239538035cc43c74d55491d2409209ac0;hb=fbc68c65e01838feb77f47b30994b45fcc39ebaf;hp=f448bbc2f8b719c5dd0651d0632408f758df874b;hpb=22f62f001f21d1b91fefd9fc495c122d9ddf205a;p=carveJwlIkooP6JGAAIwe30JlM.git diff --git a/scene.h b/scene.h index f448bbc..8aaafe9 100644 --- a/scene.h +++ b/scene.h @@ -73,8 +73,7 @@ void scene_supply_buffer( scene_context *ctx, void *buffer ) ctx->arrindices = (u32*)(((u8*)buffer) + vertex_length); } -static void scene_vert_pack_norm( scene_vert *vert, v3f norm ) -{ +static void scene_vert_pack_norm( scene_vert *vert, v3f norm, f32 blend ){ v3f n; v3_muls( norm, 127.0f, n ); v3_minv( n, (v3f){ 127.0f, 127.0f, 127.0f }, n ); @@ -82,7 +81,7 @@ static void scene_vert_pack_norm( scene_vert *vert, v3f norm ) vert->norm[0] = n[0]; vert->norm[1] = n[1]; vert->norm[2] = n[2]; - vert->norm[3] = 0; /* free byte :D */ + vert->norm[3] = blend * 127.0f; } /* @@ -129,7 +128,7 @@ static void scene_add_mdl_submesh( scene_context *ctx, mdl_context *mdl, v3f normal; m3x3_mulv( normal_matrix, src->norm, normal ); - scene_vert_pack_norm( pvert, normal ); + scene_vert_pack_norm( pvert, normal, src->colour[0]*(1.0f/255.0f) ); v2_copy( src->uv, pvert->uv ); }