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 的精确条数。
相关条目
- ModSupport 加载器 - 处理数据行而非绘制方块
- renderdata - 渲染器声明的宿主文件
- 纹理包 - 提供方块贴图定义