fix texture color issue on macos
This commit is contained in:
@@ -242,6 +242,13 @@ Cmdline.register_order(
|
||||
prosperon.max_dropped_files=1;
|
||||
prosperon.swap_interval = 1;
|
||||
prosperon.title = "Prosperon";
|
||||
prosperon.name = prosperon.title;
|
||||
prosperon.version = "432r23a";
|
||||
prosperon.identifier = "world.pockle.prosperon";
|
||||
prosperon.creator = "Pockle World LLC"
|
||||
prosperon.copyright = "Copyright Pockle World 2025"
|
||||
prosperon.type = "application"
|
||||
prosperon.url = "https://github.com/johnbrethauer/prosperon"
|
||||
|
||||
if (io.exists("config.js")) global.mixin("config.js");
|
||||
else console.warn("No config.js file found. Starting with default parameters.");
|
||||
|
||||
@@ -5,6 +5,9 @@
|
||||
float4 main(PSInput input) : SV_TARGET
|
||||
{
|
||||
float4 color = input.color;
|
||||
color.a = abs(sdf.circle(input.uv, 1)) <= 0.05 ? 1:0 ;
|
||||
float2 p = input.uv;
|
||||
p -= 0.5;
|
||||
p *= 2;
|
||||
color.a = abs(sdf.circle(p, 1)) <= 0.005 ? 1:0 ;
|
||||
return color;
|
||||
}
|
||||
@@ -2203,12 +2203,29 @@ static const JSCFunctionListEntry js_array_funcs[] = {
|
||||
PROTO_FUNC_DEF(array, lerp, 2)
|
||||
};
|
||||
|
||||
#define JS_SDL_PROP(JS, VAL, SDLPROP, PROP) \
|
||||
{ \
|
||||
JSValue v = JS_GetPropertyStr(JS,VAL,#PROP); \
|
||||
const char *str = JS_ToCString(JS, v); \
|
||||
SDL_SetAppMetadataProperty(SDLPROP, str); \
|
||||
JS_FreeCString(JS,str); \
|
||||
JS_FreeValue(js,v); \
|
||||
} \
|
||||
|
||||
JSC_SCALL(game_engine_start,
|
||||
JSValue p = argv[0];
|
||||
JS_SDL_PROP(js, p, SDL_PROP_APP_METADATA_NAME_STRING, name)
|
||||
JS_SDL_PROP(js, p, SDL_PROP_APP_METADATA_VERSION_STRING, version)
|
||||
JS_SDL_PROP(js, p, SDL_PROP_APP_METADATA_IDENTIFIER_STRING, identifier)
|
||||
JS_SDL_PROP(js, p, SDL_PROP_APP_METADATA_CREATOR_STRING, creator)
|
||||
JS_SDL_PROP(js, p, SDL_PROP_APP_METADATA_COPYRIGHT_STRING, copyright)
|
||||
JS_SDL_PROP(js, p, SDL_PROP_APP_METADATA_URL_STRING, url)
|
||||
JS_SDL_PROP(js, p, SDL_PROP_APP_METADATA_TYPE_STRING, type)
|
||||
|
||||
if (SDL_Init(SDL_INIT_VIDEO | SDL_INIT_CAMERA) < 0)
|
||||
return JS_ThrowReferenceError(js, "Couldn't initialize SDL: %s\n", SDL_GetError());
|
||||
|
||||
const char *title = JS_ToCString(js,js_getpropertystr(js,argv[0], "title"));
|
||||
SDL_Window *new = SDL_CreateWindow(title, js2number(js, js_getproperty(js,argv[0], width_atom)), js2number(js,js_getproperty(js,argv[0], height_atom)), SDL_WINDOW_RESIZABLE);
|
||||
SDL_Window *new = SDL_CreateWindow("prosperon", js2number(js, js_getproperty(js,argv[0], width_atom)), js2number(js,js_getproperty(js,argv[0], height_atom)), SDL_WINDOW_RESIZABLE);
|
||||
|
||||
if (!new) return JS_ThrowReferenceError(js, "Couldn't open window: %s\n", SDL_GetError());
|
||||
|
||||
@@ -3433,15 +3450,10 @@ SDL_GPUTextureFormat chosen_format = SDL_GPU_TEXTUREFORMAT_R8G8B8A8_UNORM;
|
||||
|
||||
switch (sfmt) {
|
||||
case SDL_PIXELFORMAT_RGBA32:
|
||||
case SDL_PIXELFORMAT_ABGR32:
|
||||
case SDL_PIXELFORMAT_ARGB32:
|
||||
case SDL_PIXELFORMAT_BGRA32:
|
||||
case SDL_PIXELFORMAT_RGBX8888:
|
||||
case SDL_PIXELFORMAT_XRGB8888:
|
||||
case SDL_PIXELFORMAT_BGRX8888:
|
||||
case SDL_PIXELFORMAT_XBGR8888:
|
||||
chosen_format = SDL_GPU_TEXTUREFORMAT_R8G8B8A8_UNORM;
|
||||
break;
|
||||
|
||||
case SDL_PIXELFORMAT_RGBA4444:
|
||||
case SDL_PIXELFORMAT_ABGR4444:
|
||||
@@ -3466,9 +3478,9 @@ switch (sfmt) {
|
||||
break;
|
||||
|
||||
default:
|
||||
surf = SDL_ConvertSurface(surf, SDL_PIXELFORMAT_RGBA8888);
|
||||
surf = SDL_ConvertSurface(surf, SDL_PIXELFORMAT_RGBA32);
|
||||
dofree = 1;
|
||||
sfmt = SDL_PIXELFORMAT_RGBA8888;
|
||||
sfmt = SDL_PIXELFORMAT_RGBA32;
|
||||
pdetails = SDL_GetPixelFormatDetails(sfmt);
|
||||
chosen_format = SDL_GPU_TEXTUREFORMAT_R8G8B8A8_UNORM;
|
||||
has_alpha = true;
|
||||
@@ -3615,9 +3627,6 @@ JS_SetProperty(js, ret, width_atom, number2js(js, surf->w));
|
||||
JS_SetProperty(js, ret, height_atom, number2js(js, surf->h));
|
||||
|
||||
if (dofree) SDL_DestroySurface(surf);
|
||||
)
|
||||
|
||||
JSC_CCALL(gpu_logical_size,
|
||||
|
||||
)
|
||||
|
||||
@@ -4307,9 +4316,7 @@ static const JSCFunctionListEntry js_SDL_GPUDevice_funcs[] = {
|
||||
MIST_FUNC_DEF(gpu, set_swapchain, 2),
|
||||
MIST_FUNC_DEF(gpu, make_sampler,1),
|
||||
MIST_FUNC_DEF(gpu, load_texture, 2),
|
||||
MIST_FUNC_DEF(gpu, logical_size, 1),
|
||||
MIST_FUNC_DEF(gpu, texture, 1),
|
||||
// MIST_FUNC_DEF(gpu, geometry, 2),
|
||||
MIST_FUNC_DEF(gpu, make_sprite_mesh, 2),
|
||||
MIST_FUNC_DEF(gpu, make_quad, 0),
|
||||
MIST_FUNC_DEF(gpu, driver, 0),
|
||||
|
||||
Reference in New Issue
Block a user