Работаем с MS Visual Studio.
Автор: Sergei Shaykin
Здесь пойдёт речь о том, как работать с MS Visual C++.
Цель данной статьи — не полный обзор пакета, а освещение некоторых основ и замечаний, предназначенных для того, чтобы в других статьях сайта GameDev.ru не возвращаться к косвенным темам, таким как создание проекта и пр. За основу берётся 6-я версия MS Visual С++.
Эта статья не претендует на последнюю инстанцию и НЕ говорит о том, что другим средствам разработки компьютерных игр нет места на GameDev.ru. Возможно, статья будет дописываться новыми пунктами.
Почему MS Visual Studio.
Workspace.
Проект. Создание проекта.
Создание заготовки Win32 Application.
Код пустого выполняемого приложения.
Почему MS Visual Studio.
Конечно, существует множество средств разработки, каждый любит больше свою, к которой привык. Некоторые умудряются пользоваться несколькими средами и языками программирования. Однако, можно дать некоторые объяснения выгодной позиции MS Visual С++.
Это всё касается тех, кто занимается компьютерной графикой. Популярные графические пакеты, такие как 3D Studio MAX и Maya, написаны на MS Visual C++. Очень много разработчиков игр сталкивается с написание plug-in'ов к этим пакетам. Естественно, им нужно использовать эту среду разработки. Создавать какие-то свои подключения, для других языков и сред - утопично, проблемы возникают при выходе новых версий пакетов. То же самое касается и продуктов Adobe. Чтобы писать plug-in'ы к Photoshop'у или к Affter Effect'у, нужен MS Visual Studio. Есть смысл, знать один пакет очень хорошо, чем несколько поверхностно.
К тому же к MS Visual C++ есть множество дополнительных продуктов, которые помогают в разработке.
Стереотип, что раз это продукт Microsoft, то он является заведомо никчемным, не имеет твёрдой основы. К тому же, в большинстве вакансий требование знания MS Visual C++ вместе с MFC появляются чаще, чем знание других средств разработки.
Тут не имеется в виду отдельные случаи, типа верхнего уровня игровых проектов, где удобно иногда использовать скриптовые языки или Java.
Конечно, если вы занимаетесь не компьютерной графикой, а базами данных, то тут ещё можно спорить.
Workspace.
В Visual Studio есть такое понятие как Workspace (рабочее пространство).
Workspace может содержать как один проект так и несколько. Бывает удобно помещать в один Workspace несколько проектов, если вы создаёте большой продукт, имеющий несколько исполняемых модулей, статических и динамически подключаемых библиотек.
Окно Workspace обычно включено по умолчанию, если оно выключено, его можно включить либо из меню View/ Workspace, либо нажатием Alt+0. Окно Workspace можно использовать, как навигационное окно. Из него можно управлять проектами, файлами, классами и ресурсами. Это окно содержит несколько закладок.
Закладка ClassView. Показывает список всех проектов и, содержащихся в них, всех классов (включая структуры) вместе с их членами (методами и полями), которые объявлены в файлах, включённых в Workspace. Отсюда можно устанавливать активный проект и управлять содержим классов, а также навигацию по классам.
Закладка ResourceView. Она видна в том случае, если хотя бы один проект содержит ресурсы, такие как диалоговые формы, меню, иконки, рисунки и пр. Отвечает за управление ресурсами и навигацией по ним, вызывая соответствующие редакторы.
Закладка FileView. Показывает список всех проектов и, содержащихся в них, файлах. Здесь можно добавлять и удалять проекты, файлы из проектов, вызывать окна редакторов соответствующих файлов и пр. Отсюда также можно устанавливать активный проект.
Добавление существующего проекта в текущий Workspace, осуществляется из меню Project / Insert Project into Workspace:
Между проектами можно устанавливать зависимости (dependencies). Если установить зависимость одного проект над другим, то перед компиляцией первого проекта, сначала произойдёт (если есть в этом необходимость) компиляция второго проекта. Например, если вы компилируете какой-то основной проект, требующий статическую библиотеку, собираемую вторым проектом, то тут полезно выставить зависимость. При каких-то изменениях в файлах проекта статической библиотеки перед компиляцией основного проекта произойдёт компиляция изменённых файлов проекта статической библиотеки.
Зависимости устанавливаются из меню Project / dependencies.
Workspace чаще всего создаётся вместе с проектом.
Проект. Создание проекта.
Проект (Project) представляет собой набор файлов, объединённых для компиляции и сборки в одну программную единицу, такую как исполняемый модуль, динамически или статически подключаемая библиотека и т.д.
Проект создаётся следующим образом. Меню File / New.
Выбирается закладка Projects (Эта закладка выбирается автоматически, если Visual Studio не содержит открытого Workspace).
Далее выбирается Мастер приложения (AppWizard) проекта, в зависимости от типа проекта. AppWizard - некая заготовка, которая строится, используя некие рекомендации пользователя. Если вам нужно создать обычное Windows приложение, вы можете выбрать Win32 Application. Если консольное приложение - то Win32 Console Application. Если динамически подключаемую библиотеку — Win32 Dynamic-Link Library. И т.д.
Вы можете сами создать свой собственный AppWizard для часто используемых вами структур проекта. Некоторые производители ПО делают такие AppWizard'ы для plug-in'ов к своим приложениям. Например, есть AppWizard для plug-in'ов к 3D Studio MAX и Maya. Кстати, в месте с поставкой DirectX 8.1, тоже идёт Мастер приложения.
Далее в окне Project Name нужно ввести имя проекта, ниже - указать расположение (location) проекта. Ещё ниже — указать, создавать проект с новым Workspace или в текущем.
После жать кнопку OK и следовать инструкциям AppWizard'а.
19 ноября 2001 (Обновление: 5 мар 2006)