Этот файл содержит краткое описание примеров приложений из книги Тихомирова Ю.В. "Программирование трехмерной графики". Полные тексты программ этих примеров приведены на данной дискете в одноименных каталогах, а примеры консольных приложений -- в каталоге Samples. В архивном файле Samples.zip находятся все исполняемые файлы примеров. В архивном файле OpenGL.zip расположен файл шаблона для создания каркаса приложения OpenGL, который необходимо переписать в вашу папку шаблонов MSDev\Templates. 1. Использование примеров: - каталоги с примерами можно переписать на локальный или сетевой диск только средствами Windows 95 или Windows NT - файлы имеют длинные имена; - для использования примеров, а также для их модификации или перекомпиляции требуется Visual С++ версии не ниже 4.0; --------------------------------------------------------------------- ВНИМАНИЕ! НЕСОВМЕСТИМОСТЬ РУССКОЯЗЫЧНОЙ И АМЕРИКАНСКОЙ (ПАН-ЕВРОПЕЙСКОЙ) ВЕРСИЙ WINDOWS В ПОДДЕРЖКЕ НАЦИОНАЛЬНЫХ ЯЗЫКОВ ТРЕБУЕТ ДЛЯ ИСПОЛЬЗОВАНИЯ ДАННЫХ ПРИМЕРОВ В РУССКОЯЗЫЧНОЙ ВЕРСИИ WINDOWS ВКЛЮЧЕНИЯ ДИРЕКТИВЫ "RUSSIAN RESOURCES" В ИСХОДНЫЕ ФАЙЛЫ РЕСУРСОВ ВСЕХ ПРИЛОЖЕНИЙ ДО КОМПИЛЯЦИИ. ЭТИ ИЗМЕНЕНИЯ СЛЕДУЕТ ПРОИЗВЕСТИ ВНЕ СИСТЕМЫ РАЗРАБОТКИ VISUAL C++ (MICROSOFT DEVELOPER STUDIO). СЛЕДУЕТ ВКЛЮЧИТЬ СЛЕДУЮЩИЕ СТРОКИ: ///////////////////////////////////////////////////////////////////// // Russian resources #if !defined(AFX_RESOURCE_DLL) || defined(AFX_TARG_RUS) #ifdef _WIN32 LANGUAGE LANG_RUSSIAN, SUBLANG_DEFAULT #pragma code_page(1251) #endif //_WIN32 ... ЗДЕСЬ УКАЗАНЫ ОПИСАНИЯ РЕСУРСОВ ... #endif // Russian resources //////////////////////////////////////////////////////////////////// В ПОТИВНОМ СЛУЧАЕ НАЗВАНИЯ ПУНКТОВ МЕНЮ И ТЕКСТ ЭЛЕМЕНТОВ БЛОКОВ ДИАЛОГА БУДЕТ НЕВОЗМОЖНО ПРОЧИТАТЬ, А РУССКИЙ ТЕКСТ В ФАЙЛАХ РЕСУРСОВ ПОСЛЕ КОМПИЛЯЦИИ БУДЕТ ЗАМЕНЕН СИМВОЛАМИ ВОПРОСА (?) --------------------------------------------------------------------- - для просмотра содержимого файлов необходимо пользоваться ТОЛЬКО средствами Windows, т.к. комментарии, добавленные в тексты программ авторами, написаны на русском языке, естественно, в кодировке, отличной от той, что используется в MS-DOS. 2. Список примеров приложений Windows (в алфавитном порядке): – Bitmaps - приложение из главы 3, иллюстрирует технику использования битовых массивов; – Faces - приложение из главы 7, позволяющее в интерактивном режиме познакомиться с такими понятиями, как лицевые и обратные грани, менять их параметры, а также выбирать для отображения одну из них или обе; – Lighting - приложение из главы 7, демонстрирует создание сложной реалистической сцены, включающей площадку, фоновый и три направленных источника света, прозрачный шар "изготовленный" из различных материалов, тени и другие вопросы, связанные с понятием "освещение"; – Materials - приложение из главы 7, показывающее, как можно управлять различными свойствами материала при создании реалистических объектов; – PixFrmtCheck - приложение из главы 1, содержит обязательные компоненты любой программы для Windows, работающей с OpenGL: настройка формата пикселей, создание и удаление контекста воспроизведения, установка стиля окна; – Projections - приложение из главы 5, позволяющее в интерактивном режиме детально изучить различные виды проекций и ориентации объектов; – Texture - приложение из главы 8, иллюстрирует технику создания текстуры в памяти из растрового изображения, ее наложения на различные объекты для создания реалистических изображений, настройку различных параметров текстуры в интерактивном режиме, в том числе и ее координаты; – Transform - приложение из главы 5, совместно с приложением Projections позволяет детально рассмотреть системы координат, используемые в трехмерной графике, и всевозможные преобразования координат; 3. Список примеров консольных приложений: – Alpha - программа из главы 4, демонстрирующая режимы прозрачности и смешения цветов; нажатие клавиш <1>-<9> позволяет переключаться между различными функциями теста альфа; – Depth - программа из главы 4, представляет режимы работы с буфером глубины; нажатие клавиш <1>-<4> позволяет переключаться между различными режимами работы; – Dots - программа из главы 3, знакомит с различными параметрами точек OpenGL (размер и устранение ступенчатости); – Lines - программа из главы 3, знакомит с различными параметрами и вариантами создания линий в OpenGL (ширина, штриховка и устранение ступенчатости); изолированные, связанные и замкнутые линии); – Triangles - программа из главы 3, знакомит с различными параметрами и вариантами создания треугольных примитивов (устранение ступенчатости для многоугольников; изолированные треугольники, треугольники с примыкающими сторонами и треугольники с общей вершиной); – Quadrangles - программа из главы 3, знакомит с различными параметрами и вариантами создания четырехугольных примитивов (использование трафарета, изолированные четырехугольники и четырехугольники со смежными сторонами); – Polygons - программа из главы 3, знакомит с различными параметрами и вариантами создания многоугольных примитивов; – Parallelepiped - программа из главы 3, демонстрирующая принцип создания и изображения простого трехмерного объекта - параллелепипеда; – Fog - программа из главы 4, иллюстрирует один из способов передачи глубины - придание изображению некоторой нечеткости (размытости) в зависимости от расстояния до него; – Scissor - программа из главы 4, иллюстрирует режим отсечения и два режима закрашивания примитивов: с однотонным и с плавным переходом цветов; – Stencil - программа из главы 4, демонстрирует прием наложения трафарета, обычно используемого в многопроходных алгоритмах воспроизведения для реализации специальных эффектов, таких как отбеливание, оконтуривание и стереовоспроизведение.