3,430
个编辑
MCBBS Wiki欢迎您共同参与编辑!在参与编辑之前请先阅读Wiki方针。
如果在编辑的过程中遇到了什么问题,可以去讨论板提问。
为了您能够无阻碍地参与编辑 未验证/绑定过邮箱的用户,请尽快绑定/验证。
MCBBS Wiki GitHub群组已上线!
您可以在回声洞中发表吐槽!
服务器状态监控。点击进入
本站由MCBBS用户自行搭建,与MCBBS及东银河系漫游指南(北京)科技有限公司没有从属关系。点此了解 MCBBS Wiki 不是什么>>
(→享元设计模式: // Edit via Wikiplus) |
|||
| 第12行: | 第12行: | ||
Minecraft.getMinecraft().getTextureManager().bindTexture(location); | Minecraft.getMinecraft().getTextureManager().bindTexture(location); | ||
Minecraft就会尝试去原版和各个模组的.jar包中找路径为<code>assets/minecraft/textures/items/apple.png</code>的文件,代码中的<code>TextureManager#bindTexture</code> | Minecraft就会尝试去原版和各个模组的.jar包中找路径为<code>assets/minecraft/textures/items/apple.png</code>的文件,代码中的<code>TextureManager#bindTexture</code>的作用是把图片绑定到当前渲染器,那么,苹果的材质文件就会被绑定。当然,这段代码看不懂没关系。作者只是想说明ResourceLocation对象的使用机制:一般情况下,它实际上能指代一个位于某个.jar包中路径为<code>"assets/" + resourceDomain + "/" + resourcePath</code>的文件。 | ||
但是也不是所有时候都是如此,比如在设定物品的模型文件的时候,resourcePath就不需要打那么多了,只需要<code>new ResourceLocation(modid, itemid)</code>就可以了,比如<code>new ResourceLocation("minecraft", "apple")</code> | 但是也不是所有时候都是如此,比如在设定物品的模型文件的时候,resourcePath就不需要打那么多了,只需要<code>new ResourceLocation(modid, itemid)</code>就可以了,比如<code>new ResourceLocation("minecraft", "apple")</code>。所以,作者的建议是,如果是你自定义的渲染操作,你按照“路径为<code>"assets/" + resourceDomain + "/" + resourcePath</code>”的规则,是没问题的;但是如果你要用Minecraft或Forge内置的某些方法,其中要传入一个ResourceLocation对象,那你就要小心了,还是点进去看看Minecraft或Forge的代码到底是怎么处理这个ResourceLocation的吧。 | ||
那么,那个只有一个resourceName的构造方法是怎么回事呢?再举个例子,我可以这样: | 那么,那个只有一个resourceName的构造方法是怎么回事呢?再举个例子,我可以这样: | ||