CA2686991A1 - Rescaling an avatar for interoperability in 3d virtual world environments - Google Patents

Rescaling an avatar for interoperability in 3d virtual world environments Download PDF

Info

Publication number
CA2686991A1
CA2686991A1 CA2686991A CA2686991A CA2686991A1 CA 2686991 A1 CA2686991 A1 CA 2686991A1 CA 2686991 A CA2686991 A CA 2686991A CA 2686991 A CA2686991 A CA 2686991A CA 2686991 A1 CA2686991 A1 CA 2686991A1
Authority
CA
Canada
Prior art keywords
virtual world
avatar
dimension
rescaling
world
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.)
Abandoned
Application number
CA2686991A
Other languages
French (fr)
Inventor
Deepti K. Bhosale
Peter Finn
Salil Gandhi
Nilesh K. Mahajan
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.)
IBM Canada Ltd
Original Assignee
IBM Canada Ltd
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 IBM Canada Ltd filed Critical IBM Canada Ltd
Priority to CA2686991A priority Critical patent/CA2686991A1/en
Priority to US12/958,119 priority patent/US8878877B2/en
Publication of CA2686991A1 publication Critical patent/CA2686991A1/en
Abandoned legal-status Critical Current

Links

Classifications

    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F13/00Video games, i.e. games using an electronically generated display having two or more dimensions
    • A63F13/60Generating or modifying game content before or while executing the game program, e.g. authoring tools specially adapted for game development or game-integrated level editor
    • A63F13/65Generating or modifying game content before or while executing the game program, e.g. authoring tools specially adapted for game development or game-integrated level editor automatically by game devices or servers from real world data, e.g. measurement in live racing competition
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T1/00General purpose image data processing
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F2300/00Features of games using an electronically generated display having two or more dimensions, e.g. on a television screen, showing representations related to the game
    • A63F2300/50Features of games using an electronically generated display having two or more dimensions, e.g. on a television screen, showing representations related to the game characterized by details of game servers
    • A63F2300/55Details of game data or player data management
    • A63F2300/5546Details of game data or player data management using player registration data, e.g. identification, account, preferences, game history
    • A63F2300/5553Details of game data or player data management using player registration data, e.g. identification, account, preferences, game history user representation in the game field, e.g. avatar

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Processing Or Creating Images (AREA)
  • Information Transfer Between Computers (AREA)

Abstract

Exemplary embodiments include a method for teleporting an avatar from a first virtual world residing on a first computer system to a second virtual world residing on a second computer system, the method including determining whether dimensions of the second virtual world are compatible with dimensions of the first virtual world, in response to a determination that the dimensions of the second virtual world are not compatible with the dimensions of the first virtual world, performing an interoperability rescaling between the first virtual world and the second virtual world and transferring the avatar from the first virtual world to the second virtual world.

Description

ENVIRONMENTS
BACKGROUND

[0001] The present invention relates to virtual world environments, and more specifically, to systems and methods for rescaling an avatar for interoperability in 3D virtual world environments.
[0002] A virtual world is a computer-based simulated environment in which computer users (players) inhabit and interact via avatars. An avatar is a computer user's representation of himself/herself or alter ego (e.g., a three-dimensional graphical representation or model within the virtual world). The computer accesses a computer-simulated world and presents perceptual stimuli to the user, who in turn can manipulate elements of the modeled world.
The model world may simulate rules based on the real world or some hybrid fantasy world.
Players create a character A Player's avatar can travel between buildings, towns, and even worlds to carry out business or leisure activities, and interact with other players via their avatar. A well-known virtual world is Second Life , which launched in 2003 and currently includes millions of worldwide residents. Currently, virtual worlds and their respective avatars such as Second Life are distinct and separate from and do not interact with other virtual worlds.
As such, there is currently no interoperability between virtual worlds. Interoperability refers to the ability for a character (avatar) in one virtual world system to be able to enter, i.e.
teleport to, another virtual world system and carry with it certain attributes and capabilities. As such, currently there is no ability to seamlessly travel from one virtual world to another virtual world.

SUMMARY
[0003] Exemplary embodiments include a method for teleporting an avatar from a first virtual world residing on a first computer system to a second virtual world residing on a second computer system, the method including determining whether dimensions of the second virtual world are compatible with dimensions of the first virtual world, in response to a determination that the dimensions of the second virtual world are not compatible with the dimensions of the first virtual world, performing an interoperability rescaling between the first virtual world and the second virtual world and transferring the avatar from the first virtual world to the second virtual world.
[0004] Additional exemplary embodiments include a computer program product for teleporting an avatar from a first virtual world residing on a first computer system to a second virtual world residing on a second computer system, the computer program product including computer readable medium having instructions stored thereon for causing the first and second computer systems to implement a method, the method including determining whether dimensions of the second virtual world are compatible with dimensions of the first virtual world, in response to a determination that the dimensions of the second virtual world are not compatible with the dimensions of the first virtual world, performing an interoperability rescaling between the first virtual world and the second virtual world and transferring the avatar from the first virtual world to the second virtual world.
[0005] Further exemplary embodiments include a system for teleporting an avatar from a first virtual world residing on a first computer system to a second virtual world residing on a second computer system, the system including a processor, a data structure including dimension compatibility between the first virtual world and the second virtual world, and processor executable instructions for carrying out the steps of. determining whether dimensions of the second virtual world are compatible with dimensions of the first virtual world, in response to a determination that the dimensions of the second virtual world are not compatible with the dimensions of the first virtual world, performing an interoperability rescaling between the first virtual world and the second virtual world, and transferring the avatar from the first virtual world to the second virtual world.
[0006] Additional features and advantages are realized through the techniques of the present invention. Other embodiments and aspects of the invention are described in detail herein and are considered a part of the claimed invention. For a better understanding of the invention with the advantages and the features, refer to the description and to the drawings.

BRIEF DESCRIPTION OF THE SEVERAL VIEWS OF THE DRAWINGS
[0007] The subject matter which is regarded as the invention is particularly pointed out and distinctly claimed in the claims at the conclusion of the specification.
The forgoing and other features, and advantages of the invention are apparent from the following detailed description taken in conjunction with the accompanying drawings in which:
[0008] FIG. 1 diagrammatically illustrates an example for rescaling an avatar implementing tagged common objects as a base for identifying scale factor;
[0009] FIG. 2 illustrates a flowchart of a method for rescaling an avatar implementing tagged common objects as a base for identifying scale factor in accordance with exemplary embodiments;
[0010] FIG. 3 diagrammatically illustrates an example for rescaling the virtual world environment implementing tagged common objects as a base for identifying scale factor;
[0011] FIG. 4 illustrates a flowchart of a method for rescaling the virtual world environment implementing tagged common objects as a base for identifying scale factor in accordance with exemplary embodiments;
[0012] FIG. 5 diagrammatically illustrates an example for rescaling an avatar depending upon the average size of avatars in both virtual world spaces;
[0013] FIG. 6 illustrates a flowchart of a method for rescaling an avatar depending upon the average size of avatars in both virtual world spaces in accordance with exemplary embodiments;
[0014] FIG. 7 diagrammatically illustrates an example for rescaling an avatar based upon a standard scale;
[0015] FIG. 8 illustrates a flowchart of a method for rescaling an avatar based upon a standard scale in accordance with exemplary embodiments;
[0016] FIG. 9 diagrammatically illustrates an example for rescaling an avatar based upon real world counterparts;
[0017] FIG. 10 illustrates a flowchart of a method for rescaling an avatar based upon real world counterparts in accordance with exemplary embodiments; and [0018] FIG. 11 illustrates an exemplary embodiment of a system for rescaling an avatar for interoperability in virtual world environments.

DETAILED DESCRIPTION
[0019] In exemplary embodiments, the systems and methods described herein rescale avatars for interoperability between virtual worlds thereby seamlessly teleporting the avatar between the virtual worlds. As such, trans-world commerce between virtual worlds can be implemented as an avatar moves between worlds, thereby creating a metaverse that binds together all of the emerging virtual world technologies. The systems and methods described herein enable size adjustments of the avatar relative to the virtual worlds' environments as the avatar in virtual world A moves into virtual world B. Exemplary embodiments scale the avatar and the environment relatively compatible with each other, whenever an avatar teleports from one virtual world to another. When an avatar enters an environment the height and size of the avatar in comparison to the environment may not be sync because the avatar has moved from virtual world A to virtual world B and so adjustments are made. For illustrative purposes, the height of the avatar is discussed with respect to the various exemplary embodiments. It is appreciated that other dimensions or features, such as the width or entire scale of the 3D object, are contemplated in other exemplary embodiments.
[0020] In exemplary embodiments, the systems and methods described herein can rescale an avatar implementing tagged common objects as a base for identifying scale factor. As such resizing an avatar in a 3D virtual world environment may be based on the scale of the objects within the space of the virtual world environment. This implementation includes reviewing the size and scale of the room and automatically modifying the height of the avatar in accordance with its surroundings. Various common stationary objects, such as a chair, table, door, automobile and the like can be tagged. The height of the tagged object in one virtual world (i.e., a source) is compared to another virtual world (i.e., a destination), which determines a scaling factor. According to the scaling factor and the height of the avatar in virtual world A is used to the height of the avatar in virtual world B. It is appreciated that the item that is tagged can have an associated record or data structure that stores the dimension information.
This record or data structure is therefore accessible to generate the scaling factor. The scales may be different in different virtual worlds. For example, if an avatar teleports from Virtual World A to Virtual World B, the scales from the records are compared. There are various common objects that can be tagged in both the virtual worlds. There can be objects created that are smaller/larger in size than the standard size for that particular objects, are not tagged. Only standard objects are tagged. As such, standard objects can be identified for all virtual worlds and records can be accordingly created and stored for access to generate the scaling factors. The size difference between one virtual world tagged object is compared with another similarly tagged object in the destination virtual world and the scaling ratio is identified.

[00211 FIG. 1 diagrammatically illustrates an example 100 for rescaling an avatar implementing tagged common objects as a base for identifying scale factor.
FIG. 2 illustrates a flowchart of a method 200 for rescaling an avatar implementing tagged common objects as a base for identifying scale factor in accordance with exemplary embodiments.
FIG. 1 illustrates an original avatar 105 in Virtual World A (VWA), with height m, and a scaled avatar 115 in Virtual World B (VWB), with height p, after teleporting between VWA and VWB.
FIG. 1 further illustrates a first tagged object (e.g., a table) 110 in VWA, with height n and a second tagged object in VWB, with height q. According to FIG. 2, a user causes the original avatar 105 to enter VWA at block 210. The user then decides to have the user's original avatar 105 transport to VWB at block 220. The method 200 then determines if the dimensions of VWB are compatible with the dimensions of VWA at block 230. If the dimensions of VWA
and VWB are compatible at block 230, then at block 280, the original avatar 105 enters VWB. In this case there is no scaling and the original avatar 105 remains its original height.
In exemplary embodiments, the virtual worlds may include a data structure having a predetermined record that the virtual worlds are compatible for non-scaled teleportation. However, if the method 200 determines that the dimensions of VWA and VWB are not compatible at block 230, then scaling is implemented on the original avatar 105 in accordance with exemplary embodiments. In the example 100 of FIG. 1, the height, n, of the first tagged object 110 is identified in VWA from the records at block 230. In addition, the height, q, of the second tagged object 120 is identified in VWB from the records. Then at block 260, the scaled height p of the scaled avatar 115 is calculated at block 260. In exemplary embodiments, the scaled height is calculated as follows:
p=m*(q/n). As such, the ratio of the tagged objects 110, 120 determines the scaling factor/ratio (q/n). At block 270, the original avatar 105 is scaled according to the calculation at block 260 and scaled to the scaled avatar 115 for entry into VWB. At block 280, the original avatar 105 enters VWB as the scaled avatar 115.

[00221 In exemplary embodiments, the systems and methods described herein can rescale a virtual world environment implementing tagged common objects as a base for identifying scale factor. As such, automatic scaling of objects in a virtual world can be based on their real world counterparts. This implementation includes reviewing the size and scale of the room and automatically modifying the objects and size of the room to fit the size of the avatar. In this implementation, the common objects are tagged. The scaling ratios are determined by comparing the objects in both the virtual worlds, which is a similar methodology as described above. However, in this embodiment, the room all the surrounding objects in the destination virtual world are scaled instead of scaling the original avatar itself.

[00231 FIG. 3 diagrammatically illustrates an example 300 for rescaling the virtual world environment implementing tagged common objects as a base for identifying scale factor. FIG. 4 illustrates a flowchart of a method 400 for rescaling the virtual world environment implementing tagged common objects as a base for identifying scale factor in accordance with exemplary embodiments. FIG. 3 illustrates an original avatar 305 in VWA, with height m, and a teleported avatar 315 in VWB, with height p, after teleporting between VWA and VWB. FIG.
3 further illustrates a first tagged object (e.g., a table) 310 in VWA, with height n and a second tagged object in VWB, with height q. According to FIG. 4, a user causes the original avatar 305 to enter VWA at block 410. The user then decides to have the user's original avatar 305 transport to VWB at block 420. The method 400 then determines if the dimensions of VWB are compatible with the dimensions of VWA at block 430. If the dimensions of VWA and VWB are compatible at block 430, then at block 480, the original avatar 305 enters VWB. In this case there is no scaling and the original avatar 305 remains its original height and no other scaling is performed in the virtual world environment. In exemplary embodiments, the virtual worlds may include a data structure having a predetermined record that the virtual worlds are compatible for non-scaled teleportation. However, if the method 400 determines that the dimensions of VWA and VWB are not compatible at block 430, then scaling is implemented in the environment of VWB
in accordance with exemplary embodiments. At block 440, the method 400 calculated the ratio if the height, n, of the tagged object 310 in VWA and the height, m, of the original avatar 305 in VWA (i.e., (n/m)). At block 450, the method 400 calculated the height of the same tagged object in VWB. In exemplary embodiments, the height of the tagged object in VWB is calculated as follows: q=p*(n/m). At block 460, the original tagged object 310 is scaled according to the calculation at block 450 for entry into VWB. At block 470, the method 400 determines whether the dimensions of all tagged objects in VWB have been modified. If all dimensions of the tagged objects have not been modified at block 470, then the method 400 repeats at block 440. If all dimensions of the tagged objects have been modified at block 470, then at block 480, the original avatar 305 enters VWB with the height p of the scaled avatar 315.

[00241 In exemplary embodiments, the systems and methods described herein can rescale an avatar depending upon the average size of avatars in both virtual world spaces. As such, the avatars can be scaled based on other avatars. An average height of all avatars in a source virtual world can be determined determined. For the particular avatar, that is teleporting, the ratio of its height to the average height is determined. Similarly, the average height of avatars in the destination virtual world is determined. With this information, the scaling factor can be determined. This factor can be used to scale and render the avatar in a destination virtual world environment.

[00251 FIG. 5 diagrammatically illustrates an example 500 for rescaling an avatar depending upon the average size of avatars in both virtual world spaces. FIG.
6 illustrates a flowchart of a method 600 for rescaling an avatar depending upon the average size of avatars in both virtual world spaces in accordance with exemplary embodiments. FIG. 5 illustrates an original avatar 505 in VWA, with height m, and a scaled avatar 115 in VWB, with height p, after teleporting between VWA and VWB. FIG. 5 further illustrates a group of VWA
avatars 510 in VWA, representing an average height, x, in VWA, and s a group of VWB avatars 520 in VWB, representing an average height, y, in VWB. According to FIG. 6, a user causes the original avatar 505 to enter VWA at block 610. The user then decides to have the user's original avatar 505 transport to VWB at block 620. The method 600 then determines if the dimensions of VWB
are compatible with the dimensions of VWA at block 630. If the dimensions of VWA and VWB
are compatible at block 630, then at block 680, the original avatar 505 enters VWB. In this case there is no scaling and the original avatar 505 remains its original height.
In exemplary embodiments, the virtual worlds may include a data structure having a predetermined record that the virtual worlds are compatible for non-scaled teleportation. However, if the method 600 determines that the dimensions of VWA and VWB are not compatible at block 630, then scaling is implemented on the original avatar 505 in accordance with exemplary embodiments. In the example 500 of FIG. 5, the average height, x, of the group of VWA avatars 510 is identified in VWA from the records at block 640. In addition, the average height, y, of the group of VWB
avatars 520 is identified in VWB from the records at block 650. Then at block 660, the scaled height p of the scaled avatar 515 is calculated at block 660. In exemplary embodiments, the scaled height is calculated as follows: p=m*(y/x). As such, the ratio of the average heights 510, 520 determines the scaling factor/ratio (y/x). At block 670, the original avatar 505 is scaled according to the calculation at block 660 and scaled to the scaled avatar 515 for entry into VWB.
At block 680, the original avatar 505 enters VWB as the scaled avatar 515.

[00261 In exemplary embodiments, the systems and methods described herein can rescale an avatar based upon a standard scale. As such, the systems and methods described herein can define a standard scale for scaling avatars between virtual worlds. In exemplary embodiments, the scaling in a particular virtual world can be compared to a standard scaling and a scaling factor for that virtual world can be determined. Using the scaling factors, for virtual worlds mapped to the standard scale, the scaling ratio can be determined when an avatar teleports from one virtual world to another. As such, if avatars from, for example, virtual worlds A, B and C , all are teleporting to virtual world D, then the scaling ratio of virtual world D compared to the standard scale can be used to find the ratio. In this implementation, various virtual world owners can determine the standard scale. In addition, the owners can define a mapping for the standard scale with the scale used in various virtual worlds. Using this mapping one can derive the scaling factor while teleporting from a particular virtual world to another.
The two virtual worlds (i.e., source and destination) interact with each other in terms of the standard scales and hide the implementation details for its scaling.

[00271 FIG. 7 diagrammatically illustrates an example 700 for rescaling an avatar based upon a standard scale. FIG. 8 illustrates a flowchart of a method 800 for rescaling an avatar based upon a standard scale in accordance with exemplary embodiments. FIG. 7 illustrates an original avatar 705 in VWA, an original avatar 715 in VWB, an original avatar 725 in Virtual World C (VWC), and a pre-defined standard scale avatar 735. For illustrative purposes, the example discusses the entry of the original avatar 715 in VWA entering into VWB. According to FIG. 8, a user causes the original avatar 705 to enter VWA at block 810.
The user then decides to have the user's original avatar 705 transport to VWB at block 820.
The method 800 then determines if the dimensions of VWB are compatible with the dimensions of VWA at block 830. If the dimensions of VWA and VWB are compatible at block 830, then at block 870, the original avatar 705 enters VWB. In this case there is no scaling and the original avatar 705 remains its original height. In exemplary embodiments, the virtual worlds may include a data structure having a predetermined record that the virtual worlds are compatible for non-scaled teleportation, which can be the same record that includes the standard scaling information for virtual worlds. However, if the method 800 determines that the dimensions of VWA and VWB
are not compatible at block 830, then scaling is implemented on the original avatar 705 in accordance with exemplary embodiments. At block 840, the method 800 converts the height of the original avatar 705 in VWA to the standard scale chosen by all virtual worlds. This standard scale is seen, for example, with the pre-defined standard scale avatar 735 in FIG. 7. At block 850, the method then converts the standardized height to the height appropriate to VWB, for example to the scaled avatar 715 in FIG. 7. At block 860, the original avatar 705 is scaled according to the conversions at blocks 840 and 850. for entry into VWB. At block 870, the original avatar 705 enters VWB as the scaled avatar 715.

100281 In exemplary embodiments, the systems and methods described herein can scale an avatar based upon real world counterparts. As such rescaling can be achieved by automatic scaling of objects and avatars in a virtual world based on their physical real world counterparts.
In a paraverse environment when a new object or avatar is added to a virtual world, the object or avatar may not fit to scale with the rest of the environment so all objects are automatically base lined to conform to the same scale as their real world counterparts.

[00291 FIG. 9 diagrammatically illustrates an example 900 for rescaling an avatar based upon real world counterparts. FIG. 10 illustrates a flowchart of a method 1000 for rescaling an avatar based upon real world counterparts in accordance with exemplary embodiments. The method 100 depicts a way to map the virtual world avatar size to the real world counterpart.
Using the real world counterpart as a standard, one can derive the scaling factor and size for the avatar in another virtual world. FIG. 9 illustrates an original avatar 905 in VWA, an original avatar 915 in VWB, and a tagged object (e.g., a table) in VWB. FIG. 9 further illustrates a real world depiction of an object 950 having height, s, and a real world depiction of a person 955 having height, t. In exemplary embodiments, the resulting real world objects size ratio is s:t (or t/s). According to FIG. 10, a user causes the original avatar 905 to enter VWA
at block 1010.
The user then decides to have the user's original avatar 905 transport to VWB
at block 1020.
The method 1000 then determines if the dimensions of VWB are compatible with the dimensions of VWA at block 1030. If the dimensions of VWA and VWB are compatible at block 1030, then at block 1060, the original avatar 905 enters VWB. In this case there is no scaling and the original avatar 905 remains its original height. In exemplary embodiments, the virtual worlds may include a data structure having a predetermined record that the virtual worlds are compatible for non-scaled teleportation. However, if the method 1000 determines that the dimensions of VWA and VWB are not compatible at block 1030, then scaling is implemented on the original avatar 905 in accordance with exemplary embodiments. At block 1040, the method determines the real world ratio of the heights of the a real world depiction of an object 950 that is tagged in the virtual world and the real world depiction of a person 955 , which from above is s/t.
At block 1050, the method 1000 scales the original avatar 905 for VWB using the height of the tagged object 920 in VWB. . In exemplary embodiments, the scaled height is calculated as follows: p=q(t/s), where t/s is the size ratio of real objects. At block 1060, the original avatar 905 enters VWB as the scaled avatar 915.

[00301 In exemplary embodiments, the systems and methods described herein can further include transporting/teleporting objects into a virtual world from another virtual world in which further data relating to attributes of the objects. For example, an additional data file can include data related to the attributes of the objects. As such, when the objects are transported, the objects can be rescaled in the virtual world to where the objects are transported.
This type of teleportation can be achieved implementing the same methodology for auto rescaling avatars into this space as described herein. In exemplary embodiments, the teleported objects can be rescaled based on the size of other objects in the virtual world to where the objects are transported. In exemplary embodiments, the teleported objects can be rescaled based on the size of the avatars in the virtual world to where the objects are transported. In exemplary embodiments, the virtual world space can be rescaled based on the size of the object in the virtual world to where the objects are transported.

[00311 FIG. 11 illustrates an exemplary embodiment of a system 1100 for rescaling an avatar for interoperability in virtual world environments. The methods described herein can be implemented in software (e.g., firmware), hardware, or a combination thereof In exemplary embodiments, the methods described herein are implemented in software, as an executable program, and is executed by a special or general-purpose digital computer, such as a personal computer, workstation, minicomputer, or mainframe computer. The system 1100 therefore includes general-purpose computer 1101. The components of the general purpose computer 1101 are described herein. The system 1100 can further include servers 170, 175. The server 170 may host VWA and the server 175 may host VWB. It is understood that these are only examples and that the servers may host other virtual worlds. It is also understood that the servers can include similar components as described with respect to the general purpose computer 1101.
In addition, the software components described here may exist solely on the general purpose computer 110, the server 170 or the server 175. In other exemplary embodiments, the software components described here in may be distributed over the general purpose computer 1101, and the servers 170, 175.

[00321 In exemplary embodiments, in terms of hardware architecture, as shown in FIG.
11, the computer 1101 includes a processor 1105, memory 1110 coupled to a memory controller 1115, and one or more input and/or output (I/O) devices 1140, 1145 (or peripherals) that are communicatively coupled via a local input/output controller 1135. The input/output controller 1135 can be, for example but not limited to, one or more buses or other wired or wireless connections, as is known in the art. The input/output controller 1135 may have additional elements, which are omitted for simplicity, such as controllers, buffers (caches), drivers, repeaters, and receivers, to enable communications. Further, the local interface may include address, control, and/or data connections to enable appropriate communications among the aforementioned components.

[00331 The processor 1105 is a hardware device for executing software, particularly that stored in memory 1110. The processor 1105 can be any custom made or commercially available processor, a central processing unit (CPU), an auxiliary processor among several processors associated with the computer 1101, a semiconductor based microprocessor (in the form of a microchip or chip set), a macroprocessor, or generally any device for executing software instructions.

100341 The memory 1110 can include any one or combination of volatile memory elements (e.g., random access memory (RAM, such as DRAM, SRAM, SDRAM, etc.)) and nonvolatile memory elements (e.g., ROM, erasable programmable read only memory (EPROM), electronically erasable programmable read only memory (EEPROM), programmable read only memory (PROM), tape, compact disc read only memory (CD-ROM), disk, diskette, cartridge, cassette or the like, etc.). Moreover, the memory 1110 may incorporate electronic, magnetic, optical, and/or other types of storage media. Note that the memory 1110 can have a distributed architecture, where various components are situated remote from one another, but can be accessed by the processor 1105.

[0035] The software in memory 1110 may include one or more separate programs, each of which comprises an ordered listing of executable instructions for implementing logical functions. In the example of FIG. 11, the software in the memory 1110 includes the avatar rescaling methods described herein in accordance with exemplary embodiments and a suitable operating system (OS) 1111. The operating system 1111 essentially controls the execution of other computer programs, such the avatar rescaling systems and methods described herein, and provides scheduling, input-output control, file and data management, memory management, and communication control and related services. The software in the memory 1110 may also include applications for enabling interoperability between the virtual worlds such as VWA and VWB, including any standards and data structures for rescaling as described herein.

[00361 The avatar rescaling methods described herein may be in the form of a source program, executable program (object code), script, or any other entity comprising a set of instructions to be performed. When a source program, then the program needs to be translated via a compiler, assembler, interpreter, or the like, which may or may not be included within the memory 1110, so as to operate properly in connection with the OS 1111.
Furthermore, the avatar rescaling methods can be written as an object oriented programming language, which has classes of data and methods, or a procedure programming language, which has routines, subroutines, and/or functions.

100371 In exemplary embodiments, a conventional keyboard 1150 and mouse 1155 can be coupled to the input/output controller 1135. Other output devices such as the I/O devices 1140, 1145 may include input devices, for example but not limited to a printer, a scanner, microphone, and the like. Finally, the I/O devices 1140, 1145 may further include devices that communicate both inputs and outputs, for instance but not limited to, a network interface card (NIC) or modulator/demodulator (for accessing other files, devices, systems, or a network), a radio frequency (RF) or other transceiver, a telephonic interface, a bridge, a router, and the like.
The system 1100 can further include a display controller 1125 coupled to a display 1130. In exemplary embodiments, the system 1100 can further include a network interface 1160 for coupling to a network 1165. The network 1165 can be an IP-based network for communication between the computer 1101 and any external server, client and the like via a broadband connection. The network 1165 transmits and receives data between the computer 1101 and external systems. In exemplary embodiments, network 1165 can be a managed IP
network administered by a service provider. The network 1165 may be implemented in a wireless fashion, e.g., using wireless protocols and technologies, such as WiFi, WiMax, etc. The network 1165 can also be a packet-switched network such as a local area network, wide area network, metropolitan area network, Internet network, or other similar type of network environment. The network 1165 may be a fixed wireless network, a wireless local area network (LAN), a wireless wide area network (WAN) a personal area network (PAN), a virtual private network (VPN), intranet or other suitable network system and includes equipment for receiving and transmitting signals.

100381 If the computer 1101 is a PC, workstation, intelligent device or the like, the software in the memory 1110 may further include a basic input output system (BIOS) (omitted for simplicity). The BIOS is a set of essential software routines that initialize and test hardware at startup, start the OS 1111, and support the transfer of data among the hardware devices. The BIOS is stored in ROM so that the BIOS can be executed when the computer 1101 is activated.
[00391 When the computer 1101 is in operation, the processor 1105 is configured to execute software stored within the memory 1110, to communicate data to and from the memory 1110, and to generally control operations of the computer 1101 pursuant to the software. The avatar rescaling methods described herein and the OS 1111, in whole or in part, but typically the latter, are read by the processor 1105, perhaps buffered within the processor 1105, and then executed.

100401 When the systems and methods described herein are implemented in software, as is shown in FIG. 11, it the methods can be stored on any computer readable medium, such as storage 1120, for use by or in connection with any computer related system or method.

[00411 As will be appreciated by one skilled in the art, aspects of the present invention may be embodied as a system, method or computer program product. Accordingly, aspects of the present invention may take the form of an entirely hardware embodiment, an entirely software embodiment (including firmware, resident software, micro-code, etc.) or an embodiment combining software and hardware aspects that may all generally be referred to herein as a "circuit," "module" or "system." Furthermore, aspects of the present invention may take the form of a computer program product embodied in one or more computer readable medium(s) having computer readable program code embodied thereon.

[00421 Any combination of one or more computer readable medium(s) may be utilized.
The computer readable medium may be a computer readable signal medium or a computer readable storage medium. A computer readable storage medium may be, for example, but not limited to, an electronic, magnetic, optical, electromagnetic, infrared, or semiconductor system, apparatus, or device, or any suitable combination of the foregoing. More specific examples (a non-exhaustive list) of the computer readable storage medium would include the following: an electrical connection having one or more wires, a portable computer diskette, a hard disk, a random access memory (RAM), a read-only memory (ROM), an erasable programmable read-only memory (EPROM or Flash memory), an optical fiber, a portable compact disc read-only memory (CD-ROM), an optical storage device, a magnetic storage device, or any suitable combination of the foregoing. In the context of this document, a computer readable storage medium may be any tangible medium that can contain, or store a program for use by or in connection with an instruction execution system, apparatus, or device.

[00431 A computer readable signal medium may include a propagated data signal with computer readable program code embodied therein, for example, in baseband or as part of a carrier wave. Such a propagated signal may take any of a variety of forms, including, but not limited to, electro-magnetic, optical, or any suitable combination thereof. A
computer readable signal medium may be any computer readable medium that is not a computer readable storage medium and that can communicate, propagate, or transport a program for use by or in connection with an instruction execution system, apparatus, or device.

[00441 Program code embodied on a computer readable medium may be transmitted using any appropriate medium, including but not limited to wireless, wireline, optical fiber cable, RF, etc., or any suitable combination of the foregoing.

[00451 Computer program code for carrying out operations for aspects of the present invention may be written in any combination of one or more programming languages, including an object oriented programming language such as Java, Smalltalk, C++ or the like and conventional procedural programming languages, such as the "C" programming language or similar programming languages. The program code may execute entirely on the user's computer, partly on the user's computer, as a stand-alone software package, partly on the user's computer and partly on a remote computer or entirely on the remote computer or server.
In the latter scenario, the remote computer may be connected to the user's computer through any type of network, including a local area network (LAN) or a wide area network (WAN), or the connection may be made to an external computer (for example, through the Internet using an Internet Service Provider).

[00461 Aspects of the present invention are described below with reference to flowchart illustrations and/or block diagrams of methods, apparatus (systems) and computer program products according to embodiments of the invention. It will be understood that each block of the flowchart illustrations and/or block diagrams, and combinations of blocks in the flowchart illustrations and/or block diagrams, can be implemented by computer program instructions.

These computer program instructions may be provided to a processor of a general purpose computer, special purpose computer, or other programmable data processing apparatus to produce a machine, such that the instructions, which execute via the processor of the computer or other programmable data processing apparatus, create means for implementing the functions/acts specified in the flowchart and/or block diagram block or blocks.

[00471 These computer program instructions may also be stored in a computer readable medium that can direct a computer, other programmable data processing apparatus, or other devices to function in a particular manner, such that the instructions stored in the computer readable medium produce an article of manufacture including instructions which implement the function/act specified in the flowchart and/or block diagram block or blocks.

[00481 The computer program instructions may also be loaded onto a computer, other programmable data processing apparatus, or other devices to cause a series of operational steps to be performed on the computer, other programmable apparatus or other devices to produce a computer implemented process such that the instructions which execute on the computer or other programmable apparatus provide processes for implementing the functions/acts specified in the flowchart and/or block diagram block or blocks.

[00491 The flowchart and block diagrams in the Figures illustrate the architecture, functionality, and operation of possible implementations of systems, methods and computer program products according to various embodiments of the present invention. In this regard, each block in the flowchart or block diagrams may represent a module, segment, or portion of code, which comprises one or more executable instructions for implementing the specified logical function(s). It should also be noted that, in some alternative implementations, the functions noted in the block may occur out of the order noted in the figures.
For example, two blocks shown in succession may, in fact, be executed substantially concurrently, or the blocks may sometimes be executed in the reverse order, depending upon the functionality involved. It will also be noted that each block of the block diagrams and/or flowchart illustration, and combinations of blocks in the block diagrams and/or flowchart illustration, can be implemented by special purpose hardware-based systems that perform the specified functions or acts, or combinations of special purpose hardware and computer instructions.

[00501 In exemplary embodiments, where the avatar rescaling methods are implemented in hardware, the avatar rescaling methods described herein can implemented with any or a combination of the following technologies, which are each well known in the art: a discrete logic circuit(s) having logic gates for implementing logic functions upon data signals, an application specific integrated circuit (ASIC) having appropriate combinational logic gates, a programmable gate array(s) (PGA), a field programmable gate array (FPGA), etc.

[00511 Technical effects include enabling avatar scaling interoperability between virtual worlds such that an avatar from one virtual world can seamlessly enter another virtual world at scales appropriate for the entered virtual world.

[00521 The terminology used herein is for the purpose of describing particular embodiments only and is not intended to be limiting of the invention. As used herein, the singular forms "a", "an" and "the" are intended to include the plural forms as well, unless the context clearly indicates otherwise. It will be further understood that the terms "comprises"
and/or "comprising," when used in this specification, specify the presence of stated features, integers, steps, operations, elements, and/or components, but do not preclude the presence or addition of one ore more other features, integers, steps, operations, element components, and/or groups thereof.

[00531 The corresponding structures, materials, acts, and equivalents of all means or step plus function elements in the claims below are intended to include any structure, material, or act for performing the function in combination with other claimed elements as specifically claimed.
The description of the present invention has been presented for purposes of illustration and description, but is not intended to be exhaustive or limited to the invention in the form disclosed.
Many modifications and variations will be apparent to those of ordinary skill in the art without departing from the scope and spirit of the invention. The embodiment was chosen and described in order to best explain the principles of the invention and the practical application, and to enable others of ordinary skill in the art to understand the invention for various embodiments with various modifications as are suited to the particular use contemplated 100541 The flow diagrams depicted herein are just one example. There may be many variations to this diagram or the steps (or operations) described therein without departing from the spirit of the invention. For instance, the steps may be performed in a differing order or steps may be added, deleted or modified. All of these variations are considered a part of the claimed invention.

[00551 While the preferred embodiment to the invention had been described, it will be understood that those skilled in the art, both now and in the future, may make various improvements and enhancements which fall within the scope of the claims which follow. These claims should be construed to maintain the proper protection for the invention first described.

Claims (20)

What is claimed is:
1. A method for teleporting an avatar from a first virtual world residing on a first computer system to a second virtual world residing on a second computer system, the method comprising:

determining whether dimensions of the second virtual world are compatible with dimensions of the first virtual world;

in response to a determination that the dimensions of the second virtual world are not compatible with the dimensions of the first virtual world, performing an interoperability rescaling between the first virtual world and the second virtual world; and transferring the avatar from the first virtual world to the second virtual world.
2. The method as claimed in Claim 1 wherein the interoperability rescaling comprises rescaling the avatar via tagged common objects as a base for identifying a scale factor, the scale factor determining the rescaling of the avatar.
3. The method as claimed in Claim 2, wherein the scale factor is given by:
p=m*(q/n), where p is a dimension of the avatar in the second virtual world, m is a dimension of the avatar in the first virtual world, q is a dimension of a tagged object in the second virtual world and n is a dimension of a tagged object in the first virtual world.
4. The method as claimed in Claim 1 wherein the interoperability rescaling comprises rescaling the environment via tagged common objects as a base for identifying a scale factor, the scale factor determining the rescaling of the environment.
5. The method as claimed in Claim 4 wherein the scale factor is given by q=n*(p/m), where q is a dimension of a tagged object in the second virtual world, n is a dimension of a tagged object in the first virtual world, p is a dimension of the avatar in the second virtual world, and m is a dimension of the avatar in the first virtual world.
6. The method as claimed in Claim 1 wherein the interoperability rescaling comprises rescaling the avatar based on an average size of avatars in the first virtual world and avatars in the second virtual world for identifying a scale factor, the scale factor determining the rescaling of the avatar.
7. The method as claimed in Claim 6 wherein the scale factor is given by p=m*(y/x), where p is a dimension of the avatar in the second virtual world, m is a dimension of the avatar in the first virtual world, y is an average dimension of avatars in the first virtual world and x is an average dimension of avatars in the second virtual world.
8. The method as claimed in Claim 1 wherein the interoperability rescaling comprises rescaling the avatar based on a standard scale.
9. The method as claimed in Claim 8 further comprising:

converting a dimension of the avatar to the standard scale to generate a standardized dimension; and converting the standardized dimension to a dimension for the avatar in the second virtual world.
10. The method as claimed in Claim 1 wherein the interoperability rescaling comprises rescaling the avatar based on a real world counterpart for identifying a real world ratio, the real world ratio determining the rescaling of the avatar.
11. The method as claimed in Claim 10 wherein the first computer system and the second computer system are the same computer system.
12. A computer program product for teleporting an avatar from a first virtual world residing on a first computer system to a second virtual world residing on a second computer system, the computer program product including computer readable medium having instructions stored thereon for causing the first and second computer systems to implement a method, the method comprising:

determining whether dimensions of the second virtual world are compatible with dimensions of the first virtual world;

in response to a determination that the dimensions of the second virtual world are not compatible with the dimensions of the first virtual world, performing an interoperability rescaling between the first virtual world and the second virtual world; and transferring the avatar from the first virtual world to the second virtual world.
13. The computer program product as claimed in Claim 12 wherein the interoperability rescaling comprises rescaling the avatar via tagged common objects as a base for identifying a scale factor, the scale factor determining the rescaling of the avatar, wherein the scale factor is given by: p=m*(q/n), where p is a dimension of the avatar in the second virtual world, m is a dimension of the avatar in the first virtual world, q is a dimension of a tagged object in the second virtual world and n is a dimension of a tagged object in the first virtual world.
14. The computer program product as claimed in Claim 12 wherein the interoperability rescaling comprises rescaling the environment via tagged common objects as a base for identifying a scale factor, the scale factor determining the rescaling of the environment, wherein the scale factor is given by q=n*(p/m), where q is a dimension of a tagged object in the second virtual world, n is a dimension of a tagged object in the first virtual world, p is a dimension of the avatar in the second virtual world, and m is a dimension of the avatar in the first virtual world.
15. The computer program product as claimed in Claim 12 wherein the interoperability rescaling comprises rescaling the avatar based on an average size of avatars in the first virtual world and avatars in the second virtual world for identifying a scale factor, the scale factor determining the rescaling of the avatar, wherein the scale factor is given by p=m*(y/x), where p is a dimension of the avatar in the second virtual world, m is a dimension of the avatar in the first virtual world, y is an average dimension of avatars in the first virtual world and x is an average dimension of avatars in the second virtual world.
16. The computer program product as claimed in Claim 12 wherein the interoperability rescaling comprises rescaling the avatar based on a standard scale, and wherein a dimension of the avatar is converted to the standard scale to generate a standardized dimension, and wherein the standardized dimension is converted to a dimension for the avatar in the second virtual world.
17. The computer program product as claimed in Claim 12 wherein the interoperability rescaling comprises rescaling the avatar based on a real world counterpart for identifying a real world ratio, the real world ratio determining the rescaling of the avatar, wherein the real world ratio is given by p=q*(t/s), where p is a dimension of the avatar in the second virtual world, q is a dimension of a tagged object in the second virtual world, t is a dimension of a real world counterpart of the avatar, and s is a dimension of a real world counterpart of the tagged object in the second virtual world.
18. A system for teleporting an avatar from a first virtual world residing on a first computer system to a second virtual world residing on a second computer system, the system comprising:

a processor;

a data structure including dimension compatibility between the first virtual world and the second virtual world; and processor executable instructions for carrying out the steps of.

determining whether dimensions of the second virtual world are compatible with dimensions of the first virtual world;

in response to a determination that the dimensions of the second virtual world are not compatible with the dimensions of the first virtual world, performing an interoperability rescaling between the first virtual world and the second virtual world; and transferring the avatar from the first virtual world to the second virtual world.
19. The systems as claimed in Claim 18 wherein the avatar is rescaled based on at least one of tagged objects and avatars in the second virtual world.
20. The system as claimed in Claim 18 wherein the avatar is rescaled based on at least one of a standard scale and real world counterparts.
CA2686991A 2009-12-03 2009-12-03 Rescaling an avatar for interoperability in 3d virtual world environments Abandoned CA2686991A1 (en)

Priority Applications (2)

Application Number Priority Date Filing Date Title
CA2686991A CA2686991A1 (en) 2009-12-03 2009-12-03 Rescaling an avatar for interoperability in 3d virtual world environments
US12/958,119 US8878877B2 (en) 2009-12-03 2010-12-01 Rescaling for interoperability in virtual environments

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CA2686991A CA2686991A1 (en) 2009-12-03 2009-12-03 Rescaling an avatar for interoperability in 3d virtual world environments

Publications (1)

Publication Number Publication Date
CA2686991A1 true CA2686991A1 (en) 2011-06-03

Family

ID=44114203

Family Applications (1)

Application Number Title Priority Date Filing Date
CA2686991A Abandoned CA2686991A1 (en) 2009-12-03 2009-12-03 Rescaling an avatar for interoperability in 3d virtual world environments

Country Status (2)

Country Link
US (1) US8878877B2 (en)
CA (1) CA2686991A1 (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20180038521A (en) * 2015-12-03 2018-04-16 구글 엘엘씨 Augmentation and / or teleportation in a virtual reality environment

Families Citing this family (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8422825B1 (en) 2008-11-05 2013-04-16 Hover Inc. Method and system for geometry extraction, 3D visualization and analysis using arbitrary oblique imagery
KR20100138700A (en) * 2009-06-25 2010-12-31 삼성전자주식회사 Method and apparatus for processing virtual world
US11670046B2 (en) 2013-07-23 2023-06-06 Hover Inc. 3D building analyzer
US10861224B2 (en) 2013-07-23 2020-12-08 Hover Inc. 3D building analyzer
US10062354B2 (en) 2014-10-10 2018-08-28 DimensionalMechanics, Inc. System and methods for creating virtual environments
US10163420B2 (en) 2014-10-10 2018-12-25 DimensionalMechanics, Inc. System, apparatus and methods for adaptive data transport and optimization of application execution
FR3074937B1 (en) * 2017-12-11 2021-09-03 Orange METHOD AND DEVICE FOR PROCESSING DATA OF A VIRTUAL REALITY ENVIRONMENT IN NESTED SPACES
KR102601622B1 (en) * 2017-12-14 2023-11-10 매직 립, 인코포레이티드 Contextual rendering of virtual avatars
CN109697755B (en) * 2018-12-24 2023-07-21 深圳供电局有限公司 Augmented reality display method and device for power transmission tower model and terminal equipment
CN111729306A (en) * 2020-06-24 2020-10-02 网易(杭州)网络有限公司 Game character transmission method, device, electronic equipment and storage medium

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
GB9721667D0 (en) * 1997-10-14 1997-12-10 Philips Electronics Nv Virtual environment navigation aid
JP3368226B2 (en) * 1999-03-26 2003-01-20 キヤノン株式会社 Information processing method and information processing apparatus
WO2001035052A1 (en) * 1999-11-12 2001-05-17 Armstrong Brian S Robust landmarks for machine vision and methods for detecting same
US8713181B2 (en) * 2007-08-03 2014-04-29 International Business Machines Corporation Method for transferring inventory between virtual universes
US8881254B2 (en) * 2007-11-02 2014-11-04 Magtek, Inc. Method and system for managing virtual objects in a network

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20180038521A (en) * 2015-12-03 2018-04-16 구글 엘엘씨 Augmentation and / or teleportation in a virtual reality environment
US10338687B2 (en) * 2015-12-03 2019-07-02 Google Llc Teleportation in an augmented and/or virtual reality environment
US10558274B2 (en) 2015-12-03 2020-02-11 Google Llc Teleportation in an augmented and/or virtual reality environment
KR102098316B1 (en) * 2015-12-03 2020-04-07 구글 엘엘씨 Teleportation in an augmented and/or virtual reality environment

Also Published As

Publication number Publication date
US20110164059A1 (en) 2011-07-07
US8878877B2 (en) 2014-11-04

Similar Documents

Publication Publication Date Title
US8878877B2 (en) Rescaling for interoperability in virtual environments
US11972529B2 (en) Augmented reality system
US11361493B2 (en) Semantic texture mapping system
JP7440532B2 (en) Managing and displaying web pages in a virtual three-dimensional space using a mixed reality system
US20200004598A1 (en) Server kit and methods therefor
US20160293133A1 (en) System and methods for generating interactive virtual environments
US9724610B2 (en) Creation and prioritization of multiple virtual universe teleports in response to an event
JP7357706B2 (en) Avatar generator and computer program
JP7128188B2 (en) 3D MODEL CONSTRUCTION METHOD, APPARATUS AND SYSTEM
JP6104246B2 (en) Remote preconfiguration of computing devices
US9223399B2 (en) Translation of gesture responses in a virtual world
US20210217067A1 (en) Systems and methods to control access to components of virtual objects
JP2009134653A (en) Access control method, server device and system
JP2014135013A (en) Image transfer method, server apparatus, and program
US20160358364A1 (en) Automatic Rendering Of 3D Sound
US9710575B2 (en) Hybrid platform-dependent simulation interface
US20180373411A1 (en) Systems and methods for seat selection in virtual reality
JP2022034560A (en) Method and system for displaying large 3d model on remote device
KR101425672B1 (en) Building Information Modeling Based Communication System, Building Information Modeling Based Communication Server, and Building Information Modeling Based Communication Method in Mobile Terminal and Recording Medium Thereof
JP2019532385A (en) System for configuring or modifying a virtual reality sequence, configuration method, and system for reading the sequence
US8972476B2 (en) Evidence-based virtual world visualization
CN115174993B (en) Method, apparatus, device and storage medium for video production
US20200285977A1 (en) Asset tracking system and methods
US20220294827A1 (en) Virtual reality gamification-based security need simulation and configuration in any smart surrounding
DE MIRANDA DEVELOPING SUPPORT FOR THE HERITAGE DIGITAL TWIN IN CONSERVATION-3D

Legal Events

Date Code Title Description
FZDE Discontinued

Effective date: 20121203

FZDE Discontinued

Effective date: 20121203