我是用daydream平台测试的,目前别的平台还没有测试

大概思路是playerSettings 中设置勾选Virtual Reality Supported 后选着对应的平台这里选的是Daydream

然后在转换平台时用下面的方法加载到对应的平台,

UnityEngine.XR.XRSettings.LoadDeviceByName("None")

UnityEngine.XR.XRSettings.LoadDeviceByName("daydream");

并设置UnityEngine.XR.XRSettings.enabled = true;就可以切换到vr模式了

在同一个场景中增加两个MainCamera,

下面把脚本附上

using System.Collections;
using System.Collections.Generic;
using UnityEngine;
using UnityEngine.EventSystems;
using UnityEngine.XR;

public class Manger3dTo2d : MonoBehaviour
{
    private bool is3d = true;

public GameObject canvas;

public GameObject mainCamare;

public GameObject camare;

//public GameObject evenSystem;

public TextMesh tm;

//public GameObject hand;
// Use this for initialization
void Start ()
{
    tm.text = XRSettings.loadedDeviceName;
    Debug.Log(XRSettings.loadedDeviceName + "333");
    is3d = true;
canvas.SetActive(false);
    camare.SetActive(false);
}

// Update is called once per frame
void Update () {
        if ((GvrControllerInput.AppButtonUp || Input.GetKeyUp(KeyCode.A)) && is3d)
    {
        canvas.SetActive(true);
        is3d = false;
            
        //UnityEngine.XR.XRSettings.enabled = false;
        XRSettings.LoadDeviceByName("None");
            Debug.Log(XRSettings.loadedDeviceName);
        tm.text = XRSettings.loadedDeviceName;
        //evenSystem.GetComponent<GvrPointerInputModule>().enabled = false;
        //evenSystem.GetComponent<StandaloneInputModule>().enabled = true;
            mainCamare.SetActive(false);
            camare.SetActive(true);
            //hand.SetActive(false);
    }
        if (GvrControllerInput.ClickButtonDown || Input.GetKeyUp(KeyCode.B))
        {
            To3d();
        }
}

public void To3d()
    {        
        StartCoroutine(VrOn());    
    }

IEnumerator VrOn()
    {
        XRSettings.LoadDeviceByName("daydream");
        Debug.Log(XRSettings.loadedDeviceName + "1111");
#if UNITY_EDITOR

#endif
#if UNITY_ANDROID
        yield return new WaitUntil(() => XRSettings.loadedDeviceName == "daydream");//到这一步pc不能测试了
#endif
        Debug.Log(XRSettings.loadedDeviceName + "222");
        yield return null;
        XRSettings.enabled = true;
        Debug.Log(XRSettings.loadedDeviceName);
        tm.text = XRSettings.loadedDeviceName;
        canvas.SetActive(false);
        is3d = true;
        mainCamare.SetActive(true);
        camare.SetActive(false);
        //hand.SetActive(true);
        //evenSystem.GetComponent<GvrPointerInputModule>().enabled = true;
        //evenSystem.GetComponent<StandaloneInputModule>().enabled = false;
    }

public void ButtonClick()
    {
        Debug.Log("这是2d场景");
    }

}

Unity 3d转2d再转3d相关推荐

  1. Unity 2D图片的3D效果(1)——阴影

    项目为方便编辑地图,使用的是Unity自带的Tilemap功能.因为使用的是俯视视角,拼好第一个地图后发现2D图片展现的效果太平了,地面和障碍物很难分辨.所以才有了"把2d图片展现出3d效果 ...

  2. Unity 相机 2D视角 与3D 视角 自由动态 切换

    在游戏运行的时候,往往需要 在 正交Orthographic (无消失点投影) 与正交Orthographic (无消失点投影) 两个视角中来回转化. 以达到 不同的 2D 与 3D 视角. So! ...

  3. unity中的2D虚拟摇杆和3D虚拟摇杆

    源代码链接https://github.com/hiramtan/HiJoystick_unity 如何使用 可以从此链接下载最新的unity package: 完成功能 2D虚拟摇杆 3D虚拟摇杆 ...

  4. [Unity官方文档翻译]2D or 3D Projects Unity中2D和3D项目的区别

    2D or 3D Projects 2D或3D项目 Unity is equally suited to creating both 2D and 3D games. But what's the d ...

  5. Unity学习笔记(8) Unity残影效果整理,3D、2D、通用方案

    Unity做残影效果是个不难的工作. 但是一些细节会对使用方法产生限制,这里整理一下各种情况下推荐的残影效果实现方案 1.3D网格 (高性能) 2.2D人物 (非骨骼动画) (高性能) 3.其它场景 ...

  6. unity3d 大地图接壤_鹰角网络的曲折开发前行之路-《明日方舟》中3D和2D结合方案...

    在本年中国Unity线上手艺大会分享上,来自鹰角收集的海猫与黄一峰分享了初创团队的弯曲斥地前行之路-<明日方舟>中3D和2D连系方案.个中海猫以游戏设计的视角,黄一峰以手艺的视角来配合剖析 ...

  7. unity3D如何实现2D sprite,3D物品和UI图片的拖拽效果

    [Unity学习笔记] (一)如何实现2d sprite和3D物品的拖拽效果 1.调节camera >- Projection到Orthographic模式 Unity camera proje ...

  8. 泰坦尼克号是怎么从2D转成3D的?

    并不是所有人都喜欢 3D 电影,很多人认为传统电影转换为 3D 电影的效果,却经常粗制滥造令人失望.詹姆斯·卡梅隆也是这么认为的,但是他决心打破这个偏见,花费了 1800 万美元将原本已是登峰造极的泰 ...

  9. 用单张2D图像重构3D场景

    用单张2D图像重构3D场景 zouxy09@qq.com http://blog.csdn.net/zouxy09 之前看到Stanford大学的机器学习公开课程的lecture01中,Andrew ...

最新文章

  1. SDN架构的本质属性—Vecloud
  2. 网络传输为什么要序列化_企业为什么要选择网络营销外包
  3. wdcp后台重启服务器后mysql打不开
  4. 李宏毅机器学习课程---2、Regression - Case Study
  5. 数据库流行度8月排行榜:Oracle 飙升 和 PostgreSQL 绝尘领跑第二梯队
  6. 95-910-330-源码-FlinkSQL-Calcite-Flink结合Calcite
  7. tcp下载窗口太小的问题_面试官:换人!他连 TCP 这几个参数都不懂(二)
  8. 华为asph是什么型号_华为手机各系列有什么区别 华为手机各系列介绍
  9. php ajax jquery瀑布流,jQuery瀑布流插件——jQuery.Waterfall
  10. 【串讲总结】涵盖ML/DL/NLP/推荐/风控/数学等知识点汇总列表
  11. python蟒蛇画法
  12. uniapp绘制分享海报
  13. 【元胞自动机】元胞自动机多车道信号交叉口仿真【含Matlab源码 818期】
  14. e2eSoft VCam 虚拟摄像头
  15. 数学和数学家的故事 zz
  16. 线下商店如何转型做新零售 怎么样顺利开展新零售模式?
  17. 树立个人品牌:让名企hr们主动来找你
  18. 5.21下周黄金走势分析及开盘独家交易策略
  19. Linux 程序包管理-YUM
  20. psd 文件用什么打开

热门文章

  1. 索爱R5录音笔性能评测介绍
  2. 富士康需要感恩苹果吗?
  3. 任意输入n个整数,分别统计奇数的和、奇数的个数、偶数的和、偶数的个数。
  4. Attentional Feature Fusion 注意力特征融合
  5. 双十一结束第一天,这是阿里新零售的AI想象力给买家带来的意外
  6. Spring的生态圈、Spring全家桶
  7. 良心安利道路 路面ps后期素材素材网站
  8. 自我学习汇总:SpringBoot篇
  9. 软件公司,销售管理门道(二)情报收集
  10. 银河麒麟Kylin_s10_sp2安装Oracle11g(FS)(亲测有效)