protected void CreateBoundingBox(List <Vector3> vertexList, float multiplier = 1f) { vertices = new Vector3[vertexList.Count]; for (int i = 0; i < vertexList.Count; i++) { vertices[i] = (Vector3)Vector3.Transform(vertexList[i] * multiplier, world); } boundingBox = BoundingBox.FromPoints(vertices); if (renderingDictionary.ContainsKey(DynaRingControl.RingModelAssetID)) { if (renderingDictionary[DynaRingControl.RingModelAssetID] is AssetMINF MINF) { if (MINF.HasRenderWareModelFile()) { triangles = renderingDictionary[DynaRingControl.RingModelAssetID].GetRenderWareModelFile().triangleList.ToArray(); } else { triangles = null; } } else { triangles = renderingDictionary[DynaRingControl.RingModelAssetID].GetRenderWareModelFile().triangleList.ToArray(); } } else { triangles = null; } }
protected override void CreateBoundingBox() { if (AssetPICK.pickEntries.ContainsKey(_pickEntryID) && renderingDictionary.ContainsKey(AssetPICK.pickEntries[_pickEntryID]) && renderingDictionary[AssetPICK.pickEntries[_pickEntryID]].HasRenderWareModelFile() && renderingDictionary[AssetPICK.pickEntries[_pickEntryID]].GetRenderWareModelFile() != null) { List <Vector3> vertexList = renderingDictionary[AssetPICK.pickEntries[_pickEntryID]].GetRenderWareModelFile().vertexListG; vertices = new Vector3[vertexList.Count]; for (int i = 0; i < vertexList.Count; i++) { vertices[i] = (Vector3)Vector3.Transform(vertexList[i], world); } boundingBox = BoundingBox.FromPoints(vertices); if (renderingDictionary.ContainsKey(AssetPICK.pickEntries[_pickEntryID])) { if (renderingDictionary[AssetPICK.pickEntries[_pickEntryID]] is AssetMINF MINF) { if (MINF.HasRenderWareModelFile()) { triangles = renderingDictionary[AssetPICK.pickEntries[_pickEntryID]].GetRenderWareModelFile().triangleList.ToArray(); } else { triangles = null; } } else { triangles = renderingDictionary[AssetPICK.pickEntries[_pickEntryID]].GetRenderWareModelFile().triangleList.ToArray(); } } else { triangles = null; } } else { vertices = new Vector3[SharpRenderer.cubeVertices.Count]; for (int i = 0; i < SharpRenderer.cubeVertices.Count; i++) { vertices[i] = (Vector3)Vector3.Transform(SharpRenderer.cubeVertices[i] * 0.5f, world); } boundingBox = BoundingBox.FromPoints(vertices); } }