이 글은 블록 벤치 자체에 대한 내용은 다루지 않습니다.
이 글은 마인크래프트 기초 지식을 다루지 않습니다.
개요
variant(변종)는 animated java에서 지원하는 텍스쳐, NBT 변경 기능입니다.
이 기능을 사용해 모델은 그대로 유지한 채 다양한 텍스쳐를 가진 엔티티를 만들 수 있습니다.
마인크래프트 바닐라에 추가된 돼지, 소, 개구리 변종을 생각하면 됩니다.
생성하기

1강에서 사용한 모델을 그대로 사용하겠습니다. 다만 색 조합이 좀 바뀌긴 했습니다.

좌측하단을 보면 VARIANTS라는 창이 존재합니다. 최소화되어있을 경우 위 화살표를 눌러서 보이게 할 수 있습니다.

새로운 변종을 생성해보겠습니다.

즉시 New Variant로 새로운 변종이 생성됩니다. 연필 모양을 눌러 수정할 수 있습니다.
이때 Default 변종은 수정이 불가능하며 모든 변종의 기본값입니다.

- Display Name
- 변종의 이름입니다.
- Name
- 변종의 ID로 커맨드에서 해당 변종을 참조할 때 사용합니다.
- Generate Name from Display Name
- 체크하면 Display Name을 바탕으로 Name을 생성합니다.
- Texture Map
- 해당 변종에서 텍스쳐를 어떻게 변경할지 설정합니다.
- Included / Excluded Nodes
- excluded nodes에 있는 노드들은 텍스쳐를 변경하지 않습니다. (Map에 넣어놓아도 무시합니다)
그럼 이제 Texture Map을 직접 설정해봅시다

우선 어떤 텍스쳐를 교체할지 생성합니다. 저는 sad 변종일 경우 face -> sad_face로 바뀌도록 할겁니다.

Map을 설정하는 방법은 간단합니다. + 버튼을 누른 후 원하는 텍스쳐를 선택해줍니다.

이제 sad를 누를 때와 Default를 누를 때, 각각 표정이 달라지는 모습을 볼 수 있습니다.
적용하기

자 이제 적용을 해봅시다. 일단 1강에서 하듯이 소환하면 Default 변종으로 소환이 됩니다.
이 상태에서 변종을 적용하려면 function animated_java/<네임스페이스>/variants/<변종 이름>/apply 함수를 root 기준으로 실행시키면 됩니다.


그럼 텍스쳐가 바뀌는 것을 볼 수 있습니다.
마찬가지로 기본 모습으로 돌리고 싶다면 변종 이름을 default 로 설정하면 됩니다.
변종을 적용하는 방법은 이것말고도 하나 더 있습니다. 바로 소환할 때 준 args 를 사용하면 됩니다.

제가 만든 변종은 이름이 sad이니 variant:"sad"를 주면 될거같습니다.

그러면 바로 sad 변종을 가진 모델이 생성됩니다.

NBT 수정하기
변종은 각 그룹의 NBT도 별개로 처리합니다.

그룹을 마우스 우클릭하고 보면 Bone Config라는 칸이 존재합니다.

눌러보면 해당 그룹의 NBT를 설정할 수 있는 창이 뜹니다.
- Inherit Settings
- 해당 그룹의 상위 그룹에서 NBT 정보를 똑같이 받아올지 여부입니다.
- Use NBT
- 미리 제공되는 NBT 설정 기능이 아닌 직접 NBT를 작성해서 수정할 수 있게 합니다.
위 2개를 제외하고는 NBT를 간단하게 설정할 수 있는 기능들을 제공합니다.
그리고 맨 위를 보면 선택된 변종이 나오는데 이는 변종마다 이 NBT 값을 따로따로 지정할 수 있기 때문입니다.

그래서 두 변종별로 값을 다르게 설정해보았습니다.

변종에 따라 NBT 데이터가 잘 바뀌는 모습입니다.
다만 생각한 모습과 다르게 이름이 좀 밑에서 나옵니다. Head에 해당하는 엔티티가 밑에 있어서 그런 것 같습니다.
이로서 변종에 대해 사용하는 법을 확인해보았습니다.
'마인크래프트 강좌 > 블록벤치 강좌' 카테고리의 다른 글
| [BlockBench Plugin][Animated Java] -3- Locator & Camera (0) | 2025.08.04 |
|---|---|
| [BlockBench Plugin][Animated Java] -1- 기초 (4) | 2025.07.24 |