lovexyn0827
本帖最后由 lovexyn0827 于 2022-4-23 18:14 编辑

实体运动看起来很简单,但是真正了解其具体机制的并不多。就连wiki上对实体运动的专门论述也只有一小段,不严谨甚至还不完全正确。另外,爆炸、活塞推动等加速方式的具体数据和实体移动过程细节并不普及,网上部分实体运动公式定义不清晰,对实体运动理论的系统论述缺失,这就是我写这篇报告的原因

本文假定大家已经对下列内容有一定认识:
l  Minecraft的基础游戏机制,如怪物会掉落物品,活塞会推动实体等。
l  Minecraft中一些基础名词,如玩家、方块、实体、生物、粘液块、坐标和爆炸等。
l  Minecraft中一些专业概念,如区块、游戏刻、服务端和维度等。
l  高中必修阶段及以前的数学概念。
l  高中必修阶段及以前的物理概念。
文章内容大概如下安排:
l  第二节给出一些基本概念,是阅读下文的基础
l  第三节给出用于描述实体在理想运动状态(只受固定加速度和阻力系数阻力作用)下的运动情况的一些常用公式及其应用(包括刻数的判定,以及三个以上运算阶段的实体的处理方法等内容),强烈建议看完
l  第四节描述了Minecraft中存在的两大实体移动(就是坐标和碰撞箱移动的过程)方式,个人认为可以区分就行
l  第五节说明了一些外部因素对实体的运动的影响,大家可以按需阅读或作为一个参考来用
l  第六节说明了LivingEntity(玩家生物盔甲架)的运动机制,说明了AI控制速度的基本原理,介绍了状态效果等因素对运动的影响,最后简要说明了鞘翅飞行机制
l  第七节从创建、运算和影响三方面介绍了十类常见实体的运动特点,也是一个参考。
l  第八节向大家展示了实体运动的一些实际应用,可以按需阅读。

文中提到的两个自己临时写的辅助Mod可在我的Github主页http://github.com/lovexyn0827下载

PDF及配套存档(1.16.4):https://wwn.lanzouh.com/b02iez40j    密码:5a3e

11月13日之前下载过文章的如有需要建议重新下载一份,原来的文章中存在大量错误,目前其中绝大部分已经修正。如果还有未发现的错误欢迎反馈。 作者:lovexyn0827 https://www.bilibili.com/read/cv12289098?spm_id_from=333.999.0.0 出处:bilibili
文中提到的临时编写的辅助Mod可在我的Github主页http://github.com/lovexyn0827下载。

本文的Github地址:https://github.com/lovexyn0827/Discovering-Minecraft/blob/master/Minecraft%E5%AE%9E%E4%BD%93%E8%BF%90%E5%8A%A8%E7%A0%94%E7%A9%B6%E4%B8%8E%E5%BA%94%E7%94%A8/Minecraft%E5%AE%9E%E4%BD%93%E8%BF%90%E5%8A%A8%E7%9B%B8%E5%85%B3%E7%A0%94%E7%A9%B6%E4%B8%8E%E5%BA%94%E7%94%A8%E4%BF%AE%E6%AD%A3%E7%89%8820211128.md

目录
1.  研究背景及文章结构
2.  实体运动基础
    ​2.1.    实体运动基本属性及设定
    ​2.2.    实体运算位置及实体间运算顺序
    ​2.3.    Minecraft实体分类
    ​2.4.    Entity类定义的实体模型
3.  实体自由运动公式
    ​3.1.    符号定义及公式推导
    ​3.2.    公式的直接及拓展应用
4.  实体移动过程及碰撞机制
    ​4.1.    基于Entity.move()方法
    ​4.2.    基于raycast的弹射物自主移动
    ​4.3.    两大类移动过程的对比
5.  其他外部因素对运动的影响
    ​5.1.    蛛网和浆果丛的减速作用
    ​5.2.    粘液块和床的回弹
    ​5.3.    蜜块和灵魂沙对上方实体的减速作用
    ​5.4.    滑度机制
    ​5.5.    气泡柱的变速作用
    ​5.6.    其它特殊方块变速举例
    ​5.7.    流体的变速作用
    ​5.8.    活塞的推动和变速作用
    ​5.9.    潜影盒与潜影贝的推动作用
    ​5.10.   实体挤压(推动)
    ​5.11.   骑乘
    ​5.12.   鱼竿浮漂的拉动
    ​5.13.   击退
    ​5.14.   方块对某些实体的推出作用
    ​5.15.   爆炸的变速作用
    ​5.16.   区块行为对运动的影响
    ​5.17.   TP/折跃门传送
    ​5.18.   跨维度运动
    5.19.   拴绳机制
6.  LivingEntity运动机制
    ​6.1.    LivingEntyity的自由运动
    ​6.2.    AI及属性对运动的影响
    ​6.3.    鞘翅飞行
7.  几类具体实体运动分析
    ​7.1.    TNT
    ​7.2.    下落的方块
    ​7.3.    物品
    ​7.4.    经验球
    ​7.5.    船
    ​7.6.    矿车
    ​7.7.    箭矢
    ​7.8.    雪球
    ​7.9.    恶魂火球
    ​7.10.   玩家
8.  实体运动应用举例
    ​8.1.    改造一种TNT大炮
    ​8.2.    科学地使用弹射物
    ​    ​8.2.1.  珍珠投掷技术
    ​    ​8.2.2.  珍珠炮
    ​    ​8.2.3.  杀凋大炮
    ​8.3.    解释一些奇葩现象
参考文献

附录A常见实体运动属性
附录B完整公式
附录C研究环境及辅助性工具
附录D主要符号及单位
附录E 定义索引


[size=13.006px]


Changelog

2021.07.23:
初稿发布

2021.08.01:
由B站用户粗缯大布裹生涯帮助优化本文排版
修正了关于绊线勾的触发条件的一处严重错误修正了一些错字、数据错误等细节性错误
对36号方块碰撞箱进行了补充
5.15节补充插图
8.2.2节增补了关于TNT复制阵列和珍珠矫正的一些信息
8.3节增补了一条
对参考文献进行了排序

2021.11.13:
修复了数百处语言错误(错字、病句)
修复了大约一百处的技术性错误和有误导性的录入错误
对浮点数误差进行了简要说明
多级弹射相关的研究结果
补充了部分1.17的新改动
对MC-73844等Bug进行了说明
增加了定义索引
尝试了优化文章的通俗性(不知道是否有效)
统一了一些名词

2021.11.28
增补了拴绳机制
对AI加速进行了一些补充
2022.04.20

将文章转化为Markdown格式并托管到Github
补充了一种更接**射的珍珠矫正
补充了关于基于Entity.move()方法的移动中碰撞检查容错机制的一些历史信息
修正了个别错别字








卡狗
本帖最后由 Kascade 于 2021-7-23 15:50 编辑






话说回来,pdf 的图片压缩过头了,你看看发布设置那里有没有弄对……



第一页 上一页 下一页 最后一页