Non-fungible token metaverse platform
The system captures and animates markerless motion data in real-time within the metaverse, utilizing non-fungible tokens to secure digital content ownership and facilitate seamless transfer across Web2 and Web3 environments.
Patent Information
- Application Number
- JP2024557961
- Authority / Receiving Office
- JP · JP
- Patent Type
- Applications
- Current Assignee / Owner
- Priority Date
- 2022-11-04
- Filing Date
- 2023-03-30
- Publication Date
- 2025-04-22
- Estimated Expiration
- Not applicable · inactive patent
AI Technical Summary
Existing technologies lack an efficient means to capture and animate markerless motion data in real-time within a metaverse environment, while also enabling secure ownership and transfer of digital content using non-fungible tokens.
A system that captures markerless motion data using a camera, retargets the data into a three-dimensional avatar model associated with a unique non-fungible token, and animates the avatar in real-time, while generating tokens to identify ownership of the captured video content.
Enables real-time animation of avatars within the metaverse environment, securely represents ownership of digital content using non-fungible tokens, and facilitates seamless interaction and ownership transfer within Web2 and Web3 environments.
Smart Images

Figure 2025512884000001_ABST
Abstract
Description
[Technical field]
[0001] CROSS-REFERENCE TO RELATED APPLICATIONS This application claims priority to U.S. Provisional Application No. 63 / 362,179, filed March 30, 2022, U.S. Provisional Application No. 63 / 369,734, filed July 28, 2022, U.S. Provisional Application No. 63 / 362,860, filed April 12, 2022, U.S. Provisional Application No. 63 / 369,735, filed July 28, 2022, and U.S. Provisional Application No. 63 / 382,314, filed November 4, 2022, all of which provisional applications are incorporated herein by reference in their entireties.
[0002] SUMMARY OF THE DISCLOSURE The embodiments disclosed herein relate generally to metaverse environments. [Background technology]
[0003] Recently, non-fungible tokens have become a popular means for users to secure content. For example, users can use various platforms to tokenize content, thereby retaining ownership rights over that content. Using the tokenized version of the content, users can verify and transfer ownership of the content, and even benefit from the content by transferring the tokenized version of the content to other users. Summary of the Invention [Means for solving the problem]
[0004] In some embodiments, a method is disclosed herein: A computing system captures markerless motion data of a user via a camera of the computing system, the capturing operation includes capturing a first portion of the user's markerless motion data, the first portion of the user's markerless motion data being captured within a threshold distance of the camera, the capturing operation including identifying a first plurality of points on which the user focuses, the capturing operation further includes capturing a second portion of the user's markerless motion data, the second portion of the user's markerless motion data being captured outside the threshold distance of the camera, the capturing operation including identifying a second plurality of points on which the user focuses, the first plurality of points including at least one point not included in the second plurality of points, the second plurality of points including at least one point not included in the first plurality of points. The computing system retargets the first and second multiple points to a three-dimensional model of an avatar associated with the user, the avatar associated with an identity non-fungible token that uniquely represents the user across Web2 and Web3 environments, and animates the three-dimensional model of the avatar by retargeting the first and second multiple points. The computing system renders a video locally on the computing system, the video including the markerless motion data of the user retargeted to the three-dimensional model of the avatar that causes the hands, face, and body of the avatar to be animated in real time. The computing system causes a non-fungible token to be generated, the non-fungible token uniquely identifying ownership of the video.
[0005] In some embodiments, a non-transitory computer readable medium is disclosed herein. The non-transitory computer readable medium includes one or more sequences of instructions that, when executed by a processor, cause a computing system to perform operations. The operations include capturing markerless motion data of a user with a camera of the computing system. The capturing operation includes capturing a first portion of the markerless motion data of the user, the first portion of the markerless motion data of the user being captured within a threshold distance of the camera, the capturing operation including identifying a first plurality of points on which the user focuses. The capturing operation further includes capturing a second portion of the markerless motion data of the user, the second portion of the markerless motion data of the user being captured outside the threshold distance of the camera, the capturing operation including identifying a second plurality of points on which the user focuses, the first plurality of points including at least one point not included in the second plurality of points, the second plurality of points including at least one point not included in the first plurality of points. The operations further include retargeting, by the computing system, the first and second plurality of points to a three-dimensional model of an avatar associated with the user, the avatar associated with an identity-based non-fungible token that uniquely represents the user across Web2 and Web3 environments, and retargeting the first and second plurality of points to animate the three-dimensional model of the avatar. The operations further include rendering, by the computing system, a video locally on the computing system, the video including the markerless motion data of the user retargeted to the three-dimensional model of the avatar that causes the hands, face, and body of the avatar to be animated in real time. The operations further include causing the computing system to generate a non-fungible token, the non-fungible token uniquely identifying ownership of the video.
[0006] In some embodiments, a system is disclosed herein. The system includes a processor and a memory. The memory stores programming instructions that, when executed by the processor, cause the system to perform operations. The operations include capturing, with a camera, markerless motion data of a user. The capturing operation includes capturing a first portion of the user's markerless motion data, the first portion of the user's markerless motion data being captured within a threshold distance of the camera, the capturing operation including identifying a first plurality of points on which the user will focus. The capturing operation further includes capturing a second portion of the user's markerless motion data, the second portion of the user's markerless motion data being captured outside the threshold distance of the camera, the capturing operation including identifying a second plurality of points on which the user will focus, the first plurality of points including at least one point not included in the second plurality of points, the second plurality of points including at least one point not included in the first plurality of points. The operations further include retargeting the first and second multiple points to a three-dimensional model of an avatar associated with the user, the avatar being associated with an identity-type non-fungible token that uniquely represents the user across Web2 and Web3 environments, and retargeting the first and second multiple points to animate the three-dimensional model of the avatar. The operations further include locally rendering a video, the video including the markerless motion data of the user retargeted to the three-dimensional model of the avatar that causes the hands, face, and body of the avatar to be animated in real time. The operations further include causing a non-fungible token to be generated, the non-fungible token uniquely identifying ownership of the video.
[0007] Thus, how the above-mentioned features of the present disclosure may be understood in detail, a more particular description of the present disclosure briefly summarized above may be made by reference to the embodiments, some of which are illustrated in the accompanying drawings. It should be noted, however, that the accompanying drawings illustrate only typical embodiments of the present disclosure and therefore should not be considered as limiting the scope, as the present disclosure may admit of other equally effective embodiments. [Brief description of the drawings]
[0008] [Figure 1] FIG. 1 is a block diagram illustrating a computing environment in accordance with an illustrative embodiment. [Diagram 2] 2 is a block diagram illustrating the server system of FIG. 1 according to an exemplary embodiment. [Diagram 3] 1 illustrates an exemplary avatar, in accordance with an exemplary embodiment. [Figure 4] 2 is a block diagram illustrating the server system of FIG. 1 according to an exemplary embodiment. [Diagram 5] 2 is a block diagram illustrating the server system of FIG. 1 according to an exemplary embodiment. [Figure 6A] 1 illustrates an exemplary avatar with accessories, according to an exemplary embodiment. [Figure 6B] 1 illustrates an exemplary avatar with accessories, according to an exemplary embodiment. [Figure 7] 2 is a block diagram illustrating the server system of FIG. 1 according to an exemplary embodiment. [Figure 8] 1 illustrates an exemplary graphical user interface, according to an exemplary embodiment. [Figure 9A] FIG. 1 is a block diagram illustrating a server system, according to an exemplary embodiment. [Figure 9B] FIG. 1 is a block diagram illustrating a server system, according to an exemplary embodiment. [Figure 10A]1 is a block diagram illustrating interactions between Web2 and Web3 environments in accordance with an exemplary embodiment. [Figure 10B] 1 is a block diagram illustrating interactions between Web2 and Web3 environments in accordance with an exemplary embodiment. [Figure 11A] FIG. 1 is a block diagram illustrating a computing environment in accordance with an exemplary embodiment. [Figure 11B] FIG. 1 is a block diagram illustrating a computing environment in accordance with an exemplary embodiment. [Figure 12] 1 is a block diagram illustrating a computing environment for interacting with a server system 104 according to an exemplary embodiment. [Figure 13] 1 is a flow diagram illustrating a method for minting digital content according to an example embodiment. [Figure 14] FIG. 2 illustrates an exemplary graphical user interface (GUI) according to an exemplary embodiment. [Figure 15] FIG. 2 illustrates an exemplary graphical user interface (GUI) according to an exemplary embodiment. [Figure 16A] FIG. 1 illustrates an architecture of a system bus computing system according to an exemplary embodiment. [Figure 16B] FIG. 1 illustrates a computer system having a chipset architecture, according to an exemplary embodiment. [Figure 17] FIG. 2 is an exemplary diagram illustrating parent-child token relationships, according to an exemplary embodiment. [Figure 18] 4 is a flow diagram illustrating a method for generating digital content according to an example embodiment. [Figure 19] FIG. 1 is a block diagram illustrating a set of points, according to an example embodiment. DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS
[0009] For ease of understanding, like reference numbers have been used to designate, wherever possible, like elements common to the figures, It is contemplated that elements disclosed in one embodiment may be advantageously utilized on other embodiments without specific recitation.
[0010] One or more technologies described herein provide a new non-fungible token platform that allows users to gain ownership over digital avatars, accessories to those avatars, and the digital content they create. For example, one or more technologies described herein allow users to use non-fungible token avatars in photos and videos that the users can then share to social media platforms.
[0011] The term "user" as used herein includes, for example, an individual or entity that owns a computing device or wireless device, an individual or entity that operates or utilizes a computing device or wireless device, or an individual or entity that is otherwise associated with a computing device or wireless device. It is contemplated that the term "user" is not intended to be limiting and may include a variety of examples beyond those described. In some embodiments, a user may be a content creator. In some embodiments, a user may be an owner of a non-fungible token for an avatar, post, or accessory. In some embodiments, a user may be both an owner of a non-fungible token and a content creator. In some embodiments, a user may be an individual that interacts with social content.
[0012] The term "metaverse" as used herein may refer to a centralized or decentralized environment that may be accessible to end users via one or more computing devices, including, but not limited to, mobile devices, computing devices (e.g., tablets, laptops, personal computers, etc.), wearable devices, and cross-reality (XR) devices (e.g., augmented reality devices, virtual reality devices). In general, the metaverse may refer to an environment that includes both real-world and virtual components. In some embodiments, the metaverse may refer to a single metaverse environment. In some embodiments, the metaverse may refer to multiple metaverse environments, similar to a multiverse.
[0013] The term "digital content" as used herein includes, for example, audio content (e.g., podcasts, songs, audiobooks, etc.), image content, video content, and / or any combination of one or more of the audio content, image content, and video content.
[0014] 1 is a block diagram illustrating a computing environment 100 according to one embodiment. The computing environment 100 may include at least one or more user devices 102, one or more user devices 103, a server system 104, a blockchain 122, and one or more non-fungible token marketplaces 108 communicating via a network 105.
[0015] The network 105 may be of any suitable type, including a separate connection over the Internet, such as a cellular or Wi-Fi network. In some embodiments, the network 105 may connect the terminals, services, and mobile devices using direct connections, such as radio frequency identification (RFID), near field communication (NFC), Bluetooth™, low-energy Bluetooth™ (BLE), Wi-Fi™, ZigBee™, ambient backscatter communication (ABC) protocol, USB, WAN, or LAN. Because the information transmitted may be personal or sensitive, security concerns may dictate that one or more of these types of connections be encrypted or otherwise protected. However, in some embodiments, the information transmitted may not be very personal, and thus a network connection may be selected that prioritizes convenience over security.
[0016] Network 105 may include any type of computer network connection arrangement used to exchange data. For example, network 105 may be the Internet, a private data network, a virtual private network using a public network, and / or other suitable connection that allows components within computing environment 100 to send and receive information between components of computing environment 100.
[0017] The user device 102 may be operated by a user. The user device 102 may represent a mobile device, a tablet, a desktop computer, a virtual reality (VR) system, an augmented reality (AR) system, a cross reality (XR) system, or any computing system having the capabilities described herein. The user device 102 may include at least an application 112 and AR software 114.
[0018] The application 112 may represent a social media application associated with the server system 104. In some embodiments, the application 112 may be a standalone application associated with the server system 104. In some embodiments, the application 112 may represent a web browser configured to communicate with the server system 104. In some embodiments, the user device 102 may communicate over the network 105 to request a web page, for example, from a web client application server 118 of the server system 104. For example, the user device 102 may be configured to execute the application 112 to enter a social media website that resides on the metaverse and is hosted by the web client application server 118. Content to be displayed on the user device 102 may be transmitted from the web client application server 118 to the user device 102 and then processed by the application 112 for display through a graphical user interface (GUI) of the user device 102.
[0019] The AR software 114 may represent native or third-party software that allows a user to create augmented reality images or videos. In some embodiments, the AR software 114 may represent one or more of Google's markerless motion tracking software, ARKit®, a commercially available software development kit (SDK) from Apple®, customizable, commercially available from Google®, machine learning-based, MediaPipe, a software development kit developed by Google®, ARCore, or the like, or any combination thereof that allows a user to generate, in part, augmented reality videos and / or images. A user of the user device 102 may use the AR software 114 to generate videos or images of himself or herself and replace or insert his or her digital avatar in the video or image. These videos and / or images may be posted to the user's social media accounts on the metaverse platform 120 via the application 112.
[0020] In some embodiments, rather than keeping the AR software 114 separate from the application 112, the application 112 may include the AR software 114. In other words, a user may utilize the AR software of the application 112 to generate videos or images that include their digital avatar.
[0021] In general, the AR software 114 may provide live tracking of one or more users' bodies, faces, and hands. Compared to existing AR software solutions, the AR software 114 is the first markerless motion capture software that allows live tracking of the body, face, and hands simultaneously. In operation, the AR software 114 may be configured to extract across multiple reference points or landmarks (e.g., at least 30) from an individual captured within the field of view of the camera 119 of the user device 102. Using the multiple reference points, the AR software 114 may access one or more third-party APIs or SDKs so that a skeletal structure of the user may be generated. After the skeletal structure of the user is generated, the AR software 114 may locally retarget the data in the skeletal structure to the avatar to animate the avatar in real-time or near real-time. In this manner, the AR software 114 may enable the user to render the avatar in a local environment on the user device 102.
[0022] In conventional systems, AR software typically has trouble switching between long and short distance shots. With this in mind, the AR software 114 may include an artificial intelligence module 115. The artificial intelligence module 115 may be configured to lock the user's chest to the bottom of the screen when the user device 102 is within close range of the user (e.g., when the user's face fills a threshold percentage of the screen). After the user's body is locked in, the AR software 114 may be configured to prioritize focusing on the user's face and hands instead of exploring the rest of the user's body. In some embodiments, rather than locking the user's body, a smooth transition may be made when the user moves from short distance to long distance or vice versa.
[0023] The artificial intelligence module 115 may be trained to determine how to focus the camera 119 of the user device 102 depending on whether the user is triggering a selfie mode or a full body mode. For example, in the full body mode, the artificial intelligence module 115 may be trained to identify multiple anchor points on the user's body. The AR software 114 may focus less on the anchor points on the face when the user's whole body is in the frame. In such an example, the user may be able to open or close the mouth and eyes, smile or frown, but the user may not be able to make many expressions in other modes that they would be able to make in the selfie mode. However, in the full body mode, the artificial intelligence module 115 may instruct the AR software 114 to de-emphasize processing power towards the user's face so that the AR software 114 may more accurately capture the user's hands and the rest of the body. In the selfie mode, rather than modifying the multiple anchor points, the artificial intelligence module 115 may be trained to ignore a subset of the anchor points depending on the distance of the user from the camera 119. For example, the AR software 114 may ignore all leg anchor points when in selfie mode, and the artificial intelligence module 115 may instruct the AR software 114 to focus more on the user's face rather than the lower body, which may enable the AR software 114 to capture facial gestures more accurately.
[0024] Furthermore, most publicly available prior art is limited to tracking only the user's face, or generally tracking the user's body, without more precise finger and face tracking. The AR software 114 improves upon the current state of the art by providing the ability to merge head-to-toe body tracking, precise finger tracking, and more precise face tracking. For example, the AR software 114 may enable a user to make two peace signs next to their face and have a model overlaid to reflect it on the phone's screen using the user's phone's camera 119 or any other sensor available from the user device 102 (e.g., LIDAR sensor). Thus, the AR software 114 may be able to track the user's hand, face, and body movements all in real time.
[0025] To facilitate such an approach, the AR software 114 may manage several different PointPools, each pool representing a different body part. In some embodiments, four main PointPools are used: Body (head, arms, legs, feet), LHand (left hand), RHand (right hand), and Face (facial landmarks).
[0026] The AR software 114 may fill these point pools, for example, through a multi-threaded process running in the background. Each RGB frame may be captured from a designated streaming camera and saved into a texture object using GPU commands. The AR software 114 may provide these texture objects, for example, to one or more computer vision SDKs and / or APIs for processing. From these textures, the AR software 114 may generate landmarks, which are structures of unfiltered vectors that represent what the AR software 114 may think the person's body points on the camera should be in 3D space. The AR software 114 may take those landmark points and convert them into suitable vectors (e.g., Unity Vector3) for processing.
[0027] In some embodiments, each point or point pool may be assigned its own processing pipeline through which the points flow. In some embodiments, points in raw form are too unreliable to be sent directly to an inverse kinematics system. Thus, a pipeline may be utilized to apply corrections to the points. In some embodiments, the pipeline may include low pass filters, such as Kalman and box filters, to remove noise and inaccuracies from the machine learning. In some embodiments, the pipeline may also include multiple correction objects specific to specific body PointPools to represent the points as accurately as possible in 3D space. The pipelines may interact with each other to correct different parts of the body using other parts as reference points.
[0028] After the points are corrected and adjusted by the pipeline, the AR software 114 may compile them into a single object containing all the points and use an inverse kinematics (IK) system to calculate the appropriate model transformation. The IK system may include two sets of classes, one of which polls the object every frame to get the latest body position, and the other sets the model's position and rotation. Two separate calculations may be used to set the body transformation based on the distance of the source person from the camera 119. When the person on the camera 119 is far away, the AR software 114 may use a quaternion-based IK system that rotates the body segments so that the body's forward vector matches the forward vector of the machine learning corrected points. In some embodiments, the server system 104 may use machine learning to train the AR software 114 to anticipate the user's body rotation and placement in order to accurately predict how the user may move when filming and improve the filter.
[0029] In some embodiments, the AR software 114 may use additional or alternative filter systems, such as forward and backward reaching inverse kinematics (FABRIK), instead of the default IK system, such as when a person is nearby or the model being retargeted has unique proportions.
[0030] In some embodiments, the AR software 114 may use a combination of the IK system and ARKit or ARCore, trading performance for greater stability and accuracy. In some embodiments, a separate pipeline may be created by filtering point data from those two sources if the device is capable of processing.
[0031] In some embodiments, the AR software 114 may utilize forward kinematics or other methods.
[0032] In some embodiments, the AR software 114 may be configured to capture and retarget data to animate a user's assets (e.g., avatar tokens). Such data from a user's movements may be retargeted. For example, such movement information may be retargeted to gamify social media. For example, on a social media platform such as TikTok, the AR software 114 may be used to capture user motion data from movements in videos or posts of dance trends. The movement data may be retargeted to determine movement accuracy or other metrics based on the captured movements and the game played. In some embodiments, the AR software 114 may be configured to issue a score based on the most accurate "best" dance.
[0033] In some embodiments, the AR software 114 may be configured to animate multiple objects in addition to multiple people. For example, the AR software 114 may be configured to recognize a soccer ball and track the soccer ball separately. In some embodiments, rather than the AR software 114 being utilized to recognize the objects, an artificial intelligence engine or computer vision engine may be trained to recognize objects and track those objects separately in the presence or absence of sensors or objects. Such information may be used to provide feedback regarding the movement of those objects.
[0034] In some embodiments, the AR software 114 may be used to animate real-world objects to guide the user on a chase, hunt, or to navigate to a particular retail store.
[0035] In some embodiments, the process of rendering the user's digital avatar on a video or image generated by the user device 102 using the AR software 114 may involve a hybrid approach that combines real-time local rendering with higher quality remote or delayed local rendering. For example, the user may capture a video or image using the client device 102. While the user is capturing the video or image, the client device 102 may perform a real-time local rendering of the image or video. For example, the AR software 114 may perform a real-time local rendering of the user's digital avatar. This rendering may utilize one or more of the techniques described above, such as three-dimensional modeling, image-based rendering, or depth-based rendering. The purpose of this real-time rendering is to provide a quick preview of the content and allow the user to see how the digital avatar will look in the final output. In some cases, the preview of the content may be sufficient and the user may choose to save and use the content rather than waiting for the final delayed output.
[0036] In some embodiments, in addition to real-time local rendering, the AR software 114 may send the user's video or images to a remote server (e.g., the server system 104) or perform deferred local rendering on the user device 102. The remote server or deferred local rendering process may be involved in generating a higher quality version of the user's digital avatar and movements. When the remote server rendering option is used, the server system 104 may receive the user's video or images and process it using more advanced rendering techniques or computational resources to generate a higher quality rendering of the user's digital avatar and movements. This process may involve leveraging powerful GPUs, neural networks, or other hardware and software resources to improve the quality of the avatar rendering. After the server system 104 has completed rendering the high quality digital avatar or the deferred local rendering process is completed, the final output is sent back to the user device 102 or saved locally on the user device 102. The user can then view, share, or interact with the higher quality rendering of the digital avatar overlaid on the original video or images or within another environment of their choice. By adopting a hybrid approach, the AR software 114 provides the user with a real-time preview of the digital avatar within the captured content while also ensuring that a higher quality output is available at a later time. This approach takes advantage of the strengths of both local and remote rendering or deferred local rendering to strike a balance between real-time interactivity and high quality results. In some embodiments, for higher fidelity rendering, the raw point pool data is stored separately, and utilizing this hybrid approach can smooth out any inconsistencies, tracking errors, and missing data points.This approach requires less data to be stored or cached, and offers faster upload and rendering speeds.
[0037] FIG. 19 is a block diagram illustrating a set of points, according to an exemplary embodiment. As shown, FIG. 19 includes a first set of points 1902 and a second set of points 1904 on a user's face. The first set of points 1902 may represent a set of points before pipeline adjustment. The second set of points 1904 may represent a set of points after pipeline adjustment. As can be seen, the first set of points 1902 on the user's face may appear flat and lack depth. The first set of points 1902 may be passed through one or more filters, as described above, to generate the second set of points 1904. As shown, the second set of points 1904 may better illustrate the depth and rotation of the user's face. As one skilled in the art would understand, such a process may be applied to other parts of the user's body as well.
[0038] As shown, in some embodiments, each user device 102 may communicate with a respective crypto wallet 116. The crypto wallet 116 may be configured to store the user's fungible tokens (e.g., cryptocurrency) and non-fungible tokens in an encrypted manner. In some embodiments, the crypto wallet 116 may represent a hot wallet (e.g., Coinbase, Metamask, etc.), which is a crypto wallet 116 connected to the network 105. In some embodiments, the crypto wallet 116 may represent a cold wallet (e.g., Ledger Nano X, Trezor Model T, and the like). In some embodiments, the crypto wallet 116 may be integrated within the application 112. For example, rather than a user storing fungible and / or non-fungible tokens via a third-party wallet, the user may utilize a crypto wallet associated with the server system 104 via the application 112.
[0039] The user device 103 may be operated by a user. The user device 103 may represent a mobile device, a tablet, a desktop computer, a virtual reality (VR) system, an augmented reality (AR) system, a cross reality (XR) system, or any computing system having the capabilities described herein. The user device 103 may include at least an application 132.
[0040] The application 132 may represent a social media application associated with the server system 104. In some embodiments, the application 132 may be a standalone application associated with the server system 104. In some embodiments, the application 132 may represent a web browser configured to communicate with the server system 104. In some embodiments, the user device 103 may communicate over the network 105 to request a web page, for example, from the web client application server 118 of the server system 104. For example, the user device 103 may be configured to execute the application 132 to enter a social media website that resides on the metaverse and is hosted by the web client application server 118. Content to be displayed on the user device 103 may be transmitted from the web client application server 118 to the user device 103 and then processed by the application 132 for display through a graphical user interface (GUI) of the user device 103.
[0041] Server system 104 may be configured to host a metaverse application accessible from user device 102 and user device 103. For example, server system 104 may include a web client application server 118 and a metaverse platform 120. Metaverse platform 120 may be configured to host digital content generated by users and facilitate digital interaction with the digital content within the metaverse environment. For example, metaverse platform 120 may be configured to host a simulated virtual environment in which users can post images or videos of their avatars within the simulated virtual environment. For example, metaverse platform 120 may enable users to gain ownership over their digital avatars, accessories for those avatars, and social content that users create whether or not they use those avatars.
[0042] In some embodiments, a user may use one or more third-party authentication technologies to access the metaverse environment 124. For example, a user may access the metaverse environment 124 by using a "Login with Ethereum virtual machine (EVM) compatible wallet" feature, which allows the user to be authenticated using an Ethereum account.
[0043] In some embodiments, users of the metaverse platform 120 may include unique avatars. A user's unique avatar may be minted as a non-fungible token so that no two users have the exact same avatar. In some embodiments, each avatar may include certain characteristics that may be treated as default characteristics but may eventually be replaced. For example, each avatar may include default clothing or default hair that may eventually be replaced by the owner. Using the AR software 114, users may create digital content for posting to the metaverse platform 120. The content may represent video data, audio data, and / or video data. In some embodiments, the digital content may include an image or video of the user, and the user's non-fungible token avatar is used in the video or image.
[0044] When a user creates a post on the metaverse platform 120, in some embodiments, the digital content may be immediately represented as a non-fungible token through a process called "post-to-mint." In some embodiments, the non-fungible token is not initially minted on the blockchain 122 until a transaction occurs. The transaction may refer to a purchase or sale of the non-fungible token corresponding to the user's post. Such a process may provide a gasless mint process for the user, but instantly allow the user to have a marketable product in the form of the non-fungible token.
[0045] The digital content may be displayed in the user's profile, the profile of the owner of the content, a licensee of the content, tagging users in the content, or the like. In some embodiments, other users and / or community members may interact with the post based on the user's profile. In some embodiments, the interaction may take the form of an engagement or an offer.
[0046] In some embodiments, the metaverse platform 120 may support a "use-to-earn" model. For example, the metaverse platform 120 may facilitate organic engagement (i.e., user interaction), generate activity, drive platform adoption, and even reward or otherwise provide value to content creators and owners. To do so, each post may be associated with a score. The score may represent a cumulative score indicating how many likes, shares, and other interactions a post has received. In some embodiments, some activities are rewarded with higher scores, advertising points, and / or fungibility tokens (e.g., "utility tokens") specific to the metaverse platform 120. In this manner, engagements such as likes, shares, views / plays, comments, etc. may generate rewards for end users.
[0047] In some embodiments, the utility token may take the form of an ERC20 token that is broadcast or written to the blockchain 122. For example, the utility token may conform to the Standard Openzeppelin Mintable ERC20. The utility token may be initially held by an entity associated with the server system 104. For example, the ERC20 token may be deployed from and owned by an entity using a Gnosis Multisig wallet, thereby allowing the custodian to retain control over the token until it is transferred to a user.
[0048] Thus, unlike traditional metaverse or social media environments, the metaverse platform 120 may function as a social media platform where users' avatars and posts may be represented by non-fungible tokens. For example, after posting an image or video to the metaverse platform 120, the metaverse platform 120 may mint a non-fungible token to tokenize the image or video. In this manner, the metaverse platform 120 may give users the ability to protect and sell digital content through the non-fungible tokens.
[0049] The non-fungible token marketplace 108 may represent one or more online marketplaces where users can upload or link to metaverse digital content. Through the non-fungible token marketplace 108, users can buy, sell, or display tokenized items of digital content. In some embodiments, the non-fungible token marketplace 108 may include a centralized marketplace (e.g., OpenSea) and / or a decentralized marketplace (e.g., LOOKSRARE). In some embodiments, any posting in the metaverse platform 120 that is also linked to the non-fungible token marketplace 108 may include a uniform resource locator or link that links back to the original posting in the metaverse platform 120.
[0050] The networked computer 106 may be configured to host a blockchain 122. In some embodiments, the blockchain 122 may be a public blockchain. In some embodiments, the blockchain 122 may be a private blockchain, such as, for example, a private blockchain associated with the server system 104. In general, the blockchain 122 may represent any blockchain configured to support non-fungible tokens. For example, the blockchain 122 may be a public or private blockchain based on the Ethereum platform.
[0051] 2 is a block diagram 200 illustrating the server system 104, according to an example embodiment. As shown, the server system 104 includes a repository 202 and one or more computer processors 204.
[0052] Repository 202 may represent any type of storage unit and / or device for storing data (e.g., a file system, a database, a collection of tables, or any other storage mechanism). Additionally, repository 202 may include multiple different storage units and / or devices. The multiple different storage units and / or devices may be of the same type and / or located at the same physical site. As illustrated, repository 202 includes at least metaverse platform 120.
[0053] The metaverse platform 120 may include an ingestion module 206, a tokenization module 210, and a broadcast module 214. The metaverse platform 120 may include many more modules, with the focus being on the initial avatar generation process. Each of the ingestion module 206, the tokenization module 210, and the broadcast module 214 may be comprised of one or more software modules. The one or more software modules are a collection of code or instructions stored on a medium (e.g., memory of the server system 104) that represents a series of machine instructions (e.g., program code) that implement one or more algorithmic steps. Such machine instructions may be actual computer code that a processor of the server system 104 interprets and executes the instructions, or alternatively, may be higher-level coding of instructions that are interpreted to obtain the actual computer code. The one or more software modules may also include one or more hardware components. One or more aspects of the exemplary algorithm may be executed by the hardware components (e.g., circuits) themselves, rather than as a result of instructions.
[0054] As shown, user device 102 may upload or provide an avatar image representing the user's avatar to metaverse platform 120. In some embodiments, the avatar image may be used to uniquely identify the user within the metaverse hosted by metaverse platform 120.
[0055] The ingestion module 206 may be configured to receive an avatar image and metadata information from the user device 102. After receiving the avatar image of the user's avatar, the ingestion module 206 may store the image in an accessible location on the network. For example, the ingestion module 206 may store the avatar image in a storage location 208. Although the storage location 208 is illustrated as being internal to the metaverse platform 120, one skilled in the art will understand that the storage location 208 may represent an external file hosting server or service. In some embodiments, the storage location 208 may be controlled by an entity associated with the server system 104. In some embodiments, the storage location 208 may be an external service, such as, but not limited to, the InterPlanetary File System (IPFS). After saving the image in the storage location 208, the ingestion module 206 may generate or receive a unique Uniform Resource Identifier (URI) that indicates the storage location of the avatar image. The ingestion module 20 may provide the URI of the image to the user of the user device 102. A user may use the avatar image URI to generate a metadata file that corresponds to the avatar image.
[0056] In some embodiments, a user may upload a metadata file corresponding to an avatar image. The metadata file may define features of the avatar image. Exemplary features may include, but are not limited to, base features, tech packs, geographic features (e.g., tech lines, clip accents, primary geography, etc.), eyes, teeth, hats, ears, and the like. Combining features may result in over 1000 trillion feature combinations. Thus, there may be over 1000 trillion unique avatars in the metaverse environment. In some embodiments, the metadata file may represent, for example, a JSON file to which the final non-fungible tokens are linked. The metadata file may include, for example, a URI that identifies a storage location 208 of the avatar image. The ingestion module 206 may further store the metadata file corresponding to the avatar image in the storage location 208.
[0057] The tokenization module 210 may be configured to tokenize an avatar image provided by a user. For example, the tokenization module 210 may be configured to generate a smart contract based on the avatar image. In some embodiments, the smart contract may represent an ERC721 token. The smart contract may include, for example, a URI corresponding to the token 212, a URI identifying a storage location of the avatar image within storage location 208, and a URI identifying a storage location of a metadata file corresponding to the avatar image.
[0058] The broadcast module 214 may be configured to broadcast or write the token 212 to the blockchain 122. In some embodiments, the broadcast module 214 may write the token 212 directly to the blockchain 122. For example, in some embodiments, the broadcast module 214 may deploy the token 212 on the Ethereum Mainnet. Once deployed, the token 212 may be bridged off from the Ethereum Mainnet to a cheaper layer 2 blockchain (L2) such as Polygon. Such bridging may facilitate users to interact directly from the L2.
[0059] As one skilled in the art would appreciate, in order to mint a user's avatar, the user may have to pay a gas fee associated with the minting process, which may provide an incentive for miners to process and validate transactions on the blockchain 122.
[0060] After the avatar image is minted, the token 212 may be returned to the user device 102 for storage in the user's wallet 116. In some embodiments, the token 212 may be temporarily held or controlled by an entity associated with the server system 104. For example, the token 212 may be initially deployed from and owned by that entity, which may allow a development team to retain control until the token 212 is transferred from a wallet (e.g., Gnosis Multisig) associated with the server system 104 to the user's wallet 116.
[0061] Although the above discussion has focused on avatars being minted as tokens 212, those skilled in the art will appreciate that such avatars need not be minted as tokens.
[0062] In some embodiments, rather than allowing end users (e.g., users) to create their own digital avatars, the above process may instead be performed by an administrator of the server system 104. For example, the administrator may generate an initial number of avatars by randomly selecting a combination of features. Such initial number of avatars may be made available to end users through an auction process. For example, the server system 104 may use a traditional reverse bidding process, in which avatars may be rewarded to end users. In such an embodiment, the server system 104 may first generate exchangeable tokens using the ERC1155 standard. After the end users are rewarded with avatars through this auction process, the end users may be instructed to "burn" the ERC1155 tokens, and then exchange the exchangeable tokens from the ERC1155 tokens to ERC721 tokens.
[0063] In some embodiments, metaverse platform 120 may support replacing users with their avatar equivalents in real time during the content creation process or after the original posting of generated content. For example, if Bob is a user of metaverse platform 120 and has an associated avatar, metaverse platform 120 may support a facial recognition process that identifies Bob in social media content posted to metaverse platform 120 and replaces a photo of Bob with the associated avatar.
[0064] FIG. 3 illustrates an example avatar 300, according to an example embodiment. As shown, avatar 300 may represent an avatar uniquely associated with a user or user account. Avatar 300 may represent a base character without any accessories. As shown, the appearance of avatar 300 may depend on metadata defined by the user. For example, a user may define certain metadata categories in a metadata file associated with avatar 300 that affect the appearance of avatar 300.
[0065] The avatar 300 may include multiple customizable regions. For example, a user may be able to customize one or more of a base body, a base face, a base skin tone, multiple regions to which various textures and colors may be applied, eyes, ears, and the like. Each of the multiple regions may include a different texture and / or color. Each region may have an associated metadata field in which the texture and color of the region may be defined. In some embodiments, the metadata file associated with the avatar 300 may further comprise a special lighting field. The special lighting field may be used for rare features. For example, the special lighting field may enable rare features such as glowing tech lines. As one skilled in the art will appreciate, such an avatar 300 may be used outside of a metaverse environment, such as in a different metaverse environment or a non-metaverse environment. For example, a user may use the avatar 300 on other platforms, such as, but not limited to, a video game environment (e.g., a custom character in a game), streaming services, and the like. For example, a user may use avatar 300 as a drop-in replacement for themselves in a video conference, stream, live rendering, etc. In this manner, video produced through a video conference, stream, or live rendering that uses avatar 300 can itself be minted as a token.
[0066] In some embodiments, there may be multiple views of the avatar 300. For example, a user may record and stream a live feed of themselves while being transformed into the avatar 300 in real-time or near real-time. For example, a user may be performing on stage while being projected as an MTSkin in all surrounding displays. At the same time, the output of the MTskin may be streamed as a performer on stage in the metaverse environment. Thus, all surrounding displays in the metaverse will show a feed of the physical performer.
[0067] In operation, when a user accesses their avatar (e.g., avatar 300) via the application 112, the application 112 may extract the avatar's metadata information from the crypto wallet 116. As such, the application 112 may render the user's avatar locally on the user device 102 by reconstructing the user's avatar using the base avatar character and predefined characteristics for the avatar, as stored in the crypto wallet 116.
[0068] 4 is a block diagram 400 illustrating the server system 104, according to an example embodiment. As shown, the block diagram 400 may illustrate components of the server system 104 involved in minting accessories for a user's avatar.
[0069] As shown, the user device 102 may upload or provide an accessory image to the metaverse platform 120 that indicates an accessory for the user along with the user's avatar. Exemplary accessories may be, for example, hats, shirts, watches, wallets, bags, swords, basketballs, etc. The accessories may be used to customize or modify the appearance of the user's avatar in the digital content.
[0070] The capture module 206 may be configured to receive the accessory image and metadata information from the user device 102. After receiving the accessory image, the capture module 206 may store the image in an accessible location on the network. For example, the capture module 206 may store the accessory image in a storage location 208. After storing the image in the storage location 208, the capture module 206 may generate or receive a unique uniform resource identifier (URL) that indicates the storage location of the accessory image. The capture module 206 may provide the URL of the accessory image to a user of the user device 102. The user may use the URL of the accessory image to generate a metadata file corresponding to the accessory image.
[0071] In some embodiments, a user may upload a metadata file corresponding to the accessory image. The metadata file may define characteristics of the accessory image. In some embodiments, the metadata file may represent a JSON file to which the final non-fungible token is linked. The metadata file may include, for example, a URL that identifies a storage location 208 of the accessory image. The ingestion module 206 may further store the metadata file corresponding to the accessory image in the storage location 208.
[0072] The tokenization module 210 may be configured to tokenize the accessory image provided by the user. For example, the tokenization module 210 may be configured to generate a smart contract based on the accessory image. In some embodiments, the smart contract may represent an ERC1155 token. The tokenization module 210 may utilize the ERC1155 token to make the accessory tradeable and to handle the quasi-fungibility of the accessory. A separate ERC1155 token for each accessory may allow new accessories to be released to meet the needs of that particular accessory's issuance, but still be able to interact with existing posts. The smart contract may include, for example, a URI corresponding to the token 412, a URL identifying a storage location of the accessory image in the storage location 208, and a URL identifying a storage location of a metadata file corresponding to the accessory image.
[0073] The broadcast module 214 may be configured to broadcast or write the token 412 to the blockchain 122. In some embodiments, the broadcast module 214 may write the token 412 directly to the blockchain 122. For example, in some embodiments, the broadcast module 214 may deploy the token 412 on the Ethereum Mainnet. Once deployed, the token 412 may be bridged off from the Ethereum Mainnet to the cheaper L2s.
[0074] As one skilled in the art would appreciate, in order to mint an accessory, a user may have to pay a gas fee associated with the minting process, which may provide an incentive to miners to process and verify transactions on the blockchain 122.
[0075] After the accessory image is minted, the token 412 may be returned to the user device 102 for storage in the user's wallet 116. In some embodiments, the token 412 may be temporarily held or controlled by an entity associated with the server system 104. For example, the token 412 may be initially deployed from and owned by that entity, thereby allowing a development team to retain control until the token 412 is transferred from a wallet (e.g., Gnosis Multisig) associated with the server system 104 to the user's wallet 116.
[0076] 5 is a block diagram 500 illustrating the server system 104, according to an example embodiment. As shown, the block diagram 500 can illustrate components of the server system 104 involved in minting digital content.
[0077] As shown, user device 102 may upload or provide digital content to metaverse platform 120. In some embodiments, the digital content may be representative of image and / or video content generated by a user using user device 102. For example, the user may generate the digital content using AR software 114. By using AR software 114, the user may insert a tokenized avatar of the user into audio and / or video content.
[0078] The ingestion module 206 may be configured to receive digital content and metadata information corresponding to the digital content from the user device 102. After receiving the digital content, the ingestion module 206 may store the digital content in an accessible location on the network. For example, the ingestion module 206 may store the content in a storage location 208. After storing the digital content in the storage location 208, the ingestion module 206 may generate or receive a URL indicating the storage location of the digital content. The ingestion module 206 may provide the URL of the digital content to a user of the user device 102. The user may use the URL of the digital content to generate a metadata file corresponding to the digital content.
[0079] In some embodiments, a user may upload a metadata file corresponding to the digital content to the ingestion module 206. The metadata file may define features for the digital content. Exemplary features may include, but are not limited to, base features, tech packs, regional features (e.g., tech lines, clip accents, primary regions, etc.), eyes, teeth, hats, ears, and the like. In some embodiments, the metadata file may represent a JSON file to which the final non-fungible tokens will be linked. The metadata file may include, for example, a URI that identifies a storage location 208 of the digital content. The ingestion module 206 may further store the metadata file corresponding to the digital content in the storage location 208.
[0080] As indicated above, the digital content created by the user includes the user's avatar token. To link the user's avatar token with the digital content, the metadata file may further include a URI corresponding to the tokenized avatar.
[0081] In some embodiments, the digital content created by the user may further include an accessory token made available from the server system 104 and / or generated by the user. To link the accessory token with the digital content, the metadata file may further include a URI corresponding to the tokenized accessory.
[0082] The tokenization module 210 may be configured to tokenize the digital content provided by the user (i.e., the token 512). For example, the tokenization module 210 may be configured to generate a smart contract based on the digital content and the avatar image. In some embodiments, the smart contract may be further based on any indicated accessories. In some embodiments, the smart contract may represent an ERC721 token. In some embodiments, the smart contract may represent an ERC1155 token. The smart contract may include, for example, a URI corresponding to the token 512, a URL identifying a storage location of the digital content in the storage location 208, and a URL identifying a storage location of a metadata file corresponding to the digital content. In some embodiments, the smart contract may further include a URI corresponding to the token 212, a URL identifying a storage location of the avatar image in the storage location 208, and a URL identifying a storage location of a metadata file corresponding to the avatar image. In some embodiments, the smart contract may further include a URI corresponding to the token 412, a URL identifying a storage location of the accessory image in the storage location 208, and a URL identifying a storage location of a metadata file corresponding to the accessory image.
[0083] As one skilled in the art would appreciate, when a user mints a non-fungible token, the user must typically pay a gas fee for the minting process to provide an incentive to miners to process and validate transactions on the blockchain 122. The gas fee may disincentivize users from generating posts within the metaverse environment. Thus, to encourage users to generate content within the metaverse environment, content posts may undergo “gasless minting.” In gasless minting, the tokenization module 210 may generate ERC721 or ERC1155 tokens corresponding to digital content, but the broadcast module 214 may not broadcast or write the token 512 to the blockchain 122 until another user interacts with the digital content. For example, if another user purchases the digital content, such an action may trigger the writing of the token 512 to the blockchain 122. In other words, the token 512 may not be broadcast or written to the blockchain 122 until another user buys the token 512. In this manner, the burden of paying the gas fee may be shifted from the user to the purchaser of the digital content.
[0084] Thus, after the token 512 is generated, the token 512 may be stored in the storage location 208. The broadcast module 214 may be configured to broadcast or post digital content to the user's accounts within the metaverse environment and / or within one or more external non-fungible token marketplaces 108 (e.g., OpenSea).
[0085] As one skilled in the art will appreciate, in some embodiments, the gasless minting process is replaced with a direct minting process, whereby digital content is minted instantly onto the blockchain 122 and the associated gas fee is paid by the user.
[0086] In some embodiments, tokens 512 may be owned by multiple users. For example, an interest in tokens 512 may be divided, such that tokens 512 may have multiple owners. For example, user 1 owns a 30% interest, user 2 owns a 50% interest, and user 3 owns a 20% interest. In this manner, revenue earned from tokens 512 (e.g., through interaction or engagement) may be distributed to the interest owners of tokens 512. In this manner, tokenized social media content may be divided, such that ownership of tokenized social content may be shared among multiple owners.
[0087] In some embodiments, after a post is generated, the user may tag the post with a location. For example, if a user's post is made at City Hall, the user may tag City Hall as the location of the post. In this manner, when other users access the metaverse environment 124 via the user device 103, the user may view the post in the metaverse environment 124 when they are near City Hall. For example, when the digital content is minted and tagged with a geolocation, other users may access an interactive map detailing the location of the digital content in the metaverse environment. For example, for a user accessing the metaverse environment using a cross reality device, the user may be able to view the post in the physical world by using the cross reality software. Thus, when the user is near City Hall in the physical world, the post may be visible to the user via the cross reality software.
[0088] In some embodiments, after a post is generated, a user viewing the post may choose to view it in their own physical space. For example, a user may generate a post of their avatar dancing in a park, and a user viewing the generated post may choose to use cross-reality software to watch the avatar dancing on a coffee table in their living room.
[0089] In some embodiments, any of the tokens 212, 412, or 512 may be a "parent" token or a "child" token. For example, a parent token may have one or more child tokens derived from it.
[0090] Using a more specific example, an ownership token (e.g., a parent token) may be stored in a more secure form of storage (e.g., cold storage), while a child token associated with the parent token may, for example, be attached to a social media platform (e.g., Twitter) as a profile picture, used to play or use as an avatar in a video game, rented out as part of a license transaction for use in social media or games, etc. Such a process may be performed without transmitting the parent token at all. In some embodiments, a child token may be tied to a parent token on the same blockchain, or even on a different blockchain. In this manner, the child may be recalled, greatly reducing the risks associated with ongoing cross-platform and cross-chain. In some embodiments, the tokenized data may be further anonymized, for example by utilizing zero-knowledge proofs (or zero-knowledge rollup), and an encryption layer may be created between the parent token and the child token for privacy purposes.
[0091] In some embodiments, a token may be a "child" token. For example, a token may be pegged to another parent token. In some embodiments, a child token may not be transferable alone without a parent token. In some embodiments, a child token may be transferable alone without a parent token. If a user owns a parent token, the user can claim the child token regardless of whether another person owns the child token. Such a feature may provide another set of security to the user. For example, a user's parent token may be stored in a more secure vault (e.g., cold storage), while the child token pegged to the parent token is left in the hot storage wallet.
[0092] In some embodiments, such parent / child relationships are utilized to create personalized advertisements that can be directed to the consumer, but can prevent that personal information from reaching the advertiser. Such a feature can be a practical way to allow a user to opt-in to viewing some advertisements, but with a layer of anonymization, security, and further customization of the targeted advertisements being provided to the user, such as by wallet address.
[0093] In some embodiments, a user may be able to borrow or lend their avatar or accessory. For example, as described above, the avatar token 212 or accessory token 412 may represent a parent token that includes multiple child tokens. A user (i.e., a lender) may facilitate a smart contract with another user (e.g., a borrower) that allows the borrower to temporarily use the user's avatar or accessory within the metaverse environment 124 or outside the metaverse environment 124 (e.g., a video game, a Web2 environment, etc.).
[0094] FIG. 17 illustrates an example diagram illustrating parent-child token relationships, according to an example embodiment. As shown, there is a parent token 1702. The parent token 1702 has n child tokens associated with it (tokens 17041, 17042, ..., 1704 n ) (generally child tokens 1704). Each child token 1704 may be borrowed or loaned to another user. For example, each child token 1704 may have corresponding metadata 1706 associated with it. The metadata 1706 may define the terms of a lease agreement between a lessor and a lessee.
[0095] In some embodiments, rather than utilizing a parent / child token relationship, a user may be able to borrow or loan an avatar using another user as a temporary custodian of the avatar token 212 or accessory token 412. For example, if a parent token is licensed to be used in marketing materials, a smart contract may restrict the movement of either token until contractual provisions or certain conditions are met.
[0096] In some embodiments, the metaverse platform 120 may be configured to import any metadata that may be integrated into a database associated with the metaverse platform 120 and reproduce the asset or metadata within the metaverse platform 120. Through rendering of the metadata, a user may have the ability to select an asset that may be represented in a media output. Such functionality may provide a user with the ability to select an asset that they own or have access to and have the asset rendered in real time within a three-dimensional environment, such as the metaverse environment. After the asset is rendered, the metaverse platform 120 may bring the user's skeletal data into the frame and animate the selected avatar in real time or near real time.
[0097] 6A illustrates an example avatar 600 having accessory 602, accessory 604, and accessory 606, according to an example embodiment. As shown, avatar 600 may be based on base character avatar 300 described above with respect to FIG.
[0098] The avatar 600 may include a number of accessories 602-606 associated therewith. As shown, the avatar 600 may include an accessory 602 corresponding to a glasses accessory, an accessory 604 corresponding to a pants accessory, and an accessory 606 corresponding to a boots accessory. Each of the accessories 602-606 may be represented as its own respective accessory token. Such accessories 602-606 may be rendered on a base avatar. For example, such accessories 602-606 may be rendered on a base avatar local to the user device 102.
[0099] 6B illustrates an example avatar 650 having accessory 652, accessory 654, and accessory 656, according to an example embodiment. As shown, avatar 650 may be based on base character avatar 300 described above with respect to FIG.
[0100] The avatar 650 may include a number of accessories 652-656 associated therewith. As shown, the avatar 650 may include an accessory 652 corresponding to a jacket accessory, an accessory 654 corresponding to a pants accessory, and an accessory 656 corresponding to a boots accessory. Each of the accessories 652-656 may be represented as its own respective accessory token. Such accessories 652-656 may be rendered on a base avatar. For example, such accessories 652-656 may be rendered on a base avatar local to the user device 102.
[0101] As noted above, those skilled in the art will appreciate that such avatars 600 and 650 may be used outside of the Metaverse environment. For example, a user may use the avatar 600 or 650 on other platforms, such as, but not limited to, a video game environment (e.g., a custom character within the game).
[0102] 7 is a block diagram 700 illustrating the server system 104, according to an example embodiment. As shown, the block diagram 700 can illustrate components of the server system 104 involved in monitoring digital content for trigger events.
[0103] The monitoring module 704 may be configured to monitor the user's digital content to determine when a trigger event 702 occurs. As presented above, the trigger event may be associated with a purchase, sale, or transfer of tokens 512 corresponding to the digital content. In some embodiments, the monitoring module 704 may be configured to monitor the user's digital content within a metaverse environment. In some embodiments, the monitoring module 704 may be configured to monitor the user's digital content within one or more non-fungible token marketplaces 108.
[0104] In response to the identification event 702, the monitoring module 704 may retrieve the corresponding token 512 from the storage location 208. The broadcast module 214 may then be configured to broadcast or write the token 512 to the blockchain 122. In some embodiments, the broadcast module 214 may write the token 512 directly to the blockchain 122. For example, in some embodiments, the broadcast module 214 may deploy the token 512 on the Ethereum Mainnet. Once deployed, the token 512 may be bridged off from the Ethereum Mainnet to cheaper L2s. Such bridging may facilitate users to interact directly from the L2.
[0105] After the avatar image is minted, the token 512 may be returned to the user device 102 for storage in the user's wallet 116. In some embodiments, the token 512 may be temporarily held or controlled by an entity associated with the server system 104. For example, the token 512 may be initially deployed from and owned by that entity, thereby allowing a development team to retain control until the token 512 is transferred from a wallet associated with the server system 104 (e.g., Gnosis Multisig) to the user's wallet 116. After being stored in the user's wallet 116, the user may transfer the token 512 to a buyer.
[0106] The monitoring module 704 may further be configured to monitor the user's content to determine when to reward the user with additional points. As referenced above, the user's content may be displayed on the user's profile in the metaverse environment 124 and / or in one or more non-fungible token marketplaces 108. Other users may interact with the user's content. Some activities or interactions may be rewarded with higher scores, advertising points, and / or metaverse tokens. Engagements such as likes, shares, views / plays, and comments may generate rewards for the user creating content.
[0107] In some embodiments, user engagement with content may be represented on the blockchain, for example, but not limited to, interactions with social content such as liking, sharing, viewing, etc.
[0108] In some embodiments, interactions on social content may be represented on the blockchain by attaching transactions to those interactions. In some embodiments, a system may be used where interactions are automatically or manually migrated to the blockchain on a preset basis. In some embodiments, interactions may be migrated in bulk transactions with all interactions that have occurred within the computing environment 100 over some past period of time. In some embodiments, interactions may be tokenized in real-time or near real-time. Within this structure, gas fees associated with transaction representations on the blockchain may be pushed to entities or users associated with the server system 104. In some embodiments, there may be a threshold on the number of interactions that must occur before a transaction is triggered.
[0109] In some embodiments, the monitoring module 704 may update the metadata associated with the user's content to reflect the updated score. For example, as described above, the metadata file may include various attributes associated with the token to which the metadata is linked. In some embodiments, some of the attributes may include a score for the digital content. The monitoring module 704 may update the metadata file in the storage location 208 without affecting the linked token.
[0110] 8 illustrates an example graphical user interface (GUI) 800, according to an example embodiment. GUI 800 may include digital content 802. As shown, digital content 802 may include a user's avatar 804 having an accessory 806. Accessory 806 may be representative of a sword that is rendered with avatar 804.
[0111] Through GUI 800, other users may perform one or more actions that may give the user a higher score for the user's posting. For example, the user may rate the digital content 802 as like or favorite via graphical element 807 or share the user's posting via panel 808. As shown in panel 808, the user may share the digital content 802 to a variety of sources, including, but not limited to, text messages, other users in the metaverse environment 124, other individuals via Facebook Messenger, Facebook, WhatsApp, and the like. Additionally, in some embodiments, the user may be able to save the digital content 802 via graphical element 810.
[0112] 9A is a block diagram illustrating a server system 104 according to an example embodiment. As shown, the block diagram may illustrate components of the server system 104 involved in indexing events occurring within the metaverse environment 124 according to an example embodiment.
[0113] As shown, the monitoring module 704 may be configured to monitor a user's digital content 903 to index interactions 901 associated with the digital content 903. Examples of interactions with the digital content 903 may include, but are not limited to, likes, comments, shares, etc. on the user's digital content. In some embodiments, the monitoring module 704 may be configured to record each interaction 901 in association with a token 512 corresponding to the digital content. In some embodiments, recording each interaction 901 in association with a token corresponding to the digital content 903 may include the monitoring module 704 updating a metadata file 902 associated with the token 512. For example, the monitoring module 704 may update the metadata file 902 stored in the storage location 208.
[0114] In some embodiments, the monitoring module 704 may perform such indexing in real-time or near real-time on a per-interaction basis, hi some embodiments, the monitoring module 704 may perform batch processing of multiple interactions periodically throughout the day.
[0115] Such indexing may be useful, for example, when transferring ownership of a token 512 between users. For example, assume that a token 512 corresponds to a social media post that includes 1000 likes and 100 comments. When the owner of the token 512 transfers ownership of the token 512 to a buyer, indexing of the interactions may enable the transfer of the interactions associated with the token 512. Thus, all likes, comments, or other interactions stored in association with the token 512 may be transferred to the buyer.
[0116] 9B is a block diagram illustrating a server system 104 according to an example embodiment. As shown, the block diagram may illustrate components of the server system 104 involved in indexing events occurring within the metaverse environment 124 according to an example embodiment.
[0117] As shown, the monitoring module 704 may be configured to monitor the user's digital content 903 to index interactions 901 associated with the digital content 903. Examples of interactions with the digital content 903 may include, but are not limited to, likes, comments, shares, etc. on the user's digital content. In some embodiments, the monitoring module 704 may be configured to record each interaction 901 in association with a token 512 corresponding to the digital content. In some embodiments, recording each interaction 901 in association with a token corresponding to the digital content 903 may be the tokenization module 210 generating a token 950 or immutable record corresponding to each interaction 901. The broadcast module 214 may broadcast the token 950 to the blockchain 122. In some embodiments, the broadcast module 214 may create a link between the token 512 and the token 950.
[0118] 10A is a block diagram illustrating interactions between a Web2 environment 1000 and a Web3 environment 1050, according to an example embodiment. As shown, the monitoring module 704 may be logically located between the Web2 environment 1000 and the Web3 environment 1050.
[0119] As described above, the metaverse platform 120 may be configured to host a metaverse environment 124 in which users can generate social media posts and in which other users can interact with (e.g., comment, like, etc.) the generated social media posts. As one skilled in the art will appreciate, users of the metaverse environment may link their metaverse accounts (e.g., Web3 accounts) to associated non-metaverse accounts (e.g., Web2 accounts). Exemplary Web2 accounts may include, but are not limited to, Instagram, Twitter, TikTok, Facebook, SoundCloud, Medium, and the like.
[0120] When such a link occurs, the monitoring module 704 may be configured to monitor the user's Web2 account (e.g., Web2 account 1002), so that the monitoring module 704 may migrate the user's Web2 posts and / or interactions. For example, after a user links an Instagram account with a metaverse account, the monitoring module 704 may be configured to index and migrate the user's Instagram posts. Using a more specific example, assume that the user has one post (e.g., Web2 post 1004) on Instagram. The monitoring module 704 may identify the Web2 post 1004 and all of the interactions 1006 (e.g., likes, comments, shares) of the Web2 post 1004. The monitoring module 704 may cause the metaverse platform 120 to generate a token 1040 corresponding to the user's Instagram post, as described above in connection with FIG. 7. Similar to the process described above, the monitoring module 704 may store a representation of the user's Instagram post in the storage location 208. The monitoring module 704 may then generate tokens 1040 based on the user's Instagram posts. Such tokens 1040 may then exist as social media posts in the metaverse environment 124.
[0121] In some embodiments, the monitoring module 704 may further index each interaction 1006 associated with the Instagram post. For example, the monitoring module 704 may be configured to identify and store each interaction 1006 associated with the token 1040. In some embodiments, such a process may include the monitoring module 704 updating a metadata file (e.g., stored in the storage location 208) associated with the token 1040 to include each interaction. In such an embodiment, the monitoring module 704 may effectively migrate the interactions 1006 of the Web2 post 1004 from the Web2 environment 1000 to the Web3 environment 1050.
[0122] In some embodiments, the monitoring module 704 may be further configured to continuously or periodically monitor the Web2 post 1004 to continue the indexing process. For example, the monitoring module 704 may continuously or periodically monitor the Web2 post 1004 to update the token 1040 metadata file with new interactions. In this manner, any interactions with the Web2 post 1004 are indexed in the storage location 208 and the user may be credited for those interactions in the Web3 version of the social media post.
[0123] FIG. 10B is a block diagram illustrating interactions between the Web2 environment 1000 and the Web3 environment 1050, according to an example embodiment. Similar to the process described above in connection with FIG. 10A, the monitoring module 704 may be further configured to monitor the user's Web3 posts, such that the monitoring module 704 may index and migrate the user's Web3 posts and / or interactions to the Web2 environment 1000. For example, as shown, the user may create a social media post 1082 in the Web3 environment 1050. As described above in connection with FIG. 2, the metaverse platform 120 may generate a token (e.g., token 512) associated with the social media post 1082. Similarly, as described above in connection with FIG. 7, the monitoring module 704 may monitor the social media post 1082 to index interactions 1084 with the social media post 1082.
[0124] In some embodiments, after a user links a Web2 account to a Web3 account, the monitoring module 704 may be configured to migrate the user's Web3 posts (e.g., social media posts 1082) to the Web2 environment 1000. Continuing with the example above, the monitoring module 704 may identify the social media posts 1082 and the interactions 1084 (e.g., likes, comments, shares). The monitoring module 704 may generate a Web2 post 1086 that corresponds to the social media post 1082 and cause the Web2 post 1086 to exist in the Web2 environment 1000.
[0125] In this manner, the monitoring module 704 may facilitate seamless integration between social media posts present in the Web2 environment 1000 and social media posts present in the Web3 environment 1050.
[0126] 11A is a block diagram illustrating a computing environment 1100 according to an example embodiment. As shown, the computing environment 1100 may include a Web2 environment 1100 and a Web3 environment 1150 according to an example embodiment. As shown, the monitoring module 704 may be logically located between the Web2 environment 1100 and the Web3 environment 1150.
[0127] The Web3 environment 1150 may include posts 1102 generated by users in the metaverse environment 124. In some embodiments, the posts 1102 may have Web2 counterparts that exist in the Web2 environment 1100. As described above in connection with FIG. 2, when a user goes through a process of tokenizing a social media post, the metaverse platform 120 may create a watermark to be included in the social media post. As shown, the post 1102 may include an associated watermark 1104. In this manner, misuse of the social media post may be tracked. The monitoring module 704 may be configured to trawl or scan the Web3 environment 1150 and the Web2 environment 1100 to identify posts that include the watermark unique to the post 1102. For example, if the monitoring module 704 identifies a repost 1110 or fraudulent post that includes the watermark 1104, the monitoring module 704 may attribute any interaction with the repost or fraudulent post to the post 1102, similar to the indexing process described above in connection with Figures 9A-10B. In some embodiments, the monitoring module 704 may notify the owner of the post 1102 of the repost or fraudulent use.
[0128] 11B is a block diagram illustrating a computing environment 1100 according to an example embodiment. As shown, the computing environment 1100 may include a Web2 environment 1100 and a Web3 environment 1150 according to an example embodiment. As shown, the monitoring module 1154 may be logically located between the Web2 environment 1100 and the Web3 environment 1150.
[0129] The Web3 environment 1150 may include posts 1162 generated by users in the metaverse environment 124. In some embodiments, the posts 1162 may include Web2 counterparts that exist in the Web2 environment 1100. Rather than utilizing the watermarking approach described above in connection with FIG. 2 and FIG. 11A, in some embodiments, the monitoring module 1154 may include an image recognition module 1156. The image recognition module 1156 may represent one or more computer vision or artificial intelligence techniques to identify reposts or fraudulent posts of the posts 1162. In this manner, misuse of social media posts may be tracked using computer vision and / or artificial intelligence techniques. For example, the monitoring module 1154 may be configured to trawl or scan the Web3 environment 1150 and the Web2 environment 1100 to identify posts that are similar to or may be derivative of the posts 1162. For example, if the monitoring module 1154 identifies a repost or fraudulent post 1110 that is similar to or derivative of a post 1162, the monitoring module 1154 may attribute any interactions with the repost or fraudulent post 1164 back to the post 1162, similar to the indexing process described above in connection with Figures 9A-10B.
[0130] 12 is a block diagram illustrating a computing environment 1202 that interacts with server system 104, according to an example embodiment. As described above, a user's avatar may be used outside of metaverse environment 124, such as in a different metaverse environment or a non-metaverse environment. For example, a user may use the avatar on other platforms, such as, but not limited to, a video game environment (e.g., a custom character in a game), streaming services, and the like. For example, a user may use the avatar as a drop-in replacement for themselves in a video conference, stream, live rendering, etc.
[0131] When a user desires to use an avatar in the computing environment 1202 (e.g., another metaverse environment or a non-metaverse environment), the computing environment 1202 may identify a three-dimensional model or base avatar available in or compatible with the computing environment 1202. In some embodiments, the selected three-dimensional model or base avatar may be a file type compatible with the computing environment 1202. In some embodiments, the server system 104 may adjust the avatar according to the requirements of the computing environment 1202. In some embodiments, the user may indicate some metadata and / or accessories to make the avatar conform to the computing environment 1202. For example, as described above, the metadata 1204 may define the customizable portions of the user's avatar, i.e., customizations that make the user's avatar unique to the user. The user may customize the avatar for use in the computing environment 1202 by adjusting the customizable portions of the avatar (e.g., gender, body type, and / or skin color) or exporting it with accessories available in the computing environment 1202. In this manner, the server system 104 may provide customization and even three-dimensional models or base avatars to the computing environment 1202 .
[0132] To take a specific example, if the computing environment 1202 is Minecraft or Sandbox, the server system 104 may identify a three-dimensional model or base avatar in a file type compatible with the Minecraft or Sandbox environment. In some embodiments, the server system 104 may further adjust the avatar according to the requirements of the Minecraft or Sandbox environment, so that the avatar is usable (i.e., its movements can be controlled by the user) and appears native to the intended environment. In this manner, users can use their avatars or avatar accessories in different metaverse or non-metaverse environments.
[0133] To take another example, a user may connect y00ts non-fungible tokens (NFTs) to the metaverse environment 124. These NFTs are expressed on both the layer 1 blockchain, Solana, and the layer 2 blockchain, Polygon. Doing so allows a unique y00t to be exhibited within the virtual space, allowing individuals to interact and embody as y00t avatars regardless of which blockchain they are utilizing. Another example could involve a user connecting their digital artwork NFT, such as artwork from the Beeple collection, to the metaverse environment 124. Once connected, the user could exhibit their artwork within a virtual gallery, allowing other users to view and potentially discuss the art. The user could also interact or collaborate with the artist / painting in real time. A user could also own virtual real estate NFTs within another metaverse, such as Decentraland. It would also be possible to connect virtual real estate to the metaverse environment 124, building a bridge between the two metaverse platforms and allowing easier navigation and interaction between them. The virtual real estate can be viewed as a unique identity and, using our technology, the real estate can be viewed and interacted with in real time. A user may connect a virtual fashion NFT, such as digital sneakers or apparel, to the metaverse environment 124. By doing so, an avatar in the metaverse can wear a unique digital garment, showcasing their style and attracting attention from other users. A user may own an NFT representing a famous car, such as a limited edition virtual Lamborghini. This NFT can be connected to the metaverse environment 124 to use the car as a means of transportation in the virtual space, adding a new layer of interactivity and personalization. The car may also be brought into the virtual space, painted, interacted with, and driven using the avatar and our motion capture.A user may also be able to connect an NFT ticket to a virtual concert or event to the metaverse environment 124. Doing so may allow the user to attend the event and interact with other participants within the metaverse platform, while transferring a digital identity or other NFT into the environment to create a more immersive and engaging experience. In some cases, a user may own an NFT that represents a unique virtual pet or creature, such as an Axie from Axie Infinity. This NFT may be connected to the metaverse environment 124, thereby allowing the user to interact with, train, or even battle or compete with other users' pets. By providing users with the ability to connect various types of NFTs to the metaverse environment 124, the metaverse platform 120 improves the overall user experience and encourages cross-chain or cross-metaverse interaction and collaboration.
[0134] As one skilled in the art would appreciate, the reverse process is also possible. In some embodiments, a user may also bring a non-native non-fungible token into the metaverse environment 124. For example, a user may connect a non-fungible token to the metaverse environment 124, such that the non-fungible token may be utilized within the metaverse environment 124. To take a more specific example, a user may utilize Bored Ape's non-fungible token in the metaverse environment 124. Thus, in this manner, the metaverse platform 120 may provide cross-chain or cross-metaverse capabilities to a user.
[0135] 13 is a flow diagram illustrating a method 1300 for minting digital content, according to an example embodiment. The method 1300 may begin at step 1302.
[0136] In step 1302, the metaverse platform 120 may identify an avatar token associated with the user. In some embodiments, the avatar token may be pre-generated by the metaverse platform 120 and transferred to the user. For example, the metaverse platform 120 may be configured to generate a number of avatar tokens to be assigned to users of the platform. The metaverse platform 120 may transfer or assign ownership of the avatar token from an entity associated with the server system 104 to the user.
[0137] In some embodiments, the metaverse platform 120 may identify the avatar token in response to receiving an avatar image from the user device 102. For example, as described above in connection with FIG. 2, the user device 102 may upload or provide an avatar image showing the user's avatar to the metaverse platform 120. Based on the avatar image and a metadata file corresponding to the avatar image, the metaverse platform 120 may tokenize the provided avatar image. For example, the tokenization module 210 may generate a smart contract based on the avatar image. In some embodiments, the smart contract may represent an ERC721 token. The metaverse platform 120 may broadcast or write the avatar token to the blockchain 122. After being broadcast or written to the blockchain 122, the avatar token may be provided to the user device 102 for storage in the user's crypto wallet.
[0138] In step 1304, the metaverse platform may receive a request to mint the digital content within the metaverse environment 124. For example, the metaverse platform 120 may receive the digital content and metadata information corresponding to the digital content from the user device 102. After receiving the digital content, the metaverse platform 120 may store the digital content in an accessible location on the network. After storing the digital content in the storage location 208, the metaverse platform 120 may generate or receive a URL indicating the storage location of the digital content. The metaverse platform 120 may provide the URL of the digital content to the user of the user device 102. The user may use the URL of the digital content to generate a metadata file corresponding to the digital content.
[0139] The digital content created by the user may include an avatar of the user. For example, the user may utilize the AR software 114 to generate a video or image of the user and replace a representation of the user in the video or image with the user's digital avatar or insert the user's avatar into the video or image. To link the user's avatar token with the digital content, the metadata file may further include a URI corresponding to the tokenized avatar.
[0140] In step 1306, the metaverse platform 120 may generate a digital content token corresponding to the digital content. For example, the metaverse platform 120 may generate a smart contract based on the digital content and the avatar token. In some embodiments, the smart contract may be further based on any indicated accessories in the request. In some embodiments, the smart contract may represent an ERC721 token. In some embodiments, the smart contract may represent an ERC1155 token. The smart contract may include, for example, a URI corresponding to the token 512, a URL identifying a storage location of the digital content in the storage location 208, and a URL identifying a storage location of a metadata file corresponding to the digital content. In some embodiments, the smart contract may further include a URI corresponding to the token 212, a URL identifying a storage location of the avatar image in the storage location 208, and a URL identifying a storage location of a metadata file corresponding to the avatar image. In some embodiments, the smart contract may further include a URI corresponding to the token 412, a URL identifying a storage location of the accessory image in the storage location 208, and a URL identifying a storage location of a metadata file corresponding to the accessory image.
[0141] At step 1308, the metaverse platform 120 may host the digital content within the metaverse environment 124. In some embodiments, in addition to hosting the digital content within the metaverse environment 124, the metaverse platform 120 may further facilitate hosting of the digital content via one or more social media applications and / or the non-fungible token marketplace 108.
[0142] At step 1310, the metaverse platform 120 may detect an interaction with the digital content. As presented above, in some embodiments, a user's digital content token cannot be written to or broadcast on the blockchain 122 until the user interacts with the digital content token (e.g., buys, sells, or transfers). In other words, the tokenization referenced above at step 1306 may be a "gasless" mint. Thus, the metaverse platform 120 may monitor the digital content to determine when a trigger has occurred that warrants writing the digital content token to the blockchain 122. In some embodiments, the metaverse platform 120 may monitor the digital content within the metaverse environment 124. In some embodiments, the metaverse platform 120 may monitor the digital content within one or more non-fungible token marketplaces 108.
[0143] In step 1312, the metaverse platform 120 may write the digital content token to the blockchain 122 based on detecting the interaction. In response to identifying the interaction, the metaverse platform 120 may retrieve the corresponding digital content token 512 from storage. The metaverse platform 120 may then broadcast or write the digital content token to the blockchain 122. In some embodiments, the metaverse platform 120 may write the token 512 directly to the blockchain 122.
[0144] 14 is a diagram illustrating an example graphical user interface (GUI) 1400, according to an example embodiment. The GUI 1400 may illustrate a screen capture of the user device 102 when the user device 102 is utilizing the full body mode of the AR software 114. In such an embodiment, the artificial intelligence module 115 may identify multiple anchor points on the user's body. In this manner, the AR software 114 may be able to more accurately capture the user's hands and the rest of the body.
[0145] FIG. 15 is a diagram illustrating an example graphical user interface (GUI) 1500 according to an example embodiment. The GUI 1500 may illustrate a screen capture of the user device 102 when the user device 102 is utilizing a selfie mode of the AR software 114. In such an embodiment, the artificial intelligence module 115 may identify a subset of anchor points from a plurality of anchor points on the user's body. For example, the artificial intelligence module 115 may ignore certain anchor points, such as those associated with the user's hands and the rest of the body, because the AR software 114 is in selfie mode. In this manner, the AR software 114 may be able to more accurately capture the user's hands and the rest of the body. In this manner, the artificial intelligence module 115 may instruct the AR software 114 to focus primarily on the anchor points on the user's face.
[0146] 18 is a flow diagram illustrating a method 1800 for generating digital content, according to an example embodiment. The method 1800 may begin at step 1802.
[0147] At step 1802, the client device 102 may capture markerless motion data of the user. In some embodiments, the client device 102 may utilize the camera 119 of the client device 102. In some embodiments, the client device 102 may utilize one or more other sensors that may be available to the client device 102. Exemplary sensors may include, but are not limited to, a light detection and ranging (LIDAR) sensor, a time-of-flight (ToF), an infrared camera, a laser, a flood illuminator, a proximity sensor, and a dot projector.
[0148] In some embodiments, capturing the user's markerless motion data may include the client device 102 capturing multiple sets of data depending on the distance between the user and the camera 119. For example, as described above in connection with FIG. 1, the AR software 114 may be configured such that when the user device 102 is within a close distance of the user (e.g., when the user's face fills a threshold percentage of the screen), the artificial intelligence module 115 locks the user's chest to the bottom of the screen. After the user's body is locked in, the AR software 114 may be configured to prioritize focusing on the user's face and hands instead of exploring the rest of the user's body. In some embodiments, rather than locking on the user's body, there may be a smooth transition when the user moves from close to far distances or vice versa.
[0149] Thus, when the user is within a threshold distance of the camera 119 (e.g., in selfie mode), the AR software 114 may capture a first portion of the user's markerless motion data. The first portion of the user's markerless motion data may include a first plurality of points of the user to focus on. For example, the first plurality of points may include finer points of the user's face.
[0150] When the user is outside the threshold distance of the camera 119 (e.g., in the case of full body mode), the AR software 114 may capture a second portion of the user's markerless motion data. The second portion of the user's markerless motion data may include a second plurality of points of the user to focus on. For example, the second plurality of points may include points associated with the user's entire body (e.g., arms, legs, hands, fingers, etc.). In some embodiments, the AR software 114 may ignore or not pay attention to some of the first plurality of points captured when the user is within the threshold distance of the camera 119. In other words, in selfie mode, the user may be able to open and close their mouth and eyes, smile, or frown, but in full body mode, the user may not be able to make as many facial expressions as in selfie mode in other ways, since the AR software 114 may place less emphasis on processing data points on the user's face to more accurately capture the user's hands and the rest of the body.
[0151] At step 1804, the client device 102 may retarget the first and second plurality of points to a three-dimensional model of an avatar associated with the user. As described above, the user may have an avatar token that uniquely identifies the user. The client device 102 may identify the user's avatar based on the user's avatar token stored in the wallet 116. After the user's avatar is identified and / or verified, the client device 102 may retarget the first and second plurality of points to the avatar, thereby animating the three-dimensional model of the avatar. In some embodiments, the animation may be performed in real time or near real time.
[0152] At step 1806, the client device 102 may render the animated video. In some embodiments, the client device 102 may render the animated video locally on a computing system. In some embodiments, the client device 102 may have the server system 104 render the animated video remotely. Such an online / offline process may allow a user to view a preview of the video, while the server system 104 may generate a high quality version of the video.
[0153] At step 1808, the client device 102 may cause the server system 104 to generate a non-fungible token for the video. For example, the client device 102 may cause the server system 104 to generate the token as described above in connection with FIG.
[0154] FIG. 16A illustrates the architecture of a system bus computing system 1600 according to an exemplary embodiment. One or more components of the system 1600 may communicate with each other electronically using a bus 1605. The system 1600 may include a system bus 1605 that couples various system components to the processor 1610, including a processor (e.g., one or more CPUs, GPUs, or other types of processors) 1610 and a system memory 1615, such as a read-only memory (ROM) 1620 and a random access memory (RAM) 1625. The system 1600 may include a cache of high-speed memory directly connected to the processor 1610, or in close proximity to the processor 1610, or integrated as part of the processor 1610. The system 1600 may copy data from the memory 1615 and / or storage device 1630 to the cache 1612 for quick access by the processor 1610. In this manner, the cache 1612 may provide performance improvements that avoid delays to the processor 1610 while waiting for data. These and other modules may control or be configured to control the processor 1610 to perform various operations. Other system memories 1615 are available and may be used as well. The memory 1615 may include multiple different types of memory with different performance characteristics. The processor 1610 may represent a single processor or multiple processors. The processor 1610 may include one or more of general purpose processors or hardware or software modules, such as service 1 1632, service 2 1634, and service 3 1636 stored in a storage device 1630, configured to control the processor 1610, as well as special purpose processors where the software instructions are embedded in the actual processor design. The processor 1610 may be essentially a completely self-contained computing system, including multiple cores or processors, buses, memory controllers, caches, etc. Multi-core processors may be symmetric or asymmetric.
[0155] To enable user interaction with the system 1600, the input device 1645 can be any number of input mechanisms, such as a microphone for audio, a touch screen for gesture or graphic input, a keyboard, a mouse, motion input, voice, etc. The output device 1635 (e.g., a display) can also be one or more of a number of output mechanisms known to those skilled in the art. In some cases, a multimodal system can allow a user to provide multiple types of input for communicating with the system 1600. The communication interface 1640 can generally govern and manage user input and system output. There is no restriction to operating with a particular hardware arrangement, and thus the basic functions herein can be easily replaced with improved hardware or firmware arrangements as developed.
[0156] The storage device 1630 may be a non-volatile memory, such as a magnetic cassette, a flash memory card, a solid-state memory device, a digital versatile disk, a cartridge, a random access memory (RAM) 1625, a read-only memory (ROM) 1620, and hybrids thereof, which may be a hard disk or other type of computer-readable medium capable of storing data accessible by a computer.
[0157] The storage device 1630 may include services 1632, 1634, and 1636 for controlling the processor 1610. Other hardware or software modules are also contemplated. The storage device 1630 may be connected to the system bus 1605. In one aspect, a hardware module that performs a particular function may include a software component stored on a computer-readable medium in association with the necessary hardware components, such as the processor 1610, the bus 1605, an output device 1635 (e.g., a display), etc., to perform the function.
[0158] FIG. 16B illustrates a computer system 1650 having a chipset architecture, according to an exemplary embodiment. The computer system 1650 may be an example of computer hardware, software, and firmware that may be used to implement the disclosed techniques. The system 1650 may include one or more processors 1655, which represent any number of physically and / or logically distinct resources capable of executing software, firmware, and hardware configured to perform the identified operations. The one or more processors 1655 may communicate with a chipset 1660, which may control input to and output from the one or more processors 1655. In this example, the chipset 1660 may output information to an output 1665, such as a display, and may read information from and write information to a storage device 1670, which may include, for example, magnetic media and solid-state media. The chipset 1660 may also read data from and write data to a storage device 1675 (e.g., RAM). For interfacing with the chipset 1660, a bridge 1680 may be provided for interfacing with various user interface components 1685. Such user interface components 1685 may include a keyboard, a microphone, touch detection and processing circuitry, a pointing device such as a mouse, etc. In general, input to the system 1650 may come from any of a variety of sources, machine-generated and / or human-generated.
[0159] The chipset 1660 can also interface with one or more communication interfaces 1690, which may have different physical interfaces. Such communication interfaces can include interfaces for wired and wireless local area networks, broadband wireless networks, and even personal area networks. Some applications of the methods for generating, displaying, and using GUIs disclosed herein may include receiving an ordered data set via a physical interface, or generated by the machine itself by one or more processors 1655 analyzing data stored on the storage device 1670 or 1675. Additionally, the machine can receive inputs from a user through a user interface component 1685 and perform appropriate functions, such as browsing functions by interpreting these inputs using one or more processors 1655.
[0160] The exemplary systems 1600 and 1650 may also have multiple processors 1610 or be part of a group or cluster of networked computing devices to provide greater processing power.
[0161] Although the above description is directed to the embodiments described herein, other further embodiments may be devised without departing from the basic scope of the invention. For example, aspects of the disclosure may be implemented in hardware or software or a combination of hardware and software. An embodiment described herein may be implemented as a program product for use with a computer system. The programs of the program product define the functions of the embodiment (including the methods described herein) and may be contained in various computer-readable storage media. Exemplary computer-readable storage media include, but are not limited to, (i) storage media on which information is permanently stored and which cannot be written (e.g., a read-only memory (ROM) device in a computer, such as a CD-ROM disk readable by a CD-ROM drive, a flash memory, a ROM chip, or any type of solid-state non-volatile memory), and (ii) a writeable storage medium on which changeable information is stored (e.g., a floppy disk or any type of solid-state random access memory in a diskette drive or hard disk drive). Such computer-readable storage media, when carrying computer-readable instructions that direct the functions of the disclosed embodiments, are embodiments of the disclosure.
[0162] Those skilled in the art will appreciate that the preceding examples are illustrative and not limiting. All permutations, enhancements, equivalents, and improvements thereon will become apparent to those skilled in the art after reading this specification and studying the drawings, and are intended to be within the true spirit and scope of the present disclosure. Accordingly, the following appended claims are intended to include all such modifications, permutations, and equivalents that fall within the true spirit and scope of these teachings. [Explanation of symbols]
[0163] 20 Import Module 100 Computing Environments 102 User Devices 103 User Devices 104 Server System 105 Network 108 Non-Fungible Token Marketplace 112 Applications 114 AR Software 115 Artificial Intelligence Module 116 Crypto Wallets 118 Web Client Application Server 119 Cell Phone Camera 120 Metaverse Platform 122 Blockchain 124 Metaverse Environment 132 Applications 200 Block Diagram 202 Repositories 206 Import Module 208 Avatar Image Storage Location 210 Tokenization Module 212 Tokens 214 Broadcast Module 300 Avatar 400 Block Diagram 412 Tokens 500 Block Diagram 512 Tokens 600 Avatars 602 Accessories 604 Accessories 606 Accessories 650 Avatar 652 Accessories 654 Accessories 656 Accessories 700 Block Diagram 702 Trigger Event 704 Monitoring Module 800 Graphical User Interface (GUI) 802 Digital Content 804 Avatar 806 Accessories 807 Graphic Elements 808 Panel 810 Graphic Elements 901 Interactions 902 Metadata File 903 Digital Content 950 Tokens 1000 Web2 environments 1002 Web2 Account 1004 Web2 Posts 1006 Interactions 1040 Tokens 1050 Web3 environment 1082 Social Media Posts 1084 interactions 1086 Web2 Posts 1100 Computing Environment 1100 Web2 environment 1102 Posts 1104 Watermark 1150 Web3 environment 1154 Monitoring Module 1156 Image Recognition Module 1162 Posts 1164 Repost or fraudulent post 1202 Computing Environment 1300 methods 1400 Graphical User Interface (GUI) 1500 Graphical User Interface (GUI) 1600 System 1605 System Bus 1610 Processors (e.g., one or more CPUs, GPUs, or other types of processors) 1615 System Memory 1620 Read-Only Memory (ROM) 1625 Random Access Memory (RAM) 1630 Storage Device 1632 Service 1 1634 Service 2 1636 Service 3 1640 Communication Interface 1645 Input Devices 1650 Computer Systems 1655 processor 1660 chipset 1670 Storage Device 1675 Storage Device 1680 Bridge 1690 Communication Interface 1702 Parent Token 1704 Child Token 17041, 17042, ..., 1704 n token 1706 Metadata 1800 methods 1st set of 1902 points 2nd set of 1904 points
Claims
1. 1. A method comprising: Capturing markerless motion data of a user by a camera of a computing system, capturing a first portion of the markerless motion data of the user, the first portion of the markerless motion data of the user being captured within a threshold distance of the camera, the capturing including identifying a first plurality of points on which the user focuses; capturing a second portion of the markerless motion data of the user, the second portion of the markerless motion data of the user being captured outside the threshold distance of the camera, the capturing including identifying a second plurality of points on which the user focuses, the first plurality of points including at least one point not included in the second plurality of points, and the second plurality of points including at least one point not included in the first plurality of points; and retargeting, by the computing system, the first plurality of points and the second plurality of points onto a three-dimensional model of an avatar associated with the user, the avatar being associated with an identity-based non-fungible token that uniquely represents the user across Web2 and Web3 environments, and retargeting the first plurality of points and the second plurality of points animates the three-dimensional model of the avatar; rendering, by the computing system, an animation locally on the computing system, the animation including the markerless motion data of the user retargeted onto the three-dimensional model of the avatar causing the avatar's hands, face, and body to be animated in real time; causing, by the computing system, a non-fungible token to be generated, the non-fungible token uniquely identifying ownership of the video; The method includes:
2. 2. The method of claim 1, further comprising: causing, by the computing system, a remote server to generate a second video remote from the computing system, the second video having a higher quality than the video rendered locally on the computing system.
3. Causing non-fungible tokens to be generated by the computing system includes: The method of claim 2 , further comprising causing the remote server to generate the non-fungible token that uniquely identifies the second video.
4. detecting a change in distance between the user and the camera, the change in distance being from a position within the threshold distance of the camera to a position outside the threshold distance of the camera; transitioning smoothly between capturing the first plurality of points and capturing the second plurality of points. The method of claim 1, further comprising:
5. The method of claim 1 , wherein the first plurality of points comprises a first set of points on the user's face.
6. 6. The method of claim 5, wherein the second plurality of points includes a second set of points on the user's face and a third set of points on the user's entire body, the second set of points not including at least one point in the first set of points.
7. The method of claim 1 , further comprising merging, by the computing system, the first plurality of points and the second plurality of points.
8. A non-transitory computer-readable medium comprising one or more sequences of instructions that, when executed by a processor, cause a computing system to perform operations, including: Capturing markerless motion data of a user by a camera of the computing system; capturing a first portion of the markerless motion data of the user, the first portion of the markerless motion data of the user being captured within a threshold distance of the camera, the capturing including identifying a first plurality of points on which the user focuses; capturing a second portion of the markerless motion data of the user, the second portion of the markerless motion data of the user being captured outside the threshold distance of the camera, the capturing including identifying a second plurality of points on which the user focuses, the first plurality of points including at least one point not included in the second plurality of points, and the second plurality of points including at least one point not included in the first plurality of points; and retargeting, by the computing system, the first plurality of points and the second plurality of points onto a three-dimensional model of an avatar associated with the user, the avatar being associated with an identity-based non-fungible token that uniquely represents the user across Web2 and Web3 environments, and retargeting the first plurality of points and the second plurality of points animates the three-dimensional model of the avatar; rendering, by the computing system, an animation locally on the computing system, the animation including the markerless motion data of the user retargeted onto the three-dimensional model of the avatar causing the avatar's hands, face, and body to be animated in real time; causing, by the computing system, a non-fungible token to be generated, the non-fungible token uniquely identifying ownership of the video; A non-transitory computer readable medium comprising:
9. 9. The non-transitory computer-readable medium of claim 8, further comprising: causing, by the computing system, a remote server to generate a second video remote from the computing system, the second video having a higher quality than the video rendered locally on the computing system.
10. Causing non-fungible tokens to be generated by the computing system includes:
10. The non-transitory computer-readable medium of claim 9, further comprising causing the remote server to generate the non-fungible token that uniquely identifies the second video.
11. detecting a change in distance between the user and the camera, the change in distance being from a position within the threshold distance of the camera to a position outside the threshold distance of the camera; transitioning smoothly between capturing the first plurality of points and capturing the second plurality of points.
10. The non-transitory computer-readable medium of claim 8, further comprising:
12. The non-transitory computer-readable medium of claim 8 , wherein the first plurality of points comprises a first set of points on the user's face.
13. 13. The non-transitory computer-readable medium of claim 12, wherein the second plurality of points includes a second set of points on the user's face and a third set of points on the user's entire body, the second set of points not including at least one point in the first set of points.
14. 9. The non-transitory computer-readable medium of claim 8, further comprising merging, by the computing system, the first plurality of points and the second plurality of points.
15. 1. A system comprising: A processor; A memory that stores programming instructions; the programming instructions, when executed by the processor, cause the system to perform operations, the operations including: Capturing markerless motion data of a user by a camera, capturing a first portion of the markerless motion data of the user, the first portion of the markerless motion data of the user being captured within a threshold distance of the camera, the capturing including identifying a first plurality of points on which the user focuses; capturing a second portion of the markerless motion data of the user, the second portion of the markerless motion data of the user being captured outside the threshold distance of the camera, the capturing including identifying a second plurality of points on which the user focuses, the first plurality of points including at least one point not included in the second plurality of points, and the second plurality of points including at least one point not included in the first plurality of points; and retargeting the first and second plurality of points to a three-dimensional model of an avatar associated with the user, the avatar being associated with an identity-based non-fungible token that uniquely represents the user across Web2 and Web3 environments, and retargeting the first and second plurality of points animates the three-dimensional model of the avatar; locally rendering an animation, the animation including the markerless motion data of the user retargeted onto the three-dimensional model of the avatar causing the avatar's hands, face, and body to be animated in real time; causing a non-fungible token to be generated, said non-fungible token uniquely identifying ownership of said video; Including, the system.
16. 16. The system of claim 15, further comprising: causing a remote server to generate a second video remotely from the system, the second video having a higher quality than the locally rendered video.
17. The step of causing the non-fungible token to be generated includes:
17. The system of claim 16, further comprising causing the remote server to generate the non-fungible token that uniquely identifies the second video.
18. detecting a change in distance between the user and the camera, the change in distance being from a position within the threshold distance of the camera to a position outside the threshold distance of the camera; transitioning smoothly between capturing the first plurality of points and capturing the second plurality of points. The system of claim 15 further comprising:
19. The system of claim 15 , wherein the first plurality of points comprises a first set of points on the user's face.
20. 20. The system of claim 19, wherein the second plurality of points includes a second set of points on the user's face and a third set of points on the user's entire body, the second set of points not including at least one point in the first set of points.
Citation Information
Patent Citations
Rapid avatar capture and simulation using commodity depth sensors
US20150356767A1
Methods of generating personalized 3D head models or 3D body models
US20190035149A1
Live broadcasting system
WO2021246498A1