朝向
发表时间: 2025-11-14 14:18:25
最后更新: 2025-11-14 14:18:25(4小时前)
本文标签: 实体机制
介绍
-
在《我的世界》中,朝向(又称为方向或视角方向)指的是实体所指向的特定方向。
-
朝向的定义包括Y轴的旋转角度(偏航角)以及X轴的旋转角度(俯仰角),其中“X轴”和“Y轴”是指围绕这些特定轴进行的旋转。
-
实体的身体和头部方向都会受到朝向的影响,尤其对于有头部的生物而言。
-
对于一些没有头部的实体,它们有时能够在X轴上进行360度的旋转。
表示方法
- 朝向以“度”为单位,用2个浮点值表示。
- Y轴旋转角(偏航角):-180°为正北,-90°为正南,0°为正北,+90°为正西,+180°则回到正北。
- X轴旋转角(俯仰角):水平是0°,向下看是正值,向上看是负值。不会超过正负90°。
调试屏幕
- 使用F3 + B,所有实体的朝向会以蓝色光束的方式显示。
- 玩家自身的朝向在调试屏幕的player_position下的Facing项目中:第一个是基本方位,后面第一个括号内是朝向的轴,第二个括号内的两个数字分别为Y轴旋转角(偏航角)和X轴旋转角(俯仰角),精确到小数点后一位。
Y轴旋转角(偏航角)与方位
- Y轴旋转角(偏航角)改变会改变面向的方向和运动的方向。
- 可以在调试屏幕
[仅Java版]中查看玩家此处的Y轴旋转角(偏航角)。 - 下表列出了基本方位和轴与Y轴旋转角度数(偏航角)、从+X方向开始的逆时针方向角度数的关系。
- 它们的取值范围是[−180∘,180∘)。
| 基本方位 | 朝向的轴 | Y轴旋转角(偏航角)度数范围 (Minecraft中的偏航角) |
从+X方向开始的逆时针方向角度数范围 (现实中的绝对偏航角) |
|---|---|---|---|
| 北 | Z轴负方向 | 135.0°到180.0°[2], -180.0°到-135.1° |
45.1°到135.0° |
| 东 | X轴正方向 | -135.0°到-45.1° | -44.9°到45.0° |
| 南 | Z轴正方向 | -45.0°到44.9° | -134.9°到-45° |
| 西 | X轴负方向 | 45.0°到134.9° | 135.1°到180.0°, -180.0°到-135.0° |
| 点钟方向 | Y轴旋转角(偏航角)度数 (Minecraft中的偏航角) |
从+X方向开始的逆时针方向角度数 (现实中的绝对偏航角) |
|---|---|---|
| 1点钟方向 | -150.0° | 60.0° |
| 2点钟方向 | -120.0° | 30.0° |
| 3点钟方向 | -90.0° | 0.0° |
| 4点钟方向 | -60.0° | -30.0° |
| 5点钟方向 | -30.0° | -60.0° |
| 6点钟方向 | -0.0° | -90.0° |
| 7点钟方向 | 30.0° | -120.0° |
| 8点钟方向 | 60.0° | -150.0° |
| 9点钟方向 | 90.0° | 180.0° |
| 10点钟方向 | 120.0° | 150.0° |
| 11点钟方向 | 150.0° | 120.0° |
| 12点钟方向 | 180.0° | 90.0° |
有效角度范围
- 在Minecraft以及现实世界中,朝向的角度通常限制在范围[−180°, 180°)之内。
- 一旦角度超出这个范围,就需要通过取余的方式使其回归有效角度。
- 模运算是一种有效的取余方法。
- 举个例子,当计算得出-190°时,根据−190≡170(mod360)这一关系,我们可以得出最终结果为170°。
- 在编程中,常常会使用类似于a % n或mod(a, n)的运算符进行模运算。
- 然而,当参与计算的数中仅有一个为负数时,这种取模运算的效果就可能不如预期,因此各编程语言对其处理的方式各有不同。
- 在此例中,n=360,因此在进行模运算之前,必须将被除数a转换为一个正数。
实体移动
放置方块
目标选择
-
在Minecraft中,可以通过指定的角度范围对玩家的方向进行检测,范围由两个数值定义,例如43到47。
-
使用以下命令,可以在所有Y轴旋转角度在43°到47°之间的玩家的动作栏中显示提示:“您的Y轴旋转角度数(偏航角)在43度到47度间。”: /title @a[y_rotation=43..47] actionbar {"text":"您的Y轴旋转角度数(偏航角)在43度到47度间。"}
-
同样,针对X轴的旋转角度,若该角度在43°到47°之间,则可在动作为栏显示相应信息:“您的X轴旋转角度数(俯仰角)在43度到47度间。”命令为: /title @a[x_rotation=43..47] actionbar {"text":"您的X轴旋转角度数(俯仰角)在43度到47度间。"}
-
另外,以下四条命令能够检测玩家的朝向,并通过聊天框输出当前方向,具体命令包括: /execute if entity @p[y_rotation=135..-135] run say North,/execute if entity @p[y_rotation=-135..-45] run say East,/execute if entity @p[y_rotation=-45..45] run say South,/execute if entity @p[y_rotation=45..135] run say West。
-
目标选择条件允许根据实体的特定视角来筛选实体:
| y_rotation | Y轴旋转角(偏航角) |
| x_rotation | X轴旋转角(俯仰角) |
数据值
- 所有实体都有名为Rotation的数据,用来储存实体的朝向。
设置视角
- 可以使用命令/teleport或/rotate
[仅Java版]设置实体的视角。 - 拥有生物AI的实体在传送后依然会自由移动,但其移动将从固定视角开始。
- 在Java版中,除了玩家外的所有实体均可以通过命令/data修改其Rotation数据来设置视角。
视角坐标
- 插入符号^允许根据实体的旋转角度来确定位置坐标。
语言
字体
平视显示器
第三人称视角
聊天
弹窗
教学提示
提示框
动作栏
定位栏
Boss栏
灵动视效
记分板
截图
进度
统计信息
队伍
成就
判定箱
东南规则
爆炸
多人游戏
药水效果
游戏事件
世界
难度
极限模式
游戏规则
维度
种子(世界生成)
灾厄巡逻队
袭击
僵尸围城
方块基本属性
挖掘
Java版材料
基岩版材料
含水
方块更新
红石电路
氧化
作物机制
含雪
稀有度
工具材料
盔甲材料
物品耐久
魔咒
光效
槽位
物品冷却
掉落物
箱子战利品(结构索引)
钓鱼
药水酿造
附魔(物品修饰)
铁砧机制
物品修复
锻造
伤害
伤害类型
着火
摔落
骑乘
朝向
重力
跳跃
走上方块
属性
生物AI
寻路
评论( {{ count }})条
{{ item.user_detail["nick_name"] }}
{{ item.user_detail["title"] }}
暂无内容