1.UE 打包引擎源码
2.Babylon.js实战元宇宙/WebXR
3.UE5在HoloLens上的源码DataDrivenPlatformInfo.ini文件源码解读分析
UE 打包引擎源码
本文作为个人记录使用。
1. 获取引擎源码:在GitHub上下载对应版本源码(需订阅虚幻引擎并与你的源码虚拟引擎账号关联)。安装Microsoft Visual Studio,源码建议选择读写速度较快的源码硬盘,并预留足够空间。源码官方文档:docs.unrealengine.com/4...
unrealengine.com/zh-CN/...
运行setup.bat开始下载,源码微赞皮肤源码可加参数加速下载(--threads=N表示用N个线程加速下载)。源码网速慢时,源码可能需要更长时间。源码
完成下载后,源码运行GenerateProjectFiles.bat生成解决方案。源码
2. 构建源码:编译源码时,源码可适当修改源码hh。源码具体操作可参考官方文档:docs.unrealengine.com/4...
记得先Build AutomationTool。源码
我下载了Windows SDK:developer.microsoft.com...(VS中的源码可能还不够,猜测)。
再次Build时,遇到一个问题:
我采取的虚幻4不能调试源码有效方法:在HoloLensTargetPlatform.Build.cs中添加了一行参数bEnableUndefinedIdentifierWarnings = false;
3. 开始打包:通过cmd执行RunUAT.bat,等待打包完成。顺利的话,将在/引擎目录/LocalBuilds/Engine下找到打包好的包。我的路径是:E:\UnrealEngine-4..2-release\Engine\Build\BatchFiles\RunUAT.bat,参数:BuildGraph -target="Make Installed Build Win" -script=Engine/Build/InstalledEngineBuild.xml -clean。
详细的脚本选项可参考官方文档:docs.unrealengine.com/4...
接下来就开踩。安装vs时遇到错误,后来发现不用下载,修改参数即可。我使用的是vs,不知道vs是否可行。
这种就是配置对应的环境。想必后面还有ERROR: Platform IOS is not a valid platform to build,我都学会抢答了(安装ios环境需要apple id,我没有)。
因为我并不需要打包其他平台,所以修改了参数,个人相册app源码仅打包支持Window平台的BuildGraph -target="Make Installed Build Win" -script=Engine/Build/InstalledEngineBuild.xml -set:WithWin=true -set:WithWin=true -set:WithMac=false -set:WithAndroid=false -set:WithIOS=false -set:WithTVOS=false -set:WithLinux=false -set:WithLinuxAArch=false -set:WithLumin=false -set:WithLuminMac=false -set:WithHoloLens=false -set:WithClient=true -set:WithServer=true -set:VS=true -clean。
打包成功提示succeed。
其他:blog.csdn.net/qq_... store.algosyntax.com/tu... UE4使用BuildGraph构建二进制版本虚幻引擎 docs.unrealengine.com/4... Android SDK的下载与安装 cnblogs.com/KisonDu/p/1... iOS和tvOS开发要求 打包插件必须安装vs ? github.com/EpicGames/Un...
Babylon.js实战元宇宙/WebXR
从虚拟现实(VR)音频实验到在街机上创建虚拟现实休闲游戏,再到使用增强现实(AR)或虚拟现实创建更严肃的协作方式,本文将深入探讨今天在虚拟世界中能够实现的各种可能性。本文将分享作者使用Babylon.js构建沉浸式或增强现实WebXR体验的多个有趣实验,以及更严肃的业务场景。您将能够通过试验和阅读每个演示的源代码来学习。如果您没有兼容的设备,本文将分享一些后备方案,并提供使用Valve Index、Oculus Quest 2或HoloLens 2的视频。
Babylon.js是一个免费的开源3D引擎,基于WebGL和WebGPU构建。它开箱即用地支持Web音频和WebXR,这意味着您可以专注于构建体验或游戏,而无需担心许多Web API的小说个人网站源码下载复杂性。
WebXR是一种支持虚拟现实和增强现实场景的Web API,作者期待它在构建网络元宇宙时成为主要构建块。要使用WebXR,您需要一个兼容的设备,如Valve Index、Oculus Quest 2、Windows Mixed Reality头戴式设备、HoloLens 2或任何与SteamVR兼容的VR头戴式设备,以及用于AR的Android智能手机或HoloLens 2。对于浏览器,您需要基于Chromium的浏览器,如Google Chrome、Microsoft Edge、Opera、Samsung Internet、Chrome for Android或Oculus浏览器。
Babylon.js提供了一行代码即可提供完整的共享茶室前后台源码VR体验,它将转换现有的场景VR兼容,提供远传(teleport)能力(您需要提供充当地板的网格的名称)并将显示当前使用的控制器的正确模型。例如,要沉浸在著名的《回到未来》序列中,请导航至特定URL并查看代码。由于这行代码,您会发现奇迹发生了:其中2个对象可以支持传送目标:“Road1”和“Herbe1”。如果您连接了兼容的浏览器和WebXR兼容设备,您会在右下角看到一个VR图标。
如果您没有兼容的设备,可以尝试安装名为“WebXR API Emulator”的Chrome扩展程序,它将模拟WebXR设备。打开开发者工具,您就可以模拟某人使用VR头戴式设备。下面的视频展示了在Windows 上使用Valve Index的完整体验。
在VR街机中,作者喜欢制作小型视频游戏,喜欢街机,也喜欢虚拟现实,因此将所有这些元素混合在一起。首先,您可以查看多年前移植的原始2D Canvas游戏。然后,作者简单地使用这个2D画布在Babylon.js的3D画布中的2D平面上渲染它。事实上,您必须在WebGL画布中渲染所有内容,以便在VR中查看元素并与之交互。经典HTML元素不会投影到VR中的3D画布中。Babylon.js通过动态纹理支持2D画布。然后,只需要将飞机放在街机模型的顶部。作者从Sketchfab下载了模型。如果需要帮助定位场景中的对象,强烈建议使用检查器工具。
虚拟 VR钢琴是另一个例子,作者喜欢作曲,也喜欢虚拟现实,因此将两者结合起来。您可以尝试使用平面2D屏幕,但要使其在VR中运行,只需取消第行和第行的注释。然后,相机将位于钢琴的中心。当然,WebXR不仅仅是为了娱乐和游戏体验。今天,它可能更多地用于“严肃”场景,尽管对于作者来说,游戏是一项严肃的业务。
WebXR及其AR功能对于电子商务场景非常有趣。作者鼓励您阅读Babylon.js博客上的一篇文章:WebXR、AR和电子商务:初学者指南。它包含一个演示,您可以在Android智能手机(或HoloLens 2)上试用。视频可以在这里观看。
作者最近还致力于构建一个“元宇宙”演示,在演示中,他们能够使用Azure通信服务(一种运行在WebRTC之上的CPaaS)从VR场景中使用Microsoft Teams呼叫某人。这个想法是为了试验一个概念,例如,您可以在Microsoft Teams连接的销售代表的帮助下参观房屋。下面是使用Valve Index设备的演示视频。
作者首先在Babylon.js Playground中构建了一个原型,您可以在其中导航到场景,按下“呼叫”按钮并体验一段假视频,还可以单击Oculus控制器的“A”按钮,将视频放在左侧控制器的顶部。然后,作者集成了ACS JavaScript SDK,以通过Microsoft Teams的ACS基础设施流式传输视频。您可以通过示例尝试并阅读作者GitHub仓库中的代码。在不到分钟的时间内部署一个Azure通信服务示例,以便与您的同事和朋友共享和测试。完整的设置说明可以在自述文件中找到。
UE5在HoloLens上的DataDrivenPlatformInfo.ini文件源码解读分析
UE5项目中,配置文件扮演关键角色,定义引擎运行时行为、特性和平台特定设置。本文聚焦于HoloLens平台的DataDrivenPlatformInfo.ini文件,解析其功能与重要性。
DataDrivenPlatformInfo.ini作为数据驱动的平台信息配置文件,允许开发者定制优化不同硬件平台行为,无需修改引擎源代码。文件结构与代码逻辑如下:
1. [DataDrivenPlatformInfo]部分
2. 图标路径与SDK路径
3. 平台可用性与编译器设置
4. 平台组名
针对HoloLens平台,Shader平台配置部分至关重要,包括:
1. 语言与特性等级
2. 着色器格式与功能支持
3. 友好名称
DataDrivenPlatformInfo.ini的深入分析揭示,它是如何为UE5中的HoloLens平台提供灵活、细致的配置选项,减少源代码依赖,增强平台适应性,简化跨平台开发工作。通过数据驱动配置,实现高效、定制的平台优化与体验提升。