Add a possibility to totally disable particles.
Particles cause a crash on some radeon devices, so people can at least disable it to make the game working. Also tfb causes quite big slowdown on slow devices even if there is no particles displayed, so it can give few more fps.
This commit is contained in:
parent
039a7d0ecc
commit
f96863c421
@ -132,16 +132,6 @@
|
|||||||
|
|
||||||
<spacer height="4" width="10" />
|
<spacer height="4" width="10" />
|
||||||
|
|
||||||
<div layout="horizontal-row" proportion="1" height="fit">
|
|
||||||
<checkbox id="anim_gfx"/>
|
|
||||||
<spacer width="10" height="10"/>
|
|
||||||
<label text="Animated Scenery" I18N="Video settings"/>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
|
|
||||||
<spacer height="4" width="10" />
|
|
||||||
|
|
||||||
<div layout="horizontal-row" width="100%" proportion="1">
|
|
||||||
<div layout="horizontal-row" proportion="1" height="fit">
|
<div layout="horizontal-row" proportion="1" height="fit">
|
||||||
<checkbox id="texture_compression"/>
|
<checkbox id="texture_compression"/>
|
||||||
<spacer width="10" height="10"/>
|
<spacer width="10" height="10"/>
|
||||||
@ -151,6 +141,14 @@
|
|||||||
|
|
||||||
<spacer height="20" width="10" />
|
<spacer height="20" width="10" />
|
||||||
|
|
||||||
|
<div layout="horizontal-row" width="100%" proportion="1">
|
||||||
|
<label text="Animated Scenery" I18N="Video settings" width="40%"/>
|
||||||
|
<spacer width="10" height="10"/>
|
||||||
|
<gauge id="anim_gfx" min_value="0" max_value="2" width="50%" />
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<spacer height="4" width="10" />
|
||||||
|
|
||||||
<div layout="horizontal-row" width="100%" proportion="1">
|
<div layout="horizontal-row" width="100%" proportion="1">
|
||||||
<label text="Animated Characters" I18N="Video settings" width="40%"/>
|
<label text="Animated Characters" I18N="Video settings" width="40%"/>
|
||||||
<spacer width="10" height="10"/>
|
<spacer width="10" height="10"/>
|
||||||
|
@ -73,7 +73,8 @@ ThreeDAnimation::~ThreeDAnimation()
|
|||||||
*/
|
*/
|
||||||
void ThreeDAnimation::update(float dt)
|
void ThreeDAnimation::update(float dt)
|
||||||
{
|
{
|
||||||
//if ( UserConfigParams::m_graphical_effects || m_important_animation )
|
//if (UserConfigParams::m_graphical_effects > 1 ||
|
||||||
|
// (UserConfigParams::m_graphical_effects > 0 && m_important_animation))
|
||||||
{
|
{
|
||||||
Vec3 xyz = m_object->getPosition();
|
Vec3 xyz = m_object->getPosition();
|
||||||
Vec3 scale = m_object->getScale();
|
Vec3 scale = m_object->getScale();
|
||||||
|
@ -727,9 +727,9 @@ namespace UserConfigParams
|
|||||||
#define FBO_DEFAULT true
|
#define FBO_DEFAULT true
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
PARAM_PREFIX BoolUserConfigParam m_graphical_effects
|
PARAM_PREFIX IntUserConfigParam m_graphical_effects
|
||||||
PARAM_DEFAULT( BoolUserConfigParam(true, "anim_gfx",
|
PARAM_DEFAULT( IntUserConfigParam(2, "anim_gfx",
|
||||||
&m_graphics_quality, "Scenery animations") );
|
&m_graphics_quality, "Scenery animations: 0 disabled, 1 only important, 2 enabled") );
|
||||||
|
|
||||||
// This saves the actual user preference.
|
// This saves the actual user preference.
|
||||||
PARAM_PREFIX IntUserConfigParam m_xmas_mode
|
PARAM_PREFIX IntUserConfigParam m_xmas_mode
|
||||||
|
@ -20,6 +20,7 @@
|
|||||||
|
|
||||||
#include "audio/sfx_base.hpp"
|
#include "audio/sfx_base.hpp"
|
||||||
#include "audio/sfx_manager.hpp"
|
#include "audio/sfx_manager.hpp"
|
||||||
|
#include "config/user_config.hpp"
|
||||||
#include "graphics/irr_driver.hpp"
|
#include "graphics/irr_driver.hpp"
|
||||||
#include "graphics/material.hpp"
|
#include "graphics/material.hpp"
|
||||||
#include "graphics/material_manager.hpp"
|
#include "graphics/material_manager.hpp"
|
||||||
@ -44,7 +45,12 @@ Explosion::Explosion(const Vec3& coord, const char* explosion_sound, const char
|
|||||||
#ifndef SERVER_ONLY
|
#ifndef SERVER_ONLY
|
||||||
ParticleKindManager* pkm = ParticleKindManager::get();
|
ParticleKindManager* pkm = ParticleKindManager::get();
|
||||||
ParticleKind* particles = pkm->getParticles(particle_file);
|
ParticleKind* particles = pkm->getParticles(particle_file);
|
||||||
m_emitter = new ParticleEmitter(particles, coord, NULL);
|
m_emitter = NULL;
|
||||||
|
|
||||||
|
if (UserConfigParams::m_graphical_effects > 0)
|
||||||
|
{
|
||||||
|
m_emitter = new ParticleEmitter(particles, coord, NULL);
|
||||||
|
}
|
||||||
#endif
|
#endif
|
||||||
} // Explosion
|
} // Explosion
|
||||||
|
|
||||||
@ -76,7 +82,8 @@ bool Explosion::updateAndDelete(float dt)
|
|||||||
m_remaining_time -= dt;
|
m_remaining_time -= dt;
|
||||||
|
|
||||||
#ifndef SERVER_ONLY
|
#ifndef SERVER_ONLY
|
||||||
if (m_remaining_time < 0.0f && m_remaining_time >= -explosion_time)
|
if (m_remaining_time < 0.0f && m_remaining_time >= -explosion_time &&
|
||||||
|
m_emitter != NULL)
|
||||||
{
|
{
|
||||||
scene::ISceneNode* node = m_emitter->getNode();
|
scene::ISceneNode* node = m_emitter->getNode();
|
||||||
|
|
||||||
@ -106,7 +113,7 @@ bool Explosion::updateAndDelete(float dt)
|
|||||||
#ifndef SERVER_ONLY
|
#ifndef SERVER_ONLY
|
||||||
// if framerate is very low, emit for at least a few frames, in case
|
// if framerate is very low, emit for at least a few frames, in case
|
||||||
// burst time is lower than the time of 1 frame
|
// burst time is lower than the time of 1 frame
|
||||||
if (m_emission_frames > 2)
|
if (m_emission_frames > 2 && m_emitter != NULL)
|
||||||
{
|
{
|
||||||
// Stop the emitter and wait a little while for all particles to have time to fade out
|
// Stop the emitter and wait a little while for all particles to have time to fade out
|
||||||
m_emitter->getNode()->getEmitter()->setMinParticlesPerSecond(0);
|
m_emitter->getNode()->getEmitter()->setMinParticlesPerSecond(0);
|
||||||
|
@ -153,7 +153,7 @@ void Attachment::set(AttachmentType type, float time,
|
|||||||
break;
|
break;
|
||||||
} // switch(type)
|
} // switch(type)
|
||||||
|
|
||||||
if (!UserConfigParams::m_graphical_effects)
|
if (UserConfigParams::m_graphical_effects < 2)
|
||||||
{
|
{
|
||||||
m_node->setAnimationSpeed(0);
|
m_node->setAnimationSpeed(0);
|
||||||
m_node->setCurrentFrame(0);
|
m_node->setCurrentFrame(0);
|
||||||
@ -190,7 +190,7 @@ void Attachment::set(AttachmentType type, float time,
|
|||||||
|
|
||||||
m_time_left = m_time_left * speed_mult;
|
m_time_left = m_time_left * speed_mult;
|
||||||
|
|
||||||
if (UserConfigParams::m_graphical_effects)
|
if (UserConfigParams::m_graphical_effects > 1)
|
||||||
{
|
{
|
||||||
// .blend was created @25 (<10 real, slow computer), make it faster
|
// .blend was created @25 (<10 real, slow computer), make it faster
|
||||||
m_node->setAnimationSpeed(50);
|
m_node->setAnimationSpeed(50);
|
||||||
|
@ -1773,7 +1773,7 @@ void Kart::handleMaterialGFX(float dt)
|
|||||||
// something with the wheels, and the material has not the
|
// something with the wheels, and the material has not the
|
||||||
// below surface property set.
|
// below surface property set.
|
||||||
if (material && isOnGround() && !material->isBelowSurface() &&
|
if (material && isOnGround() && !material->isBelowSurface() &&
|
||||||
!getKartAnimation() && UserConfigParams::m_graphical_effects)
|
!getKartAnimation() && UserConfigParams::m_graphical_effects > 1)
|
||||||
{
|
{
|
||||||
|
|
||||||
// Get the appropriate particle data depending on
|
// Get the appropriate particle data depending on
|
||||||
@ -1825,7 +1825,7 @@ void Kart::handleMaterialGFX(float dt)
|
|||||||
} // for i in all cameras for this kart
|
} // for i in all cameras for this kart
|
||||||
} // camera != final camera
|
} // camera != final camera
|
||||||
|
|
||||||
if (!UserConfigParams::m_graphical_effects)
|
if (UserConfigParams::m_graphical_effects < 2)
|
||||||
return;
|
return;
|
||||||
|
|
||||||
// Use the middle of the contact points of the two rear wheels
|
// Use the middle of the contact points of the two rear wheels
|
||||||
@ -2108,7 +2108,7 @@ void Kart::crashed(const Material *m, const Vec3 &normal)
|
|||||||
{
|
{
|
||||||
#ifndef SERVER_ONLY
|
#ifndef SERVER_ONLY
|
||||||
std::string particles = m->getCrashResetParticles();
|
std::string particles = m->getCrashResetParticles();
|
||||||
if (particles.size() > 0)
|
if (particles.size() > 0 && UserConfigParams::m_graphical_effects > 0)
|
||||||
{
|
{
|
||||||
ParticleKind* kind =
|
ParticleKind* kind =
|
||||||
ParticleKindManager::get()->getParticles(particles);
|
ParticleKindManager::get()->getParticles(particles);
|
||||||
|
@ -46,13 +46,6 @@ KartGFX::KartGFX(const AbstractKart *kart, RaceManager::KartType type, bool is_d
|
|||||||
m_wheel_toggle = 0;
|
m_wheel_toggle = 0;
|
||||||
m_skid_level = 0;
|
m_skid_level = 0;
|
||||||
|
|
||||||
//if(!UserConfigParams::m_graphical_effects)
|
|
||||||
//{
|
|
||||||
// for(unsigned int i=0; i<KGFX_COUNT; i++)
|
|
||||||
// m_all_emitters.push_back(NULL);
|
|
||||||
// return;
|
|
||||||
//}
|
|
||||||
|
|
||||||
const KartModel *km = m_kart->getKartModel();
|
const KartModel *km = m_kart->getKartModel();
|
||||||
const float length = km->getLength();
|
const float length = km->getLength();
|
||||||
|
|
||||||
@ -173,9 +166,10 @@ void KartGFX::addEffect(KartGFXType type, const std::string &file_name,
|
|||||||
const Vec3 &position, bool important)
|
const Vec3 &position, bool important)
|
||||||
{
|
{
|
||||||
#ifndef SERVER_ONLY
|
#ifndef SERVER_ONLY
|
||||||
if ((!UserConfigParams::m_graphical_effects || !CVS->isGLSL()) &&
|
if (((UserConfigParams::m_graphical_effects < 2 || !CVS->isGLSL()) &&
|
||||||
(!important || m_kart->getType() == RaceManager::KT_AI ||
|
(!important || m_kart->getType() == RaceManager::KT_AI ||
|
||||||
m_kart->getType() == RaceManager::KT_SPARE_TIRE))
|
m_kart->getType() == RaceManager::KT_SPARE_TIRE)) ||
|
||||||
|
UserConfigParams::m_graphical_effects < 1)
|
||||||
{
|
{
|
||||||
m_all_emitters.push_back(NULL);
|
m_all_emitters.push_back(NULL);
|
||||||
return;
|
return;
|
||||||
|
@ -805,9 +805,9 @@ int handleCmdLinePreliminary()
|
|||||||
UserConfigParams::m_gi = false;
|
UserConfigParams::m_gi = false;
|
||||||
// animated scenery
|
// animated scenery
|
||||||
if (CommandLine::has("--enable-gfx"))
|
if (CommandLine::has("--enable-gfx"))
|
||||||
UserConfigParams::m_graphical_effects = true;
|
UserConfigParams::m_graphical_effects = 2;
|
||||||
else if (CommandLine::has("--disable-gfx"))
|
else if (CommandLine::has("--disable-gfx"))
|
||||||
UserConfigParams::m_graphical_effects = false;
|
UserConfigParams::m_graphical_effects = 0;
|
||||||
if (CommandLine::has("--enable-motion-blur"))
|
if (CommandLine::has("--enable-motion-blur"))
|
||||||
UserConfigParams::m_motionblur = true;
|
UserConfigParams::m_motionblur = true;
|
||||||
else if (CommandLine::has("--disable-motion-blur"))
|
else if (CommandLine::has("--disable-motion-blur"))
|
||||||
|
@ -1007,7 +1007,7 @@ void World::update(float dt)
|
|||||||
}
|
}
|
||||||
|
|
||||||
PROFILER_PUSH_CPU_MARKER("World::update (weather)", 0x80, 0x7F, 0x00);
|
PROFILER_PUSH_CPU_MARKER("World::update (weather)", 0x80, 0x7F, 0x00);
|
||||||
if (UserConfigParams::m_graphical_effects && Weather::getInstance())
|
if (UserConfigParams::m_graphical_effects > 1 && Weather::getInstance())
|
||||||
{
|
{
|
||||||
Weather::getInstance()->update(dt);
|
Weather::getInstance()->update(dt);
|
||||||
}
|
}
|
||||||
|
@ -58,10 +58,16 @@ CustomVideoSettingsDialog::~CustomVideoSettingsDialog()
|
|||||||
void CustomVideoSettingsDialog::beforeAddingWidgets()
|
void CustomVideoSettingsDialog::beforeAddingWidgets()
|
||||||
{
|
{
|
||||||
#ifndef SERVER_ONLY
|
#ifndef SERVER_ONLY
|
||||||
getWidget<CheckBoxWidget>("anim_gfx")->setState(UserConfigParams::m_graphical_effects);
|
|
||||||
getWidget<CheckBoxWidget>("weather_gfx")->setState(UserConfigParams::m_weather_effects);
|
getWidget<CheckBoxWidget>("weather_gfx")->setState(UserConfigParams::m_weather_effects);
|
||||||
getWidget<CheckBoxWidget>("dof")->setState(UserConfigParams::m_dof);
|
getWidget<CheckBoxWidget>("dof")->setState(UserConfigParams::m_dof);
|
||||||
|
|
||||||
|
SpinnerWidget* anim_gfx = getWidget<SpinnerWidget>("anim_gfx");
|
||||||
|
assert(anim_gfx != NULL);
|
||||||
|
anim_gfx->addLabel(_("Disabled"));
|
||||||
|
anim_gfx->addLabel(_("Important only"));
|
||||||
|
anim_gfx->addLabel(_("Enabled"));
|
||||||
|
anim_gfx->setValue(UserConfigParams::m_graphical_effects);
|
||||||
|
|
||||||
SpinnerWidget* kart_anim = getWidget<SpinnerWidget>("steering_animations");
|
SpinnerWidget* kart_anim = getWidget<SpinnerWidget>("steering_animations");
|
||||||
kart_anim->addLabel(_("Disabled")); // 0
|
kart_anim->addLabel(_("Disabled")); // 0
|
||||||
//I18N: animations setting (only karts with human players are animated)
|
//I18N: animations setting (only karts with human players are animated)
|
||||||
@ -179,7 +185,7 @@ GUIEngine::EventPropagation CustomVideoSettingsDialog::processEvent(const std::s
|
|||||||
getWidget<CheckBoxWidget>("texture_compression")->getState();
|
getWidget<CheckBoxWidget>("texture_compression")->getState();
|
||||||
|
|
||||||
UserConfigParams::m_graphical_effects =
|
UserConfigParams::m_graphical_effects =
|
||||||
getWidget<CheckBoxWidget>("anim_gfx")->getState();
|
getWidget<SpinnerWidget>("anim_gfx")->getValue();
|
||||||
|
|
||||||
UserConfigParams::m_weather_effects =
|
UserConfigParams::m_weather_effects =
|
||||||
getWidget<CheckBoxWidget>("weather_gfx")->getState();
|
getWidget<CheckBoxWidget>("weather_gfx")->getState();
|
||||||
|
@ -54,7 +54,7 @@ void OptionsScreenVideo::initPresets()
|
|||||||
({
|
({
|
||||||
false /* light */, 0 /* shadow */, false /* bloom */, false /* motionblur */,
|
false /* light */, 0 /* shadow */, false /* bloom */, false /* motionblur */,
|
||||||
false /* lightshaft */, false /* glow */, false /* mlaa */, false /* ssao */, false /* weather */,
|
false /* lightshaft */, false /* glow */, false /* mlaa */, false /* ssao */, false /* weather */,
|
||||||
false /* animatedScenery */, 0 /* animatedCharacters */, 0 /* image_quality */,
|
1 /* animatedScenery */, 0 /* animatedCharacters */, 0 /* image_quality */,
|
||||||
false /* depth of field */, false /* global illumination */, true /* degraded IBL */
|
false /* depth of field */, false /* global illumination */, true /* degraded IBL */
|
||||||
});
|
});
|
||||||
|
|
||||||
@ -62,7 +62,7 @@ void OptionsScreenVideo::initPresets()
|
|||||||
({
|
({
|
||||||
false /* light */, 0 /* shadow */, false /* bloom */, false /* motionblur */,
|
false /* light */, 0 /* shadow */, false /* bloom */, false /* motionblur */,
|
||||||
false /* lightshaft */, false /* glow */, false /* mlaa */, false /* ssao */, false /* weather */,
|
false /* lightshaft */, false /* glow */, false /* mlaa */, false /* ssao */, false /* weather */,
|
||||||
true /* animatedScenery */, 1 /* animatedCharacters */, 1 /* image_quality */,
|
2 /* animatedScenery */, 1 /* animatedCharacters */, 1 /* image_quality */,
|
||||||
false /* depth of field */, false /* global illumination */, true /* degraded IBL */
|
false /* depth of field */, false /* global illumination */, true /* degraded IBL */
|
||||||
});
|
});
|
||||||
|
|
||||||
@ -70,7 +70,7 @@ void OptionsScreenVideo::initPresets()
|
|||||||
({
|
({
|
||||||
true /* light */, 0 /* shadow */, false /* bloom */, false /* motionblur */,
|
true /* light */, 0 /* shadow */, false /* bloom */, false /* motionblur */,
|
||||||
false /* lightshaft */, false /* glow */, false /* mlaa */, false /* ssao */, true /* weather */,
|
false /* lightshaft */, false /* glow */, false /* mlaa */, false /* ssao */, true /* weather */,
|
||||||
true /* animatedScenery */, 1 /* animatedCharacters */, 2 /* image_quality */,
|
2 /* animatedScenery */, 1 /* animatedCharacters */, 2 /* image_quality */,
|
||||||
false /* depth of field */, false /* global illumination */, true /* degraded IBL */
|
false /* depth of field */, false /* global illumination */, true /* degraded IBL */
|
||||||
});
|
});
|
||||||
|
|
||||||
@ -78,7 +78,7 @@ void OptionsScreenVideo::initPresets()
|
|||||||
({
|
({
|
||||||
true /* light */, 0 /* shadow */, false /* bloom */, true /* motionblur */,
|
true /* light */, 0 /* shadow */, false /* bloom */, true /* motionblur */,
|
||||||
true /* lightshaft */, true /* glow */, true /* mlaa */, false /* ssao */, true /* weather */,
|
true /* lightshaft */, true /* glow */, true /* mlaa */, false /* ssao */, true /* weather */,
|
||||||
true /* animatedScenery */, 1 /* animatedCharacters */, 2 /* image_quality */,
|
2 /* animatedScenery */, 1 /* animatedCharacters */, 2 /* image_quality */,
|
||||||
false /* depth of field */, false /* global illumination */, false /* degraded IBL */
|
false /* depth of field */, false /* global illumination */, false /* degraded IBL */
|
||||||
});
|
});
|
||||||
|
|
||||||
@ -86,7 +86,7 @@ void OptionsScreenVideo::initPresets()
|
|||||||
({
|
({
|
||||||
true /* light */, 512 /* shadow */, true /* bloom */, true /* motionblur */,
|
true /* light */, 512 /* shadow */, true /* bloom */, true /* motionblur */,
|
||||||
true /* lightshaft */, true /* glow */, true /* mlaa */, true /* ssao */, true /* weather */,
|
true /* lightshaft */, true /* glow */, true /* mlaa */, true /* ssao */, true /* weather */,
|
||||||
true /* animatedScenery */,
|
2 /* animatedScenery */,
|
||||||
#ifndef SERVER_ONLY
|
#ifndef SERVER_ONLY
|
||||||
(SharedGPUObjects::getMaxMat4Size() > 512 || !CVS->supportsHardwareSkinning() ? 2 : 1),
|
(SharedGPUObjects::getMaxMat4Size() > 512 || !CVS->supportsHardwareSkinning() ? 2 : 1),
|
||||||
#else
|
#else
|
||||||
@ -100,7 +100,7 @@ void OptionsScreenVideo::initPresets()
|
|||||||
({
|
({
|
||||||
true /* light */, 1024 /* shadow */, true /* bloom */, true /* motionblur */,
|
true /* light */, 1024 /* shadow */, true /* bloom */, true /* motionblur */,
|
||||||
true /* lightshaft */, true /* glow */, true /* mlaa */, true /* ssao */, true /* weather */,
|
true /* lightshaft */, true /* glow */, true /* mlaa */, true /* ssao */, true /* weather */,
|
||||||
true /* animatedScenery */,
|
2 /* animatedScenery */,
|
||||||
#ifndef SERVER_ONLY
|
#ifndef SERVER_ONLY
|
||||||
(SharedGPUObjects::getMaxMat4Size() > 512 || !CVS->supportsHardwareSkinning() ? 2 : 1),
|
(SharedGPUObjects::getMaxMat4Size() > 512 || !CVS->supportsHardwareSkinning() ? 2 : 1),
|
||||||
#else
|
#else
|
||||||
@ -458,6 +458,8 @@ void OptionsScreenVideo::updateTooltip()
|
|||||||
const core::stringw me = _LTR("Me Only");
|
const core::stringw me = _LTR("Me Only");
|
||||||
//I18N: if no kart animations are enabled
|
//I18N: if no kart animations are enabled
|
||||||
const core::stringw none = _LTR("None");
|
const core::stringw none = _LTR("None");
|
||||||
|
//I18N: if only important animated scenery is enabled
|
||||||
|
const core::stringw important_only = _LTR("Important only");
|
||||||
|
|
||||||
//I18N: in the graphical options tooltip;
|
//I18N: in the graphical options tooltip;
|
||||||
// indicates the rendered image quality is very low
|
// indicates the rendered image quality is very low
|
||||||
@ -477,7 +479,10 @@ void OptionsScreenVideo::updateTooltip()
|
|||||||
// UserConfigParams::m_pixel_shaders ? enabled : disabled);
|
// UserConfigParams::m_pixel_shaders ? enabled : disabled);
|
||||||
//I18N: in graphical options
|
//I18N: in graphical options
|
||||||
tooltip = _("Animated Scenery: %s",
|
tooltip = _("Animated Scenery: %s",
|
||||||
UserConfigParams::m_graphical_effects ? enabled : disabled);
|
UserConfigParams::m_graphical_effects == 2 ? enabled :
|
||||||
|
UserConfigParams::m_graphical_effects == 1 ? important_only :
|
||||||
|
disabled);
|
||||||
|
|
||||||
//I18N: in graphical options
|
//I18N: in graphical options
|
||||||
tooltip = tooltip + L"\n" + _("Weather Effects: %s",
|
tooltip = tooltip + L"\n" + _("Weather Effects: %s",
|
||||||
UserConfigParams::m_weather_effects ? enabled : disabled);
|
UserConfigParams::m_weather_effects ? enabled : disabled);
|
||||||
|
@ -36,7 +36,7 @@ struct GFXPreset
|
|||||||
bool mlaa;
|
bool mlaa;
|
||||||
bool ssao;
|
bool ssao;
|
||||||
bool weather;
|
bool weather;
|
||||||
bool animatedScenery;
|
int animatedScenery;
|
||||||
int animatedCharacters;
|
int animatedCharacters;
|
||||||
int image_quality;
|
int image_quality;
|
||||||
/** Depth of field */
|
/** Depth of field */
|
||||||
|
@ -76,7 +76,7 @@ LODNode* ModelDefinitionLoader::instanciateAsLOD(const XMLNode* node, scene::ISc
|
|||||||
for (unsigned int m=0; m<group.size(); m++)
|
for (unsigned int m=0; m<group.size(); m++)
|
||||||
{
|
{
|
||||||
if (group[m].m_skeletal_animation &&
|
if (group[m].m_skeletal_animation &&
|
||||||
(UserConfigParams::m_graphical_effects ||
|
(UserConfigParams::m_graphical_effects > 1 ||
|
||||||
World::getWorld()->getIdent() == IDENT_CUTSCENE))
|
World::getWorld()->getIdent() == IDENT_CUTSCENE))
|
||||||
{
|
{
|
||||||
scene::IAnimatedMesh* a_mesh = irr_driver->getAnimatedMesh(group[m].m_model_file);
|
scene::IAnimatedMesh* a_mesh = irr_driver->getAnimatedMesh(group[m].m_model_file);
|
||||||
|
@ -1522,7 +1522,7 @@ void Track::createWater(const XMLNode &node)
|
|||||||
*/
|
*/
|
||||||
scene::ISceneNode* scene_node = NULL;
|
scene::ISceneNode* scene_node = NULL;
|
||||||
/*
|
/*
|
||||||
if (UserConfigParams::m_graphical_effects)
|
if (UserConfigParams::m_graphical_effects > 1)
|
||||||
{
|
{
|
||||||
scene::IMesh *welded;
|
scene::IMesh *welded;
|
||||||
scene_node = irr_driver->addWaterNode(mesh, &welded,
|
scene_node = irr_driver->addWaterNode(mesh, &welded,
|
||||||
@ -2003,7 +2003,7 @@ void Track::loadObjects(const XMLNode* root, const std::string& path, ModelDefin
|
|||||||
}
|
}
|
||||||
else if (name == "particle-emitter")
|
else if (name == "particle-emitter")
|
||||||
{
|
{
|
||||||
if (UserConfigParams::m_graphical_effects)
|
if (UserConfigParams::m_graphical_effects > 1)
|
||||||
{
|
{
|
||||||
m_track_object_manager->add(*node, parent, model_def_loader, parent_library);
|
m_track_object_manager->add(*node, parent, model_def_loader, parent_library);
|
||||||
}
|
}
|
||||||
|
@ -401,7 +401,7 @@ TrackObjectPresentationMesh::TrackObjectPresentationMesh(
|
|||||||
m_is_in_skybox = true;
|
m_is_in_skybox = true;
|
||||||
}
|
}
|
||||||
|
|
||||||
bool animated = skeletal_animation && (UserConfigParams::m_graphical_effects ||
|
bool animated = skeletal_animation && (UserConfigParams::m_graphical_effects > 1 ||
|
||||||
World::getWorld()->getIdent() == IDENT_CUTSCENE);
|
World::getWorld()->getIdent() == IDENT_CUTSCENE);
|
||||||
bool displacing = false;
|
bool displacing = false;
|
||||||
xml_node.get("displacing", &displacing);
|
xml_node.get("displacing", &displacing);
|
||||||
@ -467,7 +467,7 @@ TrackObjectPresentationMesh::TrackObjectPresentationMesh(
|
|||||||
m_node = NULL;
|
m_node = NULL;
|
||||||
m_is_in_skybox = false;
|
m_is_in_skybox = false;
|
||||||
m_render_info = NULL;
|
m_render_info = NULL;
|
||||||
bool animated = (UserConfigParams::m_graphical_effects ||
|
bool animated = (UserConfigParams::m_graphical_effects > 1 ||
|
||||||
World::getWorld()->getIdent() == IDENT_CUTSCENE);
|
World::getWorld()->getIdent() == IDENT_CUTSCENE);
|
||||||
|
|
||||||
m_model_file = model_file;
|
m_model_file = model_file;
|
||||||
@ -512,7 +512,7 @@ void TrackObjectPresentationMesh::init(const XMLNode* xml_node,
|
|||||||
if(xml_node)
|
if(xml_node)
|
||||||
xml_node->get("skeletal-animation", &skeletal_animation);
|
xml_node->get("skeletal-animation", &skeletal_animation);
|
||||||
|
|
||||||
bool animated = skeletal_animation && (UserConfigParams::m_graphical_effects ||
|
bool animated = skeletal_animation && (UserConfigParams::m_graphical_effects > 1 ||
|
||||||
World::getWorld()->getIdent() == IDENT_CUTSCENE);
|
World::getWorld()->getIdent() == IDENT_CUTSCENE);
|
||||||
bool displacing = false;
|
bool displacing = false;
|
||||||
std::string interaction;
|
std::string interaction;
|
||||||
|
Loading…
Reference in New Issue
Block a user