Ejemplo n.º 1
0
 private static void AddDebugSuspensionPoints(CarData.SuspensionsPack pack, CarData.SuspensionBase suspension, InputLayouts.VerticePC[] result,
                                              ref int index)
 {
     for (var i = 0; i < suspension.DebugLines.Length; i++)
     {
         var line = suspension.DebugLines[i];
         result[index++] = new InputLayouts.VerticePC(pack.TranslateRelativeToCarModel(suspension, line.Start), line.Color.ToVector4());
         result[index++] = new InputLayouts.VerticePC(pack.TranslateRelativeToCarModel(suspension, line.End), line.Color.ToVector4());
     }
 }
Ejemplo n.º 2
0
        private static InputLayouts.VerticePC[] GetDebugSuspensionVertices(CarData.SuspensionsPack pack)
        {
            CarData.IndependentSuspensionsGroup ifg, irg;
            CarData.DependentSuspensionGroup    dfg, drg;

            var index  = 0;
            var result = new InputLayouts.VerticePC[(CountDebugSuspensionPoints(pack.Front, out ifg, out dfg) +
                                                     CountDebugSuspensionPoints(pack.Rear, out irg, out drg)) * 2];

            AddDebugSuspensionPoints(pack, result, ifg, dfg, ref index);
            AddDebugSuspensionPoints(pack, result, irg, drg, ref index);
            return(result);
        }