US20010016806A1 - Apparatus and method for interacting with a simulated 3D interface to an operating system operative to control computer resources - Google Patents
Apparatus and method for interacting with a simulated 3D interface to an operating system operative to control computer resources Download PDFInfo
- Publication number
- US20010016806A1 US20010016806A1 US09/750,679 US75067901A US2001016806A1 US 20010016806 A1 US20010016806 A1 US 20010016806A1 US 75067901 A US75067901 A US 75067901A US 2001016806 A1 US2001016806 A1 US 2001016806A1
- Authority
- US
- United States
- Prior art keywords
- computer
- operating system
- computer resources
- operative
- resources
- 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
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/44—Arrangements for executing specific programs
- G06F9/455—Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/44—Arrangements for executing specific programs
- G06F9/455—Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
- G06F9/45504—Abstract machines for programme code execution, e.g. Java virtual machine [JVM], interpreters, emulators
- G06F9/45508—Runtime interpretation or emulation, e g. emulator loops, bytecode interpretation
- G06F9/45512—Command shells
Definitions
- the logical structure includes a hierarchy.
- FIG. 1 is a simplified functional block diagram of a 3D operating system constructed and operative in accordance with a preferred embodiment of the present invention
- FIG. 3 is an illustration of a computer resource database including, inter alia, a main folder, a tree having a subtree representing the programs section of FIG. 2 and also including other folders which are descendants of the main folder;
- FIG. 4B is an illustration of another initial projection, i.e. a projection into 2D, of the same 3D virtual scene including a 3D representation of relationships between computer resources, the projection being taken from the same point of view (e.g. the center of a hexagonal space) but looking in a different direction, e.g. the opposite direction;
- FIG. 5A is an illustration of the virtual scene after a user has come close enough to the “office” door to enable the system to discern that the user wishes to select “office” and consequently, to open the “office” door;
- FIG. 5C is an illustration of the 3D scene from the same point of view and in the same camera direction as in FIG. 5B, wherein the 3D scene has changed in that an object has been selected and an animation of that object is being performed in order to confirm that selection;
- FIGS. 11 A- 11 B taken together, form a simplified flowchart illustration of a preferred method for performing the “update camera location” step of FIG. 7B;
- FIG. 12A is a simplified block diagram of a first modification of the present invention in which at least a portion of the computer resources are located in a remote computer whereas a local computer 820 includes some or all of the apparatus of FIG. 1;
- An “operating system” is a system which resides in a general purpose computer and whose function is to run other programs, preferably including prevention of interference between concurrently running programs and concurrent users.
- the operating system is operative to perform one, some and preferably all of the following tasks: recognition of user input, sending output to a display screen, keeping track of files and directories on disk, controlling peripheral devices such as disk drives and printers, and maintaining security by ensuring that unauthorized users do not access the resources of the general purpose computer.
- FIG. 1 is a simplified functional block diagram of a 3D operating system.
- 3D operating system is intended to include any operating system (OS) having a 3D user interface.
- OS operating system
- the 3D renderer 20 is operative to render the 3D virtual scene.
- the renderer 20 generates a 2D image on a computer screen display comprising a perspective 3D-to-2D projection of the 3D virtual scene.
- the 2D screen display image is updated by the renderer to reflect changes in the point of view from which the user views the 3D virtual scene.
- updating is done in real time such that the user sees the changes in point of view as he effects these changes.
- the 3D renderer may, for example, comprise a RenderWare API (application programming interface) commercially available from Criterion Software Ltd., or a Direct3D, commercially available from Microsoft.
- the computer display image is updated to correspond to the new point of view.
- the OS/3D interface 30 accesses computer resource database 40 to retrieve newly visible computer resources.
- the OS/3D interface 30 then typically controls 3D renderer 20 to generate a new screen display image including a 3D representation of the newly visible computer resources.
- the OS/3D interface 30 also converts user selections of computer resources into commands to the operating system 10 .
- the computer resources managed by the operating system may include a wordprocessor such as MS-Word and the 3D virtual world may include a 3D typewriter object which represents MS-Word.
- the OS/3D interface typically issues the following command to the operating system 10 :
- the computer resource database may comprise a tree having a subtree representing the programs section under MS-Windows 95.
- the sibling relationship between six folders is illustrated by representing the six folders as six respective doors on six respective walls of an initial hexagonal room. Three of the doors are visible when looking in the direction of FIG. 4A and the remaining three doors are visible when looking in the direction of FIG. 4B.
- FIG. 5B is an illustration of a new projection, i.e. a projection into 2D, from a new point of view, of the 3D virtual scene shown in part in FIGS. 4 A- 4 B, wherein the new point of view is within the “office” room.
- FIG. 2 An example of a tree data structure as generated in step 330 is shown in FIG. 2.
- folder-type nodes are included in a “single” box and application-type nodes are included in a “double” box.
- FIG. 10 is a simplified flowchart illustration of a loop, which is preferably performed, in step 180 of FIG. 7A, for a each of the sons of the database 40 node pointed at by the Resource pointer.
- a new object is projected into the 3D virtual model, wherein the new object represents the application.
- the overhead projector is an example of an object which represents a particular application, namely PowerPoint.
- the new object may be projected onto any suitable location within the 3D virtual model. For example, as implemented in step 174 of FIG.
- FIG. 10 is an implementation suitable for one particular embodiment of the present invention in which nodes in the tree structure of the computer resource database are represented by walls, and there are two types of nodes: parents and leaves (also termed herein “folders” and “applications”, respectively). Parents are represented by doors in the appropriate walls and sons are represented by objects adjacent the appropriate doors, e.g. objects inside a room whose entry door is the door representing the parent.
- parents are represented by doors in the appropriate walls
- sons are represented by objects adjacent the appropriate doors, e.g. objects inside a room whose entry door is the door representing the parent.
- many alternative schemes of illustrations may be employed.
- An application may be represented by any element of the 3D virtual world and not necessarily by an object.
- an application may be represented by a hall connecting two or more rooms.
- Another example is that an application may be represented by a room and commands or other elements within the application may be represented by objects within the room.
- Word may be represented by a room and Rename, Edit and other commands within Word may be represented by objects within the room representing Word.
- FIG. 12B illustrates another modification of the embodiment as shown in the previous figures in which the apparatus of FIG. 1 resides in a local computer (client) 840 whereas a remote computer (server) 850 controls an array of n auxiliary computers 860 .
- the resources of the n auxiliary computers are controlled by the apparatus of FIG. 1 via a network or other suitable communication medium connecting local computer 840 to remote computer 850 and connecting remote computer 850 to auxiliary computers 860 .
- Some of the computer resources controlled by the apparatus of FIG. 1 may also reside in local computer 820 and/or in remote computer 850 .
Abstract
A computer system including computer resources, an operating system operative to control said computer resources; and a 3D interface enabling a user to interact with the operating system and operative to provide a plurality of display representations of at least a portion of the computer resources from a corresponding plurality of different viewpoints.
Description
- The present invention relates to operating systems and methods pertaining thereto.
- 3D games, such as Doom and Quake, are well known.
- 3D simulators, including RT3D (real time three dimensional) driving simulators, are known, such as Microsoft's Flight Simulator for Windows 95 and Mirage's ATF Flight Simulator.
- CAD (computer-aided design) and CAM (computer-aided manufacturing) are both well-known 3D systems.
- VRML (virtual reality modelling language) is described inDesigning 3D Graphics, by Josh White, Wiley & Sons, 1996, as being “the first established, open standard for real-
time 3D graphics on the Internet . . . . It supports all the basic things we need: arbitrary 3DS-style meshes, textures, and lights . . . . The addition of animation capabilities should mare it a strong contender for a general purpose RT3D modelling file format standard.” (pp. 332-333). VRML 1.0 and VRML 2.0 do not provide real time interactive objects in the virtual world and does not allow objects on screen to move freely. - Many different operating systems are known such as Windows 95 and other members of the Microsoft Windows family of operating systems, DOS, OS/2, and Unix. Conventional operating systems are described in PC Webopaedia, Sandy Bay Software, Inc., at http://www.pcwebopedia.com/index.html.
- The disclosures of all publications mentioned in the specification and of the publications cited therein are hereby incorporated by reference.
- The present invention seeks to provide a 3D operating system.
- There is thus provided, in accordance with a preferred embodiment of the present invention, a computer system including computer resources, an operating system operative to control the computer resources, and a 3D interface enabling a user to interact with the operating system and providing at least one screen display image including a representation of at least a portion of the computer resources, wherein substantially all of the representation is three-dimensional.
- Also provided, in accordance with another preferred embodiment of the present invention, is a computer system including computer resources, an operating system operative to control the computer resources, and a 3D interface enabling a user to interact with the operating system and operative to provide a plurality of display representations of at least a portion of the computer resources from a corresponding plurality of different viewpoints.
- Still further in accordance with a preferred embodiment of the present invention, the 3D motion simulator is operative to generate the multiplicity of views in real time.
- Additionally provided, in accordance with another preferred embodiment of the present invention, is operating system apparatus useful in conjunction with a population of computer systems each having a different configuration of computer resources, the apparatus including an operating system operative to control the computer resources, and a 3D interface enabling a user to interact with the operating system and operative to provide, for each specific computer system having a specific computer resource configuration, at least one 3D display representation of at least a portion of the specific computer resource configuration.
- Further in accordance with a preferred embodiment of the present invention, the computer resource configuration includes at least one software resource and/or at least one hardware resource.
- Further in accordance with a preferred embodiment of the present invention, the 3D interface includes a 3D motion simulator operative to provide a multiplicity of views of a 3D representation of the computer resources as seen from a corresponding multiplicity of viewpoints within the 3D representation of the computer resources, and a viewpoint selection receiver operative to receive a multiplicity of selected viewpoints from a user of the computer system, and wherein the 3D motion simulator generates views corresponding to the selected viewpoints.
- Still further in accordance with a preferred embodiment of the present invention, the computer resources include applications.
- Further in accordance with a preferred embodiment of the present invention, the viewpoints include at least two viewpoints within a 3D representation of at least one of the applications.
- Still further in accordance with a preferred embodiment of the present invention, the computer resources have a logical structure and wherein the 3D representation includes a 3D representation of the logical structure.
- Further in accordance with a preferred embodiment of the present invention, the logical structure includes a hierarchy.
- Also provided, in accordance with a preferred embodiment of the present invention, is a computer system including computer resources, an operating system operative to control the computer resources, and a 3D interface enabling a user to interact with the operating system and providing a sequence of screen display images together generating a 3D representation of substantially all of the computer resources.
- Further in accordance with a preferred embodiment of the present invention, the computer system includes a first computer, such as a server, which includes the operating system, and a second computer which includes the 3D interface. Preferably, at least some of the computer resources are located in the first computer and/or at least some of the computer resources are located in computers served by the server.
- Further provided, in accordance with still another preferred embodiment of the present invention, is a main computer system for controlling a plurality of computer resources residing in at least one second computers, the main computer apparatus including electronic storage apparatus including a computer resource database storing information regarding relationships between the plurality of computer resources, and an operating system accessing the computer resource database in order to manipulate the plurality of computer resources and including a computer resource transfer unit, such as an FTP (File Transfer Protocol) unit, operative to transfer at least one computer resource from the at least one second computers to the electronic storage apparatus.
- Further in accordance with a preferred embodiment of the present invention, the electronic storage apparatus includes a ROM, such as a hard disk or a CD-ROM, and/or a RAM.
- Additionally provided, in accordance with still another preferred embodiment of the present invention, is a method for interacting with an operating system operative to control computer resources, the method including providing at least one screen display image including a representation of at least a portion of the computer resources, wherein substantially all of the representation is three-dimensional, and receiving at least one user input provided by a user relative to the at least one screen display image and interacting with the operating system based on the at least one user input.
- Further provided, in accordance with yet another preferred embodiment of the present invention, is a method for interacting with an operating system operative to control computer resources, the method including providing a plurality of display representations of at least a portion of the computer resources from a corresponding plurality of different viewpoints, and receiving at least one user input provided by a user relative to at least one of the plurality of display representations and interacting with the operating system based on the at least one user input.
- Still further provided, in accordance with another preferred embodiment of the present invention, is a method for interacting with an operating system useful in conjunction with a population of computer systems each having a different configuration of computer resources, wherein the operating system is operative to control the computer resources, the method including providing, for each specific computer system having a specific computer resource configuration, at least one 3D display representation of at least a portion of the specific computer resource configuration, and receiving at least one user input provided by a user relative to at least one of the plurality of display representations and interacting with the operating system based on the at least one user input.
- Also provided, in accordance with yet another preferred embodiment of the present invention, is a method for interacting with an operating system operative to control computer resources, the method including providing a sequence of screen display images together generating a 3D representation of substantially all of the computer resources, and receiving at least one user input provided by a user relative to at least one of the sequence of screen display images and interacting with the operating system based on the at least one user input.
- Additionally provided, in accordance with yet another preferred embodiment of the present invention, is a method for interacting with a plurality of computer resources residing in at least one secondary computers, through a main computer, the method including providing a computer resource database in the main computer which stores information regarding relationships between the plurality of computer resources, and transferring at least one computer resource, selected by a user reliant on the computer resource database, from the at least one secondary computers to the main computer.
- The term “database” is intended to include information, typically stored on an electronic storage device, in any format, typically but not necessarily in some type of hierarchical format, which may or may not be controlled by conventional database management or administration software. The term “database” generally refers to a collection of structured data which is typically independent of any particular application.
- The present invention will be understood and appreciated from the following detailed description, taken in conjunction with the drawings in which:
- FIG. 1 is a simplified functional block diagram of a 3D operating system constructed and operative in accordance with a preferred embodiment of the present invention;
- FIG. 2 is an example of the structure of the programs section of a typical array of computer resources defined within a MS-Windows 95 operating system.
- FIG. 3 is an illustration of a computer resource database including, inter alia, a main folder, a tree having a subtree representing the programs section of FIG. 2 and also including other folders which are descendants of the main folder;
- FIG. 4A is an illustration of an initial projection, i.e. a projection into 2D, from an initial point of view, of a 3D virtual scene including a 3D representation of relationships between computer resources;
- FIG. 4B is an illustration of another initial projection, i.e. a projection into 2D, of the same 3D virtual scene including a 3D representation of relationships between computer resources, the projection being taken from the same point of view (e.g. the center of a hexagonal space) but looking in a different direction, e.g. the opposite direction;
- FIG. 5A is an illustration of the virtual scene after a user has come close enough to the “office” door to enable the system to discern that the user wishes to select “office” and consequently, to open the “office” door;
- FIG. 5B is an illustration of a new projection, i.e. a projection into 2D, from a new point of view, of the 3D virtual scene shown in part in FIGS.4A-4B, wherein the new point of view is within one of the rooms whose entry doors are illustrated in FIGS. 4A-4B;
- FIG. 5C is an illustration of the 3D scene from the same point of view and in the same camera direction as in FIG. 5B, wherein the 3D scene has changed in that an object has been selected and an animation of that object is being performed in order to confirm that selection;
- FIGS.6A-6B, taken together, form a simplified flowchart illustration of a preferred method of operation for a 3D operating system constructive and operative in accordance with a preferred embodiment of the present invention;
- FIGS.7A-7B, taken together, form a simplified flowchart illustration of a preferred method of operation for a particular implementation of a 3D operating system which is useful in conjunction with a conventional Windows 95 operating system;
- FIGS.8A-8C, taken together, form a simplified flowchart illustration of a preferred method for performing the “init computer resource database” step of FIGS. 7A-7B;
- FIG. 9 is a simplified flowchart illustration of a preferred method for performing the “
init 3D scene” step of FIG. 7A; - FIG. 10 is a simplified flowchart illustration of a preferred method for performing the update model step performed, in FIG. 7A, for each of the sons of a current node in
database 10; - FIGS.11A-11B, taken together, form a simplified flowchart illustration of a preferred method for performing the “update camera location” step of FIG. 7B;
- FIG. 12A is a simplified block diagram of a first modification of the present invention in which at least a portion of the computer resources are located in a remote computer whereas a
local computer 820 includes some or all of the apparatus of FIG. 1; and - FIG. 12B illustrates another modification of the present invention in which some or all of the apparatus of FIG. 1 resides in a local computer whereas a remote computer associated with the local computer controls an, array of n auxiliary computers in which reside computer resources controlled by the apparatus of FIG. 1.
- A “3D operating system” is a computerized system which includes a conventional operating system and a 3D user interface to that operating system.
- An “operating system” is a system which resides in a general purpose computer and whose function is to run other programs, preferably including prevention of interference between concurrently running programs and concurrent users. Typically, the operating system is operative to perform one, some and preferably all of the following tasks: recognition of user input, sending output to a display screen, keeping track of files and directories on disk, controlling peripheral devices such as disk drives and printers, and maintaining security by ensuring that unauthorized users do not access the resources of the general purpose computer.
- Classes of operating system include multi-user, multiprocessing, multitasking, multithreading and real-time.
- Reference is now made to FIG. 1 which is a simplified functional block diagram of a 3D operating system. The term “3D operating system is intended to include any operating system (OS) having a 3D user interface.
- The computerized apparatus of FIG. 1 includes an
operating system 10 operative to manage a plurality of computer resources typically although not necessarily having a hierarchy relationship between them. - As shown in FIG. 1, the 3D operating system typically comprises a
conventional operating system 10, a3D renderer 20, a OS/3D-display interface 30, interfacing between the3D renderer 20 and theconventional operating system 10, and acomputer resource database 40 serving theinterface unit 30. - The
computer resource database 40 typically stores information defining a structural relationship between the computer resources managed by theconventional operating system 10. Some or all of this structural relationship may merely reflect an existing structural relationship between the computer resources which is imposed by the operating system. Alternatively, some or all of the structural relationship defined by the computer resource database may be unrelated to, or go beyond, any existing structural relationship imposed by the operating system. - The apparatus of FIG. 1 is operative to provide a 3D virtual scene including a 3D representation of relationships between computer resources (not shown) managed by the
conventional operating system 10. The user's interaction with the computer resources is represented as motion of a “point of view” of the 3D virtual scene, also termed herein “camera 15” (FIGS. 4A-4B). - The
3D renderer 20 is operative to render the 3D virtual scene. Typically, therenderer 20 generates a 2D image on a computer screen display comprising aperspective 3D-to-2D projection of the 3D virtual scene. Typically, the 2D screen display image is updated by the renderer to reflect changes in the point of view from which the user views the 3D virtual scene. Typically, updating is done in real time such that the user sees the changes in point of view as he effects these changes. The 3D renderer may, for example, comprise a RenderWare API (application programming interface) commercially available from Criterion Software Ltd., or a Direct3D, commercially available from Microsoft. - The OS/
3D interface 30 is operative to monitor user-initiated motion ofcamera 15 within the 3D virtual scene. Camera motion is typically implemented by motion of a user input device such as a mouse. - For example, when a user moves a mouse from one screen location to another, this generates “camera motion”, in that the user's old “point of view” is replaced by a new “point of view” in which computer resources which were previously out of sight now come into the field of view whereas computer resources which were previously visible now exit the field of view.
- When camera motion is detected by the OS/
3D interface 30, the computer display image is updated to correspond to the new point of view. Typically, the OS/3D interface 30 accessescomputer resource database 40 to retrieve newly visible computer resources. The OS/3D interface 30 then typically controls3D renderer 20 to generate a new screen display image including a 3D representation of the newly visible computer resources. - The OS/
3D interface 30 also converts user selections of computer resources into commands to theoperating system 10. For example, the computer resources managed by the operating system may include a wordprocessor such as MS-Word and the 3D virtual world may include a 3D typewriter object which represents MS-Word. When the user clicks on the 3D typewriter object, the OS/3D interface typically issues the following command to the operating system 10: - “execute MS-Word”.
- According to one embodiment of the present invention, the computer resource database may comprise a tree having a subtree representing the programs section under MS-
Windows 95. - FIG. 2 is an example of the structure of the programs section of a typical array of computer resources defined within a MS-
Windows 95 operating system. - FIG. 3 is an illustration of a computer resource database including a tree having a
subtree 60 representing the same programs section. For example, thedatabase 40 may be generated by analyzing theWindows 95 registry, if the operating system isWindows 95. Thedatabase 40 may alternatively be generated by scanning all drives (hard disks, floppy disks and CD-ROMs), directory by directory. As shown, the computer resource database of FIG. 3 has a hierarchical structure in that it includes amain folder 62 having the following sons (some of which themselves have sons): aprograms folder 63, a most recently useddocuments folder 64, asettings folder 65, anoffice folder 66, anInternet folder 67 and agames folder 68. It is appreciated, of course, that the computer resource database of FIG. 3 is merely exemplary of essentially limitless possible structures ofcomputer resource database 10. - FIG. 4A is an illustration of an initial projection, i.e. a projection into 2D, from an initial point of view, of a 3D virtual scene including a 3D representation of relationships between the computer resources of FIG. 3. FIG. 4B is an illustration of another initial projection, i.e. a projection into 2D, of the same 3D virtual scene including a 3D representation of relationships between computer resources, the projection being taken from the same point of view (e.g. the center of a hexagonal space) but looking in a different direction, e.g. the opposite direction.
- As shown, the sibling relationship between six folders (Internet, Documents, Office, Settings, Games and Programs) is illustrated by representing the six folders as six respective doors on six respective walls of an initial hexagonal room. Three of the doors are visible when looking in the direction of FIG. 4A and the remaining three doors are visible when looking in the direction of FIG. 4B.
- It is appreciated that, alternatively, the doors may be otherwise arranged, e.g. as doors along one or both sides of a corridor or any other shape of room including a circular room. Furthermore, the computer resources need not be represented as elements of a building or set of buildings (rooms, doors, etc.) but alternatively may be represented as elements of any other typically hierarchical 3D scene. For example, the 3D scene may comprise one or more solar systems, whose sons are planets and whose grandsons are moons. In this case, folders may be represented as planets and applications as moons. An imaginary solar system may be used to provide more than 3 hierarchical layers, in which even moons have “sub-moons” and sub-moons have “sub-sub-moons”, etc. Alternatively, the 3D system may comprise a bio-system typically hierarchical relationships such as a jungle with multiple trees, the trees having with multiple branches, the branches having multiple leaves, etc. Essentially any illustratable 3D scene, which preferably has an illustratable hierarchical structure is suitable paradigm for displaying a user's journey among computer resources.
- FIG. 5A is an illustration of the virtual scene after a user has come close enough to the “office” door, typically as judged by a system-determined closeness criterion, to enable the system to discern that the user wishes to select “office”. As shown, the “office” door is now open, unlike in FIG. 4A, and inside the “office” room there are 3 objects, namely a
typewriter 70, anoverhead projector 72 and aneasel 74, being pictorial representations of the following applications:Word 95, PowerPoint and Excel. - FIG. 5B is an illustration of a new projection, i.e. a projection into 2D, from a new point of view, of the 3D virtual scene shown in part in FIGS.4A-4B, wherein the new point of view is within the “office” room.
- Typically, the user may select an individual object e.g. by double-clicking on the individual object with a mouse. This object selection is interpreted by the system of the present invention as a request to interact with (run, edit, rename, delete, etc.) the application represented by that object. Preferably, the system confirms each object selection e.g. by initiating an animation of that object. For example, selection of the overhead projector72 (corresponding to PowerPoint) may be confirmed, as shown in FIGS. 5B-5C, by flashing the light of the image of the overhead projector on and off.
- FIGS.6A-6B, taken together, form a simplified self-explanatory flowchart illustration of a preferred method of operation of a 3D operating system constructive and operative in accordance with a preferred embodiment of the present invention.
- FIGS.7A-7B, taken together, form a simplified self-explanatory flowchart illustration of a preferred method of operation for a particular implementation of a 3D operating system which is useful in conjunction with a
conventional Windows 95 operating system. All of the steps of FIGS. 7A-7B are typically performed byunit 30 of FIG. 1 unless otherwise indicated. - FIGS.8A-8C, taken together, form a simplified flowchart illustration of a preferred method for performing the “init computer resource database”
step 130 of FIGS. 7A-7B in which a computer resource database is generated which represents the relationships between a set of computer resources. It is appreciated that the method of FIGS. 8A-8C is useful even in situations in which less than all of the set of computer resources are actually available or in situations in which less than all of the set of computer resources are actually on-line. - An example of a tree data structure as generated in
step 330 is shown in FIG. 2. In FIG. 2 and in FIG. 3, folder-type nodes are included in a “single” box and application-type nodes are included in a “double” box. - Typically, the tree structures of the programs folder, control panel folder, and MRU folder are all available from
Windows 95. In contrast, the tree structures of the Office folder, Games folder and Internet folder are typically not available fromWindows 95 and typically are determined by designer's choice. - FIG. 9 is a simplified self-explanatory flowchart illustration of a preferred method for performing the “
init 3D scene”step 150 of FIG. 7A. - FIG. 10 is a simplified flowchart illustration of a loop, which is preferably performed, in
step 180 of FIG. 7A, for a each of the sons of thedatabase 40 node pointed at by the Resource pointer. Instep 650, a new object is projected into the 3D virtual model, wherein the new object represents the application. For example, in FIG. 5A, the overhead projector is an example of an object which represents a particular application, namely PowerPoint. The new object may be projected onto any suitable location within the 3D virtual model. For example, as implemented instep 174 of FIG. 7A, if a folder includes 3 applications and 3 other folders, the portion of the virtual scene representing the folder may comprise a hexagonal room having 6 walls, 3 of the walls including doors corresponding to the 3 folders respectively, 3 objects representing the 3 applications respectively may be projected adjacent the 3 remaining walls respectively. - It is emphasized that FIG. 10 is an implementation suitable for one particular embodiment of the present invention in which nodes in the tree structure of the computer resource database are represented by walls, and there are two types of nodes: parents and leaves (also termed herein “folders” and “applications”, respectively). Parents are represented by doors in the appropriate walls and sons are represented by objects adjacent the appropriate doors, e.g. objects inside a room whose entry door is the door representing the parent. However, it is appreciated that many alternative schemes of illustrations may be employed.
- An application may be represented by any element of the 3D virtual world and not necessarily by an object. For example, an application may be represented by a hall connecting two or more rooms. Another example is that an application may be represented by a room and commands or other elements within the application may be represented by objects within the room. For example, Word may be represented by a room and Rename, Edit and other commands within Word may be represented by objects within the room representing Word.
- FIGS.11A-11D, taken together, form a simplified flowchart illustration of a preferred method for performing the “update camera location”
step 240 of FIG. 7B. Any suitable collision detection method may be used to implementstep 740 of FIGS. 11A-11B, such as the method described in the following reference: - Peter J. Kovach,The awesome power of Direct3D/DirectX, Manning Publications Co., ch. 10, “What about collision detection?”, pp. 200-212.
- FIG. 12A illustrates a first modification of the embodiment as shown in the previous figures in which at least a
portion 800 of the computer resources are located in a remote computer (server) 810 whereas a local computer (client) 820 includes the apparatus of FIG. 1. The apparatus of FIG. 1 may controlresources 800 inremote computer 810 by any suitable means such as using FTP (file transfer protocol) to transferresources 800 from theremote computer 810 to thelocal computer 820 via a network associated with anoperating system 830 in the remote computer. Some of the computer resources may also reside inlocal computer 820. - FIG. 12B illustrates another modification of the embodiment as shown in the previous figures in which the apparatus of FIG. 1 resides in a local computer (client)840 whereas a remote computer (server) 850 controls an array of n
auxiliary computers 860. The resources of the n auxiliary computers are controlled by the apparatus of FIG. 1 via a network or other suitable communication medium connectinglocal computer 840 toremote computer 850 and connectingremote computer 850 toauxiliary computers 860. Some of the computer resources controlled by the apparatus of FIG. 1 may also reside inlocal computer 820 and/or inremote computer 850. - It is appreciated that any suitable user input device may be employed in conjunction with the apparatus and methods shown and described herein, including but not limited to a 2D or 3D wired or cordless mouse, keyboard, joystick, light-pens, voice recognition devices, and virtual reality accessories such as virtual reality gloves.
- It is appreciated that the software components of the present invention may, if desired, be implemented in RAM (random access memory) and/or ROM (read-only memory) form. The software components may, generally, be implemented in hardware, if desired, using conventional techniques.
- It is appreciated that various features of the invention which are, for clarity, described in the contexts of separate embodiments may also be provided in combination in a single embodiment. Conversely, various features of the invention which are, for brevity, described in the context of a single embodiment may also be provided separately or in any suitable subcombination.
- It will be appreciated by persons skilled in the art that the present invention is not limited to what has been particularly shown and described hereinabove.
- Rather, the scope of the present invention is defined only by the claims that follow:
Claims (24)
1. A computer system comprising:
computer resources;
an operating system operative to control said computer resources; and
a 3D interface enabling a user to interact with the operating system and providing at least one screen display image including a representation of at least a portion of the computer resources, therein substantially all of said representation is three-dimensional.
2. A computer system comprising:
computer resources;
an operating system operative to control said computer resources; and
a 3D interface enabling a user to interact with the operating system and operative to provide a plurality of display representations of at least a portion of the computer resources from a corresponding plurality of different viewpoints.
3. A computer system according to wherein said 3D interface comprises:
claim 1
a 3D motion simulator operative to provide a multiplicity of views of a 3D representation of the computer resources as seen from a corresponding multiplicity of viewpoints within the 3D representation of the computer resources; and
a viewpoint selection receiver operative to receive a multiplicity of selected viewpoints from a user of the computer system,
wherein the 3D motion simulator generates views corresponding to said selected viewpoints.
4. A computer system according to wherein said 3D motion simulator is operative to generate said multiplicity of views in real time.
claim 3
5. Operating system apparatus useful in conjunction with a population of computer systems each having a different configuration of computer resources, the apparatus comprising:
an operating system operative to control said computer resources; and
a 3D interface enabling a user to interact with the operating system and operative to provide, for each specific computer system having a specific computer resource configuration, at least one 3D display representation of at least a portion of said specific computer resource configuration.
6. Apparatus according to wherein said computer resource configuration includes at least one software resource.
claim 5
7. Apparatus according to wherein said computer resource configuration includes at least one hardware resource.
claim 5
8. Apparatus according to wherein said 3D interface comprises:
claim 5
a 3D motion simulator operative to provide a multiplicity of views of a 3D representation of the computer resources as seen from a corresponding multiplicity of viewpoints within the 3D representation of the computer resources; and
a viewpoint selection receiver operative to receive a multiplicity of selected viewpoints from a user of the computer system,
wherein the 3D notion simulator generates views corresponding to said selected viewpoints.
9. A system according to wherein said computer resources include applications.
claim 1
10. A system according to wherein said viewpoints comprise at least two viewpoints within a 3D representation of at least one of said applications.
claim 3
11. A system according to wherein said computer resources have a logical structure and wherein said 3D representation comprises a 3D representation of said logical structure.
claim 1
12. A system according to wherein said logical structure comprises a hierarchy.
claim 11
13. A computer system comprising:
computer resources;
an operating system operative to control said computer resources; and
a 3D interface enabling a user to interact with the operating system and providing a sequence of screen display images together generating a 3D representation of substantially all of said computer resources.
14. A system according to wherein said computer system comprises:
claim 1
a first computer which includes said operating system; and
a second computer which comprises said 3D interface.
15. A system according to wherein said first computer comprises a server.
claim 14
16. A system according to wherein at least some of said computer resources are located in said first computer.
claim 14
17. A system according to wherein at least some of said computer resources are located in computers served by said server.
claim 15
18. A main computer system for controlling a plurality of computer resources residing in at least one second computers, the main computer apparatus comprising:
electronic storage apparatus including:
a computer resource database storing information regarding relationships between the plurality of computer resources; and
an operating system accessing said computer resource database in order to manipulate said plurality of computer resources and including a computer resource transfer unit operative to transfer at least one computer resource from said at least one second computers to said electronic storage apparatus.
19. A system according to wherein said electronic storage apparatus comprises at least one of the following electronic storage devices:
claim 18
a ROM; and
a RAM.
20. A method for interacting with an operating system operative to control computer resources, the method comprising:
providing at least one screen display image including a representation of at least a portion of the computer resources, wherein substantially all of said representation is three-dimensional; and
receiving at least one user input provided by a user relative to said at least one screen display image and interacting with the operating system based on said at least one user input.
21. A method for interacting with an operating system operative to control computer resources, the method comprising:
providing a plurality of display representations of at least a portion of the computer resources from a corresponding plurality of different viewpoints; and
receiving at least one user input provided by a user relative to at least one of said plurality of display representations and interacting with the operating system based on said at least one user input.
22. A method for interacting with an operating system useful in conjunction with a population of computer systems each having a different configuration of computer resources, wherein the operating system is operative to control the computer resources, the method comprising:
providing, for each specific computer system having a specific computer resource configuration, at least one 3D display representation of at least a portion of said specific computer resource configuration; and
receiving at least one user input provided by a user relative to at least one of said plurality of display representations and interacting with the operating system based on said at least one user input.
23. A method for interacting with an operating system operative to control computer resources, the method comprising:
providing a sequence of screen display images together generating a 3D representation of substantially all of said computer resources; and
receiving at least one user input provided by a user relative to at least one of said sequence of screen display images and interacting with the operating system based on said at least one user input.
24. A method for interacting with a plurality of computer resources residing in at least one secondary computers, through a main computer, the method comprising:
providing a computer resource database in the main computer which stores information regarding relationships between the plurality of computer resources; and
transferring at least one computer resource, selected by a user reliant on said computer resource database, from said at least one secondary computers to said main computer.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US09/750,679 US20010016806A1 (en) | 1997-10-02 | 2001-01-02 | Apparatus and method for interacting with a simulated 3D interface to an operating system operative to control computer resources |
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US08/946,106 US6230116B1 (en) | 1997-10-02 | 1997-10-02 | Apparatus and method for interacting with a simulated 3D interface to an operating system operative to control computer resources |
US09/750,679 US20010016806A1 (en) | 1997-10-02 | 2001-01-02 | Apparatus and method for interacting with a simulated 3D interface to an operating system operative to control computer resources |
Related Parent Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
US08/946,106 Continuation US6230116B1 (en) | 1997-10-02 | 1997-10-02 | Apparatus and method for interacting with a simulated 3D interface to an operating system operative to control computer resources |
Publications (1)
Publication Number | Publication Date |
---|---|
US20010016806A1 true US20010016806A1 (en) | 2001-08-23 |
Family
ID=25483959
Family Applications (2)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
US08/946,106 Expired - Fee Related US6230116B1 (en) | 1997-10-02 | 1997-10-02 | Apparatus and method for interacting with a simulated 3D interface to an operating system operative to control computer resources |
US09/750,679 Abandoned US20010016806A1 (en) | 1997-10-02 | 2001-01-02 | Apparatus and method for interacting with a simulated 3D interface to an operating system operative to control computer resources |
Family Applications Before (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
US08/946,106 Expired - Fee Related US6230116B1 (en) | 1997-10-02 | 1997-10-02 | Apparatus and method for interacting with a simulated 3D interface to an operating system operative to control computer resources |
Country Status (10)
Country | Link |
---|---|
US (2) | US6230116B1 (en) |
EP (1) | EP1032876A1 (en) |
JP (1) | JP4139073B2 (en) |
KR (1) | KR20010030859A (en) |
CN (1) | CN1273651A (en) |
AU (1) | AU9456698A (en) |
BR (1) | BR9812601A (en) |
CA (1) | CA2305388A1 (en) |
IL (1) | IL135332A0 (en) |
WO (1) | WO1999018501A1 (en) |
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20050243085A1 (en) * | 2004-05-03 | 2005-11-03 | Microsoft Corporation | Model 3D construction application program interface |
US20050243084A1 (en) * | 2004-05-03 | 2005-11-03 | Microsoft Corporation | Translating user input through two-dimensional images into three-dimensional scene |
CN103752010A (en) * | 2013-12-18 | 2014-04-30 | 微软公司 | Reality coverage enhancing method used for control equipment |
US9329678B2 (en) | 2012-08-14 | 2016-05-03 | Microsoft Technology Licensing, Llc | Augmented reality overlay for control devices |
US10824294B2 (en) | 2016-10-25 | 2020-11-03 | Microsoft Technology Licensing, Llc | Three-dimensional resource integration system |
US11163434B2 (en) | 2019-01-24 | 2021-11-02 | Ademco Inc. | Systems and methods for using augmenting reality to control a connected home system |
Families Citing this family (16)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6938218B1 (en) | 2000-04-28 | 2005-08-30 | James Nolen | Method and apparatus for three dimensional internet and computer file interface |
WO2002093352A1 (en) * | 2001-05-11 | 2002-11-21 | 3Dna Corp. | Method and system for generating a three-dimensional graphical user interface (3d gui) for computer systems and websites |
DE60205662T2 (en) * | 2001-12-21 | 2006-06-29 | British Telecommunications P.L.C. | Apparatus and method for calculating a position of a display |
US7012602B2 (en) * | 2002-03-14 | 2006-03-14 | Centric Software, Inc. | Virtual three-dimensional display for product development |
US7387271B2 (en) | 2002-12-30 | 2008-06-17 | 3M Innovative Properties Company | Immunostimulatory combinations |
CA2541330A1 (en) * | 2003-10-14 | 2005-04-28 | Kimberley Hanke | System for manipulating three-dimensional images |
FR2918349B1 (en) * | 2007-07-05 | 2009-10-02 | Airbus France Sa | SYSTEM FOR DISPLAYING AVIONIC AND NON-AVIONIC APPLICATIONS |
CN101957824B (en) * | 2009-07-16 | 2012-10-10 | 深圳木兰信息技术有限公司 | Method for browsing network resource |
AU2011202182B1 (en) | 2011-05-11 | 2011-10-13 | Frequency Ip Holdings, Llc | Creation and presentation of selective digital content feeds |
US20140195963A1 (en) * | 2011-12-16 | 2014-07-10 | Gehry Technologies | Method and apparatus for representing 3d thumbnails |
US9489472B2 (en) | 2011-12-16 | 2016-11-08 | Trimble Navigation Limited | Method and apparatus for detecting interference in design environment |
US9152743B2 (en) | 2012-02-02 | 2015-10-06 | Gehry Technologies, Inc. | Computer process for determining best-fitting materials for constructing architectural surfaces |
EP2875491A4 (en) * | 2012-07-19 | 2016-06-15 | Gaurav Vats | User-controlled 3d simulation for providing realistic and enhanced digital object viewing and interaction experience |
US10303324B2 (en) | 2014-02-10 | 2019-05-28 | Samsung Electronics Co., Ltd. | Electronic device configured to display three dimensional (3D) virtual space and method of controlling the electronic device |
CN108885444B (en) * | 2016-04-14 | 2020-03-31 | 三菱电机株式会社 | Information management apparatus, information management method, and information management system |
CA3028794A1 (en) | 2018-01-04 | 2019-07-04 | 8259402 Canada Inc. | Immersive environment with digital environment to enhance depth sensation |
Family Cites Families (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5452468A (en) * | 1991-07-31 | 1995-09-19 | Peterson; Richard E. | Computer system with parallel processing for information organization |
US5675746A (en) * | 1992-09-30 | 1997-10-07 | Marshall; Paul S. | Virtual reality generator for use with financial information |
US5452406A (en) * | 1993-05-14 | 1995-09-19 | Microsoft Corporation | Method and system for scalable borders that provide an appearance of depth |
US5666504A (en) * | 1995-09-29 | 1997-09-09 | Intel Corporation | Method for displaying a graphical rocker button control |
US5880733A (en) * | 1996-04-30 | 1999-03-09 | Microsoft Corporation | Display system and method for displaying windows of an operating system to provide a three-dimensional workspace for a computer system |
-
1997
- 1997-10-02 US US08/946,106 patent/US6230116B1/en not_active Expired - Fee Related
-
1998
- 1998-10-01 JP JP2000515223A patent/JP4139073B2/en not_active Expired - Fee Related
- 1998-10-01 KR KR1020007003538A patent/KR20010030859A/en not_active Application Discontinuation
- 1998-10-01 CA CA002305388A patent/CA2305388A1/en not_active Abandoned
- 1998-10-01 EP EP98947754A patent/EP1032876A1/en not_active Withdrawn
- 1998-10-01 WO PCT/IL1998/000481 patent/WO1999018501A1/en not_active Application Discontinuation
- 1998-10-01 AU AU94566/98A patent/AU9456698A/en not_active Abandoned
- 1998-10-01 IL IL13533298A patent/IL135332A0/en active IP Right Grant
- 1998-10-01 BR BR9812601-6A patent/BR9812601A/en not_active Application Discontinuation
- 1998-10-01 CN CN98809812A patent/CN1273651A/en active Pending
-
2001
- 2001-01-02 US US09/750,679 patent/US20010016806A1/en not_active Abandoned
Cited By (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20050243085A1 (en) * | 2004-05-03 | 2005-11-03 | Microsoft Corporation | Model 3D construction application program interface |
US20050243084A1 (en) * | 2004-05-03 | 2005-11-03 | Microsoft Corporation | Translating user input through two-dimensional images into three-dimensional scene |
US8031190B2 (en) | 2004-05-03 | 2011-10-04 | Microsoft Corporation | Translating two-dimensional user input on three-dimensional scene |
US9329678B2 (en) | 2012-08-14 | 2016-05-03 | Microsoft Technology Licensing, Llc | Augmented reality overlay for control devices |
CN103752010A (en) * | 2013-12-18 | 2014-04-30 | 微软公司 | Reality coverage enhancing method used for control equipment |
US10824294B2 (en) | 2016-10-25 | 2020-11-03 | Microsoft Technology Licensing, Llc | Three-dimensional resource integration system |
US11163434B2 (en) | 2019-01-24 | 2021-11-02 | Ademco Inc. | Systems and methods for using augmenting reality to control a connected home system |
Also Published As
Publication number | Publication date |
---|---|
JP4139073B2 (en) | 2008-08-27 |
JP2001519560A (en) | 2001-10-23 |
EP1032876A1 (en) | 2000-09-06 |
WO1999018501A1 (en) | 1999-04-15 |
AU9456698A (en) | 1999-04-27 |
US6230116B1 (en) | 2001-05-08 |
CA2305388A1 (en) | 1999-04-15 |
IL135332A0 (en) | 2001-05-20 |
KR20010030859A (en) | 2001-04-16 |
BR9812601A (en) | 2000-08-01 |
CN1273651A (en) | 2000-11-15 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US6230116B1 (en) | Apparatus and method for interacting with a simulated 3D interface to an operating system operative to control computer resources | |
KR100324878B1 (en) | Method for displaying information in a virtual reality environment | |
USRE38287E1 (en) | Computer network data distribution and selective retrieval system | |
US5969724A (en) | Method and system for navigating through opaque structures on a display | |
US6271842B1 (en) | Navigation via environmental objects in three-dimensional workspace interactive displays | |
US6069632A (en) | Passageway properties: customizable protocols for entry and exit of places | |
US5767855A (en) | Selectively enlarged viewer interactive three-dimensional objects in environmentally related virtual three-dimensional workspace displays | |
Normand et al. | The COVEN project: Exploring applicative, technical, and usage dimensions of collaborative virtual environments | |
US6377263B1 (en) | Intelligent software components for virtual worlds | |
US6734884B1 (en) | Viewer interactive three-dimensional objects and two-dimensional images in virtual three-dimensional workspace | |
US20070033279A1 (en) | Method and apparatus for intuitively administering networked computer systems | |
Kazman | Load balancing, latency management and separation of concerns in a distributed virtual world | |
IL135332A (en) | Apparatus and method for interacting with a simulated 3d interface to an operating system operative to control computer resources | |
Anthes et al. | invrs–a framework for building interactive networked virtual reality systems | |
EP1004989A1 (en) | Method and system for modeling virtual scenes in a database | |
BenHajji et al. | 3d graphical user interfaces | |
Duval | Models for design, implementation and deployment of 3D Collaborative Virtual Environments | |
Haffegee et al. | Tools for collaborative vr application development | |
McCahill et al. | User interfaces for places and things in croquet learning spaces | |
Balet et al. | Autonomous Entities in Distributed Virtual Environments. | |
Belfore II | An architecture for constructing large VRML worlds | |
Downs | Combining heterogeneous virtual worlds into a single world model | |
Gobbetti et al. | Exploring annotated 3D environments on the World Wide Web | |
Nakao et al. | W@ nderland: image-based constructable virtual space on the WWW | |
O'Connell et al. | The void Shell |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
AS | Assignment |
Owner name: CLOCKWISE TECHNOLOGIES LTD., ISRAEL Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNOR:RONEN, NIR;REEL/FRAME:011683/0557 Effective date: 20010131 |
|
STCB | Information on status: application discontinuation |
Free format text: ABANDONED -- FAILURE TO RESPOND TO AN OFFICE ACTION |