本帖最后由 lovexyn0827 于 2022-4-23 18:14 编辑
目录
附录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()方法的移动中碰撞检查容错机制的一些历史信息
修正了个别错别字
实体运动看起来很简单,但是真正了解其具体机制的并不多。就连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下载。
目录
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 的图片压缩过头了,你看看发布设置那里有没有弄对……


话说回来,pdf 的图片压缩过头了,你看看发布设置那里有没有弄对……
看不懂,但想不到会有这么多的知识
实体的运动是一个多变量问题。
所以我认为只要弄清楚每个变量对实体运动的影响就行了。
至于叠加后的结果,我认为让需要的人自己去算比较合适。
还有,玩家是一个比较特殊的实体。
所以我认为只要弄清楚每个变量对实体运动的影响就行了。
至于叠加后的结果,我认为让需要的人自己去算比较合适。
还有,玩家是一个比较特殊的实体。
看不懂,但想不到会有这么多的知识
感谢版主!呜呜呜我们服腐竹搞了个伪和平是真的烦,什么刷怪农场都用不了
能不能把pdf丢到github方便我这样的懒人?