Original Post
error C2440: '=' : cannot convert from 'render::MaterialManger *' to 'render::MaterialManager *'
Types pointed to are unrelated; conversion requires reinterpret_cast, C-style cast or function-style cast i don't get it.. wtf?! material.hpp
#ifndef VE_MATERIAL_HPP
#define VE_MATERIAL_HPP
namespace render
{
class ShaderGpu;
class ShaderCpu;
// basic material interface class
class IMaterial : public core::IUnknown
{
// code removed
};
//--------------------------------------------------------------
// material manager class, not singleton
class MaterialManger : public core::IUnknown
{
public:
virtual int createMaterial( std::string materialFile );
virtual int rebuildMaterial( std::string materialFile, int replaceID );
virtual void loadDirectory( std::string dir );
virtual IMaterial* getMaterial( int id );
virtual ~MaterialManger();
MaterialManger();
protected:
std::vector< IMaterial* > materials;
};
};
#include "engine.hpp"
#include "material.hpp"
namespace render
{
//---------------------------------------------------------------
MaterialManger::MaterialManger()
: IUnknown( "MaterialManager" )
{
}
//---------------------------------------------------------------
MaterialManger::~MaterialManger()
{
}
//// SOURCE REMOVED FROM HERE
}; //namespace
if( matManager == NULL )
matManager = new MaterialManger(); //<---- VC 7.1 2003 no SP, winxp sp2 [Edited by - silvermace on November 27, 2004 6:28:37 AM]