1.8 アイテム テクスチャ指定方法

Modding・サーバPlugin制作・ツール制作など、開発関連の質問があればこちらにお願い致します。
フォーラムルール
質問関連フォーラムで質問する時は、必ず次のトピックを一読/厳守お願い致します。
viewtopic.php?f=5&t=999
  • (PostNo.260835)

1.8 アイテム テクスチャ指定方法

投稿記事by きょん » 2016年1月27日(水) 14:20

テクスチャの指定法がわかりません。
なぜか色々弄りまくっていたら一つは反映されました。

しかし、もう一つ作ろう(なぜできたのかわからないからちゃんと理屈分かろう...)ということで
moddingwikiのチュートリアルのサンプルコードと同じものを書きました。

SampleItem02.java
コード: 全て選択
package com.example.examplemod;

import net.minecraft.client.resources.model.ModelResourceLocation;
import net.minecraft.creativetab.CreativeTabs;
import net.minecraft.item.Item;
import net.minecraftforge.client.model.ModelLoader;
import net.minecraftforge.fml.common.Mod;
import net.minecraftforge.fml.common.Mod.EventHandler;
import net.minecraftforge.fml.common.event.FMLInitializationEvent;
import net.minecraftforge.fml.common.event.FMLPreInitializationEvent;
import net.minecraftforge.fml.common.registry.GameRegistry;

@Mod(modid = SampleItem02.MOD_ID,
      name = SampleItem02.MOD_NAME,
      version = SampleItem02.MOD_VERSION,
      dependencies = SampleItem02.MOD_DEPENDENCIES,
      acceptedMinecraftVersions = SampleItem02.MOD_ACCEPTED_MC_VERSIONS,
      useMetadata = true)
public class SampleItem02 {
/** ModId文字列 */
   public static final String MOD_ID = "SamleMod";
/** MOD名称 */
   public static final String MOD_NAME = "SampleItem02";
/** MODのバージョン */
   public static final String MOD_VERSION = "0.0.1";
/** 早紀に読み込まれるべき前提MODをバージョン込みで指定 */
   public static final String MOD_DEPENDENCIES = "required-after:Forge@[1.8-11.14.0.1239,)";
/** 起動出来るMinecraft本体のバージョン。記法はMavenのVersion Range Specificationを検索すること。 */
   public static final String MOD_ACCEPTED_MC_VERSIONS = "[1.8,1.8.8]";
/** 追加したいアイテムのインスタンスを格納する変数。レシピ等で利用。 */
   public static Item SampleItem02;

@EventHandler
    public void preInit(FMLPreInitializationEvent event) {
        SampleItem02 = new Item()
                .setCreativeTab(CreativeTabs.tabMaterials)/*クリエイティブのタブ*/
                .setUnlocalizedName("SampleItem")/*システム名の登録*/
      /*.setHasSubtypes(true)*//*ダメージ値等で複数の種類のアイテムを分けているかどうか。デフォルトfalse*/
      /*.setMaxDamage(256)*//*耐久値の設定。デフォルト0*/
      /*.setFull3D()*//*3D表示で描画させる。ツールや骨、棒等。*/
      /*.setContainerItem(Items.stick)*//*クラフト時にアイテムを返却できるようにしている際の返却アイテムの指定。*/
      /*.setPotionEffect(PotionHelper.ghastTearEffect)*//*指定文字列に対応した素材として醸造台で使える。PotionHelper参照のこと。*/
      /*.setNoRepair()*//*修理レシピを削除し、金床での修繕を出来なくする*/
                .setMaxStackSize(64);/*スタックできる量。デフォルト64*/
        //アイテムの登録。登録文字列はMOD内で被らなければ何でも良い。
        GameRegistry.registerItem(SampleItem02, "SampleItem02");

      //テクスチャ・モデル指定JSONファイル名の登録。
        if (event.getSide().isClient()) {
            //1IDで複数モデルを登録するなら、上のメソッドで登録した登録名を指定する。
           ModelLoader.setCustomModelResourceLocation(SampleItem02, 0, new ModelResourceLocation(MOD_ID + ":" + "sampleitem02", "inventory"));
       }

}

@EventHandler
public void init(FMLInitializationEvent event) {
}
}


sampleitem02.json
コード: 全て選択
{
    "parent": "builtin/generated",
    "textures": {
        "layer0": "samplemod:items/sampleitem01"
    },
    "display": {
        "thirdperson": {
            "rotation": [  -90, 0, 0  ],
            "translation": [ 0,1,-3 ],
            "scale": [ 0.55, 0.55, 0.55 ]
        },
        "firstperson": {
            "rotation": [ 0, -135, 25 ],
            "translation": [ 0, 4, 2 ],
            "scale": [ 1.7, 1.7, 1.7 ]
        }
    }
}



画像の置き場所:src/main/resources/assets/samplemod/textures/items
JSONの置き場所:src/main/resources/assets/samplemod/models/item

開発環境のver.等は
Launcher : 1.6.48
Minecraft : 1.8
forge : 1.8-11.14.3.1450 src

さまざまなサイトで調べてみましたが、答えがわかりません。
一週間ほどこれがわからず頭がやられています......。
調べている中で、「アイテムをゲームレジストリに登録した後にメインソースに
コード: 全て選択
Minecraft.getMinecraft().getRenderItem().getItemModelMesher().register(itemSample, 0, new ModelResourceLocation(MOD_ID + ":" + "itemSample", "inventory"));
を追加」
などと書かれていたので、そこらへんが反映さてない原因があるのかな、と考えています。


moddingどころか、プログラミングの方も初心者な私ですが、どうかお教えください。
足りない情報などがありましたら追加いたします。
なにとぞよろしくお願いします。
きょん
ID:1b872824
水から上がったとこ
 
記事: 4
登録日時: 2015年11月26日(木) 12:04

  • (PostNo.260848)

Re: 1.8 アイテム テクスチャ指定方法

投稿記事by elise_blacklab » 2016年1月27日(水) 16:28

ひとつは定数MOD_IDにタイプミスらしきものがあること,
もうひとつはファイル名・ディレクトリ名やmodid,アイテム等の各種登録名は大文字小文字を区別すること.
この2つに注意して書き直してみてください.
メイドつくってたりします.http://6docvc.net/
アバター
elise_blacklab
ID:5f84d3cc
掘り廃人
 
記事: 2456
登録日時: 2014年6月25日(水) 18:30


Return to 質問:開発・制作関連

x