public WorldModel acquireModelInstance(string filename, uint flags = 0) { lock (LoadedModelFilesLock) { filename = filename.TrimEnd('\0'); var model = iLoadedModelFiles.LookupByKey(filename); if (model == null) { WorldModel worldmodel = new WorldModel(); if (!worldmodel.readFile(VMapPath + filename)) { Log.outError(LogFilter.Server, "VMapManager: could not load '{0}'", filename); return(null); } Log.outDebug(LogFilter.Maps, "VMapManager: loading file '{0}'", filename); worldmodel.Flags = flags; model = new ManagedModel(); model.setModel(worldmodel); iLoadedModelFiles.Add(filename, model); } model.incRefCount(); return(model.getModel()); } }
public WorldModel acquireModelInstance(string filename) { var model = iLoadedModelFiles.LookupByKey(filename); if (model == null) { WorldModel worldmodel = new WorldModel(); if (!worldmodel.readFile(VMapPath + filename + ".vmo")) { Log.outError(LogFilter.Server, "VMapManager: could not load '{0}.vmo'", filename); return(null); } Log.outDebug(LogFilter.Maps, "VMapManager: loading file '{0}'", filename); iLoadedModelFiles.Add(filename, new ManagedModel()); model = iLoadedModelFiles.LookupByKey(filename); model.setModel(worldmodel); } model.incRefCount(); return(model.getModel()); }