截图
介绍
English
Shutter Shadow 是 Exposure 的附属模组,适用于 Minecraft 1.21.1 / NeoForge。通过相机观察其他维度,拍摄当前画面,并使用维度胶片无缝传送玩家或将生物带回。
玩法与功能
将维度滤镜放入 Exposure 相机的滤镜槽,即可使用手持相机或手动操作的相机支架查看目标维度。仅观察不会让你离开原来的维度。装上维度胶片并拍照,即可触发对应的传送效果。
| 附件或功能 | 效果 |
|---|---|
| 维度滤镜 | 所有变体共用物品 ID shuttershadow:dimension_filter。数据组件用于指定目标维度。包含主世界、下界和末地滤镜;数据包可以添加更多滤镜。 |
| 玩家维度胶片 | 装有维度滤镜时,手持相机自拍会将摄影者传送至目标维度;支架拍摄则会传送原维度中处于搜索范围内、符合相机视野要求且已同意支架传送的玩家。 |
| 生物维度胶片 | 在相机视野内的目标维度中,寻找未被遮挡的非玩家生物实体,并将第一个符合条件的生物带到相机所在维度。 |
| 附件提示 | 将鼠标悬停在相机上,即可查看其附件槽,包括胶片、闪光灯、镜头和滤镜。 |
相机附魔
| 附魔 | 等级与效果 | 生存模式获取方式 |
|---|---|---|
| 曝光失败 — 相机 | I,诅咒。不会生成或上传图像,也不会增加胶片帧数。但会保留快门效果、Exposure 摄影事件和统计数据,以及维度胶片的传送效果。适用于手持相机、手动支架和红石支架拍摄;仍须装有可用胶片。 | 下界要塞宝箱。 |
| 自恋 — 相机 | I,诅咒。手持相机默认以自拍模式打开;你可以手动切换回去。支架没有自拍模式,因此不受影响。 | 下界要塞宝箱。 |
| 安全维度传送 — 相机 | I–III。相机成功触发维度切换后,为被传送的玩家提供缓降效果和该模组的保护效果,持续10 / 20 / 30 秒,时长取决于相机的附魔等级。适用于手持相机、手动支架和红石支架拍摄。 | 仅末地船宝箱;普通末地城宝箱不会额外生成该附魔书。 |
每个符合条件的宝箱有30% 的几率额外获得一本附魔书,且不会替换原有战利品。两种要塞诅咒出现的几率相同;末地船宝箱中的三个安全等级出现的几率也相同。砂轮无法移除诅咒。
该保护效果可以抵御没有直接或间接实体来源的伤害,例如虚空、火焰、熔岩、窒息,以及持续中的中毒或凋零伤害。但无法抵御实体攻击、弹射物或 /kill。
该效果不会熄灭火焰、将玩家移出虚空,也不会改变着陆位置。普通拍照、传送失败、同维度移动以及 /tps 都不会自动触发此附魔。
无缝传送命令
/tps <entities> <dimension> <x> <y> <z>
/tps @s minecraft:the_end 0 80 0
/tps @e[type=minecraft:pig,distance=..8] minecraft:overworld 0 80 0
安装与兼容性
需要 Minecraft 1.21.1、Java 21、NeoForge 和 Exposure。在客户端和服务端都安装 Shutter Shadow 和 Exposure。该模组声明需要 Exposure 1.9.19 或更高版本;与未来版本的兼容性仍需验证。
| 模组 | 当前开发测试版本 | 兼容性说明 |
|---|---|---|
| 钠 | 0.8.13(适用于 NeoForge 1.21.1) | 可选客户端模组。支持其区块渲染上下文;它不是必需的前置依赖。 |
| Iris | 1.8.14 Beta 1(适用于 NeoForge 1.21.1) | 可选客户端模组。相机会使用玩家当前的光影设置。跨维度结果取决于光影包。 |
| 机械动力 | 6.0.10(适用于 Minecraft 1.21.1) | 兼容。 |
| Sable | 2.0.6(适用于 NeoForge 1.21.1) | 兼容。 |
| 沉浸式传送门 | 不得与 Shutter Shadow 一同安装 | 不兼容。 |
安装后,钠和 Iris 的声明最低版本分别为 0.8.13 和 1.8.14 Beta 1。原版渲染和可选渲染器模组使用各自对应的渲染路径。所列版本并不意味着所有未来版本或光影包都已测试。
原版相机雾效遵循相机的渲染距离。光影包可能会独立计算雾效,因此当游戏视距大于相机范围时,地形边缘可能仍然可见。本模组不会修改各个光影包的雾效算法。
配置
从游戏内模组列表打开 Shutter Shadow 的原生配置界面。设置分为服务端玩法/加载、客户端渲染/个人偏好和本地日志。
| 文件 | 用途 |
|---|---|
config/shuttershadow-server.toml |
服务端玩法与相机区块加载设置,会同步到客户端。现有世界的 serverconfig/shuttershadow-server.toml 优先。 |
config/shuttershadow-client.toml |
客户端渲染、游戏内警告和个人传送偏好。只有展台传送同意偏好需要发送到服务端。 |
config/shuttershadow-core.toml |
包含本地日志总开关的通用配置。客户端和服务端分别配置;不会由服务端同步。 |
服务端设置
| 完整键 | 默认值 | 范围与用途 |
|---|---|---|
dimension_camera.max_view_distance |
8 |
3–32的区块半径。限制手持摄像机和手动操作的支架摄像机订阅及绘制目标维度区块的范围。实际范围还受客户端请求的范围和服务器视距影响。 |
camera_stand.stand_player_radius |
8 |
1–64格。玩家维度影片在支架周围的搜索范围,范围以支架所在的原维度为准;仍会进行摄像机可见性和个人同意检查。 |
mob_dimension_film.capture_radius |
16 |
1–32格。沿 X/Y/Z 轴扩展目标摄像机方块的生物搜索框,随后检查摄像机可见性和遮挡情况。此范围不会随摄像机视距缩小。 |
core.serverSideNormalChunkLoading |
true |
选择额外区块票据的活动级别。启用:实体和方块刻。禁用:仅方块刻,因此生物可能停止更新。票据仍会保留。 |
core.enableRemoteChunkLoading |
true |
主动加载摄像机订阅的目标维度额外区块。禁用时,只能使用因其他原因已加载的区块,地形可能缺失。 |
core.delayUnloadGenerations |
4 |
1–120个订阅更新周期,每个周期约为 13 个游戏刻。超过设定周期数后,会释放不再观看的区块。不建议更改此项:数值过低可能导致反复加载,数值过高则会占用更多内存。大型订阅和断开连接时的清理也可能提前释放区块。 |
摄像机视野限制控制目标维度的订阅和绘制,不会更改玩家的常规视频视距或原版模拟距离。半径8最多覆盖一个17×17区块窗口;其他限制可能会缩小实际订阅和绘制范围。
生物搜索以方块为单位,可能跨越摄像机所在区块的边界;搜索范围不局限于该区块。摄像机可见性检查仍然适用。生物捕获可能会等待所需搜索区块就绪;玩家传送不会额外等待区块就绪。
客户端设置
| 完整键 | 默认值 | 用途 |
|---|---|---|
camera_stand.accept_stand_dimension_film_teleport |
true |
接受从玩家维度影片传送到支架的请求。禁用后仍可观看和拍摄;/tps不受影响。 |
core.enableClientPerformanceAdjustment |
true |
根据近期帧率和可用内存缩短原版目标地形的绘制距离。不会更改常规世界的视频设置。无法保证 Sodium 自带的地形管线会遵循此设置。 |
core.doCheckGlError |
false |
启用额外的 OpenGL 错误检查以进行诊断。会增加检查开销;输出受日志主开关控制。 |
core.saveMemoryInBufferPack |
false |
减少模组原版远程区块网格缓冲区的初始分配量;缓冲区仍可继续增长。现有缓冲区不会缩小,Sodium 的缓冲区不受影响。更改后请重启客户端。 |
core.enableWarning |
true |
启用或禁用所有运行时游戏内警告,包括内存和 Iris 提示。此设置独立于日志功能。 |
数据包和维度筛选器
维度滤镜使用 Exposure 的滤镜定义格式。将每个数据文件放在:
data/shuttershadow/dimension_filter/<target dimension namespace>/<target dimension path>.json
例如,data/shuttershadow/dimension_filter/minecraft/overworld.json:
{
"predicate": {
"items": "shuttershadow:dimension_filter",
"components": {
"shuttershadow:dimension_filter_target": "minecraft:overworld"
}
},
"attachment_texture": "exposure:textures/gui/filter/stained_glass.png",
"attachment_tint": "78A7FF",
"shader": "shuttershadow:shaders/post/neutral.json"
}
shuttershadow:dimension_filter_target 用于指定目标位置。这种格式无需来源维度列表或手动配置缩放比例,即可从其他维度查看主世界。目标维度必须存在于服务器上。如果滤镜的目标维度就是当前维度,则不会创建跨维度视图。
请将滤镜物品模型按对应路径放入资源包:
assets/shuttershadow/models/item/dimension_filter/<target dimension namespace>/<target dimension path>.json
自定义纹理、模型和译文需要放入对应的资源包。创造模式物品栏标签页会自动列出符合上述物品和组件谓词、已注册的目标变体。无缝传送、区块加载、维度滤镜和相机维度变更事件的数据包详情与 Java API,详见 API 文档。
问答
问题1:为什么带有维度滤镜的红石触发相机支架无法拍摄目标维度?
回答1:因为这需要解决各种问题,尤其是与光影相关的问题。目前暂无此计划;相机目前只能拍摄原维度。
问题2:安装 Sable/Veil 后,为什么红石触发的相机支架会短暂闪烁?
回答2:这是 Exposure 的问题,不是我的问题。
问题3:兼容性如何?
回答3:目前在 ATM10 整合包中安装时尚未发现错误。
问题4:其他玩家总是用维度滤镜和维度胶卷右键点击支架上的相机,拍摄我并把我传送到其他维度。
回答4:请在客户端配置中禁用支架相机传送功能。将 camera_stand.accept_stand_dimension_film_teleport 设置为 false。
鸣谢与许可
维度运行时移植并修改自 Immersive Portals for NeoForge,版本 v6.0.7,提交 aede93a4865fe4aab5dd2781fb38ab3e5cecd63b,原作者为 qouteall、Nick1st 及上游贡献者。
Shutter Shadow 修改了包名、网络通信、同步和渲染,移除了传送门功能,并保留了维度相机和无缝传送所需的运行时。
Shutter Shadow 的原始代码采用保留所有权利声明。移植和衍生的上游代码仍遵循Apache-2.0许可,不受原始代码“保留所有权利”声明的限制。
归属信息和修改说明请参阅随附的NOTICE-immersive-portals.txt。
中文
Exposure 模组的扩展。通过相机观察其他维度、拍摄当前取景画面,并使用维度胶卷无缝传送玩家或带回生物。
玩法与功能
将维度滤镜放入 Exposure 相机的滤镜槽,即可通过手持相机或手动操作的支架相机观察目标维度。观察期间玩家仍在原维度;安装维度胶卷并拍摄,才会触发对应传送。
| 附件或功能 | 效果 |
|---|---|
| 维度滤镜 | 所有变体共用一个物品 ID:shuttershadow:dimension_filter,通过物品组件指定目标维度。默认提供主世界、下界和末地滤镜,可用数据包扩展。 |
| 玩家维度胶卷 | 装入维度滤镜和玩家维度胶卷手持自拍传送自己到目标维度;支架拍摄传送原维度中位于搜索范围、符合镜头条件且同意支架传送的入镜玩家。 |
| 生物维度胶卷 | 在目标维度搜索镜头内未被遮挡的非玩家生物,将首个符合条件的生物传送到相机所在维度。 |
| 附件提示框 | 鼠标悬停相机时显示附件槽,默认包括胶卷、闪光灯、镜头和滤镜。 |
相机附魔
| 附魔 | 等级与效果 | 生存获取方式 |
|---|---|---|
| 曝光失效-相机 | I,诅咒。拍摄不生成或上传图片、不增加胶卷帧数,保留快门、Exposure 拍摄事件、统计及维度胶卷传送。手持、手动支架和红石支架均有效;仍需装入可拍摄的胶卷。 | 下界要塞宝箱。 |
| 自恋狂-相机 | I,诅咒。每次打开手持相机时默认进入自拍,可手动切回远景;支架没有自拍功能,不受影响。 | 下界要塞宝箱。 |
| 安全传送维度-相机 | I~III,正面附魔。相机拍摄成功换维后,按相机等级为被传送玩家给予 10/20/30 秒的缓降及安全传送效果。手持、手动支架、红石支架均适用。 | 末地船宝箱,普通末地城宝箱不追加。 |
符合条件的宝箱有 30% 概率额外生成一本书,原宝箱内容保留;下界要塞的两种诅咒等概率,末地船的安全传送 I~III 等概率。诅咒不能用砂轮清除。
安全传送效果免疫没有直接或间接实体来源的伤害,例如虚空、火、岩浆、窒息、中毒和凋零持续伤害;实体攻击、投射物及 /kill 不受保护。它不会熄火、搬离虚空或改变落点。普通拍照、传送失败、同维移动,以及 /tps 不会自动触发此附魔。
无缝传送指令
/tps <目标实体> <目标维度> <x> <y> <z>
/tps @s minecraft:the_end 0 80 0
/tps @e[type=minecraft:pig,distance=..8] minecraft:overworld 0 80 0
安装与兼容
客户端与服务端均须安装 Shutter Shadow、Exposure 1.9.19 或更新版本,后续版本兼容性仍需核实。
| 模组 | 当前开发检查版本 | 兼容说明 |
|---|---|---|
| Sodium | 0.8.13,NeoForge 1.21.1 | 可选客户端模组,已适配其区块渲染上下文;不是必需依赖。 |
| Iris | 1.8.14 Beta 1,NeoForge 1.21.1 | 可选客户端模组,相机沿用玩家当前光影设置。跨维度显示效果受光影包影响。 |
| Create | 6.0.10,Minecraft 1.21.1 | 兼容。 |
| Sable | 2.0.6,NeoForge 1.21.1 | 兼容。 |
| Immersive Portals | 不允许同时安装 | 不兼容。 |
安装 Sodium 或 Iris 时,当前声明的最低版本分别为 0.8.13 和 1.8.14 Beta 1。原版渲染与可选模组采用各自的渲染路径;开发检查版本不代表对任意后续版本或所有光影包都已验证。
原版相机雾按相机绘制距离调整。光影包可能自行计算雾气,因此在游戏视距较大、相机范围较小时,地形边缘仍可能明显;本模组不修改具体光影包的雾算法。
配置
游戏内可从模组列表进入 Shutter Shadow 的原生配置界面。配置分为服务端玩法与加载、客户端渲染与个人偏好、本地日志三类。
| 文件 | 用途 |
|---|---|
config/shuttershadow-server.toml |
服务端玩法和相机区块加载设置,由服务器同步给客户端;世界已有 serverconfig/shuttershadow-server.toml 时采用世界配置。 |
config/shuttershadow-client.toml |
客户端渲染、游戏内警告和个人传送偏好。只有支架传送同意偏好需要上报服务器。 |
config/shuttershadow-core.toml |
通用配置,仅保留本地日志总开关;客户端与服务端分别设置,不由服务器同步。 |
服务端配置:
| 完整键 | 默认值 | 范围与作用 |
|---|---|---|
dimension_camera.max_view_distance |
8 |
3~32 区块半径,限制手持和手动支架的目标维度区块订阅及绘制。实际距离还受客户端请求和服务器视距限制。 |
camera_stand.stand_player_radius |
8 |
1~64 方块,支架玩家维度胶卷搜索原维度玩家的范围,仍需符合镜头条件及个人同意偏好。 |
mob_dimension_film.capture_radius |
16 |
1~32 方块,沿 X/Y/Z 扩展目标相机方块的生物搜索盒,随后检查镜头和遮挡;不随相机视距缩小。 |
core.serverSideNormalChunkLoading |
true |
选择额外区块票据的活跃等级:开启时更新实体与方块,关闭时仅要求方块更新,生物可能停止更新;不会取消票据。 |
core.enableRemoteChunkLoading |
true |
是否主动加载相机额外订阅的远维度区块。关闭后只能使用被其他原因加载的区块,画面可能缺少地形。 |
core.delayUnloadGenerations |
4 |
1~120 个订阅更新代数,每代约 13 游戏刻;超过设定代数后释放不再观察的区块。不建议修改:过小容易反复加载,过大增加内存占用;大量区块及断线等清理仍可提前执行。 |
相机视距配置控制的是目标维度加载订阅和绘制上限,不修改玩家普通世界的视频视距或原版模拟距离。半径 8 对应最多 17×17 区块的订阅窗口,实际订阅和当帧画出的范围还受其他限制。生物搜索以方块为单位,可跨越相机中心区块边界,不会被截成中心区块;仍须满足镜头条件。生物获取可能等待必需的扫描区块,玩家传送没有额外区块等待。
客户端配置:
| 完整键 | 默认值 | 作用 |
|---|---|---|
camera_stand.accept_stand_dimension_film_teleport |
true |
是否接受支架玩家维度胶卷传送。关闭后仍可观察和拍照,不影响 /tps。 |
core.enableClientPerformanceAdjustment |
true |
根据近期帧率和可用内存缩短原版目标地形绘制距离,不修改普通世界视频设置;Sodium 自身地形流程不保证受此项控制。 |
core.doCheckGlError |
false |
额外检查 OpenGL 错误,用于诊断;增加检查开销,输出服从日志总开关。 |
core.saveMemoryInBufferPack |
false |
减小本模组远维度原版区块网格缓冲的初始分配,容量不足仍增长;已有缓冲不缩小,Sodium 自有缓冲不受控制,修改后建议重启客户端。 |
core.enableWarning |
true |
统一开启或关闭全部内核游戏内提醒,包括内存和 Iris 提醒;与日志开关独立。 |
数据包与滤镜
维度滤镜使用 Exposure 的滤镜定义格式,数据文件放在:
data/shuttershadow/dimension_filter/<目标维度命名空间>/<目标维度路径>.json
例如 data/shuttershadow/dimension_filter/minecraft/overworld.json:
{
"predicate": {
"items": "shuttershadow:dimension_filter",
"components": {
"shuttershadow:dimension_filter_target": "minecraft:overworld"
}
},
"attachment_texture": "exposure:textures/gui/filter/stained_glass.png",
"attachment_tint": "78A7FF",
"shader": "shuttershadow:shaders/post/neutral.json"
}
shuttershadow:dimension_filter_target 指定目标维度。只写以上结构即可从其他维度观察主世界,无需来源路由或距离比例字段;目标维度必须在服务器实际存在,同维度不建立跨维度观察。
滤镜物品模型采用相同的维度路径,放在资源包中:
assets/shuttershadow/models/item/dimension_filter/<目标维度命名空间>/<目标维度路径>.json
自定义纹理、模型和译名需要相应资源包。新增符合上述物品和目标组件谓词的滤镜定义后,创造物品栏会自动列出其目标变体。数据包配置及 Java API(无缝传送、区块加载、滤镜工具、相机换维事件)详见 API 文档。
问答
Q1:为什么红石触发的带有维度滤镜的支架照相机拍不到目标维度的画面?
A1:因为这需要解决各种问题,尤其是光影,暂不考虑加入,目前只能拍到原维度。
Q2:为什么装了 Sable/Veil 模组后红石触发支架照相机出现短暂闪烁?
A2:这是 Exposure 的问题,不是我的。
Q3:兼容性如何?
A3:目前安装在 ATM10 整合包并未发现报错。
Q4:其它玩家总是右键支架上的带有维度滤镜和维度胶卷的照相机拍摄我,将我传送到其它维度。
A4:请在客户端配置中关闭支架照相机传送,将 camera_stand.accept_stand_dimension_film_teleport 设为 false。
上游与许可
跨维度内核移植并修改自 Immersive Portals for NeoForge,版本 v6.0.7,提交 aede93a4865fe4aab5dd2781fb38ab3e5cecd63b,原作者为 qouteall、Nick1st 及上游贡献者。本项目调整了包名、网络、同步与渲染实现,删除传送门功能,保留相机跨维度观察和无缝传送所需内核。
本模组原创部分采用 All Rights Reserved;上游移植及衍生部分继续遵循 Apache-2.0,不受原创部分的 All Rights Reserved 声明限制。上游来源和修改说明见模组内 NOTICE-immersive-portals.txt。
常见问题
Dimensional Exposure 支持哪些 Minecraft 版本?
Dimensional Exposure 支持 Minecraft Java 版 1.21.1,可用的加载器:NeoForge。下载时注意选择和你游戏版本一致的文件。
Dimensional Exposure 怎么安装?
先用 PCL2 或 HMCL 启动器安装对应版本的 NeoForge,再把下载的 .jar 文件放进游戏目录的 mods 文件夹,重新启动游戏即可。开启了版本隔离的,mods 文件夹在 versions/版本名 下面。
xiaofanwei123 的其他作品
查看全部 →Meowmere
来自《泰拉瑞亚》的喵刀
xiaofanwei’s items[Iron’s Spellbooks and Terra Curios]
本模组基于泰拉瑞亚的Curios模组,为Iron's Spellbooks添加了魔法饰品。
LockDown Reneoforged
一款简单的模组,可根据模板创建世界,并锁定维度、地图和种子。
More Tide Fish
为 Tide⚡️ 新增几种危险的深海鱼。
评论
登录后评论和评分