Модостроительство Half-life против Сталкерского., xray vs source engine |
Здравствуйте, гость ( Авторизация | Регистрация )
Модостроительство Half-life против Сталкерского., xray vs source engine |
11.01.2019, 20:35
Сообщение
#161
|
|
Pro gamer
Почти Игроман Репутация: 72 Группа: Участник Сообщений: 622 Регистрация: 05.11.2017 |
Это полноценный (хоть и примитивный) AI, никаких триггеров уровня не используется нет, я про сами сценки. Что-то вроде визуального программирования или как в сталкаче всё ручками да скриптами? Интересно какой "ИИ" у ворон в сталкере Там много чего с воронами связано... какая-то функция MakeMeCrow, которая вызывается при создании любого существа... |
 
|
|
|
|
11.01.2019, 20:36
Сообщение
#162
|
|
Дибил Репутация: 823 Группа: Забанен Сообщений: 4891 Регистрация: 08.01.2010 |
buffy,
Про сорс напишу позже. Там еще вкусняшка добавилась. В сорсе добавилась возможность, называемая Input/Output. В основном - те же яйца, но в профиль.Позволяет, открыв последний объект в цепочке не заибаццо, пытаясь понять, что на него влияет. Поясню на примере. Это Output - то есть открытая энтити влияет на несколько. Условие одно: При загрузке карты этот logic_auto делает: Принудительно спавнит первую энтити без задержки. Выключает вторую энтити без задержки, и включает следующий триггер с задержкой в 4 секунды. Input то же самое, но указывает на то, какая энтити подала сигнал текущей открытой. Удобнее "кодить", при этом все возможности хл1 из моего поста выше остались. Помню в YaE летающих монстров, хотя там тоже сетка А разве они там не "на земле", с т.з. движка?Вот это тоже интересно. Было бы неплохо привести пример на основе тех же "умных тараканов". У них действительно есть свой базовый АИ или там все на триггерах самого уровня построено (если игрок вошел в зону или включен свет тараканы проигрывают анимацию убегания (просто бегут из точки X в точку Y и исчезают))? Аи. Курить видео Или можно скачать hl sdk, там клиентка открытая, изучай на исходниках. Сообщение отредактировал Janice Polito - 11.01.2019, 20:41 -------------------- Если вы заботитесь о своём пищеварении — мой добрый совет: не говорите за обедом о большевизме и о медицине. И, боже вас сохрани, не читайте до обеда новости на gameru. Да и после обеда.
|
 
|
|
11.01.2019, 20:37
Сообщение
#163
|
|
Pro gamer
Почти Игроман Репутация: 72 Группа: Участник Сообщений: 622 Регистрация: 05.11.2017 |
|
 
|
|
11.01.2019, 20:54
Сообщение
#164
|
|
Дибил Репутация: 823 Группа: Забанен Сообщений: 4891 Регистрация: 08.01.2010 |
Кстати, а какие вообще "энтити" есть в сталкере?
И как у них с.. эм.. использованием в других целях. В голдсрк/сорсе я могу допустим, с помощью энтити "дверь" реализовать как дверь, так и горизонтальную платформу, как в кваке, так и "вращающийся свет" (в том же Vampire: The Masquerade- Bloodlines так были реализованы вращающиеся на ветру вывески). Или же могу использовать ее, как лифт. -------------------- Если вы заботитесь о своём пищеварении — мой добрый совет: не говорите за обедом о большевизме и о медицине. И, боже вас сохрани, не читайте до обеда новости на gameru. Да и после обеда.
|
 
|
|
11.01.2019, 21:12
Сообщение
#165
|
|
Почти Мастер Репутация: 111 Группа: Участник Сообщений: 1158 Награды: 3 Регистрация: 07.08.2015 |
Janice Polito, Entities - это например в CryEngine xml пакеты (набор конфигов, заготовок), что то похожее на префабы.
В Сталкере?... ну если и есть то в UI немного похожее (туториалы как пример или характеры). Всё ручками, в блокноте, копипастом из имеющихся образцов. |
 
|
|
11.01.2019, 21:28
Сообщение
#166
|
|
Игровой Бог Репутация: 648 Группа: Участник Сообщений: 5354 Награды: 9 Регистрация: 24.09.2010 |
Кстати, а какие вообще "энтити" есть в сталкере? Да их куча - спейс рестрикторы, мобы, предметы и т.д. Каждая из них имеет ещё кучу дочерних, типа - рестриктор - аномалия, смарт террейн и т.д. Для каждого типа объекта есть свои, написанные ПЫС модули логики, например для физ. объекта можно создать дверь, ворота, проиграть анимацию и т.д. Есть общие параметры логики, те же задержки, получения сюжетных инфопорций, вход в зону, состояние объекта (видимость, сколько жизни и т.д.). -------------------- |
 
|
|
11.01.2019, 21:30
Сообщение
#167
|
|
Дибил Репутация: 823 Группа: Забанен Сообщений: 4891 Регистрация: 08.01.2010 |
Дизель, Таки не совсем. В ку-подобных движках обычно немного иначе.
Попробую опираться на базовые понятия, чтобы постараться захватить и CryE. Вот смотри, допустим есть базовый объект для добавления на уровень статических моделей. Это энтити. Есть объект, добавляющий звук. Тоже энтити. Есть объект, отвечающий за добавление НПС. И это тоже ентити. Просто у них куча параметров, например, для статической модели поменять саму модель (в современных движках это уже идет наподобии инстанса в коде), звук, его параметры, типа ревербрации, и т.п. Оружие, модель, тип поведения НПС. Ну ты понял, надеюсь. В мире ку-подобия префабы уже более комплексные и включают в себя несколько энтити, формирующие для игрока объект, со статическими функциями. Например, помнишь ли ты в хл1 автоматы для напитков? Сами браши автомата (кстати да, в мире халфы брашевые энтити - определенного рода модели, даже называются б-модели, в первокваке это, например, аптечки), энтити, обрабатывающая нажатие кнопки use от игрока, функция спаунящая энтити-напитки, энтити, обрабатывающая звуки, энтити света от автомата, и передняя стенка, обрабатывающая дамаг от игрока, которая инициализирует спец.звуки и спавн кучи напитков. RayTwitty, ну вот, пример дверь. Что, вставив эту энтити, при минимуме усилий я смогу сделать в сталкере? Смогу ли я заюзать ее, как поезд, хоть в стиле Просто в халфах энтити больше описывают функцию, которую они делают. То есть они более абстрактны. Еще пример. Func_pushable - толкатель. В халфе была использована, как конвейер, как платформа для распрыжки из Хена, может быть установлена перед НПС, с проигрыванием анимации "игрока оттолкнули от двери". Сообщение отредактировал Janice Polito - 11.01.2019, 21:36 -------------------- Если вы заботитесь о своём пищеварении — мой добрый совет: не говорите за обедом о большевизме и о медицине. И, боже вас сохрани, не читайте до обеда новости на gameru. Да и после обеда.
|
 
|
|
11.01.2019, 21:35
Сообщение
#168
|
|
Почти Мастер Репутация: 111 Группа: Участник Сообщений: 1158 Награды: 3 Регистрация: 07.08.2015 |
RayTwitty, Janice Polito, есть такое - я не туда полез.
Janice Polito, с дверями не всё так просто. Нет - нет - нет. На дверях ты ни куда не едешь, хоть 100 энтити вставь. В Сталкере - очень важную роль в поведении объекта играет класс, и то при совпадении скелета и анимаций, конфигов, если этого требует класс. Сообщение отредактировал Дизель - 11.01.2019, 21:39 |
 
|
|
11.01.2019, 21:37
Сообщение
#169
|
|
Игровой Бог Репутация: 648 Группа: Участник Сообщений: 5354 Награды: 9 Регистрация: 24.09.2010 |
ну вот, пример дверь. Что, вставив эту энтити, при минимуме усилий я смогу сделать в сталкере? Смогу ли я заюзать ее, как поезд, хоть в стиле Fallout 3 Train? Нет конечно, дверь это дверь Для поезда тебе скорее всего нужно будет взять машину и переделать её логику под работу поезда. Флинт делал: -------------------- |
 
|
|
11.01.2019, 21:39
Сообщение
#170
|
|
Дибил Репутация: 823 Группа: Забанен Сообщений: 4891 Регистрация: 08.01.2010 |
Дизель, Да все мы в этой теме лезем "не туда".
Лично мне сдк сталкера оставил -------------------- Если вы заботитесь о своём пищеварении — мой добрый совет: не говорите за обедом о большевизме и о медицине. И, боже вас сохрани, не читайте до обеда новости на gameru. Да и после обеда.
|
 
|
|
11.01.2019, 21:50
Сообщение
#171
|
|
Почти Мастер Репутация: 111 Группа: Участник Сообщений: 1158 Награды: 3 Регистрация: 07.08.2015 |
Лично мне сдк сталкера оставил анальные шрамы ввиду отсутствия документации и тем, что постоянно слал меня натрибуквы к AlexMX. Очень зря, что разочаровался. Я всегда готов вернуться в x-ray. Движок своеобразный - даже сложнее немного чем CE, но он того стоит. У меня шрамов не меньше от него - поверь. Единственный минус - это геморой с компиляцией локации, но я уже научился делать максималку без гемороя, в тот момент когда уже был по-уши в CE312. |
 
|
|
11.01.2019, 23:03
Сообщение
#172
|
|
Дибил Репутация: 823 Группа: Забанен Сообщений: 4891 Регистрация: 08.01.2010 |
Дизель, я до сих пор пытаюсь вернуться. И даже частично правлю свою любимый кордон * из 114-54 билдов в тридэ реакторе, но мне не хватает усидчивости, учитывая даже подход GSC к моделлингу.
*Мой ТСС - это смесь обливион лост и сталкера периода крыма, приправленная скетчами 2002 года, перемешанная в блендере с пикником. То есть футуристичный сеттинг 2099+ года, кибер-импланты, соседствющий совок (привет, самосбор, лол), и с атмосферой в стиле system shock 1-2. RayTwitty, это плюс , или минус для дженерик модостроителя в вакууме? Если что, я уже давно не вхожу в комьюнити халфодвижков. Рад, что ты смог в дискуссию почле моего хейт спича Сообщение отредактировал Janice Polito - 11.01.2019, 22:56 -------------------- Если вы заботитесь о своём пищеварении — мой добрый совет: не говорите за обедом о большевизме и о медицине. И, боже вас сохрани, не читайте до обеда новости на gameru. Да и после обеда.
|
 
|
|
11.01.2019, 23:10
Сообщение
#173
|
|
Игровой Бог Репутация: 648 Группа: Участник Сообщений: 5354 Награды: 9 Регистрация: 24.09.2010 |
это плюс , или минус для дженерик модостроителя в вакууме? Я думаю, есть просто два разных подхода к написанию подобных "энтити" - либо у нас есть одна большая сущность, к примеру физ. объект из которого мы можем сделать и простую бочку, и поезд со сложной логикой, либо много разных сущностей, которые более менее охватывают большинство задач. В том же сталкере можно написать свой модуль логики, например для работы с краном (у Флинта на канале есть) и потом его использовать в разных местах. Проблема в том, что нужно постоянно дергать С++ программиста, чтобы тот давал скриптеру возможность доступа к базовым объектам в движке, на основе которых он уже может писать свои объекты. Иной раз проще напрячь С++ прогера, чтобы тот сразу в движке написал нужный функционал и не париться со схемами)) Сообщение отредактировал RayTwitty - 11.01.2019, 23:11 -------------------- |
 
|
|
12.01.2019, 00:24
Сообщение
#174
|
|
Самый некомпетентный на форуме Репутация: 312 Группа: Участник Сообщений: 4074 Награды: 4 Регистрация: 04.09.2012 |
|
 
|
|
12.01.2019, 00:27
Сообщение
#175
|
|
Почти Мастер Репутация: 111 Группа: Участник Сообщений: 1158 Награды: 3 Регистрация: 07.08.2015 |
dPlayer, точка зрения.
|
 
|
|
12.01.2019, 01:04
Сообщение
#176
|
|
Игровой Бог первой степени Репутация: 432 Группа: Участник Сообщений: 8787 Награды: 4 Регистрация: 21.03.2013 |
Я конечно умолчал о том, что и half-life затронул UE4, типа есть подобные проекты.
Могу ли я поинтересоваться, а почему на gameru.net за все эти годы не начал делать half life 2 episode 3? Мод, который предполагает логичное завершение того, что было показано ранее.... -------------------- |
 
|
|
12.01.2019, 01:40
Сообщение
#177
|
|
Pro gamer
Почти Игроман Репутация: 72 Группа: Участник Сообщений: 622 Регистрация: 05.11.2017 |
|
 
|
|
12.01.2019, 02:53
Сообщение
#178
|
|
Дибил Репутация: 823 Группа: Забанен Сообщений: 4891 Регистрация: 08.01.2010 |
Ruw, *шутка про сталкер на удк и край энжине*
Вот именно поэтому. Иной раз проще напрячь С++ прогера Как человек, быдлокодящий под юнити, скажу так Сообщение отредактировал Janice Polito - 12.01.2019, 02:54 -------------------- Если вы заботитесь о своём пищеварении — мой добрый совет: не говорите за обедом о большевизме и о медицине. И, боже вас сохрани, не читайте до обеда новости на gameru. Да и после обеда.
|
 
|
|
12.01.2019, 13:42
Сообщение
#179
|
|
Доктор Игровых Наук Репутация: 544 Группа: Участник Сообщений: 3657 Награды: 9 Регистрация: 12.07.2007 |
Надо бы тут прояснить за системы Энтий\Сущностей\Entity. А то у каждого какое то свое представление о нем, постараюсь максимально простым языком.
Во первых правильно это называется Entity-Components-System. Во вторых а что это вообще значит и чем подход отличается от простого подхода описания сущности сразу в объект\класс. В классическом подходе программист описывает сущность и фактически она становится уникальной своего вида и никак не совместимой с другими. Что бы описать взаимодействия с другими сущностями придется хардкодить в этой сущности описание других сущностей и то как и что он может делать с ними. Да это проще но накладывает огромное количество ограничений. В ECS системе все строится иначе: Изначально программист описывает базовые компоненты\components . По сути это классы\интерфейсы в коде если тут есть программисты. Ну например список компонентов: -компонент ПОЗИЦИЯ(x,y,z) -компонент МОДЕЛЬ -компонент ЗВУК -компонент ПЕРЕМЕЩАЕМАЯ_ПОЗИЦИЯ (расширение ПОЗИЦИЯ) - и много других компонентов которые реализуют только что то узкоспециализированное и свое уникально неповторяемое. Дальше программист пишет системы\systems. Система обрабатывает только свои компоненты. Опять же для программистов тут это банальный цикл обрабатывающий только свои компоненты. Грубо говоря например СИСТЕМА_ПОЗИЦИЯ. Она обрабатывает только свои компоненты ПОЗИЦИЯ и ПЕРЕМЕЩАЕМАЯ_ПОЗИЦИЯ. Что то с ними делает и т.д. Тут в общем реализации логики компонентов. И наконец сами сущности\entity. Это такая пустышка в которую набивают компоненты\components. По итогу например нужно сделать сущность ВОРОНА, значит включаем в нее как минимум 3 компонента ПЕРЕМЕЩАЕМАЯ_ПОЗИЦИЯ , МОДЕЛЬ, ЗВУК. И вот уже есть уникальная сущность но при этом все другие сущности с легкостью знают что с ней можно сделать т.к. они обращаются к компонентам а не самой сущности. Во третьих а нафиг оно вообще было придумано и так усложнено? Причин самой концепции довольно много но вот главные: -с таким подходом гарантируется "слепое" взаимодействие сущностей между собой. Т.е. им вообще пофиг что там за сущность но они точно знают что она может и как с ней взаимодействовать. В классическом подходе такое не прокатит и если позже захотят добавить помимо ВОРОНА новую сущность ЯСТРЕБ то придется описывать ЯСТРЕБ, всех с кем он может взаимодействовать и у каждой сущности которая сможет с ним взаимодействовать логику для этого. -еще один важный момент, весь этот подход автоматически дает базовое распараллеливание кода т.к. самих систем стало много ну системы ФИЗИКА\ЗВУК\СЕТЬ и т.д. В классическом подходе все будет обрабатываться только в одном общем цикле что принесет лишь боль и тонны кода гвоздями прибитого друг к другу. -т.к. систем опять же много это обеспечивает чистый код т.к. все системы изолированны и не вмешиваются друг в друга в прямом смысле. Образно говоря "спагетти" кода практически не будет. -сам подход ECS автоматически дает гибкость как для программистов так и для дизайнеров в будущем. Дизайнеры без кода могут создавать новые сущности такие какие им нужны прямо в редакторах например или упрощенной системой скриптования. Тут еще такой момент что если некоторая сущность которую делают дизайнеры часто используется то программисты могут очень просто сделать сущность в коде а дизайнеры уже просто будут добавлять готовую сущность без натыкивания в нее компонентов. С другой стороны дизайнеры могут(опять же скрипты или в ином виде) создавать локальные сущности префабы\prefab в редакторах. -достигается огромное разнообразие сущностей т.к. компоненты могут быть добавлены\убраны\заменены хоть во время игры так и в редакторах. Аналогично с взаимодействиями сущностей, дизайнер может очень просто "наскриптовать" очень сложные сцены из кучи взаимодействий и они будут уникальны. А на последний пункт то как эту систему реализуют. В классическом виде в конечном счете всеравно приходят хотябы к базовым возможностям ECS но это как правило оказывается костылями из за неполноценности. Если изначально идут по пути ECS то ее могут сделать полноценной так и частичной отбросив что то. Так же эту систему в обязательном порядке дополняют уже своей уникальной реализацией системы взаимодействий, ну к примеру в движке сорса это система ввода\вывода input\output , в том же юнити это язык c# и т.д. Минусы у этой системы тоже есть: -вводить новые системы на поздних этапах гораздо сложнее. Тут важный момент что именно новые, а заменить систему довольно просто. Скажем сменить физический движек или звуковой -логику работы систем и их взаимосвязь друг с другом(между системами) тоже сложнее реализовывать чем классический единый цикл на всю игру. -реализовать что то чего не умеют компоненты невозможно или крайне сложно\костыльно. PS еще один важный момент. Если разработчики делают движек под конкретную игру и точно знают что расширять его не придется то выгоднее все делать без ECS т.к. это будет быстрее. Если же предполагается что игра будет постоянно развиваться и дополняться или на этом движке выйдут разные игры или огромное число и вообще двиг на долгое время то всегда выбирают ECS. |
 
|
|
12.01.2019, 15:03
Сообщение
#180
|
|
Почти Мастер Репутация: 111 Группа: Участник Сообщений: 1158 Награды: 3 Регистрация: 07.08.2015 |
jamakasi, а где вывод или заключение? В Сталкере есть эти самые сущности?
Непонятно. Оценка за сочинение: 3 (не раскрыта до конца тема). |
 
|
|
Текстовая версия | Сейчас: 06.05.2024, 13:05 |