Minecraft(我的世界)中文论坛

 找回密码
 注册(register)

!header_login!

只需一步,立刻登录

楼主: SQwatermark

[模组资料] [Doc] |高清修复OptiFine| 官方帮助文档翻译

[复制链接]
SQwatermark 当前离线
帖子
主题
精华
贡献
最后登录
1970-1-1
爱心
积分
2211
钻石
性别
保密
注册时间
2018-10-23
查看详细资料
 楼主| 发表于 2019-9-13 11:43:20 | 显示全部楼层
本帖最后由 SQwatermark 于 2019-11-14 17:34 编辑

自发光纹理
Emissive Textures
概述|Overview
可以在方块材质上添加永远以最大亮度被渲染的覆盖层,这可以模拟材质的发光部分。
自发光覆盖层具有与基础材质相同的名称和一个自定义的后缀。
例如:
  bedrock.png   - 基础材质
  bedrock_e.png - 自发光覆盖层
除SOLID层之外,自发光覆盖层和基础材质在同一层被渲染,
而SOLID层的覆盖层被渲染为CUTOUT_MIPPED。
覆盖层也可以用于物品、怪物和方块实体。

译者注:虽然自发光纹理很亮堂,但是对光照等级没有任何影响,也不会照亮周围的方块,如果你想让某个怪物或者物品能够照亮周围,你可能需要看看"动态光源"章节

属性文件|emissive.properties

此文件应该放在资源包文件夹"assets/minecraft/optifine" 下。
这个属性文件内只有一个属性,表示自发光覆盖层的自定义后缀。
  1. suffix.emissive=_e
复制代码
回复

使用道具 举报

SQwatermark 当前离线
帖子
主题
精华
贡献
最后登录
1970-1-1
爱心
积分
2211
钻石
性别
保密
注册时间
2018-10-23
查看详细资料
 楼主| 发表于 2019-9-13 12:48:07 | 显示全部楼层
本帖最后由 SQwatermark 于 2019-11-14 17:15 编辑

使用帮助
某些总结
等待整理
回复

使用道具 举报

SQwatermark 当前离线
帖子
主题
精华
贡献
最后登录
1970-1-1
爱心
积分
2211
钻石
性别
保密
注册时间
2018-10-23
查看详细资料
 楼主| 发表于 2019-9-13 13:01:02 | 显示全部楼层
本帖最后由 watermark 于 2019-9-24 14:31 编辑

自定义方块
Custom Blocks
配置文件|block.properties
位置:"/assets/minecraft/optifine/block.properties"

渲染层 (可选)
定义指定方块的自定义渲染层

有以下几种渲染层:
  solid - no alpha, no blending (固体材质)
  cutout - alpha, no blending (cutout textures)
  cutout_mipped - alpha, no blending, mipmaps (cutout with mipmaps)
  translucent - alpha, blending, mipmaps (水, 彩色玻璃)

固体不透明方块 (石头, 泥土, 矿石, 诸如此类) 无法使用自定义渲染层,
因为这会影响面剔除(face culling),环境光遮蔽(ambient occlusion),光传播(light propagation),等。

示例:
  layer.translucent=glass_pane fence wooden_door

  1. layer.solid=<blocks>
  2. layer.cutout=<blocks>
  3. layer.cutout_mipped=<blocks>
  4. layer.translucent=<blocks>
复制代码
回复

使用道具 举报

SQwatermark 当前离线
帖子
主题
精华
贡献
最后登录
1970-1-1
爱心
积分
2211
钻石
性别
保密
注册时间
2018-10-23
查看详细资料
 楼主| 发表于 2019-9-13 16:57:14 | 显示全部楼层
本帖最后由 watermark 于 2019-9-24 14:38 编辑

自定义物品材质
Custom Item Textures
全局属性|cit.properties

单个物品材质|cit_single.properties

回复

使用道具 举报

SQwatermark 当前离线
帖子
主题
精华
贡献
最后登录
1970-1-1
爱心
积分
2211
钻石
性别
保密
注册时间
2018-10-23
查看详细资料
 楼主| 发表于 2019-9-13 17:42:55 | 显示全部楼层
本帖最后由 SQwatermark 于 2019-11-14 17:13 编辑

自定义GUI
Custom GUIs
概述|Overview

如果你想制作一个自定义GUI,请在 "assets/minecraft/optifine/GUI/container" 文件夹或者其任意一层子文件夹中创建一个.properties文件,并按照下面的模板编辑属性文件。

不同类型的容器有不同的要求和限制。详见下方。

常规属性|General properties

容器 (必需)
这是什么容器的GUI?
可能的值:
  anvil(铁砧) beacon(信标) brewing_stand(酿造台) chest(箱子) crafting(工作台) dispenser(发射器) enchantment(附魔)
  furnace(熔炉) hopper(漏斗) horse(马) villager(村民) shulker_box(潜影盒) creative(创造模式物品栏) inventory(物品栏)
  1. container=<容器名>
复制代码

材质 (必需)
GUI材质的替换。
"texture" 属性替换默认的GUI材质。
"texture.<路径>" 属性可以用于替换任何GUI材质。
<路径> 相对于 "/assets/minecraft/textures/gui"
创造模式物品栏GUI没有默认材质,所以必须使用路径材质。

创造模式物品栏的例子:
  # 文件 "assets/minecraft/optifine/gui/container/creative/creative_desert.properties
  container=creative
  biomes=desert
  texture.container/creative_inventory/tab_inventory=tab_inventory_desert
  texture.container/creative_inventory/tabs=tabs_desert
  texture.container/creative_inventory/tab_items=tab_items_desert
  texture.container/creative_inventory/tab_item_search=tab_item_search_desert

至少需要一个 "texture" 或者 "texture.<路径>"。
  1. texture=<材质>
  2. texture.<路径>=<材质>
复制代码

自定义实体或方块实体名称 (可选)
也许你想让特定名称的容器显示这个GUI,就需要用到这个属性
该名称使用与自定义物品材质的NBT标签类似的语法。
以 "!" 开头的值表示相反的匹配 (非)。

示例:
- 匹配名称:
  name=My Sword

- 使用特殊格式匹配名称:
注: 为了获得最佳兼容性,请使用转义序列 '\u00a7' 而不是§
  name=\u00a74\u00a7oMy Sword

- 使用 ? 和 * 的通配符
  name=pattern:Letter to *
匹配
  Letter to Herobrine
  Letter to a creeper
不匹配
  letter to Herobrine

- 通配符, 不区分大小写
  name=ipattern:Letter to *
匹配
  Letter to Herobrine
  Letter to a creeper
  letter to Herobrine

- Java正则表达式
  (See http://docs.oracle.com/javase/6/docs/api/java/util/regex/Pattern.html)
  name=regex:Letter (to|from) .*
匹配
  Letter to Herobrine
  Letter from Herobrine
不匹配
  letter to Herobrine
  A Letter to Herobrine

- Java正则表达式, 不区分大小写
  name=iregex:Letter (to|from) .*
匹配
  Letter to Herobrine
  Letter from Herobrine
  letter to Herobrine
不匹配
  A Letter to Herobrine

注: 所有反斜线也必须输入两次.
正则表达式和通配符中的文字反斜杠必须输入4次.
正确:
  name=regex:\\d+
  name=regex:\\\\
  name=/\\/\\
错误:
  name=regex:\d+
  name=regex:\\
  name=/\/\
  1. name=<名称>
复制代码

生物群系 (可选)
这里列出了原版生物群系: https://minecraft.gamepedia.com/Biome#Biome_IDs
也可以使用模组添加的生物群系。
  1. biomes=<生物群系列表>
复制代码

高度 (可选)
  1. heights=<高度范围>
复制代码

箱子的特定属性|Chest specific properties

是否为大箱子 (可选)
  1. large=<true|false>
复制代码

是否为陷阱箱 (可选)
  1. trapped=<true|false>
复制代码

是否为圣诞节箱子 (可选)
  1. christmas=<true|false>
复制代码

是否为末影箱 (可选)
  1. ender=<true|false>
复制代码

信标的特定属性|Beacon specific properties

等级 (可选)
  1. levels=<等级>
复制代码

村民的特定属性|Villager specific properties

职业 (可选)
列出村民职业,可选填等级

格式
  <职业>[:等级1,等级2,...]

可选择的职业: none(失业), armorer(盔甲匠), butcher(屠夫), cartographer(制图师), cleric(牧师), farmer(农民),
         fisherman(渔夫), fletcher(制箭师), leatherworker(皮匠), librarian(图书管理员), mason(石匠),
         nitwit(傻子), shepherd(牧羊人), toolsmith(工具匠), weaponsmith(武器匠)

示例:
  # 职业为农民 (所有等级) 或图书管理员 (等级为 1,3,4)
  professions=farmer librarian:1,3-4
  # 职业全名
  professions=minecraft:fisherman minecraft:shepherd minecraft:nitwit
  1. professions.<n>=<职业>
复制代码

马和发射器的特定属性|Horse and dispenser specific properties

变体 (可选)
马的变体: horse donkey mule llama
发射器的变体: dispenser dropper
  1. variants=<变体>
复制代码

羊驼和潜影盒的特定属性|Lllama and shulker box specific properties

颜色 (可选)
写出潜影盒颜色或羊驼背上的地毯颜色
颜色列表: white orange magenta light_blue yellow lime pink gray silver cyan purple blue brown green red black
  1. colors=<颜色>
复制代码
回复

使用道具 举报

SQwatermark 当前离线
帖子
主题
精华
贡献
最后登录
1970-1-1
爱心
积分
2211
钻石
性别
保密
注册时间
2018-10-23
查看详细资料
 楼主| 发表于 2019-9-13 17:58:23 | 显示全部楼层
本帖最后由 SQwatermark 于 2019-11-8 17:12 编辑

尚未完成的事
Todo

连接材质
- innerSeams
- renderpass

自定义物品
- method
- cap
- fade

随机怪物
- redcow_overlay
- snowman_overlay

其他
- line.properties
- renderpass.properties
- compass.properties

ps:这是sp614x没完成的东西,不是我没翻译的东西

回复

使用道具 举报

SQwatermark 当前离线
帖子
主题
精华
贡献
最后登录
1970-1-1
爱心
积分
2211
钻石
性别
保密
注册时间
2018-10-23
查看详细资料
 楼主| 发表于 2019-9-13 19:14:47 | 显示全部楼层
本帖最后由 SQwatermark 于 2019-11-24 18:40 编辑

自定义天空
Custom Sky
概述|Overview
这是OptiFine的自定义天空功能的配置模板
基于MCPatcher的Better Skies mod的配置

将属性文件放置在材质包的如下位置
  ~/sky/world0/sky0.properties
  ~/sky/world0/sky1.properties
  ... 诸如此类.
每个文件都表示天空的一层。
OptiFine将持续加载直到找不到属性文件为止。
属性文件的加载顺序是它们在游戏中被渲染的顺序。

此外,两个特殊的属性文件将会应用于太阳和月亮(如果它们存在的话)。
这主要是为了让你能够覆盖太阳和月亮的混合方法。
  ~/sky/world0/sun.properties  (取代 sun.png)
  ~/sky/world0/moon_phases.properties (取代 moon_phases.png)

替换材质应该和 sun.png 或 moon_phases.png 相对应,
而不是一个完整的天空盒。
所有的属性名都区分大小写

在属性文件中可以使用下列任何一种语法来指定一个材质文件的路径:
相对于 assets/minecraft:
  路径/文件名 -> assets/minecraft/路径/文件名
相对于 assets/minecraft/optifine:
  ~/路径/文件名 -> assets/minecraft/optifine/路径/文件名
相对于属性文件的位置:
  ./路径/文件名 -> (属性文件的路径)/路径/文件名
标注命名空间的绝对路径:
  命名空间:路径/文件名 -> assets/命名空间/路径/文件名

注: 路径中的 "world0" 指的是主世界。
如果存在其他世界的天空(下界和末地不使用标准天空渲染方法),
他们的文件应该在 ~/sky/world<世界序号> 内。

天空盒模板:
skybox.png

天空属性|Sky properties

(可选) 替换材质
它可以在材质包的任何位置。
而且多个属性文件可以共用相同的材质。如果未指定,
会使用相同目录下的 sky<n>.png。
  1. source=<材质>
复制代码

(必需) 淡入/淡出时间
所有时间都使用小时:分钟的24小时格式。
参考:
  日出     =  6:00 = /time set 0
  正午     = 12:00 = /time set 6000
  日落     = 18:00 = /time set 12000
  午夜     =  0:00 = /time set 18000
淡出/淡入时间控制混合时的明度。
  在 startFadeIn 和 endFadeIn 之间:   从0升到1
  在 endFadeIn 和 startFadeOut 之间:  固定为1
  在 startFadeOut 和 endFadeOut 之间: 从1降到0
  在 endFadeOut 和 startFadeIn 之间:  固定为0
注意你不需要指定startFadeOut的值;
它是由其他三个值确定的。
  1. startFadeIn=<小时:分钟>
  2. endFadeIn=<小时:分钟>
  3. endFadeOut=<小时:分钟>
复制代码

(可选) 混合方法
这里的 "上一层" 可以指默认的天空
或由 sky<n-1>.properties 定义的上一个自定义天空。
支持的混合方法有
  add:      将天空位图叠加到上一层
  subtract:
  multiply: 将之前的RGBA值乘以当前位图中的RGBA值
            
  dodge:
  burn:
  screen:
  replace:  用当前位图完全替换上一层。该方法没有淡入和淡出;
               如果根据淡入和淡出时间计算的亮度大于0,则使用全像素值。
  overlay:  大于0.5的RGB值会让图片变亮, 小于0.5变暗
  alpha:    按照alpha值加权平均
默认方法为add
  1. blend=add
复制代码
译者注:此处未说明的混合方法参考 "属性文件说明" 中的 "混合方法" 章节

(可选) 旋转
位图是否应该随时间旋转。
默认值为true。
旋转的速度和方向也可以控制。
  1. rotate=true
复制代码

(可选) 旋转速度
这里指旋转速度相对于默认的每天旋转360度的倍数
例如,值为0.5时,每两天旋转一周;而某些不合常理的数值可以让云每天出现在不同位置。

注:  这并不影响始终在24小时周期内发生的淡入和淡出。
  1. speed=1.0
复制代码

(可选) 旋转轴
如果玩家朝指定的方向看,天空盒会以顺时针方向围绕视线旋转。
默认的旋转是沿着南方向轴(东升西落)。

便于参考,下面给出六个基本方向对应的向量。
然而,旋转轴可以是除0 0 0之外的任何向量。
不必刻意使用单位矢量。
  down  =  0 -1  0
  up    =  0  1  0
  north =  0  0 -1
  south =  0  0  1
  west  = -1  0  0
  east  =  1  0  0
  1. axis=0.0 0.0 1.0
复制代码

(可选) 天气
渲染这一层所需要的天气条件
多个值可用空格键分隔
例如 "weather=clear rain thunder"
默认为 "clear"
  1. weather=clear|rain|thunder
复制代码

(可选) 生物群系和高度范围
将天空覆盖层限制到特定高度范围和生物群系。
这里列出了原版生物群系: https://minecraft.gamepedia.com/Biome#Biome_IDs
也可以使用模组添加的生物群系。
  1. biomes=<生物群系列表>
  2. heights=<高度范围>
复制代码

(可选) 过渡时长
覆盖层亮度的过渡时长 (秒)。
用于平滑急剧的变化,例如不同生物群系之间的天空的替换。
默认为1秒。
  1. transition=1
复制代码

回复

使用道具 举报

SQwatermark 当前离线
帖子
主题
精华
贡献
最后登录
1970-1-1
爱心
积分
2211
钻石
性别
保密
注册时间
2018-10-23
查看详细资料
 楼主| 发表于 2019-9-13 19:42:09 | 显示全部楼层
本帖最后由 watermark 于 2019-9-24 14:45 编辑

自定义载入画面
Custom Loading Screens
属性文件|loading.properties

路径: "/assets/minecraft/optifine/gui/loading/loading.properties"
控制世界载入画面

每个维度的自定义载入画面的背景图片路径为:
   /assets/minecraft/optifine/gui/loading/background<dim>.png
"dim" 指维度ID:
  - 下界      = -1
  - 主世界    = 0
  - 末地      = 1

模组添加的维度也可以以这种方式被识别。

缩放模式 (可选)
背景材质的自定义缩放模式

  fixed - 使用固定尺寸 (默认)
  full - 全屏, 保持长宽比
  stretch - 全屏
  1. scaleMode=<fixed|full|stretch>
复制代码

尺寸 (可选)
背景材质的自定义尺寸。
对于缩放模式 "fixed",它定义了要使用的缩放尺寸 (默认为2)。
这与当前的GUI尺寸是联系的。
对于缩放模式 "full" 和 "stretch" 它定义了屏幕上
有多少张完整的材质 (默认为1)。
  1. scale=2
复制代码

是否居中 (可选)
定义背景材质是否应居中显示在屏幕上。
默认为false.
  1. center=<true|false>
复制代码

属性 "scaleMode", "scale" 和 "center" 也可以在每个维度单独定义。
  1. dim<dim>.scaleMode=<fixed|full|stretch>
  2. dim<dim>.scale=2
  3. dim<dim>.center=<true|false>
复制代码

回复

使用道具 举报

SQwatermark 当前离线
帖子
主题
精华
贡献
最后登录
1970-1-1
爱心
积分
2211
钻石
性别
保密
注册时间
2018-10-23
查看详细资料
 楼主| 发表于 2019-9-24 13:16:59 | 显示全部楼层
本帖最后由 watermark 于 2019-9-24 13:18 编辑

系统属性
System Properties
系统属性必须添加到启动程序配置文件 (launcher profile) 中的 "JVM Arguments" 字段中。
例如,要启用扩展日志记录,请在JVM参数中添加 "-Dlog.detail=true"。

启用扩展日志记录
  1. log.detail=<true|false>
复制代码

将 final texture map 保存在 "debug" 文件夹中
  1. saveTextureMap=<true|false>
复制代码

将 final shader sources 保存在 "shaderpacks/debug" 文件夹中
  1. shaders.debug.save=<true|false>
复制代码

自动动态化所有怪物模型
在测试自定义实体模型时很有用
  1. animate.model.living=<true|false>
复制代码

从文件夹 "playermodels" 读取玩家模型
  1. player.models.local=<true|false>
复制代码

每5秒自动重载一次玩家模型
在测试自定义本地玩家模型时很有用
  1. player.models.reload=<true|false>
复制代码
回复

使用道具 举报

SQwatermark 当前离线
帖子
主题
精华
贡献
最后登录
1970-1-1
爱心
积分
2211
钻石
性别
保密
注册时间
2018-10-23
查看详细资料
 楼主| 发表于 2019-9-24 14:19:21 | 显示全部楼层
本帖最后由 SQwatermark 于 2019-11-13 21:09 编辑

随机实体材质
Random Entities
概述|Overview
随机实体材质基于MCPatcher的 Random Mobs 模组

可以向下兼容随机怪物(Random Mobs),仍然支持在 "assets/minecraft/optifine/mob" 中的材质和配置文件。

你可以把备选材质放在资源包的 "optifine/random" 文件夹下,和 "textures" 文件夹中的原版材质是对应的:

基础材质:
  assets/minecraft/textures/entity/creeper/creeper.png
备选材质:
  assets/minecraft/optifine/random/entity/creeper/creeper2.png
  assets/minecraft/optifine/random/entity/creeper/creeper3.png
  assets/minecraft/optifine/random/entity/creeper/creeper4.png
  诸如此类
属性文件 (可选):
  assets/minecraft/optifine/random/entity/creeper/creeper.properties

基础材质:
  assets/minecraft/textures/painting/paintings_kristoffer_zetterstrand.png
备选材质:
  assets/minecraft/optifine/random/painting/paintings_kristoffer_zetterstrand2.png
  assets/minecraft/optifine/random/painting/paintings_kristoffer_zetterstrand3.png
  assets/minecraft/optifine/random/painting/paintings_kristoffer_zetterstrand4.png
  诸如此类
属性文件 (可选):
  assets/minecraft/optifine/random/painting/paintings_kristoffer_zetterstrand.properties

属性文件由一系列规则组成,这些规则从1开始编号。

每一组规则都指定了一些要使用的实体材质,以及一个或多个使用它们的条件。

单人游戏中怪物生成的坐标或者多人游戏中怪物第一次被玩家发现时的坐标会依次与每一条规则进行匹配,第一个匹配的规则将被使用。
如果没有匹配的规则,将使用默认材质 (例如 creeper.png)。

如果某个实体没有设置 ".properties" 文件,那么所有可以使用的皮肤都将应用于该实体。

有多张材质的实体将使用基础材质的 ".properties" 文件
也就是说,你不需要创建
  wolf.properties
  wolf_tame.properties
  wolf_angry.properties
如果每张材质都有相同数量的备选材质,只需要wolf.properties就可以应用于这三者。
"_eyes" 和 "_overlay" 类似。

所有的属性名都区分大小写。
除非另作说明,所有的路径都相对于assets/minecraft。

属性文件|random_entities.properties

(必须) 材质的序号
材质序号 "1" 表示 "assets/minecraft/texture" 中的默认材质
  1. textures.<n>=<材质序号列表>
复制代码
也可以使用随机怪物属性 "skins.<n>",二者选一
  1. skins.<n>=<皮肤列表>
复制代码

(可选) 随机选项的权重
权重之和不需要正好为100或者其他特定数字.
权重的数量应该和材质的数量一致
  1. weights.<n>=<等数量的权重列表>
复制代码

(可选) 生物群系列表
这里列出了原版生物群系名: https://minecraft.gamepedia.com/Biome#Biome_IDs
也可以使用模组添加的生物群系
  1. biomes.<n>=<生物群系列表>
复制代码

(可选) 高度范围
取代了旧的minHeight和maxHeight属性。
  1. heights.<n>=<高度范围>
复制代码

(可选) 实体名
使用和自定义物品材质NBT标签相似的语法.
以 "!" 开头的值表示否定的匹配 (非).
示例:
- 匹配字符串: "name=Pinky"
- 匹配特殊格式: "name=\u00a74\u00a7oPinky"  
   (为了获得最佳兼容性,请使用转义序列'\u00a7'而不是"§")
- 使用 "?" 和 "*" 的通配符: "name=pattern:Pinky*"
- 通配符, 不区分大小写: "name=ipattern:Pinky*"
- Java正则表达式: "name=regex:Pin(k)+y"
   (参考 http://docs.oracle.com/javase/6/docs/api/java/util/regex/Pattern.html)
- Java正则表达式, 不区分大小写: "name=iregex:Pin(k)+y"
匹配字符串中的所有反斜线必须输入两次.  
正则表达式和通配符中的文字反斜杠必须输入4次.
正确:
  name=regex:\\d+
  name=regex:\\\\
  name=/\\/\\
错误:
  name=regex:\d+
  name=regex:\\
  name=/\/\
  1. name.<n>=<实体名>
复制代码

职业 (可选)
列出村民职业,可选填等级
格式为:
  <职业>[:等级1,等级2,...]
可选的职业: none(失业), armorer(盔甲匠), butcher(屠夫), cartographer(制图师), cleric(牧师), farmer(农民),
                  fisherman(渔夫), fletcher(制箭师), leatherworker(皮匠), librarian(图书管理员), mason(石匠),
                  nitwit(傻子), shepherd(牧羊人), toolsmith(工具匠), weaponsmith(武器匠)

示例:
  # 所有等级的农民或等级为1, 3, 4的图书管理员
  professions=farmer librarian:1,3-4
  # 可以使用职业的全名
  professions=minecraft:fisherman minecraft:shepherd minecraft:nitwit
  1. professions.<n>=<职业>
复制代码

项圈颜色 (可选)
列出狼/猫的项圈颜色
可选的颜色: white orange magenta(品红色) light_blue yellow lime(黄绿色)
         pink gray light_gray cyan(青色) purple(紫色) blue brown green red black
示例:
  colarColors=pink magenta purple
  1. collarColors.<n>=<颜色>
复制代码

是否为幼崽 (可选)
只对怪物有效
  1. baby.<n>=<true/false>
复制代码

生命值(可选)
生命值的范围,可以以数值或者百分比的形式给出。
只对怪物有效。
示例:
  health.1=10
  health.2=5-8 10-12
  health.3=0-50%
  1. health.<n>=<list>
复制代码

月相(可选)
月相为0-7的整数
示例:
  moonPhase.1=3
  moonPhase.2=0 1 2
  moonPhase.1=0-2 4-7
  1. moonPhase.<n>=<list>
复制代码

时间(可选)
按照刻计算的时间 (0-24000)
示例:
  dayTime.1=2000-10000
  dayTime.2=0-1000 18000-24000
  1. dayTime.<n>=<list>
复制代码

天气(可选)
不同值可以用空格分隔
例如 "weather=clear rain thunder"
  1. weather.<n>=<clear|rain|thunder>
复制代码

示例|Examples

creeper/creeper.properties:

将 creeper10.png 到 creeper14.png 应用于所有位于地下的苦力怕.
creeper13.png 当前出现的概率为 7.3% (3/(10+10+10+3+10)).
  1. skins.1=10-14
  2. weights.1=10 10 10 3 10
  3. heights.1=0-55
复制代码

将 5, 7, 9 应用于高于80的山区地带.
  1. skins.2=5 7 9
  2. biomes.2=ExtremeHills DesertHills ForestHills ExtremeHillsEdge JungleHills IceMountains
  3. heights.2=80-255
复制代码

没有其他规则匹配这些材质时,需要额外列出剩余的材质,这样他们会等概率地随机出现在上述情况以外的区域。
请记住,如果没有这部分,这些材质就不会被使用,实体材质就只会显示为 creeper/creeper.png。
  1. skins.3=1-4 6 8 15-20
复制代码
回复

使用道具 举报

SQwatermark 当前离线
帖子
主题
精华
贡献
最后登录
1970-1-1
爱心
积分
2211
钻石
性别
保密
注册时间
2018-10-23
查看详细资料
 楼主| 发表于 2019-9-24 15:30:35 | 显示全部楼层
本帖最后由 SQwatermark 于 2019-11-14 19:12 编辑

自定义实体模型
Custom Entity Models
实体模型|cem_model.txt
部件模型|cem_part.txt

自定义实体模型动画|cem_animation.txt


译者注:制作模型的话推荐cubikstudio或者是blockbench,前者是收费的,后者是免费的
回复

使用道具 举报

SQwatermark 当前离线
帖子
主题
精华
贡献
最后登录
1970-1-1
爱心
积分
2211
钻石
性别
保密
注册时间
2018-10-23
查看详细资料
 楼主| 发表于 2019-11-8 12:32:43 | 显示全部楼层
本帖最后由 SQwatermark 于 2019-11-14 17:26 编辑

自定义动画
Custom Animations
概述|Overview
OptiFine的自定义动画(Custom Animations)的使用说明,
基于McPatcher的自定义动画

在Minecraft 1.5中,Mojang添加了动态化任何方块或物品材质的功能(最初是MCPatcher提供的功能)。
然而,还没有办法动态化其他材质,如生物皮肤和GUI。
OptiFine填补了这一空白,使任何任何矩形区域的材质都可以被动态化。
这甚至包括OptiFine的其它功能所用到的特殊材质,比如随机生物皮肤(random mob skins)和天空盒(skyboxes)。

对于方块和物品材质,包括CTM和CIT,可以继续使用Mojang的mcmeta方法。

译者注:如果你对Minecraft原版的动态材质还没有了解,建议阅读Minecraft wiki"资源包"条目的"动态材质"小节

动态材质|Animated textures
要创建一个动画,首先指定材质,然后指定你想要动态化的区域的x和y坐标以及宽度与高度。
并创建由帧组成的垂直带状图片 (类似于胶卷,下面就用胶卷表述这个东西吧) 作为动画的内容。
胶卷的宽度应该与要动态化的区域的宽度相同,高度应该是动态化区域的高度的整数倍。

创建一个任意名称的属性文件。把它放到assets/minecraft/optifine/anim文件夹,
或其任何子文件夹中。并将这些属性添加到文件中。

  1. # 自定义动画
  2. from=<动画的路径>
  3. to=<想要动态化的材质的路径>
  4. x=<动态化区域的x坐标>
  5. y=<动态化区域的y坐标>
  6. w=<动态化区域的宽度>
  7. h=<动态化区域的高度>
  8. # 下面三项可选
  9. duration=<按照刻计算的默认帧时长>
  10. interpolate=<true|false>
  11. skip=<要跳过的插入刻>
复制代码

参阅属性文件说明(properties_files.txt),了解如何指定材质文件的路径。

每个属性文件创建一个简单的动画,从上到下按顺序每一刻(1/20秒)播放一帧,然后循环。

相同材质的多个非重叠部分可以通过使用相同的to值和不同的from、x、y、w、h的值进行动画处理。
他们甚至可以有独立的时序和帧序。

为了获得最大的兼容性,最好使x、y、w和h为16的倍数。

帧序和时长|Frame order and timing

每个自定义动画还可以指定其动画速度和帧序。在属性文件中,添加一系列条目
  1. # 定义帧的时间(Frame timing)
  2. tile.X=Y
  3. duration.X=Z
复制代码

X从0开始,表示帧的顺序。Y表示录像带中的图片序号。第一张图片为0,第二张为1,以此类推。
Z表示这一帧播放的持续时间,按照游戏刻计算 (1刻 = 1/20秒)。
如果省略Z,持续时间为默认的帧时长,如果默认的帧时长也没有设定,则为1。

例如,胶卷的大小为16x48(3帧)。让它进行一个5帧的循环,并在中间插入一个停顿,
属性文件看起来可能像这样:
  1. # 动态化5帧
  2. tile.0=0
  3. tile.1=1
  4. tile.2=2
  5. duration.2=5
  6. tile.3=1
  7. tile.4=0
复制代码

这个动画将会以如下顺序播放:

  第0帧: 播放动画图块0持续1刻 (默认时长)
  第1帧: 播放动画图块1持续1刻 (默认时长)
  第2帧: 播放动画图块2持续5刻 (duration=5)
  第3帧: 播放动画图块1持续1刻 (默认时长)
  第4帧: 播放动画图块0持续1刻 (默认时长)
  返回第0帧
  合计5帧,时长9刻

参考文献|References
https://bitbucket.org/prupe/mcpatcher/wiki/Custom_Animations
回复

使用道具 举报

SQwatermark 当前离线
帖子
主题
精华
贡献
最后登录
1970-1-1
爱心
积分
2211
钻石
性别
保密
注册时间
2018-10-23
查看详细资料
 楼主| 发表于 2019-11-8 12:50:54 | 显示全部楼层
本帖最后由 SQwatermark 于 2019-11-14 17:31 编辑

自定义全景图
Custom Panorama
概述|Overview
译者注:这个全景图指的就是Minecraft主菜单背景中的全景图

属性文件|background.properties
路径:"/assets/minecraft/optifine/gui/background.properties"
控制主菜单全景图(panorama)的行为

备选全景图文件夹:
  /assets/minecraft/optifine/gui/background1
  /assets/minecraft/optifine/gui/background2
  /assets/minecraft/optifine/gui/background3
  ...
译者注:当你打开主菜单时,OptiFine会随机抓一个备选文件夹,播放里面的全景图

备选全景图文件夹应该包含以下材质
  panorama_0.png
  panorama_1.png
  panorama_2.png
  panorama_3.png
  panorama_4.png
  panorama_5.png

备选全景图文件夹内可以创建 "background.properties" 来定义此全景图的自定义属性

权重 (可选)
权重越高,越容易被选中
默认为 1
  1. weight=<权重>
复制代码

模糊等级(Blur level) (可选)
主菜单背景使用三种模糊
模糊等级过高可能会降低主菜单FPS
  1. blur1=<1-64>
  2. blur2=<1-3>
  3. blur3=<1-3>
复制代码

覆盖层颜色(Overlay colors) (可选)
在背景图像上有两个渐变覆盖层
当顶部和底部颜色为0时,覆盖被禁用
颜色格式为 ARGB (十六进制)
默认值如下
  1. overlay1.top=80FFFFFF
  2. overlay1.bottom=00FFFFFF
  3. overlay2.top=00000000
  4. overlay2.bottom=80000000
复制代码
回复

使用道具 举报

SQwatermark 当前离线
帖子
主题
精华
贡献
最后登录
1970-1-1
爱心
积分
2211
钻石
性别
保密
注册时间
2018-10-23
查看详细资料
 楼主| 发表于 2019-11-8 13:31:21 | 显示全部楼层
本帖最后由 SQwatermark 于 2019-11-8 17:13 编辑

动态光源
Dynamic Lights
概述|Overview
此配置允许模组定义实体和物品的动态光源等级。

属性文件|dynamic_lights.properties

此配置文件允许模组定义实体和物品的动态光源等级。
位置: "/assets/<mod_id>/optifine/dynamic_lights.properties"

实体光照等级
实体名会被自动补全模组ID。
光照等级必须在0和15之间。
示例:
  entities=basalz:15 blitz:7
  1. entities=<实体名:光照等级> ...  
复制代码

物品光照等级
物品名会被自动补全模组ID。
光照等级必须在0和15之间。
示例:
  items=florb:15 morb:7
  1. items=<物品名:光照等级> ...  
复制代码
回复

使用道具 举报

SQwatermark 当前离线
帖子
主题
精华
贡献
最后登录
1970-1-1
爱心
积分
2211
钻石
性别
保密
注册时间
2018-10-23
查看详细资料
 楼主| 发表于 2019-11-8 17:07:24 | 显示全部楼层
本帖最后由 SQwatermark 于 2019-11-14 18:19 编辑

自定义颜色
Custom Colors
综述|Overview
OptiFine的自定义颜色功能的配置模板
基于MCPatcher的自定义颜色模组的配置

完整文件列表

以下是自定义颜色使用的所有文件的完整列表:
注: ~ 是optifine文件夹 (assets/minecraft/optifine) 的速记
~/color.properties - 定义了一些单值颜色
~/colormap/redstone.png - 16x1 红石颜色 (0=未充能, 15=完全充能)
~/colormap/pumpkinstem.png - 8x1 南瓜梗颜色 (0=芽, 7=完全成熟)
~/colormap/melonstem.png - 8x1 西瓜梗颜色 (0=芽, 7=完全成熟)
~/colormap/lavadrop.png - Nx1 熔岩滴颜色 (x=粒子按刻计算的年龄)
~/colormap/myceliumparticle.png - 任何尺寸, 随机菌丝体粒子颜色
~/colormap/xporb.png - 任何尺寸, 经验球颜色阵列
~/colormap/durability.png - 任何尺寸, 物品耐久度颜色阵列
~/colormap/swampgrass.png - 256x256 沼泽草调色板
~/colormap/swampfoliage.png - 256x256 沼泽树叶调色板
~/colormap/pine.png - 256x256 松树调色板
~/colormap/birch.png - 256x256 白桦调色板
~/colormap/water.png - 256x256 水调色板
~/colormap/underwater.png - 256x256 水中颜色
~/colormap/underlava.png - 256x256 熔岩中颜色
~/colormap/fog0.png - 256x256 主世界迷雾颜色
~/colormap/sky0.png - 256x256 主世界天空颜色
~/lightmap/world0.png - Nx32 或 Nx64 主世界光照调色板
~/lightmap/world-1.png - Nx32 或 Nx64 下界光照调色板
~/lightmap/world1.png - Nx32 或 Nx64 末地光照调色板

详解|Details
译者注:很杂乱很头大,即便我花了不少功夫试图让条理变得清楚些,这一章的内容依然很杂乱。
请各位整理一下思维,想清楚自己要实现什么功能,边看边找有用信息吧
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册(register)

本版积分规则

Archiver|小黑屋|Mcbbs.net ( 京ICP备15023768号-1 ) | 京公网安备 11010502037624号 | 手机版

GMT+8, 2019-12-6 11:30 , Processed in 0.047484 second(s), Total 21, Slave 20 queries, Release: Build.2019.12.03.1519, Gzip On, MemCached On.

"Minecraft"以及"我的世界"为Mojang Synergies AB的商标 本站与Mojang以及微软公司没有从属关系

© 2010-2019 我的世界中文论坛 版权所有 本站原创图文内容版权属于原创作者,未经许可不得转载

快速回复 返回顶部 返回列表