基于Unity的VR全景视频(一)
来源:互联网 发布:ctp数据 编辑:程序博客网 时间:2024/05/29 18:43
实现全景视频播放主要包括两种方式:1、以暴风魔镜等移动端为载体的开发 2、以HTC vive等PC端为载体的开发。这是因为Unity自身的MovieTexture仅可以支持PC端,而在移动端只能利用类似于EasyMovieTure的插件来开发,但两者的底层技术是一样的,都是将视频解析成一帧一帧的图像作为Texture贴在Material赋给球形GameObject。
本篇讲述利用Unity自身的MovieTexture制作全景视频,首先Unity并不能直接加载.mp4 , .mov 格式的视频文件,官方文档给出的方式是将需要视频放在Quickime上播放一遍,其实本质就是将.mp4 , .mov 等视频格式转成.ogv,Unity才能直接识别。所以可以利用格式转化工具Theora Converter .NET、ffmpeg等直接将视频转成.ogv。
其中视频有三个参数需要注意,码率、帧率、分辨率。因为这三者是关系到最后视频贴图贴在材质上的播放的清晰度和流畅度的问题。毕竟,在VR设备中,刷新帧率至少要大于60帧才不会让人觉得眩晕,但视频的清晰度直接影响了刷新率的大小,所以如何在两者中找到一个平衡点。
将贴图贴在球形GameObject里面的shander:
Shader "Unlit/DoubleSided" { Properties { _Color("Main Color", Color) = (1,1,1,1) _MainTex("Texture", 2D) = "white" {} } SubShader { //Ambient pass Pass { Name "BASE" Tags {"LightMode" = "Always" /* Upgrade NOTE: changed from PixelOrNone to Always */} Color[_PPLAmbient] SetTexture[_BumpMap] { constantColor(.5,.5,.5) combine constant lerp(texture) previous } SetTexture[_MainTex] { constantColor[_Color] Combine texture * previous DOUBLE, texture *constant } } //Vertex lights Pass{ Name "BASE" Tags {"LightMode" = "Vertex"} Material { Diffuse[_Color] Emission[_PPLAmbient] Shininess[_Shininess] Specular[_SpecColor] } SeparateSpecular On Lighting On cull off SetTexture[_BumpMap] { constantColor(.5,.5,.5) combine constant lerp(texture) previous } SetTexture[_MainTex] { Combine texture *previous DOUBLE, texture *primary } } } FallBack "Diffuse", 1 }
ffmpeg用法:
ffmpeg - i “文件路径/文件名.格式” -s 3000x1500(分辨率) -r 25 (帧率) -b:v 8782(码率,默认单位为Bit/s) "输出文件路径/输出文件名.格式"
0 0
- 基于Unity的VR全景视频(一)
- Unity编程笔录--实现360全景视频和VR视频
- 基于vlc的unity3d vr视频播放器开发,360度全景视频
- Unity VR——全景视频播放方案
- Unity VR——全景视频播放方案
- Android VR Player(全景视频播放器) [6]:视频列表的实现-本地视频
- Android VR Player(全景视频播放器) [7]:视频列表的实现-网络视频
- Unity VR&AR Unity播放全景视频及优化极点变形twist问题
- Android VR Player(全景视频播放器) [3]:底部导航的实现
- Android VR Player(全景视频播放器) [4]:侧滑菜单的实现
- Android VR Player(全景视频播放器) [5]:简单的欢迎界面
- openGL ES进阶教程(五)制作一个简单的VR播放器,播放全景视频
- 老司机做VR视频,需要什么样的全景相机?
- arnold渲染vr视频全景视频
- Android 全景视频播放器(VR视频播放器探索)
- Android 全景视频播放器(VR视频播放器探索二)
- Android VR Player(全景视频播放器) [8]:MediaPlayer+SurfaceView 视频播放
- Unity利用CardBoardVR制作(二)一个简易的全景相册和视频
- Android线程学习笔记
- usb驱动开发
- VS2015使用Sublime Text字体主题
- ecshop在商品列表页里面写入属性值,和排序
- 187 git stash
- 基于Unity的VR全景视频(一)
- java HashMap 基本用法
- CentOS Install Docker
- CCF认证201604-2 俄罗斯方块
- jdbc笔记
- Android关于callback的一些总结
- 打印输入中单词长度的直方图(垂直方向)
- Makefile之学习总结(2)--- Makefile (v1.0)
- 从苏宁电器到卡巴斯基第26篇:难忘的三年硕士时光 IV