Preload power up textures
This commit is contained in:
parent
e8db943dc2
commit
a83ef4ae2e
@ -47,6 +47,7 @@
|
|||||||
#include "utils/log.hpp"
|
#include "utils/log.hpp"
|
||||||
#include "utils/profiler.hpp"
|
#include "utils/profiler.hpp"
|
||||||
#include "stkscenemanager.hpp"
|
#include "stkscenemanager.hpp"
|
||||||
|
#include "items/powerup_manager.hpp"
|
||||||
#include "../../lib/irrlicht/source/Irrlicht/CSceneManager.h"
|
#include "../../lib/irrlicht/source/Irrlicht/CSceneManager.h"
|
||||||
#include "../../lib/irrlicht/source/Irrlicht/os.h"
|
#include "../../lib/irrlicht/source/Irrlicht/os.h"
|
||||||
|
|
||||||
@ -62,6 +63,27 @@ void IrrDriver::renderGLSL(float dt)
|
|||||||
|
|
||||||
Track *track = world->getTrack();
|
Track *track = world->getTrack();
|
||||||
|
|
||||||
|
for (unsigned i = 0; i < PowerupManager::POWERUP_MAX; i++)
|
||||||
|
{
|
||||||
|
scene::IMesh *mesh = powerup_manager->m_all_meshes[i];
|
||||||
|
if (!mesh)
|
||||||
|
continue;
|
||||||
|
for (unsigned j = 0; j < mesh->getMeshBufferCount(); j++)
|
||||||
|
{
|
||||||
|
scene::IMeshBuffer *mb = mesh->getMeshBuffer(j);
|
||||||
|
if (!mb)
|
||||||
|
continue;
|
||||||
|
for (unsigned k = 0; k < 4; k++)
|
||||||
|
{
|
||||||
|
video::ITexture *tex = mb->getMaterial().getTexture(k);
|
||||||
|
if (!tex)
|
||||||
|
continue;
|
||||||
|
compressTexture(tex, true);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
// Overrides
|
// Overrides
|
||||||
video::SOverrideMaterial &overridemat = m_video_driver->getOverrideMaterial();
|
video::SOverrideMaterial &overridemat = m_video_driver->getOverrideMaterial();
|
||||||
overridemat.EnablePasses = scene::ESNRP_SOLID | scene::ESNRP_TRANSPARENT;
|
overridemat.EnablePasses = scene::ESNRP_SOLID | scene::ESNRP_TRANSPARENT;
|
||||||
|
@ -115,9 +115,11 @@ private:
|
|||||||
/** Last time the bouncing ball was collected */
|
/** Last time the bouncing ball was collected */
|
||||||
float m_rubber_ball_collect_time;
|
float m_rubber_ball_collect_time;
|
||||||
|
|
||||||
|
public:
|
||||||
/** The mesh for each model (if the powerup has a model), e.g. a switch
|
/** The mesh for each model (if the powerup has a model), e.g. a switch
|
||||||
has none. */
|
has none. */
|
||||||
irr::scene::IMesh *m_all_meshes[POWERUP_MAX];
|
irr::scene::IMesh *m_all_meshes[POWERUP_MAX];
|
||||||
|
private:
|
||||||
|
|
||||||
/** Size of the corresponding mesh. */
|
/** Size of the corresponding mesh. */
|
||||||
btVector3 m_all_extends[POWERUP_MAX];
|
btVector3 m_all_extends[POWERUP_MAX];
|
||||||
|
Loading…
Reference in New Issue
Block a user