ModSupport 渲染器

基本信息

属性 值
目录 src/main/java/org/dynmap/hdmap/renderer/(81 个 .java)
兄弟目录 hdmap/renderer/multipart/(3 个)、hdmap/renderer/ 内另有 CTMTexturePack.java
实例化方式 字符串反射,见 hdmap/TexturePack.java
声明来源 renderdata/*.txt 中的 render=<值>

功能

这些类把"某个 mod 的某个方块"映射到"地图上怎么画它"。调用方是 TexturePack:解析 render= 字段的值,若该值解析为一个类名(而非内置关键字),则反射实例化对应的渲染器。

内置渲染关键字(如 CUBOID、ROTXY、PATCH、PLANT 等)由 TexturePack 自身处理;类名形式(如 gregtech.GregTechMachineRenderer)才走反射。仓库内 renderdata/ 的 render= 出现 12347 次,其中绝大多数是 FQCN 形式的第三方渲染器。

按宿主 mod 归类的代表(取自仓库 renderdata/ 的实际引用):

渲染器 宿主
GregTechMachineRenderer、GregTechOreRenderer、GregTechFrameRenderer GregTech 5
RailcraftCokeOvenRenderer、RailcraftFireboxRenderer、RailcraftTrackRenderer、RailcraftTankGaugeRenderer 等 7 个 Railcraft
ThaumcraftMetalDeviceRenderer、ThaumcraftStoneDeviceRenderer、ThaumcraftWoodenDeviceRenderer、ThaumcraftTableRenderer、ThaumcraftPipeRenderer、ThaumFurnaceRenderer Thaumcraft
ForestryFenceBlockRenderer、ForestryLeavesRenderer、ForestryStairBlockRenderer、ForestryWoodEtcRenderer Forestry
TFCWoodRenderer、TFCLooseRockRenderer TerraformCraft(上游 Dynmap 遗留)
IC2CropsRenderer IndustrialCraft 2 作物
LogisticsPipesPipeRenderer、ExtraUtilitiesPipeRenderer、BuildCraftPipeRenderer、EnderIOConduitRenderer、MECableRenderer、ThaumcraftPipeRenderer 各管道 mod
BotaniaFlowerRenderer Botania
ExtraTreesFenceGateRenderer、ExtraTreesFenceRenderer、ExtraTreesSlabRenderer、ExtraTreesStairBlockRenderer Extra Trees
TwilightForest 相关经 renderdata/twilightforest-*.txt 引用 Twilight Forest
AE2StuffWirelessRenderer AE2 Stuff
LittleTilesRenderer Little Tiles
NuclearControlInformationPanelRenderer Nuclear Control
CropsNHRenderer Crops NH
BinnieCeramicsRenderer Binnie(Forestry/ExtraTrees 附属)
WardedBlockRenderer Thaumcraft 防护字段

其余为通用几何渲染器(CuboidRenderer、RotatedBoxRenderer、SimpleMultiBoxRenderer、DoorRenderer、PaneRenderer、FenceWallBlockRenderer、StairBlockRenderer、FrameRenderer、SkullRenderer、RedstoneWireRenderer 等)与多方块/旋转类(MultipartRenderer、MultiPartHelper、RPRotatedBoxRenderer、RPSupportFrameRenderer)。

数值

数值名 值
hdmap/renderer/ 类数 81
hdmap/renderer/multipart/ 类数 3
renderdata/ 中 render= 出现总次数 12347
其中 FQCN 形式(前三段为包名) 数千;以 render=com/render=net/render=team 开头者合计即逾 3000

交互

触发 行为
解析 render=<FQCN> 反射实例化对应渲染器
解析 render=<内置关键字> 由 TexturePack 内部逻辑处理,不反射

交叉验证说明

render= 的取值分布用两种方式统计过:① 按 render=[A-Za-z_]+ 提取前缀;② 按 render= 全量计数(12347)。两者一致确认"绝大多数为 FQCN"。由于存在 render= 后接非字母字符的情形,前缀统计为下界,故本条目不给出 FQCN 的精确条数。

相关条目