Приставки
Nintendo (Dendy)
Nintendo 64
Sega Genesis
Sega CD / 32x
Master System
Super Nintendo
Turbo Grafx 16
Sega Saturn
Sony PlayStation
GameBoy Advance
GameBoy / Color
Game Gear
Atari
Другие

Утилиты
Системные утилиты
GoodXXXX
Sega CD / 32x
Nintendo 64
Переводы, хакинг
Музыка

Мир приставочных игр

Версия 2.00a

Leonis © 2002-2009
Команда Новости Помощь Ссылки
ПОМОЩЬ
Литература про игры
Предыдущая Следующая

В следующей строке кода метода LoadGraphicsContent() происходит загрузка изображения sprite.png в программу. Для этих целей используется метод Load<Texture2D>(), а в качестве его параметра указывается полный путь к графическому изображению. В этой записи два слэша обозначают одну из папок в рабочем каталоге проекта. Если вы хотите загрузить текстуру, например, из корневого каталога, то достаточно указать просто имя файла без слэшей, если, конечно, ваш файл действительно находится в корневом каталоге проекта.

Загрузка графического файла в программу происходит посредством сервисов XNA Content Pipeline. В строке загрузки графического файла указывается только название файла без его расширения. Загрузчику XNA Content Pipeline абсолютно все равно, в каком формате выполнено изображение, главное, чтобы это были форматы, с которыми он умеет работать (BMP, JPG, PNG, TGA и DDS), а все остальное - дело его техники. После компиляции приложения XNA Content Pipeline преобразует все графические ресурсы игры в свой специфический формат XNB, и программа будет читать уже эти преобразованные файлы.

128 Работа с двухмерной графикой

Далее в методе Initialize() мы зададим две координаты по осям X и Y для вывода спрайта на экран.

protected override void Initialize() {

spritePosition.X = 300; spritePosition.Y = 200;

/* можно задать также вывод изображения в центре экрана:

* spritePosition.X = graphics.PreferredBackBufferWidth / 2;

* spritePosition.Y = graphics.PreferredBackBufferHeight / 2;

*/

base.Initialize();

}

Начальная точка координат для спрайта - это его верхний левый угол. Переменная spritePosition представляет собой вектор, который позволяет задавать координаты по двум осям. Обращение к осям X и Y происходит посредством оператора точка. Дополнительно можно использовать и другую конструкцию кода с явным созданием объекта spritePosition следующим образом (в центре экрана).

spritePosition = new Vector2(graphics.PreferredBackBuifferWidth / 2, graphics.PreferredBackBufferHeight / 2);

Эта запись идентична предыдущей записи, а деление этих значений на 2 позволяет найти центр экрана (но не центр спрайта). В ином случае можно было записать следующие строки:

spritePosition.X = 512; // 1280/2 spritePosition.Y = 384; // 720/2

Если не определять координаты для вывода спрайта на экран, то по умолчанию значение положения спрайта задается двумя нулями, то есть верхний левый угол экрана.


Предыдущая Следующая

Горяченькое

Друзья

Hosted by uCoz