Как вы помните, система тросов была организована только средствами UE, генерация, соединение между точками… все это внутри движка. Поэтому я разумеется решил, раз я сделал тросы в рамках движка, то почему бы паруса не реализовать таким же образом? Все в одном месте так сказать. Покопавшись в интернетах, я нашел методы Add procedural mesh component и Create mesh section. Получается моей задачей будет собрать массив из вершин, треугольников и UV-развертки. Если бы мы говорили о каком-нибудь питоне, то реализовать это было бы несложно за счет большого кол-ва референсов и библиотек. Но у нас тут Blueprint, и эта задача для чайника без хорошей математической базы - мягко говоря начинает ошеломлять.
Я тоже повторю вопрос выше, но чуть конкретней: почему каждый тип паруса не сделать как скелетал меш, сделать ему несколько анимаций (поднятый, спущеный с разной силой ветра), и просто не поставить каждому animation blueprint?
Кажется, что большой и разный парус для всего корабля можно собрать из 2-3 маленьких различных парусов (треугольник для кливеров, прямоугольник для гротов, может еще отдельно стаксели и брамсели) , и просто менять анимации на каждом из них. На каждый еще можно навесить разные модельки поверх скелета, а на каждую модельку разный материал. В результате при затратах на анимацию 2-3-4 частичек парусов мы получим огромное разнообразие конечного результата, даже просто меняя масштаб, количество, и по-разному располагая на мачтах.
Даже не уверен, зачем тут процедурная генерация...
Спасибо за вопрос!
Ответ очень простой: потому что форма парусов в корсарах не одинаковая для всех кораблей. Форма определяется специальными точками - локаторами. Соответственно, тот же кливер может иметь немного разную форму на разных кораблях, и простым скалированием это не поправить. А мне необходимо чтобы форма точно соответствовала, иначе локаторы отвечающие за крепления с тросами не будут находиться на нужных позициях. Руками это все двигать на десятках кораблей - я кукухой поеду.
Вы абсолютно правы в том, что можно построить парусную оснастку из нескольких заготовок. И я бы так и делал, если бы создавал корабль с 0, но у меня стоит цель по переносу старых кораблей, поэтому процедурная генерация стала для меня решением.
Ничего не знаю ни про блендер, ни про Unreal Engine, поэтому глупый вопрос - а нельзя в блендере сделать анимацию паруса (спуск/поднятие) а потом её забейкать и импортнуть в анреал ?
Ну, собственно об этом в статье и написано)