Программа для моделирования

Версия Minecraft
1.12.2
API
Forge
31
0
Приветствую друзья, моделировал предметы изначально в BlockBench'е, но хочется делать модели более текстурней, а в ранее названной программе этого не получается сделать, это я кривой и не могу сделать, или все таки есть иная программа для моделирования?
Пример желаемой модели:
 

Вложения

  • image.png
    image.png
    20.3 KB · Просмотры: 15
31
0
Что ты имеешь ввиду под словом "текстурнее"?
В плане больше как кубическая модель, а не плоская и разрисованная, вот еще пример
Хочу делать модели как на первом изображении, а не как на втором
 

Вложения

  • Screenshot_3.png
    Screenshot_3.png
    57.8 KB · Просмотры: 21
  • Screenshot_4.png
    Screenshot_4.png
    202.4 KB · Просмотры: 21
166
5
14
вариант 2 это просто текстура брони которую можно хоть в paint нарисовать
вариант 1 это 3д модель брони саму 3д модель можно и в BlockBench'е создать и в blender, а также её надо по особому регать
 
11
0
вариант 2 это просто текстура брони которую можно хоть в paint нарисовать
вариант 1 это 3д модель брони саму 3д модель можно и в BlockBench'е создать и в blender, а также её надо по особому регать
Я знаю как это все регистрировать, просто друг говорил что в blockbench’е невозможно сделать такую модель, как на первой картинке
 
4,045
63
645
Хочу делать модели как на первом изображении, а не как на втором
Ну, поздравляю тебя, ты на правильном пути. Хоть ты пока и не понимаешь, как это выразить вербально, но каким-то местом чувствуешь, что масштаб пикселей в игре надо соблюдать. Иначе модель начинает выбиваться из общей стилистики и выглядит странно.
В помощь тебе могут пойти текстуры уже имеющейся в игре брони вынильного размера. Просто рисуешь по ней, что надо и оно будет смотреться хорошо. Главное, не меняй масштаб.
Ну а все геометрические навороты, которые по мне тоже выбиваются из стилистики, это просто дополнительная группа боксов, размещённая на нужных местах.
В BlockBench'е, думается, это можно сделать легко.
Но я тут тебе не подсказчик, так как сам предпочитаю прописывать боксы в самом коде модели, ибо нет там ничего сложного. Это тупо координаты точек бокса, ну и положение его развёртки на текстуре. Стоит один раз разобраться, что есть что, и тебе уже не нужен будет никакой BlockBench, импорт, экспорт и всякая ненужная фигня. Сможешь просто прописать несколько цифр в модель и она готова!
Удачи )
 
31
0
Ну, поздравляю тебя, ты на правильном пути. Хоть ты пока и не понимаешь, как это выразить вербально, но каким-то местом чувствуешь, что масштаб пикселей в игре надо соблюдать. Иначе модель начинает выбиваться из общей стилистики и выглядит странно.
В помощь тебе могут пойти текстуры уже имеющейся в игре брони вынильного размера. Просто рисуешь по ней, что надо и оно будет смотреться хорошо. Главное, не меняй масштаб.
Ну а все геометрические навороты, которые по мне тоже выбиваются из стилистики, это просто дополнительная группа боксов, размещённая на нужных местах.
В BlockBench'е, думается, это можно сделать легко.
Но я тут тебе не подсказчик, так как сам предпочитаю прописывать боксы в самом коде модели, ибо нет там ничего сложного. Это тупо координаты точек бокса, ну и положение его развёртки на текстуре. Стоит один раз разобраться, что есть что, и тебе уже не нужен будет никакой BlockBench, импорт, экспорт и всякая ненужная фигня. Сможешь просто прописать несколько цифр в модель и она готова!
Удачи )
Пасиба за помощь <3
 
1,369
112
241
Но я тут тебе не подсказчик, так как сам предпочитаю прописывать боксы в самом коде модели, ибо нет там ничего сложного. Это тупо координаты точек бокса, ну и положение его развёртки на текстуре. Стоит один раз разобраться, что есть что, и тебе уже не нужен будет никакой BlockBench, импорт, экспорт и всякая ненужная фигня. Сможешь просто прописать несколько цифр в модель и она готова!
С одной стороны вроде и здравую вещь говоришь, а с другой безумную.
Не, ничего против не разумею, но новичку, на мой взгляд, "примеряться на глазок" в построении моделей и AABB - медвежья услуга. К тому же, если мы говорим о чуть более свободных моделях (как в шапке темы), то там уже без Blockbench и тому подобных - никак.
 
31
0
С одной стороны вроде и здравую вещь говоришь, а с другой безумную.
Не, ничего против не разумею, но новичку, на мой взгляд, "примеряться на глазок" в построении моделей и AABB - медвежья услуга. К тому же, если мы говорим о чуть более свободных моделях (как в шапке темы), то там уже без Blockbench и тому подобных - никак.
Слушай, может есть какой то источник, где есть бесплатные модели? что то похожее на то что я скидывал? чтобы я попробовал как и в майнкрафте, так и изменить в блокбенче?
 
Ну, поздравляю тебя, ты на правильном пути. Хоть ты пока и не понимаешь, как это выразить вербально, но каким-то местом чувствуешь, что масштаб пикселей в игре надо соблюдать. Иначе модель начинает выбиваться из общей стилистики и выглядит странно.
В помощь тебе могут пойти текстуры уже имеющейся в игре брони вынильного размера. Просто рисуешь по ней, что надо и оно будет смотреться хорошо. Главное, не меняй масштаб.
Ну а все геометрические навороты, которые по мне тоже выбиваются из стилистики, это просто дополнительная группа боксов, размещённая на нужных местах.
В BlockBench'е, думается, это можно сделать легко.
Но я тут тебе не подсказчик, так как сам предпочитаю прописывать боксы в самом коде модели, ибо нет там ничего сложного. Это тупо координаты точек бокса, ну и положение его развёртки на текстуре. Стоит один раз разобраться, что есть что, и тебе уже не нужен будет никакой BlockBench, импорт, экспорт и всякая ненужная фигня. Сможешь просто прописать несколько цифр в модель и она готова!
Удачи )
Привет, а можно поподробнее про боксы в модели?) Пытался долго въехать в это дело, но что-то не до конца понял.

Model:
//я спер для примера этот кусок кода из ботании для 1.18 :)
public class CustomModel extends Model {
private final ModelPart body;
    private final ModelPart rightarm;
    private final ModelPart leftarm;
    private final ModelPart rightleg;
    private final ModelPart leftleg;
    private final ModelPart head;

    public ModelAvatar(ModelPart root) {
        super(RenderType::entitySolid);
        leftleg = root.getChild("left_leg");
        rightarm = root.getChild("right_arm");
        leftarm = root.getChild("left_arm");
        head = root.getChild("head");
        rightleg = root.getChild("right_leg");
        body = root.getChild("body");
    }
public static MeshDefinition createMesh() {
        var mesh = new MeshDefinition();
        var root = mesh.getRoot();
        root.addOrReplaceChild("head", CubeListBuilder.create()
                .addBox(-3.0F, -6.0F, -3.0F, 6, 6, 6),
                PartPose.offset(0.0F, 14.0F, 0.0F));
        root.addOrReplaceChild("body", CubeListBuilder.create().texOffs(0, 12)
                .addBox(-3.0F, 0.0F, -2.0F, 6, 4, 4),
                PartPose.offset(0.0F, 14.0F, 0.0F));
        root.addOrReplaceChild("left_arm", CubeListBuilder.create().texOffs(0, 20).mirror()
                .addBox(0.0F, -1.0F, -1.0F, 2, 6, 3),
                PartPose.offsetAndRotation(3.0F, 15.0F, -1.0F, 0.0F, -0.0F, -0.0873F));
        root.addOrReplaceChild("right_arm", CubeListBuilder.create().texOffs(0, 20)
                .addBox(-2.0F, -1.0F, -1.0F, 2, 6, 3),
                PartPose.offsetAndRotation(-3.0F, 15.0F, -1.0F, 0.0F, -0.0F, 0.0873F));
        root.addOrReplaceChild("left_leg", CubeListBuilder.create().texOffs(0, 20).mirror()
                .addBox(-1.5F, 0.0F, -1.5F, 3, 6, 3),
                PartPose.offset(1.5F, 18.0F, -0.5F));
        root.addOrReplaceChild("right_leg", CubeListBuilder.create().texOffs(0, 20)
                .addBox(-1.5F, 0.0F, -1.5F, 3, 6, 3),
                PartPose.offset(-1.5F, 18.0F, -0.5F));
        return mesh;
}
@Override
    public void renderToBuffer(PoseStack ms, VertexConsumer buffer, int light, int overlay, float r, float g, float b, float a) {
        leftleg.render(ms, buffer, light, overlay, r, g, b, a);
        rightarm.render(ms, buffer, light, overlay, r, g, b, a);
        leftarm.render(ms, buffer, light, overlay, r, g, b, a);
        head.render(ms, buffer, light, overlay, r, g, b, a);
        rightleg.render(ms, buffer, light, overlay, r, g, b, a);
        body.render(ms, buffer, light, overlay, r, g, b, a);
    }
Получается addBox это мы создаем куб с координатами в качестве передаваемых параметров (только я не ориентацию начала координат, относительно чего эти координаты писать), PartPose.offset это, как я понял, какое-то смещение(поправь, пожалуйста, если я не прав), texOffs я вообще не разобрался как работает, mirror это мы что-то зеркально отражаем, PartPose.offsetAndRotation это смещение и повороты относительно осей? Если есть где подробное пояснение по этой штуке, буду бесконечно благодарен)
 
4,045
63
645
Насколько я помню, первые 3 параметра в addBox - это смещение бокса, относительно его начальной точки. Последние три, очевидно, размеры бокса.
root.addOrReplaceChild - это как раз добавление дочернего объекта к родителю.
texOffs - координаты развёртки бокса на текстуре.
mirror - отзеркаливание бокса.
PartPose.offset - смещение начальной точки бокса, относительно начальной точки родителя.
Могу ошибаться, давно я туда не залезал.
 
Сверху