Ogre3D Basic Tutorials / Базовые туториалы Ogre3D: Basic Tutorial 7: CEGUI and Ogre
| Английский оригинал | Перевод на русский | |
|---|---|---|
Сожалеем, но текст оригинала доступен только зарегистрированным пользователям. |
КРАТКОЕ СОДЕРЖАНИЕ proVIDec 08.07.11 в 15:27 |
|
|
К концу этого раздела руководства вы должны быть способны добавить основной функционал CEGUI к вашему приложению. wuffur 13.07.11 в 07:10 |
||
|
Замечание: этот раздел руководства не планировался, чтобы полностью обучить вас использованию CEGUI. Этот раздел руководства планировался, чтобы вы его начали изучать. wuffur 13.07.11 в 07:12 |
||
|
Все дальнейшие вопросы и помощь по CEGUI следует направлять на их домашнюю страницу. wuffur 13.07.11 в 07:13 |
||
|
Намного более глубоко и лучше изложенное руководство по CEGUI найдено в документации по CEGUI или здесь, доступные он-лайн. wuffur 13.07.11 в 07:14 |
||
|
ДЛЯ НАЧАЛА proVIDec 08.07.11 в 15:28 |
||
|
ПЕРВОНАЧАЛЬНЫЙ КОД proVIDec 08.07.11 в 15:28 |
||
|
Измените ваш файл заголовков классов в Базового Руководства 7 таким образом: wuffur 13.07.11 в 08:25 |
||
|
Убедитесь, что файл реализации Базового Руководства 7 выглядит так: wuffur 13.07.11 в 08:26 |
||
|
НАСТРОЙКИ ПРОЕКТА wuffur 13.07.11 в 08:26 |
||
|
Вы будете нуждаться в CEGUI с Ogre CEGUI рендерером компилированным в Ogre 1.7 - то есть та версия Ogre, которую Вы используете. ghostintheshell 14.07.11 в 17:06 |
||
|
См. "Building CEGUI" для инструкций. ghostintheshell 14.07.11 в 17:06 |
||
|
Тогда Вы должны добавить местоположение заголовков CEGUI к каталогам включения вашего проекта ghostintheshell 14.07.11 в 17:08 |
||
|
Этот код предполагает, что Вы подготовили CEGUI SDK со следующим расположением директорий: ghostintheshell 14.07.11 в 17:10 |
||
|
После компилирования CEGUI Вы можете скопировать файлы, чтобы сделать SDK. ghostintheshell 14.07.11 в 17:11 |
||
|
Это является полностью дополнительным, хотя инструкции здесь основаны на этом расположении. ghostintheshell 14.07.11 в 17:13 |
||
|
Если у Вас нет своих заголовков CEGUI в справочнике под названием 'CEGUI', удалите часть 'CEGUI' из каталогов включения в заголовке Основной Обучающей программе 7. ghostintheshell 14.07.11 в 17:18 |
||
|
Добавьте следующие две строки к Вашему списку проектов включённых директорий ghostintheshell 14.07.11 в 17:20 |
||
|
ДВИЖЕНИЕ DLLs ghostintheshell 14.07.11 в 17:21 |
||
|
В Windows Вы должны скопировать следующие DLLs к своему OGRE_HOME/bin/debug каталогу: ghostintheshell 14.07.11 в 17:22 |
||
|
Последний DLL предполагает, что Вы используете по умолчанию Expat XML синтаксический анализатор с CEGUI. ghostintheshell 14.07.11 в 17:26 |
||
|
КОМПИЛИРОВАНИЕ КОДА ghostintheshell 14.07.11 в 17:26 |
||
|
Убедитесь, что Вы можете компилировать и запустить этот код перед продолжением. ghostintheshell 14.07.11 в 17:28 |
||
|
в приложении ничего не будет кроме пустого экрана (нажмите esc, чтобы выйти). ghostintheshell 14.07.11 в 17:30 |
||
|
Если Вы сталкиваетесь с ошибками компилятора или компоновщика, проверьте свои настройки. ghostintheshell 14.07.11 в 17:32 |
||
|
КРАТКОЕ ВВЕДЕНИЕ В CEGUI ghostintheshell 14.07.11 в 17:33 |
||
|
CEGUI - полнофункциональная библиотека GUI, которая может быть включена в трехмерные приложения, такие как Ogre (он также поддерживает OpenGL, DirectX, и Irrlicht). ghostintheshell 14.07.11 в 17:38 |
||
|
таким же образом Ogre - только графическая библиотека (и не делает других вещей, таких как звук, физика, и т.д.), CEGUI - только библиотека GUI, это значит она не делает своего собственного рендеринга, и не затрагивает мышь или клавишные события. ghostintheshell 14.07.11 в 17:48 Во многом как и Ogre, который является только графической библиотекой(и не делает такие вещи как проигрывание звука, расчет физики и так далее), CEGUI - это только библиотека GUI, это означает, что он не производит свой собственный рендеринг, как и не подключается к событиям мыши или клавиатуры. wuffur 14.07.11 в 17:55 |
||
|
Фактически, для CEGUI, чтобы рендерить вообще, Вы должны обеспечить рендерер для этого (который является библиотекой CEGUIOgreRenderer, отправленной с CEGUI), и для этого, чтобы даже понять события мыши и клвиатуры , Вы должны вручную ввести их в систему. ghostintheshell 14.07.11 в 18:00 |
+1 | |
|
Это может вывглядить плохо сначала, но в действительности очень немного кода требуется чтобы это произошло. ghostintheshell 14.07.11 в 18:02 Поначалу это может выглядеть зубодробительно, но в реальность понадобится совсем немного кода, чтобы это случилось. wuffur 02.09.11 в 19:32 |
+1 | |
|
Это также позволяет Вам иметь полный контроль над рендерингом и входом; CEGUI никогда не будет помехой. ghostintheshell 14.07.11 в 18:04 |
+1 | |
|
Есть много аспектов к CEGUI, которые будут незнакомы Вам (даже если Вы использовали системы GUI прежде). ghostintheshell 14.07.11 в 18:05 У CEGUI есть много аспектов и много причуд, которые будут вам чужды(даже если вы уже использовали GUI системы прежде) wuffur 14.07.11 в 18:11 |
||
|
Я попытаюсь медленно представить их Вам, поскольку мы продвигаемся. ghostintheshell 14.07.11 в 18:05 Я попытаюсь не торопясь представить их Вам по мере того, как мы будем двигаться вместе. wuffur 14.07.11 в 18:09 |
||
|
ИНТЕГРАЦИЯ В OGRE ghostintheshell 14.07.11 в 18:06 ИНТЕГРАЦИЯ С OGRE wuffur 14.07.11 в 18:08 |
||
|
ОПРЕДЕЛЕНИЕ ГРУПП РЕСУРСА CEGUI ghostintheshell 14.07.11 в 18:06 ОПРЕДЕЛЕНИЕ РЕСУРСНЫХ ГРУПП CEGUI wuffur 14.07.11 в 18:07 ОПРЕДЕЛЕНИЕ ГРУПП РЕСУРСОВ CEGUI cin 28.07.11 в 15:19 |
||
|
У CEGUI как у Ogre есть несколько типов ресурсов нужных для функционирования. ghostintheshell 14.07.11 в 18:07 |
+1 | |
|
Это несколько менеджеров ресурсов (как Ogre), который должен найти их соответствующие местоположения ресурса. ghostintheshell 14.07.11 в 18:09 У него есть несколько менеджеров ресурсов(как и у OGRE), которые должны найти соответствующее место, где ресурсы будут расположены. wuffur 02.09.11 в 19:34 |
+1 | |
|
Таким образом Вы должны определить необходимые группы ресурса и их местоположения в пределах resources.cfg. ghostintheshell 14.07.11 в 18:11 Таким образом, вам нужно определить необходимые группы ресурсов и их местонахождение внутри файла resources.cfg. wuffur 14.07.11 в 18:37 |
+1 | |
|
Распределение CEGUI устанавливает свои ресурсы к различным местоположениям в зависимости от вашей платформы. ghostintheshell 14.07.11 в 18:12 Дистрибутив CEGUI инсталлирует свои ресурсы в разные места, в зависимости от вашей платформы. wuffur 14.07.11 в 18:16 |
||
|
Поскольку устанавливает обычный Linux, они все установлены в/usr/local/share/CEGUI или/usr/share/CEGUI. ghostintheshell 14.07.11 в 18:13 При обычной инсталляции Linux они все устанавливаются в /usr/local/share/CEGUI или /usr/share/CEGUI. wuffur 14.07.11 в 18:19 |
||
|
Добавьте, что следующие к resources.cfg - заменяют 'path_to_cegui' путем к файлам данных CEGUI: ghostintheshell 14.07.11 в 18:15 Добавьте следующее к файлу resources.cfg - замените 'путь_к_cegui' путем к файлам данных CEGUI: wuffur 14.07.11 в 18:18 |
||
|
ИНИЦИАЛИЗАЦИЯ CEGUI wuffur 14.07.11 в 18:20 |
||
|
Найдите функцию createScene и добавьте следующий код: wuffur 14.07.11 в 18:34 |
||
|
Теперь, поскольку CEGUI инициализирован, нам нужно установить так называемые группы ресурсов по умолчанию для каждого из менеджеров ресурсов CEGUI. Добавьте следующее: wuffur 14.07.11 в 18:35 |
||
|
Как вы видите, мы использовали те группы ресурсов, которые мы описали внутри файла resources.cfg. wuffur 14.07.11 в 18:36 |
||
|
CEGUI в высокой степени настраиваема, и позволяет вам определить то, как ваше приложение выглядит и как комфортно в нем себя чувствуют, при помощи изменения его "кожурки"(схема, с точки зрения CEGUI). wuffur 14.07.11 в 18:43 |
+2 | |
|
Мы не будем писать, как делать скины для библиотеки CEGUI в этом руководстве, поэтому если вы желаете узнать больше об этом, обратитесь за советом на сайт CEGUI. wuffur 15.07.11 в 17:40 |
||
|
Следующие строки кода выбирают скины: wuffur 15.07.11 в 17:38 |
||
|
Следующая вещь, которую нам нужно сделать - это определить курсор мыши по умолчанию: wuffur 15.07.11 в 17:38 |
||
|
Первый параметр определяет Imageset, а второй определяет имя используемой картинки Image, для использования из Imageset. wuffur 14.07.11 в 18:56 |
