Mobile: use extended view range instead full (#230)
parent
91b4202e56
commit
986eb94494
|
@ -489,13 +489,11 @@ void Camera::updateViewingRange()
|
||||||
{
|
{
|
||||||
f32 viewing_range = g_settings->getFloat("viewing_range");
|
f32 viewing_range = g_settings->getFloat("viewing_range");
|
||||||
f32 near_plane = g_settings->getFloat("near_plane");
|
f32 near_plane = g_settings->getFloat("near_plane");
|
||||||
|
if (m_draw_control.extended_range)
|
||||||
|
viewing_range *= 3;
|
||||||
m_draw_control.wanted_range = viewing_range;
|
m_draw_control.wanted_range = viewing_range;
|
||||||
m_cameranode->setNearValue(rangelim(near_plane, 0.0f, 0.5f) * BS);
|
m_cameranode->setNearValue(rangelim(near_plane, 0.0f, 0.5f) * BS);
|
||||||
if (m_draw_control.range_all) {
|
m_cameranode->setFarValue(m_draw_control.range_all ? 100000.0 : std::max(2000.0f, viewing_range) * BS);
|
||||||
m_cameranode->setFarValue(100000.0);
|
|
||||||
return;
|
|
||||||
}
|
|
||||||
m_cameranode->setFarValue((viewing_range < 2000) ? 2000 * BS : viewing_range * BS);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
void Camera::setDigging(s32 button)
|
void Camera::setDigging(s32 button)
|
||||||
|
|
|
@ -40,6 +40,7 @@ struct MapDrawControl
|
||||||
}
|
}
|
||||||
// Overrides limits by drawing everything
|
// Overrides limits by drawing everything
|
||||||
bool range_all;
|
bool range_all;
|
||||||
|
bool extended_range = false;
|
||||||
// Wanted drawing range
|
// Wanted drawing range
|
||||||
float wanted_range;
|
float wanted_range;
|
||||||
// Maximum number of blocks to draw
|
// Maximum number of blocks to draw
|
||||||
|
|
20
src/game.cpp
20
src/game.cpp
|
@ -1291,6 +1291,7 @@ protected:
|
||||||
|
|
||||||
void increaseViewRange();
|
void increaseViewRange();
|
||||||
void decreaseViewRange();
|
void decreaseViewRange();
|
||||||
|
void toggleExtendedViewRange();
|
||||||
void toggleFullViewRange();
|
void toggleFullViewRange();
|
||||||
|
|
||||||
void updateCameraDirection(CameraOrientation *cam, float dtime);
|
void updateCameraDirection(CameraOrientation *cam, float dtime);
|
||||||
|
@ -2624,7 +2625,11 @@ void Game::processKeyInput()
|
||||||
} else if (wasKeyDown(KeyType::DECREASE_VIEWING_RANGE)) {
|
} else if (wasKeyDown(KeyType::DECREASE_VIEWING_RANGE)) {
|
||||||
decreaseViewRange();
|
decreaseViewRange();
|
||||||
} else if (wasKeyDown(KeyType::RANGESELECT)) {
|
} else if (wasKeyDown(KeyType::RANGESELECT)) {
|
||||||
|
#if defined(__ANDROID__) || defined(__IOS__)
|
||||||
|
toggleExtendedViewRange();
|
||||||
|
#else
|
||||||
toggleFullViewRange();
|
toggleFullViewRange();
|
||||||
|
#endif
|
||||||
} else if (wasKeyDown(KeyType::QUICKTUNE_NEXT)) {
|
} else if (wasKeyDown(KeyType::QUICKTUNE_NEXT)) {
|
||||||
quicktune->next();
|
quicktune->next();
|
||||||
} else if (wasKeyDown(KeyType::QUICKTUNE_PREV)) {
|
} else if (wasKeyDown(KeyType::QUICKTUNE_PREV)) {
|
||||||
|
@ -3028,19 +3033,26 @@ void Game::decreaseViewRange()
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
void Game::toggleFullViewRange()
|
void Game::toggleExtendedViewRange()
|
||||||
{
|
{
|
||||||
#if defined(__ANDROID__) || defined(__IOS__)
|
|
||||||
static const wchar_t *msg[] = {
|
static const wchar_t *msg[] = {
|
||||||
L"Disabled far viewing range",
|
L"Disabled far viewing range",
|
||||||
L"Enabled far viewing range"
|
L"Enabled far viewing range"
|
||||||
};
|
};
|
||||||
#else
|
|
||||||
|
draw_control->extended_range = !draw_control->extended_range;
|
||||||
|
infostream << msg[draw_control->extended_range] << std::endl;
|
||||||
|
m_statustext = msg[draw_control->extended_range];
|
||||||
|
runData.statustext_time = 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
void Game::toggleFullViewRange()
|
||||||
|
{
|
||||||
static const wchar_t *msg[] = {
|
static const wchar_t *msg[] = {
|
||||||
L"Normal view range",
|
L"Normal view range",
|
||||||
L"Infinite view range"
|
L"Infinite view range"
|
||||||
};
|
};
|
||||||
#endif
|
|
||||||
|
|
||||||
draw_control->range_all = !draw_control->range_all;
|
draw_control->range_all = !draw_control->range_all;
|
||||||
infostream << msg[draw_control->range_all] << std::endl;
|
infostream << msg[draw_control->range_all] << std::endl;
|
||||||
|
|
Loading…
Reference in New Issue