Предыдущая Следующая
Все, что касается подсчета очков, мы выяснили, и, как оказалось, дело это совсем не сложное, поэтому переходим к третьей части главы, цель которой состоит в том, чтобы нарисовать на экране набранные пользователем очки и другую сопутствующую информацию.
11.3. Выводим на экран телевизора подсчет очков
На этом этапе создания игры на экран телевизора мы будем выводить простой подсчет пойманных объектов. Вот как это делается в методе Draw() класса Game1.
int y = 60; // отступ от верхней части экрана int y1 = 25; // расстояние между строками
spriteBatch.DrawString(courier, «Девушка: « + score0, new Vector2(screenWidth - 250, y), Color.Black);
spriteBatch.DrawString(courier, «Чемодан: « + score1, new Vector2(screenWidth - 250, y += y1), Color.Black);
Здесь, думается, все понятно. Единственное, что нужно обязательно учитывать при работе с текстом в телевизионных системах, - это возможность искажения данных, рисуемых вблизи краев экрана. Дело в том, что телевизор по сравнению с монитором в своих крайних точках (углы и все четыре кромки экранов) может иметь большое искажение. Посмотрите на рис. 11.5, где показана зона возможного искажения экрана телевизора. В связи с этим, рисуя статическую игровую графику на экране телевизора (текст, очки...), необходимо обязательно отступать некоторое количество пикселей от краев экрана, чтобы избежать видимых искажений.
Исходный код всего класса Game1 проекта Font приведен в листинге 11.3. Полный исходный код проекта Font вы найдете на компакт-диске в папке Code\Chapter11\Font.
Выводим на экран телевизора подсчет очков 209
Рис. 11.5. Зоны искажения телевизора
//=========================================================================
/// <summary>
/// Листинг 11.3
/// Исходный код к книге:
/// «Программирование игр для приставки Xbox 360 в XNA Game Studio Express»
/// Автор книги: Горнаков С. Г.
/// Глава 11
/// Проект: Font
/// Добавляем текст и подсчет очков
/// <summary>
//=========================================================================
#region Using Statements using System;
using System.Collections.Generic; using Microsoft.Xna.Framework; using Microsoft.Xna.Framework.Audio; using Microsoft.Xna.Framework.Content; using Microsoft.Xna.Framework.Graphics; using Microsoft.Xna.Framework.Input; using Microsoft.Xna.Framework.Storage; #endregion
namespace Font { Предыдущая Следующая
|