[go: up one dir, main page]

CN120303633A - 人工现实场景合成器 - Google Patents

人工现实场景合成器 Download PDF

Info

Publication number
CN120303633A
CN120303633A CN202380083466.XA CN202380083466A CN120303633A CN 120303633 A CN120303633 A CN 120303633A CN 202380083466 A CN202380083466 A CN 202380083466A CN 120303633 A CN120303633 A CN 120303633A
Authority
CN
China
Prior art keywords
scene
avatar
user
editing
stored
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
CN202380083466.XA
Other languages
English (en)
Inventor
迈克尔·安德鲁·霍华德
格雷厄姆·拉特里奇
查德·泰勒
弗朗切斯科·卡鲁奇
蒂莫西·雅各比
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Meta Platforms Technologies LLC
Original Assignee
Meta Platforms Technologies LLC
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Meta Platforms Technologies LLC filed Critical Meta Platforms Technologies LLC
Publication of CN120303633A publication Critical patent/CN120303633A/zh
Pending legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/011Arrangements for interaction with the human body, e.g. for user immersion in virtual reality
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T13/00Animation
    • G06T13/203D [Three Dimensional] animation
    • G06T13/403D [Three Dimensional] animation of characters, e.g. humans, animals or virtual beings
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T19/00Manipulating 3D models or images for computer graphics
    • G06T19/20Editing of 3D images, e.g. changing shapes or colours, aligning objects or positioning parts
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V40/00Recognition of biometric, human-related or animal-related patterns in image or video data
    • G06V40/20Movements or behaviour, e.g. gesture recognition
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2219/00Indexing scheme for manipulating 3D models or images for computer graphics
    • G06T2219/20Indexing scheme for editing of 3D models
    • G06T2219/2004Aligning objects, relative positioning of parts
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2219/00Indexing scheme for manipulating 3D models or images for computer graphics
    • G06T2219/20Indexing scheme for editing of 3D models
    • G06T2219/2021Shape modification

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • Architecture (AREA)
  • Software Systems (AREA)
  • Computer Hardware Design (AREA)
  • Computer Graphics (AREA)
  • Human Computer Interaction (AREA)
  • Health & Medical Sciences (AREA)
  • Multimedia (AREA)
  • Social Psychology (AREA)
  • Psychiatry (AREA)
  • General Health & Medical Sciences (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Processing Or Creating Images (AREA)

Abstract

本公开的各方面涉及合成可编辑的人工现实场景。实施方式包括用于生成可编辑的人工现实场景的合成器工具。例如,场景创建者可以生成人工现实场景并发布该场景,使得其他用户可以访问和/或编辑该场景。人工现实场景可以包括场景组件,诸如化身、虚拟对象、运动动态、背景、摄像头视角等。权限管理器的实施方式可以对所存储的人工现实场景的访问和/或编辑权限进行管理。例如,场景创建者可以定义可对原始场景进行访问和/或编辑的用户范围,和/或定义可编辑的场景组件。在一些实施方式中,多个用户可以对原始人工现实场景进行多次编辑,从而生成该原始场景的多个编辑版本。

Description

人工现实场景合成器
技术领域
本公开涉及合成可编辑的人工现实场景。
背景技术
人工现实系统越来越受到用户的欢迎,而且这种增长预计将加速。人工现实还为社交交互提供了新的技术。例如,现代互联网用户共享和消费大量的社交媒体内容,诸如图像和视频等。然而,传统系统缺乏直观和实用的机制来创建、编辑和/或共享利用人工现实环境的内容。对人工现实的更直观且更逼真的感受可以增强用户对此类内容的体验。
发明内容
根据本公开的第一方面,提供了一种用于对所存储的三维(3D)人工现实(extrareality,XR)场景进行编辑的方法,该方法包括:访问所存储的具有场景组件的3D XR场景,该场景组件至少包括化身、化身运动动态和XR环境,其中执行3D XR场景会生成该化身根据XR环境中定义的化身运动动态而移动的三维描绘;接收对3D XR场景的所述场景组件的一个或多个编辑,其中该一个或多个编辑至少包括用替代化身来替换化身;以及存储经编辑的3D XR场景,其中执行经编辑的3D XR场景会生成该替代化身根据化身运动动态而在XR环境内移动的三维描绘。
在一些实施例中,3D XR场景的场景组件还包括一个或多个虚拟对象和一个或多个虚拟对象运动动态参数,并且通过执行3D XR场景而生成的三维描绘包括该一个或多个虚拟对象根据该一个或多个虚拟对象运动动态参数而在XR环境内移动。
在一些实施例中,其中编辑3D XR场景的场景组件还包括用一个或多个替代虚拟对象来替换一个或多个虚拟对象,并且通过执行经编辑的3D XR场景而生成的三维描绘包括该一个或多个替代虚拟对象根据该一个或多个虚拟对象运动动态参数而在XR环境内移动。
在一些实施例中,编辑3D XR场景的场景组件还包括编辑化身运动动态,并且其中通过执行经编辑的3D XR场景而生成的三维描绘包括该替代化身根据经编辑的化身运动动态而在XR环境内移动。
在一些实施例中,编辑化身运动动态还包括:经由一个或多个传感器捕获用户运动,其中该一个或多个传感器中的至少一个传感器包括摄像头;以及将用户运动转换为化身运动动态。
在一些实施例中,编辑3D XR场景的场景组件还包括编辑化身运动动态,其中编辑化身运动动态包括:经由一个或多个传感器捕获用户运动,其中该一个或多个传感器中的至少一个传感器包括摄像头;以及将用户运动转换为化身运动动态。
在一些实施例中,编辑3D XR场景的场景组件还包括添加一个或多个附加场景组件,并且附加场景组件包括附加化身、附加虚拟对象或它们的任何组合中的一者或多者。
在一些实施例中,所存储的3D XR场景是由创建者用户创建的,该创建者用户定义了对所存储的3D XR场景的编辑权限,并且访问所存储的3D XR场景还包括:接收来自与创建者用户不同的其他用户的对所存储的3D XR场景进行编辑的请求;以及验证其他用户包括对所存储的3D XR场景进行编辑的编辑权限,其中所存储的3D XR场景响应于该验证而被访问。
在一些实施例中,编辑权限包括与社交图谱相关的用户范围,并且当该其他用户被包括在与社交图谱相关的用户范围中时,该其他用户的编辑权限被验证。
在一些实施例中,所存储的3D XR场景是由创建者用户创建的,创建者用户为所存储的3D XR场景的至少一个场景组件定义了至少一个编辑参数,并且其中该编辑参数的第一值允许编辑、替换或删除该至少一个场景组件,并且编辑参数的第二值限制编辑、替换或删除该至少一个场景组件。
在一些实施例中,该至少一个场景组件包括化身,并且接收对该3D XR场景的场景组件的一个或多个编辑还包括:验证化身的编辑参数允许用替代化身来替换该化身。
在一些实施例中,该方法还包括在社交媒体平台上发布经编辑的3D XR场景,其中该发布允许多个社交媒体平台用户执行经编辑的3D XR场景。
在一些实施例中,化身运动动态至少包括化身姿态和化身表情。
根据本公开的第二方面,提供了一种用于对所存储的人工现实(XR)场景进行编辑的计算系统,该计算系统包括:一个或多个处理器;以及一个或多个存储器,该一个或多个存储器存储有指令,这些指令在被该一个或多个处理器执行时,使计算系统执行过程,该过程包括:存储具有场景组件的XR场景,这些场景组件至少包括化身、化身运动动态和XR环境,其中XR场景是由定义编辑权限的创建者用户创建的,并且执行XR场景会生成该化身根据化身运动动态而在XR环境内移动的三维描绘;接收来自创建者用户不同的其他用户的对所存储的XR场景进行编辑的请求;验证该其他用户包括对所存储的XR场景进行编辑的编辑权限;响应于验证访问所述存储的XR场景;接收对XR场景的场景组件的一个或多个编辑,其中该一个或多个编辑至少包括用替代化身来替换化身;以及存储经编辑的XR场景,其中执行经编辑的XR场景会生成该替代化身根据化身运动动态而在XR环境内移动的三维描绘。
在一些实施例中,XR场景的场景组件还包括一个或多个虚拟对象和一个或多个虚拟对象运动动态参数,并且通过执行XR场景而生成的三维描绘包括该一个或多个虚拟对象根据该一个或多个虚拟对象运动动态参数而在XR环境内移动。
在一些实施例中,其中编辑XR场景的场景组件还包括用一个或多个替代虚拟对象来替换该一个或多个虚拟对象,并且通过执行经编辑的XR场景而生成的三维描绘包括该一个或多个替代虚拟对象根据该一个或多个虚拟对象运动动态参数而在XR环境内移动。
在一些实施例中,编辑XR场景的场景组件还包括编辑化身运动动态,并且其中通过执行经编辑的XR场景而生成的三维描绘包括该替代化身根据经编辑的化身运动动态而在XR环境内移动。
在一些实施例中,编辑XR场景的场景组件还包括编辑化身运动动态,其中编辑化身运动动态还包括:经由一个或多个传感器捕获用户运动,其中该一个或多个传感器中的至少一个传感器包括摄像头;以及将用户运动转换为化身运动动态。
在一些实施例中,编辑权限包括与社交图谱相关的用户范围,并且当其他用户被包括在与社交图谱相关的用户范围中时,该其他用户的编辑权限被验证。
在一些实施例中,创建者用户为所存储的XR场景的至少一个场景组件定义了至少一个编辑参数,并且其中该编辑参数的第一值允许编辑、替换或删除该至少一个场景组件,并且该编辑参数的第二值限制编辑、替换或删除该至少一个场景组件。
根据本公开的第三方面,提供了一种计算机可读存储介质,该计算机可读存储介质存储有指令,这些指令在被计算系统执行时,使得计算系统执行用于对所存储的人工现实(XR)场景进行编辑的过程,该过程包括:存储具有场景组件的XR场景,该场景组件至少包括化身、化身运动动态和XR环境,其中XR场景是由定义编辑权限的创建者用户创建的,并且执行XR场景会生成该化身根据化身运动动态而在XR环境内移动的三维描绘;接收来自与创建者用户不同的其他用户的对所存储的XR场景进行编辑的请求;验证该其他用户包括对所存储的XR场景进行编辑的编辑权限;响应于验证而访问所存储的XR场景;接收对XR场景的场景组件的一个或多个编辑,其中该一个或多个编辑至少包括用替代化身来替换化身;以及存储经编辑的XR场景,其中执行经编辑的XR场景会生成该替代化身根据化身运动动态而在XR环境内移动的三维描绘。
根据本公开的第四方面,提供了一种计算机程序,该计算机程序包括指令,这些指令在该程序被计算机执行时,使计算机执行本公开的第一方面的方法。
将认识到的是,本文中描述为适合于结合到本公开的一个或多个方面或实施例中的任何特征旨在在本公开的任何和所有的方面和实施例中具有普遍性。本领域技术人员可以根据本公开的说明书、权利要求和附图来理解本公开的其它方面。上述总体描述和以下详细描述仅是示例性和说明性的,而不是对权利要求的限制。
附图说明
图1是示出了本技术一些实施方式可以在其上运行的多个设备的概况的框图。
图2A是示出了可以在本技术一些实施方式中使用的虚拟现实头戴式视图器(headset)的线示图。
图2B是示出了可以在本技术一些实施方式中使用的混合现实头戴式视图器的线示图。
图2C是示出了多个控制器的线示图,在一些实施方式中,用户可以单手或双手握持这些控制器以与人工现实环境交互。
图3是示出了本技术一些实施方式可以在其中运行的环境的概况的框图。
图4是示出了在一些实施方式中可以在采用了所公开的技术的系统中使用的多个部件的框图。
图5是具有多个用户化身的示例人工现实环境。
图6A是具有用户化身和虚拟对象的示例人工现实场景。
图6B是用于合成可编辑的人工现实环境场景的示例工具。
图7是用于合成和编辑人工现实场景的系统图。
图8是示出了在本技术一些实施方式中的用于合成可编辑的人工现实场景的过程的流程图。
图9是示出了在本技术一些实施方式中的用于编辑所存储的人工现实场景的过程的流程图。
通过结合附图参考以下具体实施方式,可以更好地理解在此所介绍的各技术,在附图中,相似的附图标记指代相同的元件或功能上相似的元件。
具体实施方式
本公开的各方面涉及合成可编辑的人工现实场景。人工现实场景可以包括组件,这些组件例如为一个或多个化身、一个或多个虚拟对象、背景、音频、照明、摄像头/观看视角、该一个或多个化身和/或该一个或多个虚拟对象的运动动态、以及任何其它合适的场景组件。人工现实场景可以包括该一个或多个化身和/或该一个或多个虚拟对象在所定义的背景内从摄像头/观看视角的动画(诸如,移动、表情、舞蹈和其它合适的动画)。在一些示例中,人工现实场景还可以包括在动画期间播放的音频或语言的文本表示。
可以将人工现实场景存储为数据结构、数据块(blob)或以任何其它合适的方式存储。执行所存储的人工现实场景可以生成化身/虚拟对象动画在背景内从摄像头/观看视角的二维显示或三维显示,其可以包括音频输出。例如,人工现实系统可以向用户提供三维显示(并输出音频)。在其它示例中,其它合适的客户端设备(例如,膝上型计算机、智能手机、具有显示器的设备等)可以向一个或多个用户提供二维显示、三维显示和/或音频。
示例人工现实场景是用户的化身在包括多个虚拟对象的三维人工现实环境中演奏虚拟乐器。场景组件可以包括:用户化身(例如,姿态、移动、表情等)、虚拟乐器(例如,状态、动画)、一个或多个摄像头位置和照明、音频、三维环境(例如,房间、背景、室外环境等)以及多个虚拟对象。人工现实场景的示例化身包括三维化身、二维化身或任何其它合适的虚拟用户呈现。示例虚拟对象包括三维对象模型、二维图像或面板、字母数字文本、视频或其它合适的虚拟对象。示例背景包括二维图像、三维模型、具有动画的背景以及任何其它合适的背景。
各实施方式包括用于创建和编辑人工现实场景的合成器(composer)工具。例如,场景组件(例如,化身、虚拟对象、背景、三维环境、音频、运动动态等)的库可以被预定义以支持用户定制人工现实场景。在一些实施方式中,可以对包括一个或多个虚拟对象、一个或多个化身、背景和/或音频的人工现实环境进行记录,并且可以从所记录的人工现实环境中识别人工现实场景组件。
各实施方式可以存储使用合成器工具生成和/或编辑的人工现实场景。例如,可以使人工现实场景的组件序列化以生成如下的一个或多个数据结构:该一个或多个数据结构支持存储、共享和执行虚拟现实场景。在一些示例中,可以将所存储的人工现实场景发布到例如社交应用,或发布到允许多个用户访问所发布的场景的任何其它合适的数字位置。用户可以通过发布(publication)来发现、共享、访问和执行人工现实场景。
在一些示例中,生成原始人工现实场景的用户可以是创建者用户,该创建者用户设置对原始场景的访问权限和/或编辑权限。例如,创建者用户可以(例如,通过向社交应用发布)共享人工现实场景,和/或允许一个或多个其他用户编辑该场景。示例访问限制和/或编辑限制包括:访问权限,所述访问权限定义哪些用户可以查看/执行所存储的人工现实场景;编辑权限,所述编辑权限定义哪些用户可以编辑所存储的人工现实场景;对迭代编辑的次数的限制,该迭代编辑的次数定义了可对所存储的人工现实场景执行多少次连续编辑;对所存储的人工现实场景的不同编辑版本的总数的限制;对所存储的人工现实场景的各个组件的限制,所述限制定义了该各个组件是否可编辑;或它们的任何组合。
在一些实施方式中,一旦创建者用户共享人工现实场景,具有编辑权限的编辑用户就可以(例如,通过合成器工具)加载和编辑该场景。例如,当创建者用户允许时,编辑用户可以使用合成器工具执行以下编辑中的一者或多者:A)用编辑用户的化身替换创建者用户的化身;B)将编辑用户的化身添加到与创建者用户的化身相邻的构图中;C)替换或删除多个虚拟对象中的任何虚拟对象;D)改变、替换或编辑三维环境,诸如房间视觉、背景、照明等;E)改变、替换或编辑音频;F)改变或编辑摄像头位置;或G)这些的任何组合。
在一些实施方式中,场景创建者可以共享场景的各部分,诸如照明条件、使用的实体或摄像头位置。然后,其他用户可以获取(例如,来自在线场景库、社交媒体源等的)这些场景部分,并将这些场景部分并入他们自己的场景中。
在一些实施方式中,编辑用户然后可以存储和发布经编辑的场景。例如,可以将经编辑的场景发布到社交应用、和可由多个用户访问的数字位置等。然后,基于该发布,其他用户可以发现、共享、访问和执行经编辑的人工现实场景。在一些实施方式中,另一用户可以对经编辑的人工现实场景本身进行编辑,以生成人工现实场景的另一经编辑的版本。相应的,原始人工现实场景可以经历由多个编辑用户进行的多次迭代编辑。
各实施方式允许通过可编辑的和可发布的人工现实场景进行社交交互。创建者用户可以通过访问和/或编辑许可来控制原始人工现实场景的社交交互的水平。当用户通过多次编辑/迭代编辑来生成原始人工现实场景的多个经编辑的版本时,该多个版本可以共享一些公共线程(common thread)(例如,背景、虚拟对象、化身、运动动态、音频等)。考虑到该公共线程,编辑、发布和共享该多个版本的用户可以通过他们的人工现实场景的版本之间的相似性来实现一定水平的连接性,并通过他们的人工现实场景的版本之间的差异来传达个性。
所公开的技术的各实施例可以包括人工现实系统或结合人工现实系统来实现。人工现实或超现实(XR)是在呈现给用户之前已经以某种方式进行了调整的现实形式,人工现实或超现实例如可以包括虚拟现实(virtual reality,VR)、增强现实(augmentedreality,AR)、混合现实(mixed reality,MR)、混合现实(hybrid reality)、或它们的某种组合和/或衍生物。人工现实内容可以包括完全生成的内容或与所采集的内容(例如,真实世界的照片)相结合的生成的内容。人工现实内容可以包括视频、音频、触觉反馈或它们的某种组合,以上中的任何一种都可以在单个通道或多个通道中被呈现(例如,给观看者带来三维效果的立体视频)。此外,在一些实施例中,人工现实可以与应用、产品、附件、服务或它们的某种组合相关联,这些应用、产品、附件、服务或它们的某种组合例如用于在人工现实中创建内容,和/或在人工现实中使用(例如,在人工现实中执行活动)。提供人工现实内容的人工现实系统可以在各种平台上实现,这些平台包括连接到主计算机系统的头戴式显示器(head-mounted display,HMD)、独立的HMD、移动设备或计算系统、“洞穴式(cave)”环境投影系统或其它投影系统、或能够向一位或多位观看者提供人工现实内容的任何其它硬件平台。
如本文所使用的“虚拟现实”或“VR”是指这样的沉浸式体验:在该沉浸式体验中,用户的视觉输入由计算系统控制。“增强现实”或“AR”是指这样的系统:在这样的系统中,用户在真实世界的图像通过计算系统之后,观看这些真实世界的图像。例如,在背面具有摄像头的平板电脑可以采集真实世界的图像,并且随后在该平板电脑的与该摄像头相对的一侧的屏幕上显示所述图像。平板电脑可以在所述图像通过系统时,(例如通过添加虚拟对象)处理并且调整或“增强”所述图像。“混合现实”或“MR”是指这样的系统:在这样的系统中,进入用户眼睛的光部分地由计算系统生成,且部分地由真实世界中的对象反射出的光构成。例如,MR头戴式视图器可以被成形为一副具有透传式显示器的眼镜,该透传式显示器允许来自真实世界的光穿过一波导,该波导同时出射来自该MR头戴式视图器中的投影仪的光,从而允许MR头戴式视图器呈现与用户可看到的真实对象相混合的虚拟对象。如本文所使用的,“人工现实”、“超现实”或“XR”是指以下中的任何一者:VR、AR、MR、或它们的任何组合或混合。
尽管一些传统软件允许定制可共享媒体(诸如,图像和/或视频),但是该传统软件不能将人工现实元素结合到这些定制中。此外,该传统软件也不能为所有者或发起用户(originating user)提供访问和编辑控制。因此,通常可以在没有用户定义的控制机制的情况下,对用户的可共享媒体进行操纵。
各实施方式包括用于生成可编辑的人工现实场景的合成器工具。例如,发起用户或创建者用户可以生成原始人工现实场景并发布该场景,使得其他用户可以访问和/或编辑该场景。人工现实场景可以包括三维组件,诸如化身、虚拟对象、沉浸式背景、摄像头视角等。因此,合成器工具支持具有人工现实内容的可编辑场景。
权限管理器的实施方式可以对人工现实场景的访问和/或编辑权限进行管理。例如,人工现实场景的创建者用户可以定义可对用户的原始场景进行访问和/或编辑的用户范围,和/或定义可编辑的场景组件。因此,各实施方式允许所有者/发起用户控制如何访问和编辑原始人工现实场景。如本文所使用的,“创建者用户”可以是最初创建场景或场景组件的用户,或者是从原始创建者获得对该场景或场景组件的所有权的用户。
以下参考附图更详细地论述了数个实施方式。图1是示出了所公开技术一些实施方式可在其上运行的多个设备的概况的框图。这些设备可以包括计算系统100的如下硬件部件:这些硬件部件合成可编辑的人工现实场景。在各种实施方式中,计算系统100可以包括单个计算设备103或多个计算设备(例如,计算设备101、计算设备102和计算设备103),所述多个计算设备通过有线通道或无线通道通信,以分发处理并共享输入数据。在一些实施方式中,计算系统100可以包括独立头戴式视图器,该独立头戴式视图器能够在无需外部处理或外部传感器的情况下,向用户提供计算机创建或增强的体验。在其它实施方式中,计算系统100可以包括多个计算设备,该多个计算设备例如为头戴式视图器和核心处理部件(例如控制台、移动设备或服务器系统),其中,一些处理操作在头戴式视图器上执行而其它处理操作被转移到核心处理部件。以下结合图2A和图2B描述了示例头戴式视图器。在一些实施方式中,位置数据和环境数据可仅由结合在头戴式视图器设备中的传感器收集,而在其它实施方式中,多个非头戴式视图器计算设备中的一个或多个可以包括可追踪环境数据或位置数据的传感器部件。
计算系统100可以包括一个或多个处理器110(例如,中央处理单元(centralprocessing unit,CPU)、图形处理单元(graphical processing unit,GPU)、全息处理单元(holographic processing unit,HPU)等)。处理器110可以是单个处理单元或多个处理单元,所述多个处理单元位于一设备中或分布在多个设备上(例如,分布在计算设备101至103中的两个或更多个计算设备上)。
计算系统100可以包括一个或多个输入设备120,该一个或多个输入设备向处理器110提供输入,从而向这些处理器通知动作。这些动作可以由硬件控制器传递,该硬件控制器对从输入设备接收的信号进行解译,并使用通信协议向处理器110传送信息。每个输入设备120例如可以包括鼠标、键盘、触摸屏、触摸板、可穿戴输入设备(例如,触觉手套、手镯、戒指、耳环、项链、手表等)、摄像头(或其它基于光的输入设备,例如红外传感器)、传声器、或其它用户输入设备。
处理器110可以例如通过使用内部总线或外部总线、或无线连接而耦接到其它硬件设备,上述总线例如为:外设组件互连标准(PCI)总线、小型计算机系统接口(SCSI)总线。处理器110可以与用于各设备(例如,显示器130)的硬件控制器通信。显示器130可以用于显示文本和图形。在一些实施方式中,显示器130包括输入设备,例如当该输入设备是触摸屏或配备有眼动方向监测系统时,该输入设备作为显示器的一部分。在一些实施方式中,显示器与输入设备分开。显示设备的示例为:液晶显示器(liquid crystal display,LCD)显示屏、发光二极管(LED)显示屏、投影显示器、全息显示器、或增强现实显示器(例如,平视显示设备或头戴式设备)等。其它输入/输出(I/O)设备140也可以耦接到处理器,其它I/O设备例如为网络芯片或网卡、视频芯片或视频卡、音频芯片或音频卡、通用串行总线(USB)、火线或其它外部设备、摄像头、打印机、扬声器、光盘只读存储器(CD-ROM)驱动器、数字视频光盘(DVD)驱动器、磁盘驱动器等。
在一些实施方式中,来自I/O设备140(例如摄像头、深度传感器、惯性运动单元(IMU)传感器、GPS单元、激光雷达(LiDAR)或其它飞行时间传感器等)的输入可以被计算系统100用于识别和绘制用户的物理环境,同时追踪用户在该环境内的位置。即时定位与地图构建(simultaneous localization and mapping,SLAM)系统可以生成一区域(其可以是房间、建筑物、室外空间等)的地图(例如,拓扑、网格等),和/或获取先前由计算系统100或已绘制了该区域的另一计算系统所生成的地图。该SLAM系统可以基于诸如GPS数据等因素来追踪该区域内的用户,将所识别的对象和结构与所绘制的对象和结构相匹配,监测加速度和其它位置变化等。
计算系统100可以包括这样的通信设备:该通信设备能够与其它本地计算设备或网络节点无线地通信或基于有线地通信。该通信设备可以例如使用传输控制协议/网际协议(TCP/IP协议)通过网络与另一设备或服务器通信。计算系统100可以使用该通信设备在多个网络设备上分发操作。
处理器110可以访问存储器150,该存储器可以被包含在计算系统100的多个计算设备中的一个计算设备上,或者可以分布在计算系统100的多个计算设备上、或多个其它外部设备上。存储器包括用于易失性存储或非易失性存储的一个或多个硬件设备,并且可以包括只读存储器和可写存储器这两者。例如,存储器可以包括以下中的一者或多者:随机存取存储器(random access memory,RAM)、各种高速缓冲存储器、CPU寄存器、只读存储器(read-only memory,ROM)和可写非易失性存储器,该可写非易失性存储器例如为:闪存、硬盘驱动器、软盘、光盘(CD)、DVD、磁存储设备、和磁带驱动器等。存储器不是脱离底层硬件的传播信号;因此存储器是非暂态的。存储器150可以包括程序存储器160,该程序存储器160存储程序和软件,上述程序和软件例如为操作系统162、场景合成器164、和其它应用程序166。存储器150还可以包括数据存储器170,该数据存储器可以包括例如可被提供给程序存储器160或计算系统100的任何元件的化身数据(例如,化身结构、姿态、状态等)、虚拟对象数据(例如,虚拟对象结构、移动等)、图像、音频、和/或视频文件、三维数据模型、配置数据、设置、用户选项或偏好等。
一些实施方式可以与许多其它计算系统环境或配置一起运行。可适用于与该技术一起使用的计算系统、环境和/或配置的示例包括但不限于:XR头戴式视图器、个人计算机、服务器计算机、手持式设备或膝上型设备、蜂窝电话、可穿戴电子设备、游戏控制台、平板设备、多处理器系统、基于微处理器的系统、机顶盒、可编程消费类电子产品、网络个人计算机(personal computer,PC)、小型计算机、大型计算机、或包括上述多个系统或设备中的任何系统或设备的分布式计算环境等。
图2A是根据一些实施例的虚拟现实头戴式显示器(HMD)200的线示图。HMD 200包括前部刚性体205和带210。前部刚性体205包括电子显示器245的一个或多个电子显示元件、惯性运动单元(inertial motion unit,IMU)215、一个或多个位置传感器220、定位器225、以及一个或多个计算单元230。位置传感器220、IMU 215和计算单元230可以位于HMD200内部,并且可以对用户不可见。在各种实施方式中,IMU 215、位置传感器220和定位器225可以以三自由度(three degrees of freedom,3DoF)或六自由度(six degrees offreedom,6DoF)来追踪HMD 200在真实世界中和人工现实环境中的移动和位置。例如,定位器225可以发射红外光束,这些红外光束在HMD 200周围的真实对象上产生光点。作为另一示例,IMU 215例如可以包括:一个或多个加速度计;一个或多个陀螺仪;一个或多个磁力计;一个或多个其它非基于摄像头的位置、力或方位传感器;或它们的组合。与HMD 200集成在一起的一个或多个摄像头(未示出)可以检测光点。HMD 200中的计算单元230可以使用检测到的光点,来推测HMD 200的位置和移动、以及识别HMD 200周围的真实对象的形状和位置。
电子显示器245可以与前部刚性体205集成在一起,并且可以如计算单元230所指示的向用户提供图像光。在各种实施例中,电子显示器245可以是单个电子显示器或多个电子显示器(例如,用户的每只眼睛一个显示器)。电子显示器245的示例包括:液晶显示器(LCD)、有机发光二极管(organic light-emitting diode,OLED)显示器、有源矩阵有机发光二极管显示器(active-matrix organic light-emitting diode display,AMOLED)、包括一个或多个量子点发光二极管(quantum dot light-emitting diode,QOLED)子像素的显示器、投影仪单元(例如,微型LED、激光器(LASER)等)、某种其它显示器、或它们的某种组合。
在一些实施方式中,HMD 200可以耦接到诸如个人计算机(PC)(未示出)等核心处理部件和/或一个或多个外部传感器(未示出)。外部传感器可以(例如,经由从HMD 200发射的光)对HMD 200进行监测,PC可以使用该HMD结合来自IMU 215和位置传感器220的输出,来确定HMD 200的位置和移动。
图2B是混合现实HMD系统250的线示图,该混合现实HMD系统包括混合现实HMD 252和核心处理部件254。混合现实HMD 252和核心处理部件254可以经由如链路256所指示的无线连接(例如,60吉兆赫兹(GHz)链路)通信。在其它实施方式中,混合现实系统250仅包括头戴式视图器而没有外部计算设备,或者包括混合现实HMD 252与核心处理部件254之间的其它有线连接或无线连接。混合现实HMD 252包括透传式显示器258和框架260。框架260可以容纳各种电子部件(未示出),例如光投影仪(例如,激光器、LED等)、摄像头、眼动追踪传感器、微机电系统(MEMS)部件、网络部件等。
投影仪可以例如经由光学元件耦合到透传式显示器258,以向用户显示媒体。这些光学元件可以包括用于将来自投影仪的光引导到用户的眼睛的一个或多个波导组件、一个或多个反射器(reflector)、一个或多个透镜、一个或多个反射镜、一个或多个准直器、一个或多个光栅等。可以经由链路256将图像数据从核心处理部件254传输到HMD 252。HMD 252中的控制器可以将图像数据转换为来自投影仪的多个光脉冲,这些光脉冲可以经由光学元件作为输出光而传输到用户的眼睛。该输出光可以与穿过显示器258的光混合,从而允许输出光呈现以下虚拟对象:这些虚拟对象看起来如同其存在于真实世界中一样。
与HMD 200类似,HMD系统250也可以包括运动和位置追踪单元、摄像头、光源等,上述运动和位置追踪单元、摄像头、光源等允许HMD系统250例如以3DoF或6DoF追踪其自身,追踪用户的多个部位(例如,手部、脚部、头部、或其他身体部位),将虚拟对象绘制为在HMD252移动时看起来如同静止一样,以及使虚拟对象对手势和其它真实世界对象作出反应。
图2C示出了多个控制器270(包括控制器276A和276B),在一些实施方式中,用户可以单手或双手握持所述控制器以与由HMD 200和/或HMD 250呈现的人工现实环境进行交互。控制器270可以直接或经由外部设备(例如,核心处理部件254)与HMD通信。控制器可以具有其自己的IMU单元、位置传感器,和/或可以发射更远的光点。HMD 200或HMD 250、外部传感器或控制器中的传感器可以追踪这些控制器光点以确定控制器的位置和/或取向(例如,以3DoF或6DoF追踪控制器)。HMD 200中的计算单元230或核心处理部件254可以结合IMU输出和位置输出,使用该追踪来监测用户手部的位置和运动。控制器还可以包括各种按钮(例如,按钮272A至272F)和/或操纵杆(例如,操纵杆274A至274B),用户可以致动这些按钮和/或操纵杆来提供输入并与对象进行交互。
在各种实施方式中,HMD 200或HMD 250还可以包括附加子系统(例如,眼动追踪单元、音频系统、各种网络部件等),这些附加子系统用于监测对用户交互和意图的指示。例如,在一些实施方式中,代替控制器或除控制器之外,HMD 200或HMD 250中所包括的或来自多个外部摄像头的一个或多个摄像头可以监测用户的手部的位置和姿势,以确定姿势和其它手部运动和身体运动。作为另一示例,一个或多个光源可以对用户的一只或两只眼睛进行照射,并且HMD 200或HMD 250可以使用面向眼睛的摄像头来采集该光的反射以(例如,基于用户角膜周围的一组反射)确定眼睛位置,对用户的眼睛进行建模并确定凝视方向。
图3是示出了所公开技术的一些实施方式可在其中运行的环境300的概况的框图。环境300可以包括一个或多个客户端计算设备305A至305D,该一个或多个客户端计算设备的示例可以包括计算系统100。在一些实施方式中,该多个客户端计算设备中的一些客户端计算设备(例如,客户端计算设备305B)可以是HMD 200或HMD系统250。多个客户端计算设备305可以在网络环境中、使用通过网络330到一个或多个远程计算机(例如,服务器计算设备)的逻辑连接来运行。
在一些实施方式中,服务器310可以是边缘服务器,该边缘服务器接收多个客户端请求,并通过其它服务器(例如,服务器320A至320C)协调对这些请求的实现。服务器计算设备310和320可以包括计算系统,例如计算系统100。尽管每个服务器计算设备310和320在逻辑上被显示为单个服务器,但这些服务器计算设备均可以是以下分布式计算环境:该分布式计算环境包含位于同一物理位置处或地理上不同的物理位置处的多个计算设备。
客户端计算设备305、以及服务器计算设备310和320均可以充当一个或多个其它服务器/客户端设备的服务器或客户端。服务器310可以连接到数据库315。服务器320A至320C可以各自连接到对应的数据库325A至325C。如以上所论述的,每个服务器310或320可以与一组服务器对应,并且这些服务器中的各个服务器可以共享一数据库,或者可以具有其自己的数据库。尽管数据库315和325在逻辑上被显示为单个单元,但数据库315和325均可以是包含多个计算设备的分布式计算环境,该多个计算设备可以位于其对应的服务器内,或者可以位于同一物理位置处或位于地理上不同的物理位置处。
网络330可以是局域网(local area network,LAN)、广域网(wide area network,WAN)、网状网络、混合网络、或其它有线网络或无线网络。网络330可以是互联网或某种其它的公共或专用网络。客户端计算设备305可以经由网络接口例如通过有线通信或无线通信连接到网络330。尽管服务器310与多个服务器320之间的连接被显示为单独的连接,但这些连接可以是包括网络330或单独的公共或专用网络的任何类型的局域网、广域网、有线网络、或无线网络。
图4是示出了在一些实施方式中可在采用了所公开技术的系统中使用的多个部件400的框图。各部件400可以被包括在计算系统100的一个设备中,或者可以分布在计算系统100的多个设备上。部件400包括硬件410、中间件420和多个专用部件430。如以上所论述的,实现所公开技术的系统可以使用各种硬件,该各种硬件包括处理单元412、工作存储器414、输入和输出设备416(例如,摄像头、显示器、IMU单元、网络连接等)和存储存储器(storagememory)418。在各种实施方式中,存储存储器418可以是以下中的一者或多者:本地设备、到远程存储设备的接口、或它们的组合。例如,存储存储器418可以是可通过系统总线访问的一个或多个硬盘驱动器或闪存驱动器,或者可以是可经由一个或多个通信网络访问的云存储提供商(例如,在存储装置315或325中)或其它网络存储装置。在各种实施方式中,部件400可以在客户端计算设备(例如,客户端计算设备305)中实现,或者在服务器计算设备(例如,服务器计算设备310或320)上实现。
中间件420可以包括以下部件:所述部件在硬件410与多个专用部件430之间传送资源。例如,中间件420可以包括操作系统、服务、驱动器、基本输入输出系统(basic inputoutput system,BIOS)、控制器电路、或其它硬件或软件系统。
专用部件430可以包括被配置为执行用于合成可编辑的人工现实场景的操作的软件或硬件。专用部件430可以包括:合成器工具430;一个或多个所存储的场景436;权限管理器438;发布器440;以及可用于提供用户接口、传输数据和控制专用部件的部件和API(诸如,接口432)。在一些实施方式中,各部件400可以处于分布在多个计算设备上的计算系统中,或者可以是到基于服务器的应用的接口,该基于服务器的应用执行各专用部件430中的一个或多个专用部件。尽管各专用部件430被描绘为单独的部件,但是这些专用部件可以是功能的逻辑区分或其它非物理区分,和/或可以是一个或多个应用的子模块或代码块。
合成器工具434是合成XR场景的工具。例如,合成器工具434可以提供如下界面:在该界面处,用户与XR场景组件交互以定义XR场景,这些XR场景组件例如为一个或多个化身、一个或多个虚拟对象、背景、音频、一个或多个摄像头位置、和照明等。用户可以使用合成器工具434定义XR场景的场景组件,并将所生成的XR场景存储为一个或多个所存储的场景436。在一些实施方式中,合成器工具434可以加载一个或多个所存储的场景436中的一个或多个以供用户编辑,且经编辑的场景可以被存储为一个或多个所存储的场景436中的一个。以下关于图6B、图7、图8中的框802、804、806、808和810、以及图9中的框908、910、912、914和916提供了关于合成器工具434的附加细节。
一个或多个所存储的场景436可以包括数据结构(例如,序列化的数据结构),该数据结构存储对构成XR场景的场景组件的定义。这些定义可以包括化身定义(例如,结构、姿态等)、虚拟对象定义(例如,结构、显示状态等)、移动定义(例如,化身移动、虚拟对象移动等)、背景定义(例如,三维模型、图像等)、音频和/或视频文件、以及其它合适的场景组件定义。场景合成器436可以生成一个或多个所存储的场景436并加载一个或多个所存储的场景436以用于编辑。以下关于图6B、图7、图8中的框808、以及图9中的框902、908、和914提供了关于一个或多个所存储的场景436的附加细节。
权限管理器438可以对一个或多个所存储的场景436的访问、编辑或其它合适的权限进行管理。例如,用户(诸如,一个或多个所存储的场景436的所有者或发起者)可以定义用于访问和/或编辑XR场景的权限。访问权限可以定义允许哪些用户执行XR场景。编辑权限可以包括场景编辑权限和/或场景组件编辑权限。场景编辑权限可以定义允许哪些用户编辑XR场景的一个或多个场景组件。场景组件编辑权限可以为构成XR场景的多个单独的场景组件中的一个或多个单独的场景组件定义编辑参数,其中该编辑参数指示该单独的组件是否可以被另一用户(例如,非所有者和/或非发起者)编辑。以下关于图7、以及图9中的框902、904、906、和908提供了关于权限管理器438的附加细节。
发布器440可以发布XR场景以供用户访问。例如,发布器440可以将一个或多个所存储的场景436中的一个或多个发布到社交平台。具有对XR场景的访问权限的社交平台用户可以执行XR场景。具有对XR场景的编辑权限的社交平台用户可以(例如,经由合成器工具434)加载XR场景、编辑一个或多个场景组件(例如,包括允许编辑的可编辑参数的组件)、以及将经编辑的XR场景存储为一个或多个所存储的场景436中的一个所存储的场景。发布器440然后可以发布经编辑的XR场景以供社交平台用户访问。以下关于图7、图8中的框810、以及图9中的框916提供了关于发布器440的附加细节。
各实施方式合成一个或多个XR场景,该一个或多个XR场景在被执行时生成XR环境显示。图5是具有多个用户化身的示例人工现实环境。XR环境500包括在XR环境中显示的化身502和化身504。XR环境500可以是经由XR系统向用户显示的三维沉浸式环境。化身502和504可以在XR环境内移动,该XR环境是XR环境500中的多排椅子。在一些示例中,化身502和504可以是全身化身或用户的任何其它合适的虚拟表示。
在一些实施方式中,XR环境500的元素可以是XR场景的组件。例如,化身502和504及它们对应的移动可以是XR场景的组件。在一些实施方式中,背景(例如,多排椅子)也可以是XR场景的场景组件。XR场景在被执行时可以(例如,在三维环境中从给定摄像头视图/视角)显示化身502和504相对于背景的移动。XR场景的一些实施方式包括附加场景组件,诸如虚拟对象、音频、照明和其它合适的场景组件。
图6A是具有用户化身和虚拟对象的示例人工现实场景。XR场景600可以包括化身602、虚拟对象604和606以及背景608。在一些实施方式中,化身602、虚拟对象604、虚拟对象606或它们的任何组合中的一者或多者可以包括运动动态(例如,化身运动动态、虚拟对象运动动态等)。例如,XR场景记录器可以对显示给用户的XR环境的XR场景600进行记录。XR场景记录器的实施方式可以将XR环境的组件识别为XR场景的场景组件,这些场景组件例如为化身602、化身602的运动动态、虚拟对象604、虚拟对象604的运动动态、虚拟对象606、虚拟对象606的运动动态、XR环境的照明、在XR环境期间向用户输出的音频以及其它合适的场景组件。
在一些实施方式中,可以使用用于XR场景的合成工具来生成和/或编辑XR场景600。例如,场景合成器工具可以加载所记录的XR环境以用于编辑。在另一示例中,场景合成器工具可以(例如,从头开始)生成不具有所记录的XR环境的XR场景。
图6B是用于合成可编辑的人工现实环境场景的示例工具。场景合成器工具610包括场景612和工具614。场景612包括化身602、虚拟对象604和606以及背景608。例如,场景612可以是加载的XR环境的记录。在一些实施方式中,合成器工具610可以自动地将化身602、虚拟对象604和606以及背景608识别为所记录的XR环境的XR场景组件。在另一示例中,XR场景记录器的实施方式可以自动识别场景612的组件,每个XR场景组件的单独数据块可以与所记录的XR场景相关联地存储,并且场景合成器工具610可以加载场景612的组件。工具614可以包括用于生成和/或编辑场景612的预定义XR场景组件。例如,工具614可以是从其他人创建的场景共享的并共享到基于云的库的一组元素。
例如,可以使用工具614生成不具有XR环境记录的场景612。工具614包括化身元素616、虚拟对象元素618、背景元素620和音频元素622。化身元素616可以包括一个或多个预定义化身模型,该一个或多个预定义化身模型可以被包括在场景612中。例如,化身602可以经由化身元素616而被包括在场景612中。预定义化身可以包括为一给定用户(或一组用户)预定义的一个或多个化身、一个或多个默认化身、对应于一给定组的一个或多个化身(例如来自游戏应用、电影等的化身)、或任何其它合适的预定义化身。在一些实施方式中,与场景合成器工具610的用户交互可以是拖放(drag-and-drop)交互,其中用户从化身元素616中选择预定义化身,拖动所选择的化身以将其定位(例如,二维定位、三维定位等)在场景612内,并将所选择的化身放在该位置处。任何其它合适的用户交互可以将来自化身元素616的一个或多个预定义化身添加到场景612。
虚拟对象元素618可以类似于化身元素616,但是虚拟对象元素618可以包括预定义虚拟对象。预定义虚拟对象可以包括由用户预定义的一个或多个虚拟对象、一个或多个默认虚拟对象、对应于一给定组的一个或多个虚拟对象(例如,来自游戏应用、电影等的虚拟对象)或任何其它合适的预定义虚拟对象。在一些实施方式中,与场景合成器工具610的用户交互可以是拖放交互,其中用户从虚拟对象元素618中选择预定义虚拟对象,拖动所选择的虚拟对象以将其定位在场景612内,并将所选择的虚拟对象放在该位置处或放到另一元素上(例如,将预定义的运动轮廓应用于已添加到场景的化身)。预定义虚拟对象可以包括二维结构或三维结构模型。任何其它合适的用户交互都可以将来自虚拟对象元素618的一个或多个预定义虚拟对象添加到场景612。
背景元素620可以提供场景612的背景组件。例如,用户可以从背景元素620的一个或多个预定义背景中选择场景612的背景608。预定义背景可以包括一个或多个用户定义背景(例如,由用户上传到场景合成器工具610的背景、由用户设计的背景等)、一个或多个默认背景、对应于一给定组的一个或多个背景(例如,来自游戏应用、电影等的背景)、或任何其它合适的预定义背景。预定义背景可以是二维的(例如,图像)、三维的(例如,3D图像/模型),可以包括动画(例如,动画图像/模型),或者可以是任何其它合适的背景。用户可以从背景元素620中选择预定义背景以将背景608添加到场景612或替换场景612的现有背景。
音频元素622可以为场景612提供音频组件。例如,用户可以从音频元素622的一个或多个预定义音频记录中选择场景612的音频。预定义音频可以包括用户定义音频(例如,由用户上传到场景合成器工具610的音频、由用户记录的音频等)、默认音频、对应于一给定组的音频(例如,来自游戏应用、电影等的音频)、或任何其它合适的预定义音频。用户可以从音频元素622中选择预定义音频以将音频添加到场景612或替换场景612的现有音频。音频元素622的实施方式可以包括记录元素,以经由用户操作的客户端设备(例如,XR系统、膝上型计算机、智能手机等)记录实况音频。例如,用户的客户端设备的一个或多个传声器可以被配置成捕获实况音频,并且音频元素622可以将实况音频添加/替换到场景612。
在一些实施方式中,场景合成器工具610可以定义化身602的化身运动动态。化身运动动态可以包括随时间的化身姿态、随时间的化身面部表情或任何其它合适的运动动态。用户可以通过选择化身602并操纵化身随时间移动,来经由场景合成器工具610生成化身运动动态。场景合成器工具610的实施方式可以包括运动动态记录元素,该运动动态记录元素记录由用户操作引起的化身602的移动。在另一示例中,由用户操作的客户端设备(例如,XR系统、膝上型计算机等)可以经由一个或多个摄像头捕获用户运动/移动,并且场景合成器工具610可以将捕获到的用户运动转换成化身移动。例如,一个或多个机器学习模型(例如,计算机视觉模型)可以将用户与捕获到的用户图像中的背景隔离,检测被隔离的用户的运动、移动、面部表情等,并将这些检测到的用户运动、移动和面部表情转换成化身运动动态(例如,化身姿态,化身面部表情,化身移动(诸如,行走、跳舞、跑步、唱歌等))。
在一些实施方式中,由用户操作的客户端设备可以经由一个或多个传声器(例如,类似于音频元素622的记录功能)捕获用户音频,并且场景合成器工具610可以将捕获到的音频转换成化身移动,例如根据捕获到的音频(例如,捕获到的语音或声音)进行口型同步的面部表情。在另一示例中,场景合成器工具610可以根据所存储的音频(例如,经由音频元素622加载的音频)生成化身移动(例如,面部表情,诸如口型同步)。
在另一示例中,场景合成器工具610可以提供预定义化身运动动态(例如,化身挥手、微笑、跑步、跳舞等),并且用户可以为化身602选择一个或一系列预定义化身运动动态。例如,预定义运动动态可以包括化身的个人舞步,并且用户可以选择一系列个人舞步以为化身602生成舞蹈系列。在一些实施方式中,场景612基于所记录的XR环境显示,并且化身602的运动动态可以是所记录的XR环境显示的一部分。
在一些实施方式中,虚拟对象604和/或606包括虚拟对象运动动态。虚拟对象运动动态可以包括虚拟对象模型随时间的移动、虚拟对象显示状态随时间的变化、虚拟对象在背景中随时间的移动或任何其它合适的运动动态。用户可以经由场景合成器工具610,通过选择虚拟对象604并操纵虚拟对象随时间移动,来生成虚拟对象运动动态。场景合成器工具610的实施方式可以包括运动动态记录元素,该运动动态记录元素记录由用户操作引起的虚拟对象604的移动。
在另一示例中,场景合成器工具610可以提供预定义虚拟对象运动动态(例如,虚拟对象显示状态变化、这样的转换或其它合适的动画、虚拟对象运动模式、虚拟对象舞蹈等),并且用户可以为虚拟对象604选择一个或一系列预定义虚拟对象运动动态。例如,预定义运动动态可以包括虚拟摄像头的单独摄像头移动,并且用户可以选择一系列单独摄像头移动以生成围绕虚拟对象604的场景捕获序列。在一些实施方式中,场景612基于所记录的XR环境显示,并且虚拟对象604和/或化身606的运动动态可以是所记录的XR环境显示的一部分。
在一些实施方式中,场景合成器工具610可以包括效果元素,该效果元素支持用户向XR场景添加和/或编辑XR效果。XR效果可以包括动画、声音效果、视觉效果(例如,模糊、光线效果等)、滤镜和任何其它合适的效果。在一些实施方式中,可以添加、替换和/或删除与XR场景的其它组件(诸如化身和/或虚拟对象)相关的XR效果。例如,可以编辑、替换或删除覆盖在化身上的视觉效果。
在一些实施方式中,场景合成器工具610可以包括照明元素,该照明元素支持用户调整和/或编辑XR场景的照明。例如,用户可以调整(例如,增加或减少)XR场景的光。在一些实施方式中,用户可以选择/定义XR场景的区域或体积,以及调整该单独区域或体积的照明。
场景合成器工具610的实施方式可以从头开始生成场景612、加载先前所存储的XR场景、和/或将所记录的XR环境加载为XR场景。可以使用化身元素616、虚拟对象元素618、背景元素620和/或音频元素622来生成/编辑场景612。例如,可以向场景612添加一个或多个化身、一个或多个虚拟对象、一个或多个背景、音频和/或运动动态,或者可以替换场景612的现有组件(例如,一个或多个现有化身、一个或多个虚拟对象、一个或多个背景、音频和/或运动动态)。
当将先前所存储的XR场景加载为场景612时,场景合成器工具610为该先前所存储的XR场景的组件提供替换、替代和/或添加。例如,一个或多个替代化身、一个或多个虚拟对象、一个或多个背景、音频和/或运动动态可以创建经编辑的XR场景,该经编辑的场景随后被存储以供以后执行。然后,不同的用户可以对该经编辑的XR场景进行多次迭代编辑。多次迭代的编辑创建了XR场景的多个不同版本,这些版本可以共享共同线程,诸如化身移动、背景、音频、虚拟对象等。在一些实施方式中,进行这些编辑的用户经由社交平台而连接。因此,该多个不同版本可以用作用户之间社交交互的机制。
在一些实施方式中,用户可以经由场景合成器工具610从场景612(例如,所记录的场景、所存储的场景等)中移除或删除组件。例如,场景612的组件(诸如,一个或多个化身、一个或多个虚拟对象、背景、音频、一个或多个运动动态等)一旦被加载,就可以被选择和删除。用户选择/删除可以通过以下项来进行:由场景612显示的各个场景组件(例如,基于光标的选择和删除)、由工具614的元素列出的场景组件(例如,化身元素616、虚拟对象元素618、背景元素620和音频元素622)或任何其它合适的技术。
在一些实施方式中,所存储的XR场景可以包括三维显示(例如,具有化身/对象移动、音频等的三维模型)、二维显示(例如,动画图像、视频、音频等)或任何其它合适的显示。例如,可以经由用户的客户端系统(例如,XR系统、膝上型计算机、智能手机等)执行所存储的XR场景并将该XR场景作为三维显示和/或二维显示显示给用户。在一些实施方式中,可以基于所有者用户/编辑者用户选择或定义的摄像头在三维XR场景内的位置来生成三维XR场景的二维显示。所生成的二维显示可以是从所选择/定义的摄像头位置的视角。
图7是用于合成和编辑人工现实场景的系统图。系统700包括XR系统704、用户706、服务器702、膝上型计算机708和计算设备710。服务器702包括图4的合成器工具434、一个或多个所存储的场景436、权限管理器438和发布器440。用户(例如,所有者、编辑者等)可以与合成器工具434交互以生成/编辑一个或多个所存储的场景436。合成器工具434可以包括任何合适设备上的、向用户显示的界面组件(例如,前端)。例如,用户706可以经由XR系统704查看合成器工具434。在其它示例中,用户可以经由膝上型计算机708或计算设备710(例如,智能手机、台式机、智能家居设备、物联网设备等)与合成器工具434交互。可以在服务器702、XR系统704、膝上型计算机708、计算设备710或它们的任何组合上执行合成器工具434(或该工具的部分)。
权限管理器438可以对一个或多个所存储的场景436的访问、编辑或任何其它合适的权限进行管理。例如,创建者用户可以发起一个或多个所存储的场景436中的一个所存储的场景,并且对该所存储的场景的访问权限和/或编辑权限进行定义。访问权限可以定义哪些用户可以查看/执行该所存储的XR场景。示例访问权限可以是公开的(例如,社交应用的任何用户)、朋友(例如,在社交图谱上连接到创建者用户的链接)、社交图谱的与用户相关的部分(例如,朋友的朋友、社交图谱上与创建者用户的距离等)、群组访问(例如,作为用户群组(诸如,游戏团队、社交群组、就业群组等)的成员的一组用户的访问)、允许列表(例如,被允许访问的用户的显式列表)、阻止列表(例如,不被允许访问的用户的显式列表)及它们的任何组合。示例编辑权限可以是公开的(例如,社交应用的任何用户)、朋友(例如,在社交图谱上连接到创建者用户的链接)、社交图谱的与用户相关的部分(例如,朋友的朋友、社交图谱上与创建者用户的距离等)、群组权限(例如,作为用户群组(诸如,游戏团队、社交群组、就业群组等)的成员的一组用户的编辑权限)、允许列表(例如,被允许编辑的用户的显式列表)、阻止列表(例如,不被允许编辑的用户的显式列表)及它们的任何组合。
在一些实施方式中,权限管理器438可以实施对XR场景本身的参数的编辑,诸如对编辑迭代的次数的限制、对XR场景的不同版本的数量的限制、以及对可编辑的XR场景的各个组件的限制。用户创建者(或任何其他合适的所有者)可以定义:对编辑迭代的次数(例如,可以按顺序执行的编辑的数量)的限制、对XR场景的不同编辑版本的数量(例如,使用原始XR场景而存储的编辑的总数量)的限制,以及对可编辑的XR场景的各个组件的限制(例如,对各个场景组件(诸如,化身、虚拟对象、运动动态、背景、音频、照明、摄像头角度/视角等)的编辑限制)。
例如,对编辑迭代次数的限制可以控制在XR场景上可以进行多少序列/链式编辑。所存储的XR场景可以被第一编辑用户编辑,然后所生成的经编辑的XR场景可以被第二编辑用户编辑。此示例展示了以链式/序列的两次编辑迭代。创建者用户可以为原始XR场景定义按顺序编辑迭代的阈值次数。权限管理器438可以拒绝对超过阈值的经编辑的XR场景进行编辑的请求。
在另一示例中,对XR场景的不同版本的数量的限制可以控制可生成多少不同的XR场景的编辑版本。例如,原始XR场景可以被两个不同的用户编辑两次,从而产生两个经编辑的XR场景。然后这两个经编辑的XR场景中的一个可以被另一用户按顺序编辑,从而产生第三个经编辑的XR场景。创建者用户可以为原始XR场景定义总共的编辑版本的阈值数量。权限管理器438可以拒绝对超过阈值的原始XR场景或经编辑的XR场景进行编辑的请求。
在另一示例中,对XR场景的各个组件进行编辑的限制可以由创建者用户来定义。例如,给定场景组件(诸如,化身、虚拟对象、化身和/或虚拟对象的运动动态、音频、背景、摄像头视角和照明等)可以包括编辑参数,该编辑参数定义其他用户(例如,非所有者或非发起者)是否可以编辑该给定场景组件。该编辑参数的第一值可以锁定场景组件,使得该场景组件不能被其他用户编辑。该编辑参数的第二值可以允许其他用户编辑场景组件。权限管理器438和/或合成器工具434可以对XR场景的各个场景组件的编辑限制进行管理。
在一些实施方式中,权限管理器438在合成器工具434加载XR场景以进行编辑之前,对XR场景的编辑权限进行验证/确认。例如,可以对请求编辑所存储的XR场景的用户的编辑权限进行验证(例如,相对于社交图谱上的、所存储的XR场景的创建者用户等)。当权限管理器438验证/确认了请求用户的编辑权限时,合成器工具434可以加载XR场景。在一些实施方式中,权限管理器438还可以向合成器工具434提供为XR场景的各个场景组件定义的编辑限制。合成器工具434可以响应于接收到对场景组件的编辑限制,而锁定不能编辑的各个场景组件,同时实现对其它场景组件的编辑。
发布器440可以将XR场景或经编辑的XR场景发布到公众可访问的应用、存储库、社交平台,或者发布器440可以执行如下任何其它数字出版物:这些数字出版物允许用户对所发布的XR场景进行访问和/或编辑。在一些实施方式中,发布器440可以将XR场景发布到如下用户:这些用户是由权限管理器438管理的对XR场景的访问限制定义的。用户(例如,被允许访问的用户)可以例如通过点击统一资源定位符(uniform resource locator,URL)或其它合适的XR场景标识符来访问所发布的XR场景。可以响应于访问,(例如,由服务器702、XR系统704、膝上型计算机708、计算设备710或它们的任何组合)执行XR场景,以向用户显示XR场景的二维显示或三维显示,并且在一些示例中,向用户输出音频。
本领域技术人员将理解,上面描述的图1至图5、图6A、图6B和图7中所示出的、以及以下所论述的流程图中的每个流程图中所示出的多个组件可以以各种方式改变。例如,可以重新排列逻辑的顺序,可以并行执行子步骤,可以省略所示逻辑,可以包括其它逻辑等。在一些实施方式中,上述组件中的一个或多个组件可以执行以下描述的过程中的一个或多个过程。
图8是示出了在本技术一些实施方式中的用于合成可编辑的人工现实(XR)场景的过程的流程图。在一些实施方式中,过程800可以在服务器、XR系统或任何其它合适的计算系统上执行。过程800的实施方式可以在初始化XR场景合成器工具时被触发。
在框802,过程800可以定义XR场景的化身。例如,可以通过记录包括化身的XR环境、加载预定义化身或以任何其它合适的方式来定义化身。在一些实施方式中,可以使用包括预定义化身的场景合成器工具来定义化身。在一些实施方式中,在记录XR环境时可以对化身进行定义,并且例如通过XR记录工具和/或场景合成器工具自动识别所记录的XR环境中的化身。
在框804,过程800可以定义化身的化身运动动态。例如,用户可以通过场景合成器工具操纵化身来定义化身运动动态。在另一示例中,用户的客户端系统(例如,膝上型计算机、XR系统、智能手机等)可以经由一个或多个摄像头捕获用户,在捕获到的图像中将用户隔离,并检测用户运动、移动和/或表情。可以将检测到的用户运动、移动和/或表情转换为化身运动、移动和/或表情(例如,化身姿态、化身表情等)。
在一些实施方式中,场景合成器工具可以包括多个预定义化身运动动态,并且用户可以选择该多个预定义化身运动动态中的一个或多个(例如,序列)。在另一示例中,所记录的XR环境可以包括化身移动和表情,这些化身移动和表情被检测为化身运动动态。
在框806,过程800可以为XR场景定义一个或多个附加场景组件。例如,附加场景组件可以包括一个或多个虚拟对象、虚拟对象运动动态、背景、音频、照明或任何其它合适的场景组件。可以通过合成器工具定义、在所记录的XR环境中识别、或以任何其它合适的方式定义附加场景组件。
在框808,过程800可以存储具有所定义的组件的XR场景。例如,数据结构可以存储数据块、模型、音频文件、视频文件、图像和用于XR场景组件的任何其它合适的数据元素。所存储的XR场景可以被配置为使得执行XR场景会向用户生成XR场景的二维显示或三维显示,在一些示例中,其可以包括音频。
在框810,过程800可以发布所存储的XR场景。例如,可以将所存储的XR场景发布到社交平台或可由多个用户访问的任何其它合适的应用。所发布的XR场景可以被多个社交平台用户中的一个或多个社交平台用户查看和选择以供编辑。
图9是示出了在本技术一些实施方式中的用于编辑所存储的人工现实场景的过程的流程图。在一些实施方式中,过程900可以在服务器、XR系统或任何其它合适的计算系统上执行。当接收到对所存储的XR场景的编辑请求时,可以触发过程900的实施方式。
在框902,过程900可以接收对所存储的XR场景进行编辑的请求。例如,可以经由用户的客户端设备接收来自用户的请求。在一些实施方式中,可以将所存储的XR场景发布到社交平台,并且用户可以通过点击统一资源定位符(URL)或其它合适的XR场景标识符来查看所发布的XR场景以及提交编辑请求。
在框904,过程900可以确定该请求是否包括对XR场景的编辑权限。例如,可以验证或拒绝请求用户的编辑权限。在一些实施方式中,XR场景是由创建者用户(诸如,发起XR场景的用户)创建的。对XR场景的编辑权限可以由创建者用户来定义。XR场景的示例编辑权限包括公开的(例如,社交平台的任何用户)、朋友(例如,在社交图谱上连接到创建者用户的链接)、社交图谱的与用户相关的部分(例如,朋友的朋友、社交图谱上与创建者用户的距离等)、群组访问(例如,作为用户群组(诸如,游戏团队、社交组、就业组等)的成员的一组用户的访问)、允许列表(例如,被允许访问的用户的显式列表)、阻止列表(例如,不被允许访问的用户的显式列表)及它们的任何组合。
在一些实施方式中,可以将请求用户与XR场景的编辑权限进行比较(例如,在社交图谱、允许列表、阻止列表、群组成员等上将请求用户与创建者用户进行比较)以验证或拒绝该请求。当该请求包括对所请求的XR场景进行编辑的编辑权限时,过程900可以前进到框908。当该请求不包括对所请求的XR场景进行编辑的编辑权限时,过程900可以前进到框906,其中该请求被拒绝。例如,可以将描述缺乏编辑权限的消息发送到请求客户端设备。
在框908,过程900可以加载所存储的XR场景。例如,场景合成器工具可以加载场景组件(诸如,一个或多个化身、一个或多个虚拟对象、一个或多个化身和/或一个或多个虚拟对象的运动动态、背景、摄像头/视角、音频、照明和其它合适的场景组件)。在框910,过程900可以接收对所存储的XR场景的场景组件的编辑。例如,可以经由用户与场景合成器工具的交互来编辑或替换以下中的一者或多者:一个或多个化身、一个或多个虚拟对象、一个或多个化身和/或一个或多个虚拟对象的运动动态、背景、摄像头/观看视角、音频和/或照明。在一些实施方式中,对场景组件的一个或多个编辑可以包括移除或删除。例如,可以从XR场景中移除或删除以下中的一者或多者:一个或多个化身、一个或多个虚拟对象、背景、音频或它们的任何组合。
在框912,过程900可以接收一个或多个附加场景组件。例如,可以通过用户与场景合成器工具的交互来添加以下中的一者或多者:一个或多个附加化身、一个或多个附加虚拟对象、或该一个或多个化身和/或该一个或多个虚拟对象的运动动态。
在框914,过程900可以存储经编辑的XR场景,该经编辑的XR场景具有经编辑或添加的组件。例如,可以对如下数据结构进行修改,以存储对场景组件和/或附加场景组件的编辑:该数据结构存储XR场景组件的数据块、模型、音频文件、视频文件、图像和任何其它合适的数据元素。可以存储经编辑的XR场景,使得执行经编辑的XR场景会向用户生成经编辑的XR场景的二维显示或三维显示,在一些示例中,其可以包括音频。
在框916,过程900可以公开经编辑的XR场景。例如,可以将经编辑的XR场景发布到社交平台或可由多个用户访问的任何其它合适的应用。多个社交平台用户中的一个或多个社交平台用户可以查看和选择所发布的经编辑的XR场景以进行编辑。
在一些实施方式中,其它用户可以选择经编辑的XR场景以进行编辑。例如,过程900可以通过几次迭代来重复,使得可以生成原始XR场景的多个不同的编辑版本。这些不同的版本可以通过发布到社交平台、消息收发或任何其它合适的共享机制来在用户之间共享。
在本说明书中对“多个实施方式”(例如,“一些实施方式”、“各种实施方式”、“一个实施方式”、“一实施方式”等)的引用意味着,结合该实施方式而描述的特定的特征、结构或特性被包括在本公开的至少一个实施方式中。在说明书中不同地方出现的这些表达不一定都指同一实施方式,也不一定是与其它实施方式相互排斥的单独实施方式或替代实施方式。此外,描述了可由一些实施方式而不是由其它实施方式渲染的各种特征。类似地,描述了各种要求,这些要求可以是对一些实施方式而不是对其它实施方式的要求。
如本文所使用的,高于阈值意味着比较项的值高于指定的其它值,比较项位于具有最大值的某个指定数量的项中,或者比较项具有在指定的最高百分比值内的值。如本文所使用的,低于阈值意味着比较项的值低于指定的其它值,比较项位于具有最小值的某个指定数量的项中,或者比较项具有在指定的最低百分比值内的值。如本文所使用的,处于阈值内意味着比较项的值在两个指定的其它值之间,比较项位于中间的指定数量的项中,或者比较项具有在中间指定百分比范围内的值。当没有另外限定时,诸如高或不重要等相对术语可以被理解为分配一个值并确定该值如何与所建立的阈值进行比较。例如,短语“选择快速连接”可以被理解为意味着选择具有分配的与其高于阈值的连接速度对应的值的连接。
如本文所使用的,词语“或”是指一组项的任何可能的排列。例如,短语“A、B或C”指以下中的至少一者:A、B、C或它们的任何组合,例如以下中的任何:A;B;C;A和B;A和C;B和C;A、B和C;或多个任何项(例如,A和A;B、B和C;A、A、B、C和C等)。
尽管已经用特定于结构特征和/或方法动作的语言描述了该主题,但应理解,在所附权利要求书中所限定的主题不必限于上述特定特征或动作。本文已出于说明的目的描述了特定的实施例和实施方式,但可以在不脱离这些实施例和实施方式的范围的情况下进行各种修改。上述特定特征和动作是作为实现所附权利要求书的示例形式而公开的。因此,除了所附权利要求书之外,实施例和实施方式不受限制。

Claims (15)

1.一种用于对所存储的3D人工现实(XR)场景进行编辑的方法,所述方法包括:
访问所存储的具有场景组件的3D XR场景,所述场景组件至少包括化身、化身运动动态和XR环境,其中,执行所述3D XR场景会生成所述化身根据所述XR环境中定义的所述化身运动动态而移动的三维描绘;
接收对所述3D XR场景的所述场景组件的一个或多个编辑,其中,所述一个或多个编辑至少包括用替代化身来替换所述化身;以及
存储经编辑的3D XR场景,其中,执行所述经编辑的3D XR场景会生成所述替代化身根据所述化身运动动态而在所述XR环境内移动的三维描绘。
2.根据权利要求1所述的方法,其中,所述3D XR场景的所述场景组件还包括一个或多个虚拟对象和一个或多个虚拟对象运动动态参数,并且通过执行所述3D XR场景而生成的三维描绘包括所述一个或多个虚拟对象根据所述一个或多个虚拟对象运动动态参数而在所述XR环境内移动;
并且优选地,其中,编辑所述3D XR场景的所述场景组件还包括用一个或多个替代虚拟对象来替换所述一个或多个虚拟对象,并且通过执行所述经编辑的3D XR场景而生成的三维描绘包括所述一个或多个替代虚拟对象根据所述一个或多个虚拟对象运动动态参数而在所述XR环境内移动。
3.根据权利要求1或2所述的方法,其中,编辑所述3D XR场景的所述场景组件还包括编辑所述化身运动动态,并且其中,通过执行所述经编辑的3D XR场景而生成的三维描绘包括所述替代化身根据经编辑的化身运动动态而在所述XR环境内移动。
4.根据权利要求1至3中任一项所述的方法,其中,编辑所述化身运动动态还包括:
经由一个或多个传感器捕获用户运动,其中,所述一个或多个传感器中的至少一个传感器包括摄像头;以及
将所述用户运动转换为化身运动动态。
5.根据权利要求1至4中任一项所述的方法,其中,编辑所述3D XR场景的所述场景组件还包括添加一个或多个附加场景组件,并且所述附加场景组件包括附加化身、附加虚拟对象或它们的任何组合中的一者或多者。
6.根据权利要求1至5中任一项所述的方法,其中,所存储的所述3D XR场景是由创建者用户创建的,所述创建者用户定义了对所存储的所述3D XR场景的编辑权限,并且访问所存储的所述3D XR场景还包括:
接收来自与所述创建者用户不同的其他用户的对所存储的所述3D XR场景进行编辑的请求;以及
验证所述其他用户包括对所存储的所述3D XR场景进行编辑的编辑权限,其中,所存储的所述3D XR场景响应于所述验证而被访问;
并且优选地,其中,所述编辑权限包括与社交图谱相关的用户范围,并且当所述其他用户被包括在与所述社交图谱相关的所述用户范围中时,所述其他用户的所述编辑权限被验证。
7.根据权利要求1至6中任一项所述的方法,其中,所存储的所述3D XR场景是由创建者用户创建的,所述创建者用户为所存储的所述3D XR场景的至少一个场景组件定义了至少一个编辑参数,并且其中,所述编辑参数的第一值允许编辑、替换或删除所述至少一个场景组件,并且所述编辑参数的第二值限制编辑、替换或删除所述至少一个场景组件。
8.根据权利要求7所述的方法,其中,所述至少一个场景组件包括所述化身,并且接收对所述3D XR场景的所述场景组件的一个或多个编辑还包括:
验证所述化身的所述编辑参数允许用所述替代化身来替换所述化身。
9.根据权利要求1至8中任一项所述的方法,所述方法还包括:
在社交媒体平台上发布所述经编辑的3D XR场景,其中,所述发布允许多个社交媒体平台用户执行所述经编辑的3D XR场景。
10.根据权利要求1至9中任一项所述的方法,其中,所述化身运动动态至少包括化身姿态和化身表情。
11.一种用于对所存储的人工现实(XR)场景进行编辑的计算系统,所述计算系统包括:
一个或多个处理器;以及
一个或多个存储器,所述一个或多个存储器存储有指令,所述指令在被所述一个或多个处理器执行时,使所述计算系统执行过程,所述过程包括:
存储具有场景组件的XR场景,所述场景组件至少包括化身、化身运动动态和XR环境,其中,所述XR场景是由定义编辑权限的创建者用户创建的,并且执行所述XR场景会生成所述化身根据所述化身运动动态而在所述XR环境内移动的三维描绘;
接收来自与所述创建者用户不同的其他用户的对所存储的所述XR场景进行编辑的请求;
验证所述其他用户包括对所存储的所述XR场景进行编辑的编辑权限;
响应于所述验证访问所存储的所述XR场景;
接收对所述XR场景的所述场景组件的一个或多个编辑,其中,所述一个或多个编辑至少包括用替代化身来替换所述化身;以及
存储经编辑的XR场景,其中,执行所述经编辑的XR场景会生成所述替代化身根据所述化身运动动态而在所述XR环境内移动的三维描绘。
12.根据权利要求11所述的计算系统,所述计算系统还包括以下特征中的至少一个特征:
(i)其中,所述XR场景的所述场景组件还包括一个或多个虚拟对象和一个或多个虚拟对象运动动态参数,并且通过执行所述XR场景而生成的三维描绘包括所述一个或多个虚拟对象根据所述一个或多个虚拟对象运动动态参数而在所述XR环境内移动;并且优选地,其中,编辑所述XR场景的所述场景组件还包括用一个或多个替代虚拟对象来替换所述一个或多个虚拟对象,并且通过执行所述经编辑的XR场景而生成的三维描绘包括所述一个或多个替代虚拟对象根据所述一个或多个虚拟对象运动动态参数而在所述XR环境内移动;
(ii)其中,编辑所述XR场景的所述场景组件还包括编辑所述化身运动动态,并且其中,通过执行所述经编辑的XR场景而生成的三维描绘包括所述替代化身根据所述经编辑的化身运动动态而在所述XR环境内移动;和/或
(iii)其中,编辑所述化身运动动态还包括:
经由一个或多个传感器捕获用户运动,其中,所述一个或多个传感器中的至少一个传感器包括摄像头;以及
将所述用户运动转换为化身运动动态。
13.根据权利要求11或12所述的计算系统,所述计算系统还包括以下特征中的至少一个特征:
其中,所述编辑权限包括与社交图谱相关的用户范围,并且当所述其他用户被包括在与所述社交图谱相关的所述用户范围中时,所述其他用户的所述编辑权限被验证;和/或
其中,所述创建者用户为所存储的所述XR场景的至少一个场景组件定义了至少一个编辑参数,并且其中,所述编辑参数的第一值允许编辑、替换或删除所述至少一个场景组件,并且所述编辑参数的第二值限制编辑、替换或删除所述至少一个场景组件。
14.一种计算机可读存储介质,所述计算机可读存储介质存储有指令,所述指令在被计算系统执行时,使得所述计算系统执行用于对存储的人工现实(XR)场景进行编辑的过程,所述过程包括:
存储具有场景组件的XR场景,所述场景组件至少包括化身、化身运动动态和XR环境,其中,所述XR场景是由定义编辑权限的创建者用户创建的,并且执行所述XR场景会生成所述化身根据所述化身运动动态而在所述XR环境内移动的三维描绘;
接收来自与所述创建者用户不同的其他用户的对所存储的所述XR场景进行编辑的请求;
验证所述其他用户包括对所存储的所述XR场景进行编辑的编辑权限;
响应于所述验证访问所存储的所述XR场景;
接收对所述XR场景的所述场景组件的一个或多个编辑,其中,所述一个或多个编辑至少包括用替代化身来替换所述化身;以及
存储经编辑的XR场景,其中,执行所述经编辑的XR场景会生成所述替代化身根据所述化身运动动态而在所述XR环境内移动的三维描绘。
15.一种计算机程序,所述计算机程序包括指令,所述指令在所述程序被计算机执行时,使所述计算机执行根据权利要求1至10中任一项所述的方法。
CN202380083466.XA 2022-12-21 2023-12-10 人工现实场景合成器 Pending CN120303633A (zh)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US18/069,240 US20250014293A1 (en) 2022-12-21 2022-12-21 Artificial Reality Scene Composer
US18/069,240 2022-12-21
PCT/US2023/083270 WO2024137232A1 (en) 2022-12-21 2023-12-10 Artificial reality scene composer

Publications (1)

Publication Number Publication Date
CN120303633A true CN120303633A (zh) 2025-07-11

Family

ID=89834277

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202380083466.XA Pending CN120303633A (zh) 2022-12-21 2023-12-10 人工现实场景合成器

Country Status (4)

Country Link
US (1) US20250014293A1 (zh)
EP (1) EP4639324A1 (zh)
CN (1) CN120303633A (zh)
WO (1) WO2024137232A1 (zh)

Family Cites Families (16)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8928672B2 (en) * 2010-04-28 2015-01-06 Mixamo, Inc. Real-time automatic concatenation of 3D animation sequences
US20170243403A1 (en) * 2014-11-11 2017-08-24 Bent Image Lab, Llc Real-time shared augmented reality experience
KR102252730B1 (ko) * 2015-02-06 2021-05-18 한국전자통신연구원 애니메이션 생성 장치 및 방법
KR20170086317A (ko) * 2016-01-18 2017-07-26 한국전자통신연구원 타이밍 변환을 이용한 3차원 캐릭터 동작 생성 장치 및 방법
US10551993B1 (en) * 2016-05-15 2020-02-04 Google Llc Virtual reality content development environment
KR101831802B1 (ko) * 2016-09-23 2018-04-04 (주)브로틴 적어도 하나의 시퀀스에 대한 가상현실 컨텐츠 제작방법 및 장치
US10228760B1 (en) * 2017-05-23 2019-03-12 Visionary Vr, Inc. System and method for generating a virtual reality scene based on individual asynchronous motion capture recordings
US10417802B2 (en) * 2017-12-20 2019-09-17 Binary Bubbles, Inc. System and method for creating customized characters and selectively displaying them in an augmented or virtual reality display
US10902684B2 (en) * 2018-05-18 2021-01-26 Microsoft Technology Licensing, Llc Multiple users dynamically editing a scene in a three-dimensional immersive environment
JP6776400B1 (ja) * 2019-04-26 2020-10-28 株式会社コロプラ プログラム、方法、および情報端末装置
US10997766B1 (en) * 2019-11-06 2021-05-04 XRSpace CO., LTD. Avatar motion generating method and head mounted display system
CN111558221B (zh) * 2020-05-13 2021-03-16 腾讯科技(上海)有限公司 虚拟场景的显示方法和装置、存储介质及电子设备
US11295503B1 (en) * 2021-06-28 2022-04-05 Facebook Technologies, Llc Interactive avatars in artificial reality
US12033264B2 (en) * 2021-09-20 2024-07-09 Idoru, Inc. Systems and methods for authoring and managing extended reality (XR) avatars
KR20230052459A (ko) * 2021-10-13 2023-04-20 라인플러스 주식회사 아바타 콘텐츠 생성 방법 및 시스템
EP4595015A1 (en) * 2022-09-30 2025-08-06 Sightful Computers Ltd Adaptive extended reality content presentation in multiple physical environments

Also Published As

Publication number Publication date
WO2024137232A1 (en) 2024-06-27
US20250014293A1 (en) 2025-01-09
EP4639324A1 (en) 2025-10-29

Similar Documents

Publication Publication Date Title
US11875162B2 (en) Computer-generated reality platform for generating computer-generated reality environments
US12067688B2 (en) Coordination of interactions of virtual objects
US11636655B2 (en) Artificial reality environment with glints displayed by an extra reality device
TW202313162A (zh) 用於人工實境環境的內容鏈接
US11928308B2 (en) Augment orchestration in an artificial reality environment
EP4397006B1 (en) Parallel video call and artificial reality spaces
US12266061B2 (en) Virtual personal interface for control and travel between virtual worlds
US12026527B2 (en) World-controlled and application-controlled augments in an artificial-reality environment
EP4432243A1 (en) Augment graph for selective sharing of augments across applications or users
US20240312143A1 (en) Augment Graph for Selective Sharing of Augments Across Applications or Users
US20230260239A1 (en) Turning a Two-Dimensional Image into a Skybox
US20250316000A1 (en) Multimodal Scene Graph for Generating Media Elements
CN120303633A (zh) 人工现实场景合成器
US20240192973A1 (en) Artificial Reality Simulation for Augment Manipulation Controls on a Two-Dimensional Interface
EP4414835A1 (en) Integration framework for two-dimensional and three-dimensional elements in an artificial reality environment
CN119278423A (zh) 在虚拟世界之间进行控制和行进的虚拟个人界面

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination