тим простіше буде етап реалізації, і тим оптимальніше буде код проекту. br/>
2.1 Вибір середовища виконання програми
середу виконання програми багато в чому визначає як структуру самої програми, так і деякі експлуатаційні та функціональні характеристики проекту. Оскільки справа ми маємо з ігровим проектом, при виборі середовища виконання програми слід більшою мірою орієнтуватися не на зручність програмування, а на популярність середовища. На сьогоднішній день найбільш популярними операційними системами у всьому світі є операційні системи сімейства Windows фірми Microsoft. За деякими даними, вони встановлені на 95% всіх персональних комп'ютерів у світі. Безумовно, при розробці програми наш вибір впаде саме на ці операційні системи. До їх числа будемо відносити Windows 95/98/Me/NT/2000/XP/2003 та їх модифікації. p> Але сама операційна система Windows надає безліч можливостей і технологій для реалізації проекту. При подальшому уточненні середовища програмування будемо керуватися таким набором особливостей реалізованого проекту:
) програма буде використовувати безліч динамічних повнокольорових зображень;
) в програмі повинна буде забезпечуватися плавність руху об'єктів на екрані;
) програма повинна працювати в повноекранному режимі (коли користувач грає і гра вимагає від нього постійного зосередження, ніяка стороння інформація на екрані не повинна його відволікати).
Для задоволення цих вимог ідеально підходить менеджер відеопам'яті DirectDraw - компонент DirectX. Він має такі властивості:
) Швидке виведення поверхонь (спрайтів) на екран;
) Можливості масштабування зображень;
) Можливість простої реалізації подвійний буферизації;
) Кадрова синхронізація при виведенні зображень;
) Можливість роботи в повноекранному режимі.
2.2 Визначення архітектури проекту
Оскільки проект має трохи функцій, має сенс не розбивати його на безліч модулів, а зберігати все в одному файлі. Сюди не входить використання модуля від Microsoft В«ddutil.cppВ», що розширює можливості роботи з DirectDraw. p> Основна ідея роботи з DirectDraw полягає в почерговому копіюванні поверхонь на екран і зміні поверхонь на екрані. У даному проекті до екрану підключено дві поверхні (така схема є загальноприйнятою): видима і невидима. Принцип роботи програми полягає в наступному: на невидиму поверхню копіюються всі спрайт (теж представлені поверхнями), після чого поверхні екрану міняються місцями, і ситуація повторюється. При зміні поверхонь автоматично очікується кадровий сінхроімпульс, чим досягається кадрова синхронізація, і тим самим - плавність руху. Загальний алгоритм оновлення інформації на екрані можна представити в наступному вигляді:
) регенеруючи поверхні, на яких помінялося зображення;
) Виводимо потрібні поверхні на невидиму екранну поверхню;
) Міняємо місцями екранні поверхні;
) Переходим...