 
          М а т е р и а л ы X В с е р о с с и й с к о й н а у ч н о - п р а к т и ч е с к о й к о н ф е р е н ц и и
        
        
          П о с в я щ а е т с я 1 0 0 - л е т и ю Р о с т и с л а в а Е в г е н ь е в и ч а А л е к с е е в а
        
        
          595
        
        
          все заданные созвездия на текущем уровне найдены, происходит переход к
        
        
          следующему уровню (Рисунок 1).
        
        
          
            Рис. 1 – Переходы между уровнями
          
        
        
          Начинается разработка с определения необходимых сущностей, их
        
        
          структуры и отношений. Эти классы содержат лишь свойства и конструкторы и
        
        
          предназначены для хранения данных об описываемых сущностях. Перечислим
        
        
          сущности, необходимые в игре [3]:
        
        
          – Location (локация), которая содержит список уровней;
        
        
          – LevelInfo(уровень), который содержит позицию камеры и созвездия;
        
        
          – Constellation(созвездие), которое содержит список звезд, список связей,
        
        
          позицию иллюстрации для созвездия, когда игрок отгадает его;
        
        
          – Star(звезда), которая содержит свой порядковый номер в созвездии для
        
        
          идентификации, размер, цвет и позицию;
        
        
          – Relation (отношение или связь), которое содержит значения свойства Id
        
        
          двух звезд, которые объединены этой связью.
        
        
          Для хранения данных о локациях используются XML-файлы, имеющие
        
        
          структуру описанных выше сущностей. Поскольку объем информации,
        
        
          необходимой для описания локаций, слишком велик, то разработан редактор
        
        
          уровней, который позволяет быстро добавлять звезды, образуя созвездия и
        
        
          устанавливать прочие необходимые параметры (Рисунок 2).
        
        
          Далее описываются «внешние» классы. Главным классом является класс
        
        
          Game. Его структура и назначение аналогична с классом из XNA. Несколько
        
        
          иначе может происходить загрузка ресурсов, поскольку структура проекта
        
        
          немного отличается.Создание самой игры начинается с переопределения класса
        
        
          Game. В этом классе надо переопределить основные методы:
        
        
          Initialize,LoadContent,UnloadContent, методы Update и Draw. В методе Initialize
        
        
          задаются главные настройки, касающиеся всей игры. В методе LoadContent
        
        
          загружаются ресурсы игры, такие как изображения, звуки, шрифты. Методы