- 47
- 1
Привет, я хоу сделать, что бы кровь вылетала из игрока, когда по нему проходит урон, как мне получить OpenGl в
onLivingHurt
?Follow along with the video below to see how to install our site as a web app on your home screen.
Примечание: This feature may not be available in some browsers.
onLivingHurt
?Такое себе решение.заспавни частицу как Entity, а к ней привяжи свой рендер. Вот там и рендери что надо (если ещё в этом будет необходимость).
А теперь вспоминаем частицу (Particle) капель воды/лавы. Или же новые частицы спор. Да и дым от костра тоже...Рендер не может жить в 1 микросекунде, человеческий глаз не способен такое уловить. А значит рендерить надо какое то продолжительное время.
Здесь полностью соглашусь.Не люблю на столько тупые вопросы, ты просто не понимаешь как устроен рендер.
Я и не спорил по поводу "возможно ли отрисовать". Даже так, на видео видны просадки, что не есть хорошо. Да, "я рендерю всю сцену, а не часть, как то принято обычно в играх", и тем не менее, рендерить 2D спрайт, а не 3D объект проще, не находишь?Любые частицы по типу ниагара или любые другие. Ограничение конечно есть, но даже слабая видео карта как GTX 750, способна совершенно спокойно отрисовать 19 миллионов полигонов
... Ты вообще в курсе, чем отличается Entity от Particle?Все партиклы что ты видишь это те же Entity между прочим, только рисуются по другому.
Вот этот тейк не совсем понял. ECS же призван упростить процесс разработки, не? То, что логика отделена от данных, всё ещё не значит, что этой логики нет. И её всё ещё придётся просчитывать.Это не секретная технология, в которой в том числе присутствует ECS
Particle, кстати, реализуются сильно проще любого Entity. Так, на будущее.но это точно самый ближайший и простой путь из возможных.
Выстрел себе же в ногу. Particle требуют, по сути, только текстурку. EntityRenderer требует ещё и EntityModel, Entity и текстурку. Что из этого легче отрендерить: воксели (пускай даже супер тонкий слой) или спрайт?Дело не в том что ты рисуешь, а в том как.
да нет ни 2д ни 3д. Если уж по существу. Шейдер всё делает в 2д, рассчитывает искажения камеры за счёт FOV и прочее.рендерить 2D спрайт, а не 3D
но если только ты будешь видеть ошмётки от попадания в голову, то ты не увидишь ошмётки от игрока который выстрелил в того же чела. Проще говоря тебе будет казаться что все кроме тебя промахиваются по друг другу.все расчёты движения Particle выполняются на клиенте. Расчёты движения Entity же расположены на сервере
Счёл его несущественным, потому не упомянул.любой спрайт - это полигон, есть тут один нюанс, но я не буду углубляться, так проще воспринимать.
Это несколько другой случай. То, что ты делаешь - напрямую рисуешь в буффер (был где-то тутор на эту тему), мы же хотим использовать встроенные средства майна (типа того же EntityRenderer или встроенные приколы в Particle).(у меня скриншот висит в теме 3д модели, там нет никакой модели, просто полигон нарисован поверх куба)
К сожалению, начиная с версии 1.14, вроде бы, класс модели обязателен. По крайней мере, хотя бы для наследования от EntityRenderer точно (пример для 1.16, но на 1.20 всё также, просто сейчас нет готового кода, который бы работал).Для рендера Entity модель не нужна, тесселатор никуда не делся.