Предыдущая Следующая
public class Gamel : Microsoft.Xna.Framework.Game
Эта строка кода говорит о том, что класс Gamel является производным от системного класса Game библиотеки Microsoft.Xna.Framework. Иначе класс Gamel наследует все возможности своего базового класса Microsoft.Xna. Framework.Game, что дает ему право использовать всю силу и мощь системного класса, а также возможность модификации всех методов базового класса.
Затем в исходном коде Gamel.cs происходит глобальное объявление двух объектов:
GraphicsDeviceManager graphics; ContentManager content;
Первая строка определяет объект graphics класса GraphicsDeviceManager. С помощью этого объекта в исходном коде происходят настройка и конфигурация графического устройства, или, говоря простым языком, видеоадаптера, установленного в компьютере. Объект content необходим для загрузки различной графической составляющей в проект при помощи XNA Content Pipeline. В этой главе объект content мы использовать не будем, поэтому поговорим о нем подробнее в следующей главе.
Далее в исходном коде следует конструктор класса Gamel().
public Gamel()
{
graphics = new GraphicsDeviceManager(this); content = new ContentManager(Services); Window.Title = "Первый проект. Оконное приложение";
}
Здесь происходит создание двух объявленных ранее объектов стандартным образом. Фактически объект graphics класса GraphicsDeviceManager заменил всю ту череду вызовов различных функций в DirectX, необходимых для инициализации и настройки графического устройства. Единственное, что впоследствии стоит добавить в конструктор, - так это несколько параметров инициализации графического устройства через объект graphics, например для перехода в полноэкранный режим, но об этом позже в этой главе.
Следующая строка кода
Window.Title = "Первый проект. Оконное приложение";
не входит в определение шаблона, создавшего наш проект. Эта строка была добавлена в код специально, чтобы заменить заголовок окна с именем проекта FirstProject на более звучное и понятное название.
За конструктором класса Game1() следует определение метода Initialize().
protected override void Initialize()
{
// здесь следует код инициализации base.Initialize();
}
Этот метод предназначен для инициализации различных компонентов игры, которые вам понадобятся перед самым первым стартом игры. Из этого метода вы можете передавать управление и в другие методы, связанные с инициализацией различных начальных данных (позиции на экране, инициализация различных переменных и т. д.). Единственные ограничения касаются того, что в этом методе нельзя загружать графические компоненты игры (текстуры, модели), для этих целей служит метод LoadGraphicsContent() . Предыдущая Следующая
|