Creating physics-based content
Patent Information
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- FACE CUTE CO LTD
- Filing Date
- 2025-06-11
- Publication Date
- 2026-08-07
Smart Images

Figure CN122535934A_ABST
Abstract
Description
[0001] Cross-referencing This application requires a document entitled " to be filed by June 14, 2024" CREATING PHYSICS-BASED CONTENT (Content based on physics) The priority of U.S. Patent Application No. 18 / 743,880 is hereby cited and is incorporated herein by reference in its entirety. Background Technology
[0002] There is a growing use of Internet-based tools for communication. These tools can be any software or platform. Users can use these tools to create content and design features. The expectation is that these tools will improve the technologies used for content creation and feature design. Attached Figure Description
[0003] The following detailed description can be better understood when read in conjunction with the accompanying drawings. For illustrative purposes, exemplary embodiments of various aspects of this disclosure are shown in the drawings; however, this disclosure is not limited to the specific methods and means disclosed.
[0004] Figure 1 An example system for creating physical-based content according to this disclosure is shown.
[0005] Figure 2 An example user interface for creating physics-based content is shown according to this disclosure.
[0006] Figure 3 An example user interface for creating physics-based content is shown according to this disclosure.
[0007] Figure 4 An example user interface for creating physics-based content is shown according to this disclosure.
[0008] Figure 5 An example user interface for creating physics-based content is shown according to this disclosure.
[0009] Figure 6 An example user interface for creating physics-based content is shown according to this disclosure.
[0010] Figure 7A An example user interface for creating physics-based content is shown according to this disclosure.
[0011] Figure 7B An example user interface for creating physics-based content is shown according to this disclosure.
[0012] Figure 8A An example user interface for creating physics-based content is shown according to this disclosure.
[0013] Figure 8B An example user interface for creating physics-based content is shown according to this disclosure.
[0014] Figure 9 An example user interface for creating physics-based content is shown according to this disclosure.
[0015] Figure 10 An example process for creating physical-based content according to this disclosure is shown.
[0016] Figure 11 An example process for creating physical-based content according to this disclosure is shown.
[0017] Figure 12 An example process for creating physical-based content according to this disclosure is shown.
[0018] Figure 13 An example process for creating physical-based content according to this disclosure is shown.
[0019] Figure 14 An example process for creating physical-based content according to this disclosure is shown.
[0020] Figure 15 An example process for creating physical-based content according to this disclosure is shown.
[0021] Figure 16 An example process for creating physical-based content according to this disclosure is shown.
[0022] Figure 17 An example computing device is shown that can be used to perform any of the techniques disclosed herein. Detailed Implementation
[0023] To create interactive games and effects, such as mini-game effects, creators can use content creation platforms. Such games and effects may require physical interactions between various components. However, existing content creation platforms often fail to generate high-quality (e.g., realistic-looking) physical interactions between these components. For example, existing content creation platforms have limited physics simulation capabilities. Many existing platforms rely on manual processes for achieving basic physical interactions, such as object positioning and simple motion, but do not support advanced physics simulations, such as dynamic objects, detailed collision responses, or realistic material interactions. This can hinder the creation of games and effects that require subtle physical behavior and may reduce the overall quality and realism of the created games and effects. Furthermore, many existing content creation platforms have insufficient customization options. The lack of customizable physical materials and settings (e.g., adjusting friction, elasticity, and gravity) limits creators, preventing them from adjusting physical properties to match the specific needs of their projects. This one-size-fits-all approach can lead to homogenization of game effects and reduce the potential for innovation.
[0024] The content creation process, supported by many existing content creation platforms, is complex and inefficient. Without a comprehensive and intuitive toolset, creators must resort to manual and time-consuming methods to simulate physical interactions. This process is not only inefficient but also difficult for creators without extensive technical expertise, significantly raising the barrier to entry for physics-based game and effects creation. Furthermore, existing content creation platforms often fail to integrate successfully with augmented reality (AR) and interactive games. Existing technologies typically ignore the unique requirements of AR and interactive games, such as the need for real-time physical simulation in response to user input and camera movement. This neglect leads to a disconnect between physical simulation and the interactive elements of the AR experience, undermining user interaction and immersion.
[0025] These shortcomings of existing content creation platforms collectively result in an ecosystem where creators' ability to produce high-quality, physics-based interactive games and AR effects is limited. The gap between the physical potential of digital creation and the capabilities offered by existing technologies underscores the need for solutions that can bridge this gap, providing creators with the necessary tools to realize their visions without compromise.
[0026] This article describes improved techniques for creating physics-based content. Figure 1 An example system 100 for creating physics-based content such as interactive effects or games is shown. System 100 may include a cloud network 102 and multiple client devices 104a-n (collectively referred to as 104). The cloud network 102 and the multiple client devices 104a-n may communicate with each other via one or more networks 132.
[0027] Cloud network 102 may be located in a data center (such as a single site) or distributed across different geographical locations (e.g., at several sites). Cloud network 102 may provide services, such as content creation service 118, via one or more networks 132. Network 132 includes various network devices, such as routers, switches, multiplexers, hubs, modems, bridges, repeaters, firewalls, proxy devices, etc. Network 132 may include physical links, such as coaxial cable links, twisted-pair cable links, fiber optic links, and combinations thereof. Network 132 may include wireless links, such as cellular links, satellite links, Wi-Fi links, etc.
[0028] Cloud network 102 may include multiple compute nodes 120 hosting various services. In one embodiment, node 120 hosts a content creation service 118. Content creation service 118 may be configured to support the creation / design of content, such as effects and / or games, by creators or designers (e.g., users, developers) associated with client devices among multiple client devices 104a-n. For example, multiple client devices 104a-n may each be associated with multiple content creators or designers who want to create or design content. Multiple client devices 104a-n may include application 106. In some embodiments, application 106 may establish a set of physical tools 116. In other embodiments, this set of physical tools 116 may be used by content creation service 118. This set of physical tools will be described in detail below. Multiple creators / designers may use application 106 to create / design content. For example, multiple creators / designers may access multiple interfaces 108a-n (collectively referred to as 108) of application 106 to create / design content.
[0029] Multiple client devices 104a-n can include any type of computing device, such as mobile devices, tablets, laptops, desktop computers, smart TVs or other smart devices (e.g., smartwatches, smart speakers, smart glasses, smart helmets), gaming devices, set-top boxes, digital streaming devices, robots, etc. A single user can access the cloud network 102 using one or more client devices from client devices 104a-n. Multiple client devices 104a-n can travel to various locations and use different networks to access the cloud network 102. The content creation service 118 can utilize the set of physical tools 116 to support content creation, such as effects and / or games, by creators (e.g., users, designers, developers) associated with one of the client devices 104a-n. The set of physical tools 116 enables the content creation service 118 and / or application 106 to perform physical simulations in a three-dimensional (3D) environment. Each physical tool in the set of physical tools 116 can include customizable physical properties.
[0030] The physical tools 116 may include one or more rigid body components. Each of the rigid body components may include customizable physical properties such as mass, damping (a reduction in the amplitude of oscillations due to energy being expelled from the system to overcome friction or other resistance), angular damping (a reduction in the amplitude of oscillations due to energy being expelled from the system to overcome friction or other resistance), external forces (forces generated due to the interaction between the component and its environment), external torque (a rotational force applied to the object by an external force, causing it to rotate about an axis), and / or properties for a freeze option for motion along a specified axis.
[0031] The set of physics tools 116 may further include one or more collider components. The collider components may include a box collider configured to detect and simulate collisions involving box-shaped objects. The collider components may include a sphere collider configured to detect and simulate collisions involving spherical objects. The collider components may include a capsule collider configured to detect and simulate collisions involving capsule-shaped objects. The set of physics tools 116 may also include one or more engagement components. The engagement components may include fixed engagements, point engagements, spring engagements, and / or hinged engagements. Engagement components can simulate physical connections between objects.
[0032] This set of physics tools 116 enables physical simulations within a 3D environment. Users can input data via interface 108 on client device 104 indicating desired configurations of various objects and their interactions within the 3D environment. In an embodiment, rigid body components included in this set of physics tools 116 can be assigned to one or more objects within the content. Interface 108 allows users to specify properties of each rigid body component, such as mass, damping, angular damping, external force, external torque, and / or whether the user desires the rigid body's motion to be frozen along one or more specified axes (e.g., x-axis, y-axis, z-axis). This set of physics tools 116 allows users to assign rigid body components to multiple objects within the content. By using this set of physics tools 116 to assign rigid body components to multiple objects within the content, users can specify the properties of multiple objects within the content, thereby achieving realistic physical simulations of the content.
[0033] In an embodiment, the collider components included in the set of physics tools 116 can be assigned to one or more objects in the content. Box colliders, ball colliders, or capsule colliders can be assigned to objects based on their shape. For example, if an object is spherical, a ball collider can be assigned to it. Collider components in the set of physics tools 116 can be assigned to objects if the user / creator wants them to collide with at least one other object. The physical interaction properties associated with the collision of objects can be defined by incorporating physical properties into each collider component. Physical interaction properties can include different types of friction (e.g., kinetic friction, static friction), elasticity, and gravity. The user can select the desired values (e.g., level) of kinetic friction, static friction, elasticity, and / or gravity associated with each collider component, allowing for more nuanced and diverse content creation.
[0034] In an embodiment, the engagement components included in the set of physical tools 116 can be assigned to objects within the content. Fixed engagements can be assigned to two or more objects within the content to connect the two or more objects to each other without movement relative to each other. Hinge engagements can be assigned to two or more objects within the content to connect the two or more objects to each other while allowing rotational movement about a single axis. Spring engagements can be assigned to two or more objects within the content to connect the two or more objects to each other while allowing spring-like movement of the two or more objects.
[0035] For example, refer to Figure 2 Content creation service 118 and / or application 106 can enable the presentation of user interface (UI) 200. Users can view UI 200. To begin creating content, users can add one or more objects. To add objects(s), users can select user interface elements (e.g., buttons) 201. Objects can include, for example, a sphere 202 and a cube 203.
[0036] UI 200 may include a preview window 212 that displays objects / interactions in a 3D environment incorporating real-time camera input. The preview window 212 can display the current design / creation state of the content in real time (e.g., how the content would look if no further changes or modifications were made). UI 200 may present a scene 214 representing the 3D environment. The scene area can display any changes to objects / interactions in the 3D environment in real time.
[0037] Users can assign / add components and / or interactions to objects in a 3D environment (e.g., a sphere 202 and / or a cube 203). To add components and / or interactions to an object, the user can select a user interface element (e.g., a button) 204a or 204b. By selecting user interface elements 204a and / or 204b, the user can add components and / or interactions to content. This can be done via user interface elements (e.g., such as...). Figure 2 The “3D Physics” element 206 shown adds / assigns components and / or connections from a set of physics tools (e.g., the set of physics tools 116) to objects in the 3D environment.
[0038] In response to a user selection of interface element 206, indicators 208a-n for the set of physics tools (e.g., physics tool 116) can be displayed on the screen. This set of physics tools may include rigid bodies, collider components (e.g., box colliders, ball colliders, capsule colliders), and engagement components (e.g., spring engagements, fixed engagements, hinge engagements, point engagements). The user can select one or more desired indicators from indicators 208a-n to represent one or more physics tools. For example, the user can select the "Rigid Body" tool to assign a rigid body component to an object in the 3D environment (e.g., sphere 202 or cube 203). Similarly, the user can select the "Box Collider" tool to assign a collider component to cube 203, and select the "Ball Collider" tool to assign a collider component to sphere 202.
[0039] like Figure 3As shown, content creation service 118 and / or application 106 can enable the presentation of user interface (UI) 300. Users can customize the physical properties of the components / interactions included in this set of physics tools. For example, the "rigid body" tool can be used to assign a rigid body component to a sphere 302 in a 3D environment. The rigid body component can be customized using user interface elements 301a-n to achieve realistic physical simulation of objects within the content. Users can customize the mass of the rigid body component. For example, users can assign values (e.g., numerical values) to the mass of an object. The mass of an object determines its inertia in the 3D environment. Users can customize the damping and / or angular damping of the rigid body component. For example, users can control linear and rotational motion decay with values ranging from 0 to 1, respectively. Users can customize external forces and / or external moments on objects in the 3D environment. For example, users can apply forces, such as rotational forces, to objects in three dimensions (X, Y, Z) to facilitate dynamic interactions. Users can instruct whether they want the motion of the rigid body component to be frozen (e.g., restricted) along one or more specified axes (e.g., x-axis, y-axis, z-axis), such as to provide stability and control in a simulation. Users can specify whether the rigid body component assigned to sphere 302 is static (e.g., immovable). Users may want the rigid body component to be static so that the object can be used as a static obstacle or environmental element.
[0040] like Figure 3 As shown in the example, a user can assign a mass of 1.10 (e.g., 1.10 kg) to a rigid body component. A user can specify a force with a specific value applied in the y-direction, such as 4. A user can specify an external torque of 5 (e.g., 5 Newton-meters) applied in the x, y, and z directions. A user can specify that the motion of the rigid body component will be frozen in the z-direction (e.g., ball 302 cannot move in the z-direction). When the properties of the rigid body component are customized, the preview window 312 and scene 314 can be updated in real time.
[0041] In this embodiment, the user can select the "Ball Collider" tool to assign a collider component to a ball 302 in the 3D environment. The user can use user interface elements 303a-n to edit the properties associated with the ball collider component assigned to the ball 302. The user can edit the radius, offset, physical properties, whether the ball collider component is tangible, whether the ball collider component should be visible, and / or whether the user wants to fit a mesh to the ball collider component.
[0042] Fitting a mesh to a sphere collider component can include automatically adjusting the sphere collider component to match the mesh size of an object (e.g., sphere 302) to improve the efficiency of effect creation. When the "Fit Mesh" feature is enabled for the sphere collider, the content creation service 118 and / or application 106 can calculate the boundary sphere of the attached mesh. The boundary sphere is the smallest possible sphere that completely surrounds the mesh. The radius of the boundary sphere can be used to set the radius of the sphere collider. The center of the boundary sphere can be used to set the center of the sphere collider. The sphere collider can be updated in real time when the mesh is changed. If the mesh is modified, the sphere collider can automatically adjust its radius and center to fit the new shape of the mesh. When the component is initially added, the size of the sphere collider can be adjusted to fit the mesh. Subsequently, the creator can manually adjust the size of the collider as needed. If the "Fit Mesh" button is pressed, the size of the collider can be reset to fit the mesh.
[0043] like Figure 3 As shown in the example, a user can assign a radius of a specific value (e.g., 5.0007) to the ball collider component. The user can specify that the ball collider component has an offset of 0.071 in the x-direction, 0 in the y-direction, and -0.2 in the z-direction. The user can specify that the ball collider component will be tangible and visible. When the user updates the properties of the ball collider component, preview window 312 and scene 314 can be updated in real time.
[0044] Preview window 312 can show the user the current design state of the content, such as the appearance of sphere 302 after applying the rigid body component and sphere collider component. The 3D environment can be integrated with real-time user and camera input. For example, feeds from a camera (e.g., camera 110a-n) can be combined with the 3D environment. Figure 3 In the example, preview window 312 displays a real-time feed (e.g., an image or video of a person) from the camera integrated with a 3D environment including sphere 302, enabling seamless AR.
[0045] like Figure 4 As shown, content creation service 118 and / or application 106 can enable the presentation of user interface (UI) 400 to a user. The user can use UI 400 to customize the properties of the physical substances incorporated into the collider component. For example, the user can use user interface elements 401a-n to customize the physical interaction properties of the ball collider component assigned to ball 302. The user can customize the physical interaction properties to define the interaction properties of the surfaces of the object (e.g., ball 302). For example, the user can customize the levels of kinetic friction and / or static friction to control the resistance encountered during motion and at rest. The user can customize elasticity (e.g., by adjusting a slider from 0 to 1). Elasticity can determine the rebound force of a collision.
[0046] Objects and their interactions within a 3D environment can be configured based on user input received via a user interface (e.g., UI 200, 300, 400). Content creation service 118 and / or application 106 can support the creation (e.g., generation) of content based on the configured objects and interactions. If the created content is an effect, such as an interactive effect, it can be stored locally or as effect data 121 in database 123. If the created content is a game, it can be stored locally or as game data 129 in database 123. The stored content can be used by other users. For example, content creation service 118 can distribute the stored effect data 121 to other client devices. Users associated with other client devices can use effect data 121 to generate content, such as images or videos. Similarly, content creation service 118 can distribute the stored game data 129 to other client devices. Users associated with other client devices can use game data 129 to play associated games and / or generate content associated with game data 129.
[0047] like Figure 5 As shown, content creation service 118 and / or application 106 can enable the presentation of UI 500 to the user. The user can use UI 500 to customize the physical properties of the box collider component. The user can customize the size, offset, rotation, physical material, whether the box collider component is tangible, whether the box collider component should be visible, and / or whether the user wants to fit a mesh to the box collider component. The user can customize the size and / or offset of the box collider component using 3D vector inputs (e.g., input / selection / specification values for the X, Y, and Z dimensions respectively), which defines the dimensions of the box collider and its positional offset relative to the object. The user can customize the rotation of the box collider component using 3D vector inputs to adjust its orientation. The user can customize the physical material using material assets, which defines the physical properties of the box collider component, such as friction and elasticity. The user can use Boolean settings to indicate whether the box collider component is tangible and / or whether the box collider component should be visible, toggling the physical entity and visual representation of the box collider, thereby improving development efficiency.
[0048] Users can fit a mesh to a box collider. Mesh Fitting is an innovative feature that automatically adjusts the collider size to match the object's mesh, significantly simplifying the setup process. Fitting a mesh to a box collider component can include automatically adjusting the box collider component to match the mesh size of an object (e.g., cube 203) to improve the efficiency of effect creation. When the "Mesh Fitting" feature is enabled for a box collider, the content creation service 118 and / or application 106 can calculate the Axis Aligned Border (AABB) of the attached mesh. The AABB is a box that completely surrounds the mesh and is aligned with the coordinate axes, meaning its edges are parallel to the axes. The dimensions of the AABB (width, height, and depth) can then be used to set the size of the box collider component. The center of the AABB can be used to set the center of the box collider component. When the mesh is changed, the box collider component can update in real time. If the mesh is modified, the box collider component can automatically adjust its size and center to fit the new shape of the mesh.
[0049] like Figure 6 As shown, content creation service 118 and / or application 106 can enable the presentation of UI 600 to the user. The user can use UI 600 to customize the physical properties of the capsule collider component. The user can customize the radius, height, offset, rotation, physical material, whether the capsule collider component is tangible, and / or whether the capsule collider component should be visible. The user can customize the radius and / or height of the capsule collider component by assigning values (e.g., numerical values) to the radius and / or height. The user can customize the offset of the capsule collider component using 3D vector input (e.g., input / selection / assignment values in the X, Y, and Z dimensions respectively), which defines the positional offset of the capsule collider component relative to the object. The user can customize the rotation of the capsule collider component using 3D vector input to adjust its orientation. The user can customize the physical material using material, which defines the physical properties of the capsule collider component, such as friction and elasticity. Users can use a Boolean setting to indicate whether the capsule collider component is tangible and / or whether the capsule collider component should be visible. This Boolean setting toggles the physical entity and visual representation of the capsule collider, thereby improving development efficiency.
[0050] Content creation service 118 and / or application 106 can enable the presentation of content to users as follows: Figures 7A to 7BUI700 and 701 are shown in the diagram. Users can use UI 700 to customize the physical properties of fixed joints. Fixed joints enable the fixed attachment between two or more objects. Users can specify one or more connectors (e.g., other objects in the joint). Users can specify one or more anchor point types for the fixed joint. Users can define the breaking force and / or torque of the fixed joint. The breaking force can be the minimum force required for the joint to break when forces are applied to it progressively. The breaking torque can be the tightening torque required for the joint to break.
[0051] As shown in UI 701, users can customize the physical properties of point joints. Point joints enable point-based joining between two objects. Users can specify one or more connectors (e.g., objects(s) in a point joint). Users can specify one or more anchor points for the point joint and / or the anchor points of the joint. Anchor points can be defined using 3D vector input (in the X, Y, Z dimensions) to define local connection points on each object. Users can define the breaking force and / or moment of the point-based joint. The breaking force can be the limit at which the point-based joint will fail, thus adding realism and dynamic fracture to the simulation.
[0052] Content creation service 118 can present users with, for example Figures 8A to 8B The UIs 800 and 801 are shown below. Users can use UI 800 to customize the physical properties of spring-joints. Spring-joints enable attachment between two or more objects, allowing for spring-like movement of both objects. Users can specify one or more connectors (e.g., objects connected by spring-joints). Users can specify one or more anchor springs for the spring-joint and / or anchor springs for the connection. Anchor springs can utilize 3D vector input to define local connection points on each object. Users can define the breaking force and / or torque of the spring-joint. The breaking force can be the limit at which the spring-joint will fail, adding realism and dynamic fracture to the simulation. Users can define the damping ratio and / or tolerance of the spring-joint, enhancing the versatility and realism of object interactions. The damping ratio can be a dimensionless measure describing how the oscillations of the spring-joint decay after a disturbance. The tolerance can be a measure of the margin of allowable range of force per inch (or millimeter) applied to the spring-joint.
[0053] As shown in UI 801, users can customize the physical properties of hinged joints. Hingedical joints enable attachment between two or more objects, allowing hinged joint-like motion of the two or more objects. Users can specify one or more connectors (e.g., objects(s) connected by hinged joints). Users can specify one or more anchor hinges and / or connecting anchor hinges for the hinged joint. Anchor hinges can utilize 3D vector input to define local connection points on each object. Users can define the breaking force and / or moment based on the hinge joint. The breaking force can be the limit at which the hinge joint will fail, adding realism and dynamic fracture to the simulation. Users can define the axis and / or use limit based on the hinge joint, enhancing the versatility and realism of object interactions. Users can define the breaking force and / or moment of the hinged joint. The breaking force can be the limit at which the joint will fail, adding realism and dynamic fracture to the simulation.
[0054] like Figure 9 As shown, content creation service 118 and / or application 106 can enable the presentation of UI 900 to the user. The user can use UI 900 to adjust global physics settings. The user can fine-tune the physics simulation by adjusting the global physics settings to improve the accuracy and realism of the interactive effects. For example, the user can adjust the magnitude and / or direction of gravity. The user can use 3D vector input to customize the magnitude and / or direction of gravity.
[0055] UI 900 allows users to adjust the number of substeps used in a physics simulation. The total frame time used for a physics simulation can be divided into the number of substeps. A larger number of substeps can result in a more stable simulation, but at a higher CPU cost. Users can use UI 900 to adjust the fixed time step and / or the maximum allowed time step. A "time step" is the rate at which the physics simulation will run (e.g., the time interval during which the physics simulation will advance during the next "step"). Users can use UI 900 to adjust the timescale of the physics simulation. The timescale can indicate the speed of the physics simulation.
[0056] Users can configure contact speed iterations and / or position iterations for precise control over interaction realism and performance optimization. Users can customize contact speed iterations and / or position iterations by adjusting the slider from 0 to 10. Users can adjust the number of contact speed iterations using UI 900. The number of contact speed iterations can be the number of iterations used to calculate the object's velocity upon contact. Higher values can improve accuracy but may impact performance. Users can adjust the number of distance iterations using UI 900. The number of distance iterations can be the number of loops used to correct object distances. Users can adjust the number of angle iterations using UI 900. The number of angle iterations can be the number of loops used to correct object angles. Users can adjust the number of bending iterations using UI 900. The number of bending iterations can be the number of loops used to correct object bending. Users can adjust the number of tether iterations using UI 900. The number of tether iterations can be the number of loops used to correct object tethering.
[0057] It should be understood that while content creation service 118 can support content creation / design in the manner described above, client device 104 may additionally or alternatively support the use of the set of physical tools 116 to locally create / design content. For example, client device 104 may establish the set of physical tools 116 via application 106. The set of physical tools 116 may be stored locally on client device 104. Alternatively, client device 104 may receive (e.g., retrieve) data instructing the set of physical tools 116 from a remote storage device (such as from cloud network 102). Client device 104 may present a user interface (e.g., UI 200, UI 300, UI 400, UI 500, UI 600, UI 700, UI 800, and / or UI 900), such as via interface 108 of application 106. The user interface may support the application of physical simulation in a 3D environment. Client device 104 may utilize the set of physical tools to configure objects and interactions in the 3D environment based on user input received via the user interface. Client device 104 can create interactive effects based on configured objects and interactions.
[0058] The aforementioned content creation service 118 and / or application 106 can enhance realism and interactivity in the content creation process by enabling complex and customizable physical simulations. Content created using content creation service 118 and / or application 106, such as games and AR effects, can be realistic and immersive. Furthermore, the aforementioned content creation service 118 and / or application 106 increases creative freedom, as creators can now experiment with a wider range of physical interactions and behaviors, pushing the boundaries of what is possible in digital game and effects creation. Content creation service 118 and / or application 106 enables a simplified development process. The efficiency of the development process is greatly improved, lowering the barrier to entry for creating physics-based content and enabling faster iteration and innovation. Content creation service 118 and / or application 106 creates expanded possibilities for AR and interactive experiences. Optimizations for AR and interactive use cases open up new possibilities for engaging interactive content that was previously impossible due to technological limitations.
[0059] Figure 10 An example process 1000 for creating physically-based content according to this disclosure is shown. Process 1000 can be performed, for example, by a content creation service 118 and / or an application 106. Although in Figure 10 The operations are described as a sequence of operations, but those skilled in the art will understand that various embodiments may add, remove, reorder or modify the operations described.
[0060] At point 1002, a set of physical tools (e.g., physical tool 116) can be established. This set of physical tools enables physical simulation in a 3D environment. Each of the physical tools in this set includes customizable physical properties. The set of physical tools may include one or more rigid body components. Each of the rigid body components may each include customizable physical properties such as mass, damping, angular damping, external force, external torque, and / or properties for a freeze option for motion along a specified axis. The set of physical tools may further include one or more collider components. The collider components may include a box collider configured to detect and simulate collisions involving box-shaped objects. The collider components may include a ball collider configured to detect and simulate collisions involving spherical objects. The collider components may include a capsule collider configured to detect and simulate collisions involving capsule-shaped objects. The set of physical tools may also include one or more joint components. The joint components may include fixed joints, point joints, spring joints, and / or hinge joints. Joint components can simulate physical connections between objects.
[0061] At point 1004, a user interface (e.g., UI 200, UI 300, UI 400, UI 500, UI 600, UI 700, UI 800, and / or UI 900) can be presented. The user interface can be configured to support the application of physical simulations in a 3D environment. Users can input data via one or more inputs in the user interface, indicating the desired configuration of various objects and interactions between them in the 3D environment. At point 1006, objects and interactions can be configured in the 3D environment. This set of physical tools can be used to configure objects and interactions based on user input received via the user interface. At point 1008, interactive effects can be created based on the configured objects and interactions. Interactive effects can include AR effects and / or games.
[0062] Figure 11 An example process 1100 for creating physically-based content according to this disclosure is shown. Process 1100 can be performed, for example, by a content creation service 118 and / or an application 106. Although in Figure 11 The operations are described as a sequence of operations, but those skilled in the art will understand that various embodiments may add, remove, reorder or modify the operations described.
[0063] At 1102, collisions in the 3D environment can be detected and / or simulated. Collisions can be detected and / or simulated using a collider component included in a set of physics tools (e.g., physics tool 116). The collider component may include a box collider configured to detect and simulate collisions involving box-shaped objects. The collider component may include a sphere collider configured to detect and simulate collisions involving spherical objects. The collider component may include a capsule collider configured to detect and simulate collisions involving capsule-shaped objects.
[0064] At point 1104, physical interaction properties can be defined. Physical interaction properties can be defined by incorporating physical materials into the collider assembly. Physical interaction properties can include one or more of kinetic friction, static friction, and elasticity. For example, a user can customize the levels of kinetic and / or static friction to control the resistance encountered during motion and at rest. A user can customize elasticity (e.g., by adjusting the slider from 0 to 1). Elasticity determines the rebound force of a collision.
[0065] Meshes can be fitted to box collider and ball collider components. At 1106, collider components can be automatically adjusted to match the object's mesh size, improving the efficiency of effect creation. When the "Fit Mesh" feature is enabled for a ball collider, the boundary sphere of the attached mesh can be calculated. The boundary sphere is the smallest possible sphere that completely surrounds the mesh. The radius of the boundary sphere can be used to set the radius of the ball collider. The center of the boundary sphere can be used to set the center of the ball collider. The ball collider can be updated in real time as the mesh is changed. When the "Fit Mesh" feature is enabled for a box collider, the AABB of the attached mesh can be calculated. The AABB is a box that completely surrounds the mesh and is aligned with the coordinate axes, meaning its edges are parallel to the axes. The dimensions of the AABB (width, height, and depth) can then be used to set the size of the box collider component. The center of the AABB can be used to set the center of the box collider component. The box collider component can be updated in real time as the mesh is changed.
[0066] Figure 12 An example process 1200 for creating physically-based content according to this disclosure is shown. Process 1200 can be performed, for example, by a content creation service 118 and / or an application 106. Although in Figure 12 The operations are described as a sequence of operations, but those skilled in the art will understand that various embodiments may add, remove, reorder or modify the operations described.
[0067] A user interface (e.g., UI 200, UI 300, UI 400, UI 500, UI 600, UI 700, UI 800, and / or UI 900) can be presented. The user interface can be configured to support the application of physical simulations in a 3D environment. Users can input data via one or more inputs into the user interface, indicating the desired configuration of various objects and interactions between them in the 3D environment. At 1202, objects and interactions can be configured in the 3D environment. Objects and interactions can be configured using a set of physical tools based on user input received via the user interface.
[0068] This set of physics tools can include one or more joint components. Joint components can include fixed joints, point joints, spring joints, and / or hinged joints. Joint components can simulate physical connections between objects. At 1204, a physical connection between objects can be simulated. Physical connections can be simulated using joint components from this set of physics tools. At 1206, the physical fracture of a joint component can be simulated. The physical fracture of a joint component can be simulated by adjusting its fracture force and / or moment settings. The fracture force can be the limit at which the joint will fail, thus adding realism and dynamic fracture to the simulation.
[0069] Figure 13 An example process 1300 for creating physically-based content according to this disclosure is shown. Process 1300 can be performed, for example, by a content creation service 118 and / or an application 106. Although in Figure 13 The operations are described as a sequence of operations, but those skilled in the art will understand that various embodiments may add, remove, reorder or modify the operations described.
[0070] A user interface (e.g., UI 200, UI 300, UI 400, UI 500, UI 600, UI 700, UI 800, and / or UI 900) can be presented. The user interface can be configured to support the application of physical simulations in a 3D environment. Users can input data via one or more inputs in the user interface, indicating the desired configuration of various objects and interactions between objects in the 3D environment. At 1302, objects and interactions can be configured in the 3D environment. Objects and interactions can be configured using a set of physical tools based on user input received via the user interface. This set of physical tools can include rigid body components. At 1304, rigid body components from this set of physical tools can be assigned to objects. Rigid body components can include or be associated with properties such as the object's mass, damping, angular damping, external forces, external moments, and freeze options for motion along a specified axis of the object. Users can customize these properties to achieve realistic physical simulations of the content.
[0071] Figure 14 An example process 1400 for creating physically-based content according to this disclosure is shown. Process 1400 can be performed, for example, by a content creation service 118 and / or an application 106. Although in Figure 14 The operations are described as a sequence of operations, but those skilled in the art will understand that various embodiments may add, remove, reorder or modify the operations described.
[0072] At 1402, a set of physical tools (e.g., physical tool 116) can be established. This set of physical tools enables physical simulation in a 3D environment. Each of the physical tools in this set includes customizable physical properties. The set of physical tools may include one or more rigid body components. Each of the rigid body components may each include customizable physical properties such as mass, damping, angular damping, external force, external torque, and / or properties for freeze options for motion along a specified axis. The set of physical tools may include one or more collider components. The collider components may include a box collider configured to detect and simulate collisions involving box-shaped objects. The collider components may include a ball collider configured to detect and simulate collisions involving spherical objects. The collider components may include a capsule collider configured to detect and simulate collisions involving capsule-shaped objects. The set of physical tools may include one or more joint components. The joint components may include fixed joints, point joints, spring joints, and / or hinge joints. Joint components can simulate physical connections between objects.
[0073] At point 1404, a user interface (e.g., UI 200, UI 300, UI 400, UI 500, UI 600, UI 700, UI 800, and / or UI 900) can be presented. The user interface can be configured to support the application of physical simulations in a 3D environment. Users can input data via one or more inputs into the user interface, indicating the desired configuration of various objects and interactions between objects in the 3D environment.
[0074] At 1406, a physical simulation can be visualized during the content creation process. A preview window (e.g., preview window 212) can be displayed, including the 3D environment of the physical simulation. The preview window can show the user the current design state of the content (e.g., how the content would look if no further changes or modifications were made to the design). The 3D environment shown in the preview window can be integrated with real-time user and camera input. At 1408, the physical simulation can be integrated with real-time user and camera input to achieve seamless augmented reality. For example, camera feeds (e.g., feeds from cameras 110a-n) can be combined with the 3D environment and displayed in the preview window.
[0075] Figure 15 An example process 1500 for creating physically-based content according to this disclosure is shown. Process 1500 can be performed, for example, by a content creation service 118 and / or an application 106. Although in Figure 15 The operations are described as a sequence of operations, but those skilled in the art will understand that various embodiments may add, remove, reorder or modify the operations described.
[0076] At point 1502, a user interface (e.g., UI 200, UI 300, UI 400, UI 500, UI 600, UI 700, UI 800, and / or UI 900) can be presented. The user interface can be configured to support the application of physical simulations in a 3D environment. Users can input data via one or more inputs in the user interface, indicating the desired configuration of various objects and interactions between objects in the 3D environment. At point 1504, the physical simulation can be fine-tuned. The physical simulation can be fine-tuned by adjusting global physics settings to improve the accuracy and realism of interactive effects.
[0077] Figure 16 An example process 1600 for creating physically-based content according to this disclosure is shown. Process 1600 can be performed, for example, by content creation service 118 and / or application 106. Although in Figure 16 The operations are described as a sequence of operations, but those skilled in the art will understand that various embodiments may add, remove, reorder or modify the operations described.
[0078] Users can fine-tune the physics simulation by adjusting global physics settings to improve the accuracy and realism of interactive effects. Adjusting global physics settings can include adjusting the direction and / or magnitude of gravity. At 1602, the direction and / or magnitude of gravity can be adjusted. Users can use 3D vector input to customize the magnitude and / or direction of gravity. Adjusting global physics settings can also include configuring contact velocity iteration and / or position iteration. At 1604, contact velocity iteration and / or position iteration can be configured for precise control over the realism of interactions and performance optimization. Users can customize contact velocity iteration and / or position iteration by adjusting the slider from 0 to 10.
[0079] Figure 17 It shows that it can be used in, for example Figure 1 The computing devices used in various aspects such as the (multiple) models, components, and / or devices depicted. Regarding Figure 1 Any or all of the components can be free. Figure 17 This is implemented using one or more instances of the computing device 1700. Figure 17 The computer architecture shown illustrates a conventional server computer, workstation, desktop computer, laptop computer, tablet computer, network device, PDA, e-reader, digital cellular phone, or other computing node, and can be used to perform any aspect of the computer described herein, such as to implement the methods described herein.
[0080] The computing device 1700 may include a substrate or “motherboard,” which is a printed circuit board on which a number of components or devices can be connected via a system bus or other electrical communication path. One or more central processing units (CPUs) 1704 may operate in conjunction with chipset 1706. The CPUs 1704 may be standard programmable processors that perform the arithmetic and logic operations necessary to perform the operation of the computing device 1700.
[0081] Multiple CPUs 1704 can perform necessary operations by manipulating switching elements that differentiate between and change these states, transitioning from one discrete physical state to the next. Switching elements typically include electronic circuitry, such as flip-flops, that maintains one of two binary states, and electronic circuitry that provides an output state based on a logical combination of the states of one or more other switching elements, such as logic gates. These basic switching elements can be combined to create more complex logic circuits, including registers, adder-subtractor units, arithmetic logic units, floating-point units, etc.
[0082] The (multiple) CPUs 1704 can be expanded or replaced by other processors, such as (multiple) GPUs 1705. The (multiple) GPUs 1705 may include processing units specifically designed for, but not limited to, highly parallel computing, such as graphics and other visualization-related processing.
[0083] Chipset 1706 can provide an interface between CPU(s) 1704 and the remaining components and devices on the substrate. Chipset 1706 can also provide an interface for random access memory (RAM) 1708, which serves as the main memory in computing device 1700. Chipset 1706 can also provide an interface for computer-readable storage media such as read-only memory (ROM) 1720 or non-volatile RAM (NVRAM) (not shown) to store basic routines that can help boot computing device 1700 and transfer information between various components and devices. ROM 1720 or NVRAM can also store other software components necessary for the operation of computing device 1700 according to the aspects described herein.
[0084] Computing device 1700 can operate in a networked environment using a logical connection to remote computing nodes and computer systems via a local area network (LAN). Chipset 1706 may include functionality for providing network connectivity via a network interface controller (NIC) 1722, such as a Gigabit Ethernet adapter. NIC 1722 may be able to connect computing device 1700 to other computing nodes via network 1718. It should be understood that multiple NICs 1722 may exist in computing device 1700, connecting the computing device to other types of networks and remote computer systems.
[0085] Computing device 1700 can be connected to mass storage device 1728, which provides non-volatile storage for the computer. Mass storage device 1728 can store system programs, application programs, other program modules, and data, as described in more detail herein. Mass storage device 1728 can be connected to computing device 1700 via storage controller 1724, which is connected to chipset 1706. Mass storage device 1728 may include one or more physical storage units. Mass storage device 1728 may include management component 1710. Storage controller 1724 can interface with physical storage units via Serial Attached SCSI (SAS) interface, Serial Advanced Technology Attached (SATA) interface, Fibre Channel (FC) interface, or other types of interfaces used for physically connecting and transferring data between the computer and physical storage units.
[0086] The computing device 1700 can store data on the mass storage device 1728 by changing the physical state of the physical storage units to reflect that information is being stored. The specific changes in physical state can depend on various factors and the different implementations described herein. Examples of such factors may include, but are not limited to, the technology used to implement the physical storage units and whether the mass storage device 1728 is characterized as a primary storage device or a secondary storage device.
[0087] For example, computing device 1700 can store information in mass storage device 1728 by issuing instructions via storage controller 1724 to change the magnetic properties of a specific location within a disk drive unit, the reflection or refraction properties of a specific location in an optical storage unit, or the electrical properties of a specific capacitor, transistor, or other discrete component in a solid-state storage unit. Other transformations of the physical medium are possible without departing from the scope and spirit of this specification; the foregoing examples are provided for ease of description only. Computing device 1700 can also read information from mass storage device 1728 by detecting the physical state or characteristics of one or more specific locations within a physical storage unit.
[0088] In addition to the aforementioned high-capacity storage device 1728, the computing device 1700 can access other computer-readable storage media to store and retrieve information, such as program modules, data structures, or other data. Those skilled in the art will understand that a computer-readable storage medium can be any available medium that provides storage for non-transitory data and can be accessed by the computing device 1700.
[0089] By way of example and not limitation, computer-readable storage media can include volatile and non-volatile, transient and non-transitory computer-readable storage media, as well as removable and non-removable media, implemented in any method or technology. Computer-readable storage media include, but are not limited to, RAM, ROM, erasable programmable ROM (“EPROM”), electrically erasable programmable ROM (“EEPROM”), flash memory or other solid-state memory technologies, compact disc ROM (“CD-ROM”), digital versatile disc (“DVD”), high-definition DVD (“HD-DVD”), Blu-ray or other optical storage devices, magnetic tape cassettes, magnetic tape, disk storage devices, other magnetic storage devices, or any other medium that can be used to store desired information in a non-transitory manner.
[0090] Such as Figure 17 Mass storage devices such as the mass storage device 1728 depicted herein can store an operating system used to control the operation of the computing device 1700. The operating system may include a version of the Linux operating system. The operating system may include a version of the Windows Server operating system from Microsoft Corporation. Depending on another aspect, the operating system may include a version of the UNIX operating system. Various mobile phone operating systems, such as iOS and Android, may also be used. It should be understood that other operating systems may also be used. The mass storage device 1728 may store other systems, applications, and data used by the computing device 1700.
[0091] Mass storage device 1728 or other computer-readable storage media can also be encoded using computer-executable instructions that, when loaded into computing device 1700, transform the computing device from a general-purpose computing system into a special-purpose computer capable of implementing the aspects described herein. As described above, these computer-executable instructions transform computing device 1700 by specifying how CPU(s) 1704 transition between states. Computing device 1700 can access the computer-readable storage medium storing the computer-executable instructions, which, when executed by computing device 1700, can perform the methods described herein, such as... Figures 11 to 17 The method shown.
[0092] Such as Figure 17The computing device 1700 depicted may also include an input / output controller 1732 for receiving and processing input from multiple input devices such as a keyboard, mouse, touchpad, touchscreen, electronic pen, or other types of input devices. Similarly, the input / output controller 1732 may provide output to a display such as a computer monitor, flat panel display, digital projector, printer, plotter, or other types of output devices. It should be understood that the computing device 1700 may not include... Figure 17 All components shown may include Figure 17 Other components not explicitly shown in the document, or those that can be utilized with Figure 17 The architecture shown is completely different from the one shown.
[0093] As described in this article, a computing device can be a physical computing device, such as... Figure 17 The computing device 1700. A computing node may also include virtual machine host processes and one or more virtual machine instances. Computer-executable instructions can be indirectly executed by the physical hardware of the computing device by interpreting and / or executing instructions stored and executed in the context of a virtual machine.
[0094] It should be understood that the method and system are not limited to any specific method, component, or implementation. It should also be understood that the terminology used herein is for the purpose of describing particular embodiments only and is not intended to be limiting.
[0095] Unless the context clearly indicates otherwise, the singular forms “a,” “an,” and “the” as used in the specification and appended claims include plural indicators. A range may be expressed herein as from “about” a particular value, and / or to “about” another particular value. When such a range is expressed, another embodiment includes from one particular value and / or to another particular value. Similarly, when a value is expressed as an approximation using the antecedent “about,” it should be understood that the particular value forms another embodiment. It should also be understood that the endpoints of each range are significant both relative to and independent of the other endpoint.
[0096] "Optional" or "optionally" means that the event or situation described below may or may not occur, and the description includes instances where the event or situation occurs and instances where it does not occur.
[0097] Throughout the description and claims of this specification, the word “comprising” and variations thereof, such as “including” and “comprising of,” mean “including, but not limited to,” and are not intended to exclude, for example, other components, integers, or steps. “Exemplary” means “an example of…” and is not intended to convey indications of preferred or ideal embodiments. “Like” is not used in a limiting sense but for illustrative purposes.
[0098] Components that can be used to perform the described methods and systems are described. When describing combinations, subsets, interactions, groups, etc., of these components, it should be understood that although specific references to each of the various individual and collective combinations and arrangements of these components may not be explicitly described, each is specifically considered and described herein for all methods and systems. This applies to all aspects of this application, including but not limited to the operations in the described methods. Therefore, if various additional operations exist that can be performed, it should be understood that each of these additional operations can be performed using any particular embodiment or combination of embodiments of the described methods.
[0099] The methods and systems of the present invention can be more readily understood by referring to the following detailed description of preferred embodiments and examples included therein, as well as the accompanying drawings and their descriptions.
[0100] Those skilled in the art will understand that the method and system can take the form of a completely hardware embodiment, a completely software embodiment, or an embodiment combining software and hardware aspects. Furthermore, the method and system can take the form of a computer program product on a computer-readable storage medium having computer-readable program instructions (e.g., computer software) implemented therein. More specifically, the proposed method and system can take the form of computer software implemented on the web. Any suitable computer-readable storage medium can be used, including hard disks, CD-ROMs, optical storage devices, or magnetic storage devices.
[0101] The following description of embodiments of the method and system is based on block diagrams and flowcharts of methods, systems, apparatuses, and computer program products. It should be understood that each block in the block diagrams and flowcharts, as well as combinations of blocks in the block diagrams and flowcharts, can be implemented by computer-executable instructions. These computer-executable instructions can be loaded onto a general-purpose computer, a special-purpose computer, or other programmable data processing apparatus to produce a machine, such that the instructions, which execute on the computer or other programmable data processing apparatus, create apparatus for implementing the functions specified in one or more flowchart blocks.
[0102] These computer-executable instructions may also be stored in a computer-readable storage medium that may instruct a computer or other programmable data processing apparatus to operate in a particular manner, such that the instructions stored in the computer-readable storage medium produce an article of writing comprising computer-readable instructions for implementing the functions specified in one or more flowchart blocks. The computer-executable instructions may also be loaded onto a computer or other programmable data processing apparatus to cause a series of operational steps to be performed on the computer or other programmable apparatus, thereby producing a computer-implemented process, such that the instructions, which execute on the computer or other programmable apparatus, provide steps for implementing the functions specified in one or more flowchart blocks.
[0103] The various features and processes described above can be used independently of each other or combined in various ways. All possible combinations and sub-combinations are intended to fall within the scope of this disclosure. Furthermore, certain method or process blocks may be omitted in some implementations. The methods and processes described herein are not limited to any particular order and can be executed in other suitable orders with respect to their associated blocks or states. For example, described blocks or states may be executed in an order different from that specifically described, or multiple blocks or states may be combined in a single block or state. Example blocks or states may be executed serially, in parallel, or in some other manner. Blocks or states may be added to or removed from the described example embodiments. The example systems and components described herein may be configured differently than described. For example, elements may be added to, removed from, or rearranged from the described example embodiments compared to the described exemplary embodiments.
[0104] It should also be understood that items are shown as being stored in memory or on a storage device when used, and these items or portions thereof may be transferred between memory and other storage devices for memory management and data integrity purposes. Alternatively, in other embodiments, some or all of the software modules and / or systems may be executed in memory on another device and communicate with the illustrated computing system via inter-computer communication. Furthermore, in some embodiments, some or all of the systems and / or modules may be implemented or provided in other ways, such as at least in part as firmware and / or hardware, including, but not limited to, one or more application-specific integrated circuits (“ASICs”), standard integrated circuits, controllers (e.g., by executing appropriate instructions, and including microcontrollers and / or embedded controllers), field-programmable gate arrays (“FPGAs”), complex programmable logic devices (“CPLDs”), etc. Some or all of the modules, systems, and data structures may also be stored (e.g., as software instructions or structured data) on computer-readable media, such as hard disks, memory, networks, or portable media articles, for retrieval by appropriate devices or via appropriate connections. The systems, modules, and data structures can also be transmitted as generated data signals (e.g., as part of a carrier wave or other analog or digital propagation signal) over various computer-readable transmission media, including wireless and wired / cable-based media, and can take various forms (e.g., as part of a single or multiplexed analog signal, or as multiple discrete digital packets or frames). In other embodiments, such computer program products can also take other forms. Therefore, this disclosure can be implemented using other computer system configurations.
[0105] Although the method and system have been described in conjunction with preferred embodiments and specific examples, they are not intended to limit the scope to the specific embodiments illustrated, as the embodiments herein are intended in all respects to be illustrative rather than restrictive.
[0106] Unless otherwise expressly stated, it is not intended that any method described herein require its operations to be performed in a particular order. Therefore, no order is intended to be inferred from any respect unless the method claims actually describe the order of its operations or unless the claims or specification otherwise specify that the operations are limited to a particular order. This applies to any possible non-expressive basis of interpretation, including: logical questions concerning the arrangement of steps or flow of operations; general meanings derived from grammatical organization or punctuation; and the number or type of embodiments described in the specification.
[0107] It will be apparent to those skilled in the art that various modifications and variations can be made without departing from the scope or spirit of this disclosure. Other embodiments will be apparent to those skilled in the art in light of the specification and practice described herein. The specification and example figures are to be considered exemplary only, and their true scope and spirit are indicated by the appended claims.
Claims
1. A method for creating physically-based content, comprising: Establish a set of physical tools, wherein the set of physical tools enables physical simulation in a three-dimensional (3D) environment, wherein each of the set of physical tools includes customizable physical properties; Present a user interface configured to support applications of the physical simulation within the 3D environment; Based on user input received via the user interface, objects and interactions in the 3D environment are configured using the set of physical tools; as well as Create interactive effects based on the configured objects and interactions.
2. The method according to claim 1, further comprising: The collider component from the aforementioned set of physics tools is used to detect and simulate collisions in the 3D environment.
3. The method according to claim 2, further comprising: Physical interaction properties are defined by incorporating physical materials into the collider assembly, wherein the physical interaction properties include kinetic friction, static friction, and elasticity.
4. The method of claim 2, further comprising: The collider component is automatically adjusted to match the mesh size of the object.
5. The method of claim 2, wherein the collider assembly includes a box collider configured to detect and simulate collisions involving box-shaped objects, a ball collider configured to detect and simulate collisions involving spherical objects, and a capsule collider configured to detect and simulate collisions involving capsule-shaped objects.
6. The method of claim 1, further comprising: The joining components from the set of physical tools are used to simulate the physical connections between the objects.
7. The method of claim 6, further comprising: Physical fracture is simulated by adjusting the fracture force and torque settings of the joining components.
8. The method of claim 1, further comprising: Assign rigid body components from the set of physical tools to the object, wherein the rigid body components include properties of mass, damping, angular damping, external force, external torque, and a freeze option for motion along a specified axis of the object.
9. The method of claim 1, further comprising: The physical simulation is visualized during the content creation process.
10. The method of claim 1, further comprising: The physical simulation is integrated with real-time user and camera input.
11. The method of claim 1, further comprising: The physics simulation can be fine-tuned by adjusting the global physics settings.
12. The method of claim 11, further comprising: Adjust the direction and magnitude of gravity; as well as Configure contact speed iteration and position iteration.
13. A system for creating physically-based content, comprising: At least one processor; as well as At least one memory, communicatively coupled to the at least one processor, and including computer-readable instructions that, when executed by the at least one processor, cause the at least one processor to perform operations, the operations including: Establish a set of physical tools, wherein the set of physical tools enables physical simulation in a three-dimensional 3D environment, and each of the set of physical tools includes customizable physical properties; Present a user interface configured to support applications of the physical simulation within the 3D environment; Based on user input received via the user interface, objects and interactions in the 3D environment are configured using the set of physical tools; and Create interactive effects based on the configured objects and interactions.
14. The system of claim 13, wherein the operation further comprises: The collider component from the aforementioned set of physics tools is used to detect and simulate collisions in the 3D environment.
15. The system of claim 13, wherein the operation further comprises: The joining components from the set of physical tools are used to simulate the physical connections between the objects.
16. The system of claim 13, wherein the operation further comprises: Assign rigid body components from the set of physical tools to the object, wherein the rigid body components include properties of mass, damping, angular damping, external force, external torque, and a freeze option for motion along a specified axis of the object.
17. A non-transitory computer-readable storage medium storing computer-readable instructions that, when executed by a processor, cause the processor to perform operations, the operations including: Establish a set of physical tools, wherein the set of physical tools enables physical simulation in a three-dimensional 3D environment, and each of the set of physical tools includes customizable physical properties; Present a user interface configured to support applications of the physical simulation within the 3D environment; Based on user input received via the user interface, objects and interactions in the 3D environment are configured using the set of physical tools; as well as Create interactive effects based on the configured objects and interactions.
18. The non-transitory computer-readable storage medium of claim 17, wherein the operation further comprises: The collider component from the aforementioned set of physics tools is used to detect and simulate collisions in the 3D environment.
19. The non-transitory computer-readable storage medium of claim 17, wherein the operation further comprises: The joining components from the set of physical tools are used to simulate the physical connections between the objects.
20. The non-transitory computer-readable storage medium of claim 17, wherein the operation further comprises: Assign rigid body components from the set of physical tools to the object, wherein the rigid body components include properties of mass, damping, angular damping, external force, external torque, and a freeze option for motion along a specified axis of the object.
21. A computer program product implemented on a computer-readable medium and comprising computer-executable instructions that, when executed by a processor, perform the method according to any one of claims 1 to 12.