update sokol & stb

This commit is contained in:
2025-07-12 22:47:19 -04:00
parent 84451a74ad
commit 4ac28655b8
56 changed files with 1756 additions and 1828 deletions

View File

@@ -67,6 +67,26 @@ package sokol_gfx
SOKOL_DEBUG - by default this is defined if _DEBUG is defined
Link with the following system libraries (note that sokol_app.h has
additional linker requirements):
- on macOS/iOS with Metal: Metal
- on macOS with GL: OpenGL
- on iOS with GL: OpenGLES
- on Linux with EGL: GL or GLESv2
- on Linux with GLX: GL
- on Android: GLESv3, log, android
- on Windows with the MSVC or Clang toolchains: no action needed, libs are defined in-source via pragma-comment-lib
- on Windows with MINGW/MSYS2 gcc: compile with '-mwin32' so that _WIN32 is defined
- with the D3D11 backend: -ld3d11
On macOS and iOS, the implementation must be compiled as Objective-C.
On Emscripten:
- for WebGL2: add the linker option `-s USE_WEBGL2=1`
- for WebGPU: compile and link with `--use-port=emdawnwebgpu`
(for more exotic situations, read: https://dawn.googlesource.com/dawn/+/refs/heads/main/src/emdawnwebgpu/pkg/README.md)
sokol_gfx DOES NOT:
===================
- create a window, swapchain or the 3D-API context/device, you must do this
@@ -3608,6 +3628,8 @@ Sampler_Desc :: struct {
source code, you can provide an optional target string via
sg_shader_stage_desc.d3d11_target, the default target is "vs_4_0" for the
vertex shader stage and "ps_4_0" for the pixel shader stage.
You may optionally provide the file path to enable the default #include handler
behavior when compiling source code.
*/
Shader_Stage :: enum i32 {
NONE,
@@ -3621,6 +3643,7 @@ Shader_Function :: struct {
bytecode : Range,
entry : cstring,
d3d11_target : cstring,
d3d11_filepath : cstring,
}
Shader_Attr_Base_Type :: enum i32 {
@@ -3970,6 +3993,7 @@ Attachments_Desc :: struct {
Slot_Info :: struct {
state : Resource_State,
res_id : u32,
uninit_count : u32,
}
Buffer_Info :: struct {
@@ -4449,10 +4473,14 @@ Log_Item :: enum i32 {
VALIDATE_BEGINPASS_ATTACHMENTS_VALID,
VALIDATE_BEGINPASS_COMPUTEPASS_STORAGE_ATTACHMENTS_ONLY,
VALIDATE_BEGINPASS_RENDERPASS_RENDER_ATTACHMENTS_ONLY,
VALIDATE_BEGINPASS_COLOR_ATTACHMENT_IMAGE,
VALIDATE_BEGINPASS_RESOLVE_ATTACHMENT_IMAGE,
VALIDATE_BEGINPASS_DEPTHSTENCIL_ATTACHMENT_IMAGE,
VALIDATE_BEGINPASS_STORAGE_ATTACHMENT_IMAGE,
VALIDATE_BEGINPASS_COLOR_ATTACHMENT_IMAGE_ALIVE,
VALIDATE_BEGINPASS_COLOR_ATTACHMENT_IMAGE_VALID,
VALIDATE_BEGINPASS_RESOLVE_ATTACHMENT_IMAGE_ALIVE,
VALIDATE_BEGINPASS_RESOLVE_ATTACHMENT_IMAGE_VALID,
VALIDATE_BEGINPASS_DEPTHSTENCIL_ATTACHMENT_IMAGE_ALIVE,
VALIDATE_BEGINPASS_DEPTHSTENCIL_ATTACHMENT_IMAGE_VALID,
VALIDATE_BEGINPASS_STORAGE_ATTACHMENT_IMAGE_ALIVE,
VALIDATE_BEGINPASS_STORAGE_ATTACHMENT_IMAGE_VALID,
VALIDATE_BEGINPASS_SWAPCHAIN_EXPECT_WIDTH,
VALIDATE_BEGINPASS_SWAPCHAIN_EXPECT_WIDTH_NOTSET,
VALIDATE_BEGINPASS_SWAPCHAIN_EXPECT_HEIGHT,
@@ -4487,39 +4515,45 @@ Log_Item :: enum i32 {
VALIDATE_APIP_PIPELINE_EXISTS,
VALIDATE_APIP_PIPELINE_VALID,
VALIDATE_APIP_PASS_EXPECTED,
VALIDATE_APIP_SHADER_EXISTS,
VALIDATE_APIP_SHADER_VALID,
VALIDATE_APIP_PIPELINE_SHADER_ALIVE,
VALIDATE_APIP_PIPELINE_SHADER_VALID,
VALIDATE_APIP_COMPUTEPASS_EXPECTED,
VALIDATE_APIP_RENDERPASS_EXPECTED,
VALIDATE_APIP_CURPASS_ATTACHMENTS_EXISTS,
VALIDATE_APIP_CURPASS_ATTACHMENTS_ALIVE,
VALIDATE_APIP_CURPASS_ATTACHMENTS_VALID,
VALIDATE_APIP_ATT_COUNT,
VALIDATE_APIP_COLOR_ATTACHMENT_IMAGE_ALIVE,
VALIDATE_APIP_COLOR_ATTACHMENT_IMAGE_VALID,
VALIDATE_APIP_DEPTHSTENCIL_ATTACHMENT_IMAGE_ALIVE,
VALIDATE_APIP_DEPTHSTENCIL_ATTACHMENT_IMAGE_VALID,
VALIDATE_APIP_COLOR_FORMAT,
VALIDATE_APIP_DEPTH_FORMAT,
VALIDATE_APIP_SAMPLE_COUNT,
VALIDATE_APIP_EXPECTED_STORAGE_ATTACHMENT_IMAGE,
VALIDATE_APIP_STORAGE_ATTACHMENT_IMAGE_EXISTS,
VALIDATE_APIP_STORAGE_ATTACHMENT_IMAGE_ALIVE,
VALIDATE_APIP_STORAGE_ATTACHMENT_IMAGE_VALID,
VALIDATE_APIP_STORAGE_ATTACHMENT_PIXELFORMAT,
VALIDATE_APIP_STORAGE_ATTACHMENT_IMAGE_TYPE,
VALIDATE_ABND_PASS_EXPECTED,
VALIDATE_ABND_EMPTY_BINDINGS,
VALIDATE_ABND_PIPELINE,
VALIDATE_ABND_PIPELINE_EXISTS,
VALIDATE_ABND_NO_PIPELINE,
VALIDATE_ABND_PIPELINE_ALIVE,
VALIDATE_ABND_PIPELINE_VALID,
VALIDATE_ABND_PIPELINE_SHADER_ALIVE,
VALIDATE_ABND_PIPELINE_SHADER_VALID,
VALIDATE_ABND_COMPUTE_EXPECTED_NO_VBS,
VALIDATE_ABND_COMPUTE_EXPECTED_NO_IB,
VALIDATE_ABND_EXPECTED_VB,
VALIDATE_ABND_VB_EXISTS,
VALIDATE_ABND_VB_ALIVE,
VALIDATE_ABND_VB_TYPE,
VALIDATE_ABND_VB_OVERFLOW,
VALIDATE_ABND_NO_IB,
VALIDATE_ABND_IB,
VALIDATE_ABND_IB_EXISTS,
VALIDATE_ABND_IB_ALIVE,
VALIDATE_ABND_IB_TYPE,
VALIDATE_ABND_IB_OVERFLOW,
VALIDATE_ABND_EXPECTED_IMAGE_BINDING,
VALIDATE_ABND_IMG_EXISTS,
VALIDATE_ABND_IMG_ALIVE,
VALIDATE_ABND_IMAGE_TYPE_MISMATCH,
VALIDATE_ABND_EXPECTED_MULTISAMPLED_IMAGE,
VALIDATE_ABND_IMAGE_MSAA,
@@ -4529,9 +4563,10 @@ Log_Item :: enum i32 {
VALIDATE_ABND_UNEXPECTED_SAMPLER_COMPARE_NEVER,
VALIDATE_ABND_EXPECTED_SAMPLER_COMPARE_NEVER,
VALIDATE_ABND_EXPECTED_NONFILTERING_SAMPLER,
VALIDATE_ABND_SMP_EXISTS,
VALIDATE_ABND_SMP_ALIVE,
VALIDATE_ABND_SMP_VALID,
VALIDATE_ABND_EXPECTED_STORAGEBUFFER_BINDING,
VALIDATE_ABND_STORAGEBUFFER_EXISTS,
VALIDATE_ABND_STORAGEBUFFER_ALIVE,
VALIDATE_ABND_STORAGEBUFFER_BINDING_BUFFERTYPE,
VALIDATE_ABND_STORAGEBUFFER_READWRITE_IMMUTABLE,
VALIDATE_ABND_IMAGE_BINDING_VS_DEPTHSTENCIL_ATTACHMENT,
@@ -4540,6 +4575,10 @@ Log_Item :: enum i32 {
VALIDATE_ABND_IMAGE_BINDING_VS_STORAGE_ATTACHMENT,
VALIDATE_AU_PASS_EXPECTED,
VALIDATE_AU_NO_PIPELINE,
VALIDATE_AU_PIPELINE_ALIVE,
VALIDATE_AU_PIPELINE_VALID,
VALIDATE_AU_PIPELINE_SHADER_ALIVE,
VALIDATE_AU_PIPELINE_SHADER_VALID,
VALIDATE_AU_NO_UNIFORMBLOCK_AT_SLOT,
VALIDATE_AU_SIZE,
VALIDATE_DRAW_RENDERPASS_EXPECTED,
@@ -4783,7 +4822,6 @@ D3d11_Pipeline_Info :: struct {
D3d11_Attachments_Info :: struct {
color_rtv : [4]rawptr,
resolve_rtv : [4]rawptr,
dsv : rawptr,
}