public int GetGmuIdFromAppId(int appId) { using (ILogMethod method = Log.LogMethod(this.DYN_MODULE_NAME, "GetBufferIdFromEntityId")) { int result = default(int); try { if (_parserMappings.ContainsKey(appId)) { result = _parserMappings[appId]; } } catch (Exception ex) { method.Exception(ex); } return(result); } }
public virtual Mesh ToMesh() { Mesh mesh = new Mesh(); mesh.name = Name; List <Vector3> pVertices = new List <Vector3>(); List <Vector3> pNormals = new List <Vector3>(); List <Vector2> pUVs = new List <Vector2>(); List <List <int> > pIndices = new List <List <int> >(); IDictionary <int, int> map = new IntDictionary <int>(); HashSet <string> materials = new HashSet <string>(); foreach (KeyValuePair <string, List <OBJFace> > facesPerMat in Faces) { string mat = facesPerMat.Key; List <OBJFace> faces = facesPerMat.Value; if (faces.Count == 0) { continue; } List <int> indices = new List <int>(); for (int fi = 0; fi < faces.Count; fi++) { OBJFace face = faces[fi]; indices.Add(face[0]); indices.Add(face[1]); indices.Add(face[2]); } if (!materials.Contains(mat)) { materials.Add(mat); mesh.subMeshCount++; } for (int ii = 0; ii < indices.Count; ii++) { int index = indices[ii]; if (map.ContainsKey(index)) { indices[ii] = map[index]; } else { indices[ii] = map[index] = pVertices.Count; pVertices.Add(UVertices[index]); pNormals.Add(UNormals[index]); pUVs.Add(UUVs[index]); } } pIndices.Add(indices); } mesh.SetVertices(pVertices); mesh.SetNormals(pNormals); mesh.SetUVs(0, pUVs); for (int i = 0; i < pIndices.Count; i++) { mesh.SetTriangles(pIndices[i], i); } if (!ContainsNormals) { mesh.RecalculateNormals(); } mesh.RecalculateBounds(); mesh.Optimize(); return(mesh); }
internal bool ContainsKey(int key) { return(_ReplaceFieldValueIntToDocId.ContainsKey(key)); }