rename Resource -> ResourceKey
This commit is contained in:
parent
fc9aff7f06
commit
a6f31e4fae
@ -679,7 +679,7 @@ Struct(ResourceStore)
|
||||
u64 hash;
|
||||
};
|
||||
|
||||
Struct(Resource)
|
||||
Struct(ResourceKey)
|
||||
{
|
||||
u64 hash;
|
||||
};
|
||||
@ -692,9 +692,9 @@ Struct(Resource)
|
||||
#if LanguageIsC
|
||||
|
||||
|
||||
Struct(VertexShader) { Resource resource; };
|
||||
Struct(PixelShader) { Resource resource; };
|
||||
Struct(ComputeShader) { Resource resource; };
|
||||
Struct(VertexShader) { ResourceKey resource; };
|
||||
Struct(PixelShader) { ResourceKey resource; };
|
||||
Struct(ComputeShader) { ResourceKey resource; };
|
||||
|
||||
# define VSDecl(name) extern VertexShader name;
|
||||
# define PSDecl(name) extern PixelShader name;
|
||||
|
||||
@ -7,7 +7,7 @@ typedef ExitFuncDef(ExitFunc);
|
||||
////////////////////////////////////////////////////////////
|
||||
//~ @hookdecl Swap hooks
|
||||
|
||||
b32 IsSwappingIn(void);
|
||||
b32 IsSwappedIn(void);
|
||||
b32 IsSwappingOut(void);
|
||||
|
||||
String SwappedStateFromName(Arena *arena, String name);
|
||||
|
||||
@ -44,14 +44,14 @@ void InitResourceSystem(u64 archive_strings_count, String *archive_strings)
|
||||
////////////////////////////////////////////////////////////
|
||||
//~ Resource helpers
|
||||
|
||||
b32 IsResourceNil(Resource resource)
|
||||
b32 IsResourceNil(ResourceKey resource)
|
||||
{
|
||||
return resource.hash == 0;
|
||||
}
|
||||
|
||||
Resource ResourceFromStore(ResourceStore *store, String name)
|
||||
ResourceKey ResourceKeyFromStore(ResourceStore *store, String name)
|
||||
{
|
||||
Resource result = ZI;
|
||||
ResourceKey result = ZI;
|
||||
result.hash = HashFnv64(store->hash, name);
|
||||
return result;
|
||||
}
|
||||
@ -78,7 +78,7 @@ ResourceEntry *ResourceEntryFromHash(u64 hash)
|
||||
////////////////////////////////////////////////////////////
|
||||
//~ Resource operations
|
||||
|
||||
String DataFromResource(Resource resource)
|
||||
String DataFromResource(ResourceKey resource)
|
||||
{
|
||||
String result = ZI;
|
||||
ResourceEntry *entry = ResourceEntryFromHash(resource.hash);
|
||||
@ -89,7 +89,7 @@ String DataFromResource(Resource resource)
|
||||
return result;
|
||||
}
|
||||
|
||||
String NameFromResource(Resource resource)
|
||||
String NameFromResource(ResourceKey resource)
|
||||
{
|
||||
String result = ZI;
|
||||
ResourceEntry *entry = ResourceEntryFromHash(resource.hash);
|
||||
|
||||
@ -38,8 +38,8 @@ void InitResourceSystem(u64 archive_strings_count, String *archive_strings);
|
||||
////////////////////////////////////////////////////////////
|
||||
//~ Resource operations
|
||||
|
||||
b32 IsResourceNil(Resource resource);
|
||||
Resource ResourceFromStore(ResourceStore *store, String name);
|
||||
b32 IsResourceNil(ResourceKey resource);
|
||||
ResourceKey ResourceKeyFromStore(ResourceStore *store, String name);
|
||||
|
||||
////////////////////////////////////////////////////////////
|
||||
//~ Resource cache operations
|
||||
@ -49,5 +49,5 @@ ResourceEntry *ResourceEntryFromHash(u64 hash);
|
||||
////////////////////////////////////////////////////////////
|
||||
//~ Resource data operations
|
||||
|
||||
String DataFromResource(Resource resource);
|
||||
String NameFromResource(Resource resource);
|
||||
String DataFromResource(ResourceKey resource);
|
||||
String NameFromResource(ResourceKey resource);
|
||||
|
||||
@ -112,7 +112,7 @@ void TrueRand(String buffer)
|
||||
////////////////////////////////////////////////////////////
|
||||
//~ Swap hooks
|
||||
|
||||
b32 IsSwappingIn(void)
|
||||
b32 IsSwappedIn(void)
|
||||
{
|
||||
return HotSwappingIsEnabled;
|
||||
}
|
||||
|
||||
@ -25,7 +25,7 @@ JobDef(F_Load, sig, _)
|
||||
0xF2,0xF3,0xF4,0xF5,0xF6,0xF7,0xF8,0xF9,0xFA,0xFB,0xFC,0xFD,0xFE,0xFF
|
||||
};
|
||||
|
||||
Resource resource = sig->resource;
|
||||
ResourceKey resource = sig->resource;
|
||||
String name = NameFromResource(resource);
|
||||
f32 point_size = sig->point_size;
|
||||
AC_Asset *asset = sig->asset;
|
||||
@ -163,7 +163,7 @@ JobDef(F_Load, sig, _)
|
||||
//~ Font load operations
|
||||
|
||||
/* Returns the asset from the asset cache */
|
||||
AC_Asset *F_LoadAsset(Resource resource, f32 point_size, b32 wait)
|
||||
AC_Asset *F_LoadAsset(ResourceKey resource, f32 point_size, b32 wait)
|
||||
{
|
||||
__prof;
|
||||
TempArena scratch = BeginScratchNoConflict();
|
||||
@ -200,7 +200,7 @@ AC_Asset *F_LoadAsset(Resource resource, f32 point_size, b32 wait)
|
||||
return asset;
|
||||
}
|
||||
|
||||
F_Font *F_LoadFontAsync(Resource resource, f32 point_size)
|
||||
F_Font *F_LoadFontAsync(ResourceKey resource, f32 point_size)
|
||||
{
|
||||
__prof;
|
||||
AC_Asset *asset = F_LoadAsset(resource, point_size, 0);
|
||||
@ -208,7 +208,7 @@ F_Font *F_LoadFontAsync(Resource resource, f32 point_size)
|
||||
return f;
|
||||
}
|
||||
|
||||
F_Font *F_LoadFontWait(Resource resource, f32 point_size)
|
||||
F_Font *F_LoadFontWait(ResourceKey resource, f32 point_size)
|
||||
{
|
||||
__prof;
|
||||
AC_Asset *asset = F_LoadAsset(resource, point_size, 1);
|
||||
|
||||
@ -48,14 +48,14 @@ Struct(F_Run)
|
||||
////////////////////////////////////////////////////////////
|
||||
//~ Font load job
|
||||
|
||||
JobDecl(F_Load, { AC_Asset *asset; f32 point_size; Resource resource; });
|
||||
JobDecl(F_Load, { AC_Asset *asset; f32 point_size; ResourceKey resource; });
|
||||
|
||||
////////////////////////////////////////////////////////////
|
||||
//~ Font load operations
|
||||
|
||||
AC_Asset *F_LoadAsset(Resource resource, f32 point_size, b32 wait);
|
||||
F_Font *F_LoadFontAsync(Resource resource, f32 point_size);
|
||||
F_Font *F_LoadFontWait(Resource resource, f32 point_size);
|
||||
AC_Asset *F_LoadAsset(ResourceKey resource, f32 point_size, b32 wait);
|
||||
F_Font *F_LoadFontAsync(ResourceKey resource, f32 point_size);
|
||||
F_Font *F_LoadFontWait(ResourceKey resource, f32 point_size);
|
||||
|
||||
////////////////////////////////////////////////////////////
|
||||
//~ Run operations
|
||||
|
||||
@ -21,7 +21,7 @@ void GPU_StartupUtils(void)
|
||||
/* Upload noise */
|
||||
{
|
||||
Vec3I32 noise_size = VEC3I32(128, 128, 64);
|
||||
Resource noise_resource = ResourceFromStore(&GPU_Resources, Lit("noise_128x128x64_16.dat"));
|
||||
ResourceKey noise_resource = ResourceKeyFromStore(&GPU_Resources, Lit("noise_128x128x64_16.dat"));
|
||||
String noise_res_data = DataFromResource(noise_resource);
|
||||
if (noise_res_data.len != noise_size.x * noise_size.y * noise_size.z * 2)
|
||||
{
|
||||
|
||||
20
src/pp/pp.c
20
src/pp/pp.c
@ -34,7 +34,7 @@ void StartupUser(void)
|
||||
g->world_to_render_xf = XformIdentity;
|
||||
|
||||
/* Init from swap */
|
||||
if (IsSwappingIn());
|
||||
if (IsSwappedIn());
|
||||
{
|
||||
TempArena scratch = BeginScratchNoConflict();
|
||||
String swap_str = SwappedStateFromName(scratch.arena, Lit("pp_user"));
|
||||
@ -349,7 +349,7 @@ void DrawDebugConsole(i32 level, b32 minimized)
|
||||
g->console_logs_height = 0;
|
||||
|
||||
i64 now_ns = TimeNs();
|
||||
F_Font *font = F_LoadFontAsync(ResourceFromStore(&GameResources, Lit("font/fixedsys.ttf")), 12.0f);
|
||||
F_Font *font = F_LoadFontAsync(ResourceKeyFromStore(&GameResources, Lit("font/fixedsys.ttf")), 12.0f);
|
||||
if (font)
|
||||
{
|
||||
Lock lock = LockE(&g->console_logs_mutex);
|
||||
@ -1184,7 +1184,7 @@ void UpdateUser(P_Window *window)
|
||||
if (!IsValidAndActive(ent)) continue;
|
||||
//if (S_IsNil(ent->sprite)) continue;
|
||||
|
||||
Resource sprite = ent->sprite;
|
||||
ResourceKey sprite = ent->sprite;
|
||||
|
||||
Entity *parent = EntityFromId(g->ss_blended, ent->parent);
|
||||
|
||||
@ -1274,7 +1274,7 @@ void UpdateUser(P_Window *window)
|
||||
if (HasProp(ent, Prop_TileChunk))
|
||||
{
|
||||
Vec2I32 chunk_index = ent->tile_chunk_index;
|
||||
Resource tile_sprite = ResourceFromStore(&GameResources, Lit("sprite/tile.ase"));
|
||||
ResourceKey tile_sprite = ResourceKeyFromStore(&GameResources, Lit("sprite/tile.ase"));
|
||||
S_Texture *tile_texture = S_TextureFromResourceAsync(tile_sprite);
|
||||
if (tile_texture->loaded)
|
||||
{
|
||||
@ -1506,7 +1506,7 @@ void UpdateUser(P_Window *window)
|
||||
#if 0
|
||||
/* Draw contact info */
|
||||
{
|
||||
F_Font *disp_font = F_LoadFontAsync(ResourceFromStore(&GameResources, Lit("font/fixedsys.ttf")), 12.0f);
|
||||
F_Font *disp_font = F_LoadFontAsync(ResourceKeyFromStore(&GameResources, Lit("font/fixedsys.ttf")), 12.0f);
|
||||
if (disp_font)
|
||||
{
|
||||
f32 offset_px = 10;
|
||||
@ -1628,7 +1628,7 @@ void UpdateUser(P_Window *window)
|
||||
#if 0
|
||||
/* Test info */
|
||||
{
|
||||
F_Font *disp_font = F_LoadFontAsync(ResourceFromStore(&GameResources, Lit("font/fixedsys.ttf")), 12.0f);
|
||||
F_Font *disp_font = F_LoadFontAsync(ResourceKeyFromStore(&GameResources, Lit("font/fixedsys.ttf")), 12.0f);
|
||||
if (disp_font)
|
||||
{
|
||||
f32 offset_px = 10;
|
||||
@ -1781,7 +1781,7 @@ void UpdateUser(P_Window *window)
|
||||
{
|
||||
__profn("Draw crosshair");
|
||||
Vec2 crosshair_pos = g->ui_cursor;
|
||||
Resource crosshair = ResourceFromStore(GameResources, Lit("sprite/crosshair.ase"));
|
||||
ResourceKey crosshair = ResourceKeyFromStore(GameResources, Lit("sprite/crosshair.ase"));
|
||||
S_Texture *t = S_TextureFromResourceAsync(crosshair);
|
||||
Vec2 size = VEC2(t->width, t->height);
|
||||
Xform xf = XformFromTrs(TRS(.t = crosshair_pos, .s = size));
|
||||
@ -1800,7 +1800,7 @@ void UpdateUser(P_Window *window)
|
||||
}
|
||||
else
|
||||
{
|
||||
S_Texture *t = S_TextureFromResourceAsync(ResourceFromStore(GameResources, Lit("sprite/crosshair.ase")));
|
||||
S_Texture *t = S_TextureFromResourceAsync(ResourceKeyFromStore(GameResources, Lit("sprite/crosshair.ase")));
|
||||
Vec2 size = VEC2(t->width, t->height);
|
||||
Rect cursor_clip = RectFromVec2(g->ui_screen_offset, g->ui_size);
|
||||
cursor_clip.pos = AddVec2(cursor_clip.pos, MulVec2(size, 0.5f));
|
||||
@ -2015,7 +2015,7 @@ void UpdateUser(P_Window *window)
|
||||
Entity *ent = hovered_ent;
|
||||
|
||||
Vec2 pos = AddVec2(g->ui_cursor, VEC2(15, 15));
|
||||
F_Font *font = F_LoadFontAsync(ResourceFromStore(&GameResources, Lit("font/fixedsys.ttf")), 12.0f);
|
||||
F_Font *font = F_LoadFontAsync(ResourceKeyFromStore(&GameResources, Lit("font/fixedsys.ttf")), 12.0f);
|
||||
if (font)
|
||||
{
|
||||
TempArena temp = BeginTempArena(scratch.arena);
|
||||
@ -2127,7 +2127,7 @@ void UpdateUser(P_Window *window)
|
||||
if (g->debug_draw)
|
||||
{
|
||||
__profn("Draw debug info");
|
||||
F_Font *font = F_LoadFontAsync(ResourceFromStore(&GameResources, Lit("font/fixedsys.ttf")), 12.0f);
|
||||
F_Font *font = F_LoadFontAsync(ResourceKeyFromStore(&GameResources, Lit("font/fixedsys.ttf")), 12.0f);
|
||||
if (font)
|
||||
{
|
||||
TempArena temp = BeginTempArena(scratch.arena);
|
||||
|
||||
@ -247,7 +247,7 @@ Struct(Entity)
|
||||
|
||||
//- Sprite
|
||||
|
||||
Resource sprite;
|
||||
ResourceKey sprite;
|
||||
String sprite_span_name;
|
||||
u32 sprite_tint;
|
||||
Vec3 sprite_emittance;
|
||||
|
||||
@ -36,7 +36,7 @@ void ResetSimAccel(Snapshot *ss, SimAccel *accel)
|
||||
Entity *SpawnTestSmg(Entity *parent)
|
||||
{
|
||||
Entity *e = AcquireSyncSrc(parent);
|
||||
e->sprite = ResourceFromStore(&GameResources, Lit("sprite/gun.ase"));
|
||||
e->sprite = ResourceKeyFromStore(&GameResources, Lit("sprite/gun.ase"));
|
||||
|
||||
EnableProp(e, Prop_Attached);
|
||||
e->attach_slice = Lit("attach.wep");
|
||||
@ -52,7 +52,7 @@ Entity *SpawnTestSmg(Entity *parent)
|
||||
Entity *SpawnTestLauncher(Entity *parent)
|
||||
{
|
||||
Entity *e = AcquireSyncSrc(parent);
|
||||
e->sprite = ResourceFromStore(&GameResources, Lit("sprite/gun.ase"));
|
||||
e->sprite = ResourceKeyFromStore(&GameResources, Lit("sprite/gun.ase"));
|
||||
|
||||
EnableProp(e, Prop_Attached);
|
||||
e->attach_slice = Lit("attach.wep");
|
||||
@ -68,7 +68,7 @@ Entity *SpawnTestLauncher(Entity *parent)
|
||||
Entity *SpawnTestChucker(Entity *parent)
|
||||
{
|
||||
Entity *chucker = AcquireSyncSrc(parent);
|
||||
chucker->sprite = ResourceFromStore(&GameResources, Lit("sprite/gun.ase"));
|
||||
chucker->sprite = ResourceKeyFromStore(&GameResources, Lit("sprite/gun.ase"));
|
||||
|
||||
EnableProp(chucker, Prop_Attached);
|
||||
chucker->attach_slice = Lit("attach.wep");
|
||||
@ -119,12 +119,12 @@ Entity *SpawnTestEmployee(Entity *parent)
|
||||
|
||||
{
|
||||
EnableProp(e, Prop_Test);
|
||||
e->sprite = ResourceFromStore(&GameResources, Lit("sprite/tim.ase"));
|
||||
e->sprite = ResourceKeyFromStore(&GameResources, Lit("sprite/tim.ase"));
|
||||
e->mass_unscaled = 10;
|
||||
e->inertia_unscaled = 5;
|
||||
}
|
||||
|
||||
//e->sprite = ResourceFromStore(GameResources, Lit("sprite/box_rounded.ase"));
|
||||
//e->sprite = ResourceKeyFromStore(GameResources, Lit("sprite/box_rounded.ase"));
|
||||
//e->sprite_span_name = Lit("idle.unarmed");
|
||||
//e->sprite_span_name = Lit("idle.one_handed");
|
||||
e->sprite_span_name = Lit("idle.two_handed");
|
||||
@ -257,7 +257,7 @@ void SpawnTestEntities2(Entity *parent, Vec2 pos)
|
||||
Xform xf = XformFromTrs(TRS(.t = pos, .r = rot, .s = size));
|
||||
SetXform(e, xf);
|
||||
|
||||
e->sprite = ResourceFromStore(&GameResources, Lit("sprite/tile.ase"));
|
||||
e->sprite = ResourceKeyFromStore(&GameResources, Lit("sprite/tile.ase"));
|
||||
e->layer = Layer_Shoulders;
|
||||
|
||||
//e->sprite_tint = Alpha32F(Color_Blue, 0.75);
|
||||
@ -299,7 +299,7 @@ void SpawnTestEntities2(Entity *parent, Vec2 pos)
|
||||
Xform xf = XformFromTrs(.t = pos, .r = r, .s = size);
|
||||
SetXform(e, xf);
|
||||
|
||||
e->sprite = ResourceFromStore(GameResources, Lit("sprite/bullet.ase"));
|
||||
e->sprite = ResourceKeyFromStore(GameResources, Lit("sprite/bullet.ase"));
|
||||
e->sprite_collider_slice = Lit("shape");
|
||||
e->layer = Layer_Shoulders;
|
||||
|
||||
@ -327,7 +327,7 @@ void SpawnTestEntities3(Entity *parent, Vec2 pos)
|
||||
Xform xf = XformFromTrs(TRS(.t = pos, .r = r, .s = size));
|
||||
SetXform(e, xf);
|
||||
|
||||
e->sprite = ResourceFromStore(&GameResources, Lit("sprite/box.ase"));
|
||||
e->sprite = ResourceKeyFromStore(&GameResources, Lit("sprite/box.ase"));
|
||||
e->layer = Layer_Shoulders;
|
||||
|
||||
e->sprite_tint = Color_Red;
|
||||
@ -350,8 +350,8 @@ void SpawnTestEntities4(Entity *parent, Vec2 pos)
|
||||
Xform xf = XformFromTrs(TRS(.t = pos, .r = r, .s = size));
|
||||
SetXform(e, xf);
|
||||
|
||||
//e->sprite = ResourceFromStore(GameResources, Lit("sprite/box.ase"));
|
||||
e->sprite = ResourceFromStore(&GameResources, Lit("sprite/tile.ase"));
|
||||
//e->sprite = ResourceKeyFromStore(GameResources, Lit("sprite/box.ase"));
|
||||
e->sprite = ResourceKeyFromStore(&GameResources, Lit("sprite/tile.ase"));
|
||||
e->layer = Layer_Shoulders;
|
||||
|
||||
EnableProp(e, Prop_LightTest);
|
||||
@ -380,7 +380,7 @@ void SpawnTestTile(Snapshot *world, Vec2 world_pos)
|
||||
SetXform(e, xf);
|
||||
|
||||
e->layer = Layer_Walls;
|
||||
e->sprite = ResourceFromStore(GameResources, Lit("sprite/tile.ase"));
|
||||
e->sprite = ResourceKeyFromStore(GameResources, Lit("sprite/tile.ase"));
|
||||
e->sprite_tint = Color_Red;
|
||||
|
||||
S_Sheet *sheet = S_SheetFromResource(e->sprite);
|
||||
@ -783,7 +783,7 @@ CollisionCallbackFuncDef(OnEntityCollision, data, step_ctx)
|
||||
{
|
||||
Xform xf = XformFromTrs(TRS(.t = point, .r = RandF64FromState(&step_ctx->rand, 0, Tau)));
|
||||
Entity *decal = AcquireSyncSrc(root);
|
||||
decal->sprite = ResourceFromStore(&GameResources, Lit("sprite/blood.ase"));
|
||||
decal->sprite = ResourceKeyFromStore(&GameResources, Lit("sprite/blood.ase"));
|
||||
decal->sprite_tint = Rgba32F(1, 1, 1, 0.25f);
|
||||
decal->layer = Layer_FloorDecals;
|
||||
SetXform(decal, xf);
|
||||
@ -1359,7 +1359,7 @@ void StepSim(SimStepCtx *ctx)
|
||||
if (!HasProp(ent, Prop_Attached)) continue;
|
||||
|
||||
Entity *parent = EntityFromId(world, ent->parent);
|
||||
Resource parent_sprite = parent->sprite;
|
||||
ResourceKey parent_sprite = parent->sprite;
|
||||
S_Sheet *parent_sheet = S_SheetFromResource(parent_sprite);
|
||||
|
||||
Xform parent_sprite_xf = parent->sprite_local_xform;
|
||||
@ -1450,7 +1450,7 @@ void StepSim(SimStepCtx *ctx)
|
||||
{
|
||||
if (primary_triggered)
|
||||
{
|
||||
Resource sprite = ent->sprite;
|
||||
ResourceKey sprite = ent->sprite;
|
||||
u32 animation_frame = ent->animation_frame;
|
||||
S_Sheet *sheet = S_SheetFromResource(sprite);
|
||||
Xform sprite_local_xform = ent->sprite_local_xform;
|
||||
@ -1477,7 +1477,7 @@ void StepSim(SimStepCtx *ctx)
|
||||
bullet->local_collider.points[0] = VEC2(0, 0);
|
||||
bullet->local_collider.count = 1;
|
||||
#else
|
||||
bullet->sprite = ResourceFromStore(GameResources, Lit("sprite/bullet.ase"));
|
||||
bullet->sprite = ResourceKeyFromStore(GameResources, Lit("sprite/bullet.ase"));
|
||||
bullet->sprite_collider_slice = Lit("shape");
|
||||
#endif
|
||||
}
|
||||
@ -1499,7 +1499,7 @@ void StepSim(SimStepCtx *ctx)
|
||||
{
|
||||
if (primary_triggered)
|
||||
{
|
||||
Resource sprite = ent->sprite;
|
||||
ResourceKey sprite = ent->sprite;
|
||||
u32 animation_frame = ent->animation_frame;
|
||||
S_Sheet *sheet = S_SheetFromResource(sprite);
|
||||
Xform sprite_local_xform = ent->sprite_local_xform;
|
||||
|
||||
@ -5,7 +5,7 @@ JobDef(SND_Load, sig, UNUSED id)
|
||||
{
|
||||
__prof;
|
||||
TempArena scratch = BeginScratchNoConflict();
|
||||
Resource resource = sig->resource;
|
||||
ResourceKey resource = sig->resource;
|
||||
String name = NameFromResource(resource);
|
||||
AC_Asset *asset = sig->asset;
|
||||
SND_SoundFlag flags = sig->flags;
|
||||
@ -80,7 +80,7 @@ JobDef(SND_Load, sig, UNUSED id)
|
||||
////////////////////////////////////////////////////////////
|
||||
//~ Load sound
|
||||
|
||||
AC_Asset *SND_LoadAsset(Resource resource, SND_SoundFlag flags, b32 wait)
|
||||
AC_Asset *SND_LoadAsset(ResourceKey resource, SND_SoundFlag flags, b32 wait)
|
||||
{
|
||||
__prof;
|
||||
TempArena scratch = BeginScratchNoConflict();
|
||||
@ -117,7 +117,7 @@ AC_Asset *SND_LoadAsset(Resource resource, SND_SoundFlag flags, b32 wait)
|
||||
return asset;
|
||||
}
|
||||
|
||||
SND_Sound *SND_LoadSoundAsync(Resource resource, SND_SoundFlag flags)
|
||||
SND_Sound *SND_LoadSoundAsync(ResourceKey resource, SND_SoundFlag flags)
|
||||
{
|
||||
__prof;
|
||||
AC_Asset *asset = SND_LoadAsset(resource, flags, 0);
|
||||
@ -125,7 +125,7 @@ SND_Sound *SND_LoadSoundAsync(Resource resource, SND_SoundFlag flags)
|
||||
return sound;
|
||||
}
|
||||
|
||||
SND_Sound *SND_LoadSoundWait(Resource resource, SND_SoundFlag flags)
|
||||
SND_Sound *SND_LoadSoundWait(ResourceKey resource, SND_SoundFlag flags)
|
||||
{
|
||||
__prof;
|
||||
AC_Asset *asset = SND_LoadAsset(resource, flags, 1);
|
||||
|
||||
@ -19,7 +19,7 @@ Struct(SND_Sound)
|
||||
////////////////////////////////////////////////////////////
|
||||
//~ Sound load operations
|
||||
|
||||
JobDecl(SND_Load, { SND_SoundFlag flags; AC_Asset *asset; Resource resource; });
|
||||
AC_Asset *SND_LoadAsset(Resource resource, SND_SoundFlag flags, b32 wait);
|
||||
SND_Sound *SND_LoadSoundAsync(Resource resource, SND_SoundFlag flags);
|
||||
SND_Sound *SND_LoadSoundWait(Resource resource, SND_SoundFlag flags);
|
||||
JobDecl(SND_Load, { SND_SoundFlag flags; AC_Asset *asset; ResourceKey resource; });
|
||||
AC_Asset *SND_LoadAsset(ResourceKey resource, SND_SoundFlag flags, b32 wait);
|
||||
SND_Sound *SND_LoadSoundAsync(ResourceKey resource, SND_SoundFlag flags);
|
||||
SND_Sound *SND_LoadSoundWait(ResourceKey resource, SND_SoundFlag flags);
|
||||
|
||||
@ -9,7 +9,7 @@ JobDef(S_LoadTexture, sig, _)
|
||||
{
|
||||
TempArena scratch = BeginScratchNoConflict();
|
||||
S_Entry *entry = sig->entry;
|
||||
Resource resource = entry->resource;
|
||||
ResourceKey resource = entry->resource;
|
||||
b32 ok = 1;
|
||||
S_Texture *texture = &entry->texture;
|
||||
texture->valid = 1;
|
||||
@ -98,7 +98,7 @@ JobDef(S_LoadSheet, sig, _)
|
||||
TempArena scratch = BeginScratchNoConflict();
|
||||
Arena *perm = PermArena();
|
||||
S_Entry *entry = sig->entry;
|
||||
Resource resource = entry->resource;
|
||||
ResourceKey resource = entry->resource;
|
||||
b32 ok = 1;
|
||||
S_Sheet *sheet = &entry->sheet;
|
||||
sheet->valid = 1;
|
||||
@ -283,7 +283,7 @@ JobDef(S_LoadSheet, sig, _)
|
||||
//~ Cache
|
||||
|
||||
/* TODO: Per-fiber L1 cache */
|
||||
S_Entry *S_FetchEntry(Resource resource, JobPool pool, S_FetchFlag flags)
|
||||
S_Entry *S_FetchEntry(ResourceKey resource, JobPool pool, S_FetchFlag flags)
|
||||
{
|
||||
S_SharedState *g = &S_shared_state;
|
||||
S_Entry *entry = 0;
|
||||
@ -349,14 +349,14 @@ S_Entry *S_FetchEntry(Resource resource, JobPool pool, S_FetchFlag flags)
|
||||
////////////////////////////////////////////////////////////
|
||||
//~ Sprite data retrieval operations
|
||||
|
||||
S_Texture *S_TextureFromResource(Resource resource)
|
||||
S_Texture *S_TextureFromResource(ResourceKey resource)
|
||||
{
|
||||
S_Entry *entry = S_FetchEntry(resource, JobPool_Inherit, S_FetchFlag_Texture);
|
||||
YieldOnFence(&entry->texture_ready_fence, 1);
|
||||
return &entry->texture;
|
||||
}
|
||||
|
||||
S_Texture *S_TextureFromResourceAsync(Resource resource)
|
||||
S_Texture *S_TextureFromResourceAsync(ResourceKey resource)
|
||||
{
|
||||
S_Texture *result = &S_NilTexture;
|
||||
S_Entry *entry = S_FetchEntry(resource, JobPool_Inherit, S_FetchFlag_Texture);
|
||||
@ -367,14 +367,14 @@ S_Texture *S_TextureFromResourceAsync(Resource resource)
|
||||
return result;
|
||||
}
|
||||
|
||||
S_Sheet *S_SheetFromResource(Resource resource)
|
||||
S_Sheet *S_SheetFromResource(ResourceKey resource)
|
||||
{
|
||||
S_Entry *entry = S_FetchEntry(resource, JobPool_Inherit, S_FetchFlag_Sheet);
|
||||
YieldOnFence(&entry->sheet_ready_fence, 1);
|
||||
return &entry->sheet;
|
||||
}
|
||||
|
||||
S_Sheet *S_SheetFromResourceAsync(Resource resource)
|
||||
S_Sheet *S_SheetFromResourceAsync(ResourceKey resource)
|
||||
{
|
||||
S_Sheet *result = &S_NilSheet;
|
||||
S_Entry *entry = S_FetchEntry(resource, JobPool_Inherit, S_FetchFlag_Sheet);
|
||||
|
||||
@ -108,7 +108,7 @@ Struct(S_Entry)
|
||||
Atomic32 texture_touched;
|
||||
Atomic32 sheet_touched;
|
||||
|
||||
Resource resource;
|
||||
ResourceKey resource;
|
||||
Fence texture_ready_fence;
|
||||
Fence sheet_ready_fence;
|
||||
};
|
||||
@ -146,16 +146,16 @@ Enum(S_FetchFlag)
|
||||
S_FetchFlag_Sheet = (1 << 1),
|
||||
};
|
||||
|
||||
S_Entry *S_FetchEntry(Resource resource, JobPool pool, S_FetchFlag flags);
|
||||
S_Entry *S_FetchEntry(ResourceKey resource, JobPool pool, S_FetchFlag flags);
|
||||
|
||||
////////////////////////////////////////////////////////////
|
||||
//~ Sprite data retrieval operations
|
||||
|
||||
S_Texture *S_TextureFromResource(Resource resource);
|
||||
S_Texture *S_TextureFromResourceAsync(Resource resource);
|
||||
S_Texture *S_TextureFromResource(ResourceKey resource);
|
||||
S_Texture *S_TextureFromResourceAsync(ResourceKey resource);
|
||||
|
||||
S_Sheet *S_SheetFromResource(Resource resource);
|
||||
S_Sheet *S_SheetFromResourceAsync(Resource resource);
|
||||
S_Sheet *S_SheetFromResource(ResourceKey resource);
|
||||
S_Sheet *S_SheetFromResourceAsync(ResourceKey resource);
|
||||
|
||||
////////////////////////////////////////////////////////////
|
||||
//~ Sheet access operations
|
||||
|
||||
@ -6,16 +6,16 @@ UI_SharedState UI_shared_state = ZI;
|
||||
void UI_Startup(void)
|
||||
{
|
||||
/* Prefetch default font */
|
||||
Resource default_font = UI_GetDefaultFontResource();
|
||||
ResourceKey default_font = UI_GetDefaultFontResource();
|
||||
F_LoadFontAsync(default_font, 12);
|
||||
}
|
||||
|
||||
////////////////////////////////////////////////////////////
|
||||
//~ Font helpers
|
||||
|
||||
Resource UI_GetDefaultFontResource(void)
|
||||
ResourceKey UI_GetDefaultFontResource(void)
|
||||
{
|
||||
return ResourceFromStore(&UI_Resources, Lit("font/default.ttf"));
|
||||
return ResourceKeyFromStore(&UI_Resources, Lit("font/default.ttf"));
|
||||
}
|
||||
|
||||
////////////////////////////////////////////////////////////
|
||||
|
||||
@ -42,7 +42,7 @@ Struct(UI_Size)
|
||||
x(TextColor, u32) \
|
||||
x(Tint, u32) \
|
||||
x(Border, f32) \
|
||||
x(Font, Resource) \
|
||||
x(Font, ResourceKey) \
|
||||
x(FontSize, u32) \
|
||||
x(TextPadding, f32) \
|
||||
x(Rounding, f32) \
|
||||
@ -125,7 +125,7 @@ Struct(UI_Box)
|
||||
f32 text_padding;
|
||||
f32 rounding;
|
||||
|
||||
Resource font_resource;
|
||||
ResourceKey font_resource;
|
||||
f32 font_size;
|
||||
|
||||
//- Layout data
|
||||
@ -196,7 +196,7 @@ void UI_Startup(void);
|
||||
////////////////////////////////////////////////////////////
|
||||
//~ Font helpers
|
||||
|
||||
Resource UI_GetDefaultFontResource(void);
|
||||
ResourceKey UI_GetDefaultFontResource(void);
|
||||
|
||||
////////////////////////////////////////////////////////////
|
||||
//~ Key helpers
|
||||
|
||||
Loading…
Reference in New Issue
Block a user