Gentoo и OGRE 3D [SOLVED]
Установил Ogre 1.6.5, а сейчас уже 1.7.2.
То, что я искал:
UPD:
Установка Ogre
Есть два пути установки (условно):
- Из официального portage: dev-games/ogre-1.6.5 или из оверлея gamerlay: dev-games/ogre-1.7.1;
- Из исходных кодов: OGRE 1.7.2 Source for Linux.
Установку буду описывать для каждого пути персонально:
- Установить из официального portage: dev-games/ogre-1.6.5:
Включаем необходимые флаги и устанавливаем пакет dev-games/ogre:
echo "dev-games/ogre boost boost-threads cg doc examples freeimage ois zip" >> /etc/portage/package.use
emege -va dev-games/ogre
- Установить из оверлея gamerlay: dev-games/ogre-1.7.1:
Включаем необходимые флаги, устанавливаем пакет app-portage/layman и добавляем в /etc/make.conf строку инициализации конфигурации layman (единожды): source /var/lib/layman/make.conf:
echo "app-portage/layman git mercurial subversion" >> /etc/portage/package.use
emerge -va layman
echo "source /var/lib/layman/make.conf" >> /etc/make.conf
Подключаем новый оверлей:
layman -a gamerlay
Включаем необходимые флаги и устанавливаем пакет dev-games/ogre:
echo "dev-games/ogre boost boost-threads cg doc examples freeimage ois zip" >> /etc/portage/package.use
emege -va dev-games/ogre
- Установить из исходных кодов OGRE 1.7.2 Source for Linux:
Здесь необходимо пояснение. Это очень важный момент - отступление от философии Gentoo Linux и установка из исходных кодов с помощью команд make и make install, это называется не-gentoo-way. Устанавливая пакеты подобным образом вы действительно нарушаете принцип работы системы, но это не должно препятствовать вашему неотъемлемому праву свободы действий. Такого же мнения придерживаются греческие разработчики утилиты app-admin/paco из оверлея foo-overlay, благодаря ей установленные пакеты через команду make install записываются и их удаление просто и безопасно:
Включаем необходимые флаги, устанавливаем пакет app-portage/layman и добавляем в /etc/make.conf строку инициализации конфигурации layman (единожды): source /var/lib/layman/make.conf:
echo "app-portage/layman git mercurial subversion" >> /etc/portage/package.use
emerge -va layman
echo "source /var/lib/layman/make.conf" >> /etc/make.conf
Подключаем новый оверлей:
layman -a foo-overlay
Включаем необходимые флаги и устанавливаем пакет app-admin/paco:
echo "app-admin/paco gtk tools" >> /etc/portage/package.use
emerge -va app-admin/paco
Скачиваем и распаковываем OGRE 1.7.2 Source for Linux / OSX с официального сайта. Дальше необходимо создать директорию build в распакованном архиве ogre_src_v1-7-2 и выполнить команды: cmake .., make -j2 и make install:
tar xjf ogre_src_v1-7-2.tar.bz2
cd ogre_src_v1-7-2
mkdir build
cd build
cmake ..
make -j2
Перед финальным исполнением команды make install, необходимо воспользоваться утилитой app-admin/paco:
sudo paco -lp foo make install
Если интересно куда были установлены все файлы - утилита поддерживает графический интерфейс gpaco, а так же в папке ~/ogre_src_v1-7-2/build есть файл install_manifest.txt, в котором прописаны все пути установки.
На этом установку Ogre 3D любым из путей можно считать завершенной.
Установка Cmake и Codeblocks
Дальше необходимо установить кроссплатформенную систему автоматизации сборки программного обеспечения из исходных кодов - dev-util/cmake и кроссплатформенную среду разработки - dev-util/codeblocks:
echo "dev-util/cmake ncurses qt4" >> /etc/portage/package.use
emerge -va dev-util/cmake
echo "dev-util/codeblocks static-libs" >> /etc/portage/package.use
emerge -va dev-util/codeblocks
Запуск первого проекта
Теперь можно приступать к запуску первого проекта. Необходимо создать директорию ogreapp и вложить в директорию файлы (dist, BaseApplication.h, BaseApplication.cpp, TutorialApplication.h, TutorialApplication.cpp, CMakeLists.txt):
Запустить cmake и выбрать два пути, один для исходного кода из папки ogreapp, а другой для будущих бинарных файлов в папке (например ogreapp-test). Конфигурируем как Codeblocks - Unix Makefiles и генерируем файлы. Все, cmake можно закрывать.
На выходе в папке ogreapp-test много файлов, для запуска нужен OgreApp.cbp, его и нужно запустить с помощью codeblocks. Codeblocks предложит выбрать тип компилятора GNU GCC Compiler.
В codeblocks необходимо скомпилировать проект: выбрать build target: install и нажать Build, далее выбрать build target: OgreApp и нажать Run. В появившемся окне выбрать необходимые опции и принять их, появится черный экран, так как в файле TutorialApplication.cpp параметр сцены void TutorialApplication::createScene(void) пуст, добавим код:
Ogre::Entity* ogreHead = mSceneMgr->createEntity("Head", "ogrehead.mesh");
Ogre::SceneNode* headNode = mSceneMgr->getRootSceneNode()->createChildSceneNode();
headNode->attachObject(ogreHead);
// Set ambient light
mSceneMgr->setAmbientLight(Ogre::ColourValue(0.5, 0.5, 0.5));
// Create a light
Ogre::Light* l = mSceneMgr->createLight("MainLight");
l->setPosition(20,80,50);
Нажмем F9 (Build and Run) и увидим сцену и сетку ogrehead.mesh:
Подведем итоги: объектно-ориентированный графический движок Ogre 3D на Gentoo Linux установлен, рабочая среда для взаимодействия с движком настроенна. TutorialFramework запущен, mesh отрисован.
Полезная информация о Ogre3D (для тех кто с с нуля):
- Для комментирования войдите или зарегистрируйтесь
.
А в чём вообще вопрос-то?
Опыта установки ogre нет, неужто установка ogre отличается от установки других пакетов?
а эта строка - это просто подпись
Подключи оверлей gamerlay,
Подключи оверлей gamerlay, там есть ogre 1.7.1.
Возможно, в скором будущем будет и 1.7.2.
Не грусти, товарищ! Всё хорошо, beautiful good!
Спасибо! Вопрос в том, как
Спасибо! Вопрос в том, как сделать все хорошо, что бы работать с Ogre 3D в gentoo 8D
Keep tryin' me jerk off, keep tryin' me... wanna impress her? Impress her with me. Impress her with ME!
Сделай всё сам. Даже не могу
Сделай всё сам. Даже не могу предположить, что ты ожидал здесь услышать. Документацию в зубы и вперёд! Версия неважна
g++
UPD
Keep tryin' me jerk off, keep tryin' me... wanna impress her? Impress her with me. Impress her with ME!