Metaverse Fundamental期末复习(PolyU)

Topic 1、Topic 8、Topic 9 - Focus on digital ownership

[图片]
Seven layers of Metaverse

  • Experience: Games, Social, Esports, Theater and shopping.
  • Discovery: Advertising, Social media, App stores, Search Engine.
  • Creator Economy(Digital Identity + Digital Ownership): Design Tools, Asset Markets.
    • Asset Markets包含了digital ownership
      • Digital thing:object,tools,gadgets(设备)
      • Metaverse land
      • Digital creations
  • Spatial Computing: 3D Engines, VR/AR/XR, UI.
  • Decentralization: Edge computing, AI Agents, Blockchain
    • Blockchain
      • NFT: ERC-721代表了一种数据结构和数据操作,然后使用smart contract来实现。
  • Human Interface: Hardware(HMD, Mobile, haptic)
  • Infrastructure: Network(5G, Wifi, Cloud)

Topic 3 - Focus on Omniverse, USD, GLB & GLTF

Omniverse (game level)

  • Omniverse 可以用于开发Open-USD格式数据. 其他平台数据->omniverse<->USD数据
  • Omniverse is based on USD, USD is based on GLB.
  • Unity 数据->omniverse. 但无法反向!unity无法使用omniverse数据。但可通过到处fbx格式文件再在unity中打开.
  • Omniverse 带有一个Paas平台作为cloud。
  • 3: 3ds max、m: maya
  • Omniverse nucleus: 用于不同软件(3ds max unreal)里的资源进行实时同步的作用 synchronize (live sync)

USD (scene level)

  1. USD is an open-source 3D model file format.
  2. Features of USD
  3. Composition engine合成引擎
  4. Custom scheme: USD core只带有核心功能,其他的可以增加.
  5. Assets resolve and data storage
    1. USD是一个文件系统,agnostic(跨系统操作)
    2. USD提供extensible asset resolver,支持多个数据存储模型和数据来源。
  6. Hydra: 支持customed rendering pipeline.

GLB&GLTF (object level)
GLB
GLTF
Binary file
Json file
Smaller in size and less processing power, more efficient
Higher level of detail and complexity
Good for NFT
Edited elements, Hyperlink
All elements in one single compressed file
External elements(textures, shaders, animation data) are stored in GLTF files, require external files
Self-contained file
Non-self-contained file

Topic 4 - Focus on the ECS & DOTS, flow of development

ECS & DOTS

  1. 面向对象和面向数据的区别 Object-oriented programming and Data-oriented programming
  2. OOP focuses on objects, each having its own data and behavior. These objects then interact with other objects through the functions each object owns. It organizes code through concepts like encapsulation, inheritance, and polymorphism. 对象拥有属性(对象的数据)和方法,支持封装,继承,多态组织代码
  3. DOP focuses on data definition, manipulation, and consistency. It separates code from data and focuses on performance optimizations. 关注的是数据,代码与数据分离,为的是提升性能
  4. Why is data-oriented design(DOD) important in Metaverse development?
  5. Background: Metaverse environments typically involve vast amounts of data, including 3D models, textures, animations, and user interactions. In addition, Metaverse platforms aim to accommodate a large number of users.
  6. DOD focuses on structuring data and designing algorithms to maximize performance and minimize memory usage. It is efficient to deal with a large amount of data. 传输的数据多,多人同时在线。 DOD能够高效处理数据。
  7. DOD is how you group the object to do the process.
  8. Unity 的 DOTS(data-oriented tech stack) 使用了DOP的思想
    Three componets of DOTS:
  • The Entity Component System (ECS)
  • The C# Job System
  • The Burst compiler
  1. ECS的组成与作用?
  2. ECS architecture separates 3 parts: identity (entities)、data (components)、behavior (system)
  3. Architecture focuses on the data. Systems read streams of component data, and then transform the data from an input state to an output state, which entities then index.
  4. ECS的组成
    1. Entities: Individual “things” in the game. Indentify which pieces of data belong together.A pointer to a location in memory 用 ID 表示游戏中的一个物体,是一系列组件的集合。类似于指针。
    2. Component: Data、instance 一堆数据的结合
    3. System: 处理 logic
    [图片]
    参考上图,Entity由很多Component组成,System处理Component的数据,执行逻辑。
    EntityArchetype: A combination of component types 如上图EA和EB share 同一个 Archetype(Component相同)
    The archetype of an entity determines where ECS stores the components of that entity.
    A chunk always contains entities of a single archetype. When a chunk of memory becomes full, ECS allocates a new chunk of memory for any new entities created with the same archetype .
    一个 Archetype里有许多Entity,每个Entity里有一组相同的Component。一个Chunk可以装一个Archetype中的Entity,装满了会新开一个Chunk
    结合图理解:
    [图片]
  5. Problems with the original GameObject architecture = ECS的优势
  6. A GameObject is a fat and heavy data structure
  7. Finding and running GameObject and MonoBehavior could be less efficient because both GameObject and MonoBehavior are dynamic objects, and they are stored everywhere in memory. 存储于内存中的任意位置,内存不连续,找的效率低
  8. Benefits of ECS
  9. With ECS, components can be stored into contiguous arrays and an entity is just a pointer to the archetype instance.
  • A single function for each system can define the behavior of thousands of similar entities.
  • Thus, this is more efficient than running an Update on every MonoBehavior in every GameObject.
  • Entities can be used without any slowdown or system overhead where it was impossible with GameObject instances.

Flow of development (ECS -> Job System -> Burst Compiller)

  1. Same components can be stored into contiguous arrays (ECS) 相同组件被存放在连续的内存中
  2. Job System find components it wants and traverse them in the memory. A job can be dealt with in multithread. JobSystem多线程遍历内存中连续的Component
  3. What are the difficulties of running a multithreaded system efficiently? (without the job system)
    1. Games tend to spawn a ton of threads, so that overhead causes the CPU to run less efficiently 线程太多负担增大
    2. Moving from single-thread to multi-thread programming introduce a large class of new issues and bugs(eg. Race condition 竞争)单线程转变成多线程增加BUG
  4. Benefits of the job system
    1. No race condition (Why? Job can only access a copy of data that it is supposed to work on or a buffer which can transfer ownership to the job 保证一个时间段只有一个Job能够工作)
    2. Save resources from having to perform context switching between engine & game threads
  5. Burst Complier optimizes the code of Job system.
  6. Ultilize Single Instruction Multiple Data(SIMD) to optimize code. 提升代码性能

Topic 5 - Focus on the sensors of VR devices

Questions in Peter’s PPT

  1. What kind of physical movements are captured by the system?
  2. Head and eye: Use Head-Mounted Display(HMD) to capture rotation and tilt of head, direction of eye gaze.
  3. Hand and finger: Use controllers, gloves, hand tracking devices to capture hand and finger motions to enable gestures and interactions within games.
  4. Body posture: By wearing specialized sensors or wearable devices to capture players’ body posture, position, and movement.
  5. Leg and foot: Use advanced physical movement capture systems to capture players’ leg and foot movements.
  6. How the physical movements of the multiple users can be articulated in this system?
  7. Spatial Tracking: Monitor the positions and orientations of each user within the designated play area.
  8. Avatar Representation: Each user is typically represented by an avatar or a virtual character within the VR environment.
  9. Synchronization: The system ensures synchronization between users’ physical movements and their avatar representations. This synchronization can be achieved through real-time data processing and communication between the tracking sensors, game engine, and the VR devices.
  10. Multiplayer Interactions: In a multiplayer VR experience, the system facilitates interactions between users. It allows users to see and interact with each other’s avatars, enabling cooperative or competitive gameplay scenarios.
  11. Networking: In order to enable multiplayer interactions, the system employs networking capabilities. Users’ physical movements and avatar representations are communicated to other users’ systems over a network, allowing for real-time interaction and synchronization.
  12. Collision Detection: To prevent users from physically colliding with each other, the system incorporates collision detection algorithms.
  13. What are the goal of this game and the action to execute that goal?
  14. Goal: The goal is to provide an immersive gaming experience where players can enter the virtual world and engage in story-driven missions, battles, and adventures.目标是提供一种沉浸式的游戏体验,玩家可以进入虚拟世界,参与故事驱动的任务、战斗和冒险。
  15. Actions
    1. Exploration
    2. Missions and Battles
    3. Use Abilities and Skills
    4. Interact with Characters
    5. Puzzles and Strategy
  16. What is the possible metric to measure fast and continuous feedback in this system?
  17. Response Time: the time system provides feedback to players.
  18. Frame Rate: FPS
  19. Latency
  20. Animation Fluidity
  21. Audio Feedback
  22. Progression Pace
  23. Explain how the VR shooting game can generate lower cognitive load and reduce the gulf of evaluation.
  24. Intuitive Gestural Controls
  25. Enhanced Spatial Awareness
  26. Physical Feedback and Presence
  27. Simplified User Interface (UI)

Motion sensing / cature
两种motion capture方式

  1. Electromagnetic Field Motion Capture 电磁场运动捕捉
  2. Potentiometers: for calculating orientation and position. 电位计
  3. Sensors: for enhanced tracking.
  4. Optical Motion Capture
  5. Reflective Markers: for high precision.
  6. Infrared Cameras: digitize different views for enhanced accuracy.
  7. 缺点:expensive, can’t work in sunshine, need to calibrate
    Flow of motion capture
  8. Equipment Assembly
  9. Motion Recording
  10. Data Processing
  11. Data Application
    两种motion sensing/track的方式
  12. Inside-out (computer vision + sensor data): A camera is attached to a user.
  13. Visible-llight low-resolution cameras (black and white)
  14. Fuse the information with IMU (Inertial Measurement Unit) data to determine a precise position of devices
  15. Outside-in: Cameras are fixed to the environment.

实现Q2B案例可能涉及到的技术

  1. Pattern Recognition / Image Classification
  2. Motion Analysis
  3. Scene Understanding
    其中包含了一些必要的步骤:
  4. Image acquisition
  5. Pre-processing and enhancement (scale, rotate and filter)
  6. Feature extraction
  7. Detection / Segmentation by ML or DL

PPT中提到的问题:Topic5 p6

  1. What is the rationale for the necessity of a three dimensional workspace within this application?
    在这个应用程序中需要三维工作空间的基本原理是什么?
    答:如果不是针对专家/教授的话,可能需要使用3D进行展示。相反,对于专家而言,往往使用2D即可。

  2. What underlies the need for an immersive environment in the context of this application?
    在这个应用程序的上下文中,需要沉浸式环境的基础是什么?
    答:不是所有人都喜欢沉浸式场景,他们认为沉浸式场景有些恐怖,不可控。

  3. What is the impetus for integrating motion-sensing capabilities into this application?
    将动作感应功能集成到这个应用程序中的动力是什么?
    答:越多的动作能检测到,就能够提供越真实的场景,但需要更高的算力和资金。

  4. What factors have contributed to the absence of such a solution in the existing marketplace?
    是什么因素导致了现有市场中缺乏这样的解决方案?

  5. Why is our organization particularly suited to address this gap?
    为什么我们的组织特别适合解决这个差距?
    答:例如做一个关于医疗的应用,需要邀请医生和专家共同完成这个项目。因为我们缺乏专业知识。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mfbz.cn/a/589055.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

四信数字孪生水库解决方案,加快构建现代化水库运行管理矩阵

近年&#xff0c;水利部先后出台《关于加快构建现代化水库运行管理矩阵的指导意见》与《构建现代化水库运行管理矩阵先行先试工作方案》等文件&#xff0c;明确总体要求及试点水库、先行区域建设技术要求等&#xff0c;为全面推进现代化水库运行管理矩阵建设工作提供依据。 《2…

自定义Maven项目模板Archetype,快速创建模板项目。

自定义Archetype 创建好模板项目&#xff0c;在项目根目录执行命令对模板做出响应调整将模板安装到本地、远程仓库使用自定义模板 创建好模板项目&#xff0c;在项目根目录执行命令 mvn archetype:create-from-project对模板做出响应调整 如果是多模块项目&#xff0c;可能需…

【数据结构】:链表的带环问题

&#x1f381;个人主页&#xff1a;我们的五年 &#x1f50d;系列专栏&#xff1a;数据结构 &#x1f337;追光的人&#xff0c;终会万丈光芒 前言&#xff1a; 链表的带环问题在链表中是一类比较难的问题&#xff0c;它对我们的思维有一个比较高的要求&#xff0c;但是这一类…

【模板】前缀和

原题链接&#xff1a;登录—专业IT笔试面试备考平台_牛客网 目录 1. 题目描述 2. 思路分析 3. 代码实现 1. 题目描述 2. 思路分析 前缀和模板题。 前缀和中数组下标为1~n。 前缀和&#xff1a;pre[i]pre[i-1]a[i]; 某段区间 [l,r]的和&#xff1a;pre[r]-pre[l-1] 3.…

【C语言】atoi和atof函数的使用

人生应该树立目标&#xff0c;否则你的精力会白白浪费。&#x1f493;&#x1f493;&#x1f493; 目录 •&#x1f319;知识回顾 &#x1f34b;知识点一&#xff1a;atoi函数的使用和实现 • &#x1f330;1.函数介绍 • &#x1f330;2.代码演示 • &#x1f330;3.atoi函数的…

【高校科研前沿】云南大学陈峰研究员联合多家单位在Sci. Bull发文揭示了明末特大干旱背景下北京降水变化及其以太平洋海温变化为主导的驱动新机制

文章简介 论文名称&#xff1a;Coupled Pacific Rim megadroughts contributed to the fall of the Ming Dynasty’s capital in 1644 CE&#xff08;环太平洋地区的特大干旱影响了公元 1644 年明朝的灭亡&#xff09; 第一作者及通讯作者&#xff1a;陈峰研究员&王涛研究…

38-4 Web应用防火墙 - WAF的使用及规则

准备:38-3 Web应用防火墙 - 安装配置WAF-CSDN博客 WAF的使用 启动 Nginx /usr/local/nginx/sbin/nginx 为了测试未启动 ModSecurity 时的访问效果,我们可以模拟攻击。要查看当前虚拟机的 IP 地址,可以使用命令 ifconfig 浏览器中访问ip,如果要在真实机中访问就需要关闭…

Linux 学习 --- 编辑 vi 命令

1、vi 基本概念&#xff08;了解&#xff09; 基本上 vi 可以分为三种状态&#xff0c;分别是命令模式 (command mode)、插入模式 (Insert mode) 和底行模式 (last line mode)&#xff0c;各模式的功能区分如下: 命令行模式 command mode&#xff09;  控制屏幕光标的移动&a…

c3 笔记7 css基本语法

相关内容&#xff1a;字体、段落、词间距、文字效果&#xff08;对齐、上下标、阴影&#xff09;、背景图、背景渐变、…… 单位pt与px的差别pt是印刷使用的字号单位&#xff0c;不管屏幕分辨率是多少&#xff0c;打印到纸上看起来都是相同的&#xff0c;lot的长度是0.01384英寸…

[PS小技能学习]抠图和切图

详情见视频教程&#xff1a;PS小技巧--抠图与切图 今天我们来学习如何使用PS对表情包合辑进行抠图和裁剪保存 1、首先&#xff0c;将图片导入&#xff0c;双击图层新建一个图层 2、然后点击工具栏的魔棒工具&#xff0c;再点击顶部菜单栏的添加到选区 3、点击图片的空白区域即…

《QT实用小工具·五十一》带动画的 CheckBox

1、概述 源码放在文章末尾 该项目实现了带动画效果的多选框&#xff0c;鼠标放在上面或者选中都会呈现炫酷的动画效果&#xff0c;demo演示如下&#xff1a; 项目部分代码如下所示&#xff1a; #ifndef LINEARCHECKBOX_H #define LINEARCHECKBOX_H#include <QCheckBox> …

C/C++不定参函数使用

C语言中不定参函数的使用和访问 例子 例如&#xff0c;这里想写一个打印的函数&#xff0c;但是参数并不确定该怎么办呢&#xff0c;这就要用到不定参函数 #include<stdarg.h> void printNum(int count,...){va_list ap;va_start(ap,count);//获取指定参数的起始地址&…

【CTF Reverse】XCTF GFSJ0492 insanity Writeup(反汇编+字符串搜索)

insanity 菜鸡觉得前面的题目太难了&#xff0c;来个简单的缓一下 解法 拖进 Exeinfo PE 中分析。 -> Compiler : GCC: (Debian 4.4.7-2) 4.4.7用 IDA 打开。 按 shift F12 打开 String 页面。找到 flag。 Flag 9447{This_is_a_flag}声明 本博客上发布的所有关于网络攻…

Java创建并遍历N叉树(前序遍历)

力扣 title589&#xff1a;N叉树的前序遍历 给定一个 n 叉树的根节点 root &#xff0c;返回 其节点值的 前序遍历 。 n 叉树 在输入中按层序遍历进行序列化表示&#xff0c;每组子节点由空值 null 分隔&#xff08;请参见示例&#xff09;。 思路&#xff1a; 1.初始化时…

电脑自带dll修复在哪里,使用dll修复工具解决dll问题

在我们日常与电脑相伴的工作与学习过程中&#xff0c;我们经常会遇到一些错误提示&#xff0c;其中最常见的就是“无法找到.dll”或“找不到.dll文件”。这种情况通常是由于dll文件丢失或损坏导致的。dll文件是动态链接库文件&#xff0c;它包含了许多程序运行所需的函数和资源…

Ant Design助力:实现用户列表的优雅展示与管理

文章目录 概要前端讲解登录组件注册组件用户列表组件 后端讲解连接数据库db.js路由routes.jsexpress应用app.js 启动项目小结 概要 在上一篇博客&#x1f6aa;中&#xff0c;我们已经成功实现了登录注册系统的基本功能。现在&#xff0c;我们将进一步完善系统&#xff0c;实现…

File contains parsing errors: file:///etc/yum.repos.d/nginx.repo报错解决,文件配置出现问题

执行yum指令出现以下错误&#xff1a; 解决方案&#xff1a;yum的配置文件出现问题&#xff0c; 先删除yum.repos.d目录下所有文件 rm -f /etc/yum.repos.d/* 然后重新下载阿里的资源 wget -O /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-7.…

您想拥有一个属于你自己的GPT-3.5-turbo吗?来吧,开始行动起来吧!!!

背景: 在2024年4月的时候,openai公司宣布GPT-3.5-turbo免费使用,无需注册!!! 多么激动人心的消息啊!!! 但是,如何你想申请一个openai api key的时候,发现调用失败,直接报Rate Limit!!! 无语了!!! 不过没关系,我们另辟捷径!!! 下面就开始我的表演啦…

python可视化学习笔记折线图问题-起始点问题

问题描述&#xff1a; 起始点的位置不对 from pyecharts.charts import Line import pyecharts.options as opts # 示例数据 x_data [1,2,3,4,5] y_data [1, 2, 3, 4, 5] # 创建 Line 图表 line Line() line.add_xaxis(x_data) line.add_yaxis("test", y_data) li…

【全网最全】2024五一数学建模B题论文+前四问代码多种保奖进阶思路+建模过程+代码+数据处理+论文写作技巧等(后续会更新)

一定要点击文末的卡片&#xff0c;那是获取资料的入口&#xff01; 点击链接加入群聊【2024五一数学建模】&#xff1a;http://qm.qq.com/cgi-bin/qm/qr?_wv1027&khoTDlhAS5N_Ffp-vucfG5WjeeJFxsWbz&authKey7oCSHS25VqSLauZ2PpiewRQ9D9PklaCxVS5X6i%2BAkDrey992f0t15…
最新文章