Unity 3d转2d再转3d
我是用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相关推荐
- Unity 2D图片的3D效果(1)——阴影
项目为方便编辑地图,使用的是Unity自带的Tilemap功能.因为使用的是俯视视角,拼好第一个地图后发现2D图片展现的效果太平了,地面和障碍物很难分辨.所以才有了"把2d图片展现出3d效果 ...
- Unity 相机 2D视角 与3D 视角 自由动态 切换
在游戏运行的时候,往往需要 在 正交Orthographic (无消失点投影) 与正交Orthographic (无消失点投影) 两个视角中来回转化. 以达到 不同的 2D 与 3D 视角. So! ...
- unity中的2D虚拟摇杆和3D虚拟摇杆
源代码链接https://github.com/hiramtan/HiJoystick_unity 如何使用 可以从此链接下载最新的unity package: 完成功能 2D虚拟摇杆 3D虚拟摇杆 ...
- [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 ...
- Unity学习笔记(8) Unity残影效果整理,3D、2D、通用方案
Unity做残影效果是个不难的工作. 但是一些细节会对使用方法产生限制,这里整理一下各种情况下推荐的残影效果实现方案 1.3D网格 (高性能) 2.2D人物 (非骨骼动画) (高性能) 3.其它场景 ...
- unity3d 大地图接壤_鹰角网络的曲折开发前行之路-《明日方舟》中3D和2D结合方案...
在本年中国Unity线上手艺大会分享上,来自鹰角收集的海猫与黄一峰分享了初创团队的弯曲斥地前行之路-<明日方舟>中3D和2D连系方案.个中海猫以游戏设计的视角,黄一峰以手艺的视角来配合剖析 ...
- unity3D如何实现2D sprite,3D物品和UI图片的拖拽效果
[Unity学习笔记] (一)如何实现2d sprite和3D物品的拖拽效果 1.调节camera >- Projection到Orthographic模式 Unity camera proje ...
- 泰坦尼克号是怎么从2D转成3D的?
并不是所有人都喜欢 3D 电影,很多人认为传统电影转换为 3D 电影的效果,却经常粗制滥造令人失望.詹姆斯·卡梅隆也是这么认为的,但是他决心打破这个偏见,花费了 1800 万美元将原本已是登峰造极的泰 ...
- 用单张2D图像重构3D场景
用单张2D图像重构3D场景 zouxy09@qq.com http://blog.csdn.net/zouxy09 之前看到Stanford大学的机器学习公开课程的lecture01中,Andrew ...
最新文章
- SDN架构的本质属性—Vecloud
- 网络传输为什么要序列化_企业为什么要选择网络营销外包
- wdcp后台重启服务器后mysql打不开
- 李宏毅机器学习课程---2、Regression - Case Study
- 数据库流行度8月排行榜:Oracle 飙升 和 PostgreSQL 绝尘领跑第二梯队
- 95-910-330-源码-FlinkSQL-Calcite-Flink结合Calcite
- tcp下载窗口太小的问题_面试官:换人!他连 TCP 这几个参数都不懂(二)
- 华为asph是什么型号_华为手机各系列有什么区别 华为手机各系列介绍
- php ajax jquery瀑布流,jQuery瀑布流插件——jQuery.Waterfall
- 【串讲总结】涵盖ML/DL/NLP/推荐/风控/数学等知识点汇总列表
- python蟒蛇画法
- uniapp绘制分享海报
- 【元胞自动机】元胞自动机多车道信号交叉口仿真【含Matlab源码 818期】
- e2eSoft VCam 虚拟摄像头
- 数学和数学家的故事 zz
- 线下商店如何转型做新零售 怎么样顺利开展新零售模式?
- 树立个人品牌:让名企hr们主动来找你
- 5.21下周黄金走势分析及开盘独家交易策略
- Linux 程序包管理-YUM
- psd 文件用什么打开