Войти
Помощь новичкамФорум

AmberSkyNet VR - кросс-платформенный движок (комментарии)

Страницы: 1 2 Следующая »
#0
9:15, 27 мая 2006

AmberSkyNet VR - кросс-платформенный движок (комментарии)

Это сообщение сгенерировано автоматически.


#1
9:15, 27 мая 2006

Третий шаг - добавление системы плагинов...
http://ambernet.sourceforge.net/asn_3.htm

#2
16:26, 22 июня 2006

Четвертый шаг - парсер ini-файла...

http://ambernet.sourceforge.net/asn_4.htm

#3
13:05, 23 июня 2006

> Четвертый шаг - парсер ini-файла...

В windows можно через GetPrivateProfileString, GetPrivateProfile int и т.д.
Хотя это на linux наверное нельзя перенести(хотя может там есть подобные функции или специально для linuxа свои можно сделать).

#4
13:13, 23 июня 2006

Да ну, парсер на кросплатформе нужен, даже знаю как это сделать, только памяти жрать будет немеренно.

#5
15:57, 23 июня 2006

Не хочется мне сильно завязываться под Винду, в WinAPI и прочих заморочках мои познания невелики (впрочем в Linux еще меньше :), предпочитаю сразу кросс-платформенный код писать...

В принципе, получилось текущую версию движка адаптировать и запустить под ASP Linux 11, только в функцию Trim пришлось добавить кое-что, чтобы она корректно обрабатывала строки, получаемые из ini-файла, который под виндой был создан..

#6
11:40, 24 июня 2006

XgagaX,Batusay
Cпасибо за комментарии :)

Следующий шаг - плагин менеджера логов:
http://ambernet.sourceforge.net/asn_5.htm

#7
21:18, 25 июня 2006

R.Ambersky
А у тебя это уже не первый движок? Я смотрю он кроссплатформенный/с плагинами и вообще мощный.
И как его использовать? Куда свой код с игрой нужно девать?

#8
22:39, 25 июня 2006

> Для скачивания исходников необходимо SVN...
Что это и где взять?

#9
11:03, 26 июня 2006

SVN - это сокращенное название Subversion, система для контроля версий.
О системах контроля версий можно прочитать тут - http://www.gamedev.ru/community/unixdev/articles/unixdev_rcs_svn

Существуют разные программы для получения исходников из SVN-репозитория, например

*TortoiseSVN - с граф. интерфейсом, встраивается в обычный проводник Windows. Около 4х метров. После установки программы для скачивания из SVN просто нажимаем прав. кнопку мышки в проводнике и выбираем "SVN checkout", задаём URL SVN-репозитория и путь к папке куда качать. Нажимаем "OK"...

  • Subversion - консольная версия (команды набираются руками в консоли), включает в себя

  • так же сам SVN-сервер, т.е. скачав это можно развернуть SVN-репозиторий у себя. 11 метров. Если просто хочешь качать исходники, разворачивать SVN-сервер у себя не надо, нужен просто клиент для скачки.

    #10
    12:42, 26 июня 2006

    >А у тебя это уже не первый движок? Я смотрю он кроссплатформенный/с плагинами и вообще мощный.
    Ну, скажем так, это движок первый, только 4-я его реинкарнация и она делается с учётом предыдущей версии.

    >И как его использовать? Куда свой код с игрой нужно девать?
    Пока его полноценно использовать несколько сложновато - из полезностей присутствует только менеджер лога.
    Но при появлении новых менеджеров, в дальнейшем, при подобной организации архитектуры можно:

    1] Писать свою игру как исполняемый файл, скажем, под названием CoolGame.exe, в котором вызывать движок AmberSkyNet и использовать его менеждеры вручную, например, в СВОЁМ файле:

    #include "EngineStarter.h" // подключаем заголовочный файл движка
    ...
    LOGGER->LOG("Сообщение в лог-файл"); // используем лог-менеджер движка для записи сообщения в лог-файл
    ...

    2] Использовать исполняемый файл AmberSkyNet.exe из движка, написав свою игру на скриптах (планирую использовать для менеждера скриптов язык Lua) - в предыдущей реинкарнации движка я так писал демки.

    #11
    14:21, 26 июня 2006

    А в скриптах разве не будет медленно? Или скрипты компилируются и потом исполняются?

    И еще: можно ли использовать одновременно несколько менеджеров лога? Если нельзя, то зачем делать ini файл с записями вроде LogManager=LogTxt. Ведь можно просто сделать плагины вроде log.dll и потом подменять dll. Тогда не придется искать менеджеры в переменных окружения. Или там можно менять менеджеры когда захочешь? Или я вообще ерунду говорю? =)

    #12
    16:28, 26 июня 2006

    >А в скриптах разве не будет медленно? Или скрипты компилируются и потом исполняются?
    Ну, там фактически по скриптам создавалась сцена с нужными элементами  подгружаемыми из dll), а она обсчитывалась уже самим движком, почти без участия скриптов...

    >И еще: можно ли использовать одновременно несколько менеджеров лога?
    Фактически такое движок позволяет - через систему плагинов загрузить разные менеджеры лога и использовать их. Но подобное я не проделывал =)

    >Если нельзя, то зачем делать ini файл с записями вроде LogManager=LogTxt. Ведь можно просто сделать плагины вроде log.dll и потом подменять dll. Тогда не придется искать менеджеры в переменных окружения.
    Можно. И наверное это более красиво и соответствует принципу плагинов :) Но мне как-то проще подправить ini-файл, чем подменять dll, т.к. весь набор плагинов лежит в одном месте и никуда ничего переносить не надо.

    Вообще, все эти игры с указателями в переменных окружения возникли из-за неопределённости с набором менеджеров на момент начала разработки движка. Поэтому потребовалась некоторая универсальность - возможность добавления нового менеджера без сильных изменений в интерфейсах. IEngine.h фактически при данной реализации не меняется - в нём не появляются новые функции получения указателей на менеджеры - getLogManager(), getGraphManager(), итп.. Всё это проделывается через указатели в переменных окружения. Правда за универсальность нужно платить - на поиск в переменных окружениях тратится некоторое время...

    >Или там можно менять менеджеры когда захочешь?
    Фактически такая возможность есть, если указатель на менеджер лога не будет где-то еще запоминаться в классах, а будет каждый раз браться из указателей окружения - в процессе работы движка загрузить другой менеджер лога и поместить указатель на него в переменную окружения LogManager, удалив после этого предыдыдущий менеджер.

    >Или я вообще ерунду говорю? =)
    Не, взгляд "извне" на твои творения всегда полезен..
    Это позволяет более глубоко понять что же на самом деле ты делаешь 8)

    #13
    20:41, 4 июля 2006

    Следующий шаг: плагин файловой системы, плагины чтения напрямую с диска и из ZIP-архива (использование библиотеки zlib)
    http://ambernet.sourceforge.net/asn_6.htm

    #14
    23:55, 26 июля 2006

    Сколко ты над ним работаешь? Два месяца? Похвастайся, что получилось.
    У меня создалось впечатление что я, в своей работе, за пять дней сделал больше. Хотя проблемы видны уже сейчас. Но так как архитектура и элементы определены процентов на 80, то переписать код правильно не составит большого труда.

    ..bw

    Страницы: 1 2 Следующая »
    Помощь новичкамФорум

    Тема в архиве.