CA3144605A1 - Methods and systems for interactive customisation and visualisation of virtual environments and for digitally configuring virtual object assemblies - Google Patents

Methods and systems for interactive customisation and visualisation of virtual environments and for digitally configuring virtual object assemblies

Info

Publication number
CA3144605A1
CA3144605A1 CA3144605A CA3144605A CA3144605A1 CA 3144605 A1 CA3144605 A1 CA 3144605A1 CA 3144605 A CA3144605 A CA 3144605A CA 3144605 A CA3144605 A CA 3144605A CA 3144605 A1 CA3144605 A1 CA 3144605A1
Authority
CA
Canada
Prior art keywords
virtual
assets
asset
environment
digital
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
CA3144605A
Other languages
French (fr)
Inventor
Eevi Jensen
Richard Hillier
Roman Naumov
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
PICTURE THIS TODAY 3D Inc
Original Assignee
PICTURE THIS TODAY 3D Inc
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by PICTURE THIS TODAY 3D Inc filed Critical PICTURE THIS TODAY 3D Inc
Priority to CA3144605A priority Critical patent/CA3144605A1/en
Publication of CA3144605A1 publication Critical patent/CA3144605A1/en
Pending legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F30/00Computer-aided design [CAD]
    • G06F30/10Geometric CAD
    • G06F30/13Architectural design, e.g. computer-aided architectural design [CAAD] related to design of buildings, bridges, landscapes, production plants or roads
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/048Interaction techniques based on graphical user interfaces [GUI]
    • G06F3/0481Interaction techniques based on graphical user interfaces [GUI] based on specific properties of the displayed interaction object or a metaphor-based environment, e.g. interaction with desktop elements like windows or icons, or assisted by a cursor's changing behaviour or appearance
    • G06F3/04815Interaction with a metaphor-based environment or interaction object displayed as three-dimensional, e.g. changing the user viewpoint with respect to the environment or object
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/048Interaction techniques based on graphical user interfaces [GUI]
    • G06F3/0484Interaction techniques based on graphical user interfaces [GUI] for the control of specific functions or operations, e.g. selecting or manipulating an object, an image or a displayed text element, setting a parameter value or selecting a range
    • G06F3/04845Interaction techniques based on graphical user interfaces [GUI] for the control of specific functions or operations, e.g. selecting or manipulating an object, an image or a displayed text element, setting a parameter value or selecting a range for image manipulation, e.g. dragging, rotation, expansion or change of colour
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F30/00Computer-aided design [CAD]
    • G06F30/10Geometric CAD
    • G06F30/12Geometric CAD characterised by design entry means specially adapted for CAD, e.g. graphical user interfaces [GUI] specially adapted for CAD
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2111/00Details relating to CAD techniques
    • G06F2111/16Customisation or personalisation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2111/00Details relating to CAD techniques
    • G06F2111/18Details relating to CAD techniques using virtual or augmented reality
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2111/00Details relating to CAD techniques
    • G06F2111/20Configuration CAD, e.g. designing by assembling or positioning modules selected from libraries of predesigned modules
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2203/00Indexing scheme relating to G06F3/00 - G06F3/048
    • G06F2203/048Indexing scheme relating to G06F3/048
    • G06F2203/04806Zoom, i.e. interaction techniques or interactors for controlling the zooming operation

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • Geometry (AREA)
  • Computer Hardware Design (AREA)
  • Human Computer Interaction (AREA)
  • Computational Mathematics (AREA)
  • Mathematical Analysis (AREA)
  • Mathematical Optimization (AREA)
  • Pure & Applied Mathematics (AREA)
  • Evolutionary Computation (AREA)
  • Architecture (AREA)
  • Structural Engineering (AREA)
  • Civil Engineering (AREA)
  • Processing Or Creating Images (AREA)

Abstract

Described are various embodiments of methods and systems for interactive customisation and visualisation of virtual environments and for digitally configuring virtual object assemblies. The methods and systems provide realistic three-dimensional renderings of properties and virtual assets, which can be utilised in a multitude of applications.

Description

METHODS AND SYSTEMS FOR INTERACTIVE CUSTOMISATION AND
VISUALISATION OF VIRTUAL ENVIRONMENTS AND FOR DIGITALLY
CONFIGURING VIRTUAL OBJECT ASSEMBLIES
FIELD OF THE DISCLOSURE
100011 The present disclosure relates to three-dimensional rendering, and, in particular, to methods and systems for interactive customisation and visualisation of virtual environments, and for digitally configuring virtual object assemblies.
BACKGROUND
100021 Great strides have been taken in the development of user-friendly computer .. software programmes which allow non-expert users, particularly consumers, to test goods.
Augmented Reality (AR) platforms allow users to test goods within existing rooms, wherein a user inserts a rendered digital object reflecting a real test good in a video stream of a room. Such AR platforms typically allow users to orientate the rendered digital object within the video stream, adjust size, or otherwise relocate the rendered digital object, in order to obtain a best fit or otherwise desirable result. Some AR platforms offer e-commerce features which afford users an opportunity to purchase goods after testing the rendered digital object. Once such AR platforms are closed, however, the ongoing digital video stream ceases and so too does the rendered digital object(s) and its positioning or orientation on the user end. Generally, however, AR platforms suffer various limitations, both technically and in terms of affordability.
100031 On the other hand, existing three-dimensional rendering software programmes allow expert users, particularly architects and/or interior designers, to design goods or spatial plans for buildings and in turn, to render such plans in three-dimensions.
Programmes such as AutoDesSysTM allow architects or interior designers to design three-dimensional renderings of architectural spaces, landscaping or other design elements.
Computer-aided design (CAD) programs, such as Autodeske, allow engineers or carpenters, for example, to design new products or product assemblies.
Typically, such Date Recue/Date Received 2021-12-30 rendering programmes are memory intensive and thus are limited in the amount of data forming part of renderable projects.
100041 This background information is provided to reveal information believed by the applicant to be of possible relevance. No admission is necessarily intended, nor should be construed, that any of the preceding information constitutes prior art or forms part of the general common knowledge in the relevant art.
SUMMARY
100051 The following presents a simplified summary of the general inventive concept(s) described herein to provide a basic understanding of some aspects of the disclosure. This summary is not an extensive overview of the disclosure. It is not intended to restrict key or critical elements of embodiments of the disclosure or to delineate their scope beyond that which is explicitly or implicitly described by the following description and claims.
100061 A need exists for systems and methods for interactive customisation and visualisation of virtual environments and systems for digitally configuring virtual object assemblies that overcome some of the drawbacks of known systems and related techniques, or at least, provides a useful alternative thereto. Some aspects of this disclosure provide examples of such systems and methods.
100071 In accordance with one aspect, there is provided a system for providing .. interactive customisation and visualisation of virtual environments, the system comprising:
a graphics engine operable to render a current virtual environment in accordance with received environment parameters; a digital asset database accessible to the graphics engine and having stored thereon customisable virtual assets representative of corresponding real assets; a digital application operable to, via a user device associated therewith and in communication with the graphics engine: display the current virtual environment via a graphical-user interface (GUI); receive via the GUI, as input, updated environment parameters comprising at least an asset parameter corresponding to a selected virtual asset of the customisable virtual assets; communicate the updated environment parameters to the
2 Date Recue/Date Received 2021-12-30 graphics engine; wherein, upon receipt of the updated environment parameters, the graphics engine is operable to: access from the digital asset database the selected virtual asset; configure an updated virtual environment based at least in part on the current virtual environment and the updated environment parameters, such that the updated virtual environment is displayable via the digital application on the GUI.
100081 In one embodiment, the customisable virtual assets comprise corresponding virtual asset components designated based, at least in part, on corresponding real asset components, and the selected virtual asset comprises a selected virtual asset component.
100091 In one embodiment, the virtual asset components comprise corresponding .. component junction identifiers.
100101 In one embodiment, the graphics engine is operable to automatically configure the updated virtual environment based further on the component junction identifiers.
100111 In one embodiment, automatically configuring the updated virtual environment comprises configuring the selected virtual asset component with one or more virtual asset components forming part of the current virtual environment in accordance with the component junction identifiers to form a virtual object assembly.
100121 In one embodiment, each of the component junction identifiers are associated with at least one complementary junction identifier, and the graphics engine is operable to automatically configure the updated virtual environment in accordance with associations between the component junction identifiers and the at least one complementary junction identifier.
100131 In one embodiment, the digital application is further operable, after display of the current virtual environment, to display only selectable virtual asset components from the customisable virtual assets based, at least in part, on the component junction identifiers available in the current virtual environment.
100141 In one embodiment, the digital asset database comprises a low-dependency digital library.
3 Date Recue/Date Received 2021-12-30 100151 In one embodiment, the current virtual environment is redundantly stored in at least two user datasets, each dataset being independently accessible.
100161 In one embodiment, the at least two user datasets comprise a simplified dataset of the current virtual environment stored locally on the user device and a detailed dataset of the current virtual environment stored remotely on a remote storage device.
100171 In one embodiment, the simplified dataset of the current virtual environment stored locally on the user device comprises simplified mesh data.
100181 In one embodiment, the detailed dataset of the current virtual environment stored remotely on the remote storage device comprises detailed mesh data and texture data, which are independently accessible for rendering.
100191 In one embodiment, the digital application is operable to store the simplified dataset corresponding to the updated virtual environment as the current virtual environment on the user device, in real-time.
100201 In one embodiment, the digital application is operable to store the detailed dataset corresponding to the updated virtual environment as the current virtual environment on the remote storage device, at predefined intervals.
100211 In one embodiment, the digital application accessing from the digital asset database the selected virtual asset comprises initially accessing the simplified dataset on the user device and thereafter accessing the detailed dataset on the remote storage device.
100221 In one embodiment, accessing the detailed dataset on the remote storage device comprises accessing detailed mesh data and, sequentially thereafter, accessing texture data.
100231 In one embodiment, accessing the detailed dataset on the remote storage device comprises accessing detailed mesh data and, in parallel therewith, accessing texture data.
100241 In one embodiment, the digital application is interactable via the user device to display the current virtual environment in accordance with one or more user-manipulatable perspectives on the GUI.
4 Date Recue/Date Received 2021-12-30 100251 In one embodiment, the one or more user-manipulatable perspectives comprises a first-person view mode, and the current virtual environment is displayed with 360-degree rotation capability.
100261 In one embodiment, the GUI is provided by at least one of: a web browser, or execution of one or more machine-executable instructions set by a digital data processor associated with the user device.
100271 In one embodiment, the digital asset database is a network-accessible database.
100281 In one embodiment, the current virtual environment comprises a three-dimensional digital property representation, and the customisable virtual assets in the digital asset database comprise renderable three-dimensional virtual assets.
100291 In one embodiment, the graphics engine is operable to render the current virtual environment in accordance with ray tracing physics.
100301 In one embodiment, any one or both of the current virtual environment or the customisable virtual assets are photorealistic.
100311 In one embodiment, the current virtual environment is renderable in the digital application with at least one of: virtual reality, augmented reality, and mixed reality.
100321 In one embodiment, the graphics engine comprises any one or both of: a local graphics engine on the user device, or a remote graphics engine on a remote device.
100331 In one embodiment, the graphics engine comprises a remote graphics engine operating on a remote device, and the user device is in network communication with the remote graphics engine.
100341 In one embodiment, the updated environment parameters further comprise an environment configuration parameter.
100351 In one embodiment, the environment configuration parameter comprises one or more of: an environment layout, or an environmental lighting condition.
5 Date Recue/Date Received 2021-12-30 100361 In one embodiment, the received environment parameters initially utilised by the graphics engine to render the current virtual environment comprise a property layout, based on at least one of: a three-dimensional scan of a property, a three-dimensional architectural plan of a property, or a two-dimensional architectural plan of a property.
100371 In one embodiment, the received environment parameters initially utilised by the graphics engine to render the current virtual environment further comprise one or more previously selected virtual assets arranged within the property layout.
100381 In one embodiment, the customisable virtual assets comprise at least one of:
furniture assets, fitting assets, construction assets, electrical assets, water assets, lighting assets, or decor assets.
100391 In one embodiment, the customisable virtual assets comprise furniture objects and the digital asset database comprises at least one of: furniture dimensions, furniture colours, furniture textures, furniture replaceable parts, furniture sockets, furniture costs, furniture reviews, furniture photographs, and furniture videos, associated with each furniture object.
100401 In one embodiment, the customisable virtual assets comprise digital representations of real assets offered for sale by one or more supplier users.
100411 In one embodiment, the current virtual environment forms an extractable property content inventory.
100421 In one embodiment, the digital application is operable to receive, as input via the GUI, property manual data which is stored in a property manual dataset, and the property manual data comprises at least one of: floor layouts, assembly manuals, warranties, receipts, paint chips, or property certifications.
100431 In one embodiment, the digital application is operable to receive, as input via the GUI, person data reflective of one or more persons associated with the current virtual environment, the person data being stored in a user dataset.
6 Date Recue/Date Received 2021-12-30 100441 In one embodiment, the digital application is operable to receive, as input via the GUI, property safety data reflective of one or more potential hazards associated with the current virtual environment, the property safety data being stored in a user property dataset.
100451 In one embodiment, the digital application is operable to receive, as input via the GUI, a purchase request relating to one or more customisable virtual assets representative of corresponding real assets offered for sale.
100461 In one embodiment, the digital application is operable to receive, as input via the GUI, a property upkeep reminder and a reminder schedule associated therewith.
100471 In one embodiment, the digital application is operable to receive, as input via the GUI, a staging command from a realtor-user.
100481 In one embodiment, at least part of the current virtual environment is accessible by an authorised third-party comprising at least one of: a potential property purchaser, a potential property contractor, a potential emergency responder, or a potential insurance provider.
100491 In accordance with another aspect, there is provided a system for digitally configuring a virtual object assembly in a virtual environment, the system comprising: a digital data storage device having stored thereon an asset library comprising a plurality of customisable virtual assets each having module data associated therewith; a processor in communication with the digital data storage device and operable to access the asset library;
and a digital application operable on a user device for communicating with the processor, the digital application being operable to provide a graphical-user interface (GUI) on the user device; wherein the processor is operable to digitally execute machine-executable instructions to: present as user-selectable assets via the GUI at least some of the plurality of customisable virtual assets; receive as input via the GUI at least one virtual asset selection from the user-selectable assets; and render via the GUI the virtual object assembly comprising the at least one virtual asset selection, wherein the virtual object assembly is
7 Date Recue/Date Received 2021-12-30 automatically configured in the virtual environment based on the module data corresponding to the at least one virtual asset selection.
100501 In one embodiment, the processor further comprises a graphics engine, and the processor commands the graphics engine to the render the virtual object assembly for display by the digital application on the GUI.
100511 In one embodiment, the module data comprises at least one junction identifier having associated therewith at least one complementary junction identifier.
100521 In one embodiment, the at least one junction identifier comprises a junction-type identifier which corresponds to a potential object interaction.
100531 In one embodiment, the at least one complementary junction identifier corresponds to at least one junction identifier of at least one complementary virtual asset.
100541 In one embodiment, the at least one complementary junction identifier dictates at least one complementary virtual asset which can be joined to a virtual asset with that particular at least one junction identifier to render, at least in part, the virtual object assembly.
100551 In one embodiment, presenting said at least some of the plurality of customisable virtual assets as the user-selectable assets comprises presenting an asset catalogue via the GUI upon opening of the digital application on said user device.
100561 In one embodiment, rendering via the GUI the virtual object assembly comprises downloading onto the user device one or more virtual assets from the asset library corresponding to the at least one virtual asset selection.
100571 In one embodiment, automatically configuring the virtual object assembly is based on an association between the at least one junction identifier on a first virtual asset downloaded and the at least one complementary junction identifier on a second virtual asset downloaded.
8 Date Recue/Date Received 2021-12-30 100581 In one embodiment, the module data further comprises a positioning rule associated with each of the at least one junction identifier.
100591 In one embodiment, the positioning rule dictates at which virtual position relative to a virtual object a complementary virtual object having an associated at least one junction identifier is joinable.
100601 In one embodiment, the positioning rule comprises at least one of: a scale, a position, an orientation, or a rotation, of a virtual object within the virtual environment.
100611 In one embodiment, the processor is further operable to digitally execute machine-executable instructions, prior to the presenting the user-selectable assets, to:
identify at least one virtual object on the virtual environment having at least one junction which is available; and identify one or more complementary virtual assets having a junction identifier associated with the at least one junction which is available, wherein the one or more complementary virtual assets form the at least some of the plurality of customisable virtual assets which are presented as the user-selectable assets.
100621 In one embodiment, the processor is further operable to digitally execute machine-executable instructions to receive via the GUI at least one asset deletion command associated with deletion of a virtual asset from the virtual environment.
100631 In one embodiment, the processor is further operable to digitally execute machine-executable instructions to, upon receiving the at least one asset deletion command, reconfigure the virtual object assembly based on remaining virtual assets and available junction identifiers.
100641 In one embodiment, the processor is further operable to digitally execute machine-executable instructions to, upon receiving the at least one asset deletion command, delete from the user device the virtual asset corresponding to the at least one asset deletion command.
9 Date Recue/Date Received 2021-12-30 100651 In one embodiment, each virtual asset in the plurality of customisable virtual assets comprises mesh data and texture data which are independently accessible for rendering by the processor.
100661 In one embodiment, rendering via the digital application on the GUI the virtual object assembly comprises sequentially rendering the virtual object assembly based on mesh data and thereafter texture data.
100671 In one embodiment, the plurality of customisable virtual assets are renderable with at least one of: virtual reality, augmented reality, and mixed reality.
100681 In one embodiment, any one or both of the virtual object assembly and the virtual environment are displayed via the GUI in a first-person view mode with 360-degree rotation capability within the digital application.
100691 In one embodiment, the virtual environment comprises a digital property representation.
100701 In one embodiment, the digital property representation forms an extractable property content inventory.
100711 In one embodiment, the plurality of customisable virtual assets comprises at least one of: furniture assets, fitting assets, construction assets, electrical assets, water assets, lighting assets, or decor assets.
100721 In one embodiment, the plurality of customisable virtual assets comprise a plurality of furniture assets and the virtual object assembly comprises a virtual furniture assembly having interchangeable furniture components corresponding to different real furniture components.
100731 In one embodiment, the plurality of customisable virtual assets comprise digital representations of real assets offered for sale by one or more supplier users.
100741 In one embodiment, the module data of each virtual asset in the plurality of customisable virtual assets further comprises at least one of: name, sprite, thumbnail, Date Recue/Date Received 2021-12-30 unique identifier, material, model, price, warranty information, receipt information, assembly information, certification information, safety information, or maintenance information.
100751 In one embodiment, the processor is further operable, in response to direction from said digital application, to digitally execute machine-executable instructions to store the virtual object assembly on a low-dependency digital representation database.
100761 In one embodiment, the processor is further operable, in response to direction from said digital application, to digitally execute machine-executable instructions to store a simplified dataset of the virtual environment locally on a user device and a detailed dataset of the virtual environment remotely on a remote data storage device.
100771 In one embodiment, the system is for use as an interactive virtual asset customisation and visualisation tool representative of interactable real assets.
100781 In accordance with another aspect, there is provided a method for providing a customisable virtual environment renderable via a digital application associated with a user device, the method comprising: rendering via the digital application a current virtual environment on the user device; receiving, as input from the digital application, updated environment parameters comprising at least an asset parameter corresponding to a selected virtual asset of a plurality of virtual assets stored in a digital asset database and representative of corresponding real assets; accessing the selected virtual asset in the digital asset database; and using a graphics engine, configuring an updated virtual environment in accordance with the selected virtual asset and the updated environment parameters so as to render via the digital application the updated virtual environment as the current virtual environment.
100791 In one embodiment, the digital asset database is stored remote to the user device.
100801 In one embodiment, the current virtual environment is stored on said user device.

Date Recue/Date Received 2021-12-30 100811 In one embodiment, prior to receiving the updated environment parameters, the method comprises displaying via the digital application an asset catalogue comprised of select data corresponding to the plurality of virtual assets from the digital asset database.
100821 In one embodiment, receiving the asset parameter comprises receiving a selected virtual asset from the asset catalogue.
100831 In one embodiment, accessing the selected virtual asset comprises downloading said selected virtual asset to the user device via a server.
100841 In one embodiment, receiving the asset parameter comprises receiving a selected virtual asset component having associated therewith a junction identifier representative of a potential virtual asset configuration in a virtual environment, and the configuring of the updated virtual environment comprises automatically configuring the selected virtual asset in accordance with the asset potential virtual configuration.
100851 In one embodiment, the graphics engine is a remote graphics engine stored on a server, or a local graphics engine integrated with the user device.
100861 In one embodiment, configuring an updated virtual environment comprises configuring the updated virtual environment in accordance with a photorealistic rendering process.
100871 In one embodiment, the method further comprises storing the updated virtual environment locally on the user device in real time and remotely in a user database via a remote server at predefined intervals.
100881 In one embodiment, receiving as input from the GUI comprises receiving the updated environment parameters via a network.
100891 In one embodiment, accessing the selected virtual asset comprises accessing one or more specific asset datasets corresponding to the asset parameter.

Date Recue/Date Received 2021-12-30 100901 In one embodiment, the method further comprises: updating the current virtual environment in real time in accordance with a minimally memory-intensive representation of the selected virtual asset.
100911 In one embodiment, the updated environment parameters further comprise an environment configuration parameter, and the configuring an updated virtual environment comprises configuring the updated virtual environment in accordance with the environment configuration parameter.
100921 In one embodiment, the current virtual environment comprises both of a digital property representation and a number of pre-selected and/or configured virtual assets of the plurality of virtual assets stored in the digital asset database.
100931 In one embodiment, rendering the current virtual environment comprises rendering with at least one of: virtual reality, augmented reality, and mixed reality.
100941 In one embodiment, rendering the current virtual environment comprises rendering the current virtual environment in accordance with a first-person view mode with 360-degree rotation capability within the digital application.
100951 In one embodiment, the updated environment parameters comprise property staging parameters received from a realtor-user.
100961 In one embodiment, the method further comprises receiving, as input from the digital application, any one or both of: property manual data and property safety data, associated with the current virtual environment.
100971 In one embodiment, the current virtual environment forms an extractable property content inventory.
100981 In one embodiment, the plurality of virtual assets comprise digital representations of real assets offered for sale by one or more supplier users.

Date Recue/Date Received 2021-12-30 100991 In one embodiment, the method further comprises receiving a sales transaction prompt from an end-user associated with one or more virtual assets, or a virtual asset assembly.
1001001 In one embodiment, the method further comprises effecting the sales transaction between the end-user and one or more supplier users.
1001011 Other aspects, features and/or advantages will become more apparent upon reading of the following non-restrictive description of specific embodiments thereof, given by way of example only with reference to the accompanying drawings.
BRIEF DESCRIPTION OF THE FIGURES
1001021 Several embodiments of the present disclosure will be provided, by way of examples only, with reference to the appended drawings, wherein:
1001031 Figure 1 is a schematic component diagram illustrating an exemplary system for providing interactive customisation and visualisation of virtual environments, in accordance with one aspect of the disclosure;
1001041 Figure 2 is a schematic component diagram illustrating an exemplary system for digitally configuring a virtual object assembly in a virtual environment, in accordance with another aspect of the disclosure;
1001051 Figure 3 is a schematic flow-diagram illustrating an exemplary method for providing a customisable virtual environment renderable via a digital application associated with a user device, in accordance with another aspect of the disclosure; and 1001061 Figures 4A and 4B are screenshots taken from an exemplary digital application running in accordance with an exemplary system for providing interactive customisation and visualisation of a virtual environment, illustrating one embodiment of changing a paint colour as applied to a wall virtual asset in the virtual environment;

Date Recue/Date Received 2021-12-30 1001071 Figures 5A and 5B are screenshots taken from the same exemplary digital application of Figures 4A and 4B, illustrating one embodiment of changing a finish as applied to a floor virtual asset in the virtual environment;
1001081 Figures 6A to 6C are screenshots taken from the same exemplary digital application of Figures 4A and 4B, illustrating one embodiment of moving a wall virtual asset in the virtual environment and the automatic configuration of the virtual environment in accordance therewith;
1001091 Figures 7A to 7D are screenshots taken from the same exemplary digital application of Figures 4A and 4B, illustrating one embodiment of moving a window virtual asset (Figures 7A to 7C) and a door virtual asset (Figure 7D) in the virtual environment and the automatic configuration of the virtual environment in accordance therewith;
1001101 Figures 8A to 8H are screenshots taken from the same exemplary digital application of Figures 4A and 4B, illustrating one embodiment of the automatic configuration of a couch virtual asset assembly based on different end-user inputs;
1001111 Figures 9A to 9C are screenshots taken from another exemplary digital application running in accordance with an exemplary system for providing interactive customisation and visualisation of a virtual environment, illustrating one embodiment of the photorealistic virtual reality rendering of a couch virtual asset within a virtual environment created by an end-user (Figure 9A), as well as different embodiments reflective of different environmental parameters being applied to the virtual environment (Figures 9B and 9C); and 1001121 Figure 10 is a screenshot taken from the same exemplary digital application of Figures 9A to 9C, illustrating one embodiment of the photorealistic augmented reality rendering of a couch virtual asset within a real environment video stream captured by a user device.
1001131 Elements in the several figures are illustrated for simplicity and clarity and have not necessarily been drawn to scale. For example, the dimensions of some of the elements in the figures may be emphasized relative to other elements for facilitating understanding Date Recue/Date Received 2021-12-30 of the various presently disclosed embodiments. Also, common, but well-understood elements that are useful or necessary in commercially feasible embodiments are often not depicted in order to facilitate a less obstructed view of these various embodiments of the present disclosure.
DETAILED DESCRIPTION
1001141 Various implementations and aspects of the specification will be described with reference to details discussed below. The following description and drawings are illustrative of the specification and are not to be construed as limiting the specification.
Numerous specific details are described to provide a thorough understanding of various implementations of the present specification. However, in certain instances, well-known or conventional details are not described in order to provide a concise discussion of implementations of the present specification.
1001151 Various apparatuses and processes will be described below to provide examples of implementations of the system disclosed herein. No implementation described below limits any claimed implementation and any claimed implementations may cover processes or apparatuses that differ from those described below. The claimed implementations are not limited to apparatuses or processes having all of the features of any one apparatus or process described below or to features common to multiple or all of the apparatuses or processes described below. It is possible that an apparatus or process described below is not an implementation of any claimed subject matter.
1001161 Furthermore, numerous specific details are set forth in order to provide a thorough understanding of the implementations described herein. However, it will be understood by those skilled in the relevant arts that the implementations described herein may be practiced without these specific details. In other instances, well-known methods, procedures and components have not been described in detail so as not to obscure the implementations described herein.
1001171 In this specification, elements may be described as "configured to"
perform one or more functions or "configured for" such functions. In general, an element that is Date Recue/Date Received 2021-12-30 configured to perform or configured for performing a function is enabled to perform the function, or is suitable for performing the function, or is adapted to perform the function, or is operable to perform the function, or is otherwise capable of performing the function.
1001181 It is understood that for the purpose of this specification, language of "at least one of X, Y, and Z" and "one or more of X, Y and Z" may be construed as X
only, Y only, Z only, or any combination of two or more items X, Y, and Z (e.g., XYZ, XY, YZ, ZZ, and the like). Similar logic may be applied for two or more items in any occurrence of "at least one ..." and "one or more..." language.
1001191 Unless defined otherwise, all technical and scientific terms used herein have the same meaning as commonly understood by one of ordinary skill in the art to which this disclosure belongs.
1001201 Throughout the specification and claims, the following terms take the meanings explicitly associated herein, unless the context clearly dictates otherwise.
The phrase "in one of the embodiments" or "in at least one of the various embodiments" as used herein does not necessarily refer to the same embodiment, though it may. Furthermore, the phrase "in another embodiment" or "in some embodiments" as used herein does not necessarily refer to a different embodiment, although it may. Thus, as described below, various embodiments may be readily combined, without departing from the scope or spirit of the innovations disclosed herein.
1001211 In addition, as used herein, the term "or" is an inclusive "or"
operator, and is equivalent to the term "and/or," unless the context clearly dictates otherwise. The term "based on" is not exclusive and allows for being based on additional factors not described, unless the context clearly dictates otherwise. In addition, throughout the specification and claims, the meaning of singular forms "a," "an," and "the" include plural references unless the context clearly dictates otherwise. The meaning of "in" includes "in" and "on."
1001221 The term "comprising" as used herein will be understood to mean that the list following is non-exhaustive and may or may not include any other additional suitable Date Recue/Date Received 2021-12-30 items, for example one or more further feature(s), component(s) and/or element(s) as appropriate.
1001231 The term "real property" as used throughout the present disclosure will be understood to include any building or structure, whether commercial or private, and any one or rooms associated with such properties, without limitation. The term "real property"
may further include any outdoor spaces, gardens or landscaping associated with any building or structure.
1001241 Various drawbacks of conventional three-dimensional rendering software platforms exist, which drawbacks have in some instances prevented commercial .. availability of such software platforms to non-expert users (i.e.
consumers). One such drawback relates to memory, wherein the large amount of object data to be processed simultaneously is prohibitive, especially where the available local memory on user devices is variable (and typically, less than optimal for high resolution processing).
The processing of the object data, which often includes large renderable files (e.g. three-dimensional models), is typically slow and thus, conventional platforms tend to lag, reducing the user experience and leading to user-frustration. Memory constraints, in turn, present a further challenge to the scalability of conventional three-dimensional rendering software platforms. For example, where user-selectable items are to be displayed graphically to users, large subsets of data cannot typically be handled at a speed which is user-friendly.
For example, there may be a lag when scrolling through subsets of data or otherwise, some data assets may not display whatsoever. Memory and scalability constraints are recognised as a significant roadblock to computer generated imagery (CGI) in general, and particularly so where end-users demand access to software applications from all browsers and all devices at all times.
1001251 Typically ascribed to these memory and scalability constraints, conventional three-dimensional rendering software platforms offer only limited object configuration techniques. For example, known object configuration of three-dimensional objects in the art involve manual configuration by aligning objects on a scene. Typically, such programmes require users to insert digital objects in a scene in a particular order, typically Date Recue/Date Received 2021-12-30 one after another, and sometimes, with each digital object in a particular orientation, in order to design an assembly. Accordingly, a user will insert a first object, set its coordinates and then insert a second object and manually align its coordinates to those of the first object (often by drag-and-drop). Perfect alignment is not necessarily easy to obtain and particularly so for non-expert users. If the scales of the objects are not identical, the user may need to scale one or both of the objects in the scene. The objects, even once aligned, remain separate digital objects with no association between them, which poses a challenge to later editing and/or processing. For example, when moving one object in the scene, the other objects are left behind and must individually be realigned with the first object at the new location and in the correct orientation. Similarly, deleting an object previously part of an object assembly, exchanging one object for another in an object assembly, or otherwise rearranging or re-orientating an object within an object assembly will require additional manual adjustments to the other assets. Thus, known object configuration of three-dimensional objects within a scene may be both inconvenient and time-consuming. This may be particularly so where, for example, the user is testing digital objects reflective of real goods in a space to decorate or redecorate it and thus, multiple "tests"
of different objects or different object configurations are required.
1001261 Conventional object configui-ators and related programmes suffer the further drawback of the digital objects lacking any "intelligence" associated with or indicating related objects. Users are thus left with the burden of configuring object assemblies based on their own (sometimes limited) knowledge of related objects and how such objects can be configured to provide functionally workable real equivalents, as described above.
Conventional object configurator programmes thus often require additional time to assemble groups of objects, even where such objects are related.
1001271 Other drawbacks of conventional object configurators and related digital representation platforms relate to the volatile nature of object assemblies.
Many digital environment representation platforms, such as AmazonTm's "AR View", are offered to users for testing goods in spaces, such as with AR features, wherein the data accumulated by configuration or assembly is discarded after a particular online session is closed. Those platforms which do allow permanent storage of data suffer other drawbacks, such as large Date Recue/Date Received 2021-12-30 data files which slow the processing and visualisation thereof, as described above.
Nonetheless, the platforms with permanent storage of data are typically intended for initial design or redecorating purposes only, by expert users, and do not make the data available to any third parties for review.
1001281 Whilst software programmes designed for expert users offer certain flexibility in the design of three-dimensional objects, assemblies and/or digital environments, these programmes are typically too complex for an average non-expert user or consumer. The frustration associated with attempting to learn a full programme designed for expert users to complete a simple task often presents a deterrent to non-expert users, leading to poor commercialisation of such products in the non-expert user market.
1001291 Furthermore, the large-scale computer infrastructure and online support required to maintain computer programs and software offering realistic object rendering to end-users is prohibitive to small-to-medium sized manufacturers. Many of these manufacturers therefore resort to selling their wares as so-called "marketplace sellers" via e-commerce platforms such as AmazonTM, WayfairTM or WalmartTM, relinquishing revenue in trade for a sustainable marketplace.
1001301 The methods and systems described herein provide, in accordance with different embodiments, different examples of a method for providing a customisable virtual environment renderable via a digital application associated with a user device, a system for providing interactive customisation and visualisation of virtual environments and a system for digitally configuring a virtual object assembly in a virtual environment.
The various embodiments described herein address some of the drawbacks of conventional methods and systems described above, or at least provide a useful alternative thereto.
1001311 In some embodiments, as elaborated further below, the methods and systems described herein may address memory constraints suffered by conventional three-dimensional rendering software platforms and/or conventional object configurators.

Date Recue/Date Received 2021-12-30 1001321 In some embodiments, as elaborated further below, the methods and systems described herein may address scalability constraints suffered by conventional three-dimensional rendering software platforms and/or conventional object configurators.
1001331 In some embodiments, the methods and systems described herein may address object configuration constraints suffered by conventional object configurators. In particular, in some embodiments, the methods and systems described herein may provide a novel object configuration method, which may be easily applied to an unlimited number of virtual assets to facilitate object configuration, as described herein.
1001341 In some embodiments, the methods and systems described herein may provide a software platform structure and/or a software program operable with such structure, where virtual assets are addressable (i.e. stored in a memory unit in the structure in which all locations can be separately accessed by the software program in use) and configurable.
1001351 In some embodiments, the methods and systems described herein may provide a software platform structure, which is comprised of one or more projects, with each project divided into packages with low dependencies (i.e. packages are relatively independent in the software platform). This may be beneficial, for example, where one package is updated and the remaining packages are not affected by this update. Furthermore, the low dependency of the packages may lead to a high level of customisability of the software platform structure. In particular, any combination of packages may be combined to form a customised project based on customer requirements. In some embodiments, therefore, the methods and systems described herein may provide to small-to-medium sized manufacturers an alternative solution to conventional e-commerce platforms, which is customisable based on individual manufacturer requirements, which does not require involvement of a sales intermediary, and/or which is easy to navigate for end-users (consumers).
1001361 In the various embodiments of systems and methods below, the current virtual environment is a visual representation of: a real property (existing, planned, or otherwise conceptually designed) and/or a plurality of real assets disposed therein. In particular, the current virtual environment is a renderable three-dimensional representation of the real Date Recue/Date Received 2021-12-30 property and/or real assets, stored as data until rendered. In some embodiments, the current virtual environment provides a digital replica of the real property and/or real assets, as will be understood from the present disclosure. The current virtual environment may also be referred to as a "digital property representation" or "digital property twin", without limitation. For the sake of clarity, the current virtual environment may be considered to include a digital property representation with virtual assets disposed therein. As will be understood from the present disclosure, the current virtual environment is not static, but instead is interactive, with end-users being able to update and/or adjust the current virtual environment with ease. For example, and in accordance with various embodiments, systems or methods as herein described relate to the provision of a digital twin of a real-life environment associated with a person or place (e.g. an apartment, house, an office, a floor of a building, a building, or the like) that is updatable and/or customisable for a wide range of applications. For example, a digital twin of a house and representing assets within the house, wherein the digital twin is updated as assets are acquired or replaced, may be beneficial in insurance claim situations. Similarly, a floor plan or 3D twin of a house having associated metadata related to room occupancy may be immensely valuable in emergency situations, whereby emergency responders may quickly locate and access, for instance, occupants with a physical disability or young children in during an emergency evacuation.
1001371 Moreover, a customisable environment may relate to the customisation of assets within a room (e.g. the type and number of furniture assets), and/or to the customisation of assets themselves (e.g. the customisation of sofa) through the provision of a virtual or digital twin of corresponding real-life assets. For example, a user considering the purchase of a sofa may interact with a system as herein described to configure a virtual asset in a virtual environment reflective or representative of their home, as will be further described .. below. In the various embodiments of systems and methods below, the virtual assets may be considered three-dimensional digital objects. In particular, the virtual assets may be renderable three-dimensional representations of real assets, stored as data until rendered.
The virtual assets may represent existing real objects, and/or otherwise planned or conceptually designed objects.

Date Recue/Date Received 2021-12-30 1001381 With reference to Figure 1, and in accordance with one exemplary embodiment of the present disclosure, a system for providing interactive customisation and visualisation of virtual environments, generally referred to using the numeral 100, will now be described.
1001391 System 100 is operable to provide non-expert users with, inter alia, a software platform that allows users to create or build a virtual environment, which represents either a real or imagined environment, by interacting with and in some instances customising virtual objects.
1001401 System 100 comprises a graphics engine 102 which is operable to render a current virtual environment 104.1 in accordance with received environment parameters 106; a digital asset database 108 which is accessible to the graphics engine 102 and has stored thereon customisable virtual assets 108.1, 108.2, and 108.3 representative of corresponding real assets (real or designed); and a digital application 110 which is operable to, via a user device 112 associated therewith and in communication with the graphics engine 102, display the current virtual environment 104.1 via a graphical-user interface (GUI) 114. The system 100 is further operable to receive via the GUI 114, as input, updated environment parameters comprising at least an asset parameter, corresponding to a selected virtual asset 108.3 of the customisable virtual assets 108.1, 108.2, and 108.3, and to communicate the updated environment parameters to the graphics engine 102.
Upon receipt of the updated environment parameters, the graphics engine 102 is operable to:
access from the digital asset database 108 the selected virtual asset 108.3;
and configure an updated virtual environment 104.2 based at least in part on the current virtual environment 104.1 and the updated environment parameters, such that the updated virtual environment 104.2 is displayable via the digital application 110 on the GUI 114.
1001411 In this embodiment, the customisable virtual assets 108.1 to 108.3 comprise corresponding virtual asset components designated based, at least in part, on corresponding real asset components (real or designed). In the specific non-limiting example illustrated in Figure 1, the virtual asset components 108.1 to 108.3 are various virtual chair components which are based on corresponding real chair components, as shown.
Specifically, the virtual chair components include a left arm 108.1, a seat 108.2, and a right Date Recue/Date Received 2021-12-30 arm 108.3 (which forms the selected virtual asset component 108.3 in this embodiment), which correspond to the same real components or parts of a chair. It is to be appreciated that the virtual asset components 108.1 to 108.3 shown in Figure 1 are merely exemplary asset components and that many more and varied virtual asset components and other customisable virtual assets may be included in the digital asset database 108, without limitation.
1001421 In this embodiment, the virtual asset components 108.1 to 108.3 further comprise corresponding component junction identifiers, illustrated as reference numerals 108.2.1 and 108.3.1 in Figure 1. Generally, the component junction identifiers (shortened to "junction identifiers" elsewhere) dictate some form of potential object interaction of a virtual asset component or asset with other components or assets, as the case may be. These potential object interactions, in turn, may represent potential real object or part interactions, particularly in embodiments where the system 100 is operable as an object configtu-ator to design furniture, or similar, as described below. It is to be appreciated that, although only two component junction identifiers 108.2.1 and 108.3.1 are shown here, each virtual asset or component may include a plurality of component junction identifiers and furthermore, that many virtual assets or components may not include any component junction identifiers, depending on respective potential object interactions available.
1001431 In this embodiment, the graphics engine 102 is associated with a remote server 170. The graphics engine 102, in this embodiment, is in the form of a processor having executable instructions (or software) related to graphics rendering and in particular, to three-dimensional graphics rendering. Therefore, in this embodiment, the graphics engine 102 comprises a remote graphics engine operating on a remote device (i.e. the remote server 170 in this embodiment), and the user device 112 is in network communication with the graphics engine 102 via the Internet, as shown. More specifically, in this embodiment, the graphics engine 102 is based on an existing three-dimensional rendering engine, UnityTM. Although Unity is traditionally a gaming platform, in this embodiment UnityTM
is adapted to perform as the graphics engine 102 of system 100 for three-dimensional rendering of virtual assets and virtual asset components or parts (for configuration). For example, amongst other adaptations which will be readily understood from the present Date Recue/Date Received 2021-12-30 disclosure, UnityTM was utilised to build a web application (forming the digital application 110 in this example) which is capable of accepting calls from external sources, such that users may access their profiles (representative of their virtual environment) from any location at any time, provided the user device 112 has Internet connectivity, in this embodiment. It is to be appreciated, as described elsewhere, that UnityTM
provides one example of a suitable graphics engine, editor, game engine, or environment, which may be exchangeable with other workable alternatives in other examples, or other sets of instructions achieving the same function.
1001441 As mentioned, the graphics engine 102 configures an updated virtual environment 104.2 based, at least in part, on the current virtual environment 104.1 and the updated environment parameters received. In this embodiment, the graphics engine 102 automatically configures the updated virtual environment 104.2 based further on the component junction identifiers 108.2.1 and 108.3.1 of the virtual asset components 108.1 to 108.3. More specifically, in automatically configuring the updated virtual environment 104.2, the graphics engine 102 configures the selected virtual asset component 108.3 (right arm) with one or more virtual asset components 108.1 (left arm) and 108.2 (seat) forming part of the current virtual environment 104.1 in accordance with the component junction identifiers 108.2.1 and 108.3.1 to form a virtual object assembly 150 (chair).
Therefore, with reference to Figure 1, in the current virtual environment 104.1 shown on the right, the virtual asset components 108.1 to 108.3 are not yet configured or assembled.
However, the virtual asset components 108.1 to 108.3 each include component junction identifiers 108.2.1 and 108.3.1 (although only those on 108.2. and 108.3 are shown) which the graphics engine 102 recognizes to automatically configure the right arm 108.3 with the seat 108.2, which is already configured with the left arm 108.1. The configured object assembly is thus shown in the updated virtual environment 104.2 on the left.
1001451 In this embodiment, although not specifically shown, each of the component junction identifiers (including 108.2.1 and 108.3.1 as shown) are associated with at least one complementary junction identifier. The at least one complementary junction identifier (examples of which are provided in Figure 2) dictates which virtual assets or components can be configured at each respective component junction identifier. For example, with Date Recue/Date Received 2021-12-30 reference to Figure 1, the component junction identifier of seat component 108.2 may have two complementary junction identifiers ¨ one indicative of a configuration possibility with a right arm component (as shown) and another indicative of a configuration possibility with a left arm component (not shown). The component junction identifier of right arm component 108.3, however, may have only one complementary junction identifier indicative of a configuration possibility with a seat component (as shown).
Thus, complementary junction identifier of each component junction identifier may depend on the type of component junction identifiers and/or the type of virtual asset and its configuration possibilities. It is to be appreciated that these complementary junction identifiers are utilised for illustration purposes only, to underscore the general principle underlying component junction identifiers and associated complementary junction identifiers, and that different embodiments thereof are intended to fall within the scope of the present disclosure, provided that at least some association or relationship between virtual assets or components is identifiable by system 100.
1001461 In this specific embodiment, as each component junction identifier is associated with at least one complementary junction identifier, the graphics engine 102 is operable to automatically configure the updated virtual environment 104.2 in accordance with the associations between the component junction identifiers and the at least one complementary junction identifier. Automatically configuring the updated virtual environment 104.2 may comprise aligning the right arm component 108.3, as the selected virtual asset, with the seat component 108.2 and the left arm component 108.1, forming part of the current virtual environment 104.1 to produce the updated virtual environment 104.2, as shown. In some embodiments, this may be displayed to a user as a "snap"
together asset configuration, which results in a virtual object assembly (in which the individual virtual asset components or parts are associated or brought together).
1001471 Once configured by the graphics engine 102, the updated virtual environment 104.2 is displayable via the digital application 110 on the GUI 114. In this embodiment, the user device 112 is a mobile device, a personal computer, a laptop, or an in-store network-connectable station, which displays the updated virtual environment 104.2 via the digital application 110. In this embodiment, the digital application 110 is provided as any Date Recue/Date Received 2021-12-30 one of: a web-based (i.e. WebGL) application on a mobile device, a downloadable application for a MaCTM or WindowsTM desktop, or as a live bit streaming application, as per the user device 112 and user discretion. In this embodiment, the updated virtual environment 104.2 is displayed with high resolution, as described further below, or .. otherwise fine-grained images. It is to be appreciated that, upon display, the updated virtual environment 104.2 forms or becomes the current virtual environment 104.1, which can in turn be updated by a user. The current virtual environment 104.1 may be continuously updated over a single session, and/or updated over multiple spaced-apart sessions.
1001481 In this embodiment, the digital application 110 is further operable, after display of the current virtual environment 104.1, to display only selectable virtual asset components from the customisable virtual assets on the digital asset database 108 based, at least in part, on the component junction identifiers available in the current virtual environment 104.1. Thus, in broad terms, the digital application 110 may identify component junction identifiers available in the current virtual environment 104.1 and, .. based on the at least one complementary junction identifier associated with those available component junction identifiers, display only selectable virtual asset components corresponding to those complementary junction identifiers from the digital asset database 108. This may reduce the rendering burden on the graphics engine 102, as only relevant or related virtual asset components are to be rendered (albeit a smaller representation thereof, such as a sprite or thumbnail) for display. In this embodiment, the virtual asset components are also displayable with high resolution, when selected by the user, as described further below.
1001491 In this embodiment, the digital asset database 108 comprises a low-dependency digital library. Accordingly, virtual assets, virtual asset components and/or groups of any of the aforementioned, are independently accessible (and/or downloadable) to the graphics engine 102 and/or the digital application 110 on user device 112, as the case may be. This may be beneficial, for example, in enabling selling-users to customise datasets (or packages) available to end-users. Furthermore, in this embodiment, the digital asset database 108 is a network-accessible database, which is accessible by the digital application 110 over the Internet, as shown in Figure 1 and mentioned above.

Date Recue/Date Received 2021-12-30 1001501 In this embodiment, the current virtual environment 104.1 (which stems from the updated virtual environment 104.2 when a user makes changes thereto) is redundantly stored in at least two user datasets, with each dataset being independently accessible to the graphics engine 102 and/or the digital application 110 on user device 112, as the case may be. In particular, in this embodiment, for registered end-users, two user datasets are stored, both reflective of the current virtual environment 104.1. The two user datasets comprise:
a simplified dataset 116 of the current virtual environment 104.1, which is stored locally on the user device 112, and a detailed dataset 106 of the current virtual environment 104.1, which is stored remotely on the remote server 170 (or any other suitable remote storage device). Accordingly, the current virtual environment 104.1 of each registered end-user (appreciating that some users may have a plurality of current virtual environments representing a plurality of properties) is stored as respective local and remote datasets of differing complexities, which may provide various benefits as set out herein.
In this embodiment, as the simplified dataset 116 and the detailed dataset 106 form redundant storage of the current virtual environment 104.1, it is to be appreciated that the datasets share similar data but of different data package sizes, as will become apparent from the below description.
1001511 Yet further, in this embodiment, system 100 enables virtual assets, virtual asset components and/or virtual asset assemblies, which are stored remotely on the digital asset database 108, to be easily switched to local assets stored locally on the user device 112 on command. This may be useful, for example, where the registered end-user does not have a reliable Internet connection or otherwise, where the user is a guest-user without an account (i.e. not a registered end-user) through which they can access assets and/or the virtual environment at a later date.
1001521 Returning now to typical storage for registered end-users, in this embodiment, the simplified dataset 116 of the current virtual environment 104.1 which is locally stored on the user device 112 comprises simplified mesh data. In this embodiment, mesh data comprises a plurality of vertices, edges and faces (or surfaces) which define the shape of respective virtual assets or components (in turn, representative of real objects or parts, as described). It is to be appreciated that different shapes and dimensions of the faces of the Date Recue/Date Received 2021-12-30 mesh data are workable in different embodiments of system 100, together with various different rendering operations for such mesh data. In some instances, the mesh data may otherwise be referred to as a "model" of the real or designed object.
1001531 In this embodiment, the detailed dataset 106 of the current virtual environment 104.1, which is remotely stored on or in association with/accessible to the remote server 170, comprises detailed mesh data and texture data, which are independently accessible for rendering. In this embodiment, texture data comprises images or bitmaps which can be displayed or "draped" on mesh data (or spatial geometries) to display more realistic virtual assets or components (with the textures displayed typically being more realistic than solid colours). It is to be appreciated that a single virtual asset or component may have a range of texture data associated therewith. As texture data is typically more computationally demanding and/or memory-intensive, as compared to mesh data (i.e. images or pixels vs data points), the independent accessibility allows for independent download and/or display of the different data, which in this embodiment results in display of the detailed mesh data .. and thereafter the texture data (although the download of texture data is independent, being either sequential to or in parallel with download of the detailed mesh data, as described below).
1001541 In this embodiment, the digital application 110 is operable to store the simplified dataset 116 corresponding to the updated virtual environment 104.2 as the current virtual environment 104.1 on the user device 112. In this particular embodiment, the digital application 110 stores the simplified dataset 116 locally on the user device 112 in real-time. This may be beneficial, for example, in facilitating real-time rendering of the current virtual environment 104.1. In some embodiments, the simplified dataset 116 may be stored locally in an automated fashion, such that the user is not required to periodically "save" (e.g. avoiding disappointment of lost configured object assemblies).
1001551 In this embodiment, the digital application 110 is operable to store the detailed dataset 106 corresponding to the updated virtual environment 104.2 as the current virtual environment 104.1 on the remote server 170. In this particular embodiment, the digital application 110 stores the detailed dataset 106 remotely on the remote server 170 at Date Recue/Date Received 2021-12-30 predefined intervals, such that only a single server call is required for a plurality or group of changes to the updated virtual environment 104.2. This storing is facilitated by the network-connected system 100, specifically over the Internet, in this example.
This storage of data at predefined intervals may be beneficial, for example, where updates in the updated virtual environment are many or substantial and may require substantial processing time and/or substantial bandwidth to update the detailed dataset 106, or are otherwise computationally demanding. This storage of data at predefined intervals may be further advantageous, for example, where an end-user is utilising the digital application 110 on the user device 112 in an "offline" mode, the digital application 110 storing the detailed dataset 106 corresponding to the updated virtual environment 104.2 once the end-user connects the user device 112 to the Internet. In some embodiments, the predefined intervals may be every 15 seconds, 30 seconds, or 1, 2, 3, 4, or 5 minutes or, part thereof. In some embodiments, the detailed dataset 106 may be stored remotely on ending of a session, stimulated by, for example, the user closing the digital application 110 or otherwise commanding to save.
1001561 In this embodiment, as the simplified dataset 116 and the detailed dataset 106 are separately stored (and/or updated) at separate locations, as described, the digital application 110 accesses these datasets separately to facilitate, for example, rapid visualization of the current virtual environment 104.1 and in turn, high quality visualization of the current virtual environment 104.1. In particular, in this embodiment, the simplified dataset 116 is accessed on the user device 112 by the digital application 110 in real time for rapid display via the GUI 114. This is specifically displayed as a catalogue to the end-user, including virtual asset thumbnail, virtual asset name, and brief description, in this example. Similarly, the detailed dataset 106 is accessed from the remote server 170 by the digital application 110 in real time for display thereafter. In this example, however, the detailed dataset is only accessed for virtual assets or parts selected by the end-user.
Notably, whilst the term "thereafter" is utilised in this context, it may refer to being computationally thereafter and not referring to changes in visualisations experienced by the end-user in real-time.

Date Recue/Date Received 2021-12-30 1001571 The same independent accessibility may apply to the virtual assets or virtual asset components, which are not yet selected by the end-user or stored as part of a virtual environment. Such independent accessibility may apply equally to the selectable virtual assets or components displayed to the user, as well as the rendering and/or configuration of a selected virtual asset or component within the virtual environment. In this embodiment, the digital application 110 accessing from the digital asset database 108 the selected virtual asset comprises initially accessing the simplified dataset 116 on the user device 112 and thereafter accessing the detailed dataset 106 on the remote server 170. In this embodiment, accessing the detailed dataset 106 comprises accessing detailed mesh data and, in parallel therewith, accessing texture data. Parallel access allows, in this embodiment, for rapid display (typically immediate) of the virtual asset or component whilst the more complex data (for higher resolution) is downloaded.
1001581 In this embodiment, the digital application 110 is interactable via the user device 112 to display the current virtual environment 104.1 in accordance with one or more user-manipulatable perspectives on the GUI 114. In particular, such one or more user-manipulatable perspectives may provide to an end-user transversal and view rotation capabilities with reference to the current virtual environment 104.1 which is three-dimensional, as well as the three-dimensional virtual assets. In this particular embodiment, this is provided through a 360-degree orbital viewer of the current virtual environment 104.1, which specifically comprises a first-person view mode, wherein the current virtual environment 104.1 is displayed with 360-degree rotation capability. Therefore, in this embodiment, the end-user can view virtual assets or parts (typically in the current virtual environment 104.1), replace virtual assets or parts, configure virtual assets or parts (e.g.
change material, parts), rotate virtual assets or parts, rotate view point of virtual aspects or parts from within the current virtual environment 104.1, move virtual assets or parts around the digital property representation (including floorplan, room plan, or wall plan, if there is one), zoom in/out on virtual assets or parts, or the current virtual environment, or select the virtual assets or parts. It is to be appreciated that where the virtual asset or component comprises a test good, for example, the end-user may wish to view the virtual asset or component from different viewpoints (in all three-axes), thus enabling the user to rotate viewpoint and/or the virtual asset itself to any view angle may be useful.
Similarly, Date Recue/Date Received 2021-12-30 zooming in or out may assist the end-user in viewing quality of the test good and fit in a larger space, respectively. In turn, the functional principles described elsewhere in this disclosure may apply at least in part to where an end-user changes a viewpoint, particularly with reference to rendering the current virtual environment 104.1.
.. 1001591 In this embodiment, the one or more user-manipulatable perspectives further comprise zoom perspectives. In particular, the view of the current virtual environment 104.1 and/or virtual asset may be manipulatable by the user based on the size of a selected virtual asset. For example, if the user selects a large sectional couch, the digital application 110 (put differently, a digital camera of the digital application 110) may zoom out to fully display the sectional couch virtual asset as selected via the GUI 114. In turn, if the user selects an ornament on a table, the digital application 110 (or digital camera) may zoom in such that the ornament selected is clearly visible via the GUI 114. The digital application 110, in this embodiment, further allows the user to zoom in or out on virtual assets or parts on demand.
1001601 In one example, the GUI 114 is provided by a web browser running the digital application 110 on the user device 112. In such an example, the two-part structure of the storage of the current virtual environment 104.1 and customizable virtual assets, as described, may facilitate web browser access through the digital application 110 despite the user device 112 potentially having relatively limited storage capabilities (especially if the user device 112 is a mobile one such as a cellphone or iPad). Therefore, in this particular embodiment, the digital application 110 (which involves CGI) is accessible via all browsers and all devices, meeting the demand of end-users despite the performance and storage issues typically present on varied user devices 112.
1001611 In this embodiment, the current virtual environment 104.1 comprises a three-dimensional digital property representation. Therefore, although the illustration of Figure 1 is two-dimensional, this embodiment pertains specifically to a three-dimensional property representation based on the mesh data and texture data of the virtual assets or components. Furthermore, in this particular embodiment, the customisable virtual assets in the digital asset database 108 also comprise renderable three-dimensional virtual assets.

Date Recue/Date Received 2021-12-30 1001621 In this embodiment, the current virtual environment 104.1 (i.e.
including both the digital property representation and the virtual assets therein) is photorealistic. In particular, the customisable virtual assets (described in detail below) stored in the digital asset database 108 comprise sufficient mesh data and texture data to render photorealistic digital objects within the current virtual environment 104.1, as described further below.
Such photorealism may be conceivably advantageous, for example, where the virtual assets reflect real assets offered for sale ¨ the photo-realistic renderings allowing end-users to accurately review the virtual assets (alone or within the digital property representation) and/or any of their features prior to making purchases. Photorealism may be further advantageous, for example, where the current virtual environment 104.1 is updated to reflect planned renovations for the approval of a property owner (or otherwise, planned redecorating).
1001631 In this embodiment, the graphics engine 102 is also operable to configure and/or render the current virtual environment 104.1 in accordance with ray tracing physics. In particular, both the digital property representation and the virtual assets may be raytraced displays of the respective components. It is to be appreciated that ray tracing broadly refers to rendering techniques which simulate optical effects relating, for example, to reflection, refraction, shadows, depth of field, ambient occlusion, and/or the like. Such raytraced display of the current virtual environment 104.1 may be conceivably advantageous, for example, where the end-user wishes to view the digital property representation and/or the virtual assets under different lighting conditions, to obtain an indication of the appearance thereof at different times of the day or night, or as arranged under different internal lighting.
Whilst ray tracing rendering is typically regarded as computationally intensive, the current embodiment of graphics engine 102 is capable of employing ray tracing physics based, at least in part on, the structuring of the system 100 and its respective independent download/upload processes.
1001641 Therefore, in this embodiment, the photorealism of the virtual assets, together with the use of ray tracing physics, allows for a near-realistic representation of assets. This near-realistic representation, which is one aspect not offered by conventional rendering or configuration systems, may be possible due to, for example, the particular structure and/or Date Recue/Date Received 2021-12-30 operation of system 100, as described herein. For example, in some embodiments, this may be attributed to the redundant storage of the virtual assets, which stores only necessary data locally (e.g. necessary for rending the current virtual environment 104.1) and the majority of virtual asset data remotely (to be downloaded if selected by the end-user).
1001651 In this embodiment, the updated environment parameters inputted by a user via the GUI 114 and received by the graphics engine 102 further comprise an environment configuration parameter. The environment configuration parameter in this embodiment relates to aspects of the current virtual environment 104.1 typically separate from the virtual assets, and specifically comprises an environmental lighting condition. The environment lighting condition may relate to, for example, illuminations (daytime or nighttime, ambient light, installation of new lighting, or otherwise increases or decreases in lighting), shadows, fog, or the like. Accordingly, system 100 may further comprise receiving via the GUI 114 an environmental command from an end-user corresponding to an environmental lighting condition to be applied to the current virtual environment 104.1.
1001661 In this embodiment, the received environment parameters, which are initially utilised by the graphics engine 102 to render the current virtual environment 104.1, comprise a property layout. The property layout may be based on any one or combination of: a three-dimensional scan of a property (e.g. LiDAR scan or other laser measurements), a three-dimensional architectural plan of a property (e.g. architectural rendering or other computer-aided design drawings), or a two-dimensional architectural plan of a property (e.g. architectural drawing(s) or plans). As mentioned, the property may be an existing property or a planned, designed or imagined one. The property layout may form the basis of the current virtual environment 104.1 (e.g. a scene) in which virtual assets can be inserted and virtual object assemblies can be assembled or built. More specifically, in this embodiment, the graphics engine 102 may utilise the received property layout to construct a three-dimensional mesh structure of the real property, which in turn may form the current virtual environment 104.1. Once the three-dimensional mesh structure is constructed, one or more textures or other filters may be applied to, for example, to walls, floors, roofs, outdoor areas, or the like, to reflect the real property, such textures or filters also forming part of the current virtual environment 104.1, as described.

Date Recue/Date Received 2021-12-30 1001671 In this embodiment, the received environment parameters, which are initially utilised by the graphics engine 102 to render the current virtual environment 104.1, further comprise one or more previously selected virtual assets arranged within the property layout, as readily understood from the present disclosure.
1001681 In this embodiment, as mentioned, the digital asset database 108 comprises a plurality of customisable virtual assets, which virtual assets are addressable and configurable. Each virtual asset is reflective of a real object. In some instances, the virtual assets include virtual asset components reflective of a part of a real object (and typically related to other virtual asset components in the digital asset database 108).
Other virtual assets reflect a real object being designed or imagined. In this case, when a real object is being designed using system 100, the virtual asset may be comprised of selected virtual asset components which have been virtually assembled by a user, thereby designing a virtual asset assembly representative of the real object being designed to be manufactured in reality. Put differently, in this context, the system 100 may be utilised as a three-dimensional object configui-ator. Once the virtual asset assembly is designed in system 100, the data pertaining thereto is easily dispatchable to a manufacturer or otherwise.
1001691 In this embodiment, the remote server 170 is cloud-based. The cloud-based solution of the present disclosure enables an unlimited number of virtual assets (products and product components) to be added to the digital asset database 108.
Furthermore, where those virtual assets reflect real assets offered for sale, many manufacturers, distributors, or other retail vendors (generally referred to as "supplier users") and their wares can be easily registered with system 100 without requiring system 100 reconfiguration or anything of the like. Furthermore, based on the addressability of the system 100, independent supplier users may utilise the system 100 to offer their wares to end-users based on customisable packages of system 100. Such aspects of system 100 may be beneficial where, for example, the cost of retail space is high, thus affording supplier users with an alternative option for showcasing a full range of wares (i.e. product line).
1001701 In this embodiment, since many supplier users can list their wares on system 100, the system 100 may provide end-users with a single platform through which to access Date Recue/Date Received 2021-12-30 the wares of many suppliers, and/or the wares of different suppliers which may in fact be useful or workable together. For example, different complementary virtual assets may be cherry-picked from different supplier users, where such assets would not normally be linked or associated with one another through different web-based supplier platforms (e.g.
two separate supplier websites).
1001711 In this embodiment, as indicated in Figure 1 and mentioned above, the customisable virtual assets comprise furniture assets. The furniture assets may comprise, for example, chairs, couches, loveseats, tables, entertainment stands, beds, bedside tables (end tables), dressers, sideboards, cabinets, cupboards, chests, desks, bookcases, cribs, or the like, without limitation. The digital asset database 108 comprises various asset properties and/or asset parameters for each furniture asset, non-limiting examples of which may include: furniture dimensions, furniture colours, furniture textures, furniture replaceable parts, furniture sockets, furniture costs, furniture reviews, furniture photographs, furniture videos, and the like. Other furniture assets and data associated therewith may be readily conceivable from the present disclosure. Furthermore, system 100 allows users to dynamically interact with the virtual assets within the current virtual environment 104.1, being able to insert, move and configure virtual assets.
1001721 In this embodiment, therefore, the system 100 and specifically the current virtual environment 104.1 can be utilised as a property content inventory with which a user can track property content (especially furniture, in this embodiment), and which is readily extractable. Having a comprehensive content inventory of a property may be beneficial, for example, where design details are to be altered, where insurance is required, or in other scenarios which will be apparent from the present disclosure.
1001731 In this embodiment, the digital application 110 is operative to receive, as input via the GUI 114, person data (or otherwise emergency data, not shown) reflective of one or more persons currently or in future associated with the current virtual environment 104.1, the person data being stored in a user dataset. The person data received is broadly reflective of one or more persons associated with one or more rooms of the real property.
In this embodiment, the person data received is stored in association with the digital Date Recue/Date Received 2021-12-30 property representation (or user library). The person data may comprise the details of persons living, working, attending, or otherwise associated with a building or structure or specific room(s) of same (e.g. bedrooms, offices, manufacturing areas, or the like). For example, the person data for a household may include names of family members, ages of family members, disabilities (if any) of each family member, mobility issues (if any), and bedrooms associated with each family member, such information being relevant in an emergency situation, as described below. In this embodiment, the digital property representation (i.e. including room layout) and the associated person data may be accessible by an authorised third-party in the form of an emergency responder. The person data may thus be useful, for example, in emergency situations where a rapid response by emergency responders is desirable, such as during an evacuation of a house during a fire or after requesting an emergency ambulance to attend to a family member. In some embodiments, the person data may be utilized to provide details of pets, livestock or other animals on the real property. In another embodiment, the digital application 110 may be operative to receive, as input via the GUI 114, property safety data reflective of safety precautions associated with the current virtual environment 104.1, which is stored in the user dataset.
The property safety data may include, for example, hazardous mechanical equipment data, such as the location of oxygen tanks in a property.
1001741 In this embodiment, the digital application 110 is operative to receive, as input via the GUI 114, a purchase request (now shown) relating to one or more customisable virtual assets on the digital asset database 108 representative of corresponding real assets offered for sale. In some instances, the purchase request may relate to a virtual object assembly (such as indicated by 150) based on virtual assets selected by a user and automatically configured by the graphics processor 102. In such instances, system 100 may include a sales transaction module (not shown) stored on the remote server 170 and operable to calculate a sales price for the virtual object assembly. The sales transaction module may be further operable, after receiving the purchase request, to prompt a sales transaction whereby the end-user makes payment for the virtual asset(s) reflecting real good(s). In some embodiments, the sales transaction may be facilitated directly between the end-user and a supplier user, such that the supplier user may manufacture and/or deliver the real good(s) to the user.

Date Recue/Date Received 2021-12-30 1001751 In this embodiment, the digital application 110 is operative to receive, as input via the GUI 114, a property upkeep reminder and a reminder schedule associated therewith (not shown). Both of the property upkeep reminder and the reminder schedule may be directed to one or more activities related to the real property (e.g.
maintenance such cleaning gutters or air ducts, replacing air filters, or the like). In this embodiment, the property upkeep reminder and the reminder schedule received is stored in association with the digital property representation (or user library), specifically in association with the detailed dataset 106. The property upkeep reminder may comprise any text-based reminders related to the property as customized by the user, dispatched via, for example, Short Message Service (SMS), e-mail, pop-up notification, or the like. For example, the property upkeep reminder may comprise a reminder to replace one or more air filters. The reminder schedule may comprise any one or combination of: date, time, repeat options, alarms, or the like, associated with the particular property upkeep reminder.
In continuing the example of the property upkeep reminder comprising a reminder to replace one or more air filters, the reminder schedule may comprise quarterly reminders at 18:00 local time with a pop-up notification.
1001761 In this embodiment, at least part of the current virtual environment 104.1 is accessible by an authorised third-party, comprising any one or more of: a potential property purchaser, a potential property contractor, a potential emergency responder, or a potential insurance provider. In particular, the authorised third-parties are vetted and the current virtual environment 104.1 may be accessible to the vetted third-parties when the digital application 110 receives from the user via the GUI a permission prompt. In response, the digital application 110 may generate, for example, an authorized access link to the current virtual environment 104.1 (which may be read-only or which may permit the third-party to edit the current virtual environment 104.1) or otherwise, provide an exportable format thereof. In other embodiments, the authorised third-party may be friends or family.
1001771 For example, a user may prompt authorized access to be granted to a real estate agent such that the real estate agent may prepare the current virtual environment 104.1 to be viewed by potential property purchasers when the real property enters the property market. In such an example, the digital application 110 may enable the real estate agent to Date Recue/Date Received 2021-12-30 stage the current virtual environment 104.1 by, for example, exchanging one or more existing virtual assets (typically reflecting seller's existing decor) with new virtual assets (typically reflecting decor appealing to a wider group of potential buyers).
Therefore, in some embodiments, system 100 may facilitate virtual staging of properties.
1001781 In another example, a user may prompt authorized access to be granted to one or more potential property purchasers such that the one or more potential property purchasers can view the current virtual environment 104.1 reflective of the real property (but possibly staged with new virtual assets). In such an example, system 100 may receive from the one or more potential property purchasers a redecorating command allowing the one or more potential property purchasers to view the property with, for example, their own furniture or other furniture arranged therein. Furthermore, in some embodiments, system 100 may provide users who are property purchasers with a digital property manual (similar to what is conventionally provided to property purchasers in binder format), having floor layouts, design details, assembly manuals, warranties, receipts, maintenance schedules, paint chips, property certifications, locations of key equipment (e.g. mains water supply), etc. (i.e. property manual data). It is to be appreciated that such digital property manual may be required in respect of commercial properties too, such as office spaces or manufacturing plants, or otherwise in public properties, such as libraries. In another example, a user may prompt authorized access to be granted to one or more potential property lessees, and may further provide access to a lessee together with all relevant property data for the duration of a lease. Therefore, in such embodiments, system 100 may form a software tool for sharing property data between property owners/managers and tenants.
1001791 In another example, a user may prompt authorized access to be granted to one or more potential property contractors such that the one or more potential property contractors can provide quotations on a proposed renovation of the real property, based on the current virtual environment 104.1. Therefore, quotations may be solicited from various property contractors based on a visual desired result, avoiding any potential misinterpretation or misunderstanding. In such an example, system 100 may receive from Date Recue/Date Received 2021-12-30 the one or more potential property contractors a quotation which may be stored in association with the current virtual environment 104.1 (user library) for the user to access.
1001801 In a further example, as mentioned above, a user may prompt authorized access to be granted to one or more emergency responders to facilitate rapid response by the one or more emergency responders in case of an emergency situation. Access to one or more emergency responders may be granted indefinitely, for example, such that no user prompt is required in the case of an emergency.
1001811 In yet a further example, a user may prompt authorized access to be granted to one or more insurance providers such that the one or more insurance providers can provide quotations on property insurance, household goods insurance (where the household content inventory is particularly useful), or the like. In such an example, once a quotation of an insurance provider is accepted, system 100 may receive a prompt from the user to grant the accepted insurance provider access to the current virtual environment 104.1 annually, for example, such that the insurance provider can ensure that annual insurance renewals accurately reflect the true value of the real property and/or real goods (based on the current virtual environment 104.1). Such embodiments may be useful, for example, in reducing the need for a callout or in-person visit by a representative of the insurance provider.
Furthermore, such embodiments may be useful to ensure full coverage of the real property and/or real goods in case of damage or theft, such that a user is not unintentionally left out of pocket. Yet further, such embodiments may be useful where an insurance claim is made, wherein the insurance provider has immediate access to before and/or after representations of the real property.
1001821 It is to be appreciated that, although not specifically shown in this embodiment, but alluded to at various stages, system 100 may include a user-directory or database or library, typically stored on the remote server 170, in which the current virtual environment 104.1 including any inserted virtual assets 108 is stored for each end-user.
1001831 It will be appreciated that other embodiments or alternatives of system 100 are intended to fall well within the scope and nature of the present disclosure.
Some of these embodiments or alternatives are briefly discussed below, without limitation.

Date Recue/Date Received 2021-12-30 1001841 In other embodiments, the graphics engine may be in the form of a local graphics engine located, for example, on the user device, and operable to process, at least partially, the three-dimensional virtual assets and/or the virtual environment. In yet other embodiments, the graphics engine may be in the form of both a local graphics engine and a remote graphics engine (i.e. a combination) which work cooperatively to support system 100. In such embodiments, the local and remote graphics engines may be operable to perform different tasks, or otherwise perform similar tasks in parallel. In the case of the latter, parallel processing of similar data may be beneficial in rapid and/or quality visualization of data.
.. 1001851 In other embodiments, for example, accessing the detailed dataset may comprise accessing detailed mesh data and, sequentially thereafter (i.e. not necessarily in parallel), accessing texture data.
1001861 In other embodiments, the GUI may be provided by execution of one or more machine-executable instructions set by a digital data processor associated with the user device. In such embodiments, the digital data processor is on-board the user device, and thus appropriate processing capabilities of the digital data processor are required.
1001871 In other embodiments, the digital asset database may be accessible by the digital application over a wired computing network, such as over a local-, metropolitan-, or wide-area network. Such embodiments may be encountered, for example, at in-store settings.
1001881 In other embodiments, the environment configuration parameter may comprise an environment layout, such as, moving, removing, inserting, or configuring a virtual wall, or the like.
1001891 In other embodiments, the digital application may be operable to display via the GUI the current virtual environment in accordance with a first-person view mode. Such capabilities may enable end-users to virtually "walk" through a digital property representation where a floorplan or room plan is available, for example. In turn, end-users are able to obtain a sense of traffic flow, which may be particularly relevant, for example, in commercial or public spaces, where high traffic flow is expected.

Date Recue/Date Received 2021-12-30 1001901 With reference to Figure 2, and in accordance with another exemplary embodiment of the present disclosure, a system for digitally configuring a virtual object assembly in a virtual environment, generally referred to using the numeral 200, will now be described.
1001911 System 200 is generally designed to enable non-expert end-users to automatically configure virtual object assemblies, based on virtual assets or components having associations, in an automatic manner, as will be described.
1001921 The system 200 comprises a digital data storage device 202 having stored thereon an asset library 204 comprising a plurality of customisable virtual assets 206.1 and 206.2 (or "virtual assets") each having module data 208.1 and 208.2 associated therewith.
The system 200 further comprises a processor 210 in communication with the digital data storage device 202 and operable to access the asset library 204. The system 200 further comprises a digital application 212 operable on a user device 214 for communicating with the processor 210, the digital application 212 being operable to provide a graphical-user interface (GUI) on the user device 214. The processor 210 is operable to digitally execute machine-executable instructions 218, also stored on the digital data storage device 202, to:
present as user-selectable assets via the GUI 216 at least some of the plurality of customisable virtual assets 206.1 and 206.2; receive as input via the GUI 216 at least one virtual asset selection from the user-selectable assets; and render via the GUI 216 the virtual object assembly comprising the at least one virtual asset selection, wherein the virtual object assembly is automatically configured in the virtual environment based on the module data 208.1 and 208.2 corresponding to the at least one virtual asset selection.
1001931 In this embodiment, the processor 210 further comprises a graphics engine (not specifically shown), which on command, renders the virtual object assembly for display on the GUI 216. The graphics engine may be in the form of a graphics coprocessor.
In such embodiments, this may reduce processing burden on a processor (e.g. CPU) of the user device 214. In other embodiments, the graphics engine may include a graphics card.
1001941 In this embodiment, the module data 208.1 and 208.2 of each virtual asset 206.1 and 206.2 comprises at least one junction identifier (or "junction") having associated Date Recue/Date Received 2021-12-30 therewith at least one complementary junction identifier (or "complementary junctions"), as illustrated in Figure 2. The module data 208.1 and 208.2 is described further below.
1001951 In this embodiment, the system 200 may enable users to select virtual assets, as described below, such that the virtual assets are rendered as such within the virtual environment and can be customised with ease. The system 200 may further enable end-users to interact with the virtual assets by, for example, clicking to select, dragging and dropping to relocate virtual assets within the virtual environment, copy-pasting, deleting, and double-clicking to initiate configuration (as described further below). It is to be appreciated that these user-virtual asset interactions may be straightforward for non-expert end-users and therefore, that other suitable interactions may be readily conceived.
1001961 In this embodiment, the end-user of system 200 is typically a non-expert end-user, wherein a non-expert end-user may be a person without professional or specialised training of three-dimensional object configuration or rendering. Such non-expert end-user may be, for example, an ordinary man or woman who is distinct from a technical digital object rendering expert. Therefore, in some embodiments, the present embodiment may provide the benefit of providing a user-friendly software programme and/or platform which is easy-to-use for non-experts.
1001971 In this embodiment, processor 210 may be operable to receive module data for virtual assets from administrative users (who may be supplier users, in some embodiments) via the GUI 216. In such embodiments, administrative users may be considered expert-users who bear the burden of creating potential object interactions between virtual assets.
In particular, processor 210 may receive from one or more administrative users at least one junction identifier per virtual asset and at least one complementary junction identifier per each junction identifier (although virtual assets not having potential object interactions may include neither). In such embodiments, system 200 assigns some "intelligence"
to virtual assets which informs their object configuration possibilities. Therefore, in some embodiments, system 200 may make object configuration user-friendly for non-expert end-users, in that complex alignment is not requisite for a properly aligned virtual object assembly and alignment occurs automatically based on the module data previously Date Recue/Date Received 2021-12-30 received from one or more administrative users, as will be described further below. In some embodiments, administrative users may comprise retail sellers of assets, such as furniture manufacturers or distributors, or the like. Furthermore, system 200 may provide an administrative interface (not shown) through which administrative users may upload .. new virtual assets, update existing virtual assets or the like. The administrative interface may be further operable to generate work orders and listings, for example, as required by administrative users.
1001981 In this embodiment, each virtual asset 206.1 and 206.2 is associated with its own respective module data 208.1 and 208.2, as shown and as described further below. It is to be appreciated, however, that in other embodiments some virtual assets may not comprise this specific module data (i.e. junctions and complementary junctions), particularly where, for example, a virtual asset cannot be configured with other assets to form an assembly. In some embodiments, therefore, whether or not a virtual asset in the library 204 includes at least one junction identifier may reflect whether or not the corresponding real object can be connected to other real objects. Put differently, in some embodiments, the at least one junction identifier may reflect that the particular object can connect to another object via mechanical parts (e.g. sectional connectors, screws, bolts and nuts, frames, etc.) or otherwise be associated with another object.
1001991 In this embodiment, as exemplified in the module data 208.1 and 208.2 of Figure 2, the at least one junction identifier (or "junction") comprises a junction-type identifier which corresponds to a potential object interaction. Typically, such potential object interaction may be between one virtual asset and another, or as described below, between two or more virtual asset components. Accordingly, in this embodiment, the at least one junction of each virtual asset 206.1 and 206.2 has a specific type or classification which corresponds at least in part to a potential object interaction of that virtual asset (or component) with a complementary virtual asset (or component). In this particular embodiment, the module data 208.1 of virtual asset 206.1 has one junction with the junction-type identifier of "Larm". Junction "Larm", in turn, is a text descriptor of "left arm" which broadly reflects that the virtual asset 206.1 is an arm and that the particular junction is on the left side of that arm. Continuing this particular example, the module data Date Recue/Date Received 2021-12-30 208.2 of virtual asset 206.2 has one junction with the junction-type identifier of "Rseat".
Junction "Rseat", in turn, is a text descriptor of "right seat" which broadly reflects that the virtual asset 206.2 is a seat and that the particular junction is on the right side of that seat.
It is to be appreciated that virtual assets 206.1 and 206.2 may comprise more than one junction, each junction corresponding to potential object interactions with other virtual assets (or virtual asset components). For example, although not shown, module data 208.2 of virtual asset 206.2 may include a second junction with the junction-type identifier of "Lseat", being a text descriptor of "left seat" broadly reflecting that the virtual asset 206.2 is a seat and that the particular junction is on the left side of that seat.
1002001 In this embodiment, as exemplified in the module data 208.1 and 208.2 of Figure 2, the at least one complementary junction identifier (or "complementary junctions") corresponds to at least one junction identifier, as described above, of at least one complementary virtual asset. Therefore, in this embodiment, the at least one complementary junction identifier of at least one junction dictates at least one complementary virtual asset which can be joined to the virtual asset at that particular junction identifier to render, at least in part, the virtual object assembly.
In this particular example, junction "Larm" of module data 208.1 of virtual asset 206.1 has three complementary junctions, with unique junction-type identifiers of "Rseat", "Rarm", and "Rcorner". These text descriptors thus broadly reflect the various complementary virtual assets which can be configured to that particular junction "Larm". Continuing this particular example, junction "Rseat" of module data 208.2 of virtual asset 206.2 also has three complementary junctions, with unique junction-type identifiers of "Lcorner", "Lseat", and "Larm". These text descriptors thus broadly reflect the various complementary virtual assets which can be configured to that particular junction "Rseat".
It is to be appreciated that junctions may be associated with more or less than three complementary junctions, dependent on the potential object interactions available for that virtual asset at that particular junction.
1002011 In this embodiment, the virtual object assembly 250 is automatically configured based on an association (match or otherwise) between the at least one junction identifier on a first virtual asset and the at least one complementary junction identifier on a second Date Recue/Date Received 2021-12-30 virtual asset or vice versa. Put differently, in this embodiment, the virtual object assembly 250 is automatically configured based on an association between at least one complementary junction identifier on a virtual asset and at least one junction identifier of a complementary virtual asset. Continuing the exemplary embodiment, therefore, the system 200 facilitates automatic configuration of the virtual object assembly 250, which, in this case is an armchair, by identifying that a match between the complementary junction "Larm" of module data 208.2 of virtual asset 206.2, which is a seat, and the junction "Larm" of module data 208.1 of virtual asset 206.1, which is an arm. Based on this association (a match, in this embodiment), the armchair virtual object assembly 250 is automatically configured, which involves bringing together the virtual assets of the arm virtual asset 206.1 and the seat virtual asset 206.2 in the virtual environment. In particular, this automatic configuration is automatic, requiring no input from the end-user besides selected the virtual asset components.
1002021 In some embodiments, therefore, the system 200 may assist in the configuration .. of virtual assets into assemblies. In particular, the system 200 may configure the virtual assets automatically such that manual configuration by a user is not required.
This automatic configuration may be facilitated by the at least one junction identifier and its associated at least one complementary junction identifier, as described, which describes a potential interaction between virtual assets. This potential interaction may be removably "secured" (or stable, as least semi-permanent) when the virtual assets are rendered, such that the virtual assets form an assembly (i.e. single assembled object - not separate assets requiring separate editing), thus reducing separate editing required. In some embodiments, the potential interaction may be useful where, for example, one virtual asset is moved within a virtual environment. The system 200 will thus recognise, for example, that the moved virtual asset has a junction identifier which is available, that a junction identifier associated with another virtual asset which matches the complementary junction identifier of the first virtual asset is also available, and thus align (or configure) the other virtual asset with the moved virtual asset automatically (i.e. without user direction to do so). This may be iterated for all of the complementary virtual assets in the virtual environment. The potential interaction may, however, be removable such that virtual assets can be interchanged or deleted at the discretion of a user, as described below.

Date Recue/Date Received 2021-12-30 1002031 Furthermore, system 200 may present the further advantage of being applicable to an unlimited number of virtual assets (i.e. product parts). The so-called "socket" system, comprised at least in part of the at least junction identifier and its associated at least one complementary junction identifier on each virtual asset, may be a simple identifier-based configuration method which may present the benefit of requiring limited additional storage or memory to set up potential object interactions, allowing large amounts of virtual assets to be made available to users through the system 200.
1002041 In this embodiment, the module data 208.1 and 208.2 further comprises a positioning rule with which each at least one junction identifier ("Rseat" or "Larm") is associated. In Figure 2, for example, the positioning rule is generally indicated by reference numerals 208.1.1 and 208.2.1. In this embodiment, the positioning rule dictates at which position on the rendered virtual asset the complementary virtual asset having an associated (in this case, matched) at least one junction identifier can be joined.
Accordingly, the positioning rule may form part of automatically configuring the virtual object assembly 250. In particular, the positioning rule may be useful in configuring the virtual object assembly 250 with the virtual assets accurately aligned and/or orientated with reference to one another, particularly without end-user input.
1002051 In some embodiments, as alluded to above, a junction, its positioning rule and the at least one complementary junction may be collectively referred to as a "socket".
Accordingly, a virtual asset may have multiple sockets at spaced apart positions with which complementary sockets of complementary virtual assets can be associated. Upon rendering, associated sockets will configure or align such that the virtual assets assemble a virtual object assembly. This configuring may be stable until such time as one or both of the sockets on the virtual assets are altered.
1002061 In this embodiment, although not specifically shown, the at least one junction identifier (or "junction") further comprises an association status. In particular, each junction may comprise as association status which reflects whether or not the junction is available to be associated with other virtual assets at that junction (or whether it is already associated and thus, unavailable). In this embodiment, the association status is not a Date Recue/Date Received 2021-12-30 physical "component" or "feature" of the system 200 necessarily, but rather reflects the availability of the junction. In other embodiments, the association status may be a physical status of a junction which is variable or interchangeable between an available state, when no complementary virtual asset is associated therewith, and an unavailable state, when a complementary virtual asset is associated therewith.
1002071 In this embodiment, the processor 210 is further operable to digitally execute machine-executable instructions, prior to presenting the user-selectable assets, to: identify at least one virtual asset on the virtual environment having at least one junction which is available; and identify one or more complementary virtual assets having a junction identifier associated with the at least one junction which is available, such that only those one or more complementary virtual assets are presented as user-selectable assets. In some embodiments, therefore, the system 200 may reduce the number of virtual assets to be retrieved from the asset library 204 by retrieving only the virtual assets having junction identifiers (i.e. descriptors) matching the at least one complementary junction identifier (i.e. descriptors) on the first object (or based on assets already in the virtual environment).
These virtual assets may be presented via the digital application as an asset catalogue. In turn, in some embodiments, the system 200 may facilitate three-dimensional object configuration with limited data storage. This may be particularly useful, for example, where the GUI, application programming interface (API) or other digital application is to be run through a web browser having memory limitations. Furthermore, in some embodiments, by presenting as user-selectable assets only those virtual assets associated with a particular selected virtual asset (and specifically, with a junction available), system 200 may guide the user in object configuration where a specific order of virtual assets is known (or at least, generally predictable). For example, where a user selects a couch seat, system 200 may identify, based on the (available) junctions of the couch seat, that any of:
left arms, right arms, left seats, right seats, or corner seats, for example, can be configured with the couch seat and so system 200 may present only those virtual assets corresponding to those assets to the user to select further. This may avoid, for example, a user configuring an object assembly having incompatible parts (especially where the corresponding real assets are incompatible).

Date Recue/Date Received 2021-12-30 1002081 In this embodiment, identifying an association between virtual assets in order to automatically configure the virtual object assembly 250 may thus include the processor 210 digitally executing machine-executable instructions to determine which junctions of virtual assets are available for object interactions. In some embodiments, identifying an .. association between virtual assets in order to automatically configure the virtual object assembly 250 may be prompted by the end-user, for example, by double-clicking a particular virtual asset (or component) to be configured.
1002091 In this embodiment, as the processor 210 receives virtual asset selections from the end-user, the processor 210 may be operable to digitally execute machine-executable instructions, in response to direction from the digital application 212, to store the virtual assets corresponding to the virtual asset selections, or otherwise the virtual object assembly, in a digital representation database (or "user library") 220. Therefore, the digital representation database 220 may store the selected virtual assets which, in turn, comprise module data reflecting junctions and associated complementary junctions (i.e.
object interactions), such that when the virtual assets are recalled or retrieved from the digital representation database 220 to be rendered in the virtual environment in subsequent sessions, for example, the virtual object assemblies can be automatically configured based on the module data of the virtual assets (and virtual assets not associated with other virtual assets can be rendered based on the module data relating to position and orientation, for example). In this embodiment, the digital representation database 220 forms a "user profile", and is specifically a low-dependency digital representation database. In this embodiment, the processor 210 is further operable to digitally execute machine-executable instructions to download and store a simplified dataset of the virtual environment locally on the user device 214 and a detailed dataset of the virtual environment remotely on a remote data storage device 202 in the digital representation database 220, each dataset being independently accessible by the processor 210, described further below.
1002101 In this embodiment, the processor 210 is further operable to digitally execute machine-executable instructions to receive via the GUI 216 at least one module deletion command associated with deletion of a virtual asset from the virtual environment. In response to receipt of at least one module deletion command, the processor 210 may be Date Recue/Date Received 2021-12-30 operable to delete the respective one or more virtual assets from the digital property representation, including from the user device 214 and the digital representation database 220 or user profile. In this embodiment, if the at least one module deletion command relates to the deletion of one or more virtual assets forming part of a virtual object assembly 250, the processor 210 is further operable to digitally execute machine-executable instructions to, upon receiving the at least one module deletion command, reconfigure the virtual object assembly 250 based on remaining virtual assets and available junction identifiers. Such reconfiguring may be useful where, for example, a middle seat virtual asset component of a three-seat couch (i.e. having three virtual asset components) is deleted, where the right seat virtual asset component and left seat virtual asset component can be reconfigured to form a loveseat. Similarly, various embodiments enable an end-user to insert virtual assets or components in accordance with junction identifiers or rules associated therewith. For instance, and in continuing the abovementioned example, the end-user may select a junction (or socket) between two seat components of a loveseat for reconfiguration, wherein a third seat component may be inserted and automatically configured in accordance with the junction identifiers associated with the inserted component and the current seat components of the virtual environment, without requiring further user interaction (e.g. precise placement or movement of the various components within the virtual environment). Along the same lines, the single-seat chair of Figure 2 may be configured as a loveseat through selection of the junction corresponding to the positioning rules represented with reference numerals 208.1.1 and 208.2.1, whereby the end-user may be presented with the option to insert selectable seat components having junction identifiers complementary with the available junction(s) in the virtual environment as defined by module data 208.1 and 208.2.
1002111 It will be appreciated that, as described above, the characterisation of virtual assets and/or virtual asset components using junction data (e.g. junction identifiers, complementary junctions, positioning rules, and/or the like) may provide several advantages over conventional digital assembly platforms, which typically require the manual positioning of components (which can be challenging and time-consuming, particularly for inexperienced or non-technical users), and may inundate the end-user with an overabundance of configuration options, not all of which may be applicable or suitable Date Recue/Date Received 2021-12-30 for configuring particular assets. Various embodiments herein described, however, allow not only for the automatic configuration of virtual assets using junction data, but the provision of configuration options in a manner that is intuitive and user-friendly. For example, in providing an end-user options for configuring a virtual couch already having defined a left arm component and a seat component, the system 200 may automatically identify that the only 'available' junction is one that corresponds to the right side of a seat component (e.g. since the junction between the left side of the seat and the right side of the left arm is 'saturated' through mutual coupling of the existing virtual asset components).
The system 200 may therefore present for user selection only those virtual asset components characterised by a junction compatible or complementary with the 'available' junction on the right side of the seat component (e.g. a right arm, an additional seat component, or the like). Thus, selection of virtual asset components for an virtual object assembly is facilitated for the end-user.
1002121 In this embodiment, each virtual asset in the plurality of customisable virtual assets is a three-dimensional asset. In particular, each virtual asset comprises mesh data and texture data which are independently accessible for rendering by the processor 210.
The mesh data provides a renderable mapped mesh object structure which can be rendered in the virtual environment. The mesh data, in some embodiments, may further be divided into simplified mesh data and detailed mesh data, which again may be independently .. accessible for rendering by the processor 210. The texture data provides one or more textures which can be rendered, specifically onto the mapped mesh structure (typically the detailed mesh data). The plurality of customisable virtual assets is renderable with any one of: virtual reality, augmented reality, or mixed reality. In this particular embodiment, an end-user can select whether to render the virtual assets with virtual reality, or augmented reality. In some embodiments, as described below, mesh data and texture data may be independently downloadable and/or renderable in the virtual environment.
1002131 In this particular embodiment, when processor 210 renders the virtual object assembly via the GUI, the processor 210 sequentially renders the virtual object assembly based on mesh data and thereafter texture data. This sequential rendering by the processor 210 based on independently accessible data allows for immediate visualisation of the Date Recue/Date Received 2021-12-30 virtual object assembly, based on the mesh data, which visualisation is later improved with the addition of the texture data. It is to be appreciated, however, that although rendering is computationally sequential (although not necessarily visible to end-users), processing or download may be in parallel (with the larger texture data unavoidably taking longer to process and/or download).
1002141 In this embodiment, therefore, the structure of the system 200 and/or the sequential rendering by the processor 210 may facilitate visualisation of virtual assets and virtual object assemblies in real-time, including specifically lists of user-selectable virtual assets (in addition to virtual object assemblies). In particular, when a user accesses the digital application 212, system 200 may retrieve the virtual environment 220 and/or user-selectable virtual assets from the plurality of customisable virtual assets in the database 204 in a step-wise format. For example, processor 210 may initially render a low-resolution representation of the virtual environment 220 and/or the user-selectable virtual assets based on simplified mesh data of the virtual assets stored locally whilst detailed mesh data is downloaded (from a remote storage), whereafter processor 210 may render detailed mesh data whilst texture data is downloaded (from the remote storage), whereafter processor 210 may render both the detailed mesh data and texture data to provide high-resolution representations of the virtual environment 220 and/or the user-selectable virtual assets. The combination of local storage and remote storage, together with independently downloadable and/or renderable detailed mesh data and texture data, may together facilitate rapid visualisation of the virtual environment (in some embodiments, in real-time) and/or the user-selectable virtual assets.
1002151 In this embodiment, the virtual environment comprises a digital property representation. Such digital property representation may be of a real property or structure, or otherwise of a planned, designed or imagined property or structure. As described with reference to other aspects of this disclosure, the digital property representation may include buildings, outdoor environments, or the like, particularly where virtual assets can be in some way associated with one another and configured to form an assembly therein.

Date Recue/Date Received 2021-12-30 1002161 In this embodiment, the plurality of customisable virtual assets is representative of real assets. Specifically, the plurality of customisable virtual assets comprises a plurality of furniture assets and furniture asset components (which can be assembled as described herein). In turn, the virtual object assembly comprises a virtual furniture assembly having different virtual asset components corresponding to real, interchangeable, furniture parts.
Therefore, it may be that the at least one junction identifier corresponds to a potential real junction between the interchangeable furniture parts (sometimes reflecting positioning of hardware to connect these parts).
1002171 In this embodiment, although not specifically shown, the module data which is associated with each virtual asset further comprises any one or more of: name (e.g. "elite couch" or "elite couch left seat"), sprite (e.g. two-dimensional graphical image illustrating three-dimensional virtual asset, thumbnail), unique identifier (e.g. product code), material (e.g. wood, leather, steel, etc.), model, price (e.g. sales price, manufacture price, transport/delivery price, or the like), receipt information (e.g. store receipts, electronic receipts), assembly information (e.g. product assembly manual), certification information (e.g. safety certifications), safety information (e.g. maximum temperature threshold), warranty information, and maintenance information. In this embodiment, the virtual assets are again rendered photo-realistically.
1002181 In this embodiment, system 200 further comprises an e-commerce module which enables users to purchase goods, specifically the real goods reflected by the virtual assets. Where users have customised virtual assets into virtual object assemblies, the e-commerce module 320 may be operable to determine a price for a configured virtual object assembly. Determining a price for a configured virtual object assembly may include, for example, addition of any one or more of: prices associated with each virtual asset (i.e.
furniture parts), costs associated with hardware to join furniture parts, handling fees (i.e. a percentage or a fixed rate), delivery fees, and/or applicable taxes, as applicable. Where specific materials or finishes have different costs, for example, such differing costs may be accounted for by the e-commerce module 220 when determining a price for a configured virtual object assembly. In turn, the e-commerce module 220 may facilitate any sales Date Recue/Date Received 2021-12-30 transactions between end-users and supplier users, related to the goods and/or object assemblies.
1002191 In this embodiment, system 200 is web-accessible such that a user can access the virtual environment from any user device having an Internet connection.
Such web-accessibility may be advantageous, for example, where an end-user is in-store and wishes to digitally visualise (i.e. "test") a real object, such as a couch, in a particular room of their home. The photorealism of the virtual assets may provide to the end-user a more realistic representation of the object in the room. It may also allow in-store assistants to view a digital representation of the end-user's home, so that they may suggest alternative goods personally-suited to the design style of the home. More specifically, in this example, system 200 is Web Graphics Library (WebGL) based, with the performance and storage issues associated with CGI overcome as described herein.
1002201 In some embodiments, therefore, system 200 may facilitate real-time configuration of virtual assets based on the module data. Furthermore, system may facilitate real-time interchanging of one or more assets in object assemblies such that an end-user need not reconfigure the object assembly based on modifications made.

Therefore, in this embodiment, system 200 is suited for use as an interactive virtual asset customisation and visualisation tool for end-users, wherein the virtual assets are representative of interactable real assets, and wherein previously inputted object data facilitates the automated use thereof, together with the structure of system enable rapid and high-resolution visualisation of the configured object assemblies.
1002211 It will be appreciated that other embodiments or alternatives of system 200 are intended to fall well within the scope and nature of the present disclosure.
Some of these embodiments or alternatives are briefly discussed below, without limitation.
1002221 In other embodiments, the at least one junction identifier and the at least one complementary junction identifier may be selected from any one or a combination of: a text descriptor, a numeric descriptor, an alphanumeric descriptor, or the like, provided only that the format of these identifiers is such that appropriate associations between them can be determined. In one embodiment, the at least one complementary junction identifier of Date Recue/Date Received 2021-12-30 a first virtual asset must match the at least one junction identifier of a second virtual asset, such that system can automatically recognize the possibility of an object interaction between these two virtual assets when the respective junction identifiers are available. In other embodiments, a strict match is not requisite but some other association should be determinable.
1002231 In other embodiments, the positioning rule may further comprise any one or more of: a scale, a position, an orientation, a rotation, or the like, of a rendered virtual asset within the virtual environment.
1002241 In other embodiments, the system may further comprise identifying a virtual asset proximate to a selected virtual asset prior to assessing the availability of the at least one junction of proximate virtual asset(s) to automatically configure same with the selected virtual asset. Such identifying a virtual asset proximate may be useful, for example, in automatically configuring virtual assets on a scene comprised of a large number of virtual assets already present within a digital property representation.
1002251 In other embodiments, system may further comprise a remote customer service module. The remote customer service module may be operable, for example, to connect users with one or more remote customer services representatives. In some embodiments, the remote customer service module may be presented via the GUI in the form of an avatar with live messaging capabilities. In one embodiment, the live messaging capabilities may be in the form of live messaging by the one or more remote customer services representatives. In other embodiments, the live messaging capabilities may be in the form of automated messaging based on predefined questions and answers.
1002261 With reference to Figure 3, and in accordance with a further exemplary embodiment of the present disclosure, a method for providing a customisable virtual environment renderable via a digital application associated with a user device, generally referred to using the numeral 300, will now be described.
1002271 Method 300 commences at reference numeral 302. In this exemplary embodiment, method 300 comprises: at 304, rendering via the digital application a current Date Recue/Date Received 2021-12-30 virtual environment on the user device; at 306, receiving, as input from the digital application, updated environment parameters comprising at least an asset parameter corresponding to a selected virtual asset of a plurality of virtual assets stored in a digital asset database and representative of corresponding real assets; at 308, accessing the selected virtual asset in the digital asset database; at 310, using a graphics engine, configuring an updated virtual environment in accordance with the selected virtual asset and the updated environment parameters; and at 312, transmitting a signal representative of the updated virtual environment to the user device so as to render via the digital application the updated virtual environment as the current virtual environment.
1002281 At 304, as noted, method 300 comprises rendering via the digital application a current virtual environment on the user device. In this embodiment, the current virtual environment which is rendered is stored on the user device. Rendering the current virtual environment includes rendering a digital property representation of a real property (i.e.
walls, floors, scene or the like), as well as previously inserted virtual assets (i.e. furniture assets) within the digital property representation. In this embodiment, at least some of the virtual assets stored on the user device have module data associated therewith, wherein such module data comprises at least one junction identifier having associated therewith at least one complementary junction identifier (collectively referred to as "sockets"). In this embodiment, a junction identifier on a virtual asset reflects of a potential real junction between real assets. In particular, the junction identifier reflects that the particular virtual asset can be configured with one or more other virtual assets. In turn, the at least one complementary junction identifier reflects the one or more other virtual assets with which the particular virtual asset can be configured. Some virtual assets (or virtual asset components) have a plurality of junction identifiers associated therewith, and in turn, each junction identifier has a plurality of complementary junction identifiers associated therewith (typically related), so that the virtual asset can be virtually connected (or otherwise associated with) many other virtual assets, at different positions.
Accordingly, different junction identifiers of a single virtual asset may be located at different positions, such as different sides of an object.

Date Recue/Date Received 2021-12-30 1002291 At 304, the rendering is performed by a processor running an image rendering software such as, for example, UnityTM. Any suitable software may be workable, provided that it is capable of rendering high-resolution images with ray-tracing physics, and having view rotation capabilities. Where the virtual assets or virtual asset components comprise sockets reflective of potential object interactions, rendering at 304 includes automatically configuring those virtual assets or virtual asset components as virtual object assemblies to render the current virtual environment. The current virtual environment which is rendered is therefore based on previously inputted data from an end-user or, where an end-user is utilising the method 300 on a first occasion, the current virtual environment may comprise a blank scene on which the end-user can build a current virtual environment.
1002301 At 306, as noted, method 300 comprises receiving, as input from the digital application, updated environment parameters comprising at least an asset parameter corresponding to a selected virtual asset of a plurality of virtual assets stored in a digital asset database and representative of corresponding real assets. In this embodiment, digital asset database is stored on a remote server, remote to the user device. In this embodiment, the asset parameter received as input comprises a selected virtual asset component having associated therewith a junction identifier representative of a potential virtual asset configuration, specifically with another virtual asset component in the virtual environment.
Put differently, the updated environment parameters comprise at least a selected virtual asset which is to be configured with one or more other assets. This is inputted by the end-user "selecting" or "double-clicking" this virtual asset via the digital application in this embodiment. In turn, the "double-click" input (i.e. as the updated environment parameter) is received via a network. Notably, although not specifically included in this example, the method 300 may include the prior step of displaying via the GUI an asset catalogue comprising of selectable virtual assets (otherwise referred to as a product catalogue), wherein the end-user is directed to selected one or more thereof as the inputted updated environment parameters.
1002311 At 308, as noted, the method 300 comprises accessing the selected virtual asset in the digital asset database after receiving the updated environmental parameters as input.
In this embodiment, accessing the selected virtual asset comprises accessing one or more Date Recue/Date Received 2021-12-30 specific asset datasets corresponding to the asset parameter. In particular, in this embodiment, where data related to the selected virtual asset is comprised of simplified and detailed datasets, method 300 at 308 accesses both datasets simultaneously.
Where data is separated into datatypes, such as mesh and texture data, method 300 at 308 accesses both datatypes simultaneously. In this embodiment, accessing the selected virtual asset comprises downloading the selected virtual asset to the user device.
1002321 At 310, as noted, the method 300 comprises, using a graphics engine, configuring an updated virtual environment in accordance with the selected virtual asset and the updated environment parameters. In this embodiment, configuring the updated virtual environment comprises automatically configuring the selected virtual asset in accordance with the potential virtual asset configuration based on the associated or related module data of virtual assets. More specifically, at 310, configuring an updated virtual environment comprises configuring said updated virtual environment in accordance with a photorealistic rendering process which renders ray-traced displays.
1002331 More specifically, in this embodiment, at 310, the selected virtual asset is automatically configured with one or more existing virtual assets within the virtual environment to configure a virtual object assembly. By configuring the selected virtual asset with one or more existing virtual assets, a virtual object assembly may be created.
Accordingly, the virtual object assembly is comprised of two or more three-dimensional virtual assets which are in some manner associated (in this embodiment, via module data) to form a single assembly. Various benefits may arise from creating a single object assembly, as will be understood from the present disclosure. It is to be appreciated, however, that the virtual object assembly may be stored, in some embodiments as described above, as separate virtual assets (or virtual asset components) in the digital asset database, provided the association between them (i.e. to form the assembly) is stored with each virtual asset and remains there until specifically removed by the end-user.
1002341 At 310, therefore, automatically configuring the virtual object assembly comprises matching at least one complementary junction associated with the at least one junction identifier of the selected virtual asset with at least one junction identifier of a Date Recue/Date Received 2021-12-30 complementary three-dimensional virtual asset (which may already be in the scene and/or selected). Of course, in embodiments where a particular virtual asset contains no at least one junction identifier, or in embodiments where a particular virtual asset contains a blank at least one junction identifier, or otherwise in embodiments where the at least one junction identifier is present on a virtual asset but the at least one complementary junction identifier is blank or non-existent, method 300 may not include automatically configuring 310 the virtual object assembly.
1002351 At 312, as noted, method 300 comprises transmitting a signal representative of the updated virtual environment to the user device so as to render via the digital application the updated virtual environment as the current virtual environment.
Transmitting a signal representative of the updated virtual environment to the user device so as to render via the digital application the updated virtual environment as the current virtual environment comprises transmitting the signal over a network. In particular, the signal is transmitted over the Internet to the user device. Furthermore, in this embodiment, in addition to the aforementioned data, each virtual asset further comprises mesh data (i.e.
providing an object structure to the corresponding digital object) and texture data (i.e.
providing one or more textures to be applied to the object structure), and transmitting a signal comprises transmitting signals representative of different data. In some embodiments, there may be a low dependency between mesh data and texture data, such that mesh data and texture data can be independently downloaded and/or accessed for rendering.
1002361 At 312, method 300 comprises storing (via the digital application) the digital property representation, including both the digital three-dimensional replica and the inserted three-dimensional virtual assets, in a renderable format on the digital data storage device. In this particular embodiment, the digital property representation is stored in two-part format. More specifically, the digital property representation comprises a simplified digital property representation (or "dummy model") which is locally stored on a user device and a detailed digital property representation (or a comprehensive user library) which is remotely stored on a digital representation storage facility (or remote server). The simplified digital property representation may therefore include only a basic data requiring minimal storage, whereas the detailed digital property representation may include all Date Recue/Date Received 2021-12-30 details of the digital property representation requiring greater storage capacity. In some embodiments, the simplified digital property representation may comprise simplified mesh data and the detailed digital property representation may include detailed mesh data and texture data. In some embodiments, the remotely stored data of the detailed digital property representation may be stored on a cloud-storage location (i.e. forming a robust cloud inventory of the real property). With reference to the virtual assets, having simplified or "dummy" virtual assets stored locally may be useful, for example, when a user renders the virtual assets as virtual assets on the virtual environment. In particular, the simplified or "dummy" virtual assets may facilitate immediate visualization of the rendered virtual asset based on simplified mesh data, which may be replaced with a version from the remote detailed digital property representation within seconds as downloaded from the remote digital representation storage facility based on detailed mesh data and texture data. In some embodiments, the immediate rendering based on local storage may have a low resolution which is replaced with a high(er) resolution rendering once downloaded from remote storage. This may also be useful where the end-user has limited Internet connectivity.
1002371 In this embodiment, storing the digital property representation at 312 comprises automatically storing (i.e. saving) the digital property representation at frequent predetermined intervals. Such automatic storing may be beneficial in that, for example, it removes the need for users to save the digital property representation and/or any configured object assemblies. Method 300 may be automatically prompted to automatically store the digital property representation upon receiving user-inputs directed to any one or more of:
virtual asset repositioning or reorientation, object assembly changes, lighting changes or the like. Put differently, actions of the users in the digital application may prompt automatic storing by method 300 at 312 such that the updated virtual environment is saved for future sessions.
1002381 Whenever any changes or improvements or the like are made to the virtual environment, which are stored at 312, method 300 returns to 304 to render the current virtual environment once again. For example, if one or more virtual assets were deleted, or if a new virtual asset was inserted, or if a virtual asset was exchanged for another, method 300 at 304 automatically configures (or reconfigures) the virtual assets in the virtual Date Recue/Date Received 2021-12-30 environment based on such changes. This feedback-back of sorts may ensure that automatic configuration of virtual asset assemblies are maintained regardless of user-initiated changes to the virtual environment. In particular, the method 300 in this embodiment is executed in real-time such that the end-user views the automatic configuration of virtual asset assemblies seamlessly via the GUI.
1002391 Therefore, in some embodiments, method 300 further comprises at 306 (receiving, as input from the digital application, updated environment parameters) receiving as input via the GUI any one of: a redecorating command, a staging command, or a property improvement command. In response thereto, method 300 will sequentially proceed to 308 to accessing the virtual asset(s) in the digital asset database relevant to the command received, to 310 to configure the updated virtual environment, and to 312, as noted, method 300 comprises transmitting a signal representative of the updated virtual environment to the user device so as to render via the digital application the updated virtual environment as the current virtual environment.
1002401 In some embodiments, for example, the staging command may be received from a realtor user, for example, wherein the realtor user stages the digital property representation prior to the real property going on the property market for sale. In some embodiments, the staging command may comprise a command to remove all virtual assets from the digital property representation, reflective of removing furniture and decor items, such that potential buyers are provided with a "blank canvas" and may insert their own virtual assets into the digital property representation. In other embodiments, the staging command may comprise replacing one or more virtual assets with other virtual assets. In some embodiments, method 300 may receive from a realtor-user a list of staging assets which can be employed in one or more digital property representations for staging, for example (which may, for example, reflect real assets which the realtor-users may own). In embodiments where a staging command is received, method 300 may further comprise receiving as input via the GUI a capture command to capture a two-dimensional graphic representation of one or more rooms of the digital property representation, in response to which method 300 comprises capturing and storing the two-dimensional graphic representation (not shown). Otherwise, in such embodiments, method 300 may further Date Recue/Date Received 2021-12-30 comprise receiving as input via the GUI a video-capture command to capture a video representation of one or more rooms of the digital property representation, in response to which method 300 comprises generating and storing the digital video representation (not shown). Such two-dimensional graphic representations and/or video representations may provide high quality advertising material for a property before market entry, for example.
Furthermore, such capabilities may forego the need to publish conventional photographs or videos of properties, which can be a security risk with certain properties.
1002411 In some embodiments, the property improvement command may be received from a contractor user, for example, to be applied to the digital property representation, the property improvement command being associated with any one of: a wheelchair-friendly improvement, a handicap-friendly improvement, a reduced-motility improvement, a baby-friendly improvement, a toddler-friendly improvement, and an old age friendly improvement. In such embodiments, method 300 may further comprise receiving as input via the GUI a dispatch command to dispatch the improved property to an authority for approval, in response to which method 300 comprises dispatching the improved property to the relevant authority (not shown).
1002421 Method 300, in this embodiment, ends at reference numeral 314.
1002431 In other embodiments of method 300, the updated environment parameters further comprise an environment configuration parameter, and configuring an updated virtual environment comprises configuring said updated virtual environment in accordance with said environment configuration parameter.
1002441 In other embodiments of method 300, a further step comprised of updating the current virtual environment in real time in accordance with a minimally memory-intensive representation of the selected virtual asset may be provided. In such embodiments, for example, the minimally memory-intensive representation may comprise mesh data and the current virtual environment may be updated based thereon until such time as texture data is downloaded and/or rendered for display.

Date Recue/Date Received 2021-12-30 1002451 In other embodiments of method 300, particularly wherein the graphics engine forms part of the user device, the method may exclude the step of transmitting a signal to the user device. In such embodiments, a signal may be transmitted, for example, from an internal graphics processor of the user device to a display module of the user device.
1002461 Turning now to Figures 4 to 10, these figures show screenshots taken from an exemplary digital application running in accordance with an exemplary system 100 for providing interactive customisation and visualisation of a virtual environment. These screenshots are included for exemplary purposes of at least some of the features of system 100, particularly from an end-user perspective.
1002471 Figures 4A and 4B illustrate one embodiment of changing a paint colour as applied to a wall virtual asset in a virtual environment. The wall virtual asset remains a separate virtual asset in the virtual environment. When an end-user selects the wall virtual asset, as shown in Figure 4A, the wall virtual asset is highlighted and selectable options display on the GUI (shown in a banner). In this example, the selectable options include different paint colours available for wall virtual assets. The wall virtual asset may have an identifier through which system 100 recognizes that paint colours are complementary thereto and thus are to be presented as selectable options. Generic paint colours may be displayed, favourited paint colours may be displayed, or otherwise different paint colours offered by various supplier users may be displayed. If a paint colour is selected, the paint colour is automatically applied to the whole of the wall virtual asset in display (in some embodiments, application to only a portion thereof may be preferred). As such, in some embodiments, the end-user is able to test various paint colours on wall with ease, including different paint colours on different walls.
1002481 Figures 5A and 5B illustrate one embodiment of changing a finish as applied to a floor virtual asset in the virtual environment. The floor virtual asset remains a separate virtual asset in the virtual environment and may be defined as including multiple rooms or single rooms, as the discretion of the end-user. When an end-user selects the floor virtual asset, such as selecting a living area as shown in Figure 5A, the floor virtual asset is highlighted and selectable options relevant to flooring are displayed on the GUI. In this Date Recue/Date Received 2021-12-30 example, the selectable options include different flooring finishes (e.g.
wood, tile, laminate, or the like). The floor virtual asset may have an identifier through which system 100 recognizes that flooring finishes are complementary thereto and thus are to be presented as selectable options. If a flooring finish is selected, the flooring finish of the selected floor virtual asset is automatically applied. In turn, based on the selected floor finish, system 100 displays selectable variations of the selected floor finish. In Figure 5B, since a laminate flooring was selected by the end-user, system 100 further displays as selectable different colours and/or grains of laminate flooring via the GUI in the banner. As such, in some embodiments, the end-user is able to test various flooring finishes with ease, including different flooring colours, grains or the like. The end-user can also test different flooring in different rooms or areas, as desired.
1002491 Figures 6A to 6C illustrate one embodiment of moving a wall virtual asset in the virtual environment. In Figure 6A, the wall virtual asset is selected by the end-user, highlighting it and displaying selectable options (e.g. including paint colour options). In this example, the end-user drags the wall virtual asset outwards from the remainder of the virtual environment, as shown in Figure 6B. Recognising that the wall virtual asset has been moved and/or that its junctions (via junction identifiers) are now available (or no longer saturated), this being the updated environment parameters in this example, system 100 automatically configures the virtual environment in accordance therewith.
In particular, system 100 may recognise that the junctions of the other extending wall assets are also available, and can be joined to the moved wall virtual asset. System 100 thus automatically configures the virtual environment based on the updated environment parameters such that the various walls are reconfigured, as shown in Figure 6C, without the end-user having to manually edit or reconfigure the other extending wall assets.
1002501 Figures 7A to 7D illustrate embodiments of moving a window virtual asset (Figures 7A to 7C) and a door virtual asset (Figure 7D), respectively, in the virtual environment and the automatic configuration of the virtual environment in accordance therewith. In these two examples of moving virtual assets, the end-user selects the relevant asset and drags it to its new position within the wall virtual asset(s). As such, this action provides the updated environment parameters and system 100 automatically configures the Date Recue/Date Received 2021-12-30 virtual environment in response, by both moving the drag-and-dropped virtual asset (window or door) and updating the wall virtual asset associated therewith. In the case of moving the window virtual asset, as observable by a comparison of Figures 7A
and 7C, this automatic configuring includes any configuration required "outside" the building, in other words related to the landscaping or what would be observable through the window virtual asset based on the virtual environment created by the end-user.
Accordingly, in some embodiments, moving features such as windows and doors, can be performed with relative ease by the end-user, with immediately observable results reflective of real results.
1002511 Figures 8A to 8H illustrate one embodiment of the automatic configuration of a couch virtual asset assembly based on different end-user inputs. Although these screenshots are taken from within the digital application of the system 100 of Figures 4 to 7, it is to be appreciated that these screenshots also reflect a typical system 200 for digitally configuring a virtual object assembly in a virtual environment.
1002521 In Figure 8A, the end-user has inserted a couch virtual asset having three seats in the virtual environment, as selected from an asset catalogue (not shown).
As mentioned above, the couch virtual asset is a three-dimensional model of a real couch, and such virtual assets may be designed for any real objects which can be measured and/or photographed.
The couch virtual asset is selected and is highlighted in Figure 8A. In Figure 8B, the end-user selects a junction between two seat components of the couch virtual asset, as indicated with the arrow. This action separates the two seat components, as shown, such that the end-user is notified of where the junction selection was made. Upon selecting the junction, system 100 automatically recognizes the junction identifiers (or types) associated with each of the two seat components and based on the complementary junction identifiers associated with each, is able to present to the end-user selectable virtual assets (not shown) from the asset catalogue which are complementary to (or otherwise workable with) this particular junction. Although not shown, selectable virtual assets in this example may include middle seat components, corner seat components or arm rest components. By presenting to the end-user only those virtual assets (or components) from the asset catalogue which are complementary based on the junctions, the end-user may navigate through selectable options with ease. As shown in Figure 8C, in this example the end-user selects a middle Date Recue/Date Received 2021-12-30 seat component from the selectable virtual assets presented via the GUI, and system 100 automatically configures this between the two initially separated seat components without further adjustment required by the end-user. The virtual environment now includes a customised couch virtual asset assembly having four seats. Further customisation may be possible, as described next.
1002531 In Figure 8D, the end-user selects a junction between the middle two seat components of the four-seater couch virtual asset, as indicated with the arrow, separating the two middle seat components, as shown. This action triggers system 100 to automatically recognise the junction identifiers (or types) associated with each of the two middle seat components and based on the complementary junction identifiers associated with each, system 100 presents to the end-user selectable virtual assets (not shown) from the asset catalogue which are complementary to (or otherwise workable with) this particular junction. As shown in Figure 8E, in this example the end-user selects a corner seat component from the selectable virtual assets presented via the GUI, and system 100 automatically configures this between the two initially separated middle seat components to create an L-shaped couch without further adjustment required by the end-user. The virtual environment now includes a customised couch virtual asset assembly having an L-shape. The end-user can customise just the corner seat component, or any others, if desired.
1002541 In Figure 8F, the L-shaped couch is selected as a whole, triggering system 100 to display via the GUI selectable couch textures or finishings available for the couch (not shown, typically as offered by the relevant supplier user of the couch). It is to be appreciated that such couch finishings may relate to, for example, materials (e.g. leather, synthetic leather, fabric, tweed, or the like), or other couch accessories (e.g. studs, cup holders, other hardware, or the like). The colour of the couch or parts thereof may be changed by the end-user in a similar manner, based on available colours through the supplier user. In this example, the end-user selects a grey tweed finish, and system 100 automatically replaces the brown leather finish therewith, as shown in Figure 8G. In this embodiment, therefore, although not specifically shown, system 100 simplifies interaction with the virtual environment by displaying via the GUI only relevant buttons/options. In particular, with reference to Figure 8F, system 100 may display, upon selection of the Date Recue/Date Received 2021-12-30 couch, only selectable GUI buttons for changing (i) the material of the couch, (ii) accessories of the couch and (iii) colours of the couch, but no other data related to the virtual environment. Accordingly, system 100 may guide the end-user through configuration and/or assembly or other variable aspects by presenting only relevant options to the end-user. Simplistically put, the end-user sees the options they need on the GUI only when they need those options, based on what is selected or in the virtual environment.
1002551 In Figure 8G, the end-user has selected the grey tweed L-shaped couch, which presents via the GUI details of the couch which may be relevant for the purchase thereof from the supplier user. These details may include, for example, a description, dimensions of the real couch assembly, reviews provided by previous purchasers, price of the configured couch assembly, or the like.
1002561 In Figure 8H, another feature is illustrated in which the end-user can view components of the virtual asset which are movable or adjustable. In particular, in this example, the L-shaped couch assembly includes seat components with reclining capabilities, having pop-up footrests. System 100 enables the end-user to, on click-command, view the deployed footrests as shown in Figure 8H, such that the end-user has an indication of the in-use spatial configuration of the couch (and may, for example, plan other furniture around the couch as fully deployed).
1002571 Turning now to Figures 9A to 9C, these screenshots are taken from another exemplary digital application running in accordance with another exemplary system 100 for providing interactive customisation and visualisation of a virtual environment.
1002581 Figure 9A illustrates one example of the photorealistic rendering of a couch virtual asset within a virtual environment created by an end-user. As shown, both the couch virtual asset and the remainder of the virtual environment are rendered with photorealistic properties and with ray-tracing, such the end-user requires little to no imagination if the virtual environment properly reflects the real environment. In Figure 9A, for example, the ray tracing can be observed in the shadows created on the floor by light entering the arrangement of panel windows. Figures 9B and 9C reflect the ray-tracing displays possible with system 100 further, wherein Figure 9B shows the couch virtual asset rendered with Date Recue/Date Received 2021-12-30 daylight environment parameters applied, and Figure 9C shows the same couch virtual asset rendered with twilight environment parameters applied. It is to be appreciated that such photorealistic rendering, together with ray-tracing displays, may enable users to review test objects in virtual environments under different lighting conditions.
1002591 Figure 10 illustrates one example of the photorealistic rendering of virtual assets or virtual asset assemblies in augmented reality. In this example, the end-user has the digital application running on a user device, specifically a tablet, and is rendering a couch virtual asset within the video stream captured by tablet of a garage.
Accordingly, the augmented reality display option of system 100 may enable users to visualise virtual objects and/or virtual object assemblies as customised by the end-user within real environments with ease. System 100 may also enable user to rotate the virtual object in 360 degrees, as shown, such that different positions can be visualized. Once again, the virtual asset is rendered with photorealism, as shown. In some embodiments, system 100 may enable the end-user to switch between virtual reality display, and augmented reality display, on command.
1002601 It will be appreciated that other embodiments or alternatives of systems 100, 200 and method 300 disclosed herein are intended to fall well within the scope and nature of the present disclosure. For the sake of clarity, these embodiments or alternatives were not discussed above. Nonetheless, for the sake of comprehensiveness, some of these embodiments or alternatives are briefly discussed below, without limitation.
1002611 In some embodiments of systems 100, 200 and method 300 disclosed herein, the GUI, whether website or digital application based, may be supported by an application programming interface (API). In some embodiments, the API may be designed through UnityTM.
1002621 In some embodiments of systems 100, 200 and method 300 disclosed herein, the customisable virtual assets (or virtual asset components) may reflect assets which may typically be found in or around a building or structure, such as any one or more of: fitting assets, construction assets, electrical assets, water assets, lighting assets, decor assets, landscaping assets, or the like. Fitting assets may include, for example, cupboards, Date Recue/Date Received 2021-12-30 counters, skirting (baseboards), dado rails, cornices, crown moldings, or the like.
Construction assets may include, for example, walls, arches, pillars, doorways, windows, skylights, roofs or the like. Electrical assets may include, for example, electrical outlets, switchboards, light switches, or the like. Water assets may include, for example, pipes, faucets, drains, pumps, sanitary assets (e.g. toilet, bidet, bath, shower, basin, etc.), or the like. Lighting assets may include, for example, lights, downlights, chandeliers, or the like.
Decor assets may include, for example, clocks, wall art, paintings, table lamps, cushions, candles, rugs, vases, trays, mirrors, table clothes or runners, indoor plants, artificial plants, or the like. Landscaping assets may include, for example, plants, trees, grasses, paving, pebbles, water features, or the like. It is to be appreciated that with some of these aforementioned embodiments, the virtual assets (or virtual asset components) may not be physically joinable to other assets but instead, the association between one object and another through module data may relate to a typical real association. For example, a wall object may include at least one junction identifier on an interior side of the wall object which has three complementary junction identifiers in the form of the three junction identifiers assigned to wall art, paintings, and mirrors.
1002631 In some embodiments, particularly with reference to embodiments for object configuration, the customisable virtual assets may comprise any assets which are to be configured into an object assembly. For example, the virtual assets may comprise mechanical model parts of an engine which can be differentially configured based on user specifications. Otherwise, the assets may comprise aesthetic model parts of a vehicle which can be differentially configured based on user specifications to provide a customised vehicle design. In other embodiments, system 200 may be useful for configuring new three-dimensional object assemblies such as for new product designs.
1002641 In some embodiments of systems 100, 200 and method 300 disclosed herein, where the current virtual environment represents an existing real property, the current virtual environment may be created by scanning rooms of a real property with a three-dimensional scanning device. The three-dimensional scanning device may be, for example, a laser imaging, detection, and ranging (LIDAR) device which three-dimensional data can be utilised to obtain a mapped mesh structure of the real property. Otherwise, the three-Date Recue/Date Received 2021-12-30 dimensional scanning device used may be a charge-coupled device (CCD) camera which utilises, for example, computer stereo vision to extract 3D information from digital images obtained of the real property. In turn, in different embodiments, different image-based meshing techniques may be used to create mesh data of real three-dimensional objects (i.e.
virtual assets or components) from any 3D imaging data.
1002651 In some embodiments of systems 100, 200 and method 300 disclosed herein, respective virtual assets or components may be any one or combination of:
geometric models (i.e. polygon mesh), wirefi-ame models, volumetric models, or the like.
In turn, a variety of different computational operations may be performed on models, such as simplification to decrease level of detail displayed, Boolean logic for constructive solid geometry, smoothing by recursive algorithmic methods, to provide a few examples. In other embodiments, the virtual assets may comprise computer aided design (CAD) assets.
1002661 In some embodiments, systems 100, 200 and method 300 may comprise rendering any one or both of the digital property representation and/or the virtual assets to reflect one or more of: photorealistic reflections, ambient occlusion, global illuminations, and shadows. In some embodiments, the current virtual environment may be rendered as real-time raytraced displays.
1002671 In some embodiments of systems 100, 200 and method 300, rendering and/or displaying the current virtual environment, and in particular, rendering a virtual asset within the digital property representation, may further comprise automatically scaling the virtual asset (or plurality thereof) rendered such that it fits within the virtual dimensions of the digital property representation. Such embodiments may account for where different virtual assets are provided by different administrative users and as such do not have the same renderable dimensions, for example. Automatically scaling the virtual asset may therefore, in some embodiments, further reduce the time required by non-expert users to configure virtual asset assemblies and/or a comprehensive digital property representation.
1002681 In some embodiments of systems 100, 200 and method 300 disclosed herein, the current virtual environment may be exportable in a sharable format. Such exportability of the current virtual environment may be useful where, for example, it is to be shared with Date Recue/Date Received 2021-12-30 third-parties for the purposes of obtaining quotations for any one of:
renovating a real property, redecorating a real property, bringing a real property into compliance with standards, toddler-proofing a real property, making a real property accessible for people with disabilities, or the like, where continued access to the current virtual environment and/or editing capabilities is not required by the vender.
1002691 In some embodiments, the systems and methods disclosed herein may be workable for both guest-users and logged-in users. In particular, the systems and methods disclosed herein may store the relevant digital property representation (including configured virtual asset assemblies) based on the user-type of the user, wherein the digital property representation may be stored on a local device for guest-users and/or on the remote server for logged-in users.
1002701 In some embodiments, only the virtual assets may be photo-realistic (i.e. not also the digital property representation). For example, where the current virtual environment is created by a non-expert user, it may be less "realistic" as compared to the virtual assets which may be previously created by an expert administrative user and uploaded to the database.
1002711 In some embodiments, the virtual assets may further include additional representations of the real assets. In one embodiment, the additional representations may be in the form of one or more photographs of the real object. Such one or more photographs may, for example, allow users to zoom in to obtain an improved resolution of textures of real assets, where such resolution may not necessarily be available from the rendered virtual asset on the virtual environment. In another embodiment, the additional representations may be in the form of video reviews of the real assets.
1002721 In some embodiments, the virtual assets may further include warranty .. information, maintenance information, or the like, relevant to the corresponding real asset.
In such embodiments, the methods and systems disclosed herein may assist users in managing information related to properties.

Date Recue/Date Received 2021-12-30 1002731 In some embodiments, the current virtual environment may be touch-screen interactable, wherein the user device includes a touchscreen and wherein the digital application is operable to receive user commands via the touchscreen.
1002741 In some embodiments of systems 100, 200 and method 300 disclosed herein provide a web-accessible three-dimensional visualisation of real properties with dynamic insertion and movement of virtual assets, as well as dynamic traversal capabilities.
1002751 In some embodiments, the systems 100, 200 and method 300 disclosed herein may enable the end-user to favourite virtual assets or virtual asset assemblies, such that the favourited virtual assets or virtual asset assemblies are stored in association with a user .. profile or similar, for future recall in the same or different virtual environments by the same end-user (or otherwise different end-users with linked accounts/profiles).
1002761 While the present disclosure describes various embodiments for illustrative purposes, such description is not intended to be limited to such embodiments.
On the contrary, the applicant's teachings described and illustrated herein encompass various .. alternatives, modifications, and equivalents, without departing from the embodiments, the general scope of which is defined in the appended claims. Except to the extent necessary or inherent in the processes themselves, no particular order to steps or stages of methods or processes described in this disclosure is intended or implied. In many cases the order of process steps may be varied without changing the purpose, effect, or import of the methods .. described.
1002771 Information as herein shown and described in detail is fully capable of attaining the above-described object of the present disclosure, the presently preferred embodiment of the present disclosure, and is, thus, representative of the subject matter which is broadly contemplated by the present disclosure. The scope of the present disclosure fully encompasses other embodiments which may become apparent to those skilled in the art, and is to be limited, accordingly, by nothing other than the appended claims, wherein any reference to an element being made in the singular is not intended to mean "one and only one" unless explicitly so stated, but rather "one or more." All structural and functional equivalents to the elements of the above-described preferred embodiment Date Recue/Date Received 2021-12-30 and additional embodiments as regarded by those of ordinary skill in the art are intended to be encompassed by the present claims. Moreover, no requirement exists for a system or method to address each and every problem sought to be resolved by the present disclosure, for such to be encompassed by the present claims. Furthermore, no element, component, or method step in the present disclosure is intended to be dedicated to the public regardless of whether the element, component, or method step is explicitly recited in the claims.
However, that various changes and modifications in form, material, work-piece, and fabrication material detail may be made, without departing from the spirit and scope of the present disclosure, as set forth in the appended claims, as may be apparent to those of ordinary skill in the art, are also encompassed by the disclosure.

Date Recue/Date Received 2021-12-30

Claims (93)

What is claimed is:
1. A system for providing interactive customisation and visualisation of virtual environments, the system comprising:
a graphics engine operable to render a current virtual environment in accordance with received environment parameters;
a digital asset database accessible to said graphics engine and having stored thereon customisable virtual assets representative of corresponding real assets;
a digital application operable to, via a user device associated therewith and in communication with said graphics engine:
display said current virtual environment via a graphical-user interface (GUI);
receive via said GUI, as input, updated environment parameters comprising at least an asset parameter corresponding to a selected virtual asset of said customisable virtual assets;
communicate said updated environment parameters to said graphics engine;
wherein, upon receipt of said updated environment parameters, said graphics engine is operable to:
access from said digital asset database said selected virtual asset;
configure an updated virtual environment based at least in part on said current virtual environment and said updated environment parameters, such that said updated virtual environment is displayable via said digital application on said GUI.
2. The system of Claim 1, wherein said customisable virtual assets comprise corresponding virtual asset components designated based, at least in part, on corresponding real asset components, and wherein said selected virtual asset comprises a selected virtual asset component.
3. The system Claim 2, wherein said virtual asset components comprise corresponding component junction identifiers.
4. The system of Claim 3, wherein said graphics engine is operable to automatically configure said updated virtual environment based further on said component junction identifiers.
5. The system of Claim 4, wherein said automatically configuring updated virtual environment comprises configuring said selected virtual asset component with one or more virtual asset components forming part of said current virtual environment in accordance with said component junction identifiers to form a virtual object assembly.
6. The system of Claim 3, wherein each of said component junction identifiers are associated with at least one complementary junction identifier, and wherein said graphics engine is operable to automatically configure said updated virtual environment in accordance with associations between said component junction identifiers and said at least one complementary junction identifier.
7. The system of any one of Claims 3 to 6, wherein said digital application is further operable, after display of said current virtual environment, to display only selectable virtual asset components from said customisable virtual assets based, at least in part, on said component junction identifiers available in said current virtual environment.
8. The system of any one of Claims 1 to 7, wherein said digital asset database comprises a low-dependency digital library.
9. The system of any one of Claims 1 to 8, wherein said current virtual environment is redundantly stored in at least two user datasets, each dataset being independently accessible.
10. The system of Claim 9, wherein said at least two user datasets comprise a simplified dataset of said current virtual environment stored locally on said user device and a detailed dataset of said current virtual environment stored remotely on a remote storage device.
11. The system of Claim 10, wherein said simplified dataset of said current virtual environment stored locally on said user device comprises simplified mesh data.
12. The system of Claim 10, wherein said detailed dataset of said current virtual environment stored remotely on said remote storage device comprises detailed mesh data and texture data, which are independently accessible for rendering.
13. The system of any one of Claims 10 to 12, wherein said digital application is operable to store said simplified dataset corresponding to said updated virtual environment as said current virtual environment on said user device, in real-time.
14. The system of any one of Claims 10 to 13, wherein said digital application is operable to store said detailed dataset corresponding to said updated virtual environment as said current virtual environment on said remote storage device, at predefined intervals.
15. The system of any one of Claims 10 to 14, wherein said digital application accessing from said digital asset database said selected virtual asset comprises initially accessing said simplified dataset on said user device and thereafter accessing said detailed dataset on said remote storage device.
16. The system of Claim 15, wherein said accessing said detailed dataset on said remote storage device comprises accessing detailed mesh data and, sequentially thereafter, accessing texture data.
17. The system of Claim 15, wherein said accessing said detailed dataset on said remote storage device comprises accessing detailed mesh data and, in parallel therewith, accessing texture data.
18. The system of any one of Claims 1 to 17, wherein said digital application is interactable via said user device to display said current virtual environment in accordance with one or more user-manipulatable perspectives on the GUI.
19. The system of Claim 18, wherein said one or more user-manipulatable perspectives comprises a first-person view mode, and wherein said current virtual environment is displayed with 360-degree rotation capability.
20. The system of any one of Claims 1 to 19, wherein said GUI is provided by at least one of: a web browser, or execution of one or more machine-executable instructions set by a digital data processor associated with said user device.
21. The system of any one of Claims 1 to 20, wherein said digital asset database is a network-accessible database.
22. The system of any one of Claims 1 to 21, wherein said current virtual environment comprises a three-dimensional digital property representation, and wherein said customisable virtual assets in said digital asset database comprise renderable three-dimensional virtual assets.
23. The system of any one of Claims 1 to 22, wherein said graphics engine is operable to render said current virtual environment in accordance with ray tracing physics.
24. The system of any one of Claims 1 to 23, wherein any one or both of said current virtual environment or said customisable virtual assets are photorealistic.
25. The system of any one of Claims 1 to 24, wherein said current virtual environment is renderable in said digital application with at least one of: virtual reality, augmented reality, and mixed reality.
26. The system of any one of Claims 1 to 25, wherein said graphics engine comprises any one or both of: a local graphics engine on said user device, or a remote graphics engine on a remote device.
27. The system of any one of Claims 1 to 25, wherein said graphics engine comprises a remote graphics engine operating on a remote device, and wherein said user device is in network communication with said remote graphics engine.
28. The system of any one of Claims 1 to 27, wherein said updated environment parameters further comprise an environment configuration parameter.
29. The system of Claim 28, wherein said environment configuration parameter comprises one or more of: an environment layout, or an environmental lighting condition.
30. The system of any one of Claims 1 to 29, wherein said received environment parameters initially utilised by said graphics engine to render said current virtual environment comprises a property layout, based on at least one of: a three-dimensional scan of a property, a three-dimensional architectural plan of a property, or a two-dimensional architectural plan of a property.
31. The system of Claim 30, wherein said received environment parameters initially utilised by said graphics engine to render said current virtual environment further comprises one or more previously selected virtual assets arranged within said property layout.
32. The system of any one of Claims 1 to 31, wherein said customisable virtual assets comprise at least one of: furniture assets, fitting assets, construction assets, electrical assets, water assets, lighting assets, or décor assets.
33. The system of any one of Claims 1 to 31, wherein said customisable virtual assets comprise furniture objects and wherein said digital asset database comprises at least one of: furniture dimensions, furniture colours, furniture textures, furniture replaceable parts, furniture sockets, furniture costs, furniture reviews, furniture photographs, and furniture videos, associated with each furniture object.
34. The system of either one of Claim 32 or Claim 33, wherein said customisable virtual assets comprise digital representations of real assets offered for sale by one or more supplier users.
35. The system of any one of Claims 1 to 34, wherein said current virtual environment forms an extractable property content inventory.
36. The system of any one of Claims 1 to 35, wherein said digital application is operable to receive, as input via said GUI, property manual data which is stored in a property manual dataset, and wherein said property manual data comprises at least one of:
floor layouts, assembly manuals, warranties, receipts, paint chips, property certifications, or locations of key equipment.
37. The system of any one of Claims 1 to 36, wherein said digital application is operable to receive, as input via said GUI, person data reflective of one or more persons associated with said current virtual environment, said person data being stored in a user dataset.
38. The system of any one of Claims 1 to 37, wherein said digital application is operable to receive, as input via said GUI, property safety data reflective of one or more potential hazards associated with said current virtual environment, said property safety data being stored in a user property dataset.
39. The system of any one of Claims 1 to 38, wherein said digital application is operable to receive, as input via said GUI, a purchase request relating to one or more customisable virtual assets representative of corresponding real assets offered for sale.
40. The system of any one of Claims 1 to 39, wherein said digital application is operable to receive, as input via said GUI, a property upkeep reminder and a reminder schedule associated therewith.
41. The system of any one of Claims 1 to 40, wherein said digital application is operable to receive, as input via said GUI, a staging command from a realtor-user.
42. The system of any one of Claims 1 to 41, wherein at least part of said current virtual environment is accessible by an authorised third-party comprising at least one of: a potential property purchaser, a potential property contractor, a potential emergency responder, or a potential insurance provider.
43. A system for digitally configuring a virtual object assembly in a virtual environment, the system comprising:
a digital data storage device having stored thereon an asset library comprising a plurality of customisable virtual assets each having module data associated therewith;
a processor in communication with said digital data storage device and operable to access said asset library; and a digital application operable on a user device for communicating with said processor, said digital application being operable to provide a graphical-user interface (GUI) on said user device;
wherein said processor is operable to digitally execute machine-executable instructions to:
present as user-selectable assets via said GUI at least some of said plurality of customisable virtual assets;
receive as input via said GUI at least one virtual asset selection from said user-selectable assets; and render via said GUI the virtual object assembly comprising said at least one virtual asset selection, wherein the virtual object assembly is automatically configured in the virtual environment based on said module data corresponding to said at least one virtual asset selection.
44. The system of Claim 43, wherein said processor further comprises a graphics engine, and wherein said processor commands said graphics engine to said render the virtual object assembly for display by said digital application on said GUI.
45. The system of either one of Claim 43 or Claim 44, wherein said module data comprises at least one junction identifier having associated therewith at least one complementary junction identifier.
46. The system of Claim 45, wherein said at least one junction identifier comprises a junction-type identifier which corresponds to a potential object interaction.
47. The system of either one of Claim 45 or Claim 46, wherein said at least one complementary junction identifier corresponds to at least one junction identifier of at least one complementary virtual asset.
48. The system of any one of Claims 45 to 47, wherein said at least one complementary junction identifier dictates at least one complementary virtual asset which can be joined to a virtual asset with that particular at least one junction identifier to render, at least in part, the virtual object assembly.
49. The system of any one of Claims 43 to 48, wherein said presenting said at least some of said plurality of customisable virtual assets as said user-selectable assets comprises presenting an asset catalogue via the GUI upon opening of said digital application on said user device.
50. The system of Claim 49, wherein said rendering via said GUI the virtual object assembly comprises downloading onto said user device one or more virtual assets from said asset library corresponding to said at least one virtual asset selection.
51. The system of any one of Claims 45 to 50, wherein said automatically configuring said virtual object assembly is based on an association between said at least one junction identifier on a first virtual asset downloaded and said at least one complementary junction identifier on a second virtual asset downloaded.
52. The system of any one of Claims 45 to 51, wherein said module data further comprises a positioning rule associated with each of said at least one junction identifier.
53. The system of Claim 52, wherein said positioning rule dictates at which virtual position relative to a virtual object a complementary virtual object having an associated at least one junction identifier is joinable.
54. The system of either one of Claim 52 or Claim 53, wherein said positioning rule comprises at least one of: a scale, a position, an orientation, or a rotation, of a virtual object within the virtual environment.
55. The system of Claim 43, wherein said processor is further operable to digitally execute machine-executable instructions, prior to said presenting said user-selectable assets, to:
identify at least one virtual object on the virtual environment having at least one junction which is available; and identify one or more complementary virtual assets having a junction identifier associated with said at least one junction which is available, wherein said one or more complementary virtual assets form said at least some of said plurality of customisable virtual assets which are presented as said user-selectable assets.
56. The system of any one of Claims 43 to 55, wherein said processor is further operable to digitally execute machine-executable instructions to receive via said GUI at least one asset deletion command associated with deletion of a virtual asset from the virtual environment.
57. The system of Claim 56, wherein said processor is further operable to digitally execute machine-executable instructions to, upon receiving said at least one asset deletion command, reconfigure the virtual object assembly based on remaining virtual assets and available junction identifiers.
58. The system of either one of Claim 56 or Claim 57, wherein said processor is further operable to digitally execute machine-executable instructions to, upon receiving said at least one asset deletion command, delete from said user device said virtual asset corresponding to said at least one asset deletion command.
59. The system of any one of Claims 43 to 58, wherein each virtual asset in said plurality of customisable virtual assets comprises mesh data and texture data which are independently accessible for rendering by said processor.
60. The system of Claim 59, wherein said rendering via said digital application on said GUI the virtual object assembly comprises sequentially rendering the virtual object assembly based on mesh data and thereafter texture data.
61. The system of any one of Claims 43 to 60, wherein said plurality of customisable virtual assets are renderable with any or more one of: virtual reality, augmented reality, and mixed reality.
62. The system of any one of Claims 43 to 61, wherein any one or both of the virtual object assembly and the virtual environment are displayed via said GUI in a first-person view mode with 360-degree rotation capability within said digital application.
63. The system of any one of Claims 43 to 62, wherein the virtual environment comprises a digital property representation.
64. The system of Claim 63, wherein said digital property representation forms an extractable property content inventory.
65. The system of any one of Claims 43 to 64, wherein said plurality of customisable virtual assets comprises at least one of: furniture assets, fitting assets, construction assets, electrical assets, water assets, lighting assets, or décor assets.
66. The system of any one of Claims 43 to 64, wherein said plurality of customisable virtual assets comprise a plurality of furniture assets and wherein the virtual object assembly comprises a virtual furniture assembly having interchangeable furniture components corresponding to different real furniture components.
67. The system of either one of Claim 65 or Claim 66, wherein said plurality of customisable virtual assets comprise digital representations of real assets offered for sale by one or more supplier users.
68. The system of any one of Claims 43 to 67, wherein said module data of each virtual asset in said plurality of customisable virtual assets further comprises at least one of: name, sprite, thumbnail, unique identifier, material, model, price, warranty information, receipt information, assembly information, certification information, safety information, or maintenance information.
69. The system of any one of Claims 43 to 68, wherein said processor is further operable, in response to direction from said digital application, to digitally execute machine-executable instructions to store the virtual object assembly on a low-dependency digital representation database.
70. The system of any one of Claims 43 to 69, wherein said processor is further operable, in response to direction from said digital application, to digitally execute machine-executable instructions to store a simplified dataset of the virtual environment locally on a user device and a detailed dataset of the virtual environment remotely on a remote data storage device.
71. The system of any one of Claims 43 to 70, for use as an interactive virtual asset customisation and visualisation tool representative of interactable real assets.
72. A method for providing a customisable virtual environment renderable via a digital application associated with a user device, the method comprising:
rendering via the digital application a current virtual environment on the user device;
receiving, as input from the digital application, updated environment parameters comprising at least an asset parameter corresponding to a selected virtual asset of a plurality of virtual assets stored in a digital asset database and representative of corresponding real assets;
accessing said selected virtual asset in said digital asset database; and using a graphics engine, configuring an updated virtual environment in accordance with said selected virtual asset and said updated environment parameters so as to render via the digital application said updated virtual environment as said current virtual environment.
73. The method of Claim 72, wherein said digital asset database is stored remote to said user device.
74. The method of either one of Claim 72 or Claim 73, wherein said current virtual environment is stored on said user device.
75. The method of any one of Claims 72 to 74, wherein prior to receiving updated environment parameters, the method comprises displaying via the digital application an asset catalogue comprised of select data corresponding to said plurality of virtual assets from said digital asset database.
76. The method of Claim 75, wherein said receiving said asset parameter comprises receiving a selected virtual asset from said asset catalogue.
77. The method of Claim 76, wherein said accessing said selected virtual asset comprises downloading said selected virtual asset to said user device via a server.
78. The method of Claim 75, wherein said receiving said asset parameter comprises receiving a selected virtual asset component having associated therewith a junction identifier representative of a potential virtual asset configuration in a virtual environment, and wherein said configuring of said updated virtual environment comprises automatically configuring said selected virtual asset in accordance with said asset potential virtual configuration.
79. The method of any one of Claims 72 to 78, wherein said graphics engine is a remote graphics engine stored on a server, or a local graphics engine integrated with said user device.
80. The method of any one of Claims 72 to 79, wherein said configuring said updated virtual environment comprises configuring said updated virtual environment in accordance with a photorealistic rendering process.
81. The method of any one of Claims 72 to 80, further comprising storing said updated virtual environment locally on said user device in real time and remotely in a user database via a remote server at predefined intervals.
82. The method of any one of Claims 72 to 81, wherein said receiving as input from the GUI comprises receiving said updated environment parameters via a network.
83. The method of any one of Claims 72 to 82, wherein said accessing said selected virtual asset comprises accessing one or more specific asset datasets corresponding to said asset parameter.
84. The method of any one of Claims 72 to 83, wherein said updated environment parameters further comprise an environment configuration parameter, and wherein said configuring an updated virtual environment comprises configuring said updated virtual environment in accordance with said environment configuration parameter.
85. The method of any one of Claims 72 to 84, wherein said current virtual environment comprises both of a digital property representation and a number of pre-selected and/or configured virtual assets of said plurality of virtual assets stored in said digital asset database.
86. The method of any one of Claims 72 to 85, wherein said rendering said current virtual environment comprises rendering with at least one of: virtual reality, augmented reality, and mixed reality.
87. The method of any one of Claims 72 to 86, wherein said rendering said current virtual environment comprises rendering said current virtual environment in accordance with a first-person view mode with 360-degree rotation capability within said digital application.
88. The method of any one of Claims 72 to 87, wherein said updated environment parameters comprise property staging parameters received from a realtor-user.
89. The method of any one of Claims 72 to 88, further comprising receiving, as input from the digital application, any one or both of: property manual data and property safety data, associated with said current virtual environment.
90. The method of any one of Claims 72 to 89, wherein said current virtual environment forms an extractable property content inventory.
91. The method of any one of Claims 72 to 90, wherein said plurality of virtual assets comprise digital representations of real assets offered for sale by one or more supplier users.
92. The method of Claim 91, further comprising receiving a sales transaction prompt from an end-user associated with one or more virtual assets, or a virtual asset assembly.
93. The method of Claim 92, further comprising effecting said sales transaction between said end-user and one or more supplier users.
CA3144605A 2021-12-30 2021-12-30 Methods and systems for interactive customisation and visualisation of virtual environments and for digitally configuring virtual object assemblies Pending CA3144605A1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CA3144605A CA3144605A1 (en) 2021-12-30 2021-12-30 Methods and systems for interactive customisation and visualisation of virtual environments and for digitally configuring virtual object assemblies

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CA3144605A CA3144605A1 (en) 2021-12-30 2021-12-30 Methods and systems for interactive customisation and visualisation of virtual environments and for digitally configuring virtual object assemblies

Publications (1)

Publication Number Publication Date
CA3144605A1 true CA3144605A1 (en) 2023-06-30

Family

ID=86945903

Family Applications (1)

Application Number Title Priority Date Filing Date
CA3144605A Pending CA3144605A1 (en) 2021-12-30 2021-12-30 Methods and systems for interactive customisation and visualisation of virtual environments and for digitally configuring virtual object assemblies

Country Status (1)

Country Link
CA (1) CA3144605A1 (en)

Similar Documents

Publication Publication Date Title
US11714518B2 (en) Method and system for virtual real estate tours and virtual shopping
KR100489866B1 (en) Method and system for supporting three dimensional spatial design using network, and server for such system
US20150324940A1 (en) 3D Interactive Construction Estimating System
US7277572B2 (en) Three-dimensional interior design system
US20180374276A1 (en) System for multimedia spatial annotation, visualization, and recommendation
WO2020191101A1 (en) Virtual interaction with three-dimensional indoor room imagery
US20130179841A1 (en) System and Method for Virtual Touring of Model Homes
US20020065635A1 (en) Virtual reality room
US20140095122A1 (en) Method, apparatus and system for customizing a building via a virtual environment
US20170140484A1 (en) Virtual or augmented reality customization system and method
CN103246992A (en) 3D (three-dimensional) house display system, on-line house display system and on-line house sales method
KR20110105532A (en) E-apartment housing system capable of virtual interior design
US11488373B2 (en) System and method of providing a customizable virtual environment
US20220084296A1 (en) Techniques for virtual visualization of a product in a physical scene
CA2851229A1 (en) Computer program, system, method and device for displaying and searching units in a multi-level structure
US20190114699A1 (en) System and method for product design, simulation and ordering
US20210117582A1 (en) Visualizing Building Interior Information In A User-Customized Manner
WO2015075705A2 (en) Device, system and method for designing a space
US20220036440A1 (en) Point of sale system and method for visualizing and transacting on real estate spaces and the products within these spaces
KR20200000288A (en) Operating system for model house with virtual realityand method thereof
US20240193886A1 (en) Techniques for generating a digital representation of a property and applications thereof
EP1825410A1 (en) Automated method and system for object configuration
CA3144605A1 (en) Methods and systems for interactive customisation and visualisation of virtual environments and for digitally configuring virtual object assemblies
JP6275764B2 (en) Interior view image creation apparatus, interior view image creation method, and computer program
US20130174085A1 (en) Interactive online showing