iOS: switch to OpenGLES 2. Enable shaders on new devices
parent
ab7b1f6c83
commit
11899a755b
|
@ -245,9 +245,9 @@ void set_default_settings(Settings *settings) {
|
|||
settings->setDefault("font_shadow", "1");
|
||||
settings->setDefault("font_shadow_alpha", "127");
|
||||
settings->setDefault("mono_font_path",
|
||||
porting::getDataPath("fonts" DIR_DELIM "Cousine-Regular.ttf"));
|
||||
porting::getDataPath("fonts" DIR_DELIM "Cousine-Regular.ttf"));
|
||||
settings->setDefault("fallback_font_path",
|
||||
porting::getDataPath("fonts" DIR_DELIM "DroidSansFallback.ttf"));
|
||||
porting::getDataPath("fonts" DIR_DELIM "DroidSansFallback.ttf"));
|
||||
|
||||
settings->setDefault("fallback_font_shadow", "1");
|
||||
settings->setDefault("fallback_font_shadow_alpha", "128");
|
||||
|
@ -302,7 +302,7 @@ void set_default_settings(Settings *settings) {
|
|||
|
||||
settings->setDefault("kick_msg_shutdown", "Server shutting down.");
|
||||
settings->setDefault("kick_msg_crash",
|
||||
"This server has experienced an internal error. You will now be disconnected.");
|
||||
"This server has experienced an internal error. You will now be disconnected.");
|
||||
settings->setDefault("ask_reconnect_on_crash", "false");
|
||||
settings->setDefault("kamikaze", "false");
|
||||
|
||||
|
@ -402,8 +402,6 @@ void set_default_settings(Settings *settings) {
|
|||
settings->setDefault("screenW", "0");
|
||||
settings->setDefault("screenH", "0");
|
||||
settings->setDefault("fullscreen", "true");
|
||||
settings->setDefault("enable_shaders", "false");
|
||||
settings->setDefault("video_driver", "ogles1");
|
||||
settings->setDefault("touchtarget", "true");
|
||||
settings->setDefault("touchscreen_threshold", "20");
|
||||
settings->setDefault("doubletap_jump", "true");
|
||||
|
@ -415,15 +413,15 @@ void set_default_settings(Settings *settings) {
|
|||
|
||||
// Set the optimal settings depending on the memory size [Android] | model [iOS]
|
||||
#ifdef __ANDROID__
|
||||
// minimal settings for less than 2GB RAM
|
||||
if (porting::getMemoryMax() < 2) {
|
||||
// minimal settings for less than 2GB RAM
|
||||
#elif __IOS__
|
||||
// minimal settings for 32-bit devices
|
||||
bool arm = false;
|
||||
#if defined(__arm__)
|
||||
#ifdef __arm__
|
||||
arm = true;
|
||||
#endif
|
||||
if (arm) {
|
||||
// minimal settings for 32-bit devices
|
||||
settings->setDefault("enable_minimap", "false");
|
||||
settings->setDefault("enable_clouds", "false");
|
||||
#endif
|
||||
|
@ -441,12 +439,13 @@ void set_default_settings(Settings *settings) {
|
|||
settings->setDefault("max_block_generate_distance", "1");
|
||||
settings->setDefault("enable_weather", "false");
|
||||
#ifdef __ANDROID__
|
||||
// low settings for 2-4GB RAM
|
||||
} else if (porting::getMemoryMax() >= 2 && porting::getMemoryMax() < 4) {
|
||||
// low settings for 2-4GB RAM
|
||||
#elif __IOS__
|
||||
// low settings
|
||||
} else if (([SDVersion deviceVersion] == iPhone5S) || ([SDVersion deviceVersion] == iPhone6) || ([SDVersion deviceVersion] == iPhone6Plus) || ([SDVersion deviceVersion] == iPodTouch6Gen) ||
|
||||
} else if (([SDVersion deviceVersion] == iPhone5S) || ([SDVersion deviceVersion] == iPhone6) || ([SDVersion deviceVersion] == iPhone6Plus) ||
|
||||
([SDVersion deviceVersion] == iPodTouch6Gen) ||
|
||||
([SDVersion deviceVersion] == iPadMini2) || ([SDVersion deviceVersion] == iPadMini3)) {
|
||||
// low settings
|
||||
settings->setDefault("enable_minimap", "false");
|
||||
#endif
|
||||
settings->setDefault("client_unload_unused_data_timeout", "120");
|
||||
|
@ -464,12 +463,13 @@ void set_default_settings(Settings *settings) {
|
|||
settings->setDefault("max_block_generate_distance", "2");
|
||||
settings->setDefault("enable_weather", "false");
|
||||
#ifdef __ANDROID__
|
||||
// medium settings for 4.1-6GB RAM
|
||||
} else if (porting::getMemoryMax() >= 4 && porting::getMemoryMax() < 6) {
|
||||
// medium settings for 4.1-6GB RAM
|
||||
#elif __IOS__
|
||||
// medium settings
|
||||
} else if (([SDVersion deviceVersion] == iPhone6S) || ([SDVersion deviceVersion] == iPhone6SPlus) || ([SDVersion deviceVersion] == iPhoneSE) || ([SDVersion deviceVersion] == iPhone7) || ([SDVersion deviceVersion] == iPhone7Plus) ||
|
||||
} else if (([SDVersion deviceVersion] == iPhone6S) || ([SDVersion deviceVersion] == iPhone6SPlus) || ([SDVersion deviceVersion] == iPhoneSE) ||
|
||||
([SDVersion deviceVersion] == iPhone7) || ([SDVersion deviceVersion] == iPhone7Plus) ||
|
||||
([SDVersion deviceVersion] == iPadMini4) || ([SDVersion deviceVersion] == iPadAir)) {
|
||||
// medium settings
|
||||
settings->setDefault("enable_minimap", "false");
|
||||
#endif
|
||||
settings->setDefault("client_unload_unused_data_timeout", "300");
|
||||
|
@ -480,23 +480,33 @@ void set_default_settings(Settings *settings) {
|
|||
settings->setDefault("active_block_range", "2");
|
||||
settings->setDefault("max_block_generate_distance", "3");
|
||||
} else {
|
||||
// high settings
|
||||
// high settings
|
||||
settings->setDefault("client_mapblock_limit", "500");
|
||||
settings->setDefault("viewing_range", "80");
|
||||
settings->setDefault("max_block_generate_distance", "5");
|
||||
|
||||
if (@available(iOS 13, *)) {
|
||||
// enable visual shader effects
|
||||
settings->setDefault("enable_waving_water", "true");
|
||||
settings->setDefault("enable_waving_leaves", "true");
|
||||
settings->setDefault("enable_waving_plants", "true");
|
||||
}
|
||||
}
|
||||
|
||||
// Android Settings
|
||||
#ifdef __ANDROID__
|
||||
settings->setDefault("video_driver", "ogles1");
|
||||
settings->setDefault("enable_shaders", "false");
|
||||
|
||||
settings->setDefault("debug_log_level", "error");
|
||||
|
||||
// Set font_path
|
||||
settings->setDefault("mono_font_path", "/system/fonts/DroidSansMono.ttf");
|
||||
settings->setDefault("fallback_font_path", "/system/fonts/DroidSans.ttf");
|
||||
|
||||
// Check screen size
|
||||
double x_inches = (double) porting::getDisplaySize().X /
|
||||
(160 * porting::getDisplayDensity());
|
||||
// Apply settings according to screen size
|
||||
float x_inches = (float) porting::getDisplaySize().X /
|
||||
(160.f * porting::getDisplayDensity());
|
||||
std::string font_size_str_small = std::to_string(TTF_DEFAULT_FONT_SIZE - 1);
|
||||
|
||||
if (x_inches <= 3.7) {
|
||||
|
@ -523,6 +533,15 @@ void set_default_settings(Settings *settings) {
|
|||
|
||||
// iOS Settings
|
||||
#ifdef __IOS__
|
||||
// Switch to olges2 with shaders on the new iOS version
|
||||
if (@available(iOS 13, *)) {
|
||||
settings->setDefault("video_driver", "ogles2");
|
||||
settings->setDefault("enable_shaders", "true");
|
||||
} else {
|
||||
settings->setDefault("video_driver", "ogles1");
|
||||
settings->setDefault("enable_shaders", "false");
|
||||
}
|
||||
|
||||
settings->setDefault("debug_log_level", "none");
|
||||
settings->setDefault("password_save", "true");
|
||||
|
||||
|
|
Loading…
Reference in New Issue