private void FillTexture(Model model) { foreach (ModelTexture tex in model.Textures) { if (tex.Name != "MissingT") { JsonTexture jTex = new JsonTexture(); jTex.Name = tex.Name; jTex.Path = tex.GamePath; if (tex.IsReference) { jTex.Path = tex.Reference; } Textures.Add(jTex); } } }
private int ParseTextures() { int dataEnd = _fileText.IndexOf("}", _readIndex); string value = _fileText.Substring(_readIndex); bool done = false; while (!done) { int nameIndex = value.IndexOf("\"") + 1; int nameLenght = value.IndexOf("\"", nameIndex) - nameIndex; string name = value.Substring(nameIndex, nameLenght); value = value.Substring(value.IndexOf(":") + 1); int pathIndex = value.IndexOf("\"") + 1; int pathLenght = value.IndexOf("\"", pathIndex) - pathIndex; string path = value.Substring(pathIndex, pathLenght); JsonTexture tex = new JsonTexture(); tex.Name = name; tex.Path = path; _jsonModel.Textures.Add(tex); int nextComma = value.IndexOf(","); int nextCloseBrack = value.IndexOf("}"); if (nextComma < 0 || nextComma > nextCloseBrack) { done = true; } else { value = value.Substring(nextComma + 1); } } _readIndex = dataEnd + 1; return(1); }