[ Новые сообщения · Участники · Правила форума · Поиск · RSS ]
  • Страница 2 из 10
  • «
  • 1
  • 2
  • 3
  • 4
  • 9
  • 10
  • »
Форум Panda3D - по русски » Общий форум » Флудильня » Сообщество
Сообщество
BlackCatДата: Вторник, 29.06.2010, 01:34 | Сообщение # 16
Подполковник
Группа: Проверенные
Сообщений: 144
Награды: 0
Репутация: 1
Статус: Offline
Quote (designer)
Если конструктор будет удобен, то почему бы им не создать на его движке свою игру?

Так о том и речь. Если есть инструмент для быстрого прототипирования, то такой движок привлекает бОльшую аудиторию. А раз уж есть прототип на этом движке, то отчего бы его просто не допилить, при этом не переходя на другие движки. smile

Quote (ninth)
Хм.. с чего это ты взял? Что ты подразумеваешь под хорошей графикой? Если иметь прямые руки, то графику любой из современных игрушек можно на панде реализовать. Ну может какие-то супер-плюшки DX10+ не доступны, т.к. шейдеры OGL, но всё остальное - что душе угодно.

Сколько помню - в панде даже ДХ9 толком не был реализован. Хотя с последними версиями стало лучше, не знаю.


http://alphahole.do.am - версия 0.015 вышла 22.02.10
 
designerДата: Вторник, 29.06.2010, 17:41 | Сообщение # 17
Майор
Группа: Пользователи
Сообщений: 90
Награды: 0
Репутация: 0
Статус: Offline
Quote (BlackCat)
Сколько помню - в панде даже ДХ9 толком не был реализован. Хотя с последними версиями стало лучше, не знаю.

Эадор или как там его видел, там даже 2Д персонажи не обладали анимацией при передвижении по полю, но игру продавали без вопросов. Так что, думаю, можно не гнаться за новыми плюшками, а делать добротные поделки аля олд-скул. Играют же в домино, шашки и прочее без всяких там наворотов. Да, делают игры типа Сталкер на Сеге и тп. И тот же Старкрафт2 не обладает сверх мощной графикой. Что ещё раз говорит, что в игре главное её внутренее, а не внешнее.
Quote (BlackCat)
Так о том и речь. Если есть инструмент для быстрого прототипирования, то такой движок привлекает бОльшую аудиторию. А раз уж есть прототип на этом движке, то отчего бы его просто не допилить, при этом не переходя на другие движки.

Есть ещё предложения кроме конструктора?


...игры взрастили человеческую цивилизацию...
 
ninthДата: Среда, 30.06.2010, 00:00 | Сообщение # 18
Admin
Группа: Администраторы
Сообщений: 1582
Награды: 5
Репутация: 46
Статус: Offline
Quote (BlackCat)
Сколько помню - в панде даже ДХ9 толком не был реализован. Хотя с последними версиями стало лучше, не знаю.

Поэтому я и говорю, что используется рендер на основе OpenGL. Директиксы скорее для совместимости (что-то типа безопасного режима) на данный момент, ибо заниматься ими некому - большАя часть активного сообщества панды сидит на линуксах и маках, так что им на DX, как чисто виндовую плюшку, глубоко фиолетово.

Quote (designer)
Есть ещё предложения кроме конструктора?

Я думю не стоит хвататься сразу целиком за конструктор, нужно делать помодульно - например реализовать универсальный расширяемый редактор карт и функции загрузки/выгрузки карт, созданных на его основе, чтобы их можно было не только в конструкторе использовать, а, скажем, напрямую импортировать в своё приложение как модуль.
 
designerДата: Среда, 30.06.2010, 19:56 | Сообщение # 19
Майор
Группа: Пользователи
Сообщений: 90
Награды: 0
Репутация: 0
Статус: Offline
Список модулей в студию.

...игры взрастили человеческую цивилизацию...
 
ninthДата: Четверг, 01.07.2010, 13:38 | Сообщение # 20
Admin
Группа: Администраторы
Сообщений: 1582
Награды: 5
Репутация: 46
Статус: Offline
ну ты как скажешь... )) Я же не утверждал что уже разработал, я всего лишь высказал предположение.
Редактор - это основа всего, т.к. например тот же ИИ должен ориентироваться на карте, коллизии опять же основываются на построении карты, мышетыкалка (управление) туда же. В отдельные самостоятельные модули можно вынести разве что разные типы камер да может какие-то шаблоны внутриигровой логики. Проще по-моему на редактор постепенно навешивать функции, например, насколько я помню, многие редакторы позволяют прям внутри не выходя, тестировать созданный уровень.
 
designerДата: Пятница, 02.07.2010, 17:14 | Сообщение # 21
Майор
Группа: Пользователи
Сообщений: 90
Награды: 0
Репутация: 0
Статус: Offline
В общем желаю удачи, а мне тут ещё свои обязонасти с ассоциацией выполнять.

...игры взрастили человеческую цивилизацию...
 
BlackCatДата: Вторник, 06.07.2010, 11:15 | Сообщение # 22
Подполковник
Группа: Проверенные
Сообщений: 144
Награды: 0
Репутация: 1
Статус: Offline
Quote (ninth)
Проще по-моему на редактор постепенно навешивать функции, например, насколько я помню, многие редакторы позволяют прям внутри не выходя, тестировать созданный уровень.

Так ить тогда проще изначально на модульную структуру ориентироваться. Тогда будет проще - новый модуль дописал и прикрутил тут же. smile В результате функционал будет расти постепенно, но неотвратимо. smile


http://alphahole.do.am - версия 0.015 вышла 22.02.10
 
ninthДата: Среда, 07.07.2010, 00:08 | Сообщение # 23
Admin
Группа: Администраторы
Сообщений: 1582
Награды: 5
Репутация: 46
Статус: Offline
Quote (BlackCat)
Так ить тогда проще изначально на модульную структуру ориентироваться.

Дык, а я о чём? ) Вот только вопрос в том ка бы так эту модульность реализовать чтоб она не сильно ресурсов жрала и в то же время была удобной для дальнейшей работы
 
BlackCatДата: Суббота, 10.07.2010, 14:35 | Сообщение # 24
Подполковник
Группа: Проверенные
Сообщений: 144
Награды: 0
Репутация: 1
Статус: Offline
М-м-м, продумать/спионерить грамотное разбиение на разделы по функционалу. После чего соорудить основной класс, в котором будет API и через который будут работать все модули. Типа как в Miranda-IM. А дальше уже будет видно - что стоит сразу засунуть в основной класс, а что оставить на откуп модулям.

Ну вот как-то так что-ли.


http://alphahole.do.am - версия 0.015 вышла 22.02.10
 
ninthДата: Воскресенье, 11.07.2010, 13:25 | Сообщение # 25
Admin
Группа: Администраторы
Сообщений: 1582
Награды: 5
Репутация: 46
Статус: Offline
Да есть уже одна идейка из всяких модульных CMS взял, возможно скоро покажу первые наброски
 
unkierДата: Пятница, 16.07.2010, 10:10 | Сообщение # 26
Лейтенант
Группа: Пользователи
Сообщений: 55
Награды: 0
Репутация: 2
Статус: Offline
Quote (ninth)
Да есть уже одна идейка из всяких модульных CMS взял, возможно скоро покажу первые наброски

где наброски ? пора показывать smile на чем хоть делаешь если не секрет ?
 
ninthДата: Понедельник, 19.07.2010, 13:02 | Сообщение # 27
Admin
Группа: Администраторы
Сообщений: 1582
Награды: 5
Репутация: 46
Статус: Offline
Quote (unkier)
где наброски ?

Вечером покажу, как до дома доберусь ) На выходных к компу не подходил - лето )
Quote (unkier)
на чем хоть делаешь если не секрет ?

Питон, на чём же ещё ))
 
ninthДата: Вторник, 20.07.2010, 01:58 | Сообщение # 28
Admin
Группа: Администраторы
Сообщений: 1582
Награды: 5
Репутация: 46
Статус: Offline
Прилепил наброски. Сейчас это представляет собой первый прототип ядра и два куска кода из "примеров", оформленные как компоненты (wx-интерфейс и камера)
Завтра попробую объяснить как это работает - сейчаc голова слабо соображает.. хронический недосып - пойду лечиться здоровым сном )
Прикрепления: ProtoMap.zip (22.0 Kb)
 
ninthДата: Вторник, 20.07.2010, 11:30 | Сообщение # 29
Admin
Группа: Администраторы
Сообщений: 1582
Награды: 5
Репутация: 46
Статус: Offline
Итак, как уже говорил, общая идея спёрта из модульных CMS. Суть: есть ядро и есть модули (компоненты), весь функционал отдан на откуп модулям. Ядро обеспечивает взаимодействие этих модулей и единый интерфейс работы с ними.
На данный момент структура следующая: все подключаемые компоненты наследуются от класса BaseComponent и находятся в папке components. Ядро при старте проверяет все файлы (кроме файлов, обозначенных в restrict.lst) в этой папке и ищет все классы, наследующиеся от BaseComponent, после чего создаёт по одному экземпляру каждого класса. Затем последовательно выполняются следующие действия:

1. Метод set_start_settings - в эту процедуру передаётся словарь, прочитанный из файла config (в корне программы) если в нём присутствует секция с названием модуля, в противном случае передаётся пустой словарь. Используется для передачи компоненту каких-то базовых параметров, если это необходимо. Формат - ключ-значение в текстовом виде (возможно сделаю юникод для значений). Компонент должен обработать этот словарь самостоятельно. Если данная процедура не переопределена, то процедура базового класса просто сохраняет ссылку на словарь как self.settings

2. Метод set_global_dictionary - передаётся ссылка на глобальный словарь, который будет использоваться для взаимодействия между компонентами, в т.ч. компонентами и ядром. Формат словаря свободный, но рекомендуется использовать вложенный словарь для каждого компонента. Ключом вложенного словаря в этом случае должна являться аббревиатура (короткое название) компонента.

3. before_direct_import - вызывается без параметров. Сюда помещают действия, которые компоненту необходимо выполнить до инициализации DirectStart, например изменение разрешения или переключение в полноэкранный режим.

4. Выполняется импорт DirectStart (базовая инициализация графики звука и пр.)

5. Метод after_direct_import - вызывается без параметров. Осуществляются все оставшиеся действия по инициализации компонента.

-------------------------

Имена (self.name) всех компонентов должны быть уникальными.

-------------------------

В ближайшее время планирую реализацию порядка загрузки модулей на основании "веса" и отслеживание зависимостей (если какой-то модуль требует наличия другого модуля)

-------------------------

На данный момент есть три работающих компонента
sample - минимальный компонент, просто печатает "It's HelloWorld sample module."
wxframe - оборачивает окно панды в GUI wx, показывает пример вызова до инициализации DirectStart. Вероятно, будет развиваться как базовая оболочка в которую можно будет навешивать свои элементы управления.
sampleCamera - реализует альтернативное управление камерой, показывает работу с конфигом и глобальным словарём.

=======================

В итоге это всё нам даёт то самое построение по кирпичикам-компонентам с одной стороны, а с другой - чёткую реализацию разделения областей работы - программеры, работающие над ядром; программеры, создающие модули; конечные пользователи/дизайнеры, которые из модулей собирают то, что им требуется.

 
BlackCatДата: Среда, 21.07.2010, 20:49 | Сообщение # 30
Подполковник
Группа: Проверенные
Сообщений: 144
Награды: 0
Репутация: 1
Статус: Offline
Может стоит привлечь народ с оффорума? По идее sourceforge или googlecode должны некоторым образом ускорить разработку. Если к ней еще народ подключится. А в случае такой хорошей идеи явно кто-то захочет внести свою посильную лепту.

http://alphahole.do.am - версия 0.015 вышла 22.02.10
 
Форум Panda3D - по русски » Общий форум » Флудильня » Сообщество
  • Страница 2 из 10
  • «
  • 1
  • 2
  • 3
  • 4
  • 9
  • 10
  • »
Поиск: