提供: Minecraft Modding Wiki
移動先: 案内検索
(テクスチャの指定方法の簡単な解説)
 
(テクスチャの保存フォルダ)
4行目: 4行目:
  
 
==テクスチャの保存フォルダ==
 
==テクスチャの保存フォルダ==
テクスチャの保存フォルダ階層は以下の様なルールに基づいている必要が有る。
+
[[1.6のテクスチャの置き場所]]を参照。
 
 
(Item)/assets/<domain>/textures/items/hoge.png
 
(Block)/assets/<domain>/textures/blocks/hoge.png
 
(その他、GUI等)/assets/<Domain>/subfolder(階層自由)/hoge.png
 
コーディング時に指定する書式は、ItemとBlockは<br />
 
"domain:hoge"<br />
 
その他、GUIやEntityのテクスチャの指定は<br />
 
"domain:subfolder/hoge.png"<br />
 
か、あるいは、2変数指定の場合は,<br />
 
"domain", "subfolder/hoge.png"<br />
 
となる。
 
  
 
==ItemとBlockのアイコンテクスチャ指定方法==
 
==ItemとBlockのアイコンテクスチャ指定方法==

2014年4月5日 (土) 00:43時点における版

この記事は"Minecraft Forge Universal 9.10.0.xxx~"を前提MODとしています。

1.6でテクスチャの管理方法が変更されたことによる指定方法の変更点を解説する。

テクスチャの保存フォルダ

1.6のテクスチャの置き場所を参照。

ItemとBlockのアイコンテクスチャ指定方法

ItemとBlockのアイコンテクスチャの指定はsetTextureNameメソッドを用いて以下のように記述する。

public static Item hoge = new Item(ID).setTextureName("domain:textureName");
public static Block foo = new Block(ID).setTextureName("domain:textureName");

GUIのテクスチャ指定方法

GUI(やその他の場合)のテクスチャの指定にはResourceLocationクラスを用いる。まず、GUIのクラスに以下のクラスメンバ変数を追加。

private static final ResourceLocation GUITEXTURE = new ResourceLocation("domain", "gui.png");

そして、drawGuiContainerBackgroundLayerメソッドか、drawScreenメソッド内の最初に、以下のコードを挿入。

mc.getTextureManager().bindTexture(GUITEXTURE);

Entityのテクスチャの指定方法

EntityのRenderクラス内に、GUIと同様にResourceLocation変数を用意する。

private static final ResourceLocation TEXTURE = new ResourceLocation("domain", "gui.png");

そして、getEntityTextureメソッドをオーバーライドし、以下のように変更する。

@Override
protected ResourceLocation getEntityTexture(Entity entity) {
	return TEXTURE;
}

そして、doRenderメソッド内の最初の方で、以下のコードを挿入する。

this.bindEntityTexture(Entityのインスタンス);

TileEntitySpecialRendererでのテクスチャの指定方法

TileEntitySpecialRendererクラス内に、GUIと同様にResourceLocation変数を用意する。

private static final ResourceLocation TEXTURE = new ResourceLocation("domain", "gui.png");

そして、renderTileEntityAtメソッド内の最初の方で、以下のコードを挿入する。

this.bindTexture(TEXTURE);