mirror of https://github.com/libsdl-org/SDL
render: Remove scale_mode option from logical presentation.
It doesn't make sense now that we don't have a render target texture to scale.
This commit is contained in:
parent
9bd917ec80
commit
b33748af6e
|
@ -1761,10 +1761,10 @@ expression e2;
|
||||||
@@
|
@@
|
||||||
(
|
(
|
||||||
- SDL_RenderSetLogicalSize(renderer, 0, 0)
|
- SDL_RenderSetLogicalSize(renderer, 0, 0)
|
||||||
+ SDL_SetRenderLogicalPresentation(renderer, 0, 0, SDL_LOGICAL_PRESENTATION_DISABLED, SDL_ScaleModeNearest)
|
+ SDL_SetRenderLogicalPresentation(renderer, 0, 0, SDL_LOGICAL_PRESENTATION_DISABLED)
|
||||||
|
|
|
|
||||||
- SDL_RenderSetLogicalSize(renderer, e1, e2)
|
- SDL_RenderSetLogicalSize(renderer, e1, e2)
|
||||||
+ SDL_SetRenderLogicalPresentation(renderer, e1, e2, SDL_LOGICAL_PRESENTATION_LETTERBOX, SDL_ScaleModeLinear)
|
+ SDL_SetRenderLogicalPresentation(renderer, e1, e2, SDL_LOGICAL_PRESENTATION_LETTERBOX)
|
||||||
)
|
)
|
||||||
@@
|
@@
|
||||||
@@
|
@@
|
||||||
|
|
|
@ -29,7 +29,7 @@ SDL_AppResult SDL_AppInit(void **appstate, int argc, char *argv[])
|
||||||
return SDL_APP_FAILURE;
|
return SDL_APP_FAILURE;
|
||||||
}
|
}
|
||||||
|
|
||||||
SDL_SetRenderLogicalPresentation(renderer, 640, 480, SDL_LOGICAL_PRESENTATION_LETTERBOX, SDL_SCALEMODE_NEAREST);
|
SDL_SetRenderLogicalPresentation(renderer, 640, 480, SDL_LOGICAL_PRESENTATION_LETTERBOX);
|
||||||
|
|
||||||
/* set up some random points */
|
/* set up some random points */
|
||||||
for (i = 0; i < SDL_arraysize(points); i++) {
|
for (i = 0; i < SDL_arraysize(points); i++) {
|
||||||
|
|
|
@ -1281,7 +1281,6 @@ extern SDL_DECLSPEC SDL_Texture * SDLCALL SDL_GetRenderTarget(SDL_Renderer *rend
|
||||||
* \param w the width of the logical resolution.
|
* \param w the width of the logical resolution.
|
||||||
* \param h the height of the logical resolution.
|
* \param h the height of the logical resolution.
|
||||||
* \param mode the presentation mode used.
|
* \param mode the presentation mode used.
|
||||||
* \param scale_mode the scale mode used.
|
|
||||||
* \returns true on success or false on failure; call SDL_GetError() for more
|
* \returns true on success or false on failure; call SDL_GetError() for more
|
||||||
* information.
|
* information.
|
||||||
*
|
*
|
||||||
|
@ -1291,7 +1290,7 @@ extern SDL_DECLSPEC SDL_Texture * SDLCALL SDL_GetRenderTarget(SDL_Renderer *rend
|
||||||
* \sa SDL_GetRenderLogicalPresentation
|
* \sa SDL_GetRenderLogicalPresentation
|
||||||
* \sa SDL_GetRenderLogicalPresentationRect
|
* \sa SDL_GetRenderLogicalPresentationRect
|
||||||
*/
|
*/
|
||||||
extern SDL_DECLSPEC bool SDLCALL SDL_SetRenderLogicalPresentation(SDL_Renderer *renderer, int w, int h, SDL_RendererLogicalPresentation mode, SDL_ScaleMode scale_mode);
|
extern SDL_DECLSPEC bool SDLCALL SDL_SetRenderLogicalPresentation(SDL_Renderer *renderer, int w, int h, SDL_RendererLogicalPresentation mode);
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Get device independent resolution and presentation mode for rendering.
|
* Get device independent resolution and presentation mode for rendering.
|
||||||
|
@ -1302,7 +1301,6 @@ extern SDL_DECLSPEC bool SDLCALL SDL_SetRenderLogicalPresentation(SDL_Renderer *
|
||||||
* \param renderer the rendering context.
|
* \param renderer the rendering context.
|
||||||
* \param w an int to be filled with the width.
|
* \param w an int to be filled with the width.
|
||||||
* \param h an int to be filled with the height.
|
* \param h an int to be filled with the height.
|
||||||
* \param mode a pointer filled in with the presentation mode.
|
|
||||||
* \param scale_mode a pointer filled in with the scale mode.
|
* \param scale_mode a pointer filled in with the scale mode.
|
||||||
* \returns true on success or false on failure; call SDL_GetError() for more
|
* \returns true on success or false on failure; call SDL_GetError() for more
|
||||||
* information.
|
* information.
|
||||||
|
@ -1311,7 +1309,7 @@ extern SDL_DECLSPEC bool SDLCALL SDL_SetRenderLogicalPresentation(SDL_Renderer *
|
||||||
*
|
*
|
||||||
* \sa SDL_SetRenderLogicalPresentation
|
* \sa SDL_SetRenderLogicalPresentation
|
||||||
*/
|
*/
|
||||||
extern SDL_DECLSPEC bool SDLCALL SDL_GetRenderLogicalPresentation(SDL_Renderer *renderer, int *w, int *h, SDL_RendererLogicalPresentation *mode, SDL_ScaleMode *scale_mode);
|
extern SDL_DECLSPEC bool SDLCALL SDL_GetRenderLogicalPresentation(SDL_Renderer *renderer, int *w, int *h, SDL_RendererLogicalPresentation *mode);
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Get the final presentation rectangle for rendering.
|
* Get the final presentation rectangle for rendering.
|
||||||
|
|
|
@ -499,7 +499,7 @@ SDL_DYNAPI_PROC(bool,SDL_GetRenderDrawBlendMode,(SDL_Renderer *a, SDL_BlendMode
|
||||||
SDL_DYNAPI_PROC(bool,SDL_GetRenderDrawColor,(SDL_Renderer *a, Uint8 *b, Uint8 *c, Uint8 *d, Uint8 *e),(a,b,c,d,e),return)
|
SDL_DYNAPI_PROC(bool,SDL_GetRenderDrawColor,(SDL_Renderer *a, Uint8 *b, Uint8 *c, Uint8 *d, Uint8 *e),(a,b,c,d,e),return)
|
||||||
SDL_DYNAPI_PROC(bool,SDL_GetRenderDrawColorFloat,(SDL_Renderer *a, float *b, float *c, float *d, float *e),(a,b,c,d,e),return)
|
SDL_DYNAPI_PROC(bool,SDL_GetRenderDrawColorFloat,(SDL_Renderer *a, float *b, float *c, float *d, float *e),(a,b,c,d,e),return)
|
||||||
SDL_DYNAPI_PROC(const char*,SDL_GetRenderDriver,(int a),(a),return)
|
SDL_DYNAPI_PROC(const char*,SDL_GetRenderDriver,(int a),(a),return)
|
||||||
SDL_DYNAPI_PROC(bool,SDL_GetRenderLogicalPresentation,(SDL_Renderer *a, int *b, int *c, SDL_RendererLogicalPresentation *d, SDL_ScaleMode *e),(a,b,c,d,e),return)
|
SDL_DYNAPI_PROC(bool,SDL_GetRenderLogicalPresentation,(SDL_Renderer *a, int *b, int *c, SDL_RendererLogicalPresentation *d),(a,b,c,d),return)
|
||||||
SDL_DYNAPI_PROC(bool,SDL_GetRenderLogicalPresentationRect,(SDL_Renderer *a, SDL_FRect *b),(a,b),return)
|
SDL_DYNAPI_PROC(bool,SDL_GetRenderLogicalPresentationRect,(SDL_Renderer *a, SDL_FRect *b),(a,b),return)
|
||||||
SDL_DYNAPI_PROC(void*,SDL_GetRenderMetalCommandEncoder,(SDL_Renderer *a),(a),return)
|
SDL_DYNAPI_PROC(void*,SDL_GetRenderMetalCommandEncoder,(SDL_Renderer *a),(a),return)
|
||||||
SDL_DYNAPI_PROC(void*,SDL_GetRenderMetalLayer,(SDL_Renderer *a),(a),return)
|
SDL_DYNAPI_PROC(void*,SDL_GetRenderMetalLayer,(SDL_Renderer *a),(a),return)
|
||||||
|
@ -879,7 +879,7 @@ SDL_DYNAPI_PROC(bool,SDL_SetRenderColorScale,(SDL_Renderer *a, float b),(a,b),re
|
||||||
SDL_DYNAPI_PROC(bool,SDL_SetRenderDrawBlendMode,(SDL_Renderer *a, SDL_BlendMode b),(a,b),return)
|
SDL_DYNAPI_PROC(bool,SDL_SetRenderDrawBlendMode,(SDL_Renderer *a, SDL_BlendMode b),(a,b),return)
|
||||||
SDL_DYNAPI_PROC(bool,SDL_SetRenderDrawColor,(SDL_Renderer *a, Uint8 b, Uint8 c, Uint8 d, Uint8 e),(a,b,c,d,e),return)
|
SDL_DYNAPI_PROC(bool,SDL_SetRenderDrawColor,(SDL_Renderer *a, Uint8 b, Uint8 c, Uint8 d, Uint8 e),(a,b,c,d,e),return)
|
||||||
SDL_DYNAPI_PROC(bool,SDL_SetRenderDrawColorFloat,(SDL_Renderer *a, float b, float c, float d, float e),(a,b,c,d,e),return)
|
SDL_DYNAPI_PROC(bool,SDL_SetRenderDrawColorFloat,(SDL_Renderer *a, float b, float c, float d, float e),(a,b,c,d,e),return)
|
||||||
SDL_DYNAPI_PROC(bool,SDL_SetRenderLogicalPresentation,(SDL_Renderer *a, int b, int c, SDL_RendererLogicalPresentation d, SDL_ScaleMode e),(a,b,c,d,e),return)
|
SDL_DYNAPI_PROC(bool,SDL_SetRenderLogicalPresentation,(SDL_Renderer *a, int b, int c, SDL_RendererLogicalPresentation d),(a,b,c,d),return)
|
||||||
SDL_DYNAPI_PROC(bool,SDL_SetRenderScale,(SDL_Renderer *a, float b, float c),(a,b,c),return)
|
SDL_DYNAPI_PROC(bool,SDL_SetRenderScale,(SDL_Renderer *a, float b, float c),(a,b,c),return)
|
||||||
SDL_DYNAPI_PROC(bool,SDL_SetRenderTarget,(SDL_Renderer *a, SDL_Texture *b),(a,b),return)
|
SDL_DYNAPI_PROC(bool,SDL_SetRenderTarget,(SDL_Renderer *a, SDL_Texture *b),(a,b),return)
|
||||||
SDL_DYNAPI_PROC(bool,SDL_SetRenderVSync,(SDL_Renderer *a, int b),(a,b),return)
|
SDL_DYNAPI_PROC(bool,SDL_SetRenderVSync,(SDL_Renderer *a, int b),(a,b),return)
|
||||||
|
|
|
@ -2648,12 +2648,11 @@ static void UpdateLogicalPresentation(SDL_Renderer *renderer)
|
||||||
renderer->view = &renderer->logical_view;
|
renderer->view = &renderer->logical_view;
|
||||||
}
|
}
|
||||||
|
|
||||||
bool SDL_SetRenderLogicalPresentation(SDL_Renderer *renderer, int w, int h, SDL_RendererLogicalPresentation mode, SDL_ScaleMode scale_mode)
|
bool SDL_SetRenderLogicalPresentation(SDL_Renderer *renderer, int w, int h, SDL_RendererLogicalPresentation mode)
|
||||||
{
|
{
|
||||||
CHECK_RENDERER_MAGIC(renderer, false);
|
CHECK_RENDERER_MAGIC(renderer, false);
|
||||||
|
|
||||||
renderer->logical_presentation_mode = mode;
|
renderer->logical_presentation_mode = mode;
|
||||||
renderer->logical_scale_mode = scale_mode;
|
|
||||||
renderer->logical_w = w;
|
renderer->logical_w = w;
|
||||||
renderer->logical_h = h;
|
renderer->logical_h = h;
|
||||||
|
|
||||||
|
@ -2664,19 +2663,17 @@ bool SDL_SetRenderLogicalPresentation(SDL_Renderer *renderer, int w, int h, SDL_
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
|
|
||||||
bool SDL_GetRenderLogicalPresentation(SDL_Renderer *renderer, int *w, int *h, SDL_RendererLogicalPresentation *mode, SDL_ScaleMode *scale_mode)
|
bool SDL_GetRenderLogicalPresentation(SDL_Renderer *renderer, int *w, int *h, SDL_RendererLogicalPresentation *mode)
|
||||||
{
|
{
|
||||||
#define SETVAL(ptr, val) if (ptr) { *ptr = val; }
|
#define SETVAL(ptr, val) if (ptr) { *ptr = val; }
|
||||||
|
|
||||||
SETVAL(w, 0);
|
SETVAL(w, 0);
|
||||||
SETVAL(h, 0);
|
SETVAL(h, 0);
|
||||||
SETVAL(mode, SDL_LOGICAL_PRESENTATION_DISABLED);
|
SETVAL(mode, SDL_LOGICAL_PRESENTATION_DISABLED);
|
||||||
SETVAL(scale_mode, SDL_SCALEMODE_NEAREST);
|
|
||||||
|
|
||||||
CHECK_RENDERER_MAGIC(renderer, false);
|
CHECK_RENDERER_MAGIC(renderer, false);
|
||||||
|
|
||||||
SETVAL(mode, renderer->logical_presentation_mode);
|
SETVAL(mode, renderer->logical_presentation_mode);
|
||||||
SETVAL(scale_mode, renderer->logical_scale_mode);
|
|
||||||
SETVAL(w, renderer->logical_w);
|
SETVAL(w, renderer->logical_w);
|
||||||
SETVAL(h, renderer->logical_h);
|
SETVAL(h, renderer->logical_h);
|
||||||
|
|
||||||
|
|
|
@ -240,7 +240,6 @@ struct SDL_Renderer
|
||||||
|
|
||||||
// Support for logical output coordinates
|
// Support for logical output coordinates
|
||||||
SDL_RendererLogicalPresentation logical_presentation_mode;
|
SDL_RendererLogicalPresentation logical_presentation_mode;
|
||||||
SDL_ScaleMode logical_scale_mode;
|
|
||||||
int logical_w, logical_h;
|
int logical_w, logical_h;
|
||||||
SDL_FRect logical_src_rect;
|
SDL_FRect logical_src_rect;
|
||||||
SDL_FRect logical_dst_rect;
|
SDL_FRect logical_dst_rect;
|
||||||
|
|
|
@ -482,21 +482,6 @@ static int SDLCALL SDLTest_CommonStateParseVideoArguments(void *data, char **arg
|
||||||
}
|
}
|
||||||
return -1;
|
return -1;
|
||||||
}
|
}
|
||||||
if (SDL_strcasecmp(argv[index], "--logical-scale-quality") == 0) {
|
|
||||||
++index;
|
|
||||||
if (!argv[index]) {
|
|
||||||
return -1;
|
|
||||||
}
|
|
||||||
if (SDL_strcasecmp(argv[index], "nearest") == 0) {
|
|
||||||
state->logical_scale_mode = SDL_SCALEMODE_NEAREST;
|
|
||||||
return 2;
|
|
||||||
}
|
|
||||||
if (SDL_strcasecmp(argv[index], "linear") == 0) {
|
|
||||||
state->logical_scale_mode = SDL_SCALEMODE_LINEAR;
|
|
||||||
return 2;
|
|
||||||
}
|
|
||||||
return -1;
|
|
||||||
}
|
|
||||||
if (SDL_strcasecmp(argv[index], "--scale") == 0) {
|
if (SDL_strcasecmp(argv[index], "--scale") == 0) {
|
||||||
++index;
|
++index;
|
||||||
if (!argv[index]) {
|
if (!argv[index]) {
|
||||||
|
@ -708,7 +693,6 @@ SDLTest_CommonState *SDLTest_CommonCreateState(char **argv, SDL_InitFlags flags)
|
||||||
state->window_w = DEFAULT_WINDOW_WIDTH;
|
state->window_w = DEFAULT_WINDOW_WIDTH;
|
||||||
state->window_h = DEFAULT_WINDOW_HEIGHT;
|
state->window_h = DEFAULT_WINDOW_HEIGHT;
|
||||||
state->logical_presentation = SDL_LOGICAL_PRESENTATION_DISABLED;
|
state->logical_presentation = SDL_LOGICAL_PRESENTATION_DISABLED;
|
||||||
state->logical_scale_mode = SDL_SCALEMODE_LINEAR;
|
|
||||||
state->num_windows = 1;
|
state->num_windows = 1;
|
||||||
state->audio_freq = 22050;
|
state->audio_freq = 22050;
|
||||||
state->audio_format = SDL_AUDIO_S16;
|
state->audio_format = SDL_AUDIO_S16;
|
||||||
|
@ -1082,21 +1066,6 @@ static void SDLTest_PrintLogicalPresentation(char *text, size_t maxlen, SDL_Rend
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
static void SDLTest_PrintScaleMode(char *text, size_t maxlen, SDL_ScaleMode scale_mode)
|
|
||||||
{
|
|
||||||
switch (scale_mode) {
|
|
||||||
case SDL_SCALEMODE_NEAREST:
|
|
||||||
SDL_snprintfcat(text, maxlen, "NEAREST");
|
|
||||||
break;
|
|
||||||
case SDL_SCALEMODE_LINEAR:
|
|
||||||
SDL_snprintfcat(text, maxlen, "LINEAR");
|
|
||||||
break;
|
|
||||||
default:
|
|
||||||
SDL_snprintfcat(text, maxlen, "0x%8.8x", scale_mode);
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
static void SDLTest_PrintRenderer(SDL_Renderer *renderer)
|
static void SDLTest_PrintRenderer(SDL_Renderer *renderer)
|
||||||
{
|
{
|
||||||
const char *name;
|
const char *name;
|
||||||
|
@ -1480,7 +1449,7 @@ bool SDLTest_CommonInit(SDLTest_CommonState *state)
|
||||||
if (state->render_vsync) {
|
if (state->render_vsync) {
|
||||||
SDL_SetRenderVSync(state->renderers[i], state->render_vsync);
|
SDL_SetRenderVSync(state->renderers[i], state->render_vsync);
|
||||||
}
|
}
|
||||||
if (!SDL_SetRenderLogicalPresentation(state->renderers[i], state->logical_w, state->logical_h, state->logical_presentation, state->logical_scale_mode)) {
|
if (!SDL_SetRenderLogicalPresentation(state->renderers[i], state->logical_w, state->logical_h, state->logical_presentation)) {
|
||||||
SDL_Log("Couldn't set logical presentation: %s\n", SDL_GetError());
|
SDL_Log("Couldn't set logical presentation: %s\n", SDL_GetError());
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
|
@ -2587,7 +2556,6 @@ void SDLTest_CommonDrawWindowInfo(SDL_Renderer *renderer, SDL_Window *window, fl
|
||||||
SDL_DisplayID windowDisplayID = SDL_GetDisplayForWindow(window);
|
SDL_DisplayID windowDisplayID = SDL_GetDisplayForWindow(window);
|
||||||
const char *name;
|
const char *name;
|
||||||
SDL_RendererLogicalPresentation logical_presentation;
|
SDL_RendererLogicalPresentation logical_presentation;
|
||||||
SDL_ScaleMode logical_scale_mode;
|
|
||||||
|
|
||||||
/* Video */
|
/* Video */
|
||||||
|
|
||||||
|
@ -2638,12 +2606,9 @@ void SDLTest_CommonDrawWindowInfo(SDL_Renderer *renderer, SDL_Window *window, fl
|
||||||
SDLTest_DrawString(renderer, 0.0f, textY, text);
|
SDLTest_DrawString(renderer, 0.0f, textY, text);
|
||||||
textY += lineHeight;
|
textY += lineHeight;
|
||||||
|
|
||||||
SDL_GetRenderLogicalPresentation(renderer, &w, &h, &logical_presentation, &logical_scale_mode);
|
SDL_GetRenderLogicalPresentation(renderer, &w, &h, &logical_presentation);
|
||||||
(void)SDL_snprintf(text, sizeof(text), "SDL_GetRenderLogicalPresentation: %dx%d ", w, h);
|
(void)SDL_snprintf(text, sizeof(text), "SDL_GetRenderLogicalPresentation: %dx%d ", w, h);
|
||||||
SDLTest_PrintLogicalPresentation(text, sizeof(text), logical_presentation);
|
SDLTest_PrintLogicalPresentation(text, sizeof(text), logical_presentation);
|
||||||
SDL_snprintfcat(text, sizeof(text), ", ");
|
|
||||||
SDLTest_PrintScaleMode(text, sizeof(text), logical_scale_mode);
|
|
||||||
SDLTest_DrawString(renderer, 0.0f, textY, text);
|
|
||||||
textY += lineHeight;
|
textY += lineHeight;
|
||||||
|
|
||||||
/* Window */
|
/* Window */
|
||||||
|
|
|
@ -1089,7 +1089,6 @@ static int SDLCALL render_testLogicalSize(void *arg)
|
||||||
int w, h;
|
int w, h;
|
||||||
int set_w, set_h;
|
int set_w, set_h;
|
||||||
SDL_RendererLogicalPresentation set_presentation_mode;
|
SDL_RendererLogicalPresentation set_presentation_mode;
|
||||||
SDL_ScaleMode set_scale_mode;
|
|
||||||
SDL_FRect set_rect;
|
SDL_FRect set_rect;
|
||||||
const int factor = 2;
|
const int factor = 2;
|
||||||
|
|
||||||
|
@ -1108,16 +1107,13 @@ static int SDLCALL render_testLogicalSize(void *arg)
|
||||||
|
|
||||||
/* Set the logical size and do a fill operation */
|
/* Set the logical size and do a fill operation */
|
||||||
CHECK_FUNC(SDL_GetCurrentRenderOutputSize, (renderer, &w, &h))
|
CHECK_FUNC(SDL_GetCurrentRenderOutputSize, (renderer, &w, &h))
|
||||||
CHECK_FUNC(SDL_SetRenderLogicalPresentation, (renderer, w / factor, h / factor,
|
CHECK_FUNC(SDL_SetRenderLogicalPresentation, (renderer, w / factor, h / factor, SDL_LOGICAL_PRESENTATION_LETTERBOX))
|
||||||
SDL_LOGICAL_PRESENTATION_LETTERBOX,
|
CHECK_FUNC(SDL_GetRenderLogicalPresentation, (renderer, &set_w, &set_h, &set_presentation_mode))
|
||||||
SDL_SCALEMODE_NEAREST))
|
|
||||||
CHECK_FUNC(SDL_GetRenderLogicalPresentation, (renderer, &set_w, &set_h, &set_presentation_mode, &set_scale_mode))
|
|
||||||
SDLTest_AssertCheck(
|
SDLTest_AssertCheck(
|
||||||
set_w == (w / factor) &&
|
set_w == (w / factor) &&
|
||||||
set_h == (h / factor) &&
|
set_h == (h / factor) &&
|
||||||
set_presentation_mode == SDL_LOGICAL_PRESENTATION_LETTERBOX &&
|
set_presentation_mode == SDL_LOGICAL_PRESENTATION_LETTERBOX,
|
||||||
set_scale_mode == SDL_SCALEMODE_NEAREST,
|
"Validate result from SDL_GetRenderLogicalPresentation, got %d, %d, %d", set_w, set_h, set_presentation_mode);
|
||||||
"Validate result from SDL_GetRenderLogicalPresentation, got %d, %d, %d, %d", set_w, set_h, set_presentation_mode, set_scale_mode);
|
|
||||||
CHECK_FUNC(SDL_GetRenderLogicalPresentationRect, (renderer, &set_rect))
|
CHECK_FUNC(SDL_GetRenderLogicalPresentationRect, (renderer, &set_rect))
|
||||||
SDLTest_AssertCheck(
|
SDLTest_AssertCheck(
|
||||||
set_rect.x == 0.0f &&
|
set_rect.x == 0.0f &&
|
||||||
|
@ -1131,16 +1127,13 @@ static int SDLCALL render_testLogicalSize(void *arg)
|
||||||
rect.w = (float)viewport.w / factor;
|
rect.w = (float)viewport.w / factor;
|
||||||
rect.h = (float)viewport.h / factor;
|
rect.h = (float)viewport.h / factor;
|
||||||
CHECK_FUNC(SDL_RenderFillRect, (renderer, &rect))
|
CHECK_FUNC(SDL_RenderFillRect, (renderer, &rect))
|
||||||
CHECK_FUNC(SDL_SetRenderLogicalPresentation, (renderer, 0, 0,
|
CHECK_FUNC(SDL_SetRenderLogicalPresentation, (renderer, 0, 0, SDL_LOGICAL_PRESENTATION_DISABLED))
|
||||||
SDL_LOGICAL_PRESENTATION_DISABLED,
|
CHECK_FUNC(SDL_GetRenderLogicalPresentation, (renderer, &set_w, &set_h, &set_presentation_mode))
|
||||||
SDL_SCALEMODE_NEAREST))
|
|
||||||
CHECK_FUNC(SDL_GetRenderLogicalPresentation, (renderer, &set_w, &set_h, &set_presentation_mode, &set_scale_mode))
|
|
||||||
SDLTest_AssertCheck(
|
SDLTest_AssertCheck(
|
||||||
set_w == 0 &&
|
set_w == 0 &&
|
||||||
set_h == 0 &&
|
set_h == 0 &&
|
||||||
set_presentation_mode == SDL_LOGICAL_PRESENTATION_DISABLED &&
|
set_presentation_mode == SDL_LOGICAL_PRESENTATION_DISABLED,
|
||||||
set_scale_mode == SDL_SCALEMODE_NEAREST,
|
"Validate result from SDL_GetRenderLogicalPresentation, got %d, %d, %d", set_w, set_h, set_presentation_mode);
|
||||||
"Validate result from SDL_GetRenderLogicalPresentation, got %d, %d, %d, %d", set_w, set_h, set_presentation_mode, set_scale_mode);
|
|
||||||
CHECK_FUNC(SDL_GetRenderLogicalPresentationRect, (renderer, &set_rect))
|
CHECK_FUNC(SDL_GetRenderLogicalPresentationRect, (renderer, &set_rect))
|
||||||
SDLTest_AssertCheck(
|
SDLTest_AssertCheck(
|
||||||
set_rect.x == 0.0f &&
|
set_rect.x == 0.0f &&
|
||||||
|
@ -1157,9 +1150,7 @@ static int SDLCALL render_testLogicalSize(void *arg)
|
||||||
|
|
||||||
/* Set the logical size and viewport and do a fill operation */
|
/* Set the logical size and viewport and do a fill operation */
|
||||||
CHECK_FUNC(SDL_GetCurrentRenderOutputSize, (renderer, &w, &h))
|
CHECK_FUNC(SDL_GetCurrentRenderOutputSize, (renderer, &w, &h))
|
||||||
CHECK_FUNC(SDL_SetRenderLogicalPresentation, (renderer, w / factor, h / factor,
|
CHECK_FUNC(SDL_SetRenderLogicalPresentation, (renderer, w / factor, h / factor, SDL_LOGICAL_PRESENTATION_LETTERBOX))
|
||||||
SDL_LOGICAL_PRESENTATION_LETTERBOX,
|
|
||||||
SDL_SCALEMODE_NEAREST))
|
|
||||||
viewport.x = (TESTRENDER_SCREEN_W / 4) / factor;
|
viewport.x = (TESTRENDER_SCREEN_W / 4) / factor;
|
||||||
viewport.y = (TESTRENDER_SCREEN_H / 4) / factor;
|
viewport.y = (TESTRENDER_SCREEN_H / 4) / factor;
|
||||||
viewport.w = (TESTRENDER_SCREEN_W / 2) / factor;
|
viewport.w = (TESTRENDER_SCREEN_W / 2) / factor;
|
||||||
|
@ -1168,9 +1159,7 @@ static int SDLCALL render_testLogicalSize(void *arg)
|
||||||
CHECK_FUNC(SDL_SetRenderDrawColor, (renderer, 0, 255, 0, SDL_ALPHA_OPAQUE))
|
CHECK_FUNC(SDL_SetRenderDrawColor, (renderer, 0, 255, 0, SDL_ALPHA_OPAQUE))
|
||||||
CHECK_FUNC(SDL_RenderFillRect, (renderer, NULL))
|
CHECK_FUNC(SDL_RenderFillRect, (renderer, NULL))
|
||||||
CHECK_FUNC(SDL_SetRenderViewport, (renderer, NULL))
|
CHECK_FUNC(SDL_SetRenderViewport, (renderer, NULL))
|
||||||
CHECK_FUNC(SDL_SetRenderLogicalPresentation, (renderer, 0, 0,
|
CHECK_FUNC(SDL_SetRenderLogicalPresentation, (renderer, 0, 0, SDL_LOGICAL_PRESENTATION_DISABLED))
|
||||||
SDL_LOGICAL_PRESENTATION_DISABLED,
|
|
||||||
SDL_SCALEMODE_NEAREST))
|
|
||||||
|
|
||||||
/* Check to see if final image matches. */
|
/* Check to see if final image matches. */
|
||||||
compare(referenceSurface, ALLOWABLE_ERROR_OPAQUE);
|
compare(referenceSurface, ALLOWABLE_ERROR_OPAQUE);
|
||||||
|
@ -1196,15 +1185,13 @@ static int SDLCALL render_testLogicalSize(void *arg)
|
||||||
CHECK_FUNC(SDL_SetRenderLogicalPresentation, (renderer,
|
CHECK_FUNC(SDL_SetRenderLogicalPresentation, (renderer,
|
||||||
w - 2 * (TESTRENDER_SCREEN_W / 4),
|
w - 2 * (TESTRENDER_SCREEN_W / 4),
|
||||||
h,
|
h,
|
||||||
SDL_LOGICAL_PRESENTATION_LETTERBOX,
|
SDL_LOGICAL_PRESENTATION_LETTERBOX))
|
||||||
SDL_SCALEMODE_LINEAR))
|
CHECK_FUNC(SDL_GetRenderLogicalPresentation, (renderer, &set_w, &set_h, &set_presentation_mode))
|
||||||
CHECK_FUNC(SDL_GetRenderLogicalPresentation, (renderer, &set_w, &set_h, &set_presentation_mode, &set_scale_mode))
|
|
||||||
SDLTest_AssertCheck(
|
SDLTest_AssertCheck(
|
||||||
set_w == w - 2 * (TESTRENDER_SCREEN_W / 4) &&
|
set_w == w - 2 * (TESTRENDER_SCREEN_W / 4) &&
|
||||||
set_h == h &&
|
set_h == h &&
|
||||||
set_presentation_mode == SDL_LOGICAL_PRESENTATION_LETTERBOX &&
|
set_presentation_mode == SDL_LOGICAL_PRESENTATION_LETTERBOX,
|
||||||
set_scale_mode == SDL_SCALEMODE_LINEAR,
|
"Validate result from SDL_GetRenderLogicalPresentation, got %d, %d, %d", set_w, set_h, set_presentation_mode);
|
||||||
"Validate result from SDL_GetRenderLogicalPresentation, got %d, %d, %d, %d", set_w, set_h, set_presentation_mode, set_scale_mode);
|
|
||||||
CHECK_FUNC(SDL_GetRenderLogicalPresentationRect, (renderer, &set_rect))
|
CHECK_FUNC(SDL_GetRenderLogicalPresentationRect, (renderer, &set_rect))
|
||||||
SDLTest_AssertCheck(
|
SDLTest_AssertCheck(
|
||||||
set_rect.x == 20.0f &&
|
set_rect.x == 20.0f &&
|
||||||
|
@ -1214,16 +1201,13 @@ static int SDLCALL render_testLogicalSize(void *arg)
|
||||||
"Validate result from SDL_GetRenderLogicalPresentationRect, got {%g, %g, %gx%g}", set_rect.x, set_rect.y, set_rect.w, set_rect.h);
|
"Validate result from SDL_GetRenderLogicalPresentationRect, got {%g, %g, %gx%g}", set_rect.x, set_rect.y, set_rect.w, set_rect.h);
|
||||||
CHECK_FUNC(SDL_SetRenderDrawColor, (renderer, 0, 255, 0, SDL_ALPHA_OPAQUE))
|
CHECK_FUNC(SDL_SetRenderDrawColor, (renderer, 0, 255, 0, SDL_ALPHA_OPAQUE))
|
||||||
CHECK_FUNC(SDL_RenderFillRect, (renderer, NULL))
|
CHECK_FUNC(SDL_RenderFillRect, (renderer, NULL))
|
||||||
CHECK_FUNC(SDL_SetRenderLogicalPresentation, (renderer, 0, 0,
|
CHECK_FUNC(SDL_SetRenderLogicalPresentation, (renderer, 0, 0, SDL_LOGICAL_PRESENTATION_DISABLED))
|
||||||
SDL_LOGICAL_PRESENTATION_DISABLED,
|
CHECK_FUNC(SDL_GetRenderLogicalPresentation, (renderer, &set_w, &set_h, &set_presentation_mode))
|
||||||
SDL_SCALEMODE_NEAREST))
|
|
||||||
CHECK_FUNC(SDL_GetRenderLogicalPresentation, (renderer, &set_w, &set_h, &set_presentation_mode, &set_scale_mode))
|
|
||||||
SDLTest_AssertCheck(
|
SDLTest_AssertCheck(
|
||||||
set_w == 0 &&
|
set_w == 0 &&
|
||||||
set_h == 0 &&
|
set_h == 0 &&
|
||||||
set_presentation_mode == SDL_LOGICAL_PRESENTATION_DISABLED &&
|
set_presentation_mode == SDL_LOGICAL_PRESENTATION_DISABLED,
|
||||||
set_scale_mode == SDL_SCALEMODE_NEAREST,
|
"Validate result from SDL_GetRenderLogicalPresentation, got %d, %d, %d", set_w, set_h, set_presentation_mode);
|
||||||
"Validate result from SDL_GetRenderLogicalPresentation, got %d, %d, %d, %d", set_w, set_h, set_presentation_mode, set_scale_mode);
|
|
||||||
CHECK_FUNC(SDL_GetRenderLogicalPresentationRect, (renderer, &set_rect))
|
CHECK_FUNC(SDL_GetRenderLogicalPresentationRect, (renderer, &set_rect))
|
||||||
SDLTest_AssertCheck(
|
SDLTest_AssertCheck(
|
||||||
set_rect.x == 0.0f &&
|
set_rect.x == 0.0f &&
|
||||||
|
|
|
@ -2086,8 +2086,7 @@ int main(int argc, char *argv[])
|
||||||
|
|
||||||
/* scale for platforms that don't give you the window size you asked for. */
|
/* scale for platforms that don't give you the window size you asked for. */
|
||||||
SDL_SetRenderLogicalPresentation(screen, (int)SCREEN_WIDTH, (int)SCREEN_HEIGHT,
|
SDL_SetRenderLogicalPresentation(screen, (int)SCREEN_WIDTH, (int)SCREEN_HEIGHT,
|
||||||
SDL_LOGICAL_PRESENTATION_LETTERBOX,
|
SDL_LOGICAL_PRESENTATION_LETTERBOX);
|
||||||
SDL_SCALEMODE_LINEAR);
|
|
||||||
|
|
||||||
|
|
||||||
title_area.w = GAMEPAD_WIDTH;
|
title_area.w = GAMEPAD_WIDTH;
|
||||||
|
|
|
@ -1109,7 +1109,7 @@ int main(int argc, char *argv[])
|
||||||
SDL_Renderer *renderer = state->renderers[i];
|
SDL_Renderer *renderer = state->renderers[i];
|
||||||
int icon_w = 0, icon_h = 0;
|
int icon_w = 0, icon_h = 0;
|
||||||
|
|
||||||
SDL_SetRenderLogicalPresentation(renderer, WINDOW_WIDTH, WINDOW_HEIGHT, SDL_LOGICAL_PRESENTATION_LETTERBOX, SDL_SCALEMODE_LINEAR);
|
SDL_SetRenderLogicalPresentation(renderer, WINDOW_WIDTH, WINDOW_HEIGHT, SDL_LOGICAL_PRESENTATION_LETTERBOX);
|
||||||
|
|
||||||
ctx->window = window;
|
ctx->window = window;
|
||||||
ctx->renderer = renderer;
|
ctx->renderer = renderer;
|
||||||
|
|
|
@ -500,7 +500,7 @@ SDL_AppResult SDL_AppInit(void **appstate, int argc, char *argv[])
|
||||||
}
|
}
|
||||||
|
|
||||||
for (i = 0; i < state->num_windows; i++) {
|
for (i = 0; i < state->num_windows; i++) {
|
||||||
SDL_SetRenderLogicalPresentation(state->renderers[i], 640, 480, SDL_LOGICAL_PRESENTATION_LETTERBOX, SDL_SCALEMODE_NEAREST);
|
SDL_SetRenderLogicalPresentation(state->renderers[i], 640, 480, SDL_LOGICAL_PRESENTATION_LETTERBOX);
|
||||||
}
|
}
|
||||||
|
|
||||||
/* Create the windows, initialize the renderers, and load the textures */
|
/* Create the windows, initialize the renderers, and load the textures */
|
||||||
|
|
|
@ -122,7 +122,7 @@ int main(int argc, char *argv[])
|
||||||
goto quit;
|
goto quit;
|
||||||
}
|
}
|
||||||
|
|
||||||
SDL_SetRenderLogicalPresentation(renderer, WINDOW_WIDTH, WINDOW_HEIGHT, SDL_LOGICAL_PRESENTATION_LETTERBOX, SDL_SCALEMODE_NEAREST);
|
SDL_SetRenderLogicalPresentation(renderer, WINDOW_WIDTH, WINDOW_HEIGHT, SDL_LOGICAL_PRESENTATION_LETTERBOX);
|
||||||
|
|
||||||
sprite = CreateTexture(renderer, icon_bmp, icon_bmp_len, &sprite_w, &sprite_h);
|
sprite = CreateTexture(renderer, icon_bmp, icon_bmp_len, &sprite_w, &sprite_h);
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue