提供: Minecraft Modding Wiki
2014年4月5日 (土) 00:43時点におけるA.K. (トーク | 投稿記録)による版 (テクスチャの保存フォルダ)
移動先: 案内検索

この記事は"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);