projects
/
carveJwlIkooP6JGAAIwe30JlM.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
cam rework
[carveJwlIkooP6JGAAIwe30JlM.git]
/
world_sfd.h
diff --git
a/world_sfd.h
b/world_sfd.h
index a83fe0a92359c4b8cb9cb885fb30b9dc360474d2..9f41992bc84de7d43e42634797bd9d22038cc7a1 100644
(file)
--- a/
world_sfd.h
+++ b/
world_sfd.h
@@
-60,16
+60,18
@@
VG_STATIC void sfd_encode( u32 row, const char *str )
for( int i=0; i<world.sfd.w; i++ )
{
for( int i=0; i<world.sfd.w; i++ )
{
+ u32 idx = (world.sfd.w*row_h + i) * 2;
+
if( end )
{
if( end )
{
- world.sfd.buffer[
world.sfd.w*row_h + i
] = 0.0f;
+ world.sfd.buffer[
idx
] = 0.0f;
}
else
{
if( !str[i] )
end = 1;
}
else
{
if( !str[i] )
end = 1;
- world.sfd.buffer[
world.sfd.w*row_h + i
] = sfd_encode_glyph( str[i] );
+ world.sfd.buffer[
idx
] = sfd_encode_glyph( str[i] );
}
}
}
}
}
}
@@
-99,7
+101,8
@@
VG_STATIC void sfd_update(void)
}
}
}
}
-VG_STATIC void sfd_render( m4x4f projection, v3f camera, m4x3f transform )
+VG_STATIC void bind_terrain_noise(void);
+VG_STATIC void sfd_render( camera *cam, m4x3f transform )
{
mesh_bind( &world.sfd.mesh_display );
{
mesh_bind( &world.sfd.mesh_display );
@@
-107,12
+110,17
@@
VG_STATIC void sfd_render( m4x4f projection, v3f camera, m4x3f transform )
shader_scoretext_uTexGarbage(0);
shader_scoretext_uTexGradients(1);
shader_link_standard_ub( _shader_scoretext.id, 2 );
shader_scoretext_uTexGarbage(0);
shader_scoretext_uTexGradients(1);
shader_link_standard_ub( _shader_scoretext.id, 2 );
- bind_terrain_
textures
();
+ bind_terrain_
noise
();
vg_tex2d_bind( &tex_scoretext, 1 );
vg_tex2d_bind( &tex_scoretext, 1 );
- shader_scoretext_uPv( projection );
+ m4x4f pvm_prev;
+ m4x3_expand( transform, pvm_prev );
+ m4x4_mul( cam->mtx_prev.pv, pvm_prev, pvm_prev );
+
+ shader_scoretext_uPv( cam->mtx.pv );
+ shader_scoretext_uPvmPrev( pvm_prev );
shader_scoretext_uMdl( transform );
shader_scoretext_uMdl( transform );
- shader_scoretext_uCamera( cam
era
);
+ shader_scoretext_uCamera( cam
->transform[3]
);
for( int y=0;y<world.sfd.h; y++ )
{
for( int y=0;y<world.sfd.h; y++ )
{
@@
-128,11
+136,14
@@
VG_STATIC void sfd_render( m4x4f projection, v3f camera, m4x3f transform )
shader_vblend_uTexGarbage(0);
shader_vblend_uTexGradients(1);
shader_link_standard_ub( _shader_vblend.id, 2 );
shader_vblend_uTexGarbage(0);
shader_vblend_uTexGradients(1);
shader_link_standard_ub( _shader_vblend.id, 2 );
- bind_terrain_textures();
+ bind_terrain_noise();
+ vg_tex2d_bind( &tex_scoretext, 1 );
+
+ shader_vblend_uPv( cam->mtx.pv );
+ shader_vblend_uPvmPrev( pvm_prev );
- shader_vblend_uPv( projection );
shader_vblend_uMdl( transform );
shader_vblend_uMdl( transform );
- shader_vblend_uCamera( cam
era
);
+ shader_vblend_uCamera( cam
->transform[3]
);
mesh_bind( &world.sfd.mesh_base );
mesh_draw( &world.sfd.mesh_base );
mesh_bind( &world.sfd.mesh_base );
mesh_draw( &world.sfd.mesh_base );