如何访问HoloLens2源
问题: 我一直在尝试根据2D面RGB面部检测在世界空间中创建3D位置,类似于此Microsoft示例.我使用Unity 2020.3.16F1,MRTK 2.8.2和C#用于Unity脚本.我已经能够将链接中显示的C ++代码转换为C#,并取得很大的成功.最后一个问题是访问HoloLens 2 Origin PatialCoorDinatesystem,用于在相机的2D坐标系和3D Worldspace系统之间使用. 此链接提出一个非常相似的问题,我试图使用SpatialLocator.GetDefault().CreateStationaryFrameOfReferenceAtCurrentLocation().CoordinateSystem(),如答案所暗示的那样.我将此功能称为Unity的"清醒"方法,以确保尽早设置它,如下所示. private void Awake() { worldSpatialCoordinateSystem = SpatialL
42 2024-04-26
编程技术问答社区
BluetoothLEAdvertisementWatcher。Hololens上没有事件
我正在尝试通过BLE-Advertisments将GPS坐标从Android设备发送到HoloLens. 据我所知,来自蓝牙的事件不会在Hololens上触发. 我已经尝试了复制paste这两个实现 和这是当前的实现,我已经在空白的UWP-C#项目中实现了相同的功能,并直接在HoloLens上部署了相同的结果. private void StartWatcher() { void OnAdvertisementReceived(object sender, BluetoothLEAdvertisementReceivedEventArgs eventArgs) { Debug.Log("Event triggered"); // switched to Write-line on the C#->UWP implementation } void OnAdvertiseme
具备空间意识的Hololens字符
我想在第3:09中对视频做一些类似的事情 https://wwwwwww.youtube.com/watch?v = aydb2xbnfek > 我认为我需要空间映射和空间理解,但是我不明白如何创建一个太空couscius角色.我希望这个角色可以像我之前放置的视频一样沿着Sofà,然后转到其他叉车. 有人可以帮助我吗? 非常感谢! 解决方案 如果您启用了但是,我认为您真正需要的是"点击要放置".要在mrtkv2.3中实现,是好的求职者方向. 并将对象对准该表面.此外,在即将到来的MRTKV2.4中,
18 2024-04-26
编程技术问答社区
无法在Hololens中读取文件
我正在开发一个需要在运行时读取HoloLens中的.OBJ格式文件的应用程序. 确切地说,我要做的是将.OBJ文件保存在HoloLens中,当应用程序运行时,它应该通过HoloLens文件系统访问该文件.将文件放入资产文件夹中,而Unity编辑器加载并不是我想要的. 我搜索了几个论坛和主题线程,许多论坛提供了相似的解决方案.我遵循一些示例代码,并编写自己的代码以读取HoloLens中的文件.但是,它行不通. 我程序的相关部分如下: 在脚本文件的头部,导入命名空间 #if WINDOWS_UWP using Windows.Storage; using Windows.Storage.Pickers; using System.Threading.Tasks; #endif 加载OBJ文件的脚本接收流类型参数.因此,我实现了此函数" OpenFileForread",该功能接收一个文件夹路径和一个文件名作为参数返回文
18 2024-04-24
编程技术问答社区
在预先扫描的房间内将物体放置在设定的位置上
目标: 我有一个房间的预扫描空间地图. (通过入职过程进行.) 我们拍摄该地图,并在预定义的静态位置以统一性添加全息位置/标记/数字双胞胎.例如,墙壁空间,配件等 然后启动该应用程序并包含正确位置中的所有全息数据,无论用户实际启动位置如何. 简而言之,我希望一个应用程序启动,在现实世界中的设定位置有预定义的全息图,无论该应用程序在该房间内的何时启动. 我在空间映射,空间理解等上阅读了很多教程和演练等,但它们似乎并不能解决我的问题. 我已经使用Hololens Web浏览器界面下载了房间的3D空间地图,并使用Unity放置全息图,其各自的脚本等. 现在,当我启动应用程序时,所有的全息图都是相对于彼此正确创建的,但是只有当我启动应用程序站在设定点,朝设定方向看时,它们才在正确的位置. 主要想法是找到房间的空间锚点(我不知道在创建的空间地图中从哪里获得这些!)然后一旦找到它们,旋转/翻译全息世界以匹配现场扫描的空间锚. 其他方法包括: - 将所有
6 2024-04-24
编程技术问答社区
在Hololens上将数据写入文件
在我的Hololens应用程序中,我想将数据写入文件中,然后可以通过设备门户查看.数据仅包含从一个特殊对象上的一个airtap到另一个airtap的时间. 问题是,在设备门户网站/localappdata/yourapp/localstate 的设备门户网站中不会创建文件 预先感谢 乔纳森 public void StopTime() { TimeSpan ts = time.Elapsed; time.Stop(); path = Path.Combine(Application.persistentDataPath, "Messdaten.txt"); using (TextWriter writer = File.CreateText(path)) { writer.Write(ts); } } 解决方案 我通常使用FileStream和a StreamWriter,并确保设置FileMo
26 2024-04-24
编程技术问答社区
用MRTK创建用户界面(石板的使用)。
我会为社区有几个问题: 作为一个简短版本: 是否有关于如何在Unity中创建3D UI的教程.主要用于HoloLens 2,例如使用MRTK工具包? 作为一个明确的问题,如何使用板岩预制? 对于问题1: 我直到最近才开始与HoloLens 2合作.我还没有收集很多专家知识,以创建Unity .我已经注意到,MRTK中的预制措施的构建方式与典型的Unity UI(我在教程中看到的)不同.例如,没有画布,但仅使用矩形.在 mrtk ux page 预示着预制,但未显示如何创建和安排自己的元素. 对于问题2: 我的详细问题现在是关于 mrtk slate prefab prefab .我想显示 text 我在板岩上的textmeshpro 中动态添加(例如,在ContentQuad中),并通过交互滚动.就像在智能手机上通过上/下滑动滚动一样.在预制剂中,使用含量的网格材料(即PNG).因此,我无法直接传递textMeshPro或矩形.如果我将文本材料用作网
30 2024-04-24
编程技术问答社区
Hololens 2 & Unity-如何使用CameraToWorldMatrix来修正全息图的位置?
我正在使用unity 2019.4.6. 使用PhotoCaptureFrame类,我正在拍照,分析它以找到特定的标记,然后我在标记处创建全息图.我的代码与Unity编辑器中的网络摄像头很好地合作.但是在Hololens上,全息图和标记之间存在偏移. 我尝试用cameratoworld矩阵(我使用PhotoCaptureFrame类获得)对其进行更正.如果我很好地理解,它代表了HoloLens摄像机和RGB摄像机(拍照)之间的偏移. 问题是:我不知道我是否很好地使用此矩阵,我的全息图位置总是很奇怪...我尝试使用此教程: https://forum.unity.com/threads/holographic-photo-photo-photo-photo-blending-with-photocapture.416023/ 结果也是错误的!实例化的四边形是旋转的,并在原始起点后面(当我启动应用程序时).它不遵循相机. 我需要转换矩阵吗? 有人可以向我解释我做错了什
10 2024-04-23
编程技术问答社区
HoloLens-在Unity中捕捉照片并保存到磁盘上
我试图将捕获的照片保存到霍洛伦斯的磁盘上.试图在unity中保存照片时,我会遇到以下异常错误,基于 nonofollow">这个示例.一段时间以来,我无法获得正确的目录来保存文件,现在我认为我终于可以使该部分工作(请参阅下面的GetFolderPath函数).但是,现在我得到以下引用的例外.关于如何解决此问题的任何想法? 我正在使用折纸示例代码,并且我只是将此脚本PhotoCaptureTest.cs附加到Unity的折纸上游戏对象.有人知道如何解决此问题,还是我可以更轻松地进行调试? 异常投掷:unityEngine.dll中 NullReferenceException:对象引用未设置为 目的.在 UnityEngine.vr.wsa.webcam.photocapture.invokeoncapturedphototodiskdelegate(oncapturedTodiskCallback 回调,int64 hresult) UnityEngine.vr.wsa.we
18 2024-04-23
编程技术问答社区
在HoloLens 2上的Unity应用程序中打开文件浏览器
因此,这似乎是一个简单的解决方案,但是由于我找不到有关如何准确执行此操作的任何文档,它实际上与蛮力猜测密码相同. 环境 Unity版本:2019.3.1,2019.3.4(当前) 平台:通用Windows平台 MRTK:2.2,2.3(当前) Hololens 2 OS:Windows全息操作系统 我想完成的工作 我按下按钮,文件浏览器/资源管理器出现在我的Unity场景中 问题 我无法在HoloLens 2中启动文件浏览器/资源管理器. 背景/上下文 使用MRTK 2/Hololens 2,您可以在不退出Unity应用程序的情况下启动外部应用程序.霍洛伦1无法做的事情. Microsoft在其Unity示例软件包中提供了证明:Assets/MixedRealityToolkit.Examples/Demos/HandTracking/Scenes/HandInteraction.Examples.unity将.Foundation和
20 2024-04-23
编程技术问答社区
在HoloLens 2上用Unity3D写到Application.persistentDataPath,之后通过设备网络门户访问文件
我正在研究Unity 3D中的HoloLens 2应用程序.我正在尝试将配置文件写入设备,并以后通过Web浏览器中的设备门户访问.在应用程序本身中,我被告知文件正在写入AppData/local/packages/[App Name]/localstate/[File Name] .txt.但是,当我去看一下localappdata/[app name]文件夹localstate/甚至不存在时.我怀疑这与包装中的错误有关. 这是我用来写入文件的相关C#代码: void ReadResolution() { string path = Path.Combine(Application.persistentDataPath, mResFilename); mExcept = $"No exceptions thrown by file IO while writing to \n\"{path}\"."; if(Syste
14 2024-04-23
编程技术问答社区
用于Hololens的Filepicker。列出可用的文件采集器?
因此,霍洛伦斯很愚蠢,因为它一次只能识别一个filepicker(无论可以安装多少个).我不认为开发人员会尝试使多个filepickers起作用. 所以,我正在尝试找出自己的filepicker,以尝试成为其他filepickers的代理选择. 本质上,我想制作一个典型的filepicker选择器(如果有道理的话). 麻烦是,似乎无法获得采摘器的列表! 我是在经历一个白日梦,还是有一种方法可以从选择器列表中调用一个选择器? 解决方案 目前这是一个梦想,但我肯定希望他们解决这个问题. per Windows Holographic FAQ : 注意:Hololens 将始终使用您安装的第一个应用程序来处理文件存储,并且无法更改.这意味着,如果您安装框,然后oneDrive,所有应用程序将使用框文件选择器应用程序.
2 2024-04-22
编程技术问答社区
在assets文件夹中添加DLL时,运行引用改写器时出现命令错误,出现unity错误。
当我将dai.dll添加到资产文件夹时,我遇到了此错误. 当我尝试构建时,此错误会发生. unityException:无法使用命令-target =" temp \ stagingarea \ dai.dll"运行参考重写器. UnionMetAdata \ 10.0.17134.0 \ catade"," C:\ Program Files(X86)\ Windows Kits \ 10 \ 10 \参考\ 10.0.17134.0 \ Windows.ai.machinelearning.preview.machinelearningpreviewContract \ MachineLearningPreviewContract \ concontract \ 1.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.c:文件(x86)\ Windows Kits \ 10 \ Refe
14 2024-04-22
编程技术问答社区
Unity 在最小和最大距离之间旋转
我试图使拖动对象成为可能.这个对象只能旋转这么多. (similair到门). 这是旋转有效对象的编辑的代码. 我有2个用于最大值和界限的向量. 每当用户拖动相互作用的对象时,此代码将被调用. (如更新,但仅在拖动时) if (GestureManager.Instance.IsNavigating && HandsManager.Instance.FocusedGameObject == gameObject) { //speed and navigiation of rotation float rotationFactor; rotationFactor = ManipulationManager.Instance.ManipulationPosition.y * RotationSensitivity; totransform.
40 2024-04-22
编程技术问答社区
在hololens应用程序中保存图片到照片文件夹
我正在尝试在Hololens应用程序中捕获一张照片.它似乎在起作用,但将图像保存到我无法访问或查看的晦涩的地方.我想将其保存到我的图片库中 filepath = c:/data/users/janikjoe/appdata/local/packages/holotoolkit-unity_pzq3xp76mxafg/localstate \ catchuredimage10.02831_n.jpg filepath2 = c:/data/users/defaultaccount/appdata/local/developmentfiles/holotoolkit-unityvs.debug_x86.janik/data \ catchuredimage10.02831_n.jpg using UnityEngine; using UnityEngine.VR.WSA.WebCam; using System.Linq; public class PhotoCaptureFV
26 2024-04-21
编程技术问答社区
如何改变Unity中VerticalLayoutGroup的扩展方向而不旋转?
我需要更改verticallayoutgroup的扩展方向. 使用默认行为,组将在楼下扩展. 我想要的是,小组将在楼上扩展. 在此 链接上的解决方案是,将布局群旋转约180°. 现在,这似乎更像是解决方法,因为所有孩子也必须旋转. 由建议的解决方案不会给出视频中显示的预期行为. 我将contentsizefitter添加到了 unity答案.现在,LayoutGroup将在两个方向(楼上和楼下)扩展. 是否有任何解决方案可以完成所需的行为而不旋转布局组? 编辑: 我还注意到旋转方法的缺点: mixhreRealityToolkit 将迫使layoutgroup旋转至0° 解决方案 这对我有用: 请注意儿童对齐在Vertical Layout Group上设置, pivot 设置Rect Transform>.添加更多项目时,这使布局组向上扩展. 还要注意Content Size Fitter组件的存在,其垂直拟合设置为首选尺寸,当添加或删除内容时,它
14 2024-04-21
编程技术问答社区
Unity HoloLens应用程序作为Windows应用程序而不是AR来执行
我正在使用以下工具构建HoloLens Unity应用 Unity 2018.3.14f1 Visual Studio 2017 Microsoft.mixedreality.toolkit.unity.foundation-v2.0.0.0.0-rc1-refresh.unitypackage(mrtoolkit v2) Unity项目/场景配置 目标平台:通用Windows平台 目标设备:HoloLens 建筑:x86 Target SDK版本:最新 目标平台版本:10.0.10240.0 目标平台设置 支持的设备系列:全息 XR设置:VR支持(未检查); WSA全息远程支持(UNCHECK) 其他设置: 我如何部署: 添加了开放场景 构建 打开 *.sln文件 将"通用Windows"项目设置为默认项目. 更新了远程执行的[机器名称/IP] 使用"远程设备"运行/启动项目(Hololens 1) 部署软件包成功
12 2024-04-20
编程技术问答社区
Hololens TCP套接字-Python客户端到Hololens服务器
经过几周的挫败感,我终于能够将字符串从Python客户端发送到Hololens服务器.代码在下面,运行完美.但是,我想知道有插座经验的人是否可以帮助我修改此代码,以将OPENCV网络摄像头框架(因此基本上只是发送图像)从Python到HoloLens.我一直在尝试,但是图像数据似乎未在C#脚本中收到. 非常感谢. Hololens服务器代码: using System; using System.Collections; using System.Collections.Generic; using UnityEngine; using UnityEngine.UI; #if !UNITY_EDITOR using Windows.Networking; using Windows.Networking.Sockets; using Windows.Storage.Streams; #endif //Able to act as a reci
18 2024-04-19
编程技术问答社区
无法部署到HoloLens模拟器上
刚刚创建了默认项目全息directx11应用程序(通用窗口)在VS2015 Update 2中使用Hololens Emulator安装并点击F5. Hololens Emulator开始加载,但在某个点 模拟器无法连接到设备操作系统:模拟器无法确定主机IP地址,该地址用于与访客虚拟机通信.某些功能可能会被禁用. 我可以从Hyper-V Manager启动仿真器并连接到它,但是屏幕没有响应鼠标的单击并使用启动菜单(如果我从VS2015启动,则在模拟器窗口中相同的图片,但是使用此错误消息在开始): 有什么想法吗? 解决方案 好吧,一些"标准"清理做了事情: Open Hyper-V Manager 删除所有 Windows Phone 和 Hololens 虚拟机(将稍后重新创建) 单击虚拟开关管理器... Actions 面板中的链接 重新启动(我这样做是"以防万一,可能不需要) 在 vs2015 中打开任何HoloLens项目,并命中 f5
14 2024-04-19
编程技术问答社区
从Unity到HoloLens的程序问题--无法从'string'转换为'System.IO.Stream'。
我有一个使用C#编写的程序,该程序初始化了一个新的StreamReader,并继续从我存储在Unity的资源文件夹中的文本文件中读取文本数据.当我单击"统一性"时,一切正常 - 所有内容都可以使用,并且文本的读取和显示完美.但是,当我尝试构建它以通过HoloLens Emulator运行它(平台:Windows Store,SDK:Universal 10,构建和运行:Local Machine)时,我会得到错误:错误CS1503:参数1:无法转换从"字符串"到" system.io.stream". 我不明白为什么此错误甚至首先出现,因为流读程序的构造函数具有接受字符串参数的超载. 我的代码如下: string metadata = String.Format("/Resources/.../metadata.txt", list); if (File.Exists(Application.dataPath + metadata)) { using (Str
8 2024-04-16
编程技术问答社区