OptiFine - CTM解説
繋ぎ目のないテクスチャを作れる。
発光テクスチャも適用できる。
※Minecraft:Java Editionの起動時に出力ログを開くを有効にしておくとテクスチャが適用されない時などの原因究明に役立つ。
場所
OptiFine 1.13.1_HD_U_E3_pre5からはmcpatcherフォルダからoptifineフォルダに変更された
assets > minecraft > optifine > ctm > name > name.properties
以前
assets > minecraft > mcpatcher > ctm > name > name.properties
設定方法
テクスチャ画像は.propertiesと同じフォルダに入れる。画像の名前は0.png,1.png…と使うメソッドに応じて用意する。
※継ぎ目ないテクスチャを描画優先にしていないと細かいところの継ぎ目が表示されない
method=
ctm
47枚のテクスチャで構成
ctm_compact
5枚のテクスチャで構成
horizontal
横方向のみ
vertical
縦方向のみ
horizontal+vertical
h+vでも指定できる。ブロックを置いたとき横が優先される。
vertical+horizontal
v+hでも指定できる。ブロックを置いたとき縦が優先される。
top
ブロックが2段以上ある場合に下との継ぎ目をなくす。砂岩に使われている。
1枚のみ
random
ランダムに表示される。
1~∞枚
repeat
繰り返し表示する。WxH枚
fixed
1枚のみで普通にテクスチャを変えるのと同じようになる。
facesなどと組み合わせて1面だけ変えたりするといいと思う。
overlay
他のブロックが隣接している時既存のテクスチャの上に継ぎ目を表示する。
overlay_ctm
ctmと同じで既存のテクスチャの上に表示されるようになるだけ。47枚
overlay_random
randomと同じ、既存のテクスチャの上に表示されるようになるだけ
overlay_repeat
repeatと同じ、既存のテクスチャの上に表示されるようになるだけ
overlay_fixed
fixedと同じ、既存のテクスチャの上に表示されるようになるだけ
matchTiles=
適用させるテクスチャ名を指定する。graniteの場合、花崗岩と花崗岩のハーフブロックなど同じテクスチャを使用するブロックに適用される。
matchBlocks=
適用させるブロックを指定する。同じテクスチャが使われていても指定したブロックしか適用されない。
1.12.2以下のIDが同じ場合id:datavalueで指定する。
https://minecraft-ids.grahamedgecombe.com
tiles=
読み込むテクスチャ。ctmの場合は0-46、ctm_compactは0-4
connect=block | tile | material | state
接続タイプ、デフォルトはblock
block //同じIDのブロックだけが繋がる
tile //同じテクスチャを使用するブロック同士が繋がる
material //石や安山岩や玄武岩などの似通ったブロック同士が繋がる
connectTiles=
method=overlayのみ
connectTilesで指定したテクスチャを使用するブロックが隣接したときに継ぎ目を表示する。
connectBlocks=
method=overlayのみ
connectBlocksで指定したブロックが隣接したときに継ぎ目を表示する。
faces=
適用させる面を指定
bottom //下面
top //上面
north //北
south 南
east //東
west //西
sides //側面
all //全部(デフォルト)
biomes=
バイオームを指定、スペースで複数指定できる。
https://minecraft.fandom.com/wiki/Biome#Biome_IDs
heights=
高さを指定。heights=11-17 23-63 90などの指定もできる。
ctm.0~46=
ctm_compactのみ、method=ctmで指定する0~46を直接割り当てられる。
※テクスチャを追加した際にtiles書き換えないと読み込まれない。
tiles=0-5
ctm.36=5
tintIndex=
method=overlay系のみ、葉っぱや草ブロックの色合いを有効にする。デフォルトは-1、使用する際は0にする。
tintBlock=
method=overlay系のみ、適用させる色合い、葉っぱや草ブロックを指定。
参考 : https://www.youtube.com/watch?v=nHofjUiRSAE
layer=cutout_mipped | cutout | translucent
method=overlay系のみでレンダーレイヤーを指定デフォルトはcutout_mipped
cutout_mipped //完全に透明か不透明、ミップマップが有効※ミップマップとはテクスチャの外観をよくするもの、遠ざかった時のちらつきを解消する。
cutout //完全に透明か不透明
translucent //アルファ値を読み込む
※1.12.2-OptiFine_HD_U_G5でmethod=overlay_ctmを使用したところ何かを描画すると無限にエラーが出る。(自分の環境だけかもしれない)
layer=translucentにすると出なくなる。
name=
名前を付けたビーコンやチェストを指定。ブロックエンティティのみ。
https://minecraft.fandom.com/wiki/Block_entity
width=
method=repeatのリピートさせる幅
height=
method=repeatのリピートさせる高さ
innerSeams=true | false
内側に継ぎ目を表示させるかどうか
weights=
method=randomの確率
tiles=0-3
weights=1 10 10 5
0.pngが一番低く2.pngと3.pngが一番出やすい
randomLoops=
method=randomのランダム性を高める。0~9、デフォルトは0
symmetry=none | opposite | all
method=randomやmethod=repeatで使う
none //左右上下前後非対称にする。
opposite //反対の面が同じテクスチャになる
all //全部同じになる(method=randomのみ)
linked=true | false
2マスあるブロック(花やドア)の場合は2個の.propertiesファイルが必要でmethod=random場合上下をリンクさせるためにlinked=trueを入れる。
確認環境
1.12.2-OptiFine_HD_U_G5
1.13.2-OptiFine_HD_U_G5
1.14.4-OptiFine_HD_U_G5
1.15.2-OptiFine_HD_U_G6
1.16.5-OptiFine_HD_U_G8
1.17.1-OptiFine_HD_U_H1
参考
https://github.com/sp614x/optifine/blob/master/OptiFineDoc/doc/ctm.properties