unity用oculus播放全景视频

来源:互联网 发布:linux系统ip地址设置 编辑:程序博客网 时间:2024/04/29 00:26

unity oculus的例子应该很多,可以网上找找

基本上就是控制摄像机而已


后来就想能不能播放全景视频,因为网上找一些全景视频播放器能和oculus用的很少,大多数还是DK1的

DK2能用的就更少了,还得看支持的版本,不然也没法放,所以既然在unity里调用很简单,干脆自己做一个


视频播放代码,找个ulit,texture

using UnityEngine;using System.Collections;public class NewBehaviourScript : MonoBehaviour {public Material aaa;void Start () {MovieTexture movie = (MovieTexture)aaa.mainTexture;movie.Play();}}


本来想使用unity的skybox的,无奈会造成下面的效果


会被拉伸

正常能播放没拉伸的只有四分之一球面,应该有别的方法

但是恰好想到了另外一种,所以这种方法pass,有空的可以去研究下




后来就想到了能不能放个球里,发现果然可以,和全景播放器里看到的一样的

只是需要写个shader,让背面可见就行了

Shader "全景Shader"  {Properties  {_MainTex("基本纹理",2D)="White"}   SubShader {Pass{Cull front SetTexture[_MainTex]{combine texture}}}}  

然后旋转摄像机就能看全景视频了

后面会放上工程,因为视频比较大,所以用图片替代了,需要的可以在材质上替换视频

如果需要在内部翻转

可以offset -1 1 Tiling 1 0

下载地址

http://download.csdn.net/detail/shenmifangke/9427961

关于uv问题

左边是unity自带球体的效果,右边是maya中导出的自带效果(可以看出自带uv效果没有maya里下面的uv效果好)

另外maya中uv如下(注意不需要自己展开)



0 0