당신이 교체한다고 생각하는 그 방어구 텍스처는 사실 다른 파일입니다
방어구는 재질별로 나뉘고 레이어로 분리되어 있어서, 잘못된 파일을 칠하면 게임에서 팩이 적용되지 않은 것처럼 보입니다. 방어구 텍스처는 16×16이 아니라 64×32이며, 레깅스는 별도 파일을 씁니다.
방어구는 텍스처 팩의 가장 흔한 첫 프로젝트이자, 가장 흔한 첫 실패입니다. 흉갑을 칠하고 팩을 불러왔는데 아무것도 바뀌지 않습니다 — 당신이 편집한 파일이 게임이 그 부위를 읽는 파일이 아니기 때문입니다.
모든 방어구 재질은 별도의 파일입니다
단일 armor.png 같은 건 없습니다. 사슬 갑옷, 구리, 철, 금, 다이아몬드, 네더라이트, 가죽, 거북 인갑은 각각 고유한 파일을 가지며(가죽은 염색을 위한 leather_overlay가 추가됩니다), 각 레이어도 별도의 이미지입니다. 완전한 한 세트는 하나의 텍스처가 아니라, 슬롯과 레이어로 나뉜 작은 파일 가족입니다.
실질적인 결과: 다이아몬드 방어구를 다시 칠하는 팩은 철 방어구에 아무런 영향을 주지 않습니다. "모든 방어구를 X처럼 보이게" 하는 것이 목표라면, 파일 하나가 아니라 재질마다 파일 하나씩을 편집하는 것입니다.
레이어 분할, 그리고 그것이 중요한 이유
플레이어의 방어구는 재질마다 두 개의 파일을 읽습니다:
| 파일 | 담당 부위 |
|---|---|
humanoid/<material>.png | 투구, 흉갑, 부츠 |
humanoid_leggings/<material>.png | 레깅스만 |
레깅스가 별도 파일을 가지는 이유는 흉갑과 부츠와 동일한 언랩의 몸통 및 다리 영역을 사용하되, 그 아래의 약간 더 작은 모델에 그려지기 때문입니다. humanoid/를 칠하고 레깅스가 왜 그대로인지 의아해했다면, 그 분할을 힘든 방식으로 발견한 것입니다. 아기 몹은 세 번째 파일인 humanoid_baby/<material>.png를 읽습니다.
겉날개와 장식 함정
겉날개는 파일상의 방어구가 아닙니다 — 자체 텍스처를 가지며, 방어구 재질을 상속하지 않습니다. 흉갑을 다시 칠하는 팩은 겉날개를 그대로 둡니다.
장식(trim)은 더 나쁩니다. 장식 패턴과 장식 재질은 별도의 레지스트리이며, 장식은 기본 방어구 텍스처 위에 팔레트가 이동된 오버레이로 렌더링됩니다. 장식을 방어구 파일에 칠할 수는 없습니다; 게임이 런타임에 합성합니다. 장식 아래의 방어구를 다시 칠하면 기본이 바뀌는 것이지, 장식이 바뀌는 것이 아닙니다.
Java와 Bedrock은 이 부분에서 다릅니다
Java는 assets/minecraft/textures/entity/equipment/humanoid/<material>.png와 .../humanoid_leggings/<material>.png에서 방어구를 읽고, assets/minecraft/equipment/<material>.json가 어떤 재질이 어떤 파일을 사용하는지 알려줍니다. 많은 튜토리얼에 여전히 남아 있는 예전 textures/models/armor/ 폴더는 1.21.2 이후로 읽히지 않습니다. Bedrock은 자체 레이아웃과 자체 명명 규칙을 사용하며, 한쪽을 위해 만든 팩은 다른 쪽에서 로드되지 않습니다. 둘 다를 대상으로 한다면, 팩 두 개를 만드는 것입니다.
실제 크기로 작업하기
방어구 텍스처는 16×16이 아닙니다. 64×32이며, 언랩된 모델로 배치됩니다 — 머리, 몸통, 팔, 다리가 하나의 이미지에 고정된 영역으로 들어 있습니다. 16×16 정사각형을 칠하고 확대하면 번진 결과가 나옵니다, 왜냐하면 하나의 영역을 전체 언랩에 걸쳐 늘리는 것이기 때문입니다.
신뢰할 수 있는 방법은 바닐라 파일 자체를 원래 크기로 시작해서 그 위에 칠하는 것입니다. 그렇게 하면 영역이 정렬되고, 알파 채널이 유지되며, 출력 경로가 게임이 교체하는 것과 일치합니다.
Texture Maker는 정사각형 블록 및 아이템 텍스처를 다룹니다; 방어구의 경우, 바닐라 64×32 파일을 이미지 편집기에서 열고 그 크기로 그 위에 칠하세요.