Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Игры";
Текущий архив: 2004.03.05;
Скачать: [xml.tar.bz2];

Вниз

Консоль в игре и множество настраиваемых параметров   Найти похожие ветки 

 
NailMan   (2003-08-15 17:19) [0]

Народ, а как вы относитесь к консоли ala Квак3 в игре? Нужна/ненужна?
Не в шутерах, а в вообще любой игре.
И вообще как вы относитесь к предоставлению юзеру широких возможностей настройки движка под свою машину, т.е. не просто разрешение/битность/детализация скроллбаром, а действительно "тонкие" настройки режимов работы рендерера, енджина, мозгов и т.д. (как в кваке3)?

Я вот вчера дописал движок консоли, за основу функциональности я взял кваковскую(реализация ессно моя): распознавание команд, контексный выбор команд по введенным символам(как в Q3 клавишей TAB), распознавание и вычленение параметров для команд.
Типа обучил стандартным командам кваки: quit(exit), condump, cmdlist, clear и несколько других.

Хотя мой проект к шутерам не относится никак, но необходимость внедрения консоли(можно будет ее включать/выключать в опциях игры) я увидел в связи с некоторыми ограничениями по игровым менюхам настроек.
Моя архитектура позволяет имень практически неограниченное число менюшных экранов, но все таки на разные "тонкие" настройки движка, которые среднестатистический юзверь правильно осознать не сможет выносить в меню как-то не рентабельно. Тем более размеры экрана не всегда позволяют расположить на нем много элементов меню, так как они тоже довольно габаритны(имеется ввиду в случае собственного GUI, какое у меня и реализовано уже). Можно конечно сделать тонкие настройки на VCL и вынести их наружу(DLL) или переключать режимы 3D/Win GUI, но, я думаю, это будет некошерно и некрасиво.

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

Ну что скажете по поводу сабжа?

ЗЫ: В понедельник я выложу полную демо-версию(*.EXE) своего GUI на сайт. Если будет кому интересно посмотреть на него, вот требования:
DirectX 8 минимум, проц не слабее 400MHz и видеокарта не слабее TNT2. Рекомендуемое(возможно уже будет минимальное) разрешение 800x600.


 
cyborg   (2003-08-15 18:44) [1]

) Никак.
Зы) интересно


 
хм   (2003-08-15 22:03) [2]

Три мысли:
1. Для отладки удобно.
2. В UT все настраивается без консоли (кроме специфических вещей типа гравитации етц)
3. Очень мощную консоль можно сделать с помощью RTTI.
4. Кваковская консоль уступает анрыловской, так как анрыловская объектно-ориентирована.(во загнул)

Мыслей оказалось четыре =)


 
хм   (2003-08-15 22:04) [3]

Тонкие настройки можно вывести в TTreeView, или его аналог


 
sibvrv   (2003-08-18 09:43) [4]

Console нужна всем! Делай :)


 
NailMan   (2003-08-18 10:05) [5]

Ну вот только что я выложил демку с моей консолью. Просьба если кому не трудно оценить сие творенье.

To -> хм ©
1. Для отладки удобно.
В смысле вести туда лог или конфигурить какие-то настройки в процессе работы отладки программы? Для лога проще файло вести.

2. В UT все настраивается без консоли (кроме специфических вещей типа гравитации етц)
Ну это и так понятно, они там GUI-интерфейс сделали более менее приемлемый для размещения большого количества настроек на окнах. К тому же игра чисто сетевая и параметров здесь должо быть немаленькое количество.

3. Очень мощную консоль можно сделать с помощью RTTI.
Что это такое - где посмотреть?

4. Кваковская консоль уступает анрыловской, так как анрыловская объектно-ориентирована.(во загнул)
Ну такие пуперские возможности нафиг. Вполне сгодится и ala quake3. Правда с некоторыми доработками в плане команд.

Тонкие настройки можно вывести в TTreeView, или его аналог
Имеется в виду VCL?
Опять-таки для внутриигровой архитектуры это уже не покатит, так как это лишний пустой вес экзеки и несовместимый с идеологией интерфейс. Самому писать этот класс будет довольно геморно. Я с листбоксом-то еще не закончил, слайдер осталось вылизать до идеала.

To -> sibvrv ©
Console нужна всем! Делай :)
Уже сделал.


 
Silentor   (2003-08-18 20:22) [6]

Консоль нужна, хотя бы для ввода читов :)
А вообще-то касательно настройки параметров: адвансед юзер пускай копается, а про пресеты настроек забывать не следует.


 
miek   (2003-08-18 20:44) [7]

Консоль только для маньяков. Без обид.


 
Micah'GF   (2003-08-18 21:52) [8]

Во время написания и отладки консоль очень нада!!! :}
После релиза игрухи констоль оставить, но вырезать все отладочные команды.
Исходник консоли не покажешь??? Хотябы основной скелет!?!?!?


 
Micah'GF   (2003-08-18 21:52) [9]

Во время написания и отладки консоль очень нада!!! :}
После релиза игрухи констоль оставить, но вырезать все отладочные команды.
Исходник консоли не покажешь??? Хотябы основной скелет!?!?!?


 
NailMan   (2003-08-19 10:03) [10]

To -> Silentor ©
Консоль нужна, хотя бы для ввода читов :)
Вообще-то читы будут доступны только мне(разработчику). Сам режим читерства(для отладки игрового процесса) может быть включен только если в игре будет присутствовать некий файл-ключ с неким содержимым. Из самого экзешника содержимого не узнать. Так что читов здесь почти не будет. Это все таки не шутер какой-нить.

А вообще-то касательно настройки параметров: адвансед юзер пускай копается, а про пресеты настроек забывать не следует.
Что есть пресеты? Low Detail, High Detail? Дык это изжиток прошлого. У меня собсно нет такой градации детализации. Все модельки имеют несколько LODов, которые меняются динамически. Поэтому нет смысла делать эти пресеты.

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

Сколько я видел игрушек, которые имели настройки в виде: Low, Normal, High и более ничего - это имхо неуважение к юзверю. Игра должна тонко настраиваться юзверем. И если таких настроек много, то надо сделать подсказки, на что эта фича влияет и что она собсно делает. У себя в настройках я такую подсказку сделал. В консоли может быть сделаю тоже самое, типа примерно так:

> help condump
{выводит в history}
> Формат: CONDUMP <имя файла>
> Сохраняет содержимое консоли в указанный файл на диске.
> Имя может быть с полным путем или без него.

> help god
{выводит в history}
> Формат: GOD
> Включает/выключает режим неуязвимости.
> Режим доступен только разработчику.

To -> miek ©
Консоль только для маньяков. Без обид.
Ну вот для такого контингента я и стараюсь. Не всем же нравятся менюшки. Типа надо думать вперед и стараться охватить разные версии игроков(юзверей, маньяков) :-)

To -> Micah"GF
Могу залить только завтра, так как сегодня исходники на работу не брал.

Сама конструкция консоли очень жестко привязана к конструкции ядра(не на основе TThread). Многие моменты могут быть непонятны.


 
Всеволод Соловьёв   (2003-08-21 15:43) [11]

>Кваковская консоль уступает анрыловской
Тут есть несколько замечаний :)
Анрыловская круче в том смысле, что она объектно-ориентирована, НО:
1) кваковская всем более привычна
2) кваковская более проста в освоении чем анрыловская, но возможностей там не меньше. Просто они немножко не так там сделаны.
3) как принцип анрыловская может быть лучше, но как реализация - анрыловская немножко отстойная (нет дополнения по табу етц)

2NailMan
Для отладки удобно...
в кваках (и халфе соответсвенно) есть команда developer (1/0). По ней лог или высвечивается в консоль или нет.
И еще такая вещь, как светить все, что пишется в консоль (когда она скрыта) на экран. Максимум три-четыре строчки, чтоб не захламлять пол-экрана.
Слюшай, как у тебя с фпсами? напиши свою конфигурацию и сколько фпсок. Интересно. У некоторых (правда, в 2д) выходит 100, 200 и больше, а у некоторых - 2, 3, 10 :)


 
NailMan   (2003-08-22 12:33) [12]

To -> Всеволод Соловьёв ©
в кваках (и халфе соответсвенно) есть команда developer (1/0). По ней лог или высвечивается в консоль или нет.
Ну ихние логи не такие габаритные по инфе как мои. Я свой лог(идеологию) брал у Анрила. В лог пишется подробная инфа о действиях и в случае включения подробного лога записываются детали загрузки моделек (лист тестур, моделек, какие объекты грузятся и т.п.). В консоль это по-хорошему не влезет. Консоль я думаю можно будет использовать для отладки мозгов. Пущай туда пишут свои действия, чтобы можно было в риалтайме наблюдать их действия. Вот это я думаю будет полезно.

Слюшай, как у тебя с фпсами? напиши свою конфигурацию и сколько фпсок. Интересно. У некоторых (правда, в 2д) выходит 100, 200 и больше, а у некоторых - 2, 3, 10 :)
Вчера я переделал архитектуру шрифтов и сегодня переделаю сами менюшки на новую технологию рендера. Раньше я юзал для вывода своих шрифтов и элементов менюшек TD3DXSprite. Очень тормозно получается. Переделал шрифты на вертексный буфер (вся строчка текста отрисовывается за один вызов Drawprimitive) и прирос ФПС
был очень высокий за счет этого.

Моя тачка:
Athlon 750Mhz (slotA)
512MB ram (133 Mhz)
GeForce 4 Ti 4600 [300/650]

В главной менюшке у меня сейчас(на старом варианте) ~600 ФПС.
В меню загрузки карты (где много текста) ~180 ФПС (старый вариант).
Пределав на новый способ вывод текста в меню загрузки карты стало ~240-250 fps. Сегодня думаю станет более 300.

ЗЫ: ФПСы указывал на разрешении 800 X 600 X 32bpp X 16z Fullscreen
Так уж получается что при 16bpp выходит точно такиеже цифры :-)


 
Всеволод Соловьёв   (2003-08-22 15:11) [13]

А в 3д? когда просто типа летаешь? или еще нет такого вида?


 
NailMan   (2003-08-22 17:01) [14]

В 3Д у меня ~1000-1300 fps
При этом это если в пределах экрана видна моделька "Gladiator" (можно скачать с моего сайта) в первом LOD-е, только слегка "усиленная" фейсами для большей оптимальности использования GPU. Также кубический бэкграунд(6 текстур 256x256) и звездная сфера ~2000 вершин.

В 16 битном цвете ~1500 ФПС. Максимально может достигать ~3000, но это когда кораблик далеко отлетает и моделька уже без текстур.

С несколькими объектами разной сложности в среднем получается ~350-400 fps.



Страницы: 1 вся ветка

Форум: "Игры";
Текущий архив: 2004.03.05;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.5 MB
Время: 0.011 c
1-12436
Alexey
2004-02-23 12:55
2004.03.05
Как узнать содержимое папки?


3-12228
Pako
2004-02-06 17:52
2004.03.05
SQL


1-12446
dub daze
2004-02-22 23:50
2004.03.05
работа с файлами ресурсов


1-12366
Demon_mhm
2004-02-25 12:07
2004.03.05
Есть ли такой компонент? TreeView + кнопки


11-12306
SPeller
2003-06-19 16:37
2004.03.05
KOLUtils





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский