- 4,167
- 68
- 693
Ах ты ж блин. А у меня у каждого паука по 8 лап, и для каждой считается обратная кинематика :-0векторные вычисления сильно проще тригонометрических
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.
Ах ты ж блин. А у меня у каждого паука по 8 лап, и для каждой считается обратная кинематика :-0векторные вычисления сильно проще тригонометрических
Как я уже сказал, критично это только на больших объёмах. Условно, 5-6 пауков таких - вообще не проблема для пк. Но если загрохать 20-30 в кадре, могут начаться просадки. Ну и опять-таки, всё зависит от реализации - умелое использование тригонометрии >> неумелое обращение с векторами.А у меня у каждого паука по 8 лап, и для каждой считается обратная кинематика
Это уже похоже на то, что я могу использовать. Спасибо!Сделал хвост примерно так:
Вот демонстрацияTestLayer:public class TestLayer<T extends LivingEntity, M extends EntityModel<T>> extends RenderLayer<T, M> { public TestLayer(RenderLayerParent<T, M> renderer) { super(renderer); } private float tailRotation = 0F; private float tailRotationSpeed = 0F; @Override public void render( PoseStack poseStack, MultiBufferSource multiBufferSource, int light, T entity, float limbSwing, float limbSwingAmount, float partialTicks, float ageInTicks, float netHeadYaw, float headPitch ) { if (Float.isNaN(tailRotation)) { tailRotation = 0F; } if (Float.isNaN(tailRotationSpeed)) { tailRotationSpeed = 0F; } float yBodyRot = Mth.rotLerp(partialTicks, entity.yBodyRotO, entity.yBodyRot); float diff = yBodyRot - tailRotation; tailRotationSpeed += diff * 0.02F; // 0.02 - ускорение tailRotationSpeed *= 0.9F; // 0.9 - "трение" tailRotation += tailRotationSpeed; poseStack.pushPose(); poseStack.mulPose(Axis.YP.rotationDegrees(180F - yBodyRot + tailRotation + 90F + 45F)); DebugRenderer.renderFilledBox(poseStack, multiBufferSource, 0D, 0D, 0D, 1D, 1D, 1D, 1F, 1F, 1F, 1F); poseStack.popPose(); } }
Ну это идет в код эдитор в энтити, я понимаю.Это уже похоже на то, что я могу использовать. Спасибо!
Мог бы ты подробнее обьяснить куда это нужно вставлять, какие поля мне нужно заменять на свои и как потом это все продублировать для 3х сегментов хвоста?
VelociraptorModel есть метод setupAnim. В этом методе можно устанавливать поворот - хвост.yRot = .... Только переменные tailRotation и tailRotationSpeed надо положить в класс сущности, а обновлять их надо в VelociraptorRenderer в методе render (чтобы получить partialTicks). Как-то так.setCustomAnimations это можно сделать.Java - строго типизированный язык программирования. Писать на нём без специальной среды разработки это больКак я понимаю, это те же самые файлы, которые кодеры напрямую редачат через сублайм текст или похожую прогу
С первого взгляда это какая-то "надстройка" на ванильные классы. Ни разу не трогал.Разве геколиб делает какое то принципиально другое энтити?
Это так не работает. Твой мод - пиши сам. Или зови какого-то человека, который сможет всё написать за денюжку.Подскажи конкретнее что куда писать, пожалуйста.
С подобной позицией тебе следует обратиться к админам, с просьбой добавить тут где нибудь на сайте или в разделе плашку, где будет написано "если не знаешь java, то тебе здесь делать нечего".Ты просил пример кода - он тебе его предоставил.
Пример кода - это то в какую сторону тебе надо копать. Не знаешь java - не наши проблемы.
А раз пошли вопросы "куда вставить" - java ты впервые видишь как и языки программирования. Пока не обучишься языку хотя-бы до уровня stream api - тебе здесь делать нечего, ибо разжёвывать никто ничего не станет
добавить тут где нибудь на сайте или в разделе плашку, где будет написано "если не знаешь java, то тебе здесь делать нечего".

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