Огонь

Версия Minecraft
1.7.10
1,976
68
220
Доброго времени суток о/

Решил я сделать меч, у которого на лезвие наложен эффект а-ля горение. Но не такой убогий пиксельный огонь как в минисрафте, а нормальный, полноценный (в пределах моих способностей) огонь на партиклах. Предположим, что они у меня уже есть.
Но теперь вопрос в другом - как "привязать" партиклы к рендерящейся модельке, то есть сделать так, чтобы, допустим, при смене вида от первого/третьего лица, взмахах или блокировке партиклы двигались вслед за мечом, а не оставались висеть в воздухе, ни к чему не привязанные?

Была мысль сделать какой-то лист внутри рендера, запихивать туда все new EntityFX'ы, в методе рендера итерационно вызывать им апдейт и после применения ротейтов и транслейтов вызывать рендер. Но я упёрся в проблему с хранением этого листа - куда его сунуть, чтобы на каждый меч он был свой? Не в NBT стака же, это как-то слишком дорого будет. Вроде же класс рендера один на все предметы, так что если сделать лист в нём, то это всё равно что сделать какое-нибудь статик поле для предмета и удивляться, почему оно везде одинаковое.

Была ещё идея этот лист привязать к мапе, чтобы они все были в одном месте, но в этом случае непонятно, что должно быть ключом к каждому стаку...

В общем, как-то это всё чересчур сложно. Может есть какой-то более простой способ, а-ля геометрического (?) шейдера? Тогда, если можно, скиньте хотя бы примерно как это можно сделать. Заранее спасибо :D
 
2,505
81
397
А зачем лист с партиклами сохранять?
А апдейтить как?

Просто новые каждый раз генерируй.
Такое точно не допустимо. Засрется вся память.

А про шейдеры, то можно рендрить полигон с шейдером огня, вместо частиц
По дроуколу на частицу это оооооооооооооооооооооооочень плохо.
 
1,015
9
102
А апдейтить как?
Так лист на клиенте. Берешь и каждый тик апдейтишь. Не вижу проблемы. Просто положение частиц будет сбрасыватся при подмене предмета

Такое точно не допустимо. Засрется вся память.
Можно тогда не пересоздавать, а просто сбрасывать положение


По дроуколу на частицу
Я имел ввиду один полигон на весь меч. Просто в самом шейдеры рендрятся частицы отдельно. Но это сложнее конешн сделать
 
5,018
47
783
1,111
47
420
Я имел ввиду один полигон на весь меч. Просто в самом шейдеры рендрятся частицы отдельно. Но это сложнее конешн сделать
Чо как вам идэя нарисовать квадрат с теми же трансформациями как и меча и прикрутить шейдер к этой штуке. При взмахе можно, допустим, рендерить еще немного этих квадратов. Только надо хэндлить как-нибудь вид от 3го лица:unsure:. Может даже одного шейдера на все мечи хватитю
 
Сверху