GoogleVR与unity2019(cardboard)

Unity VR开发实战:Google VR SDK环境配置与避坑指南 虚拟现实(VR)应用开发的核心在于将3D内容与用户头部运动、交互设备实时同步,创造沉浸式体验。其技术原理依赖于图形渲染管线、传感器数据融合与低延迟输入处理。在移动VR领域,稳定的帧率与精准的头部追踪是保障用户体验的技术基石,直接影响到应用的流畅度与沉浸感。Google VR SDK for Unity作为连接Unity引擎与Cardboard/Daydream等移动VR平台的关键桥梁,为开发者封装了底层传感器接口、分屏渲染与交互逻辑。在工程实践中,正确的环境配置是项目成功的首要前提,涉及Unity版本兼容性 阅读详情

GoogleVR与unity2019(cardboard)

1.下载GoogleVRForUnity_1.200.1

链接:https://pan.baidu.com/s/1Q_kMl6rIyQr-39hYSANJvw
提取码:m5nt

2.unity创建项目后

双击安装导入
在这里插入图片描述
(本文使用的unity版本是unity2019.4.4f1)

3.转换平台

因为转换Android平台的速度跟项目大小有关系,所以在创建项目之后就转换平台是最快的啦。

点击file–>build Settings 后点击Android,点击switch platform

注:前提是从unityHub安装时,选择安装过Android平台。没有的可以通过添加模块重新添加

在这里插入图片描述
需要全部勾选添加。
在这里插入图片描述
打开Edit–>preferences后JDK和SDK没有警告就是安装成功了。(因为我openJDK一直没通过unityHub下载成功,所以我自己去找了jdk)

jdk链接:https://pan.baidu.com/s/1Nh-gDfUrFhd8dI0zLTNfXQ
提取码:gurr
在这里插入图片描述

4.导出apk前的设置
(1)打开Player Settings

在这里插入图片描述

(2)设置XR Settings

在这里插入图片描述
勾选之后,添加cardboard
在这里插入图片描述

(3)设置Other Settings

在这里插入图片描述
在Other Settings中往下翻,更改packageName(随便改一改,只要是xx.xx.xx格式就可以)
Minimum API Level 改为19
在这里插入图片描述

4.导出apk

在这里插入图片描述
安装到手机就可以运行啦!

PS:强烈推荐一个UP主,小意思VR!

在这里插入图片描述
附:本文学习的视频
https://www.bilibili.com/video/av98014336/

Google VR For Unity_1.120.0 Google VR For Unity包,unity开发cardboard vr必备插件包。目前最新版本,兼容unity 5.3.1f版。 立即下载

相关推荐

Unity开发Cardboard VR工程实例

利用Unity2019版制作了一个Cardboard VR的工程实例,发布出来的apk可安装到安卓收件上用谷歌的VR纸盒观看VR效果。

Unity 手机VR GoogleVR 详细配置教程

一 Unity环境配置 1.首先导入GoogleVRForUnity_1.200.1.unitypackage 2.点击File\BuildSettings,导入当前场景,选择安卓/IOS 3.点击PlayerSettings,在Player中找到XRSettings,点击Virtual Reality Supported,点击+选择Cardboard 4.同样在PlayerSettings这个界面找到OtherSettings,在GraphicsAPIs移除Vulkan 至此,环境已经搭建完成了! 二 如

CTangZe的博客 6785

GoogleVRForUnity_1.170.0

最新的 google VR For Unity SDK 1.17版,unity进行VR开发

GoogleVRForUnity✨一款常用的谷歌VR插件教程

一款常用的谷歌VR插件教程

星河造梦坊 2739

GoogleVRForUnity

google最新SDK

GoogleVRForUnity_1.200.0.unitypackage

GoogleVRForUnity_1.200.0.unitypackage 官网下载的,方便随时用

超简单的Unity VR新手教程|五分钟上手

2.4.6.8.

jellyfishh2so4的博客 1057

Windows11开机必看:3种方法跳过联网激活(含最新OOBE命令)

本文详细介绍了Windows11新机开箱时绕过联网激活的三种实用方法,包括任务管理器终止进程法、命令行强制终止法和最新的OOBE\BYPASSNRO命令法。特别推荐使用微软官方预留的OOBE命令,操作简单且无副作用,帮助用户快速完成系统设置。

weixin_28366353的博客 1626

如何提高Unity Gear VR游戏性能

教你如何提高Unity Gear VR游戏性能 跟马赛克说拜拜   虚拟现实场景   好的,所以你决定用 Unity 来做一个 VR 游戏,并选定了三星 Gear VR 为你的目标平台。做好之后,打开应用,在设备上执行文件再容易不过 –   但有个问题,帧率实在太低。视野边上有闪烁的黑边出现,感觉好像有谁往摄像机操作员的肚子上踢了几脚。你听说过保持稳定的帧率有多重要,

痞子龙3D编程 3613

STM32F103C8T6最小系统板GPIO配置避坑指南:从原理图到流水灯一次成功

本文详细介绍了STM32F103C8T6最小系统板GPIO配置的实战指南,从硬件准备到流水灯实现,涵盖了九大关键步骤。特别针对新手常见问题,如GPIO配置、开发环境搭建和程序下载调试,提供了详细的解决方案和避坑技巧,帮助开发者快速掌握STM32开发基础。

weixin_33756596的博客 340

Doris StreamLoad任务报错Connection reset

背景 Spark程序扫一张Hive表(大小3-7G),然后用http协议的streamLoad任务提交给Doris集群,在Doris集群从0.13.15升级到0.14.12后spark程序报错streamLoad时突然会Connection reset 分析 enable_http_server_v2 这个参数可以参考FE中文配置中查看到,作用是对于Doris界面是否开启新风格的界面,但是实际上他的作用远不止如此,请接着看 新老版本对于enable_http_server_v2参数默认值是不同的 在0.13

gaofeng的博客 3307

Unity2018+cardboard 360度全景视频实现

新建一个安卓平台的unity项目 导入CardBoard包 GoogleVRForUnity_1.200.1.unitypackage 可在Github上下载 切换成Android平台-打开PlayerSettings 作如下设置 添加目录如下 为了添加的简便起见,可以采用如下方式 在Asset包中的GoogleVR包的Demos目录下选择Scenes选择HelloVR 再删除demo中的无关部分,添加一个球体 重置球体的位置,并放大 创建一个Material 无需多余设置,拖到Shpere上

写写写写到厌倦~ 1036

如何解决ERROR: THESE PACKAGES DO NOT MATCH THE HASHES FROM THE REQUIREMENTS FILE.

解决ERROR: THESE PACKAGES DO NOT MATCH THE HASHES FROM THE REQUIREMENTS FILE

2742

Unity GoogleVR Cardboard 开发

一、前期准备 1.Google GVR SDK for Unity 点击下载 2.一部安卓手机,别太拉胯就行???????? 3.网购一个几块钱的盒子,或者动手能力强的自己做一个,这里可以下载打印 4.Unity官方文档 5.Google官方文档 6.上面的链接打不开请 Science Online ???????? 二、过程步骤 1.创建3D工程,导入SDK,提示API升级的,就升级 2.打开Build Setting设置,切换到Android平台,点击Player

Liam's blog 1925

深入理解鸿蒙输入子系统驱动:HDI接口、HAL层与内核驱动的协同机制

/ 扫描输入设备// 打开指定输入设备// 关闭指定输入设备// 获取指定设备信息// 获取所有设备列表鸿蒙输入子系统驱动采用分层架构设计,通过HDI接口层实现硬件抽象,HAL层提供统一的事件处理机制,用户空间驱动层负责设备管理和事件分发。整个系统支持多种输入设备类型,包括触摸屏、按键、鼠标、键盘等,并提供了完整的HID设备支持。分层架构:清晰的层次划分,便于维护和扩展事件驱动:基于epoll的高效事件处理机制设备管理:完善的设备生命周期管理HID支持。

m0_67505153的博客 212

Windows报无法成功完成操作,因为文件包含病毒或潜在的垃圾软件的解决方法

Windows报无法成功完成操作,因为文件包含病毒或潜在的垃圾软件的解决方法 在Windows的搜索框中输入Windows安全中心,搜索到后将其打开 点击病毒和威胁防护将鼠标移动到Microsoft Defender防病毒选项处,将定期扫描打开 下滑找到管理设置 先关闭篡改防护,再点击添加或删除排除项 先点击添加排除项,再点击文件,选择报出异常的文件,将其添加到排除项中,过程中会存在跳框确认,皆点击确定,完成后就可以运行报无法成功完成操作,因为文件包含病毒或潜在的垃圾软件异常的文件

123 2万+

【Unity + Google Cardboard】 VR环境配置

翻译一下google cardboard接unity的开发文档 前面 一直想尝试开发一个VR游戏试试…… Unity的官方文档在这里 一开始看的时候分不清各种VR设备,如果你也是的话——比如只有一个能塞进手机的带凸透镜的壳子,就用google cardboard这个SDK。因为其他的都有对应设备支持。 关于硬件,这里是谷歌cardboard官网。 在这个网站有制作过程的中文介绍...

Birdcage 9218

把 SAP S/4HANA 中的 Maintain Email Templates 用好:从模板维护、语言变体、业务绑定到传输治理的完整实践

摘要:SAP邮件模板管理常被低估,实则关乎审批通知、业务提醒等关键输出。官方推荐通过复制标准模板实现自定义,而非直接修改标准内容,以保持核心稳定。模板维护涉及语言变体、业务绑定、数据传输等治理环节,需业务顾问与开发团队协作确保字段来源与渲染逻辑。实施时需注意Fiori配置、权限分配及传输管理,避免测试与生产环境差异。模板设计应平衡灵活性与复杂度,遵循分层测试策略(内容、数据、流程),并建立命名规范以维护资产清晰度。(149字)

2007 年 ~ 2025 年,深耕 SAP 技术 18 年 67

Unity GoogleVR(一)—— 解决安卓打包黑屏、闪退

使用配置: Android JDK 提取码:5bv0 Android SDK 提取码: Android NDK 提取码: Unity 2019.4.9f1 Google Cardboard XR Plugin for Unity(此项不必下载,可通过Unity的Package Manager直接导入 url ) Google原文地址(需要翻墙) 本文测试机是华为P40 正文 1、新建工程 2、导入SDK: Window ==》 Package Manager ==》 “ + ”号 - Add package

jack_dos的博客 4057

C2f-DCN模块详解:可变形卷积与特征融合的完美结合

C2f模块作为YOLOv8的核心创新,代表了目标检测特征提取模块设计的最新进展。通过精简的卷积配置(仅2个基础卷积)、高效的特征重用设计(部分通道分割复用)、以及深层语义与浅层细节的协同建模能力,C2f在结构设计和性能表现上全面超越了前代的C3模块。与C3K2、C3K等变体相比,C2f在遮挡和密集环境下的检测鲁棒性更优,而C3K2和C3K分别在高速检测和多尺度检测方面有专门优化。这种差异化设计反映了YOLO系列模型向场景化、专业化发展的趋势。从设计原理角度看,C2f的核心优势在于其多路径梯度流动优化和。

浩瀚之水的专栏 378

VB摄像头监控

该VB模块可对摄像头捕获的画面进行录像等,可在创建的窗口进行控制

Unity Google VR Cardboard 后台挂起时陀螺仪仍然占用问题解决

为了节省时间,先说结论: Unity集成的Google VR,cardboard应用切换到后台时,确实不会有陀螺仪占用不释放的问题。它能自动停止追踪,释放其占用的accelerometer,gyroscope,gravity,linear Acceleration和rotation Vector等几个传感器。 我遇到的这个问题是我代码上的问题,不是Unity或者Google VR的bug。我有...

捉不住的鼬鼠的足迹 1684

深度学习工具包 DeepLearningToolbox

深度学习工具包Deprecation notice.-----This toolbox is outdated and no longer maintained.There are much better tools available for deep learning than this toolbox, e.g. [Theano](http://deeplearning.net/software/theano/), [torch](http://torch.ch/) or [tensorflow](http://www.tensorflow.org/)I would suggest you use one of the tools mentioned above rather than use this toolbox.Best, Rasmus.DeepLearnToolbox================A Matlab toolbox for Deep Learning.Deep Learning is a new subfield of machine learning that focuses on learning deep hierarchical models of data.It is inspired by the human brain's apparent deep (layered, hierarchical) architecture.A good overview of the theory of Deep Learning theory is[Learning Deep Architectures for AI](http://www.iro.umontreal.ca/~bengioy/papers/ftml_book.pdf)For a more informal introduction, see the following videos by Geoffrey Hinton and Andrew Ng.* [The Next Generation of Neural Networks](http://www.youtube.com/watch?v=AyzOUbkUf3M) (Hinton, 2007)* [Recent Developments in Deep Learning](http://www.youtube.com/watch?v=VdIURAu1-aU) (Hinton, 2010)* [Unsupervised Feature Learning and Deep Learning](http://www.youtube.com/watch?v=ZmNOAtZIgIk) (Ng, 2011)If you use this toolbox in your research please cite [Prediction as a candidate for learning deep hierarchical models of data](http://www2.imm.dtu.dk/pubdb/views/publication_details.php?id=6284)```@MASTERSTHESIS\{IMM2012-06284, author = "R. B. Palm", title = "Prediction as a candidate for learning deep hierarchical models of data", year = "2012",}```Contact: rasmusbergpalm at gmail dot comDirectories included in the toolbox-----------------------------------`NN/` - A library for Feedforward Backpropagation Neural Networks`CNN/` - A library for Convolutional Neural Networks`DBN/` - A library for Deep Belief Networks`SAE/` - A library for Stacked Auto-Encoders`CAE/` - A library for Convolutional Auto-Encoders`util/` - Utility functions used by the libraries`data/` - Data used by the examples`tests/` - unit tests to verify toolbox is workingFor references on each library check REFS.mdSetup-----1. Download.2. addpath(genpath('DeepLearnToolbox'));Example: Deep Belief Network---------------------```matlabfunction test_example_DBNload mnist_uint8;train_x = double(train_x) / 255;test_x = double(test_x) / 255;train_y = double(train_y);test_y = double(test_y);%% ex1 train a 100 hidden unit RBM and visualize its weightsrand('state',0)dbn.sizes = [100];opts.numepochs = 1;opts.batchsize = 100;opts.momentum = 0;opts.alpha = 1;dbn = dbnsetup(dbn, train_x, opts);dbn = dbntrain(dbn, train_x, opts);figure; visualize(dbn.rbm{1}.W'); % Visualize the RBM weights%% ex2 train a 100-100 hidden unit DBN and use its weights to initialize a NNrand('state',0)%train dbndbn.sizes = [100 100];opts.numepochs = 1;opts.batchsize = 100;opts.momentum = 0;opts.alpha = 1;dbn = dbnsetup(dbn, train_x, opts);dbn = dbntrain(dbn, train_x, opts);%unfold dbn to nnnn = dbnunfoldtonn(dbn, 10);nn.activation_function = 'sigm';%train nnopts.numepochs = 1;opts.batchsize = 100;nn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.10, 'Too big error');```Example: Stacked Auto-Encoders---------------------```matlabfunction test_example_SAEload mnist_uint8;train_x = double(train_x)/255;test_x = double(test_x)/255;train_y = double(train_y);test_y = double(test_y);%% ex1 train a 100 hidden unit SDAE and use it to initialize a FFNN% Setup and train a stacked denoising autoencoder (SDAE)rand('state',0)sae = saesetup([784 100]);sae.ae{1}.activation_function = 'sigm';sae.ae{1}.learningRate = 1;sae.ae{1}.inputZeroMaskedFraction = 0.5;opts.numepochs = 1;opts.batchsize = 100;sae = saetrain(sae, train_x, opts);visualize(sae.ae{1}.W{1}(:,2:end)')% Use the SDAE to initialize a FFNNnn = nnsetup([784 100 10]);nn.activation_function = 'sigm';nn.learningRate = 1;nn.W{1} = sae.ae{1}.W{1};% Train the FFNNopts.numepochs = 1;opts.batchsize = 100;nn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.16, 'Too big error');```Example: Convolutional Neural Nets---------------------```matlabfunction test_example_CNNload mnist_uint8;train_x = double(reshape(train_x',28,28,60000))/255;test_x = double(reshape(test_x',28,28,10000))/255;train_y = double(train_y');test_y = double(test_y');%% ex1 Train a 6c-2s-12c-2s Convolutional neural network %will run 1 epoch in about 200 second and get around 11% error. %With 100 epochs you'll get around 1.2% errorrand('state',0)cnn.layers = { struct('type', 'i') %input layer struct('type', 'c', 'outputmaps', 6, 'kernelsize', 5) %convolution layer struct('type', 's', 'scale', 2) %sub sampling layer struct('type', 'c', 'outputmaps', 12, 'kernelsize', 5) %convolution layer struct('type', 's', 'scale', 2) %subsampling layer};cnn = cnnsetup(cnn, train_x, train_y);opts.alpha = 1;opts.batchsize = 50;opts.numepochs = 1;cnn = cnntrain(cnn, train_x, train_y, opts);[er, bad] = cnntest(cnn, test_x, test_y);%plot mean squared errorfigure; plot(cnn.rL);assert(er<0.12, 'Too big error');```Example: Neural Networks---------------------```matlabfunction test_example_NNload mnist_uint8;train_x = double(train_x) / 255;test_x = double(test_x) / 255;train_y = double(train_y);test_y = double(test_y);% normalize[train_x, mu, sigma] = zscore(train_x);test_x = normalize(test_x, mu, sigma);%% ex1 vanilla neural netrand('state',0)nn = nnsetup([784 100 10]);opts.numepochs = 1; % Number of full sweeps through dataopts.batchsize = 100; % Take a mean gradient step over this many samples[nn, L] = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.08, 'Too big error');%% ex2 neural net with L2 weight decayrand('state',0)nn = nnsetup([784 100 10]);nn.weightPenaltyL2 = 1e-4; % L2 weight decayopts.numepochs = 1; % Number of full sweeps through dataopts.batchsize = 100; % Take a mean gradient step over this many samplesnn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');%% ex3 neural net with dropoutrand('state',0)nn = nnsetup([784 100 10]);nn.dropoutFraction = 0.5; % Dropout fraction opts.numepochs = 1; % Number of full sweeps through dataopts.batchsize = 100; % Take a mean gradient step over this many samplesnn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');%% ex4 neural net with sigmoid activation functionrand('state',0)nn = nnsetup([784 100 10]);nn.activation_function = 'sigm'; % Sigmoid activation functionnn.learningRate = 1; % Sigm require a lower learning rateopts.numepochs = 1; % Number of full sweeps through dataopts.batchsize = 100; % Take a mean gradient step over this many samplesnn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');%% ex5 plotting functionalityrand('state',0)nn = nnsetup([784 20 10]);opts.numepochs = 5; % Number of full sweeps through datann.output = 'softmax'; % use softmax outputopts.batchsize = 1000; % Take a mean gradient step over this many samplesopts.plot = 1; % enable plottingnn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');%% ex6 neural net with sigmoid activation and plotting of validation and training error% split training data into training and validation datavx = train_x(1:10000,:);tx = train_x(10001:end,:);vy = train_y(1:10000,:);ty = train_y(10001:end,:);rand('state',0)nn = nnsetup([784 20 10]); nn.output = 'softmax'; % use softmax outputopts.numepochs = 5; % Number of full sweeps through dataopts.batchsize = 1000; % Take a mean gradient step over this many samplesopts.plot = 1; % enable plottingnn = nntrain(nn, tx, ty, opts, vx, vy); % nntrain takes validation set as last two arguments (optionally)[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');```[![Bitdeli Badge](https://d2weczhvl823v0.cloudfront.net/rasmusbergpalm/deeplearntoolbox/trend.png)](https://bitdeli.com/free "Bitdeli Badge")

Cardboard XR Plugin For Unity

Cardboard XR Plugin For Unity

weixin_44047050的博客 854

老版QQ原生表情gif动态

这是老版的QQ表情,不过全是动态的的,Windows照片查看器是不会动的,可以右击用浏览器打开查看,再说一遍是老版的,只是分享给宁愿用老版也要动态的人。

计算机控制技术及应用

《计算机控制技术及应用》通过总结作者的科研成果和吸收国内外的先进理论、方法和技术,以计算机控制系统的网络化、开放化、智能化和集成化发展趋势为主线索,主要介绍计算机控制系统的基本概念和计算机控制系统的典型形式,计算机控制系统的数学描述与基本分析方法,以及数字PID控制器、最少拍控制系统、达林算法、状态变量设计法等设计方法及其各种改进算法。重点突出计算机控制系统输入输出通道接口的设计方法和典型控制系统的设计案例与实现方法等。

在googleVR上调用设备相机的webcamtexture无法获取相机

不开启VR Supported时,调用相机,可正常开启相机。当开启VR Supported,并添加Card Board时,无法调用相机,不会弹出提示是否允许的对话框。如果是unity工程添加权限,打开Project Setting面板,勾选Player下的Custom main Manifest。这个问题困扰了很久,国内网站始终找不到解决方案,github上总算找到了类似的问题,开启VR Supported时,可能自动去掉了相机的权限请求,没有开启权限。如图所示,在文件对应位置添加以下代码。

qq_37619255的博客 472

Google VR cardboard开发01

vr

moonlightpeng的博客 509

unity+google cardboard

搞了三天各种问题,终于今天一早在手机上build成功了 贴一下googleVR的官网,能翻墙的可以看一下https://developers.google.com/vr/develop/unity/get-started-android 简单翻译一下给不能翻的北鼻们 1、unity需要的最小版本是5.6 注意在安装的时候勾选红框框里的东东  2、下载Google VR SDK for...

jianbiao1483的博客 884

Google vr cardboard

vr

moonlightpeng的博客 265
上一篇: excel怎么快速合并多个工作表数据到一个工作表
下一篇: Playmaker与iTween
这里是得得。
博客等级 码龄7年 13粉丝 17原创
评论 2
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值