From c25a224af546e9e3a9ccdd0e1ae838b074484261 Mon Sep 17 00:00:00 2001 From: Frost-ZX <30585462+Frost-ZX@users.noreply.github.com> Date: Sun, 3 Jul 2022 21:25:56 +0800 Subject: [PATCH] =?UTF-8?q?docs:=20=E6=B7=BB=E5=8A=A0=E2=80=9C=E8=BF=9E?= =?UTF-8?q?=E6=8E=A5=E7=BA=B9=E7=90=86=E2=80=9D=E9=85=8D=E7=BD=AE=E6=96=87?= =?UTF-8?q?=E4=BB=B6=E8=AF=B4=E6=98=8E?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- docs/ctm.properties | 320 ++++++++++++++++++++++++++++++++++++++++++ docs/ctm_template.png | Bin 0 -> 2165 bytes 2 files changed, 320 insertions(+) create mode 100644 docs/ctm.properties create mode 100644 docs/ctm_template.png diff --git a/docs/ctm.properties b/docs/ctm.properties new file mode 100644 index 0000000..83aab45 --- /dev/null +++ b/docs/ctm.properties @@ -0,0 +1,320 @@ +############################################################################### +# +# https://github.com/sp614x/optifine/blob/master/OptiFineDoc/doc/ctm.properties +# +# Sample configuration for OptiFine's Connected Textures feature. +# Based on the configuration for MCPatcher's Connected Textures mod. +# +# Not implemented: +# - renderPass +# +############################################################################### +# ctm.properties +############################################################################### +# +# For each block or terrain tile you wish to override with connected or random +# textures, use this template and create a .properties file in the +# optifine/ctm folder of your texture pack. Properties files can be organized +# into subfolders of any depth, as long as everything is within the top-level +# optifine/ctm folder. +# +# Different types of connected texture methods are available with different +# requirements and restrictions. See below for details for each method. +# +# All property names are case-sensitive. +# All paths are relative to assets/minecraft unless otherwise stated. +############################################################################### + +############################################################################### +# General properties used by all methods: +############################################################################### + +# (Optional) List of block and/or tiles this method should apply to. +# Multiple .properties file can refer to the same block/tile and they will be +# processed in alphabetical order by filename. All tile-based entries are +# checked before block ID-based ones. The first match wins. +matchTiles= + +# To refer to a tile from vanilla MC, simply use its name in textures/block: +# matchTiles=dirt +# To refer to a tile from a mod, you will need to know its name +# matchTiles=botania:blazeblock +# Tiles output by CTM rules can also be matched by another rule. The tile name +# is simply the full path to the tile +# matchTiles=optifine/ctm/mygrass/1.png +# Block format (optional parts are in <>) +# name<:property1=value1,value2...:property2=value1,value2...> +# For example: +# short name: oak_stairs +# full name: minecraft:oak_stairs +# name + properties: minecraft:oak_stairs:facing=east,west:half=bottom +matchBlocks= + +# These two properties can be omitted if they can be inferred from the filename instead: +# - optifine/ctm/xxx/.properties assumes +# matchTiles= +# - optifine/ctm/xxx/block_.properties assumes +# matchBlocks= +# unless you specify either property explicitly. + +# (Optional) If multiple properties files match the same block, the highest +# weighted one is used. In the event of a tie, the properties filenames are +# compared next. The default weight is 0. +weight= + +# (Required) Method to use when choosing a block's replacement texture: +# Methods: +# ctm: Standard 8-way method (glass in the original CTM), uses 47 tiles. +# ctm_compact: Compact 8-way method, uses 5 tiles. +# horizontal: Connect to blocks on left and right only (bookshelves). +# vertical: Connect to blocks above and below only. +# horizontal+vertical: Connect horizontally, then vertically. +# vertical+horizontal: Connect vertically, then horizontally. +# top: Connect to block above only (sandstone). +# random: Pick a tile at random. +# repeat: Repeat a fixed pattern over large areas. +# fixed: Use a single fixed tile. Equivalent to random with only one tile. +# overlay: Overlay for block transitions, uses 17 tiles. +# overlay_ctm: Overlay variant of method "ctm". +# overlay_random: Overlay variant of method "random". +# overlay_repeat: Overlay variant of method "repeat". +# overlay_fixed: Overlay variant of method "fixed". +# The overlay methods can be combined with other methods if they come +# before them in the processing order (alphabetically). +# The method "ctm_compact" is not compatible with any of the overlay methods. +method= + +# (Required) List of replacment tiles to use. Each tile must be a separate +# image, just like terrain and item textures. Tiles can be specified in +# several ways +# 0 -> 0.png +# 8-11 -> 8.png, 9.png, 10.png, 11.png +# name -> name.png +# name.png -> name.png +# -> skip the tile, continue with next CTM properties +# -> use the default texture for that block/tile +# full/path/name.png -> full/path/name.png +# In all cases but the last, the png file must be in the same directory as +# the properties file itself. +# The formats can be mixed and matched, e.g. +# tiles=0-4 5 some/other/name.png +# The overlay methods may use the special name "" for empty tiles +# that are to be skipped. The overlay methods can't use the tile name "". +tiles= + +# (Optional) Connect type. For methods that connect to adjacent blocks, +# specify how the game should decide if two blocks should be connected. +# block: Connect if block id of this block = block id of neighbor. +# tile: Connect if tile texture of this block = tile of neighbor. +# material: Connect if block material (stone, dirt, etc.) = neighbor's. +# state: Connect if block state (block + properties) = neighbour's +# The default is block for block-based properties files and tile for tile-based. +connect= + +# (Optional) Connect tiles. Only for method "overlay" +# Connects only to blocks which are using the specified tiles +connectTiles= + +# (Optional) Connect blocks. Only for method "overlay" +# Connects only to specified blocks +connectBlocks= + +# (Optional) Faces. +# Limit the mod to only certain faces of the block. +# bottom: Bottom face (negative y). +# top: Top face (positive y). +# north: North face (negative z). +# south: South face (positive z). +# east: East face (positive x). +# west: West face (negative x). +# sides: Shorthand for north south east west. +# all: All sides. +# This property is ignored on non-standard blocks. +faces= + +# (Optional) Biome and height restrictions. +# Limit only to certain biomes or height ranges. +# The vanilla biome names are listed here: https://minecraft.gamepedia.com/Biome#Biome_IDs +# Biomes added by mods can also be used. +# The legacy properties "minHeight" and "maxHeight" are also recognized. +biomes= +heights= + +# (Optional) Compact CTM tile replacement. Only for method "ctm_compact" +# Allows to define replacement tile for a specific CTM case +# is the index of the CTM case from the CTM template (0-46) +# is the index of the tile as defined in "tiles" (not the tile name!) +# With "ctm_compact" you can define more than 5 tiles and use the additional +# tiles as replacements +ctm.= + +# (Optional) Tint index. Only for method "overlay" +# Tint index for the tile texture +# Default is -1 (disabled +tintIndex= + +# (Optional) Tint block. Only for method "overlay" +# The block used for the tile texture tinting. +# Different blocks use different colors for the same tint index. +tintBlock= + +# (Optional) Layer. Only for method "overlay" +# The layer on which the overlay texture should be rendered +# Values: +# cutout_mipped - transparent textures with mipmaps +# cutout - transparent textures without mipmaps +# translucent - translucent textures with mipmaps +# Default is "cutout_mipped" +layer= + +# (Optional) Name +# Only for blocks which have corresponding nameable tile entities. +# For example: +# beacon brewing_stand enchanting_table furnace dispenser dropper hopper +# See "custom_guis.properties" for the name matching syntax. +name= + +############################################################################### +# Everything below here is for specific ctm methods. Each .properties file +# should contain only one of these sections. +############################################################################### + +############################################################################### +# Standard 8-way connected textures +############################################################################### + +method=ctm +# (Required) List of 47 tiles to use. +tiles=<47 tiles> +# (Optional) Whether to show seams on inner edges when connecting to adjacent +# blocks. +innerSeams=false + +############################################################################### +# Compact 8-way connected textures +############################################################################### + +method=ctm_compact +# (Required) List of 5 tiles to use. +tiles=<5 tiles> +# (Optional) Whether to show seams on inner edges when connecting to adjacent +# blocks. +innerSeams=false + +############################################################################### +# Compact 8-way connected textures with special cases +############################################################################### + +method=ctm_compact +# (Required) List of 5 tiles to use. +tiles=<5 tiles> +# (Optional) Indexes of replacement tiles for some CTM cases +ctm.46=5 +ctm.17=6 + +############################################################################### +# Horizontal-only connected textures +############################################################################### + +method=horizontal +# (Required) List of 4 tiles to use. +tiles=<4 tiles> + +############################################################################### +# Vertical-only connected textures +############################################################################### + +method=vertical +# (Required) List of 4 tiles to use. +tiles= + +############################################################################### +# Top connected textures +############################################################################### + +method=top +# (Required) Only one tile is needed. +tiles= + +############################################################################### +# Random textures +############################################################################### + +method=random +# (Required) List of any number of tiles to choose from. +tiles= +# (Optional) List of weights to apply to the random choice. For example, if +# you have +# tiles=6-11 +# weights=10 1 10 2 7 3 +# then tiles 6 and 8 will have a weight of 10, 7 will have a weight of 1, etc. +# Weights do not have to total 100 or any other particular value. In the above +# example, tiles 6 and 8 will each be used ~30.3% (10/(10+1+10+2+7+3)) of the +# time and so forth. +weights= +# Random loops +# Repeats the random function several times to increase randomness. +# Can be used to make different textures use different random patterns. +# Higher values may decrease the chunk loading speed. +# Default is 0. +randomLoops=<0-9> +# (Optional) Desired level of symmetry for the faces of each block. Applies to +# standard 6-sided blocks only. +# none: All 6 faces are textured independently. This is the default. +# opposite: 2-way symmetry; opposing faces have the same texture, but each pair +# can potentially have a different texture. +# all: All 6 faces have the same texture. +symmetry= +# (Optional) Texture linking between related blocks. +# If true, OptiFine uses the same random number seed for all parts of a +# multiblock object, for example, the top and bottom halves of tall grass. +# This allows you to create randomized textures that will remain consistent +# within each set of blocks. If this property is false, the two halves will +# be "scrambled", i.e., chosen independently. +# +# NOTE: For this to work properly, you'll need multiple properties files with +# linked=true and the same number of replacement textures and same set of +# weights. For example, +# double_plant_top.properties: +# method=random +# tiles=grass_top1 grass_top2 grass_top3 +# weights=1 2 3 +# linked=true + +# double_plant_bottom.properties: +# method=random +# tiles=grass_bottom1 grass_bottom2 grass_bottom3 +# weights=1 2 3 +# linked=true +# +# The default is false. The linked property currently applies only to plants +# (e.g., reeds), double plants, and doors. +linked= + +############################################################################### +# Repeat pattern textures +############################################################################### + +method=repeat +# (Required) Width of the repeating pattern. +width= +# (Required) Height of the repeating pattern. +height= +# (Required) List of exactly width * height tiles. +tiles= +# (Optional) Desired level of symmetry for the faces of each block. Applies to +# standard 6-sided blocks only. +# none: All 6 faces are textured so that the pattern tiling looks the same from +# all sides. This is the default. +# opposite: 2-way symmetry; opposing faces have the same texture, which means +# that tiling on the south and east faces will be mirrored left-to-right from +# compared to the north and west faces. +symmetry= + +############################################################################### +# Fixed textures +############################################################################### + +method=fixed +# (Required) Single tile to use. +tiles= diff --git a/docs/ctm_template.png b/docs/ctm_template.png new file mode 100644 index 0000000000000000000000000000000000000000..068d429f05109955e27f14c7b3aee6a74e1da975 GIT binary patch literal 2165 zcmZ9Odo+~&7RR3%^Bm92R4=)uHyPv_LoP?jr76N0jQb^wsW-e*nIohI!$c)c9JS#Ol(=Mx9I$OAq%;y(*j?>^NZ8=#kv!^K+ z%|iz*Xv(=Hgx*^9zfa6{RENJ(<%9t=3%lOjLn$oEDQ|RJ>e^r#4#Lz*kw6?9NmfU! z8cjMlZ_5Ek_Hg&BREh6!daYk9@BRCIC4U$m+}RYZcDMQkBGSHD@8)iSY4A~%C3o*K zss8R_m&nK#U+)31LNnaEj7G8#QBvhTK$1Mu4eDby%>|*~>R+hjJOxaERil^xp;K@vfa2H zJX*AZeMzC&k9lfqR2j@o(oT()1iuno#pk(#seu{uS6$M>$wGy+Rok{Rfw0)xO97lS zQK!}UB|}*;B{{A*@hBsG4!h(ebNrtye^Q8qAP|*TWPET!L~V{(ldp5rrPC!Y5z9=0 zW=jSMAO^+_%qB*gcfIeuQ}@3Q}`c+3k|Q zc>BnC=j@6C8cxtr9d)DCxvl5X0@i@EY3k2;&K^n04uDFHm{l>^R&b8*v?pi=#Y}dHRh@cjx+d8y|KUA3`)jj29jT8_kS zSlYx)HTS~}sW-Bn(i;(R;*`065c{e=7?3pXvZ5bVVv3)DLE2YDLzMOdr+XjOrbim$ zyg_c0eEfkFX4{d>_F@Y12-anIuZiXCzyXRfsiO3&6Gyl7jL!>}OjZRiP}$vW(s7pR zy00Gf>@xiJ!knO!3A{quTi5EPq-p1l=ez#jom(TgTkI;jBkcv(ZXb2_-L6Y~i!I>z zg+4kMp%Y2Is$hDLP#a`P*<9E$sd|1Yek->Q-c}VgA(HKXUZ8c6Rz_J37Q|UBMy!6z zl`59-(QOMOi6d8QWLDGBQboi83xxSk_gLS)%AGCNgLSJh7ulS|GC6$}Bs-Av_93T@ z_wIxr|Jq;$P)-`&t8pBkpoMNWYeF{@n$YUJCekdihAjgZPj*P*d_ulZrhvF<+(RE@ z6b@L?26o}!HT&5sL^)7Zgk6qrrgxN-k9Vr_rwa;;a36BN*hC{L3_~yQ1ho$i#KQ(P z*pR7eSh?|pEvl>Y48bdO*n_)kMl3swc)_-NOvEe{G!7hiBdnbg8ZF)U)yxh_#Ks5s z!)j$zZlSV0y>c?U1*#n|Cr+!TRE5XIy^dORxDm1# z@(B871={#|TY)U$6Guu#G~(6N5DO85RkR1A%f=bMEkmW4NYt@FTmi-NwUKW(Zbp-# z(xZym22(Af_lj-GwTV{yxNQ(t_ujIzn-($8oH!G5ijmi&M5c0#@39Y#zV^-dn0t<< zP+A&=a*Q|jHSZC?_S_26;>95!p}NAbsx@6<9fsg2>aw}|j-7K71hIrY|0d0#`{{Nt zth-Nt;wI@|p<(44Pqrnf%puzhhi89|b%gI|`P7X(cGN+`8st+s3&!abjrzbK?pW35 zKB0+a18UL61n_vr0(-&$)Z!Gcu1M7_`U0j{3*_aJ;$xDMPH?4N%(<0%M^F@Avp5v) zN49*bR(cxO`uOnlp&IrmsN59c^3U0bo`rV_A(EMZOh@o%ei!q$E3S33&)$YlXz&-4 z!_axs4->9b$Subx@`c}1ag