unity用oculus播放全景视频

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/shenmifangke/article/details/50637074

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如下(注意不需要自己展开)



展开阅读全文

没有更多推荐了,返回首页