- turned off the interpolation cache which was taking too much memory. Please test this to see if performance is affected, this should REALLY help with memory usage.
This commit is contained in:
parent
e1054d6e07
commit
f681b309a9
|
@ -25,6 +25,8 @@
|
|||
#include "game_constants.h"
|
||||
#include <wx/stdpaths.h>
|
||||
#include <platform_util.h>
|
||||
//#include "interpolation.h"
|
||||
|
||||
#ifndef WIN32
|
||||
#include <errno.h>
|
||||
#endif
|
||||
|
@ -62,6 +64,7 @@ const string g3dviewerVersionString= "v1.3.6";
|
|||
string fileFormat = "png";
|
||||
|
||||
namespace Glest { namespace Game {
|
||||
|
||||
string getGameReadWritePath(string lookupKey) {
|
||||
string path = "";
|
||||
if(path == "" && getenv("GLESTHOME") != NULL) {
|
||||
|
@ -2035,6 +2038,8 @@ END_EVENT_TABLE()
|
|||
// ===============================================
|
||||
|
||||
bool App::OnInit() {
|
||||
//InterpolationData::setEnableCache(false);
|
||||
|
||||
SystemFlags::VERBOSE_MODE_ENABLED = false;
|
||||
//Renderer::windowW = 1920;
|
||||
//Renderer::windowH = 1440;
|
||||
|
|
|
@ -35,12 +35,14 @@ private:
|
|||
|
||||
std::map<float, std::map<bool, Vec3f *> > cacheVertices;
|
||||
std::map<float, std::map<bool, Vec3f *> > cacheNormals;
|
||||
bool enableCache;
|
||||
static bool enableCache;
|
||||
|
||||
public:
|
||||
InterpolationData(const Mesh *mesh);
|
||||
~InterpolationData();
|
||||
|
||||
static void setEnableCache(bool enabled) { enableCache = enabled; }
|
||||
|
||||
const Vec3f *getVertices() const {return vertices==NULL? mesh->getVertices(): vertices;}
|
||||
const Vec3f *getNormals() const {return normals==NULL? mesh->getNormals(): normals;}
|
||||
|
||||
|
|
|
@ -30,6 +30,8 @@ namespace Shared{ namespace Graphics{
|
|||
// class InterpolationData
|
||||
// =====================================================
|
||||
|
||||
bool InterpolationData::enableCache = false;
|
||||
|
||||
InterpolationData::InterpolationData(const Mesh *mesh) {
|
||||
assert(GlobalStaticFlags::getIsNonGraphicalModeEnabled() == false);
|
||||
|
||||
|
@ -43,8 +45,6 @@ InterpolationData::InterpolationData(const Mesh *mesh) {
|
|||
normals= new Vec3f[mesh->getVertexCount()];
|
||||
}
|
||||
|
||||
enableCache = true;
|
||||
|
||||
cacheVertices.clear();
|
||||
cacheNormals.clear();
|
||||
}
|
||||
|
|
|
@ -117,6 +117,9 @@ void Mesh::end() {
|
|||
// ========================== shadows & interpolation =========================
|
||||
|
||||
void Mesh::buildInterpolationData(){
|
||||
if(interpolationData != NULL) {
|
||||
printf("**WARNING possible memory leak [Mesh::buildInterpolationData()]\n");
|
||||
}
|
||||
interpolationData= new InterpolationData(this);
|
||||
}
|
||||
|
||||
|
|
Loading…
Reference in New Issue