//---------------------------------------------------------------------------- Object *ResourceManager::_LoadObject (const std::string &filename) { Object *obj = 0; string::size_type pos = filename.find("."); if (pos == string::npos) return 0; std::string outPath; std::string outBaseName; std::string outExtention; StringHelp::SplitFullFilename(filename, outPath, outBaseName, outExtention); char *buffer = 0; int bufferSize = 0; if (GetBuffer(filename, bufferSize, buffer)) { if ("png"==outExtention || "PNG"==outExtention) { obj = LoadTexFormOtherImagefile(outExtention, bufferSize, buffer); } else { InStream inStream; inStream.Load1(bufferSize, buffer); obj = inStream.GetObjectAt(0); } delete1(buffer); bufferSize = 0; } if (obj) { obj->SetResourcePath(filename); } return obj; }