HLFX.Ru Forum
профиль •  правила •  регистрация •  календарь •  народ •  FAQ •  поиск •  новое •  сутки •  главная •  выход  
HLFX.Ru Forum HLFX.Ru Forum > Разработка игр > Наши проекты > XashNT: блог разработчика
Часть I
Страницы (241): « Первая ... « 167 168 169 170 [171] 172 173 174 175 » ... Последняя »   Предыдущая тема   Следующая тема
Автор
Тема Новая тема    Ответить
FiEctro
Кот Арсис

Дата регистрации: Aug 2006
Проживает: код
Сообщений: 12901
Возраст: 32

Рейтинг



Цитата:
Дядя Миша писал:
Ну я имею в виду - на уровне пользователя. Допустим ты там захотел кое-что сохранить. Ты создаёшь еще один какой-то объект, или может глобальную переменную или выделяешь память?


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

Цитата:
Дядя Миша писал:
Я спрашивал про конкретный пример такой необходимости. Что это за игра со стеком объектом из 100х100х100? Ну явно не майнкрафт, там объектов на порядок больше. С другой стороны - маловероятно, чтобы на типичном игровом движке можно было бы сделать майнкрафт, он на такое не рассчитан.


Есть 2д игруха, Factorio например, там уже реально объекты со своими свойствами, и с каждым может взаимодействовать игрок.

Цитата:
Дядя Миша писал:
Нет, подожди. Мы говорили про объекты. С чего ты вдруг перескочил на геометрию?


Это предупреждая твой вопрос, зачем делать всё объектами

Цитата:
Дядя Миша писал:
Даже простой перебор массива из миллиарда элементов, это ОЧЕНЬ-ОЧЕНЬ долго. Вот это:


Так я о чём, и когда у тебя миллиард объектов это ещё очевидно, а если в течении игры у тебя там что то регулярно накапливается, как это отлаживать? Вот почему мониторинг удобен.

Цитата:
Дядя Миша писал:
Ну нет. Игровой объект - это сугубая конкретика, которую мы частично может представить абстракцией. То есть func_button можно выполнять роль двери, а не только кнопки. А Monster_barney - необязательно имеет модельку barney, это в принципе может быть любой дружественный персонаж. Если мы не хотим писать для него отдельный класс, а хотим заменить только его наборы реплик и модельку. Теоретически это вообще может быть monster_generic, у которого настраивается абсолютно всё.
Но практика показала что это дико неудобно дизайнеру. Когда у него громадный лист из monster_generic и вообще непонятно какой из них кто.


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

Цитата:
Дядя Миша писал:
И в итоге нормально не отыграет ни одну.


Отыграет, вращение монстров для юнити ерунда, а вот по Кармаку тебе бы пришлось плодить дополнительное свойство у монстра.

Цитата:
Дядя Миша писал:
там очень примитивные и глючные объекты - те, которые делали сами разработчики.


Как раз объекты созданные разработчиками очень стабильные.

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

Отредактировано FiEctro 12-02-2023 в 14:41

Сообщить модератору | | IP: Записан
Сообщение: 212721

Старое сообщение 12-02-2023 14:38
- За что?
 Дядя Миша
racing for fish

Дата регистрации: Oct 2005
Проживает: Кубань
Сообщений: 32213
Нанёс повреждений: 392 ед.

Рейтинг



Цитата:
(_-=ZhekA=-_) писал:
а чтобы принцип был, как а анриле примерно, но использовался твой язык )

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

Цитата:
(_-=ZhekA=-_) писал:
но если собрать проект, то будет вылет )

Оно при сборке вероятно автоматически компилится в С++.

Добавлено 12-02-2023 в 18:46:

Цитата:
FiEctro писал:
Да просто переменную глобальную создаешь и записываешь в неё. Ничего выделять не надо, да и зачем этот гемор с регулярным выделением и очисткой памяти?

Так у памяти тоже есть время жизни. Сквозь всю игру, или только на этом уровне. Или пока жив конкретный объект.

Цитата:
FiEctro писал:
Есть 2д игруха, Factorio например, там уже реально объекты со своими свойствами

В 2D игрухе - трёхмерный стек? Ты явно чего-то недоговариваешь

Цитата:
FiEctro писал:
а если в течении игры у тебя там что то регулярно накапливается, как это отлаживать?

Но объекты не могут накапливаться "просто так". Если мы перешли на новый уровень, то старые объекты все удалились, а новые создались. Исключение составляют только глобальные объекты. Но они не накапливаются и не удаляются. Создаются один раз в начале игры и всё.

Цитата:
FiEctro писал:
То что ты перечисляешь не объекты, а классы. Объекты их наследуют

Похоже ты смешал воедино игровые объекты и классы С++.

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

Приведи пример объекта без контекста.

Цитата:
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'

Сообщить модератору | | IP: Записан
Сообщение: 212722

Старое сообщение 12-02-2023 15:46
-
(_-=ZhekA=-_)
Житель форума

Дата регистрации: Jan 2006
Проживает: Москва
Сообщений: 3890
Возраст: 36

Рейтинг



Цитата:
Дядя Миша писал:
Ну если в качестве блюпринтов представить разные логические объекты, то да, наверное что-то такое можно попробовать сделать.

Но, только, чтобы на этих принтах можно было сделать полностью любую игру )
Цитата:
Дядя Миша писал:
Оно при сборке вероятно автоматически компилится в С++.

Мне не особо важно, как оно там устроено\работает, мне важно, что на принтах онли, можно сделать почти все, что угодно и это будет работать )

__________________
Kiss my ass if you don't like my Ford!
------------------------------------------
Game Area51 Update 1
First Person Shooter Released Jul 24, 2017
The game is a 3d shooter with the elements of the quest.

http://button.moddb.com/download/medium/125531.png

Сообщить модератору | | IP: Записан
Сообщение: 212723

Старое сообщение 12-02-2023 16:07
- За что?
FiEctro
Кот Арсис

Дата регистрации: Aug 2006
Проживает: код
Сообщений: 12901
Возраст: 32

Рейтинг



Цитата:
Дядя Миша писал:
Ну вообще-то я имел в виду инди-девелоперов. Но и авторы Юнити тоже знаешь ли лажают. Физику мешка с гамном напомнить?


Я не знаю о какой физике мешка с гамном речь, в Юнити обычный PhysX, и использует для физики он все PhysXовские констрейнты как в примерах PhysX. Если ты про плеер контроллеры то на Юнити множество его реализаций, и в большинстве инди проектов над его реализацией особо не заморачиваются, из-за чего управление игроком не очень адекватное в сравнении с другими проектами. Ты можешь и свой плеер контроллер написать к примеру.

Цитата:
Дядя Миша писал:
В Ксаш-моде привязать монстра к ротатабле совсем несложно. И будет вращающийся монстр. Только он не должен покидать пределы ротатабли, иначе это будет глупо выглядеть. С другой стороны - есть же стационарные монстры, типо того же Чтона.


Это просто парент, а я говорю о наследовании свойств объектом из разных скриптов. Это как в ООП.

Цитата:
Дядя Миша писал:
Приведи пример объекта без контекста.


Point entity. Просто точка без свойств.

Цитата:
Дядя Миша писал:
Похоже ты смешал воедино игровые объекты и классы С++.


В том и дело, что все скрипты Юнити это классы, иницилизация которых происходит с иницилизацией объекта к которому они привязаны.

Цитата:
Дядя Миша писал:
Так у памяти тоже есть время жизни. Сквозь всю игру, или только на этом уровне. Или пока жив конкретный объект.


Пока жив объект да. Но можно его вынести в Don't destroy и тогда он станет глобальным.

Цитата:
Дядя Миша писал:
Но объекты не могут накапливаться "просто так". Если мы перешли на новый уровень, то старые объекты все удалились, а новые создались. Исключение составляют только глобальные объекты. Но они не накапливаются и не удаляются. Создаются один раз в начале игры и всё.


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

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

Отредактировано FiEctro 12-02-2023 в 16:21

Сообщить модератору | | IP: Записан
Сообщение: 212724

Старое сообщение 12-02-2023 16:19
- За что?
 Дядя Миша
racing for fish

Дата регистрации: Oct 2005
Проживает: Кубань
Сообщений: 32213
Нанёс повреждений: 392 ед.

Рейтинг



Цитата:
(_-=ZhekA=-_) писал:
Но, только, чтобы на этих принтах можно было сделать полностью любую игру )

Полностью любая игра - это далеко не только движок.

Цитата:
FiEctro писал:
Я не знаю о какой физике мешка с гамном речь

Я обозревал игры Носкова, ты читал эти обзоры. Вот там физика мешка с гамном. Как впоследствии выяснилось - это дефолтная физика игрока в четвертом Юнити, автор игры тут непричём. Как выяснилось дополнительно - пример этой физики был написан разработчиками Юнити на коленке буквально в последний момент и в надежде что никто его не будет использовать в играх, а напишет свою и нормальную физику. И конечно-конечно-конечно же, эта физика стала визитной карточкой четвертого Юнити.
Цитата:
FiEctro писал:
в Юнити обычный PhysX, и использует для физики он все PhysXовские констрейнты

PhysX симулирует твёрдые тела, жидкости, надувных коров и рвущиеся тряпки. Симулировать поведение игрока из коробки он очевидно не может, равно как и любой другой физический движок. Потому что во всех играх физика игрока отличается и привязана к жанру. Поэтому разработчики Юнити по быстрому что-то там сделали на Шарпе весьма неоптимальное, просто для примера. И это попало в кучу игр.
Цитата:
FiEctro писал:
Ты можешь и свой плеер контроллер написать к примеру.

Абсолютно любой человек может прийти к успеху и стать миллиардером. Или известным учёным и получить Нобелевку. Или же первым человеком на Марсе. Абсолютно любой, да.
Цитата:
FiEctro писал:
а я говорю о наследовании свойств объектом из разных скриптов

Ну как правило от подобного наследования нет особого смысла. Т.к. все необходимое достигается простым склеиванием объектов через парент-систему. Это как в математике. Если у тебя есть два объекта A и B, то их сложение даст объект AB, но не C.

Цитата:
FiEctro писал:
Point entity. Просто точка без свойств.

Да, ты действительно так и не разобрался в HL SDK.

Цитата:
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'

Сообщить модератору | | IP: Записан
Сообщение: 212725

Старое сообщение 12-02-2023 19:01
-
FiEctro
Кот Арсис

Дата регистрации: Aug 2006
Проживает: код
Сообщений: 12901
Возраст: 32

Рейтинг



Цитата:
Дядя Миша писал:
Я обозревал игры Носкова, ты читал эти обзоры. Вот там физика мешка с гамном. Как впоследствии выяснилось - это дефолтная физика игрока в четвертом Юнити, автор игры тут непричём. Как выяснилось дополнительно - пример этой физики был написан разработчиками Юнити на коленке буквально в последний момент и в надежде что никто его не будет использовать в играх, а напишет свою и нормальную физику. И конечно-конечно-конечно же, эта физика стала визитной карточкой четвертого Юнити.


Четвертая версия Юнити это очень древняя версия. Возможно тогда физика и правда была какая то другая, я хз - не юзал.

Цитата:
Дядя Миша писал:
PhysX симулирует твёрдые тела, жидкости, надувных коров и рвущиеся тряпки. Симулировать поведение игрока из коробки он очевидно не может, равно как и любой другой физический движок. Потому что во всех играх физика игрока отличается и привязана к жанру. Поэтому разработчики Юнити по быстрому что-то там сделали на Шарпе весьма неоптимальное, просто для примера. И это попало в кучу игр.


Ну вот ты и ответил почему в Юнити оно так, а никак иначе. Движок ни к какому жанру не привязан. Но к слову написание плеер контролера с нуля вообще задача очень нетривиальная, и может быть реализована несколькими способами в зависимости насколько ты хочешь заморочиться. Я помню собирал одну карту с холмистой местностью для ксаша, так я там даже на ровном месте запинался, а иногда и проваливался вниз, ну я же не пишу теперь при каждом поводе что в ксаше физика плохая? Хорошая там физика, просто на такие вещи не предназначена.

Цитата:
Дядя Миша писал:
Абсолютно любой человек может прийти к успеху и стать миллиардером. Или известным учёным и получить Нобелевку. Или же первым человеком на Марсе. Абсолютно любой, да.


Да ладно, ты вон предлагал вообще моделерам писать плагины для их 3д пакетов сОмостоятельно

Цитата:
Дядя Миша писал:
Ну как правило от подобного наследования нет особого смысла. Т.к. все необходимое достигается простым склеиванием объектов через парент-систему. Это как в математике. Если у тебя есть два объекта A и B, то их сложение даст объект AB, но не C.


Парент система передаёт координаты, больше ничего. Ты просто сделаешь больше объектов и более нестабильную физику таким подходом. Сам подумай, зачем тебе для например ротатабли хранить две координаты XYZ и два значения угла по XYZW в глобальном и локальном пространстве? Хотя и в Юнити тоже иногда так делают.

Цитата:
Дядя Миша писал:
Да, ты действительно так и не разобрался в HL SDK.


Да, ты действительно так и не разобрался что такое объект

Цитата:
Дядя Миша писал:
Что ты называешь скриптами? СиШарп?


Файл скрипта с СиШарп кодом внутри, который подключается как компонент объекта.

Цитата:
Дядя Миша писал:
Ну это неправильно. Это ошибочное решение, но зато для разработчиков Юнити такое сделать намного проще. А голова болеть будет уже у индюков. Потому что абсолютно любую игру можно разбить на уровни, т.е. дискретизировать её. И разработчик игры будет точно знать - мы вышли с уровня, все объекты удалились, сохранилось только то что мы сами захотели - например достижения.
Ну и дальше у нас выбор - либо грузить следующий уровень, либо показать игроку финальные титры.


Да собственно реализация может быть любой. Вопрос только насколько это удобно будет работать.

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

Отредактировано FiEctro 12-02-2023 в 19:45

Сообщить модератору | | IP: Записан
Сообщение: 212727

Старое сообщение 12-02-2023 19:37
- За что?
 Дядя Миша
racing for fish

Дата регистрации: Oct 2005
Проживает: Кубань
Сообщений: 32213
Нанёс повреждений: 392 ед.

Рейтинг



Цитата:
FiEctro писал:
Четвертая версия Юнити это очень древняя версия.

Ну сейчас-то какая актуальная? Пятая?

Цитата:
FiEctro писал:
Движок ни к какому жанру не привязан

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

Цитата:
FiEctro писал:
Я помню собирал одну карту с холмистой местностью для ксаша, так я там даже на ровном месте запинался, а иногда и проваливался вниз, ну я же не пишу теперь при каждом поводе что в ксаше физика плохая?

Ты так и не понял к чему я привёл тот пример с игроком. Ну ладно, может потом поймешь.

Цитата:
FiEctro писал:
Да ладно, ты вон предлагал вообще моделерам писать плагины для их 3д пакетов сОмостоятельно

Нёмыч таки написал.

Цитата:
FiEctro писал:
Парент система передаёт координаты, больше ничего

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

Цитата:
FiEctro писал:
Да, ты действительно так и не разобрался что такое объект

Я понимаю, что сказать что-то хочется, но по существу нечего. Объект это безразмерный термин, куда каждый вкладывает что-то своё.

Цитата:
FiEctro писал:
Вопрос только насколько это удобно будет работать.

Это да.

Добавлено 12-02-2023 в 23:12:

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

Я поясню почему наследование в игровых объектах, как правило не приводит к желаемому. В объектно-ориентированном языке все объекты - суть абстракция, над которой не властны физические законы. В играх объекты зажаты в жесткие рамки - их данные передаются по сети, их визуальная часть как правило не имеет обратной связи с физической и масса других мелочей, которые как правило ломают всю концепцию наследования.
Поэтому остаётся только физическая связка в трёхмерном пространстве, которая ничего не ломает и не нарушает. И всегда даёт тот результат, который ты ожидал.
А наследование таковых объектов приводит к появлению котоламповых историй на башорге, как в игре про вторую мировую свиней делали из фашистов и у свиней даже был пистолет, который они периодически пытались достать. Или поезда из персонажей в DLC фаллаута.
Оно когда в коде скрыто никто не задумывается что там происходит.
А когда его пытаются в визуальных объектах применить, обычно вот такое и происходит.

__________________
My Projects: download page

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

Цитата:

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

Сообщить модератору | | IP: Записан
Сообщение: 212728

Старое сообщение 12-02-2023 20:12
-
FiEctro
Кот Арсис

Дата регистрации: Aug 2006
Проживает: код
Сообщений: 12901
Возраст: 32

Рейтинг



Цитата:
Дядя Миша писал:
Ну сейчас-то какая актуальная? Пятая?


Версии с 2018 по текущий год. К слову народ пытался писать свои QLike и HLLike контроллеры, но сделать что то особо похожее у них не вышло, впрочем мне не показалось что физика у них совсем уж плохая, но доработать бы не помешало.

Цитата:
Дядя Миша писал:
Это не так. Если движок вообще не привязан ни к какому жанру, он будет одинаково плохо работать во всех. Что мы, собственно и наблюдаем.
Но в дальнейшем его могут начать затачивать под тот сектор, в котором он наиболее востребован. А в голове остаётся стереотип с прошлых версий, якобы движок годится для всего.


Это ничем не обоснованное утверждение. Первокваку вон под гонки не затачивали, однако же на ней их делали.

Цитата:
Дядя Миша писал:
Так по сути единственное, что и требуется в игровой ситуации. Вот у тебя есть объект дверь и объект стекло. Ты их соединил парентом и получилась дверь со стеклом. Если же ты их унаследуешь, у тебя получится стекло со свойствами двери и дверь со свойствами стекла? Но наследование для такого избыточно.


Стеклу вообще не нужен никакой объект, ему нужен материал с шейдером. Но если стекло например разбивается, конечно дверь не нужно тоже разбивать, и тут действительно нужно привязать парентом. Но вот представь что у тебя на двери например просто триггер при касании с которым эта дверь открывается, нужно ли этому триггеру создавать и аттачить дополнительный объект? В целом оба варианта допустимы, но однако.

Цитата:
Дядя Миша писал:
Поэтому остаётся только физическая связка в трёхмерном пространстве, которая ничего не ломает и не нарушает. И всегда даёт тот результат, который ты ожидал.
А наследование таковых объектов приводит к появлению котоламповых историй на башорге, как в игре про вторую мировую свиней делали из фашистов и у свиней даже был пистолет, который они периодически пытались достать. Или поезда из персонажей в DLC фаллаута.
Оно когда в коде скрыто никто не задумывается что там происходит.


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

Добавлено 13-02-2023 в 01:08:

Цитата:
Дядя Миша писал:
Это да.


К слову в Юнити есть ещё Асинхронная загрузка локаций, типа безшовных уровней аля ДаркСоулс.

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

Отредактировано FiEctro 12-02-2023 в 21:33

Сообщить модератору | | IP: Записан
Сообщение: 212729

Старое сообщение 12-02-2023 22:08
- За что?
(_-=ZhekA=-_)
Житель форума

Дата регистрации: Jan 2006
Проживает: Москва
Сообщений: 3890
Возраст: 36

Рейтинг



Цитата:
Дядя Миша писал:
Полностью любая игра - это далеко не только движок.

У тогда, игр типа метро, сталкер, фолаут 4

__________________
Kiss my ass if you don't like my Ford!
------------------------------------------
Game Area51 Update 1
First Person Shooter Released Jul 24, 2017
The game is a 3d shooter with the elements of the quest.

http://button.moddb.com/download/medium/125531.png

Сообщить модератору | | IP: Записан
Сообщение: 212730

Старое сообщение 13-02-2023 05:15
- За что?
 Дядя Миша
racing for fish

Дата регистрации: Oct 2005
Проживает: Кубань
Сообщений: 32213
Нанёс повреждений: 392 ед.

Рейтинг



Цитата:
FiEctro писал:
но сделать что то особо похожее у них не вышло

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

Цитата:
FiEctro писал:
Первокваку вон под гонки не затачивали, однако же на ней их делали.

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

Цитата:
FiEctro писал:
Но вот представь что у тебя на двери например просто триггер при касании с которым эта дверь открывается

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

Цитата:
FiEctro писал:
В халфе вроде тоже монстры много чего наследуют.

Ну не двери же.

Цитата:
(_-=ZhekA=-_) писал:
У тогда, игр типа метро, сталкер, фолаут 4

Под этот жанр движок и делается, да.

Добавлено 13-02-2023 в 09:39:

Кстати. Как в Унреалах\Юнитях дела обстоят с давилками?
Ну в смысле дверь - не просто дверь, а именно пресс, который всё сдвигает и давит, как в кваке. Или на котором можно стоять и он тебя корректно подымает и опускает. И даже камера не дёргается. Или там все ротатабли надо писать самостоятельно и если не получилось - сам дурак, короткую юбку надел?

__________________
My Projects: download page

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

Цитата:

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

Сообщить модератору | | IP: Записан
Сообщение: 212731

Старое сообщение 13-02-2023 06:39
-
FiEctro
Кот Арсис

Дата регистрации: Aug 2006
Проживает: код
Сообщений: 12901
Возраст: 32

Рейтинг



Цитата:
Дядя Миша писал:
Кстати. Как в Унреалах\Юнитях дела обстоят с давилками?
Ну в смысле дверь - не просто дверь, а именно пресс, который всё сдвигает и давит, как в кваке. Или на котором можно стоять и он тебя корректно подымает и опускает. И даже камера не дёргается. Или там все ротатабли надо писать самостоятельно и если не получилось - сам дурак, короткую юбку надел?


Всё аналогично PhysX. Никакой юнитивской физики нет.

Цитата:
Дядя Миша писал:
Я в первую очередь имею в виду, сколько игроков может быть в онлайне одновременно. От этого целиком зависит клиент-серверная архитектура.
А в гонках ну 5-10 машин атсилы.


Это скорее определяется толщиной пакета

Цитата:
Дядя Миша писал:
Если дверь просто стоит на земле, то и триггер ни к чему не привязан. Если дверь - часть поезда, триггер привязан к поезду. Логично и наглядно.
Конечно можно унаследоваться от двери и триггера одновременно, но какой смысл? Триггер - посылает сигнал, дверь - открывается. Таким образом унаследование приведёт к тому, что дверь будет открываться и посылать сигнал. Наследование не приводит волшебным образом к тем свойствам, которые ты имел в виду. Вот что я хочу сказать.


Я просто не вижу смысла зачем городить огород из кучи объектов, когда можно задать всё одному? Но как ты описал в Юнити тоже можно делать.

Цитата:
Дядя Миша писал:
Ну не двери же.


Помню был ролик где в хл2 барнакл жрал страйдеров и верталёты.

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

Отредактировано FiEctro 13-02-2023 в 11:01

Сообщить модератору | | IP: Записан
Сообщение: 212732

Старое сообщение 13-02-2023 11:00
- За что?
(_-=ZhekA=-_)
Житель форума

Дата регистрации: Jan 2006
Проживает: Москва
Сообщений: 3890
Возраст: 36

Рейтинг



Цитата:
Дядя Миша писал:
И даже камера не дёргается.

Я как-то давно в уе4 делал лифт на несколько этажей на принтах и вроде норм все работало ) на уе5 я хз еще не пробовал, но думаю, что будет также норм )
В анриле с этим все просто. Ты создаешь актор в него добавляешь нужную тебе модель и в этом же акторе или в другом месте пишешь код, как и куда эта модель должна двигаться так же есть ООП )

__________________
Kiss my ass if you don't like my Ford!
------------------------------------------
Game Area51 Update 1
First Person Shooter Released Jul 24, 2017
The game is a 3d shooter with the elements of the quest.

http://button.moddb.com/download/medium/125531.png

Отредактировано (_-=ZhekA=-_) 13-02-2023 в 11:34

Сообщить модератору | | IP: Записан
Сообщение: 212733

Старое сообщение 13-02-2023 11:30
- За что?
 Дядя Миша
racing for fish

Дата регистрации: Oct 2005
Проживает: Кубань
Сообщений: 32213
Нанёс повреждений: 392 ед.

Рейтинг



Цитата:
FiEctro писал:
Это скорее определяется толщиной пакета

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

Цитата:
FiEctro писал:
Я просто не вижу смысла зачем городить огород из кучи объектов, когда можно задать всё одному?

Это анти-паттерн, супер-класс называется.

Цитата:
(_-=ZhekA=-_) писал:
Я как-то давно в уе4 делал лифт на несколько этажей на принтах и вроде норм все работало

В UE с этим проблем никогда и не было.

__________________
My Projects: download page

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

Цитата:

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

Сообщить модератору | | IP: Записан
Сообщение: 212734

Старое сообщение 13-02-2023 12:47
-
 Дядя Миша
racing for fish

Дата регистрации: Oct 2005
Проживает: Кубань
Сообщений: 32213
Нанёс повреждений: 392 ед.

Рейтинг



Ну чтож, наконец-то добрался до портирования кода монстров.
Это можно сказать вообще моё первое болимение углублённое изучение их кода. Никогда до этого я монстрами не интерисовался и вообще не знаю, что они там вытворяют. Ну а сейчас, поскольку портирую, придётся поизучать.
Это к слову ни в коем случае не означает, что в XashNT будет именно халфовский AI. Я портирую халфовскую (точнее ксаш-модовскую) библиотеку по ряду причин:

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

__________________
My Projects: download page

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

Цитата:

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

Сообщить модератору | | IP: Записан
Сообщение: 213222

Старое сообщение 07-03-2023 16:16
-
 Дядя Миша
racing for fish

Дата регистрации: Oct 2005
Проживает: Кубань
Сообщений: 32213
Нанёс повреждений: 392 ед.

Рейтинг



Решил в целях расширения кругозора ознакомиться с работой AI (точнее поиска пути) в различных движках. Ну сперва взял сталкера. Там жеж типо искуственная жизнь, интересно. Начал разбираться как всё устроено. Вообщем есть некие ноды. Между нодами есть некие связи. Причём эти ноды загружаются из редактора. Пошёл читать ликбез по сталкеру. А там вот эта картинка...

Аппроксимация навмеша при помощи точек. Я конечно хз, как эта сетка генерится, судя по всему - автоматически. Не могу представить, чтобы кто-то в здравом уме вот такое вручную расставлял да ещё с такой плотностью.
Однако нанести сетку на ландшафт - много ума не надо. А как насчёт извилистых коридоров? К тому же сетка на полу никак не поможем ориентироваться летающим и водоплавающим монстрам. Она годится только для сухопутных. Что особенно интересно - эта сетка потом ещё дополнительно проверятся на reacahbility. Т.е. доверия к тому что расставили - мало.

Добавлено 08-03-2023 в 19:57:

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

Добавлено 08-03-2023 в 19:59:

Впрочем нет, гоню. Плоскость там одна - обозначает уровень наклона пола.

Добавлено 08-03-2023 в 23:24:

Более подробно расписано тут:
https://www.amk-team.ru/forum/topic...aktika-oshibki/
Чёт у меня волосы на голове от ужаса зашевелились. На гигантской карте визуально вручную контролировать, чтобы все ноды корректно соединились, иначе наградой будет вылет компилятора, расставлять\удалять невидимые стены, чтобы предотвратить расползание сетки (аналог замкнутого пространства в кваке), и вишенкой на торте - надо поставить на карту хотя бы один нод перед генерацией иначе вылет.

[ Вложение ]
3327563.jpg

__________________
My Projects: download page

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

Цитата:

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

Сообщить модератору | | IP: Записан
Сообщение: 213240

Старое сообщение 08-03-2023 20:24
-
Тема: (Опционально)
Ваш ответ:



Переводчик транслита


[проверить длину сообщения]
Опции: Автоматическое формирование ссылок: автоматически добавлять [url] и [/url] вокруг интернет адресов.
Уведомление по E-Mail: отправить вам уведомление, если кто-то ответил в тему (только для зарегистрированных пользователей).
Отключить смайлики в сообщении: не преобразовывать текстовые смайлики в картинки.
Показать подпись: добавить вашу подпись в конец сообщения (только зарегистрированные пользователи могут иметь подписи).

Временная зона GMT. Текущее время 19:05. Новая тема    Ответить
Страницы (241): « Первая ... « 167 168 169 170 [171] 172 173 174 175 » ... Последняя »   Предыдущая тема   Следующая тема
HLFX.Ru Forum HLFX.Ru Forum > Разработка игр > Наши проекты > XashNT: блог разработчика
Часть I
Версия для печати | Отправить тему по E-Mail | Подписаться на эту тему

Быстрый переход:
Оцените эту тему:

Правила Форума:
Вы not можете создавать новые темы
Вы not можете отвечать в темы
Вы not можете прикреплять вложения
Вы not можете редактировать ваши сообщения
HTML Код ВЫКЛ
vB Код ВКЛ
Смайлики ВКЛ
[IMG] Код ВКЛ
 

< Обратная связь - HLFX.ru >

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