
我的世界1.20.1forge模组开发教程
文章平均质量分 94
学习该篇文章,可以使你对mc的机制更加了解,根据mc的机制和模组作者代码的学习,让你对编写代码的能力更升高一层
优惠券已抵扣
余额抵扣
还需支付
¥69.90
¥99.00
购买须知?
本专栏为图文内容,最终完结不会低于15篇文章。
订阅专栏,享有专栏所有文章阅读权限。
本专栏为虚拟商品,基于网络商品和虚拟商品的性质和特征,专栏一经购买无正当理由不予退款,不支持升级,敬请谅解。
lemon_sjdk
正在努力学习java
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
关于mc教程我想说两句
当前国内活跃的MC模组开发者可能不足百人,且集中在老牌模组维护领域。生态复苏需依赖Mojang更新策略调整、本土化开发工具链完善,以及社区内容消费习惯的重构。原创 2025-03-27 17:18:31 · 716 阅读 · 0 评论 -
我的世界进阶模组开发教程——物品(3)
机制实现方式效果清除服务端调用移除实体所有状态效果客户端同步服务端执行后自动同步效果移除状态到客户端饮用耗时固定 32 tick(物品消耗非创造模式下减少物品数量(shrink(1)成就系统触发成就并更新统计空桶替换牛奶桶耗尽时返回空桶(原创 2025-08-05 10:06:36 · 33 阅读 · 0 评论 -
我的世界进阶模组开发教程——菜单(1)
这个类是 Minecraft 中所有容器菜单(如箱子、熔炉、玩家背包等)的基类,负责管理物品槽位、数据传输和玩家交互逻辑。关键字段// 日志记录器// 表示点击容器外的特殊标识// 上一次槽位状态(用于检测变化)// 当前菜单的所有物品槽// 数据槽(如熔炉燃烧时间)// 玩家当前拖动的物品// 客户端同步的槽位状态// 客户端同步的数据槽值// 状态ID(用于验证客户端与服务端同步)> menuType;// 菜单类型(如箱子、工作台)// 容器的唯一ID。原创 2025-08-05 07:29:26 · 18 阅读 · 0 评论 -
我的世界进阶模组开发教程——附魔(2)
NBT 驱动所有附魔数据均通过NBT标签(ListTag)存储,兼容游戏存档机制。实体装备集成通过遍历实体装备槽()实现跨物品附魔效果叠加(如多个保护附魔)。附魔兼容性确保同时生效的附魔不冲突(如锋利与亡灵杀手互斥)。附魔生成算法基于物品附魔能力()和随机因子动态生成附魔选项。性能优化使用MutableInt避免装箱拆箱,保持附魔顺序。此类是 Minecraft 附魔系统的核心枢纽,衔接物品、实体、战斗逻辑与用户界面(附魔台),体现了高内聚的工具类设计思想。作为附魔系统的核心枢纽。原创 2025-08-04 20:14:55 · 387 阅读 · 0 评论 -
我的世界进阶模组教程——附魔(1)
/ 附魔可应用的装备槽位(手、脚等)// 附魔的稀有度(普通、稀有等)// 附魔类型(武器、盔甲等)@Nullable// 本地化键(用于翻译)private static final EquipmentSlot[] ARMOR_SLOTS = // 盔甲4个槽位private static final EquipmentSlot[] MAINHAND = // 主手槽位:头盔/胸甲/护腿/靴子MAINHAND:主手(武器/工具)是Minecraft附魔系统的关键传输媒介。原创 2025-08-04 15:58:09 · 242 阅读 · 0 评论 -
我的世界进阶模组开发教程——伤害(2)
本文解析了机械动力(Create)模组中实现自定义伤害系统的核心代码,主要包括两个关键类: DamageTypeBuilder:伤害类型建造器 采用建造者模式封装伤害类型的配置逻辑 支持链式调用设置6大属性:消息ID、伤害缩放规则、饥饿消耗、视听效果等 自动处理默认值并集成到Minecraft数据包系统 CreateDamageSources:伤害源工厂 提供类型安全的伤害源创建方法 包含7种机械伤害类型(粉碎、风扇火焰、锯伤等) 支持带责任实体的伤害源配置 通过私有方法统一处理伤害源实例化 该实现通过建造原创 2025-08-03 23:36:23 · 72 阅读 · 0 评论 -
我的世界模组进阶教程——伤害(1)
作用:声明类所在的包,表明这是伤害源相关的核心类。作用@Nullable:标记可能为 null 的字段或参数Holder:持有注册表对象的容器Component:游戏内文本组件实体相关类(EntityPlayer物品堆(ItemStack3D 向量(Vec3@Nullable@Nullable@Nullable字段说明type:伤害类型的注册表持有者(如火焰、坠落、攻击等)间接造成伤害的实体(例:射箭的玩家,箭是直接实体,玩家是间接实体)原创 2025-08-03 17:22:36 · 143 阅读 · 0 评论 -
我的世界模组开发进阶教程——方向(1)
作用data3d:3D空间唯一标识符 (0-5):反方向索引 (如DOWN的oppositeIndex=1指向UP)data2d:2D平面标识符 (水平方向0-3,垂直方向为-1)name:方向名称:轴方向 (POSITIVE/NEGATIVE)axis:所属坐标轴 (X/Y/Z)normal:方向向量 (单位向量)原理:每个枚举实例代表一个空间方向,存储了该方向的元数据和几何特征。作用CODEC:将方向名称与枚举值双向映射(如"north" ↔ NORTH)原创 2025-08-03 14:55:55 · 19 阅读 · 0 评论 -
我的世界进阶模组教程——物品(2)
本文详细解析了Minecraft中的ItemLike接口和InteractionResult枚举。ItemLike作为物品系统的基础抽象,通过asItem()方法统一了不同物品表示的访问方式,其简洁设计支持多态扩展和解耦合。InteractionResult枚举则规范了玩家交互的结果处理,提供5种明确状态(如SUCCESS、CONSUME等)来协调客户端-服务器的交互行为,并包含实用方法判断是否消耗动作或播放动画。这两个核心机制共同构建了Minecraft物品交互的系统架构,前者负责统一物品访问,后者规范交原创 2025-08-02 23:17:40 · 64 阅读 · 0 评论 -
我的世界模组开发教程——物品item(1)
Item定义了物品的通用行为和属性通过可覆盖的方法提供高度可扩展性管理物品的本地化和显示处理与游戏世界的各种交互通过Properties类提供灵活的配置选项这个类为所有 Minecraft 物品提供了统一的基础框架,使得添加新物品只需继承此类并覆盖相关方法即可实现特定功能。ItemStack状态管理:维护物品的当前状态(数量、耐久、附魔等)数据存储:通过存储所有动态属性行为代理:将操作委托给Item类定义的基础行为显示系统:生成丰富的物品提示信息交互处理。原创 2025-08-02 22:22:06 · 200 阅读 · 0 评论 -
我的世界进阶模组开发——标签(1)
Minecraft 标签系统核心解析 Minecraft 的标签系统通过TagKey<T>类实现游戏资源的逻辑分组,其核心功能包括: 资源标识:组合注册表键和资源位置唯一标识标签分组(如物品/方块/实体) 内存优化:采用Guava的弱引用对象池(Interner)避免重复实例 数据序列化: 基础Codec直接转换资源位置与标签键 带前缀Codec处理形如"#minecraft:logs"的完整标签语法 类型安全:严格校验标签与注册表类型的匹配关系 典型应用场景包括配方系统(&原创 2025-08-02 01:28:32 · 120 阅读 · 0 评论 -
进阶模组开发教程——mc的渲染引擎
if (!跨平台:通过ON_LINUX等标志处理驱动差异线程安全:所有方法通过强制线程检查资源管理:集成 Native 内存管理(如性能指标:在 GTX 1080 上减少 40% 的冗余 OpenGL 调用该设计使 Minecraft 能在复杂场景(如 200+ 实体)保持 60 FPS,同时支持跨 Windows/Linux/macOS 平台一致的渲染表现状态最小化通过精准的状态跟踪,确保OpenGL驱动只接收必要指令线程隔离渲染线程独占OpenGL上下文,逻辑线程通过任务队列交互资源所有权。原创 2025-07-31 18:08:03 · 28 阅读 · 0 评论 -
模组进阶开发教程——从游戏开发者的角度来研究mc源代码
/ 核心渲染系统管理类// 负责线程管理、状态机控制、OpenGL调用封装优化维度传统OpenGL矩阵堆栈线程安全❌ 全局状态,仅支持单线程✅ 多线程安全,逻辑线程预计算+渲染线程提交内存管理⚠️ 固定深度,驱动层存储易碎片化✅ 动态扩容,JVM堆内存管理功能扩展性⚠️ 仅基础仿射变换✅ 支持复杂变换链+投影矩阵独立控制性能开销⚠️ 高频驱动调用,CPU-GPU通信瓶颈✅ 延迟求值+批处理降低调用频率着色器集成❌ 需手动传递uniform变量✅ 自动同步至着色器参数。原创 2025-07-31 16:25:11 · 560 阅读 · 0 评论 -
我的世界模组开发教程——资源(1)
的序列化/反序列化机制通过以下方式成为 Minecraft 生态的核心枢纽数据组件系统:作为键名存储动态属性,支持物品/方块/实体的复杂状态管理。命令与资源系统:提供自动化、安全的资源定位,提升模组开发效率。跨版本兼容:通过工厂方法和隐式转换,降低版本升级成本。安全与工具链:内置校验与调试工具,保障系统鲁棒性。此设计使 Minecraft 在维持高扩展性的同时,确保资源标识的全局一致性与安全性,是模组生态繁荣的关键底层支撑。原创 2025-07-30 22:15:31 · 156 阅读 · 0 评论 -
forge篇——配置
从这篇文章开始,我们开始研究forge代码,以下是forge源代码和代码解析ForgeConfigSpec 类详细解析ForgeConfigSpec 是 Minecraft Forge 模组开发中的核心配置类,基于 NightConfig 库实现,提供了类型安全、验证和自动纠正功能。以下是关键部分的详细解释:作用:封装配置规范,管理配置值、注释和验证逻辑。2. 核心方法解析2.1 配置加载与验证 ( 和 )流程:检查配置是否符合规范(类型、范围等)。自动纠正非法值(如超出范围的数原创 2025-07-30 17:33:42 · 173 阅读 · 0 评论 -
我的世界模组开发——机械动力的渲染(4)
在Minecraft Mod中实现。原创 2025-07-10 21:54:50 · 368 阅读 · 0 评论 -
我的世界模组开发进阶教程——forge代码篇
是的内部类,用于表示部分定义的方块状态。它实现了接口,可以测试完整方块状态是否符合部分定义。这个类是构建方块状态变体JSON的核心组件,允许开发者定义只包含部分属性的状态配置。核心属性解析// 关联的方块对象// 已设置的属性键值对(按属性名排序)@Nullable// 父构建器引用构造方法详解是 Forge 模型生成系统的指挥中枢,通过整合复杂方块状态的声明式配置模型资源的统一管理自动化 JSON 文件生成渲染管线的灵活控制。原创 2025-07-03 00:05:16 · 634 阅读 · 0 评论 -
我的世界模组开发进阶教程——机械动力的数据生成(2)
String...是 Java可变参数语法,用于简化不定数量参数的传递,编译后转为数组,需作为方法末参数[citation:6][citation:7]。是 Minecraft 模组开发的数据生成助手,通过动态路径构造、状态映射和模型复用,提升资源文件生成效率。其设计充分结合了可变参数的灵活性与泛型的类型安全,服务于复杂方块/物品模型的自动化生成。是 Minecraft Forge 模组开发中用于自动化生成物品模型 JSON 文件的核心工具类,属于 Registrate 库的数据生成模块。原创 2025-06-28 23:03:11 · 205 阅读 · 0 评论 -
我的世界进阶模组开发教程——机械动力的数据生成(1)
AllTags是Create 模组的基础设施标准化标签管理- 统一封装原版标签系统动态跨模组兼容- 命名空间机制整合 Forge/Curios 等生态深度集成主类- 依赖Create.ID和,在模组初始化时加载其设计完美体现了“约定优于配置”原则,显著提升模组的可维护性和扩展性。作用:定义方块状态生成器类型参数p: 父级实例e: Forge 的事件特点:不依赖其他生成器// 注册新的提供器类型// 在构建器中使用});特性角色生成器管理系统具体生成器实现功能。原创 2025-06-22 12:47:33 · 122 阅读 · 0 评论 -
我的世界模组开发进阶教程——注册和注册表(3)
维度定位通用注册框架Create 模组特化注册器核心价值提供类型安全、链式调用的注册范式深度集成 Create 内容生态,简化模组开发适用场景任意 Forge 模组的基础注册专为 Create 模组及扩展内容设计扩展性通过继承支持自定义扩展在父类基础上固化 Create 最佳实践协作建议开发Create 附属模组时优先使用,直接获得模组生态集成优势;开发通用模组时继承实现自定义逻辑,避免绑定 Create 的特定设计。以下是对BlockEntry类的逐行解析,以及与和。原创 2025-06-19 00:18:33 · 274 阅读 · 0 评论 -
渲染学进阶内容——纹理(1)
这篇文章我们来研究一下mc源码,关于渲染的纹理部分这段代码是 Minecraft 客户端中负责加载纹理图集(Texture Atlas)的核心类 。它从 JSON 配置文件中读取图集定义,并生成对应的纹理精灵(Sprites)。以下是逐部分的详细解释::用于记录警告或错误日志。:将资源路径与图集配置文件相互转换。例如:图集 → 文件路径 。:存储从 JSON 解析的 对象列表,每个对象描述如何生成精灵。2. 构造方法私有构造方法,通过静态方法 创建实例。3. 核心方法原创 2025-06-18 01:21:37 · 64 阅读 · 0 评论 -
渲染学进阶——机械动力的渲染(3)
特性PoseStack(原版)(Flywheel)内存分配每次push创建新对象重用回收对象GC压力高频率Young GC接近零分配适用场景简单UI渲染高频批量渲染对象生命周期短生命周期长期驻留重用线程安全是是 (每个栈独立)内存占用峰值O(栈深度)O(历史最大栈深度)该优化特别适用于需要每帧处理成千上万次矩阵变换的现代渲染引擎(如Flywheel),通过在内存管理上做减法,换取显著的性能提升。💡FlwLibLink数据驱动设计模型即数据(而非对象)原创 2025-06-17 20:35:08 · 189 阅读 · 0 评论 -
渲染学进阶内容——机械动力的渲染系统(2)
这篇来研究一下实例 是 Flywheel 渲染引擎中的 GPU实例句柄 接口,它提供了对底层渲染实例的直接控制能力。这个接口是**实例化渲染(Instanced Rendering)**系统的核心操作接口,与之前讨论的 在渲染流程中处于不同层级。包含包含抽象业务层底层技术层方块实体渲染逻辑动画更新生命周期管理GPU实例状态InstanceHandle显存控制渲染管线交互InstanceHandle1Visual接口InstanceHandle2管理更新删除操作控制查询1. 抽象层级不同:业务逻辑层原创 2025-06-14 16:06:57 · 77 阅读 · 0 评论 -
渲染进阶内容——机械动力的渲染(1)
这个类是 Flywheel 渲染引擎的核心实体层组件,专门处理**方块实体(BlockEntity)**的渲染逻辑。作为视觉模型与游戏逻辑之间的桥梁,它提供了一套优化框架,让模组开发者能够高效实现复杂的方块实体渲染效果(如机械动画、流体交互等)。fill:#333;stroke:1;fill:none;important;important;important;important;important;important;important;important;important;important;原创 2025-06-14 14:16:41 · 168 阅读 · 0 评论 -
我的世界进阶模组开发教程——屏幕和菜单(1)
维度层级服务端/逻辑层客户端/表现层职责物品操作逻辑/状态同步UI渲染/输入处理核心字段槽位列表/状态ID渲染坐标/悬停槽位关键方法交互流程接收指令→处理→同步采集输入→发送→渲染反馈设计模式状态机/观察者模式模板方法/命令模式协作流程玩家在Screen点击槽位Screen发送clicked()消息给MenuMenu执行物品操作Menu广播状态变化Screen接收变化并重渲染性能优化Menu:状态差分检测(减少网络流量)Screen:预测渲染(carriedItem)原创 2025-06-13 16:23:29 · 524 阅读 · 0 评论 -
我的世界模组开发——开发机械动力附属模组(3)
Create机械动力系统深度解析 摘要: Create模组的机械动力系统通过多层架构实现了工业级自动化功能。核心组件包括: 机械基础模块: AbstractEncasedShaftBlock提供标准化的封装传动轴逻辑,支持智能轴向适配和活塞交互 KineticBlockEntityRenderer实现高性能机械渲染,采用Flywheel引擎优化和物理精确的旋转算法 自动化合成系统: MechanicalCrafterBlockEntity管理多方块协同合成,支持6种状态的工作流程 CrafterHelper原创 2025-06-13 12:22:49 · 191 阅读 · 0 评论 -
我的世界进阶模组开发教程——开发机械动力附属模组(2)
本文解析了Create模组的核心API设计,重点包括:1. SchematicRequirementRegistries类提供原理图物品需求的自定义注册系统,通过三个注册表(方块/实体/方块实体)实现灵活的放置需求计算。2. DisplaySource/DisplayTarget构成显示链接系统的两端,前者负责数据格式化,后者处理终端渲染,支持双模显示和安全数据传输。3. CreateBuiltInRegistries作为模组注册表管理中心,定义了11种核心注册类型,采用生命周期管理和Mixin集成策略。原创 2025-06-12 20:36:31 · 456 阅读 · 0 评论 -
我的世界进阶模组开发教程——制作机械动力附属模组
摘要: Create是Minecraft的机械动力模组,其代码结构分为多个关键模块: 数据生成系统:通过CreateRecipeProvider基类实现配方自动化生成,支持多步骤序列化装配配方(SequencedAssemblyRecipeGen),采用建造者模式链式调用; 注册管理:CreateRegistrate扩展了Registrate库,统一管理方块、流体、实体等注册,集成标签页分类和工具提示定制; 伤害系统:DamageTypeTagGen为机械伤害(如钻头、风扇火焰)定义原版兼容的标签; 客户端原创 2025-06-11 21:48:07 · 447 阅读 · 4 评论 -
渲染学进阶内容——模型
UVPair精准定位:将抽象纹理坐标具象化为(u,v)数值对动态适配:通过texScale实现纹理区域弹性伸缩数据不可变final字段保证模型构建过程的线程安全作为模型系统的“纹理坐标 DNA”,它与共同构成了 Minecraft 模型从数据定义到 GPU 渲染的完整链路。@Override// 橙色基础渲染 (RGB: 1.0, 0.5, 0.0)// 金字塔底座(16x16x1)原创 2025-06-10 17:15:20 · 219 阅读 · 0 评论 -
渲染学进阶内容——joml库
代码组件技术意义应用优化点序列化版本控制,避免兼容性问题跨环境部署稳定性元素命名mXY直观表示矩阵行列结构简化坐标变换计算properties位掩码快速判断矩阵特性分支优化(如求逆/乘法)单位矩阵初始化提供变换计算的基准状态减少冗余赋值操作此设计通过显式属性标记和内存预计算,显著提升了图形运算效率,同时确保序列化可靠性。优化策略技术实现性能提升属性检测通过properties位掩码识别矩阵类型减少90%+无效计算仿射优化跳过固定行计算减少25%计算量。原创 2025-06-10 12:39:20 · 44 阅读 · 0 评论 -
我的世界进阶模组开发教程——渲染学(4)
Oculus 是“引擎盖下的技工”:它修改了渲染管线,使得光影着色器能够在优化的 Forge 环境中运行。依赖 Rubidium/Embeddium:没有它们提供的优化基础,Oculus 无法高效工作(甚至无法工作)。光影包是“蓝图”:光影包包含具体的 GLSL 代码,定义了水怎么反光、云怎么飘、阴影怎么投射等所有视觉效果。Oculus 负责读取并执行这些蓝图。路径兼容:光影包通常放在文件夹,与 OptiFine 一致,方便玩家迁移。。原创 2025-06-09 15:09:43 · 456 阅读 · 0 评论 -
我的世界进阶模组开发教程——渲染学(3)
Override// 扩展父类实现// 添加特殊装饰// 在拴绳上添加装饰物// 计算拴绳中点// 渲染装饰物// ... 渲染装饰几何 ...是 Minecraft 生物渲染的关键实现:核心功能生物主体渲染特殊生物元素处理(拴绳)名称标签逻辑渲染技术PoseStack 变换应用MultiBufferSource 管理高级几何生成算法优化策略条件渲染减少开销批处理优化数学优化加速计算扩展点为模组提供渲染挂钩。原创 2025-06-09 14:23:15 · 108 阅读 · 0 评论 -
我的世界模组开发进阶教程——渲染学(2)
类在 Minecraft 渲染系统中扮演着:中央注册中心管理所有实体/方块模型标识防止模型ID冲突渲染基础设施为模型加载提供统一接口连接模型资源与渲染器动态模型枢纽支持多种船和告示牌类型实现同一模型的变种系统层级组织系统主模型/盔甲/配件的逻辑分离复杂模型的模块化管理资源管理核心连接模型资源与资源管理系统按需加载机制的基础高效管理数百种实体模型实现复杂的模型变体系统减少模型加载的资源占用支持玩家皮肤等自定义扩展。原创 2025-06-04 01:23:22 · 563 阅读 · 0 评论 -
我的世界模组开发进阶教程——渲染学(1)
本文系统解析了Minecraft游戏引擎的渲染架构,重点剖析了三个核心组件:ModelPart、PoseStack和MultiBufferSource。ModelPart作为模型系统的基础单元,采用树形结构管理几何数据与变换关系;PoseStack通过矩阵堆栈实现层次化变换,支持复杂的模型动画;MultiBufferSource智能管理多种渲染类型的缓冲区,优化批处理性能。三者协同构成了高效渲染流水线:ModelPart组织模型层级,PoseStack处理空间变换,MultiBufferSource管理数据原创 2025-06-03 15:47:40 · 208 阅读 · 0 评论 -
我的世界模组开发——方块实体(2)
枚举定义了 Minecraft 中方块的三种基本渲染方式,它控制着方块如何在游戏世界中视觉呈现。这个简单的枚举在渲染系统中扮演着至关重要的角色。枚举虽小,但在 Minecraft 的渲染系统中扮演着核心决策者的角色:三种基本渲染策略INVISIBLE:完全跳过渲染MODEL:高效的静态渲染:支持动画的动态渲染性能优化核心区分渲染类型实现资源合理分配降低不需要渲染的方块带来的性能开销视觉效果基础支撑所有方块的视觉表现形式为动画系统提供接入点系统扩展桥梁。原创 2025-06-03 14:14:00 · 115 阅读 · 0 评论 -
我的世界模组开发——方块实体(1)
这是一个抽象类,不能直接实例化,需要子类继承继承自Block,是所有方块的基类实现了接口,表明该类关联方块实体提供所有带有方块实体的方块的共同行为作为方块与方块实体之间的桥梁统一处理事件传递和UI创建提供帮助方法简化ticker创建定义默认渲染行为(子类通常覆盖)这个类是Minecraft中复杂功能方块(如容器、机器、特殊交互方块)的基础架构组件,实现了方块与方块实体之间的协同工作机制。实现了类型注册与实例创建的解耦提供强类型安全保障和版本兼容性支持。原创 2025-06-03 12:06:57 · 127 阅读 · 0 评论 -
我的世界模组开发——实战(1)
项目1:架子床方块开发摘要 本项目要求开发一个架子床方块,主要功能如下: 结构设计:包含上下两层床(各3方块长度),中间通过梯子或楼梯连接(占用1方块),提供两种变体。 交互功能:右键睡觉与原版床行为一致,但在下界仅提示无法睡觉(避免爆炸)。 实现要点: 继承FurnitureHorizontalBlock处理水平朝向 使用BlockEntity管理睡眠状态 自定义碰撞体积适应多层结构 重写use方法实现下界安全检测 通过BlockState管理梯子/楼梯变体 代码将复用模组基类的方向控制、红石兼容等机制,原创 2025-06-03 10:33:19 · 504 阅读 · 0 评论 -
我的世界模组开发——方块的深入探索(1)
关于方块这一篇在第一篇文章就简单的概述了一下,这根本不够,我们还需要深入的研究关于block的代码。首先找到net.minecraft.world.level.block包下的代码,找到block这个Java类,以下是对于静态常量定义的解释。静态常量。原创 2025-05-28 12:48:52 · 90 阅读 · 0 评论 -
我的世界模组开发——物理学(2)
Shapes类是 Minecraft 碰撞系统的核心工具类,通过以下方式连接AABB和VoxelShape转换桥梁:将连续空间的AABB转换为离散体素网格。组合工具:提供布尔运算(并、交、差)生成复杂形状。性能枢纽:通过优化策略(如)平衡精度与效率。模组开发者可通过此类实现高度定制的碰撞逻辑,从简单的动态调整到复杂多方块结构的交互,均可高效实现。理解其内部机制有助于避免性能陷阱,并充分利用 Minecraft 的物理引擎能力。原创 2025-05-23 09:44:32 · 131 阅读 · 0 评论 -
我的世界模组开发——物理学(1)
本文深入探讨了《Minecraft》中的物理系统,特别是重力、碰撞体积和投掷物的物理行为。文章首先介绍了Minecraft中的重力加速度,指出不同实体和物体的重力加速度各不相同,且与现实中地球的9.8m/s²差异较大。例如,玩家和生物的重力加速度为0.08格/刻²,而掉落物、TNT、矿车等的重力加速度为0.04格/刻²。文章还讨论了如何通过模组或数据包修改Minecraft的重力,例如使用零重力模组或力场数据包。 接着,文章详细解析了Minecraft中的碰撞体积,指出碰撞体积是实体或方块在游戏中实际占据的原创 2025-05-22 20:46:19 · 268 阅读 · 0 评论