杂篇-之裸眼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模型,变为(人眼看到)平 ...
随机推荐
- 云服务器部署scrapyd爬虫
Scrapyd部署爬虫项目 GitHub:https://github.com/scrapy/scrapyd API 文档:http://scrapyd.readthedocs.io/en/stabl ...
- thinkphp之无限分类
namespace Home\Controller; use Home\Controller; class CategoryController extends Controller { //无限分类 ...
- leetcode 43:construct-binary-tree-from-inorder
题目描述 给出一棵树的中序遍历和后序遍历,请构造这颗二叉树 注意: 保证给出的树中不存在重复的节点 Given inorder and postorder traversal of a tree, c ...
- TP3 根据时间区间搜索的方法
/** * 时间段查询条件获取 * @param string $star 获取开始时间的字段名 * @param string $end 获取结束时间的字段名 * @param string $zd ...
- 洛谷日报 & 原来博客(转载)
震惊,新的功能:可以按Ctrl + F 进行关键字查询. \(update\) on 10.26:把这两个月的日报也加入进去了,并且修复了几个错误. 本文会把小编用过的博客和比较好的博客放在这里. 可 ...
- 线程队列分享ppt
- 基于docker部署ceph以及修改docker image
前言 容器和ceph的结合已经在一些生产环境当中做了尝试,容器的好处就是对运行环境的一个封装,传统的方式是集成为ISO,这个需要一定的维护量,而容器的相关操作会简单很多,也就有了一些尝试,个人觉得如果 ...
- Oracle 集合类型
集合类型 1. 使用条件: a. 单行单列的数据,使用标量变量 . b. 单行多列数据,使用记录 [ 详细讲解请见: 点击打开链接 ] c. 单列多行数据,使用集合 *集合:类似于编程语言中 ...
- Python_科学计算库
说明:若没有训练级联表,则需要相关级联表才能实现功能 文字识别 # -*- coding: utf-8 -*- """ 简介:用样本训练数据,再识别 "&quo ...
- matlab 数组操作作业
写出下列语句的计算结果及作用 1.A= [2 5 7 3 1 3 4 2]; 创建二维数组并赋值 2.[rows, cols] = size(A); 把A的尺寸赋值给数组,rows为行, ...