// Параметризованный конструктор класса public Car(Device device) { // Создать и загрузить Mesh-объект "Автомобиль", // используя ранее разработанный метод класса DodgerGame carMesh = DodgerGame.LoadMesh(device, @".\car.x", ref carMaterials, ref carTextures); // Мы должны вычислить сферу ограничения для нашего автомобиля VertexBuffer vb = carMesh.VertexBuffer; try { // Замкнуть вершинный буфер перед вычислением GraphicsStream stm = vb.Lock(0, 0, LockFlags.None); Vector3 center; // Мы не будем использовать центр, //но ссылка на него требуется float radius = Geometry.ComputeBoundingSphere(stm, carMesh.NumberVertices, carMesh.VertexFormat, out center); // Вычислим диаметр автомобиля carDiameter = (radius * 2) * SCALE; } finally { // Независимо от результата попытки // отмыкаем и устанавливаем вершинный буфер vb.Unlock(); vb.Dispose(); } }
static void Main() { using (DodgerGame frm = new DodgerGame()) { frm.InitializeGraphics(); System.Windows.Forms.Application.Run(frm); // Запись результатов в системный реестр frm.SaveHighScores(); } }