понедельник, 16 июня 2008 г.

Первая часть, первой главы "Pro OGRE 3D Programming"

Что такое Ogre?
Ogre 3D это стабильный, надежный, гибкий, кроссплатформенный и полнофункциональный движок предназначенный для разработки интерактивных трехмерных приложений. Если вы знакомы с терминами API и SDK, вы можете пропустить это обсуждение и перейти к следующей главе. Иначе будет полезно узнать некоторую базовую лексику.
Ogre 3D SDK
Набор инструментальных средств разработки программного обеспечения (software development kit) или SDK обеспечивает связь интерфейса прикладного программирования (application programming interface) с системными службами или функциональным возможностями. Например, вы хотите написать программу для Windows XP. API, который вы использовали бы, называется Win32 API, и его функциональные возможности доступны через множество библиотек уровня системы, с загадочными названиями, такими как user32.dll, kernel32.dll, и так далее. Теоретически, вы можете получить доступ к функциональным возможностям системных DLL, непосредственно используя низкоуровневые методы программирования, но вы можете пойти более легким путем используя SDK предоставленный Microsoft для вызова функциональных возможностей системы и служб. Microsoft Platform SDK содержит заголовочные файлы и библиотеки импорта, с помощью которых вы можете связать вашу программу с системными библиотеками.
Для системных сервисов предоставляемыми такими операционными системами как Windows или Linux, SDK состоит из заголовочных файлов и библиотек импорта для системных DDL (для Windows) . Для несистемных библиотек, например NVIDIA Cg Toolkit), SDK будет также включать DLL файлы (или .so - разделяемые библиотеки под Linux). Ogre – пример несистемной библиотеки, и Ogre SDK предоставляет вам заголовочные файлы, библиотеки импорта и динамически связываемые модули, собранные в режиме Debug или Release. В режиме отладки (Debug) собирается не оптимизированная версия, содержащая проверки памяти и инициализацию. Сборка Release оптимизирована для скорости выполнения, что обычно очень важно для интерактивных трехмерных приложений.
Ogre 3D (или просто Ogre, в книге будут использоваться оба названия) позволяет вам разрабатывать трехмерные приложения в объектно-ориентированном стиле программирования. Ogre – это объектно-ориентированный графический движок рендеринга (Object-Oriented Graphics Rendering Engine). 

Термин «движок» подразумевает что Ogre 3D «вырабатывает» ваши трехмерные приложения, позволяя вам сосредоточиться больше на других деталях вашего приложения и меньше на деталях отрисовки 3D сцены. Если вы знакомы с программированием с помошью Direct3D или OpenGL, вам известно сколько времени отнимает процесс построения и отрисовки трехмерной сцены, и вы должно быть рады что Ogre 3D существует.
Объектно-ориентированный это часто злоупотребляемый термин. Определение понимаемое разработчиками Ogre и мной, это просто говоря, способ рассмотреть проблему как некоторое количество взаимодействующих объектов, а не отдельных задач. С определением объектно-ориентированного программирования вы можете ознакомиться в Викопедии на странице http://ru.wikipedia.org/wiki/Объектно-ориентированное_программирование

Перевод Pro OGRE 3D Programming

Решил немного попрактиковаться в английском, взяться за перевод Pro OGRE 3D Programming, не знаю, правда, на сколько частей терпения хватит :).

понедельник, 9 июня 2008 г.

Сборка Ogre3D из исходников

Лучше всего огра собирать из исходников, ну во первых так интересней :), исходники часто нужны при разработке, например быстрее взглянуть на реализацию класса или функции, чем искать документацию по ней.

Для сборки нужно предварительно установить DirectX SDK и Platform SDK (если используете Visual Studio Express). Потом скачиваем с официального сайта ogre3d.org исходники огра и библиотеки которые он использует (Dependencies ). Распаковываем скаченные файлы (в дальнейшем предполагается, что они распакованы в папку C:\Dev ) и осталось только прописать пути до них в студии. Для этого заходим в Tools >Options >Projects and Solutions > VC++ Directories, выбираем в Show Directories For – Include files и прописываем

C:\Dev\OGRE\ogrenew\OgreMain\include

C:\Dev\OGRE\ogrenew\Samples\Common\include

C:\Dev\OGRE\ogrenew\Samples\Common\CEGUIRenderer\include

C:\Dev\OGRE\Dependencies\include

C:\Dev\OGRE\Dependencies\include\CEGUI

Потом выбираем в Show Directories For – Library files

C:\Dev \OGRE\ogrenew\OgreMain\lib\Release

C:\Dev \OGRE\ogrenew\OgreMain\lib\Debug

C:\Dev \OGRE\Dependencies\lib\Release

C:\Dev \OGRE\Dependencies\lib\Debug

Потом заходим в папку с огром и отрываем файл Ogre_vc8.sln, выбираем в меню студии Build > Build Solution и начнется процесс компиляции. Желательно скомпилировать как версию Release, так и Debug. Debug более удобна при разработке, а Release на много быстрее. После компиляции можно зайти в папку C:\Dev \OGRE\ogrenew\Samples\Common\bin\Release и посмотреть примеры идущие с огром.



 

четверг, 5 июня 2008 г.

Введение

О чем блог
Блог в основном будет посвящен программированию игр и ориентирован на начинающих разработчиков. Программирование лучше всего изучать на практике, поэтому планируется цикл практических уроков. Игры будем писать на С++ и возможно С#. Для графики использоваться будет графический движок Ogre3D. Он относительно простой и среди open-source движков один из лучших. Официальный сайт, где его можно скачать http://ogre3d.org.
Инструменты
Программировать будем в Visual Studio 2005. Вполне подойдет бесплатная Express Edition, скачать ее можно с сайта MS. Также желательно скачать DirectX SDK, которая нужна для сборки Огра из исходников, но можно и использовать уже скомпилированную версию.