Как редактировать модели майнкрафт
Обновлено: 18.05.2024
- Подробное описание интерфейсов для создания моделей.
Разберем методы интерфейса IBakedModel :
isAmbientOcclusion - возвращает boolean , определяет можно ли к данной модельке применить AmbientOcclusion.
isGui3d - возвращает boolean , определяет, будет ли данная модель рендерится плоской в слоте инвентаря или в виде выброшенного предмета ( EntityItem ).
isBuiltInRenderer - возвращает boolean , при true, текущая модель отрисовываться не будет, вместо неё будет рендерится TileEntityItemStackRenderer . Этот метод используют такие ванильные блоки как сундук или флаг(баннер).
getOverrides - возвращает ItemOverrideList , с помощью него можно удобно создавать отдельно модельку предмету, отдельно блоку(см ниже).
getParticleTexture - возвращает текстуру частиц( TextureAtlasSprite ), используется при создании частиц данной модельки. Например для предмета такие частицы появляются при съедании, для блока при ходьбе по нему.
handlePerspective - возвращает готовую модельку матрицу перспективы 4x4( Pair<? extends IBakedModel, Matrix4f> , очень мощный метод для трансформации модельки, напрямую лучше не реализовывать. Параметр cameraTransformType - тип текущей трансформации(см net.minecraft.client.renderer.block.model.ItemCameraTransforms.TransformType )
getItemCameraTransforms - возвращает трансформацию модели предмета( ItemCameraTransforms ). Вызывается каждый кадр, когда рендерится предмет.
getQuads - основной метод данного интерфейса IBakedModel , возвращает список 'запеченных' квадратов( List<BakedQuad> ), которые впоследствии передаются на графический процессор, где они уже будут отрисованы opengl'ем. Примечание: У блоков этот метод вызывается не каждый кадр, а только при обновлении рендера блока. Обновление рендера блока происходит либо когда блок впервые попал в поле зрения камеры, или когда рядом с ним обновился какой-либо blockstate. У предметов данный метод вызывается каждый кадр.
- Создание предмета с плоской моделью.
Теперь немного практики. (УРА!)
Первым делом создадим свой ICustomModelLoader
Более полное/подробное описание:
Tabula - программа-мод, позволяющая создавать модели с экспортом в Java код. так же позволяет делать анимацию, но экспорт её пока-что не предусмотрен. Данный "зверь" создан на основе всем известной программы Techne, на основе в плане интерфейса и некоторых функций, а не "ядра" программы. Я называю "это" программа-мод, потому что сие чудо устанавливается в майнкрафт как мод и без майна работать не будет, в отличие от Techne, MCAnimator и других подобных штук, которые не зависят от работы майнкрафта.
В общем если в 10 словах, то это бесподобная программа, которая в недалёком будущем (если автор не положит на неё хер) может стать очень серьёзным соперником и альтернативой Течне во всех планах, сторонах и функциях, да в принципе и сейчас по многим функциям Табула обгоняет Течне.
Tabula - Minecraft Modeler. Этим всё не всё сказано.
Плюсы, Минусы, сравнение Tabula:
- ! есть система коллективного моделирования, благодаря которой несколько человек могут редактировать 1 проект табулы, если они находятся на 1 сервере
- меньше весит чем Techne и MCAnimator
- есть частично (большая часть) русифицированная версия для майна 1.7.10 (спасибо TaoGunner)
- можно двигать модель не только на целые и десятые значения (Position), но и на СОТЫЕ !
- есть система Parent-Child, позволяющая более гибко использовать анимацию конечностей
- можно изменять размер каждого подокна (текстура, дерево моделей. ) и даже перемещать их
- можно импортировать свои течне модели
- ! можно импортировать течне модели, скачанные с оф. сайта течне
- ! можно импортировать все модели, которые есть в майнкрафте (но некоторые (Эндер дракон) открывает с косяками)
- можно импортировать даже модели из модов, которые установлены в вашем клиенте на той же версии майна (но не всегда они открываются корректно и не всегда все модели, которые есть в моде)
- ! можно менять масштаб каждого шейпа по каждой оси в отдельности (в Течне такая функция есть, называется GLScale, но применяется она там прямо ко всем шейпам в проекте)
- корректное отображение моделей с текстурами, у которых есть альфа канал
- ! можно изменить прозрачность текстуры у выделенного шейпа
- ! при создании новых проектов создаются новые вкладки вверху окна просмотра и можно переключаться между вкладками-проектами
- ! можно делать анимацию модели
- можно менять темы интерфейса
- можно объединять шейпы в группы
- ! есть возможность отменить и повторить сделанные действия (Undo, Redo)
- ! поддержка "горячих клавиш" Ctrl+Z, Ctrl+Y, Ctrl+C, Ctrl+X, Ctrl+V (только когда включён английский язык)
- есть возможность убрать блок доски внизу и даже саму сетку
- есть визуальные "контроллеры" поворота и увеличения размеров шейпа (их отображение, если мешает, можно выкл. в настройках)
- когда вы поставили курсор в одну из ячеек слева (в параметре Position, например) и вы крутите колёсико мыши, то изменяется значение в десятых долях числа; если зажали шифт и крутите колёсико, то в целых числах, если зажали Ctrl, то в сотых долях =О
- помимо экспорта в java код и экспорта текстуркарты, можно экспортировать текстуру, которая натянута на саму модель
- если удалить текстуру, то модель не станет прозрачной, а станет обычной серой (в отличие от Течне)
- не лагает от обилия шейпов (в отличие от Течне)
- если импортировать в существующий проект какой-нибудь другой, то шепы существующего проекта сохраняются, просто добавляются шейпы модели из нового проекта
- можно делать скриншоты окна на F2 и они будут сохраняться в папке со скриншотами майнкрафта
- при коллективном моделировании над Wax Tablet видно, что за модель вы редактируете; видно каждое изменение, которое вы производите
- нельзя экспортировать анимацию (пока что)
- для работы программы нужен майнкрафт версий 1.7.2 или 1.7.10 или 1.8 с установленным форджем
- на майне 1.8 Табула работает коряво
- переименовать шейпы нельзя в подокне "дерево шейпов", только в панели Controls (там где изменяются размер , позиция шейпа. )
- модели не всегда отображает правильно (но это редко, и то модели созданные не в самой Табуле)
- модели с ОГРОМНЫМ количеством шейпов невозможно открыть (пытался открыть модель с 627 шейпами - несмог)
- если в коллективном моделировании много участников и все они часто что-то изменяют в проекте, то довольно не удобно работать (например выделил ты в ячейке число и хочешь вбить своё, а твой напарник сдвинул шейп и у тебя выделение снялось)
- мало настроек
- нельзя выделить несколько шейпов шифтом, для этого их придётся запихать в 1 папку (Группу. нет это не система parent-child)
- экспорт только в java код или в свой формат
- нестандартная неудобная анимация
- чтобы добавить какие-то материалы для импорта, приходится их переносить в папку mods\tabula\saves или mods\tabula\textures, если это текстуры
Крафты:
Несмотря на то, что это "мод-программа" для моделирования, она добавляет в мир майнкрафт 1 предмет. Он называется Wax Tablet (Восковая доска). С помощью данного предмета и осуществляется коллективное моделирование.
Чтобы работать с коллегами над одним проектом/моделью вы должны находиться на 1 и том же сервере, далее скрафтить Wax Tablet, поставить в любое место и оба нажать ПКМ по нему. Если же вы поставите 2 и более Wax Tablet'a и нажмёте ПКМ по разным, то будете работать в разных коллективах.
Вот собсна его крафт:
Делаем новые модели для Minecraft [Guide]
И так. Работаем мы в данном гайде с программой MrCrayfish's Model Creator, так что прошу кликнуть по названию и установить ее.
Запускаем программу и видим такой интерфейс:
Верхний тулбар тут не имеет практически никакого значения, мы должны ориентироваться на правый угол. Сверху мы видим пустое окошко, чуть ниже три элемента: кубик, мусорка и два листа. Кубик - создает новый объект. Объекты отображаются в верхнем окошке. Мусорка - удаляет выделенный в окошке обьект. Два листика - копируют выделенный в окошке объект.
Самое главное - экспорт программы: File->Export JSON->выбираете модельку в майнкрафте, они находятся под названием Models там-же, где и папка текстур. Соглашаетесь с заменой. Поздравляю! Модель заменена!
Итак. Тестовая задача, чтобы закрепить навык: Создайте новую модель верстака в виде верхнего полублока и наложите на него текстуру
Tabula - Minecraft Modeler - табула, создаем модели [Techne] [1.16.5] [1.15.2] [1.12.2] [1.10.2] [1.7.10] [Гайд]
И сегодня я снова представлю вам программу, которая похожа по свойствам и функциям на Techne и MCAnimator. Она так же позволяет моделировать и анимировать модели внутри игры. но в рукаве у данной проги есть козырь, который позволит обогнать ей по характеристикам Течне и МСАниматор.
Табула - замечательная программа-мод, которая предназначена заменить Течне и возможно в скором будущем разработчикам это удастся. Данная программа превосходит Течне по функционалу, возможностям и простоте работы. Так же Табула в некотором смысле "обгоняет" MCAnimator (с которым мы не так давно знакомились) по большому числу параметров. В общем подробней о этой чудо-программе ниже по разделам.
Кстати, автор данной проги-мода известен под ником iChun. Думаю вы его знаете по таким модам, как: Hats, Gravity Gun, Morph, Portal Gun, Photoreal. и много других модов.
[1.6.4] Гайд: Создание брони с нестандартной моделью
Что нам потребуется:
1. MCP + Minecraft Forge.
2. Руки. Можно кривые, главное, чтобы основание было в правильной точке.
3. Приветствуется знание основ Java и ООП в целом.
4. Techne.
5. Растровый редактор изображений.
6. IDE или редактор кода.
6.1. Eclipse/IntelliJ IDEa/NetBeans/чтонибудьещё
6.2. NotePad++/VIM/чтонибудьещё
7. Уши глаза и умение слушать читать.
8. Знать что такое прокси и с чем его употребляют. Желательно.
Если из списка всё при себе - прошу под кат читаем, если нет - тоже читаем, (интересна жи):
Глава 1. Создание модели в Techne.
Создаем новый проект. Наследуем его от ModelBiped, если хотим, чтобы моделька корректно отображалась на ГГ.
Углубляться в процесс моделирования я не буду, дело ваше, но есть одна важная деталь:
Все детали определенной части модели должны иметь одинаковую систему координат с частью тела, которой они принадлежат. Начало системы координат в Techne обозначается синей сферой.
Вот начало координат у головы.
Создаем бокс, смотрим где его начало координат.
Ага, в той же точке. Значит всё правильно.
- И что теперь, как мне задавать позицию, умник?
- Так для тебя же создали специальный параметр Offset. А позиция нашей "сферы" задается параметром Position.
Благодаря им мы и будем задавать позицию нужным частям нашей модели.
Кстати, есть ещё кое-что хорошее в Techne.
Благодаря связке Copy + Paste With Coordinates можно сэкономить уйму времени, расставляя боксы модельки.
Остальную часть моделирования я опущу, покажу лишь итог моей фантазии:
Да, и ещё одно важное замечание, не забудьте удалить самого ГГ из итоговой модели.
Т.е. не должно быть никаких head/body/right/left(arm/leg).
Собственно, итог:
Дальше экспортируем модель в Java код.
Нам нужен ModelBiped, а не ModelBase.
Традиционно добавляем параметр Entity в нужные методы:
Вот такие методы должны быть:
Скриншоты:
Читайте также: