HLFX.Ru Forum Страницы (5): [1] 2 3 4 5 »
Показать все 66 сообщений этой темы на одной странице

HLFX.Ru Forum (https://hlfx.ru/forum/index.php)
- Наши проекты (https://hlfx.ru/forum/forumdisplay.php?forumid=1)
-- XashNT: Среда разработки (https://hlfx.ru/forum/showthread.php?threadid=5503)


Отправлено Дядя Миша 04-05-2020 в 19:27:

XashNT: Среда разработки

Вообще, я тут подумал. Вы же действительно ожидаете что в комплекте с движком сразу будет идти среда разработки? Ну такая, как сейчас оно принято, то есть сразу с кнопкой "Создать новый проект", там сохранить его настройки, редактор уровней с 3D-видом? Потому что я в силу инерционности мышления до сих пор не придаю этому особого значения, ну хаммер, консольные утилиты, батники, КМК для разработки это довольно естественный процесс. Но похоже что новое поколение видит разработку игр во первых WYSIWIG, т.е. чтобы все изменения были видны реалтайм, а во вторых - чтобы всё происходило в одной среде, т.е. сам факт привязки к единому редактору их не пугает нисколько. Это весьма важный вопрос на самом деле, т.к. ваш ответ может фундаментально повлиять на дальнейшую архитектуру движка. Разумеется у меня есть и свои соображения на этот счёт, но я же торжественно пообещал учитывать мнение пользователей?
Ну вот. Голосуем.

__________________
My Projects: download page

F.A.Q по XashNT
Блог разработчика в телеграме

Цитата:

C:\DOCUME~1\C4C5~1\LOCALS~1\Temp\a33328if(72) : see declaration of 'size_t'


Отправлено Cybermax 04-05-2020 в 20:42:

Может моё мнение покажется не очень ценным, но я за старую парадигму. Модели оружия я вообще в двух разных редакторах ковыряю, потом компилирую батриком studiomdl, карты тоже по старинке, накубал, сохранил в отдельную папку и компилируешь батником. А когда всё в одном, это непонятно, это переучиваться надо.


Отправлено KiQ 04-05-2020 в 21:28:

Ну я обычно как делал, заводил отдельную папку под мод, в ней папку SDK, туда кидал fgd, свежие тулзы и бантики к ним (батники собсно я сам писал, как мне удобно), то есть по мне с движком должен идти минимальный набор тулзов и универсальные батники для каждой из них, которые при случае можно отредачить под себя. Ну а дело остаётся за поддержкой NT в том же джеке. Написание же полноценной среды разработки зачастую ещё геморойнее написания самого движка, да и как в случае с bsp делать WYSIWIG редактор, вопрос из ряда риторический, имхо. Фоновую рекомпиляцию разве что делать, но это уже извращение.

__________________
-Brain is dead-


Отправлено Дядя Миша 04-05-2020 в 21:31:

Интегрированные среды не предполагают:
А. редактирования моделей (для этого есть Макс\Блендер)
B. редактирования текстур (для этого есть Котошоп)
С. редактирования звуков (для этого есть Аудишн)

Их задачи - менеджмент ресурсов, редактирование сцен, редактирование материалов, скриптование событий. Т.е. как бы модели в любом случае придётся ковырять в отдельном редакторе, но. Интегрированая среда имеет простенький функционал для редактирования моделей - на уровне моего модельвьювера, ну там эвентов добавить, аттачменты пододвинуть и так далее. Естественно ставишь модель - сразу видно как в руках оружие лежит, можно пододвинуть без внешней перекомпиляции. Т.е. такие простые действия. Редактирование уровня - ну тут конечно сложнее. Потому что современные движки с брашами не работают, значит процесс редактирования упрощенный. Там либо расстановка моделей, либо редактор ландшафта. Но в UE конечно и брашы есть тожы.

Добавлено 05-05-2020 в 00:31:

Цитата:
KiQ писал:
Ну а дело остаётся за поддержкой NT в том же джеке.

С этим есть оч. большие проблемы. На данном этапе я могу подключить эту поддержку но, очень скоро возможности ксаша выйдут за рамки задач Джека и опять получится идиотская ситуация "это есть. но редактор не поддерживает". И дело даже не в сорцах, а в архитектуре самого джека.
Я не хочу делать очередной Q-подобный движок, уже вон Волатила есть.

Цитата:
KiQ писал:
Написание же полноценной среды разработки зачастую ещё геморойнее написания самого движка

Это из личного опыта?

__________________
My Projects: download page

F.A.Q по XashNT
Блог разработчика в телеграме

Цитата:

C:\DOCUME~1\C4C5~1\LOCALS~1\Temp\a33328if(72) : see declaration of 'size_t'


Отправлено KiQ 04-05-2020 в 21:50:

Из личного, да) ну если в плане менеджмента ресурсов, и какого-нибудь графа сцены, логики, то да, было бы удобно. Но вот как в нем кубать - это вопрос

__________________
-Brain is dead-


Отправлено nemyax 04-05-2020 в 21:54:

Редактор желательно специализированный для настройки энтитей и логики уровня. Геометрию ему уметь не надо, пусть подгружает стороннюю. При этом подходе геометрия — точно такой же ресурс, как текстуры и звуки.


Отправлено FiEctro 04-05-2020 в 23:01:

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

Так же хотелось бы чтобы старый ксаш и новый ксаш имели общее ядро, так сказать чтобы не отставать в развитии друг от друга.

__________________
У котёнка мокрый нос и гладенькая шерсть, у него забавный хвост и быстрых лапок шесть. Две задних, две средних и две передних лапы, такая многоножка получилася у папы.
Он ученый — папа мой — зверушек изучает, гуляет по помойкам, ловит крыс и чаек. Две крысы белокрылые и чайки две унылые покрытые пупырчатою кожей лягушат без пёрышек тоскуют и ускакать спешат.
А ещё есть муравей большой размером с гуся он пугает всех зверей, и я его боюся, когда он ковыляет на лапках на своих.
И в двери ударяет, и начинает стих: Я — муравей, воды налей! Не меньше ведра, напиться мне пора!


Отправлено Дядя Миша 05-05-2020 в 06:54:

Цитата:
nemyax писал:
Геометрию ему уметь не надо, пусть подгружает стороннюю

Брашы\террайны в любом случае предпочтительнее редактировать именно в нативном редакторе. Другой вопрос, когда кроме террайна движок больше ни во что не умеет.

А что касается прекомпиляции - так она и так есть абсолютно везде. Даже в Крае.

Цитата:
FiEctro писал:
Желательно просто сделать поддержку общепринятых форматов

Да нет никаких общепринятых форматов.

Цитата:
FiEctro писал:
Так же хотелось бы чтобы старый ксаш и новый ксаш имели общее ядро, так сказать чтобы не отставать в развитии друг от друга.

Это или такой троллинг или провокация.

__________________
My Projects: download page

F.A.Q по XashNT
Блог разработчика в телеграме

Цитата:

C:\DOCUME~1\C4C5~1\LOCALS~1\Temp\a33328if(72) : see declaration of 'size_t'


Отправлено KiQ 05-05-2020 в 07:46:

Дядя Миша как вариант сделать отдельное окошко типа Game view, где показывать результат с -fast прекомпиляцией, которая будет обновляться фоном при изменении на карте. Ну и чтобы всадом там можно было летать. А браши по сути что - замкнутые выпуклые примитивы. Если рассматривать их с такой стороны, то и получается, что упор надо делать на редактирование вертексов/фейсов (не тех, которые реперы), а это уже шаг к унификации с редактором террейна. Террейн же это по сути регулярная сетка из брашей, у которых отрезали все грани, кроме верхней. Вот в таком ключе примерно и надо смотреть, как мне кажется.

__________________
-Brain is dead-


Отправлено Дядя Миша 05-05-2020 в 08:18:

Цитата:
KiQ писал:
А браши по сути что - замкнутые выпуклые примитивы.

Не всё так просто. Браши в первую очередь - это принцип текстурирования. Именно поэтому кубать научиться на порядок легче, чем моделлить. Но это же является и серъезным ограничением в плане оптимизации.

Вообще при разработке универсального движка невероятно сложно понять, какие именно части будет переделывать пользователь под себя, а какие не поменяются никогда. Эта задача еще может быть достаточно успешно решена если сузить круг целей. Скажем сделать смелые допущения, что наш движок годится только для коридорных шутеров. Сейчас вот повсеместно используется подход с иерархическим вложением сцен (я когда-то планировал по такому принципу делать компилируемые префабы). Но опять таки, что нам даёт эта иерархия? Значит ли это, что мы можем иерархически отсекать видимость? Значит ли это, что трансформация родителя должна применяться к трансформации вложенных объектов? А как быть с коллизией? Наконец как эти объекты должны перемещаться между уровнями, если весь уровень состоит из одноранговых объектов? А как это должно сериализовываться? Причём некоторые из этих вопросов заведомо лишены смысла, если мы имеем дело с какой-нибудь MMO RPG и приобретают особенную остроту, если это нечто вроде сталкера - условно бесшовный мир, но при этом однопользовательский. Где-то не нужны ни брашы ни мешы - геометрия генерится налету по ключевым точкам. Тут много всяких вопросов конечно. Иной движок пытается усидеть сразу на четырёх стульях, но в реальности не годится ни для чего. И еще есть один весьма важный момент - качество движка определяется не смелостью задумки и грамотностью реализации, а среднестатистической игрой, сделанной среднестатистическим Баджером. Разрабы нам показывают демки Adam и Viking Village, а Баджеры делают двухмерные паравозики. Отсюда и формируется отношение к движку в целом. И не то чтобы пользователь тупой. Он честно пытается сделать что-то достойное. Но очень быстро выясняется, что всё это работает только в демках. А для законченной игры в лучшем случае - вот уровень паравозиков.

Добавлено 05-05-2020 в 11:18:

Вот кстати насчёт MMO - я вспомнил, как в той теме про Unigine разрабам предъявляли, мол вы сказали, что он вполне готов для MMO, а как выяснилось - даже и рядом не валялся. Но мне кажется это черезчур разные задачи. Это как требовать от текстового редактора, чтобы он умел редактировать видео. MMO, это прежде всего сетевой бакэнд на миллионы игроков. Такое впринципе невозможно написать и отладить в теории, только по факту, под конкретные задачи. К тому же сам движок для подобных игр - это вообще малая часть, клиент. А сервер это совершенно другое. И его скорее всего разрабатывают вообще другие люди.

__________________
My Projects: download page

F.A.Q по XashNT
Блог разработчика в телеграме

Цитата:

C:\DOCUME~1\C4C5~1\LOCALS~1\Temp\a33328if(72) : see declaration of 'size_t'


Отправлено nemyax 05-05-2020 в 08:23:

Цитата:
Дядя Миша писал:
Браши в первую очередь - это принцип текстурирования. Именно поэтому кубать научиться на порядок легче, чем моделлить.

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


Отправлено KiQ 05-05-2020 в 08:39:

Собственно я ещё в первом посте своём хотел написать, что исходя из задачи, возникла мысль почему-то оставить браши для виза и коллизии, а визуализировать чисто полигональную сетку. Проекционную матрицу для текстур в редакторе можно также строить на лету, а в движке уже будут читаться uv из скомпиленной карты. Да собственно при условии фоновой рекомпиляции эту матрицу нужно обновлять лишь при конкретном редактировании ьекстурных координат, то есть даже в редакторе для уже затекстуренных объектов достаточно кэшированной матрицы, которая и пойдёт дальше в карту

__________________
-Brain is dead-


Отправлено Дядя Миша 05-05-2020 в 09:23:

Цитата:
nemyax писал:
Текстурировать проекционно можно и в полигонилках.

Да можно-то можно, но как это стрипифицировать потом?

Впрочем это всё некритично. Важен сам подход, который не оттолкнёт пользователя. Если ты умеешь только кубать - кубай. Ну это как если человек умеет только на ява.скрипте писать, ну что ж поделать - пусть пишет. KiQ я не тебя имел в виду, я вспомнил интервью этого Носкова.

__________________
My Projects: download page

F.A.Q по XashNT
Блог разработчика в телеграме

Цитата:

C:\DOCUME~1\C4C5~1\LOCALS~1\Temp\a33328if(72) : see declaration of 'size_t'


Отправлено FiEctro 05-05-2020 в 09:26:

Цитата:
Дядя Миша писал:
Да нет никаких общепринятых форматов.


Как нет? .obj ,.fbx, .blend, .dds, .tga и т.д.

Цитата:
Дядя Миша писал:
Это или такой троллинг или провокация.


Почему троллинг? Удобно же когда всё в одном, не?

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

__________________
У котёнка мокрый нос и гладенькая шерсть, у него забавный хвост и быстрых лапок шесть. Две задних, две средних и две передних лапы, такая многоножка получилася у папы.
Он ученый — папа мой — зверушек изучает, гуляет по помойкам, ловит крыс и чаек. Две крысы белокрылые и чайки две унылые покрытые пупырчатою кожей лягушат без пёрышек тоскуют и ускакать спешат.
А ещё есть муравей большой размером с гуся он пугает всех зверей, и я его боюся, когда он ковыляет на лапках на своих.
И в двери ударяет, и начинает стих: Я — муравей, воды налей! Не меньше ведра, напиться мне пора!


Отправлено KiQ 05-05-2020 в 09:59:

FiEctro obj текстовый, fbx тоже, хотя и поддерживает вроде с 7 версии бинарное представление, но опять же, как говорит нам Википедия - FBX проприетарный недокументированный формат. blend привязан к редактору, а именно к блендеру, именно в нем он используется наиболее полно, и многая инофрмация, которая в него пишется просто избыточна для игрового движка. Так что список весьма странный. Джек вроде давно умеет экспортировать уровни в модельку. По поводу dds и tga - зачем тащить весь dds, если и так используется DXT компрессия насколько я помню, и уже есть отлаженный конвертер. Насчет террейна - я думаю стоит его сделать виртуальным объектом над геометрией, то есть чтобы можно было выделить некоторое количество полигонов и преобразовать их в террейн и уже в рамках этого работать со слоями, травкой и прочим функционалом (ну как модификатор короче).

__________________
-Brain is dead-


Временная зона GMT. Текущее время 09:46. Страницы (5): [1] 2 3 4 5 »
Показать все 66 сообщений этой темы на одной странице

На основе vBulletin версии 2.3.0
Авторское право © Jelsoft Enterprises Limited 2000 - 2002.
Дизайн и программирование: Crystice Softworks © 2005 - 2024