高大上~的裸眼3D原理与制作方法

813b37f90d4820689f55ca29921a5683.png

上图是网上搜索的,侵删~

前言:

        有段时间朋友圈里被刷了一波“裸(wei)眼(ya)3D"视频,看过的人都说好!神!奇。 后来也有些人问我这东西能不能做…… 我一时不知道如何回答,原因之一是觉得这玩意就是一段变形三维视频,跟我特么互动媒体行业有毛关系? 觉得这种吃力不讨好价格又不贵的东西,还藏着一些很难跟客户扯明白的东西,验货没有标准。 再后来又有人问我可以做这类裸眼3D互动嘛。这提到互动我就感觉找不到反驳的理由了,直接回复:可以! 客户提需求,出报价。 留下一个报价问题, 因为很可能因为价格问题客户就会不去再想做不做了。还有另一个硬伤,我在最后再写出来,大家一起探讨对不对~ 

 

原理: 简单得看就和街头地面上画透视画一样! (我是很佩服直接手画反透视的人)  ,所谓裸眼3D视频不过是在这基础上做成动态画而已。那么重点来了,如何制作出裸眼3D效果呢? 就是如何把一个透视的画面给还原到显示屏上的过程。

好了, 以下制作示意教程需要有三维软件基础和unity基础。

一、 先来制作一个简单的场景。PS:我只会3dmax~  , 一个带点圆角的半开方式空间(直角的应该处理更方便点)

watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L215dGhs,size_16,color_FFFFFF,t_70

watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L215dGhs,size_16,color_FFFFFF,t_70

简单示意,时间有限,我就没用空间内部的物体了,不影响结果~

二、挑个好角度,给个相机。 这相机位置要根据裸眼3D最终展示的位置与观察角度设置。比如是放在一个很高的楼上一角的屏,那得估算一下人视点到显示屏的仰视角度去设置相机。 我这里做一个平视侧方45度左右的相机。记

watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L215dGhs,size_16,color_FFFFFF,t_70

然后打上灯光材质等,调整到你喜欢的样子。渲染一张图,(,这里出图只是为了后面对位置。最终出图:如果只是做视频动画不需要在unity里做,就在三维里渲染,分辨率根据最终画面尺寸做相应调整)

watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L215dGhs,size_16,color_FFFFFF,t_70

 

watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L215dGhs,size_16,color_FFFFFF,t_70

 

三、重点来了!也是最费时间的,因为这个图的好坏影响到最终显示的效果,可能反复测试多次得到你客户满意的样子~

         1. 新建一个plane , 长宽比例你就调整成你上一张图的宽高比例吧。把刚才渲染输出的图保存了,给这plane 做贴图。调整UVW Map,刚好铺满。

watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L215dGhs,size_16,color_FFFFFF,t_70

 

        2. 给这个plane正面打个相机。调整相机显示范围刚好看全这个平面。 

watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L215dGhs,size_16,color_FFFFFF,t_70

        3. 最考水平的步骤来了,自己不会,找个模型高手,给你做网络编辑也行。我是用了一串FFD处理的,目的就是把渲染的图拉伸到刚好铺满相机视图, 因为这块内容就是你最终要展示在裸眼3D的大屏上的内容。(是不是突然觉得看不下去了?太简单了)

watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L215dGhs,size_16,color_FFFFFF,t_70

 

四、到这里,其实只做动画效果的,素材已经好了。啥? 还不明白。  那我整理一下:

        1. 用第二步里相机做渲染窗口,把你在开放空间里做好的动画效果,渲染出动画序列。

        2. 然后用第三步里建的相机做渲染窗口, 把上一步渲染的动画序列导入做成 plane的动态贴图, 再渲染一次动画序列 。 然后再把动画序列放在后期软件里调色加配音,输出视频就完工了。

 

        尴尬,没有钱,没有设备怎么测试啊。。。

好吧,那就重新在max里做一个屏啊, 下图右下新加的片就是屏~ 。 同理,把变形拉伸后的plane用第二个相机(上图左下图相机视角)渲染出图保存,再给回这个屏做材质。

watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L215dGhs,size_16,color_FFFFFF,t_70

再用意念力把它给掰弯。

watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L215dGhs,size_16,color_FFFFFF,t_70

 

然后再找个好位置摆好姿势如下:

watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L215dGhs,size_16,color_FFFFFF,t_70

是不是很…… 放错图了,再来

watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L215dGhs,size_16,color_FFFFFF,t_70

 

五、那么如何做互动的裸眼3D呢? PS: 三维互动我用 Unity~ , 简单。

        要点: 三维做好场景导入和 相机渲染纹理做贴图。

        1.把max里做好的场景 ,导出成fbx文件 , 选择几个用的模型以及两个相机(如果你愿意折腾,也可以在unity里再新建camera~)

        

watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L215dGhs,size_16,color_FFFFFF,t_70

        2.新建一个unity 3d 场景文件, 把上步导出的模型导入进来。

watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L215dGhs,size_16,color_FFFFFF,t_70

        3.调整好基本灯光,烘焙。然后新建一个渲染纹理,用来保存第一个相机的视角做贴图。

watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L215dGhs,size_16,color_FFFFFF,t_70

watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L215dGhs,size_16,color_FFFFFF,t_70

        4. 选择第一个相机(怪我咯,没给相机取名字,就把最早出现的叫第一个相机吧~),指定目标纹理,选择刚才新建的渲染纹理。纹理名字你自己取啥记好~ 

watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L215dGhs,size_16,color_FFFFFF,t_70

        5. 然后! 选择左边变形后的平面,给它个新的材质,也就是把刚才新建的渲染纹理给它玩,为了自发光,不需要光再照了,给如下:

watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L215dGhs,size_16,color_FFFFFF,t_70

watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L215dGhs,size_16,color_FFFFFF,t_70

        6. 好了,到这时候,上图左下的相机(第二个相机吧),做成主相机,点play就是你要的互动裸眼3D了。   没钱,没测试设备,于是照刚才的方法再造一个显示屏试咯。 同理,新建一个渲染纹理,把第二个相机的视图,目标纹理输给它, 再把渲染纹理指定给新屏看效果。

watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L215dGhs,size_16,color_FFFFFF,t_70

 

watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L215dGhs,size_16,color_FFFFFF,t_70

太单调了,我就加了个 box动画。

20210710173720268.gif

 

好了。 裸眼3D互动就讲完了。 。 。 

啥? 没有说互动吗? 

好吧,互动是要是去触摸吗?  这是不现实的。 这种东西基本上是不可能上去摸的,不是给不给钱的问题,因为你走过去看太清楚了你就不想摸了。  这类要互动的话,只有通过另一台设备, 电脑,平板啥,通过 udp 等指令控制内容了。 具体怎么互动,就看个人的思维了,当然还有甲方的钱有多少 。

-------------------------------------------------------------------------------------------

硬伤:

与“软伤”相对,涉及范围小于软伤,可表现于明显之处,属于有形伤害。
释义:1.在文学作品中指一些常识性错误。
2.非软件性伤害,一般就是指人为损坏或者碰撞等发生的硬件损坏。
3.科幻小说中的技术设定上无法自我圆满解释或者与当前科学技术理论有冲突矛盾的描述。
4.某人或某组织存在的一些无法改变的软肋,通常作用在人体上,比如:智商是硬伤、身高是硬伤、相貌是硬伤、残疾是硬伤等,这种伤害唯有从根本上解决问题,其才会消失,不然只是尽量弥补而已。

 

所谓的裸眼3D , 其实就是早几年的墙体秀,水幕的变种, 一种伪3D。 专门用来满(qi)足(pian)财大气粗的老板们。  硬伤就是只有一个最佳观看点,这个点就是相机所在的位置。换其它角度就TM啥也不是!  另外通常做这一套show, 成本大部分花在了硬件设备上…… (完)

 

ps:本文测试软件是 3dsmax ,unity。抱歉,那些问模型文件的哥们,当初疫情宅老家写的,没发帖经验,找源文件有些困难。

 

  • 20
    点赞
  • 59
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 4
    评论
### 回答1: 软件技术架构可以描述为整个软件系统的结构和组织方式,包括了各个组件之间的关系、数据流、通信方式、安全性等方面。它是一种高层次的设计,能够指导软件开发的实现和演化,并能够支持软件系统的可靠性、可扩展性、可维护性和安全性等特性。在实际开发中,软件架构通常由多个层次构成,涉及到各种技术和工具,包括设计模式、分布式系统、数据库管理等。通过合理的软件架构设计,可以提高软件系统的性能和质量,满足用户需求,并且有助于降低开发成本和风险。 ### 回答2: 软件技术架构高大上描述是指一种独特而先进的软件设计框架,它具有许多颠覆性的特点和功能,使其在当今快速发展的技术领域中备受瞩目。此类架构具有高度的可扩展性、灵活性和可重用性,能够满足用户需求,提供良好的用户体验。 首先,软件技术架构高大上描述具有模块化的特点,将软件系统划分为多个独立的模块,每个模块都负责处理特定的功能或任务。这种模块化的结构使得系统更易于维护和扩展,减少了耦合度,提高了系统的灵活性。 其次,高大上描述的软件技术架构采用了微服务架构,将系统拆分为多个小型的独立服务,每个服务都可以单独开发、测试和部署。微服务架构的优势在于可以提高系统的可伸缩性和容错性,降低系统的复杂性,提高开发效率。 另外,软件技术架构高大上描述还充分利用了云计算和大数据技术。通过将系统部署在云平台上,可以实现资源的灵活调度和动态扩展,提高系统的可用性和弹性。同时,通过应用大数据技术,可以对海量的数据进行处理和分析,为系统提供更准确的决策支持。 最重要的是,软件技术架构高大上描述注重安全性和可靠性。采用领先的安全技术和加密算法,保护用户的数据和隐私安全。同时,通过备份和冗余机制,确保系统的高可用性和稳定性,减少系统故障和停机时间。 总之,软件技术架构高大上描述是一种创新性的设计理念,它提供了一种全新的软件开发和部署方式,使得软件系统更加高效、可靠和灵活。这种架构适应了当今快速变化的技术环境,为企业和用户带来了更好的体验和效益。 ### 回答3: 软件技术架构是指构建和设计软件系统的一种方法论,它涉及到软件系统的整体结构、组件和模块之间的关系,以及它们在不同层次上的交互和互动方式。高大上的描述意味着它具有以下几个特点和优势。 首先,软件技术架构高大上是基于先进的技术和最佳的实践经验构建的。它能够综合运用各种技术和方法,包括面向对象编程、设计模式、分布式计算、服务化架构等,以实现系统的高效、可靠和可维护等特性。 其次,软件技术架构高大上能够实现系统的高可扩展性。它能够充分利用分布式架构和模块化设计原则,通过拆分系统为多个独立的组件和模块,使得系统能够灵活扩展,不受单一组件性能瓶颈的限制。 再次,软件技术架构高大上能够提供系统的高性能和可用性。通过合理的设计和优化,它可以最大程度地降低系统的响应时间和资源占用,同时保证系统的稳定性和可靠性,从而提供出色的用户体验。 此外,软件技术架构高大上还能够实现系统的高灵活性和可维护性。通过松耦合的架构设计,它可以随时适应变化的需求并支持系统的快速迭代和升级。同时,它还能够提供清晰的模块和接口定义,使得系统的维护和修改变得更加容易和安全。 总的来说,软件技术架构高大上是一种先进和优秀的设计思想,能够满足现代软件系统在性能、可用性、可扩展性和可维护性等方面的需求,并提供出色的用户体验。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

myth long

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值