我对Minecraft 1 11中的纹理有问题,我创建了一个带有子项的Hammer类:
public Hammer(Hammers hammers){
this(hammers.name, hammers.size, hammers.material);
}
public Hammer(String name, Size range, Item.ToolMaterial material){
super(name, material);
this._range = range;
this.name = name;
setUnlocalizedName(name);
setRegistryName(name);
setCreativeTab(BookCraft.toolTab);
hasSubtypes = true;
this.efficiencyOnProperMaterial /= MathHelper.sqrt(_range.width*_range.height);
}
@Override
public void getSubItems(Item itemIn, CreativeTabs tab, NonNullList<ItemStack> subItems) {
for (Hammers h : Hammers.values()){
subItems.add(new ItemStack(new Hammer(h)));
}
}
public static enum Hammers{
BUILDER_HAMMER("BuilderHammer", new Size(2,1), ToolMaterial.STONE),
LIGHT_HAMMER("LightHammer", new Size(2,2), ToolMaterial.IRON),
MJÖLLNIR("Mjöllnir", new Size(3,2), ToolMaterial.DIAMOND),
WAR_HAMMER("WarHammer", new Size(2,1), ToolMaterial.DIAMOND),
LEGENDARY_HAMMER("LegendaryHammer", new Size(5,3), ToolMaterial.DIAMOND);
public final String name;
public final Size size;
public final ToolMaterial material;
public final float damage;
Hammers(String name, Size size, ToolMaterial material){
this.name = name;
this.size = size;
this.material = material;
this.damage = material.getDamageVsEntity();
}
}
这是ItemInit类,我用纹理注册项目:
//region Fields
public static Hammer hammes;
//public static Boers boer;
//public static BkAxe axe;
//endregion
//
public static void init(){
hammes = register(new Hammer(Hammer.Hammers.BUILDER_HAMMER));
//boer = register(new Boers("boer", new Size(5,3), Item.ToolMaterial.DIAMOND));
//axe = register(new BkAxe("axe", Item.ToolMaterial.DIAMOND, 7, 7,1000,20));
}
//region Helping Method
private static <T extends Item> T register(T item) {
GameRegistry.register(item);
if (item instanceof IBkBase) {
if (item.getHasSubtypes()){
item = registerWithSubtypes(item);
}
else
((IBkBase) item).registerItemModel();
}
return item;
}
public static <T extends Item> T registerWithSubtypes(T item){
NonNullList<ItemStack> items = NonNullList.create();
item.getSubItems(item, item.getCreativeTab(), items);
for (int i = 0; i < items.size(); i++){
Item tempItem = items.get(i).getItem();
String name = tempItem.getUnlocalizedName().substring(5);
ModelLoader.setCustomModelResourceLocation(tempItem, i,
new ModelResourceLocation(BookCraft.MOD_ID + ":" + name, "inventory"));
}
return item;
}
//endregion
所有文件夹命名正确,全网搜索,找不到任何帮助
以下是一些屏幕截图:
所有三个*. json都有相同的文本:
{
"parent": "item/handheld",
"textures": {
"layer0": "bk:items/Hammer1"
}
}
你能提出什么解决办法吗?
资源路径“bk:项目/Hammer1”与实际路径“bk/模型/项目/base Hammer”不匹配
项目
项目
项目
项目
此外,您的资源文件名需要全部小写(“hammer1”或“basehammer”),因为游戏将自动接受您提供的任何内容(例如“hammer1”)并调用。toLower()
,如果找不到具有该确切名称的文件,则抛出一个错误(例如,“Hammer1.json”不匹配)。
您需要使用“bk:items/hammer1”,将“item”目录重命名为“items”,并将json文件重命名为“hammer1.json”或“builderhammer”(无论您在注册时实际给它起了什么名字)。
渲染纹理是一张在 GPU 上的纹理。通常我们会把它设置到相机的 目标纹理 上,使相机照射的内容通过离屏的 frambuffer 绘制到该纹理上。一般可用于制作汽车后视镜,动态阴影等功能。 使用 RenderTexture // 方法一:把 3D 相机照射的内容绘制到 UI 的精灵帧上 export class CaptureToWeb extends Component { @proper
我正在尝试自学java语法,并将minecraft作为一个平台进行深入研究。但是我遇到了一个问题,因为没有加载我的纹理。就这点而言,我的本地化也是如此。这是我的代码块 这是我的课程 我的纹理保存在 根据日志,它无法找到我的纹理。这是我得到的信息 客户端加载并显示“我的项目”,但带有默认的黑色和紫色纹理。我做错了什么?我想这可能与我的命名约定有关,因为。lang文件也不会被读取,我给我的块起一个友好
纹理根本不渲染,几何体都是黑色的。 截图:http://i.imgur.com/ypMdQY4.png 代码:http://pastebin.com/SvB8rxxt 我也会链接到我试图渲染的纹理和transformations.py模块,但是我没有被允许放置两个以上链接的声誉。谷歌搜索“现代opengl 02”会给你前者的教程,“转换py”会给你后者。 搜索“纹理材料开始”以查找纹理材料的设置位
我试图弄清楚为什么我不能用LWJGL 3渲染任何纹理。我尝试了多种加载(PNGDecoder、STB、BufferedImage)和渲染纹理的方法。但结果总是一个白色的四边形。 主要类: 加载方法: 渲染方法: ModelTexture类只是存储一些现在不使用的信息,blue.png是16x16的png文件。 这是我在启动程序时得到的输出:
方法 构造函数 参数 类型 名称 备注 width number 宽 height number 高 返回值: 类型 名称 备注 Object BK.RenderTexture对象 例子: var renderTexture = new BK.RenderTexture(BK.Director.screenPixelSize.width, BK.Director.screenPixelSize.h
我刚刚开始学习Java,同时修改Minecraft。我已经看了一个关于使用Minecraft Forge API将块添加到游戏中的教程,但是我有一个问题。不再有“.setBlockTextureName()”方法,所以我不知道该怎么做。我有一个简单的块添加到我的游戏,但它没有纹理,我想添加一个纹理到它。我该如何为Minecraft 1.8做这件事呢? 附注:如果这是一个副本,我很抱歉,我只看到关于