Предыдущая Следующая
Sprite sprite;
А в конструкторе класса Gamel происходит создание этого объекта строкой кода.
sprite = new Sprite();
Затем в методе LoadGraphicsContent() через объект sprite вызывается метод Load() класса Sprite, который загружает изображение в игру. В качестве второго параметра этого метода передается путь к графическому файлу sprite.png.
Проект DrawSpriteClass 137
protected override void LoadGraphicsContent(bool loadAllContent) {
if (loadAllContent)
{
spriteBatch = new SpriteBatch(graphics.GraphicsDevice); sprite.Load(content, «Content\\Textures\\sprite»);
}
}
Потом в методе Initialize() через объект sprite мы обращаемся к объекту spritePosition и задаем начальную точку вывода изображения на экран монитора.
protected override void Initialize()
{
sprite.spritePosition = new Vector2(300, 200); base.Initialize();
}
И в конце исходного кода класса Gamel в методе Draw() вызываем метод DrawSprite() класса Sprite для вывода спрайта на экран в заданном месте.
sprite.DrawSprite(spriteBatch);
На этом этапе это все улучшения и новшества, добавленные в исходный код будущей игры. После запуска игры вы увидите на экране девушку. Рассматриваемый пример находится на диске в папке Code\Chapter6\DrawSpriteClass. Откомпилируйте и запустите программу на приставке Xbox 360, а также поэкспериментируйте с выбором различных значений для задания позиций спрайта на экране телевизора или монитора.
Глава 7
Спрайтовая анимация
Изображения в играх могут быть как анимированными, так и неанимированны-ми. Неанимированное изображение - это некий рисунок заданного размера, состоящий из одного кадра, или фрейма. Примером неанимированного изображения служит статический или двигающийся объект, состоящий из одного фрейма, рассмотренный нами в предыдущей главе. Анимированное изображение - это изображение, состоящее уже из определенного набора фреймов или ряда последовательных взаимосвязанных изображений (анимационная последовательность). Переход по всем имеющимся фреймам анимационной последовательности создает иллюзию анимации в игровом процессе.
Анимированное изображение может состоять из любого количества фреймов, задающих анимационную последовательность для персонажей игры. Отсчет фреймов изображения происходит от нуля, точно так же, как это делается в простом массиве данных. Количество фреймов анимационной последовательности не ограничено, но весь набор последующих фреймов анимационной последовательности должен совпадать с размером самого первого фрейма как по ширине, так и по высоте. То есть все фреймы должны быть одинакового размера. Располагать фреймы изображения можно горизонтально, вертикально или компоновать любым удобным для вас способом. Отсчет по фреймам изображения всегда происходит слева направо и сверху вниз. Посмотрите на рис. 7.1, где изображен шагающий робот. Предыдущая Следующая
|