|
Trying to do true 16:9 mode in homebrew September 19, 2014 01:14PM | Registered: 16 years ago Posts: 55 |
if (CONF_GetAspectRatio() == CONF_ASPECT_16_9) {
// do widescreen specific stuff
} else { // CONF_ASPECT_4_3 or error/unknown value
// do non-widescreen stuff
}
Exact attempt was like this:if (CONF_GetAspectRatio() == CONF_ASPECT_16_9)
{
// do widescreen specific stuff
ML_DrawBackground(&boardBGw);
ML_SetBackgroundSize(&boardBGw, 850, 480);
}
else // CONF_ASPECT_4_3 or error/unknown value
{
// do non-widescreen stuff
ML_DrawBackground(&boardBGs);
ML_SetBackgroundSize(&boardBGs, 640, 480);
}
I have tried using MLLib because it was very simple and swift to use so far but I'm willing to use any other libraries/frameworks/other-stuff for this, it doesn't have to be MLLib.|
Re: Trying to do true 16:9 mode in homebrew September 20, 2014 06:38PM | Registered: 14 years ago Posts: 363 |
// 16:9 and 4:3 Screen Adjustment
if (CONF_GetAspectRatio() == CONF_ASPECT_16_9) {
engine_widescreen=true;
}
float engine_xscale(){
if(engine_widescreen){ return 0.85f; } else return 1;
}GRRLIB_DrawImg( screen_center_x, screen_center_y, spritesheet_get_pointer(S_TITLE), 0, engine_xscale(), 1, background_col );
|
Re: Trying to do true 16:9 mode in homebrew September 21, 2014 02:07AM | Registered: 16 years ago Posts: 55 |
|
Re: Trying to do true 16:9 mode in homebrew September 21, 2014 02:26AM | Registered: 14 years ago Posts: 363 |
|
Re: Trying to do true 16:9 mode in homebrew September 21, 2014 11:23AM | Moderator Registered: 16 years ago Posts: 686 |
|
Re: Trying to do true 16:9 mode in homebrew September 22, 2014 04:56PM | Registered: 16 years ago Posts: 55 |
|
Re: Trying to do true 16:9 mode in homebrew September 22, 2014 05:09PM | Registered: 14 years ago Posts: 363 |
|
Re: Trying to do true 16:9 mode in homebrew September 24, 2014 12:58PM | Registered: 16 years ago Posts: 55 |
float engine_xscale();Inside while(1) loop:
if (CONF_GetAspectRatio() == CONF_ASPECT_16_9)
{
// widescreen either 848x480 or 850x480, trial and error
// do widescreen specific stuff
engine_widescreen=true;
{
if(engine_widescreen)
{
return 0.85f;
} else return 1;
}
GRRLIB_DrawImg( 0, 0, &boardBGs_png, 0, engine_xscale(), 1, 000000 );
}
The errors given are:main.c:149:4: warning: passing argument 3 of 'GRRLIB_DrawImg' from incompatible pointer type GRRLIB__lib.h:108:7: note: expected 'const struct GRRLIB_texImg *' but argument is of type 'const u8 (*)[]'
GRRLIB_texImg *tex_boardBGs = GRRLIB_LoadTexture(boardBGs_png); GRRLIB_texImg *tex_boardBGw = GRRLIB_LoadTexture(boardBGw_png);And then...
GRRLIB_DrawImg( 0, 0, tex_boardBGs, 0, 1, 1, 0xFFFFFFFF );or
GRRLIB_DrawImg( 0, 0, tex_boardBGs, 0, 1, 1, 000000 );The code compiled so time to try this...