以《纪念碑谷》为例解析二维图像的视觉欺骗原理
在玩《纪念碑谷》时,会觉得移动转轴在空间上各种不合理,移动完了看起来很合理的样子。本文将纪念碑谷中出现的视觉欺骗进行归类,不包括技巧性上的设计,如上下移动装置,曲面行走造成空间上的位移。
像上图这种通过曲面行走使人从X-Y平面走到X-Z平面再Y-Z平面这种 不包含视觉欺骗。
总结:所有的欺骗都建立在游戏是个二维的图像上,如果给出了一个场景的三视图,一切的欺骗都将不复存在。
1. 潘洛斯三角形
这是游戏中出现的最多的欺骗种类,先上一张代表性的原理图,
再看看纪念碑谷中出现的三角形,
水流永动~
剩下的几张不标出来了 大家自己找找~
以及我最喜欢的一个场景,在艾滋病主题中出现的,巧妙的利用旋转90度,构成两个潘洛斯三角形,简直炫酷。
原始状态:
旋转90度后,看出来哪两个三角形是不合理的了吗?
2.凸出来还是凹下去
在被遗忘的海岸章节开始多次出现,同样先上一张代表性的原理图
图中的正方体是凸出来还是凹下去的呢? 看看纪念碑谷中出现的场景
红圈中是部分看上去好像是凸出来的,但是..
现在看呢,明显是凹下去的。
上一张图,图中圈出的部分既可以看作是凸出来的,也可以看作是凹下去的。
3. 旋转产生的二维上的重合
这个没什么特别之处,在二维平面上近处的东西可以和远处的东西重合,想想那些顶着比萨斜塔二手手机转让的照片你就懂了..
动画图解开始
就是这样 算是最常出现的一种
4. 莫比乌斯环 (不算视觉欺骗 也列出来吧)
先上代表性原理图,找图片多没意思,看我拿UG建模画一个,想学可以留言呀。
纪念碑谷中的
小课堂:
有人说想学莫比乌斯环的画法,我来小贴一下步骤,UG大神欢迎收我为徒,我定勤加练习,每日给您提供吐槽素材。
UG版本 7.0 (不要问我为什么用这么老的版本)
1.画一个半圆作为草图1.
2.画一个半圆作为草图2 (两个半圆可接成一个圆)
3.画环的截面作为草图4 (咦 3哪去了)
4.截面沿草图1扫掠,角度那里选择线性,角度选择0-90度,两边加起来弯180度,是弯一次的莫比乌斯环。
5.扫掠另一边 完成。
倘若直接画一个圆,扫掠,线性0-180是做不出来的~
莫比乌斯环用来装13怎么够 我一般都用这个。
以《纪念碑谷》为例解析二维图像的视觉欺骗原理相关推荐
- 以QRcode为例聊聊二维码的现状与未来(Java版本)
并非标题党,前半段可能会用比较大的篇幅介绍QRcode的应用,后半段会写一些我对二维码的思考 参考:https://www.cnblogs.com/bigroc/p/7496995.html 文章目录 ...
- 利用ZXing工具生成二维码以及解析二维码
今天突然想到二维码是如何存储信息的.于是就开始各种搜索,最终自己也利用Google的ZXing工具完成了一个生成二维码和解析二维码的简单程序. 一. 二维码生成原理(即工作原理) 二维码官方叫版本Ve ...
- asp.net C#生成和解析二维码代码
类库文件我们在文件最后面下载 [ThoughtWorks.QRCode.dll 就是类库] 使用时需要增加: using ThoughtWorks.QRCode.Codec; using Though ...
- java生成二维码/java解析二维码
二维码的优缺点 优点:1. 高密度编码,信息容量大:2.编码范围广:3.容错能力强:4.译码可靠性高:5.可引入加密措施:6.成本低,易制作,持久耐用. 缺点:1.二维码技术成为手机病毒.钓鱼网站传播 ...
- opencv图像处理中的一些滤波器+利用滤波器提取条形码(解析二维码)+公交卡倾斜矫正+物体尺寸丈量
一般来说,图像的能量主要集中在其低频部分,噪声所在的频段主要在高频段,同时图像中的细节信息也主要集中在其高频部分,因此,如何去掉高频干扰同时又保持细节信息是关键.为了去除噪声,有必要对图像进行平滑,可 ...
- 嵌入式使用Zbar解析二维码
引言 上篇文章介绍了使用Quirc解析二维码,Quirc是一个轻量级的二维码解析库,效率太低,不符合使用条件,作者使用Zbar来进行二维码的解析.Zbar算法是现在网上开源的条形码,二维码检测算法,这 ...
- 使用摄像头解析二维码,且可以生成含具体信息的二维码
开源一份早些时候写过的代码,关于二维码在PC端的应用. 二维码的具体应用范围,这里不详述. 之前项目主要用于朋友一个牙科的平台,不过后面没有采用,也就没有往后继续开发,大家要是觉得有意思,可以自己拿去 ...
- Android超方便 集成 Zxing实现扫一扫,闪光灯,生成二维码图片,解析二维码(条码)等功能
之前我写过一篇博客是关于如何将zxing集成到Android Studio中,以及简单的实现扫一扫功能. 详情请看:Android Studio集成Zxing扫一扫 但是,上面那篇博客只有有一个扫一扫 ...
- llqrcode.js识别二维码,解析二维码信息
llqrcode.js具有扫描二维码功能,用来进行从图片中识别二维码,可解析二维码的信息. 直接上代码 <!DOCTYPE html> <html> <head>& ...
最新文章
- ArcSDE、ArcGis Engine、ArcGis Desktop的授权配置
- CentOS 7 安装harbor1.5.0
- 实战生产环境:kubeadmin安装1.13.3最新版k8s集群教程
- 俄罗斯计算机科学留学,中南大学计算机科学与技术、俄罗斯硕士留学有没有寒暑假班?...
- Python_面试题
- JAVA学习笔记--类型转换(父类子类 Object 基本类型 String) 拆装箱 包装类
- 阿里云原生张羽辰:服务发现技术选型那点事儿
- centos7部署posgresql和kong总结
- protobuf-3.0 win环境编译
- 杭电ACM求平均成绩
- C语言深入浅出可变参数函数的使用技巧(转)
- 计算机组成原理——硬布线控制器设计(1)
- 零基础简单易用的EmberJS框架
- 关于谷歌浏览器62版本之后引用video.js不能自动播放的问题(Cross-origin plugin content from http://vjs.zencdn.net/swf/5.0.0-rc
- Aho-Corasick 算法
- 设计模式之禅(一)——六大设计原则
- Android常用库和插件避免重复造轮子(持续更新)
- 分享网页游戏后台开发技术经验
- Springboot整合telemetry gPRC
- Arxiv 2022|NoPe-NeRF:优化无位姿先验的神经辐射场