Fixed cdf and added Standard Lit
This commit is contained in:
@@ -7,18 +7,18 @@
|
||||
#include <stdint.h>
|
||||
#include <stdbool.h>
|
||||
|
||||
#define INVALID_TEXTURE_ID UINT16_MAX
|
||||
#define INVALID_TEXTURE_ID 0xffff
|
||||
|
||||
typedef enum
|
||||
{
|
||||
REPEAT,
|
||||
CLAMP,
|
||||
WM_REPEAT,
|
||||
WM_CLAMP,
|
||||
} wrap_mode_t;
|
||||
|
||||
typedef enum
|
||||
{
|
||||
NEAREST,
|
||||
LINEAR,
|
||||
FM_NEAREST,
|
||||
FM_LINEAR,
|
||||
} filter_mode_t;
|
||||
|
||||
typedef enum
|
||||
@@ -66,30 +66,30 @@ typedef struct
|
||||
typedef struct
|
||||
{
|
||||
uint16_t id;
|
||||
} texture_entity_t;
|
||||
} texture_handle_t;
|
||||
|
||||
bool texture_collection_init(uint16_t size, texture_collection_t* textures);
|
||||
void texture_collection_resize(texture_collection_t* textures, uint16_t size);
|
||||
void texture_collection_free(texture_collection_t* textures);
|
||||
|
||||
texture_entity_t texture_load(const char* filename, bool srgb, bool mipmap, stride_t stride, texture_collection_t* textures);
|
||||
texture_handle_t texture_load(const char* filename, bool srgb, bool mipmap, stride_t stride, texture_collection_t* textures);
|
||||
vec4s texture_get_pixel(const texture_t* texture, vec2s uv, uint8_t lod);
|
||||
float texture_get_sample_lod(vec3s view_direction, vec3s normal, float distance);
|
||||
vec4s texture_sample(const texture_t* texture, vec2s uv, vec3s view_direction, vec3s normal, float distance);
|
||||
vec4s texture_sample_lod(const texture_t* texture, vec2s uv, float lod);
|
||||
void texture_free(texture_t* texture);
|
||||
|
||||
inline texture_entity_t invalid_texture_entity()
|
||||
inline texture_handle_t invalid_texture_handle()
|
||||
{
|
||||
return (texture_entity_t){.id = INVALID_TEXTURE_ID};
|
||||
return (texture_handle_t){.id = INVALID_TEXTURE_ID};
|
||||
}
|
||||
|
||||
inline bool is_texture_entity_valid(texture_entity_t entity)
|
||||
inline bool is_texture_entity_valid(texture_handle_t entity)
|
||||
{
|
||||
return entity.id != INVALID_TEXTURE_ID;
|
||||
}
|
||||
|
||||
inline texture_t* get_texture(const texture_collection_t* textures, texture_entity_t entity)
|
||||
inline texture_t* get_texture(const texture_collection_t* textures, texture_handle_t entity)
|
||||
{
|
||||
if (entity.id >= textures->count || !is_texture_entity_valid(entity))
|
||||
{
|
||||
|
||||
Reference in New Issue
Block a user