Компьютерная графика, мультимедиа и игры на Visual C#


         

во время изменения размеров формы


        Color.White, 1.0f, 0);
    //Начинаем сцену:
    myDevice.BeginScene();
    //Задаем матрицы (world, view, projection):
    SetupMatrices();
    //Устанавливаем нашу текстуру:   
    myDevice.SetTexture(0, myTexture);
    myDevice.TextureState[0].ColorOperation =
        TextureOperation.Modulate;
    myDevice.TextureState[0].ColorArgument1 =
        TextureArgument.TextureColor;
    myDevice.TextureState[0].ColorArgument2 =
        TextureArgument.Diffuse;
    myDevice.TextureState[0].AlphaOperation =
        TextureOperation.Disable;
    //Рисуем фигуру:
    myDevice.SetStreamSource(0, myVertexBuffer, 0);
    myDevice.VertexFormat =
        CustomVertex.PositionNormalTextured.Format;
    myDevice.DrawPrimitives(
        PrimitiveType.TriangleStrip, 0, (4 * 25) - 2);
    //Заканчиваем сцену:
    myDevice.EndScene();
    //Обновляем экран:
    myDevice.Present();
}
//Останавливаем вращение фигуры
// во время изменения размеров формы Form1:
protected override void OnResize(System.EventArgs e)
{
    myPause = ((this.WindowState ==
        FormWindowState.Minimized) || !this.Visible);
}
//Закрываем форму Form1 после нажатия клавиши Esc:
protected override void OnKeyPress(KeyPressEventArgs e)
{
    if ((int)(byte)e.KeyChar == (int)Keys.Escape)
        this.Close();
}
Теперь в файле Form1.cs (или Program.cs) находим главный метод Main, комментируем весь имеющийся в этом методе автоматически сгенерированный код и записываем код со следующего листинга.
Листинг 45.4. Код  для вывода формы и рисования на ней графики.
using (Form1 myForm1 = new Form1())
{
    if (!myForm1.InitializeDirectX())
    {
        MessageBox.Show("Ошибка при инициализации DirectX.");
        return;
    }
    //Показываем форму Form1:
    myForm1.Show();
    //Рисуем графику на форме Form1:
    while (myForm1.Created)
    {
        myForm1.myRendering();
        Application.DoEvents();
    }
}
По этой методологии можно в проектах Visual C# при помощи DirectX проектировать разнообразные анимированные объемные изображения.

Содержание  Назад  Вперед