Pull to refresh

Direct3D11 C# — Часть 1 — Создание окна и настройка проекта

Настройка проекта

В этой статье рассказ пойдет о создании окна и подключение SharpDX-библиотек. Мы будем использовать одну из библиотек SharpDX, а именно SharpDX.Window.

SharpDX – это управляемая .NET-оболочка с открытым исходным кодом для создания приложений с помощью DirectX.

И так, создадим наш проект.

Выбираем Console App (.NET Framework).

Теперь нам необходимо скачать SharpDX.Windows библиотеку, в NuGet она называется SharpDX.Desktop. Сделать это можно используя NuGet или скачав библиотеку на свой компьютер и затем подключив через Solution Explorer. Этот метод мы будем использовать в других частях этого цикла статей.

Для этого, нажимаем Tools [ Сервис ] → NuGet Package Manage [ Диспетчер пакетов NuGet ] → Manage NuGet Packages for Solution… [ Управление пакетами NuGet для решения… ].

Нам не понадобятся другие библиотеки на этой уроке. Ищем только SharpDX.Desktop.

Ставим галочку напротив своего проекта и нажимаем кнопку Install.

Закрываем вкладку NuGet – Solution.

Теперь мы можем подключить библиотеку SharpDX.Windows. Другие библиотеки нам не понадобятся, поэтому спокойно их удаляем.

using SharpDX.Windows;

Ну что же теперь можно приступить к написанию кода нашего приложения.

Поехали!
Самое первое, что нам понадобится – это класс, в котором будем происходить работа с окном. Я его назвал Core, так как по сути он является ядром. В нем у нас будет три функции: Run (запускающая функция), Core (конструктор класса), RenderCallback (обработчик событий).

class Core
    {
        public Core()
        {
        }

        public void Run()
        {
        }

        public void RenderCallback()
        {
        }
    }

Добавим само окно.

 class Core
    {
        RenderForm window;
        ...

В public Core() добавим описание RenderForm window;

Последнее, что нам нужно сделать, чтобы программа была готова – это в функцию static void Main(string[] args) добавим метод Run() создав экземпляр класса.

Game можно изменить на любое другое слово.

Вот и все. Теперь при запуске мы увидим консоль и окно с названием «SharpDX Tutorial 0».
Спасибо за внимание!

Исходники
Program.cs


using SharpDX.Windows;

namespace SharpDXTutorials_0
{
    class Program
    {
        static void Main(string[] args)
        {
            Core game = new Core();
            game.Run();
        }
    }

    class Core
    {
        RenderForm window;

        public Core()
        {
            window = new RenderForm("SharpDX Tutorial 0");
        }

        public void Run()
        {
            RenderLoop.Run(window, RenderCallback);
        }

        public void RenderCallback()
        {

        }
    }
}

Tags:
Hubs:
You can’t comment this publication because its author is not yet a full member of the community. You will be able to contact the author only after he or she has been invited by someone in the community. Until then, author’s username will be hidden by an alias.