Minecraft(我的世界)中文论坛

 找回密码
 注册(register)

!header_login!

只需一步,立刻登录

查看: 3577|回复: 14

[命令] 【数据包】Seth的原版摄像机〖长文多图解析慎入

[复制链接]
⭐✔️ 当前离线
积分
28436
帖子
主题
精华
贡献
爱心
钻石
人气
下界之星
最后登录
1970-1-1
注册时间
2013-1-5
查看详细资料
 楼主| 发表于 2019-5-11 22:13:31 | 显示全部楼层 |阅读模式

您尚未登录,立即登录享受更好的浏览体验!

您需要 登录 才可以下载或查看,没有帐号?注册(register)

x
本帖最后由 贰逼 于 2019-5-23 00:35 编辑
前言
    进入数据包时代后,Sethbling继续领衔玩转逆天操作,从“BlingEdit”(一个基于原版制作的类似于worldedit的数据包)到Minecraft内制作“ATARI2600模拟器”(甚至用它破了speedrun世界纪录),这个Shaded_Camera数据包是几个月前的Camera数据包的续作,现在增加了材质渲染功能。没错,材质渲染
    至于这个数据包的后续,我不做继续跟踪了。目前Seth已经让这个数据包能录制gif动画了,更强的操作请关注Sethbling个人频道。


先看看效果:







    要继续吹这个数据包,可谓是大体上实现了计算3D物体的2D成像的过程,只不过是简化到了立方体。从效率的角度,这个数据包处理完成一张128*128的图像仅需几秒;从性能的角度,这几秒执行的上千万条命令,没有卡顿。

    Seth的数据包风格非常明显,那就是用递归替换掉大量枚举,将函数内部命令按照逻辑关系分为多文件。这样做能让代码效率提高不少,同时也间接地混淆了文件。但当文件名用命令行数表示时,看其中的原理就很麻烦了。花了几个小时,顺藤摸瓜,我最终将89个函数的关系理清了。

    不得不说,该数据包涉及的内容还是挺多的,因此在讲整个流程之前需要有一些预备知识,否则一些过程可能无法理解。至于各个过程的具体实现,我认为不是重点内容了,重要的是知道有什么方法,从中有什么启发。

    上方的目录,我将其分为三个板块,一个是所用到的预备知识,主要提供链接;另一个是具体流程,主要基于该数据包内的函数;最后我会总结这个数据包中的一些值得借鉴的方法

评分

参与人数 13人气 +34 金粒 +255 贡献 +4 收起 理由
ZM丶空尘 + 1 神乎其技!6的飞起!
damm25969 + 1 神乎其技!6的飞起!
ColorPencil + 2 MCBBS有你更精彩~
吴伟杰 + 2 MCBBS有你更精彩~
BlackCB. + 2 + 5 Ssssssssssssssssssss
Deing + 2 + 50 神乎其技,不服不行!
我的世界sun123 + 2 666
玄素 + 4 + 50 + 1 MCBBS有你更精彩~
Оil + 3 居然换头像了?= =?!
宇航员达达 + 3 ohhhhhhhh
ItIsEnderman + 4 + 50 + 1 tql
brooke_zb + 4 + 50 + 1 这一切要从袁隆平的出生讲起
SPGoding + 4 + 50 + 1  

查看全部评分

brooke_zb 当前离线
积分
14762
帖子
主题
精华
贡献
爱心
钻石
人气
下界之星
最后登录
1970-1-1
注册时间
2015-3-27
查看详细资料
发表于 2019-5-11 23:16:12 | 显示全部楼层
本帖最后由 brooke1999 于 2019-5-12 22:12 编辑

大致原理看了一遍有点头绪,只是没想到有人真会去这么做,MC真是万能

主要就是利用玩家视角指向将距离视线方向10blocks的10x10(blocks)正方形区域圈出来,再把这个10x10正方形进一步细分成128x128像素(也就是地图图像精度)大小,遍历每个像素点,往玩家视线方向(^0.2)移动,直到“碰到”方块或达到800步递归限制(160方块远),然后根据碰到的 方块类型&面朝向 来确定颜色&明暗达到3D视觉效果,最终以放置方块+地图来呈现

也不是完全完美,如果能根据递归步数进一步细分画面明暗的话emmmm

之前在油管有看到Seth大佬关于这个原版摄像机的视频,当时没看懂。。。所以说能有这么详细的分析也是辛苦贰逼了,毕竟反混淆+分析原理肯定花了不少时间

总之,tql,awsl

                             EDIT                              

别看原理貌似被我一讲挺简单的,但是从想法到构思再到实现、优化等一系列过程却是很不容易的,所以能学习到思考问题的方式才是最重要的。

评分

参与人数 1人气 +1 收起 理由
⊙v⊙ + 1 被你这么一总结...感觉好一般

查看全部评分

回复

使用道具 举报

MineCrocodile 当前离线
积分
2356
帖子
主题
精华
贡献
爱心
钻石
人气
下界之星
最后登录
1970-1-1
注册时间
2016-12-29
查看详细资料
发表于 2019-5-11 22:39:16 | 显示全部楼层
大佬解读,先收藏了
回复

使用道具 举报

⭐✔️ 当前离线
积分
28436
帖子
主题
精华
贡献
爱心
钻石
人气
下界之星
最后登录
1970-1-1
注册时间
2013-1-5
查看详细资料
 楼主| 发表于 2019-5-12 18:46:59 | 显示全部楼层
brooke1999 发表于 2019-5-11 23:16
大致原理看了一遍有点头绪,只是没想到有人真会去这么做,MC真是万能

主要就是利用玩家视角指向将 ...

先针对您提供的改进之处谈一下我的看法:
进一步细分是不可能的,因为地图像素画最多只有四个层次;因为方块特征颜色的缘故,根据地形生成的地图像素画并不如外部生成的像素画色域广,原版下能实现材质和明暗已经是极限了

再就是另外一点感受:
分析很简短其实,但并非想象那么容易;光看每个过程的目的是挺简单的,但实际上实现这些内容不是那么容易的;十分钟看完整篇帖子,且不说我码字做图一个月,实际上Seth开发了近半年更新了四个版本:第一个是界面显示也就是精简版、第二个是利用前一个数据包的原理实现了录制视频、第三个也就是一个月前更新的本数据包、第四个使用本数据原理实现录制gif。徒想没有价值,实现才是值得点赞的

评分

参与人数 1人气 +1 收起 理由
brooke_zb + 1 受教

查看全部评分

回复

使用道具 举报

zxcv21202 当前离线
积分
333
帖子
主题
精华
贡献
爱心
钻石
人气
下界之星
最后登录
1970-1-1
注册时间
2015-5-2
查看详细资料
发表于 2019-5-26 08:29:09 | 显示全部楼层

楼主做教程不容易,我这个新手献上一拜。{:10_512:}

评分

参与人数 1人气 -1 金粒 -10 收起 理由
ruhuasiyu -1 -10 水贴过多

查看全部评分

回复

使用道具 举报

ZZHei 当前离线
积分
330
帖子
主题
精华
贡献
爱心
钻石
人气
下界之星
最后登录
1970-1-1
注册时间
2019-2-11
查看详细资料
发表于 2019-6-10 17:46:52 | 显示全部楼层
MCBBS有你更精彩~

评分

参与人数 1人气 -1 金粒 -10 收起 理由
SHEEP_REALMS -1 -10 请仔细阅读版规,本版严禁灌水!.

查看全部评分

回复

使用道具 举报

依然冰奈斯 当前离线
积分
2723
帖子
主题
精华
贡献
爱心
钻石
人气
下界之星
最后登录
1970-1-1
注册时间
2013-4-11
查看详细资料
发表于 2019-6-11 11:34:39 | 显示全部楼层
原理简单,但实现起来会很难吧
回复

使用道具 举报

c1284177900 当前离线
积分
84
帖子
主题
精华
贡献
爱心
钻石
人气
下界之星
最后登录
1970-1-1
注册时间
2019-6-2
查看详细资料
头像被屏蔽
发表于 2019-6-12 00:12:03 | 显示全部楼层
溜的飞起,必须支持一下!!!
回复

使用道具 举报

大鹅哈哈 当前离线
积分
167
帖子
主题
精华
贡献
爱心
钻石
人气
下界之星
最后登录
1970-1-1
注册时间
2019-1-14
查看详细资料
发表于 2019-6-12 16:11:19 | 显示全部楼层
感谢分享!

评分

参与人数 1人气 -1 金粒 -10 收起 理由
ruhuasiyu -1 -10 万用回复

查看全部评分

回复

使用道具 举报

icebears 当前离线
积分
2694
帖子
主题
精华
贡献
爱心
钻石
人气
下界之星
最后登录
1970-1-1
注册时间
2016-2-8
查看详细资料
发表于 2019-6-14 16:36:39 | 显示全部楼层
是图片挂了还是我就看不见qwq

评分

参与人数 1金粒 +1 收起 理由
⭐✔️ + 1 加载时间比较长

查看全部评分

回复

使用道具 举报

Hajime_S 当前离线
积分
856
帖子
主题
精华
贡献
爱心
钻石
人气
下界之星
最后登录
1970-1-1
注册时间
2018-8-6
查看详细资料
发表于 2019-7-11 22:48:22 | 显示全部楼层
TQL,TQL
脑袋里瞬间想到了某六号的小车车
把主体转换为蠹虫什么的,然后探测玩家微量移动,映射到蠹虫上,再把影像传回玩家手里的地图
想想就刺激啊
回复

使用道具 举报

小森源 当前离线
积分
39
帖子
主题
精华
贡献
爱心
钻石
人气
下界之星
最后登录
1970-1-1
注册时间
2019-3-13
查看详细资料
发表于 2020-1-31 12:56:22 | 显示全部楼层
厉害呀,真可以做摄像头
回复

使用道具 举报

badday 当前离线
积分
212
帖子
主题
精华
贡献
爱心
钻石
人气
下界之星
最后登录
1970-1-1
注册时间
2020-11-11
查看详细资料
发表于 2020-11-13 17:04:15 | 显示全部楼层
感谢楼主分享~

评分

参与人数 1人气 -1 金粒 -10 收起 理由
SHEEP_REALMS -1 -10 请仔细阅读版规,本版严禁灌水!.

查看全部评分

回复

使用道具 举报

wjy123888 当前离线
积分
14
帖子
主题
精华
贡献
爱心
钻石
人气
下界之星
最后登录
1970-1-1
注册时间
2021-7-31
查看详细资料
发表于 2021-8-1 16:09:24 | 显示全部楼层
好耶6666666

评分

参与人数 1人气 -1 金粒 -10 收起 理由
SHEEP_REALMS -1 -10 请仔细阅读版规,本版严禁灌水!.

查看全部评分

回复

使用道具 举报

丿Luckly 当前离线
积分
78
帖子
主题
精华
贡献
爱心
钻石
人气
下界之星
最后登录
1970-1-1
注册时间
2014-10-12
查看详细资料
发表于 2021-8-8 16:10:19 | 显示全部楼层
牛的牛的牛的
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册(register)

本版积分规则

Archiver|小黑屋|Mcbbs.net ( 京ICP备15023768号-1 ) | 京公网安备 11010502037624号 | 手机版

GMT+8, 2021-12-4 13:16 , Processed in 0.077686 second(s), Total 30, Slave 29 queries, Release: Build.2021.11.26 1022, Gzip On, Redis On.

"Minecraft"以及"我的世界"为Mojang Synergies AB的商标 本站与Mojang以及微软公司没有从属关系

© 2010-2020 我的世界中文论坛 版权所有 本站原创图文内容版权属于原创作者,未经许可不得转载

快速回复 返回顶部 返回列表