杂篇-之裸眼3D渲染相机及画面矫正
主题公园类,或大型广场led屏幕,直角幕,三维影片如何制作,和最终画面如何矫正还原。
前两天,一朋友做的项目,大概就是一个柱状的led屏幕,可能是立在广场街角等处,如果这样子,那个柱状体的有颜色的两面就是led屏幕,要做成裸眼3d效果。

那,要解决两个事儿,一个是渲染相机怎么打,二个就是最终画面得是什么样,才能拿到正常的播放器去播放。
一、渲染相机
渲染相机当然是要模拟人的视角,于是就在人的正常高度看向led屏幕,打一个渲染相机,渲染相机的透视和角度,要尽量涵盖整个屏幕,避免画面浪费,

当然还可以再窄一点,靠近边缘即可,接下来就制作你的cg场景,角色活动范围当然就是这个视窗里面,而且是这box盒子里面,裸眼的效果想要强度多大,自行调节相机透视,做冲镜或出境效果,根据情况去做layout,然后去调节。
这里就出一张渲染画面,背景不用理。然后接下来就是去弄出,最终在播放器里面播放的画面,画面矫正。

二、画面矫正
这里画面矫正,我是用nuke去做的,也可直接在houdini里面去做,我觉得nuke很方便,所以就nuke了,而且还可随时去调整最终画面效果之类的。
播放器里最终播放的,肯定是一个二维的视频,除非自己开发的播放器自带畸形画面矫正功能,那就另说。所以这个带透视效果的肯定是不行的,所以我们就得模拟还原现场的视角和屏幕,
1、在houdini中导出你的屏幕,也就是两块面片,建议分开导,导fbx格式,记得给屏幕展好uv,这里很重要,铺满整个uv象限,后面需要用到的。

2、导出渲染相机,也导fbx,一般情况不用去导abc,除非你有动画,那就是运动的渲染相机,那你是在做黑暗乘骑了,
3、在nuke中导入你刚才导出的相机和屏幕模型,在nuke中就还原了三维场景。

4、用nuke的三维投射,把渲染画面反投回屏幕当中

5、然后就是把反投到屏幕上的画面给弄出来就行了,就是你想要的画面,这里就用 ScanlineRender 这个节点,然后把projection mode 改成uv模式就可以了,然后自己调整一下,把两半屏幕画面拼接到一起,
下图就是你要拿到播放器里面去播放的画面。

相应的测试文件 https://i.cnblogs.com/files 在这里
杂篇-之裸眼3D渲染相机及画面矫正的更多相关文章
- 裸眼3D全攻略3:拍摄3D—瞳距、镜距、视角偏转与空间感
http://sd89.blog.163.com/blog/static/356041322014112532958728/ 3D图片的拍摄,与平面有着全新的不同要求,那就是空间感的表现. 简单来说, ...
- 裸眼3D立体显示技术原理详解
众所周知,现实世界是一个三维空间,除去时间这一维度,现实世界是由长度.宽度和高度三个维度组成,我们每天就生活在这个三维世界中,而现有的显示设备大多数都只能显示二维信息,并不能带给人真实的三维感觉.为了 ...
- 裸眼 3D 技术是什么原理?
https://www.zhihu.com/question/19553745 作者:杨英东链接:https://www.zhihu.com/question/19553745/answer/1227 ...
- 自制裸眼3D图【推荐】
Welcome to the World of Hidden 3D Stereograms.欢迎进入隐身3D图的世界! 网址:http://hidden-3d.com 裸眼立体图是什么? 立体图是立体 ...
- 这才是真正的裸眼3D!超级震撼!!
大家有没认为有意思啦,反正俺是被震撼到了. 好奇异-- ! " src="http://www.yixieshi.com/uploads/allimg/141116/1446431 ...
- 初探Stage3D(一) 3D渲染基础原理
关于本文 本文主要想介绍一下3D渲染的基本流程,及怎样把一个三角形(0,1,0),(1,0,1),(0,0,1)最终渲染到屏幕上来.文章的目的是对3D渲染流程做一个简单的介绍,其中不涉及任何语言的AP ...
- 基于 HTML5 Canvas 的 3D 渲染引擎构建生产管控系统
前言 大家好,老郑我又回来了.这一期为大家带来一个非常好玩的 demo,我们制作一套自己的 3D 管道控制系统,运用了( http://www.hightopo.com )HT 的 Graph3dVi ...
- 基于 HTML5 Canvas 的 3D 渲染引擎构建机架式服务器
前言 今天找到了 HT 的官网里的 Demo 网站( http://www.hightopo.com/demos/index.html ),看的我眼花缭乱,目不暇接. 而且 HT 的用户手册,将例子和 ...
- 3D渲染集群,你了解多少?
摘要:渲染是批处理运行模式,那能不能使用Docker容器技术,做大规模的渲染集群呢? 我们先说说3D渲染涉及哪些领域: 1.什么是3D渲染 简单粗暴的讲:就是将虚拟世界里的3D模型,变为(人眼看到)平 ...
随机推荐
- HP UNIX 查看 修改IP地址
# 查看所有IP地址h01_root[/]# lanscan Hardware Station Crd Hdw Net-Interface NM MAC HP-DLPI DLPI Path Addre ...
- 【CF1445D】Divide and Sum 题解
题目链接 题意简介 将一个长度为 2n 的数列平均分为两个子数列 p 和 q 后,p 按从小到大排序,q 按从大到小排序. 排序后,记 p 为 \(\{x_i\}\) ,q 为 \(\{y_i\}\) ...
- Servlet学习笔记(四)
目录 Servlet学习笔记(四) 一.会话技术Cookie.session 1. 什么是会话技术? 2. 会话技术有什么用? 3. Cookie 3.1 什么是Cookie? 3.2 使用Cooki ...
- 关于Java中泛型、反射和注解的扫盲篇
泛型 泛型概念 泛型是在JDK1.5之后引入的,旨在让我们写出更加通用化,更加灵活的代码.通用化的手段在于让数据类型变得参数化,定义泛型时,对应的数据类型是不确定的,泛型方法被调用时,会指定具体类 ...
- Inception系列之Inception_v1
目前,神经网络模型为了得到更好的效果,越来越深和越来越宽的模型被提出.然而这样会带来以下几个问题: 1)参数量,计算量越来越大,在有限内存和算力的设备上,其应用也就越难以落地. 2)对于一些数据集较少 ...
- python详细图像仿射变换讲解
仿射变换简介 什么是放射变换 图像上的仿射变换, 其实就是图片中的一个像素点,通过某种变换,移动到另外一个地方. 从数学上来讲, 就是一个向量空间进行一次线形变换并加上平移向量, 从而变换到另外一个向 ...
- JS基础算法题(二)
1.1 数组去重的五种方法 数组去重:将数组中重复的元素去掉 JS数组没有删除具体元素的删除(只能删掉值,删不掉元素的索引),可以使用另外一个结构来进行存储 新数组 新对象 JS数组虽然本质可以删除第 ...
- 内网安装python第三方包
内网快速安装python第三方包 内网安装包是一个很麻烦的问题,很多时候,内网的源会出现问题,导致无法安装. 这里给出一种快速在内网中安装第三方包,无需使用内网的源. 外网操作 1.根据开发环境下的所 ...
- C语言复习系列-转义字符
C语言复习系列-转义字符 准备学习stm32单片机,感觉需要复习一下C语言,翻看了菜鸟教程,竟然有不少地方看不懂,真让人汗颜······ 转义字符大部分语言里面都有,至少我学过的里面都有,在这些语言中 ...
- docker搭建渗透环境并进行渗透测试
目录 docker简介 docker的安装 docker.centos7.windows10(博主宿主机系统)之间相互通信 -docker容器中下载weblogic12c(可以略过不看) docker ...