DE112020002268T5 - Vorrichtung, verfahren und computerlesbares medium zur darstellung von dateien computergenerierter realität - Google Patents

Vorrichtung, verfahren und computerlesbares medium zur darstellung von dateien computergenerierter realität Download PDF

Info

Publication number
DE112020002268T5
DE112020002268T5 DE112020002268.4T DE112020002268T DE112020002268T5 DE 112020002268 T5 DE112020002268 T5 DE 112020002268T5 DE 112020002268 T DE112020002268 T DE 112020002268T DE 112020002268 T5 DE112020002268 T5 DE 112020002268T5
Authority
DE
Germany
Prior art keywords
cgr
anchor
affordance
scene
display
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
DE112020002268.4T
Other languages
English (en)
Inventor
Tyler L. Casella
David Lui
Norman Nuo Wang
Xiao Jin Yu
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.)
Apple Inc
Original Assignee
Apple Inc
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Apple Inc filed Critical Apple Inc
Publication of DE112020002268T5 publication Critical patent/DE112020002268T5/de
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/048Interaction techniques based on graphical user interfaces [GUI]
    • G06F3/0481Interaction techniques based on graphical user interfaces [GUI] based on specific properties of the displayed interaction object or a metaphor-based environment, e.g. interaction with desktop elements like windows or icons, or assisted by a cursor's changing behaviour or appearance
    • G06F3/04815Interaction with a metaphor-based environment or interaction object displayed as three-dimensional, e.g. changing the user viewpoint with respect to the environment or object
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/048Interaction techniques based on graphical user interfaces [GUI]
    • G06F3/0484Interaction techniques based on graphical user interfaces [GUI] for the control of specific functions or operations, e.g. selecting or manipulating an object, an image or a displayed text element, setting a parameter value or selecting a range
    • G06F3/04845Interaction techniques based on graphical user interfaces [GUI] for the control of specific functions or operations, e.g. selecting or manipulating an object, an image or a displayed text element, setting a parameter value or selecting a range for image manipulation, e.g. dragging, rotation, expansion or change of colour
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T11/002D [Two Dimensional] image generation
    • G06T11/60Editing figures and text; Combining figures or text
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T15/003D [Three Dimensional] image rendering
    • G06T15/10Geometric effects
    • G06T15/20Perspective computation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T19/00Manipulating 3D models or images for computer graphics
    • G06T19/006Mixed reality
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2203/00Indexing scheme relating to G06F3/00 - G06F3/048
    • G06F2203/048Indexing scheme relating to G06F3/048
    • G06F2203/04806Zoom, i.e. interaction techniques or interactors for controlling the zooming operation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2200/00Indexing scheme for image data processing or generation, in general
    • G06T2200/24Indexing scheme for image data processing or generation, in general involving graphical user interfaces [GUIs]

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • Computer Graphics (AREA)
  • Human Computer Interaction (AREA)
  • Computing Systems (AREA)
  • Geometry (AREA)
  • Computer Hardware Design (AREA)
  • Software Systems (AREA)
  • User Interface Of Digital Computer (AREA)

Abstract

In einer Ausführungsform schließt ein Verfahren zum Präsentieren einer Datei der computergenerierten Realität (CGR) das Empfangen einer Benutzereingabe ein, um eine CGR-Szene darzustellen, die ein oder mehrere CGR-Objekte einschließt, wobei die CGR-Szene einem ersten Anker und einem zweiten Anker zugeordnet ist. Das Verfahren schließt das Erfassen eines Bildes einer physischen Umgebung und das Bestimmen, dass dem Bild der physischen Umgebung ein Abschnitt fehlt, der dem ersten Anker entspricht, ein. Das Verfahren schließt das Erfassen eines Abschnitts des Bildes der physischen Umgebung ein, der dem zweiten Anker entspricht. Das Verfahren schließt als Reaktion auf das Bestimmen, dass dem Bild der physischen Umgebung ein Abschnitt fehlt, der dem ersten Anker entspricht, und das Erfassen eines Abschnitts des Bildes der physischen Umgebung, der dem zweiten Anker entspricht, das Anzeigen der CGR-Szene an einem Ort der Anzeige, die dem zweiten Anker entspricht, ein.

Description

  • TECHNISCHES GEBIET
  • Dieses betrifft allgemein elektronische Vorrichtungen mit berührungsempfindlichen Oberflächen, einschließlich unter anderem elektronischer Vorrichtungen mit berührungsempfindlichen Oberflächen, die Dateien der computergenerierten Realität (CGR) darstellen.
  • STAND DER TECHNIK
  • Das Programmieren einer CGR-Anwendung kann ein schwieriger und zeitaufwändiger Prozess sein, der Expertenwissen zum Beispiel im 3D-Objektdesign und der Anwendungscodierung erfordert. Dies stellt eine hohe Barriere für die Generierung von Qualitäts-CGR-Anwendungen dar.
  • KURZDARSTELLUNG
  • Dementsprechend besteht ein Bedarf an elektronischen Vorrichtungen mit schnelleren, effizienteren Verfahren und Schnittstellen zum Präsentieren von Dateien der computergenerierten Realität (CGR) (wie einer ausführbaren CGR-Anwendung oder einer CGR-Datei, die von einer CGR-Anwendung gelesen werden kann, um einem Benutzer eine CGR-Erfahrung bereitzustellen). Solche Verfahren und Schnittstellen können herkömmliche Verfahren zur Darstellung von CGR-Dateien wahlweise ergänzen oder ersetzen. Solche Verfahren und Schnittstellen verringern die kognitive Last eines Benutzers und erzeugen eine effizientere Mensch-Maschine-Schnittstelle. Bei batteriebetriebenen Vorrichtungen sparen solche Verfahren und Schnittstellen Strom und verlängern die Zeitspanne zwischen den Aufladevorgängen für die Batterien.
  • Die oben genannten Unzulänglichkeiten und andere mit Benutzerschnittstellen für elektronische Vorrichtungen mit berührungsempfindlichen Oberflächen zusammenhängende Probleme werden anhand der offenbarten Vorrichtungen verringert oder beseitigt. In einigen Ausführungsformen handelt es sich bei der Vorrichtung um einen Schreibtischcomputer. In einigen Ausführungsformen ist die Vorrichtung tragbar (z. B. ein Notebook, Tablet oder eine in der Hand gehaltene Vorrichtung). In einigen Ausführungsformen weist die Vorrichtung ein Touchpad auf. In einigen Ausführungsformen weist die Vorrichtung eine berührungsempfindliche Anzeige (auch als „Touchscreen“ oder „Touchscreen-Anzeige“ bekannt) auf. In einigen Ausführungsformen weist die Vorrichtung eine grafische Benutzerschnittstelle (GUI), einen oder mehrere Prozessoren, Speicher und ein oder mehrere Module, Programme oder Sätze von Anweisungen auf, die zum Ausführen mehrerer Funktionen in dem Speicher gespeichert sind. In einigen Ausführungsformen interagiert der Benutzer mit der GUI hauptsächlich durch den Eingabestift und/oder Fingerkontakte und Gesten auf der berührungsempfindlichen Oberfläche. In einigen Ausführungsformen schließen die Funktionen wahlweise Bildbearbeitung, Zeichnen, Präsentieren, Textverarbeitung, Erstellen von Websites, Entwicklung einer Autorensoftware für Discs, Erstellen von Tabellenkalkulation, Spielen, Telefonieren, Führen von Videokonferenzen, Schreiben von E-Mails, Instant Messaging, Trainingsunterstützung, digitales Fotografieren, digitale Videoaufnahmen, Surfen im Internet, Wiedergabe digitaler Musik und/oder Wiedergabe digitaler Videos ein. Ausführbare Anweisungen zum Ausführen dieser Funktionen sind wahlweise in einem dauerhaften, computerlesbaren Speichermedium oder einem anderen Computerprogrammprodukt, das zum Ausführen von einem oder mehreren Prozessoren ausgelegt ist, enthalten.
  • Gemäß einigen Ausführungsformen wird ein Verfahren an einer Vorrichtung durchgeführt, das einen oder mehrere Prozessoren, einen nichtflüchtigen Speicher, eine Kamera, eine Anzeige und eine oder mehrere Eingabevorrichtungen einschließt. Das Verfahren schließt das Empfangen, über die eine oder die mehreren Eingabevorrichtungen, einer Benutzereingabe ein, um eine Szene der computergenerierten Realität (CGR) darzustellen, die ein oder mehrere CGR-Objekte einschließt, wobei die CGR-Szene einem ersten Anker und einem zweiten Anker zugeordnet ist. Das Verfahren schließt das Erfassen eines Bildes einer physischen Umgebung unter Verwendung der Kamera ein. Das Verfahren schließt das Bestimmen ein, dass dem Bild der physischen Umgebung ein Abschnitt fehlt, der dem ersten Anker entspricht. Das Verfahren schließt das Erfassen eines Abschnitts des Bildes der physischen Umgebung ein, der dem zweiten Anker entspricht. Das Verfahren schließt als Reaktion auf das Bestimmen, dass dem Bild der physischen Umgebung ein Abschnitt fehlt, der dem ersten Anker entspricht, und das Erfassen eines Abschnitts des Bildes der physischen Umgebung, der dem zweiten Anker entspricht, das Anzeigen der CGR-Szene an einem Ort der Anzeige, die dem zweiten Anker entspricht, auf einer Anzeige ein.
  • Gemäß einigen Ausführungsformen wird ein Verfahren auf einer Vorrichtung mit einem oder mehreren Prozessoren, einem nichtflüchtigen Speicher und einer Anzeige durchgeführt. Das Verfahren schließt das Anzeigen einer Darstellung eines Objekts der computergenerierten Realität (CGR), das einem ersten Parameter und einem zweiten Parameter zugeordnet ist, auf der Anzeige ein, wobei der erste Parameter einen ersten aus einer Vielzahl von ersten Parameterwerten aufweist und der zweite Parameter einen ersten aus einer Vielzahl von zweiten Parameterwerten aufweist. Das Verfahren schließt das Anzeigen eines ersten Benutzerschnittstellenelements zur Auswahl eines zweiten der Vielzahl von ersten Parameterwerten auf der Anzeige ein. Das Verfahren schließt das Anzeigen eines zweiten Benutzerschnittstellenelements zur Auswahl eines zweiten der Vielzahl von zweiten Parameterwerten auf der Anzeige ein, wobei basierend auf dem ersten der Vielzahl von ersten Parameterwerten und einer oder mehreren Auswahlregeln eine Teilmenge der Vielzahl von zweiten Parameterwerten zur Auswahl über das zweite Benutzerschnittstellenelement dargestellt wird.
  • Gemäß einigen Ausführungsformen wird ein Verfahren auf einer Vorrichtung mit einem oder mehreren Prozessoren, einem nichtflüchtigen Speicher und einer Anzeige durchgeführt. Das Verfahren schließt das Anzeigen einer Darstellung einer CGR-Szene auf der Anzeige ein, einschließlich des Anzeigens einer Darstellung eines ersten CGR-Objekts der CGR-Szene, wobei das Anzeigen der Darstellung des ersten CGR-Objekts auf einem Anzeigenetz basiert, das dem ersten CGR-Objekt zugeordnet ist. Das Verfahren schließt das Bestimmen einer Interaktion des ersten CGR-Objekts mit einem zweiten CGR-Objekt der CGR-Szene basierend auf einem Physiknetz ein, das dem ersten CGR-Objekt zugeordnet ist, wobei sich das Physiknetz, das dem ersten CGR-Objekt zugeordnet ist, von dem Anzeigennetz unterscheidet, das dem ersten CGR-Objekt zugeordnet ist.
  • Gemäß einigen Ausführungsformen schließt eine elektronische Vorrichtung eine Anzeige, eine oder mehrere Eingabevorrichtungen, einen oder mehrere Prozessoren, einen nichtflüchtigen Speicher und ein oder mehrere Programme ein; das eine oder die mehreren Programme sind in dem nichtflüchtigen Speicher gespeichert und konfiguriert, um von dem einen oder den mehreren Prozessoren ausgeführt zu werden, und das eine oder die mehreren Programme enthalten Anweisungen zum Durchführen oder Auslösen der Durchführung der Operationen eines der hierin beschriebenen Verfahren. Gemäß einigen Ausführungsformen sind auf einem nichtflüchtigen, computerlesbaren Speichermedium Anweisungen gespeichert, die, wenn sie von einem oder mehreren Prozessoren einer elektronischen Vorrichtung mit einer Anzeige und einem oder mehreren Eingabevorrichtungen ausgeführt werden, bewirken, dass die Vorrichtung die Operationen eines der hier beschriebenen Verfahren durchführt oder dessen Durchführung auslöst. Gemäß einigen Ausführungsformen ist eine grafische Benutzerschnittstelle auf einer elektronischen Vorrichtung mit einer Anzeige, einer oder mehreren Eingabevorrichtungen, einem nichtflüchtigen Speicher und einem oder mehreren Prozessoren konfiguriert, um ein oder mehrere Programme auszuführen, die in dem nichtflüchtigen Speicher gespeichert sind, einschließlich eines oder mehrerer der Elemente, die in einem der oben beschriebenen Verfahren angezeigt werden, die als Reaktion auf Eingaben aktualisiert werden, wie in jedem der hierin beschriebenen Verfahren beschrieben. Gemäß einigen Ausführungsformen schließt eine elektronische Vorrichtung ein: eine Anzeige, eine oder mehrere Eingabevorrichtungen; und Mittel zum Durchführen oder Auslösen der Durchführung der Operationen eines der hierin beschriebenen Verfahren. Gemäß einigen Ausführungsformen schließt eine Informationsverarbeitungseinrichtung zur Verwendung in einer elektronischen Vorrichtung mit einer Anzeige und einer oder mehreren Eingabevorrichtungen Mittel zum Durchführen oder Auslösen der Durchführung der Operationen eines der hierin beschriebenen Verfahren ein.
  • Somit werden elektronische Vorrichtungen mit Anzeigen und Eingabevorrichtungen, wie berührungsempfindliche Oberflächen, mit schnelleren, effizienteren Verfahren und Schnittstellen zum Präsentieren von CGR-Dateien bereitgestellt, wodurch die Wirksamkeit, Effizienz und Benutzerzufriedenheit mit solchen Vorrichtungen erhöht wird. Solche Verfahren und Schnittstellen können herkömmliche Verfahren zur Darstellung von CGR-Dateien ergänzen oder ersetzen.
  • Figurenliste
  • Für ein besseres Verständnis der verschiedenen, beschriebenen Ausführungsformen sollte auf die nachfolgende Beschreibung von Ausführungsformen in Verbindung mit den folgenden Zeichnungen Bezug genommen werden, in denen sich gleiche Bezugsziffern durch die Figuren hinweg auf entsprechende Teile beziehen.
    • 1A ist ein Blockdiagramm, das eine tragbare Multifunktionsvorrichtung mit einer berührungsempfindlichen Anzeige gemäß einigen Ausführungsformen veranschaulicht.
    • 1B ist ein Blockdiagramm, das beispielhafte Komponenten für die Ereignisbehandlung gemäß einigen Ausführungsformen veranschaulicht.
    • 2 veranschaulicht eine tragbare Multifunktionsvorrichtung mit einem Touchscreen gemäß einigen Ausführungsformen.
    • 3 ist ein Blockdiagramm einer beispielhaften Multifunktionsvorrichtung mit einer Anzeige und einer berührungsempfindlichen Oberfläche gemäß einigen Ausführungsformen.
    • 4A veranschaulicht eine beispielhafte Benutzerschnittstelle für ein Anwendungsmenü auf einer tragbaren Multifunktionsvorrichtung gemäß einigen Ausführungsformen.
    • 4B veranschaulicht eine beispielhafte Benutzerschnittstelle für eine Multifunktionsvorrichtung mit einer berührungsempfindlichen Oberfläche, die von der Anzeige separat ist, gemäß einigen Ausführungsformen.
    • 5 ist ein Blockdiagramm einer beispielhaften Betriebsarchitektur gemäß einigen Ausführung sformen.
    • 6 ist ein Blockdiagramm einer beispielhaften Steuerung gemäß einigen Ausführung sformen.
    • 7 ist ein Blockdiagramm einer beispielhaften Datenhelmvorrichtung (HMD: head mounted device) gemäß einigen Ausführungsformen.
    • 8A-8DF veranschaulichen beispielhafte Benutzerschnittstellen zum Generieren einer CGR-Datei gemäß einigen Ausführungsformen.
    • 9 ist eine Flussdiagrammdarstellung eines Verfahrens zur Darstellung einer CGR-Szene unter Verwendung eines Backup-Ankers gemäß einigen Ausführungsformen.
    • 10 ist eine Flussdiagrammdarstellung eines Verfahrens zur Konfiguration eines CGR-Objekts gemäß einigen Ausführungsformen.
    • 11 ist eine Flussdiagrammdarstellung eines Verfahrens zur Auflösung der Überlappung von zwei CGR-Objekten gemäß einigen Ausführungsformen.
    • 12 ist eine Flussdiagrammdarstellung eines Verfahrens zum räumlichen Manipulieren eines CGR-Objekts in unterschiedlichen räumlichen Manipulationsmodi gemäß einigen Ausführungsformen.
    • 13 ist eine Flussdiagrammdarstellung eines Verfahrens zum räumlichen Manipulieren eines CGR-Objekts unter Verwendung eines intuitiven räumlichen Manipulationspunkts gemäß einigen Ausführungsformen.
    • 14 ist eine Flussdiagrammdarstellung eines Verfahrens zur Konfiguration eines CGR-Objekts gemäß einigen Ausführungsformen.
    • 15 ist eine Flussdiagrammdarstellung eines Verfahrens zur Darstellung einer CGR-Szene gemäß einigen Ausführungsformen.
    • 16 ist eine Flussdiagrammdarstellung eines Verfahrens zur Zuordnung eines Verhaltens einer CGR-Szene gemäß einigen Ausführungsformen.
    • 17 ist eine Flussdiagrammdarstellung eines Verfahrens zur Erstellung einer CGR-Datei gemäß einigen Ausführungsformen.
  • BESCHREIBUNG VON AUSFÜHRUNGSFORMEN
  • Gemäß verschiedenen Ausführungsformen wird eine grafische Benutzerschnittstelle (GUI) bereitgestellt, um die Erzeugung einer CGR-Datei zu vereinfachen, die Daten bezüglich des CGR-Inhalts einschließt und ferner Daten einschließt, die beschreiben, wie der CGR-Inhalt dargestellt werden soll.
  • Nachstehend stellen die 1A-1B, 2-3 und 4A-4B eine Beschreibung beispielhafter CGR-Objekterzeugungsvorrichtungen bereit. 5, 6 und 7 stellen eine Beschreibung beispielhafter CGR-Objektdarstellungsvorrichtungen bereit. 8A-8DF veranschaulichen beispielhafte Benutzerschnittstellen zum Erzeugen von CGR-Dateien. Die Benutzerschnittstellen in 8A-8DF werden zum Veranschaulichen der in 9-17 dargestellten Verfahren verwendet.
  • BEISPIELHAFTE CGR-DATEIKOMPOSITIONSVORRICHTUNGEN
  • Es wird nun ausführlich auf Ausführungsformen Bezug genommen, von denen Beispiele in den beigefügten Zeichnungen veranschaulicht sind. In der folgenden ausführlichen Beschreibung werden zahlreiche, spezifische Details aufgeführt, um für ein umfassendes Verständnis der verschiedenen beschriebenen Ausführungsformen zu sorgen. Es ist jedoch für den Fachmann ersichtlich, dass die verschiedenen beschriebenen Ausführungsformen ohne manche dieser spezifischen Details ausgeführt werden können. In anderen Fällen wurden bekannte Verfahren, Vorgehensweisen, Komponenten, Schaltungen und Netzwerke nicht ausführlich beschrieben, um Gesichtspunkte der Ausführungsformen nicht unnötig zu verschleiern.
  • Es versteht sich auch, dass wenngleich die Begriffe „erste/erster/erstes“, „zweite/zweiter/zweites“ etc. in einigen Fällen hierin verwendet werden, um verschiedene Elemente zu beschreiben, diese Elemente nicht durch diese Begriffe eingeschränkt werden. Diese Begriffe werden nur verwendet, um ein Element von einem anderen zu unterscheiden. Beispielsweise könnte ein „erster Kontakt“ als „zweiter Kontakt“ bezeichnet werden und auf ähnliche Weise könnte ein „zweiter Kontakt“ als „erster Kontakt“ bezeichnet werden, ohne vom Schutzumfang der verschiedenen, beschriebenen Ausführungsformen abzuweichen. Der erste Kontakt und der zweite Kontakt sind beide Kontakte, aber es handelt sich dabei nicht um denselben Kontakt, sofern aus dem Zusammenhang nicht eindeutig etwas anderes hervorgeht.
  • Die in der Beschreibung der verschiedenen, hierin beschriebenen Ausführungsformen verwendete Terminologie dient lediglich dem Zweck eines Beschreibens bestimmter Ausführungsformen und ist nicht als einschränkend beabsichtigt. So wie sie in der Beschreibung der verschiedenen, beschriebenen Ausführungsformen und der beigefügten Ansprüche verwendet werden, sollen die Singularformen „ein“, „eine“, „eines“ und „die“, „der“, „das“ auch die Pluralformen einschließen, es sei denn, der Kontext gibt ausdrücklich Gegenteiliges an. Es versteht sich auch, dass der Begriff „und/oder“, so wie er hierin verwendet wird, sich auf jegliche und alle möglichen Kombinationen von einem oder mehreren der damit zusammenhängenden, aufgeführten Elemente bezieht und diese einschließt. Es versteht sich ferner, dass die Begriffe „einschließen“, „einschließend“, „umfasst“ und/oder „umfassend“, wenn sie in dieser Patentschrift verwendet werden, die Gegenwart von aufgeführten Merkmalen, ganzen Zahlen, Schritten, Vorgängen, Elementen und/oder Komponenten angeben, aber die Gegenwart oder das Hinzufügen von einem oder mehreren Merkmalen, ganzen Zahlen, Schritten, Vorgängen, Elementen, Komponenten und/oder Gruppen davon nicht ausschließen.
  • Wie hier verwendet, ist der Begriff „wenn“ wahlweise so auszulegen, dass er je nach Kontext „während“ oder „bei“ oder „als Reaktion auf eine Bestimmung“ oder „als Reaktion auf eine Erfassung“ bedeutet. Gleichermaßen ist der Ausdruck „wenn/falls festgestellt wird“ oder „wenn/falls [eine angegebene Bedingung] erfasst wird“ wahlweise so ausgelegt, dass er abhängig vom Kontext „bei Feststellen“ oder „als Reaktion auf ein Feststellen“ oder „bei Erfassen [der angegebenen Bedingung oder des angegebenen Ereignisses]“ oder „als Reaktion auf ein Erfassen [der angegebenen Bedingung oder des angegebenen Ereignisses]“ bedeutet.
  • Es werden Ausführungsformen von elektronischen Vorrichtungen, von Benutzerschnittstellen für solche Vorrichtungen und von verknüpften Prozessen zur Verwendung solcher Vorrichtungen beschrieben. In einigen Ausführungsformen handelt es sich bei der Vorrichtung um eine tragbare Kommunikationsvorrichtung, wie etwa ein Mobiltelefon, das auch andere Funktionen umfasst, wie etwa die eines PDA und/oder Funktionen zur Wiedergabe von Musik. Beispielhafte Ausführungsformen von tragbaren Multifunktionsvorrichtungen schließen unter anderem die iPhone®-, iPod Touch®- und iPad® -Vorrichtungen von Apple Inc., Cupertino, Kalifornien, ein. Weitere tragbare elektronische Vorrichtungen, wie Laptops oder Tablet-Computer mit berührungsempfindlichen Oberflächen (z. B. Touchscreen-Anzeigen und/oder Touchpads), werden wahlweise verwendet. Es versteht sich ebenfalls, dass es sich in manchen Ausführungsformen bei der Vorrichtung nicht um eine tragbare Kommunikationsvorrichtung handelt, sondern um einen Desktop-Computer mit einer berührungsempfindlichen Oberfläche (z. B. einer Touchscreen-Anzeige und/oder einem Touchpad).
  • In der folgenden Besprechung wird eine elektronische Vorrichtung beschrieben, die eine Anzeige und eine berührungsempfindliche Oberfläche einschließt. Es sollte sich jedoch verstehen, dass die elektronische Vorrichtung wahlweise eine oder mehrere physische Benutzerschnittstellenvorrichtungen, wie etwa eine physische Tastatur, eine Maus und/oder einen Joystick, einschließt.
  • Die Vorrichtung unterstützt in der Regel eine Vielzahl an Anwendungen, wie etwa eine oder mehrere der folgenden: eine Zeichnungsanwendung, eine Präsentationsanwendung, eine Textverarbeitungsanwendung, eine Anwendung zum Erstellen von Websites, eine Anwendung zur Entwicklung von Autorensoftware für Discs, eine Tabellenkalkulationsanwendung, eine Spieleanwendung, eine Telefonanwendung, eine Videokonferenzanwendung, eine E-Mail-Anwendung, eine Instant Messaging-Anwendung, eine Anwendung zu Unterstützung des Trainings, eine Fotoverwaltungsanwendung, eine Anwendung für digitale Kameras, eine Anwendung für digitale Videos, eine Anwendung zum Surfen im Internet, eine Anwendung zur Wiedergabe digitaler Musik und/oder eine Anwendung zur Wiedergabe digitaler Videos.
  • Die verschiedenen Anwendungen, die auf der Vorrichtung ausgeführt werden, verwenden wahlweise mindestens eine gemeinsame physische Benutzerschnittstellenvorrichtung, wie etwa die berührungsempfindliche Oberfläche. Eine oder mehrere Funktionen der berührungsempfindlichen Oberfläche sowie auf der Vorrichtung angezeigte, entsprechende Informationen werden wahlweise von einer Anwendung zur anderen und/oder innerhalb einer jeweiligen Anwendung angepasst und/oder variiert. Auf diese Weise unterstützt eine gemeinsame physische Architektur (wie etwa die berührungsempfindliche Oberfläche) der Vorrichtung wahlweise die verschiedenen Anwendungen mit Benutzerschnittstellen, die für den Benutzer intuitiv und erkennbar sind.
  • Die Aufmerksamkeit wird nun auf Ausführungsformen von tragbaren Vorrichtungen mit berührungsempfindlichen Oberflächen gerichtet. 1A ist ein Blockdiagramm, das eine tragbare Multifunktionsvorrichtung 100 mit berührungsempfindlicher Anzeige 112 gemäß einigen Ausführungsformen veranschaulicht. Das berührungsempfindliche Anzeigesystem 112 wird der Zweckmäßigkeit halber manchmal als „Touchscreen“ bezeichnet und wird manchmal einfach als „berührungsempfindliche Anzeige“ bezeichnet. Die Vorrichtung 100 schließt einen Speicher 102 (der wahlweise ein oder mehrere computerlesbare Datenspeichermedien einschließt), eine Speicher-Steuerung 122, eine oder mehrere Verarbeitungseinheiten (CPUs) 120, eine Peripherieschnittstelle 118, eine HF-Schaltung 108, eine Audioschaltung 110, einen Lautsprecher 111, ein Mikrofon 113, ein Eingabe/Ausgabe-(E/A)-Subsystem 106, weitere Eingabe- oder Steuervorrichtungen 116 und einen externen Anschluss 124 ein. Die Vorrichtung 100 schließt wahlweise einen oder mehrere optische Sensoren 164 ein. Die Vorrichtung 100 schließt wahlweise einen oder mehrere Intensitätssensoren 165 zum Erfassen der Intensität von Kontakten auf der Vorrichtung 100 (z. B. einer berührungsempfindlichen Oberfläche, wie etwa dem berührungsempfindlichen Anzeigesystem 112 der Vorrichtung 100) ein. Die Vorrichtung 100 schließt wahlweise einen oder mehrere Tastausgabeerzeuger 163 zum Erzeugen von Tastausgaben auf der Vorrichtung 100 (z. B. Erzeugen von Tastausgaben auf einer berührungsempfindlichen Oberfläche, wie etwa dem berührungsempfindlichen Anzeigesystem 112 der Vorrichtung 100 oder Touchpad 355 der Vorrichtung 300) ein. Diese Komponenten kommunizieren wahlweise über einen oder mehrere Kommunikationsbusse oder Signalleitungen 103.
  • Wie in der Beschreibung und in den Ansprüchen verwendet, bezieht sich der Begriff „taktile Ausgabe“ oder „Tastausgabe“ auf eine physische Verschiebung einer Vorrichtung in Bezug auf eine vorherige Position der Vorrichtung, auf eine physische Verschiebung einer Komponente (z. B. einer berührungsempfindlichen Oberfläche) einer Vorrichtung in Bezug auf eine andere Komponente (z. B. das Gehäuse) der Vorrichtung oder auf das Verschieben der Komponente in Bezug auf einen Masseschwerpunkt der Vorrichtung, der von einem Benutzer anhand seines Tastsinns erfasst wird. Beispielsweise wird in Situationen, in denen die Vorrichtung oder die Komponente der Vorrichtung mit einer Oberfläche eines Benutzers in Kontakt kommt, die berührungsempfindlich ist (z. B. einem Finger, einer Handfläche oder einem anderen Abschnitt der Hand eines Benutzers), die durch die physische Verschiebung erzeugte Tastausgabe vom Benutzer als taktile Empfindung interpretiert, die einer wahrgenommenen Veränderung physikalischer Eigenschaften der Vorrichtung oder der Komponente der Vorrichtung entspricht. Beispielsweise wird die Bewegung einer berührungsempfindlichen Oberfläche (z. B. einer berührungsempfindlichen Anzeige oder Trackpads) vom Benutzer wahlweise als ein „Abwärtsklick“ oder ein „Aufwärtsklick“ einer physischen Betätigungsschaltfläche interpretiert. In einigen Fällen spürt ein Benutzer eine taktile Empfindung wie einen „Abwärtsklick“ oder einen „Aufwärtsklick“, selbst wenn keine Bewegung einer physischen Betätigungsschaltfläche mit der berührungsempfindlichen Oberfläche assoziiert ist, die durch die Bewegungen des Benutzers physisch niedergedrückt (z. B. verschoben) wird. Als weiteres Beispiel wird die Bewegung der berührungsempfindlichen Oberfläche vom Benutzer wahlweise als „Rauigkeit“ der berührungsempfindlichen Oberfläche interpretiert oder empfunden, selbst wenn sich die Glätte der berührungsempfindlichen Oberfläche nicht verändert. Wenngleich solche Interpretationen der Berührung seitens eines Benutzers jeweils von den Sinneswahrnehmungen der einzelnen Benutzer abhängen, gibt es viele Sinneswahrnehmungen bei der Berührung, die eine große Mehrheit der Benutzer gemeinsam haben. Wenn eine Tastausgabe als einer bestimmten Sinneswahrnehmung eines Benutzers entsprechend beschrieben wird (z. B. ein „Aufwärtsklick“, ein „Abwärtsklick“, „Rauigkeit“), entspricht, sofern nichts anderes erwähnt wird, die erzeugte Tastausgabe folglich der physischen Verschiebung der Vorrichtung oder einer Komponente davon, die die beschriebene Sinneswahrnehmung für einen typischen (oder durchschnittlichen) Benutzer erzeugt.
  • Es sollte sich verstehen, dass die Vorrichtung 100 nur ein Beispiel einer tragbaren Multifunktionsvorrichtung ist, und dass die Vorrichtung 100 wahlweise mehr oder weniger Komponenten als gezeigt aufweist, wahlweise zwei oder mehr Komponenten kombiniert oder wahlweise eine andere Konfiguration oder Anordnung der Komponenten aufweist. Die verschiedenen in 1A dargestellten Komponenten werden in Hardware, Software, Firmware oder jede Kombination davon implementiert, einschließlich eines oder mehrerer Signalverarbeitungs- und/oder anwendungsspezifischer, integrierter Schaltkreise.
  • Der Speicher 102 schließt wahlweise Hochgeschwindigkeitsdirektzugriffsspeicher und wahlweise auch nicht-flüchtigen Speicher, wie etwa eine oder mehrere Magnetdiskettenspeichervorrichtungen, Flash-Speicher-Vorrichtungen oder andere, nichtflüchtige Halbleiterlaufwerkspeichervorrichtungen, ein. Der Zugriff auf den Speicher 102 von anderen Komponenten der Vorrichtung 100 wie etwa von der CPU(s) 120 und der peripheren Schnittstelle 118 wird wahlweise von der Speichersteuerung 122 gesteuert.
  • Die Peripherieschnittstelle 118 kann dazu verwendet werden, um Eingabe- und Ausgabeperipherieeinheiten der Vorrichtung an die CPU(s) 120 und den Speicher 102 zu koppeln. Der eine oder die mehreren Prozessoren 120 führen verschiedene, im Speicher 102 gespeicherte Softwareprogramme und/oder Anweisungssätze aus, um verschiedene Funktionen für die Vorrichtung 100 durchzuführen und Daten zu verarbeiten.
  • In manchen Ausführungsformen sind die Peripherieschnittstelle 118, die CPU(s) 120 und die Speichersteuerung 122 wahlweise auf einem einzigen Chip, wie etwa einem Chip 104, implementiert. In einigen anderen Ausführungsformen sind sie wahlweise auf separaten Chips implementiert.
  • Die HF-Schaltung (Hochfrequenz-Schaltung) 108 empfängt und sendet HF-Signale, die auch als elektromagnetische Signale bezeichnet werden. Die HF-Schaltung 108 wandelt elektrische Signale in elektromagnetische Signale bzw. elektromagnetische Signale in elektrische Signale um und kommuniziert mittels der elektromagnetischen Signale mit Kommunikationsnetzwerken und anderen Kommunikationsvorrichtungen. Die HF-Schaltung 108 schließt wahlweise bekannte Schaltungen zum Ausführen dieser Funktionen, einschließlich unter anderem eines Antennensystems, eines HF-Sender-Empfängers, eines oder mehrerer Verstärker, eines Tuners, eines oder mehrerer Oszillatoren, eines digitalen Signalprozessors, eines Codec-Chipsatzes, einer Teilnehmeridentitätsmodulkarte (Subscriber Identity Module card, SIM-Karte), Speicher und so weiter ein. Die HF-Schaltung 108 kommuniziert mittels drahtloser Kommunikation wahlweise mit Netzwerken, wie etwa dem Internet, das auch als World Wide Web (WWW) bezeichnet wird, einem Intranet und/oder einem drahtlosen Netzwerk, wie etwa einem Mobiltelefonnetzwerk, einem drahtlosen lokalen Netzwerk (LAN) und/oder einem innerstädtischen Netzwerk (MAN) und anderen Vorrichtungen. Die drahtlose Kommunikation verwendet wahlweise jegliche von mehreren Kommunikationsstandards, Kommunikationsprotokollen und -technologien, unter anderem einschließlich von Global System for Mobile Communications (GSM), Enhanced Data GSM Environment (EDGE), High Speed Downlink Packet Access (HSDPA), High Speed Uplink Packet Access (HSUPA), Evolution Data-Only (EV-DO), HSPA, HSPA+, Dual-Cell HSPA (DC-HSPDA), Long Term Evolution (LTE), Nahfeldkommunikation (Near Field Communication, NFC), Wideband Code Division Multiple Access (W-CDMA), Code Division Multiple Access (CDMA), Time Division Multiple Access (TDMA), Bluetooth, Wireless Fidelity (Wi-Fi) (z. B. IEEE 802.11a, IEEE 802.11ac, IEEE 802.11ax, IEEE 802.11b, IEEE 802.11g und/oder IEEE 802.1In), Voice over Internet Protocol (VoIP), Wi-MAX, einem Protokoll für E-Mails (z. B. Internet Message Access Protocol (IMAP) und/oder Post Office Protocol (POP)), Instant Messaging (z. B. Extensible Messaging and Presence Protocol (XMPP), Session Initiation Protocol for Instant Messaging and Presence Leveraging Extensions (SIMPLE), Instant Messaging and Presence Service (IMPS)), und/oder Short Message Service (SMS), oder jegliches andere, geeignete Kommunikationsprotokoll, einschließlich von zum Zeitpunkt der Einreichung dieses Dokuments noch nicht entwickelten Kommunikationsprotokollen.
  • Die Audioschaltung 110, der Lautsprecher 111 und das Mikrofon 113 stellen eine Audioschnittstelle zwischen einem Benutzer und einer Vorrichtung 100 bereit. Die Audioschaltung 110 empfängt Audiodaten von der Peripherieschnittstelle 118, wandelt die Audiodaten in ein elektrisches Signal um und überträgt die elektrischen Signale an den Lautsprecher 111. Der Lautsprecher 111 wandelt das elektrische Signal in vom Menschen hörbare Schallwellen um. Die Audioschaltung 110 empfängt auch elektrische Signale, die vom Mikrofon 113 aus Schallwellen umgewandelte werden. Die Audioschaltung 110 wandelt die elektrischen Signale in Audiodaten um und überträgt die Audiodaten zur Verarbeitung an die Peripherieschnittstelle 118. Audiodaten werden von der Peripherieschnittstelle 118 wahlweise aus dem Speicher 102 und/oder der HF-Schaltung 108 abgerufen und/oder dorthin übermittelt. In einigen Ausführungsformen schließt die Audioschaltung 110 auch einen Kopfhöreranschluss (z. B. 212, 2) ein. Der Kopfhöreranschluss stellt eine Schnittstelle zwischen der Audioschaltung 110 und nicht fest eingebauten Eingabe/Ausgabe-Peripherieeinheiten bereit, wie etwa Nur-Ausgabe-Kopfhörer oder Kopfhörer sowohl mit Ausgabe (z. B. ein Kopfhörer für ein oder beide Ohren) als auch mit Eingabe (z. B. ein Mikrofon).
  • E/A-Subsystem 106 koppelt Eingabe-/Ausgabe-Peripherieeinheiten an der Vorrichtung 100, wie berührungsempfindliches Anzeigesystem 112 und anderen Eingabe- oder Steuervorrichtungen 116, an die Peripherieschnittstelle 118. Das E/A-Subsystem 106 schließt wahlweise eine Anzeigesteuerung 156, eine optische Sensorsteuerung 158, eine Intensitätssensorsteuerung 159, eine haptische Feedbacksteuerung 161 und eine oder mehrere Eingabesteuerungen 160 für andere Eingabe- oder Steuerungsvorrichtungen ein. Die eine oder die mehreren Eingabesteuerungen 160 empfangen/senden elektrische Signale von/an andere(n) Eingabe- oder Steuerungsvorrichtungen 116. Die anderen Eingabe- oder Steuervorrichtungen 116 schließen optional physische Tasten (z. B. Drucktasten, Wipptasten usw.), Drehsteuerungen, Schiebeschalter, Joysticks, Klickräder und dergleichen ein. In einigen alternativen Ausführungsformen ist/sind die Eingabesteuerung(en) 160 wahlweise an eine (oder keine) der Folgenden gekoppelt: eine Tastatur, Infrarotanschluss, USB-Anschluss, Eingabestift und/oder an eine Zeigevorrichtung wie eine Maus. Die eine oder die mehreren Schaltflächen (z. B. 208, 2) schließen wahlweise eine Aufwärts/Abwärts-Schaltfläche für die Lautstärkeregelung des Lautsprechers 111 und/oder des Mikrofons 113 ein. Die eine oder die mehreren Schaltflächen schließen eine Drucktaste (z. B. 206, 2) ein.
  • Das berührungsempfindliche Anzeigesystem 112 stellt eine Eingabeschnittstelle und eine Ausgabeschnittstelle zwischen der Vorrichtung und einem Benutzer bereit. Anzeigesteuerung 156 empfängt und/oder sendet elektrische Signale von dem/an das berührungsempfindliche(n) Anzeigesystem 112. Das berührungsempfindliche Anzeigesystem 112 zeigt dem Benutzer visuelle Ausgaben an. Die visuellen Ausgaben schließen wahlweise Grafiken, Text, Symbole, Video und eine beliebige Kombination davon (insgesamt als „Grafiken“ bezeichnet) ein. In einigen Ausführungsformen entsprechen einige oder alle der visuellen Ausgaben den Benutzerschnittstellenobjekten.
  • Das berührungsempfindliche Anzeigesystem 112 weist eine berührungsempfindliche Oberfläche, einen Sensor oder einen Satz von Sensoren auf, die/der/das Eingaben vom Benutzer basierend auf haptischem/taktilem Kontakt ermöglicht. Das berührungsempfindliche Anzeigesystem 112 und die Anzeigesteuerung 156 (zusammen mit etwaigen zugehörigen Modulen und/oder Anweisungssätzen in dem Speicher 102) erfassen einen Kontakt (und eine etwaige Bewegung oder ein Abbrechen des Kontakts) auf dem berührungsempfindlichen Anzeigesystem 112 und wandeln den erfassten Kontakt in eine Interaktion mit Benutzerschnittstellenobjekten (z. B. einem/einer oder mehreren Softkeys, Symbolen, Webseiten oder Bildern), die auf dem berührungsempfindlichen Anzeigesystem 112 angezeigt werden, um. In einer beispielhaften Ausführungsform entspricht ein Kontaktpunkt zwischen dem berührungsempfindlichen Anzeigesystem 112 und dem Benutzer einem Finger des Benutzers oder einem Eingabestift.
  • Das berührungsempfindliche Anzeigesystem 112 verwendet optional LCD-Technologie (Flüssigkristallanzeigetechnologie), LPD-Technologie (Technologie einer Licht emittierenden Polymeranzeige) oder LED-Technologie (Leuchtdiodentechnologie), wenngleich in anderen Ausführungsformen andere Anzeigetechnologien verwendet werden. Das berührungsempfindliche Anzeigesystem 112 und die Anzeigesteuerung 156 erfassen wahlweise einen Kontakt und eine etwaige Bewegung oder ein Abbrechen des Kontakts unter Verwendung mehrerer, bereits bekannter oder noch zu entwickelnder Berührungssensortechnologien, unter anderem einschließlich kapazitiver, auf Widerstand basierender, Infrarot- und akustischer Oberflächenwellentechnologien sowie anderer Näherungssensoranordnungen oder anderer Elemente zum Bestimmen eines oder mehrerer Kontaktpunkte auf dem Touchscreen 112. In einer beispielhaften Ausführungsform wird projizierte, auf gegenseitiger Kapazität beruhende Sensortechnologie verwendet, wie diejenige, die im iPhone®, iPod Touch® und iPad® von Apple Inc. in Cupertino, Kalifornien, zu finden ist.
  • Das berührungsempfindliche Anzeigesystem 112 hat wahlweise eine Videoauflösung von mehr als 100 dpi. In einigen Ausführungsformen beträgt die Touchscreen-Videoauflösung mehr als 400 dpi (z. B. 500 dpi, 800 dpi oder mehr). Der Benutzer stellt optional Kontakt mit dem berührungsempfindlichen Anzeigesystem 112 her, indem er ein geeignetes Objekt oder Element, wie einen Eingabestift, einen Finger und dergleichen, verwendet. In einigen Ausführungsformen ist die Benutzerschnittstelle dazu ausgelegt, mit fingerbasierten Kontakten und Gesten zu arbeiten, die aufgrund der größeren Kontaktfläche eines Fingers auf dem Touchscreen weniger genau als eine Eingabe mit einem Eingabestift sein können. In einigen Ausführungsformen übersetzt die Vorrichtung die grobe auf Fingern basierende Eingabe in eine präzise Position des Mauszeigers/Cursors oder in einen Befehl zum Ausführen der vom Benutzer gewünschten Aktionen.
  • In einigen Ausführungsformen schließt die Vorrichtung 100 zusätzlich zum Touchscreen wahlweise ein Touchpad zum Aktivieren oder Deaktivieren bestimmter Funktionen ein. In manchen Ausführungsformen ist das Touchpad ein berührungsempfindlicher Bereich der Vorrichtung, der im Gegensatz zum Touchscreen keine visuellen Ausgaben anzeigt. Das Touchpad ist wahlweise eine berührungsempfindliche Oberfläche, die vom berührungsempfindlichen Anzeigesystem 112 separat ist, oder eine Verlängerung der vom Touchscreen gebildeten, berührungsempfindlichen Oberfläche.
  • Die Vorrichtung 100 schließt auch das Stromversorgungssystem 162 ein, um die verschiedenen Komponenten mit Strom zu versorgen. Das Stromversorgungssystem 162 schließt wahlweise ein Stromverwaltungssystem, eine oder mehrere Stromquellen (z. B. Batterie, Wechselstrom (AC)), ein Aufladesystem, eine Stromausfallerfassungsschaltung, einen Stromrichter oder Wechselrichter, eine Stromstatusanzeige (z. B. eine Leuchtdiode (LED)) und jegliche andere Komponenten ein, die mit der Stromerzeugung, Stromverwaltung und Stromverteilung in tragbaren Vorrichtungen im Zusammenhang stehen.
  • Die Vorrichtung 100 schließt wahlweise auch einen oder mehrere optische Sensoren 164 ein. 1A zeigt einen optischen Sensor, der an die optische Sensorsteuerung 158 im E/A-Subsystem 106 gekoppelt ist. Der/die optische(n) Sensor(en) 164 schließt/schließen wahlweise Fototransistoren mit ladungsgekoppelten Bauteilen (charge-coupled device, CCD) oder mit komplementären Metalloxid-Halbleitern (complementary metal-oxide semiconductor, CMOS) ein. Der/die optische(n) Sensor(en) 164 empfängt/empfangen Licht aus der Umgebung, das durch eine oder mehrere Linsen projiziert wird, und wandelt das Licht in ein Bild darstellende Daten um. In Verbindung mit dem Bildgebungsmodul 143 (das auch als Kameramodul bezeichnet wird) nimmt/nehmen der/die optische(n) Sensor(en) 164 wahlweise Standbilder oder Videos auf. In manchen Ausführungsformen befindet sich ein optischer Sensor auf der Rückseite der Vorrichtung 100 gegenüber dem berührungsempfindlichen Anzeigesystem 112 auf der Vorderseite der Vorrichtung, so dass der Touchscreen für eine Verwendung als Sucher für eine Stand- und/oder Videobilderfassung befähigt ist. In einigen Ausführungsformen befindet sich ein weiterer optischer Sensor auf der Vorderseite der Vorrichtung, so dass das Bild des Benutzers (z. B. für Selfies, für Videokonferenzen, während der Benutzer die anderen Teilnehmer der Videokonferenz auf dem Touchscreen sieht, usw.) erhalten wird.
  • Die Vorrichtung 100 schließt wahlweise auch einen oder mehrere Kontaktintensitätssensoren 165 ein. 1A zeigt einen Kontaktintensitätssensor, der an die Intensitätssensorsteuerung 159 im E/A-Subsystem 106 gekoppelt ist. Der/die Kontaktintensitätssensor(en) 165 schließt/schließen wahlweise ein oder mehrere piezoresistive Dehnungsmesser, kapazitive Kraftsensoren, elektrische Kraftsensoren, piezoelektrische Kraftsensoren, optische Kraftsensoren, kapazitive berührungsempfindliche Oberflächen oder andere Intensitätssensoren (z. B. Sensoren, die zum Messen der Kraft (oder des Drucks) eines Kontakts auf einer berührungsempfindlichen Oberfläche verwendet werden) ein. Der/die Kontaktintensitätssensor(en) 165 empfängt/empfangen Kontaktintensitätsinformationen (z. B. Druckinformationen oder einen Ersatz für Druckinformationen) aus der Umgebung. In einigen Ausführungsformen ist mindestens ein Kontaktintensitätssensor zusammen mit oder neben einer berührungsempfindlichen Oberfläche (z. B. dem berührungsempfindlichen Anzeigesystem 112) angeordnet. In manchen Ausführungsformen befindet sich mindestens ein Kontaktintensitätssensor auf der Rückseite der Vorrichtung 100 gegenüber des Touchscreen-Anzeigesystems 112, das sich auf der Vorderseite der Vorrichtung 100 befindet.
  • Die Vorrichtung 100 schließt wahlweise auch einen oder mehrere Näherungssensoren 166 ein. 1A zeigt den Näherungssensor 166 an die Peripherieschnittstelle 118 gekoppelt. Alternativ dazu ist der Näherungssensor 166 an die Eingabesteuerung 160 im E/A-Subsystem 106 gekoppelt. In manchen Ausführungsformen schaltet der Näherungssensor das berührungsempfindliche Anzeigesystem 112 aus und deaktiviert es, wenn die Multifunktionsvorrichtung in der Nähe des Ohrs des Benutzers platziert wird (z. B. wenn der Benutzer ein Telefongespräch führt).
  • Die Vorrichtung 100 schließt wahlweise auch einen oder mehrere Tastausgabeerzeuger 163 ein. 1A zeigt einen Tastausgabeerzeuger, der an die haptische Feedbacksteuerung 161 im E/A-Subsystem 106 gekoppelt ist. Der/die Tastausgabeerzeuger 163 schließt/schließen wahlweise eine oder mehrere elektroakustische Vorrichtungen wie etwa Lautsprecher oder andere Audiokomponenten und/oder elektromechanische Vorrichtungen, die Energie in lineare Bewegung umwandeln, wie etwa einen Motor, einen Elektromagneten, ein elektroaktives Polymer, einen piezoelektrischen Aktuator, einen elektrostatischen Aktuator oder eine andere Komponente zur Erzeugung taktiler Ausgaben (z. B. eine Komponente, die elektrische Signale auf der Vorrichtung in taktile Ausgaben umwandelt) ein. Der/die Tastausgabeerzeuger 163 empfängt/empfangen vom haptischen Feedbackmodul 133 Anweisungen zum Erzeugen von Tastfeedback und erzeugt Tastausgaben auf der Vorrichtung 100, die von einem Benutzer der Vorrichtung 100 wahrgenommen werden können. In einigen Ausführungsformen ist mindestens ein Tastausgabeerzeuger zusammen mit oder neben einer berührungsempfindlichen Oberfläche (z. B. dem berührungsempfindlichen Anzeigesystem 112) angeordnet und erzeugt wahlweise eine Tastausgabe, indem die berührungsempfindliche Oberfläche senkrecht (z. B. in eine Oberfläche der Vorrichtung 100 hinein oder aus ihr heraus) oder seitwärts (z. B. vorwärts und rückwärts in der gleichen Ebene wie eine Oberfläche der Vorrichtung 100) bewegt wird. In manchen Ausführungsformen befindet sich mindestens ein Tastausgabeerzeuger auf der Rückseite der Vorrichtung 100 gegenüber dem berührungsempfindlichen Anzeigesystem 112, das sich auf der Vorderseite der Vorrichtung 100 befindet.
  • Die Vorrichtung 100 schließt optional auch einen oder mehrere Beschleunigungsmesser 167, Gyroskope 168 und/oder Magnetometer 169 (z. B. als Teil einer Inertialmesseinheit (IMU)) zum Erhalten von Informationen über die Position (z. B. Lage) der Vorrichtung ein. 1A zeigt die Sensoren 167, 168 und 169, die mit der Peripherieschnittstelle 118 gekoppelt sind. Alternativ dazu sind die Sensoren 167, 168 und 169 wahlweise mit einer Eingabesteuerung 160 im E/A-Subsystem 106 gekoppelt. In einigen Ausführungsformen werden Informationen auf der Touchscreen-Anzeige im Hochformat oder im Querformat angezeigt, basierend auf einer Analyse von Daten, die von dem einen oder den mehreren Beschleunigungsmessern empfangen wurden. Die Vorrichtung 100 schließt wahlweise einen GPS-Empfänger (oder GLONASS oder ein anderes globales Navigationssystem) ein, um Informationen über den Standort der Vorrichtung 100 zu erhalten.
  • In einigen Ausführungsformen schließen die im Speicher 102 gespeicherten Software-Komponenten das Betriebssystem 126, das Kommunikationsmodul (oder einen Anweisungssatz) 128, das Kontakt-/Bewegungsmodul (oder einen Anweisungssatz) 130, das Grafikmodul (oder einen Anweisungssatz) 132, das Modul für haptisches Feedback (oder einen Anweisungssatz) 133, das Texteingabemodul (oder einen Anweisungssatz) 134, das GPS-Modul (Globales Positionierungssystem-Modul) (oder einen Anweisungssatz) 135, und Anwendungen (oder einen Anweisungssatz) 136 ein. Darüber hinaus speichert der Speicher 102 in einigen Ausführungsformen den Vorrichtungszustand/globalen internen Zustand 157, wie in 1A und 3 gezeigt. Der Vorrichtungszustand/globale interne Zustand 157 schließt eines oder mehrere von Folgendem ein: den aktiven Anwendungszustand, der angibt, ob und welche Anwendungen derzeit aktiv sind; den Anzeigezustand, der angibt, welche Anwendungen, Ansichten oder andere Informationen verschiedene Bereiche des berührungsempfindlichen Anzeigesystems 112 belegen; den Sensorzustand, einschließlich Informationen, die von den verschiedenen Sensoren und anderen Eingabe- oder Steuervorrichtungen 116 erhalten werden; und Standort- und/oder Positionsinformationen, die den Standort und/oder die Lage der Vorrichtung betreffen.
  • Das Betriebssystem 126 (z. B. iOS, Darwin, RTXC, LINUX, UNIX, OS X, WINDOWS oder ein eingebettetes Betriebssystem wie VxWorks) schließt verschiedene Softwarekomponenten und/oder Softwaretreiber zum Steuern und Verwalten der allgemeinen Systemaufgaben (z. B. Speicherverwaltung, Speichervorrichtungssteuerung, Stromverwaltung etc.) und erleichtert die Kommunikation zwischen verschiedenen Hardware- und Softwarekomponenten ein.
  • Das Kommunikationsmodul 128 ermöglicht die Kommunikation mit anderen Vorrichtungen über einen oder mehrere externe Anschlüsse 124 und schließt auch verschiedene Software-Komponenten zur Verarbeitung von Daten ein, die von der HF-Schaltung 108 und/oder vom externen Anschluss 124 empfangen wurden. Der externe Anschluss 124 (z. B. Universal Serial Bus (USB), FIREWIRE usw.) ist dafür ausgelegt, direkt an andere Vorrichtungen oder indirekt über ein Netzwerk (z. B. das Internet, WLAN usw.) gekoppelt zu werden. In einigen Ausführungsformen ist der externe Anschluss ein mehrpoliger (z. B. 30-poliger) Steckverbinder, der mit dem 30-poligen Steckverbinder, der in einigen iPhone®-, iPod Touch®- und iPad®-Vorrichtungen von Apple Inc. aus Cupertino, Kalifornien, verwendet wird, gleich oder ähnlich und/oder kompatibel ist. In einigen Ausführungsformen ist der externe Anschluss ein Lightning-Steckverbinder, der gleich oder ähnlich und/oder kompatibel mit dem Lightning-Steckverbinder ist, der in einigen iPhone®-, iPod Touch®- und iPad® -Vorrichtungen von Apple Inc. von Cupertino, Kalifornien, verwendet wird.
  • Das Kontakt-/Bewegungsmodul 130 erfasst wahlweise einen Kontakt mit dem berührungsempfindlichen Anzeigesystem 112 (in Verbindung mit der Anzeigesteuerung 156) und anderen berührungsempfindlichen Vorrichtungen (z. B. einem Touchpad oder einem physischen Click Wheel). Das Kontakt-/Bewegungsmodul 130 schließt Software-Komponenten zum Ausführen verschiedener Operationen ein, die mit dem Erfassen von Kontakt in Zusammenhang stehen (z. B. durch einen Finger oder einen Eingabestift), wie Bestimmen, ob es einen Kontakt gab (z. B. Erfassen eines stattfindenden Aufsetzens bzw. Andrückens eines Fingers), Bestimmen einer Intensität des Kontakts (z. B. der Kraft oder des Drucks des Kontakts oder eines Ersatzes für die Kraft oder den Druck des Kontakts), Bestimmen, ob eine Bewegung des Kontakts vorliegt, und Nachverfolgen der Bewegung über die berührungsempfindliche Oberfläche hinweg (z. B. Erfassen eines stattfindenden Ziehens des Fingers), und Bestimmen, ob der Kontakt aufgehört hat (z. B. Erfassen eines stattfindenden Anhebens eines Fingers oder einer Unterbrechung des Kontakts). Das Kontakt-/Bewegungsmodul 130 empfängt Kontaktdaten von der berührungsempfindlichen Oberfläche. Das Bestimmen von Bewegung des Kontaktpunkts, die von einer Reihe von Kontaktdaten dargestellt wird, schließt wahlweise das Bestimmen von Schnelligkeit (Größenordnung), Geschwindigkeit (Größenordnung und Richtung) und/oder einer Beschleunigung (einer Veränderung der Größenordnung und/oder der Richtung) des Kontaktpunkts ein. Diese Operationen werden wahlweise auf einzelne Kontakte (z. B. einen Finger- oder Eingabestiftkontakt) oder auf mehrere gleichzeitige Kontakte (z. B. „Mehrfachberührungs-“/mehrere Fingerkontakte und/oder Eingabestiftkontakte) angewendet. In manchen Ausführungsformen erfassen das Kontakt-/Bewegungsmodul 130 und die Anzeigesteuerung 156 Kontakt auf einem Touchpad.
  • Das Kontakt-/Bewegungsmodul 130 erfasst wahlweise eine Eingabe durch eine Geste eines Benutzers. Unterschiedliche Gesten auf der berührungsempfindlichen Oberfläche haben unterschiedliche Kontaktmuster (z. B. unterschiedliche Bewegungen, Zeiten und/oder Intensitäten erfasster Kontakte). Folglich wird eine Geste wahlweise durch Erfassen eines bestimmten Kontaktmusters erfasst. Beispielsweise beinhaltet das Erfassen einer Fingerklopfbewegung das Erfassen eines Fingerauflege-Ereignisses gefolgt vom Erfassen eines Fingeranhebe- bzw. Abhebe-Ereignisses an der gleichen Stelle (oder im Wesentlichen der gleichen Stelle) wie das Fingerauflege-Ereignis (z. B. an der Stelle eines Icons). Als ein weiteres Beispiel beinhaltet das Erfassen einer Fingerwischgeste auf der berührungsempfindlichen Oberfläche das Erfassen eines Fingerauflege-Ereignisses gefolgt vom Erfassen eines oder mehrerer Fingerzieh-Ereignisse und schließlich gefolgt vom Erfassen eines Fingeranhebe- bzw. Abhebe-Ereignisses. In ähnlicher Weise werden Tippen, Wischen, Ziehen und andere Gesten wahlweise für einen Eingabestift erfasst, indem ein bestimmtes Kontaktmuster für den Eingabestift erfasst wird.
  • Das Grafikmodul 132 schließt verschiedene bekannte Software-Komponenten zum Rendern und Anzeigen von Grafik auf dem berührungsempfindlichen Anzeigesystem 112 oder einer anderen Anzeige ein, einschließlich Komponenten zum Ändern der visuellen Auswirkung (z. B. Helligkeit, Transparenz, Sättigung, Kontrast oder einer anderen visuellen Eigenschaft) von Grafik, die angezeigt wird. Wie hier verwendet, beinhaltet der Begriff „Grafiken“ jegliches Objekt, das einem Benutzer angezeigt werden kann, einschließlich von unter anderem Text, Webseiten, Icons (wie etwa Benutzeroberflächenobjekte einschließlich Softkeys), digitalen Bildern, Video-S, Animationen und dergleichen.
  • In manchen Ausführungsformen speichert das Grafikmodul 132 Daten, die zu verwendende Grafiken darstellen. Jeder Grafik wird wahlweise ein entsprechender Code zugewiesen. Das Grafikmodul 132 empfängt von Anwendungen usw. einen oder mehrere Codes, die Grafiken spezifizieren, die, falls erforderlich, zusammen mit Koordinatendaten und anderen Daten zu grafischen Eigenschaften angezeigt werden sollen, und erzeugt dann Bildschrimbilddaten zur Ausgabe an die Anzeigesteuerung 156.
  • Das Modul für haptisches Feedback 133 schließt verschiedene Software-Komponenten zum Erzeugen von Anweisungen ein, die von dem/den Tastausgabeerzeuger(n) 163 verwendet werden, um Tastausgaben an einem oder mehreren Orten auf der Vorrichtung 100 als Reaktion auf Benutzerinteraktionen mit der Vorrichtung 100 zu erzeugen.
  • Das Texteingabemodul 134, bei dem es sich wahlweise um eine Komponente des Grafikmoduls 132 handelt, stellt Softtastaturen zum Eingeben von Text in verschiedenen Anwendungen bereit (z. B. Kontakte 137, E-Mail 140, IM 141, Browser 147 und jede andere Anwendung, die eine Texteingabe benötigt).
  • Das GPS-Modul 135 bestimmt den Ort der Vorrichtung und stellt diese Informationen zur Verwendung in verschiedenen Anwendungen bereit (z. B. dem Telefon 138 zur Verwendung von Wählen auf Ortsbasis, der Kamera 143 als Bild-/Video-Metadaten, und Anwendungen die standortbezogene Dienste anbieten wie etwas Wetter-Widgets, Widgets der örtlichen gelben Seiten und Karten-/Navigations-Widgets).
  • Die Anwendungen 136 schließen wahlweise die folgenden Module (oder Anweisungssätze), oder eine Teilmenge oder eine Übermenge davon ein:
    • • Kontaktemodul 137 (manchmal auch Adressbuch oder Kontaktliste genannt);
    • • Telefonmodul 138;
    • • Videokonferenzmodul 139;
    • • E-Mail-Client-Modul 140;
    • • Instant Messaging (IM)-Modul 141;
    • • Trainingsunterstützungsmodul 142;
    • • Kameramodul 143 für Standbilder und/oder Videobilder;
    • • Bildverwaltungsmodul 144;
    • • Browsermodul 147;
    • • Kalendermodul 148;
    • • Widget-Module 149, die wahlweise eines oder mehrere einschließen von:
      • einem Wetter-Widget 149-1, einem Aktien-Widget 149-2, einem Rechner-Widget 149-3, einem Wecker-Widget 149-4, einem Wörterbuch-Widget 149-5 und weiteren durch den Benutzer erhaltenen Widgets sowie durch den Benutzer erstellten Widgets 149-6;
    • • Widget-Erzeugermodul 150 zum Erstellen von durch Benutzer erzeugte Widgets 149-6;
    • • Suchmodul 151;
    • • Modul zur Wiedergabe von Videos und Musik 152, das wahlweise aus einem Videowiedergabemodul und einem Musikwiedergabemodul besteht;
    • • Notizenmodul 153;
    • • Kartenmodul 154; und/oder
    • • Online-Video-Modul 155.
  • Beispiele für andere Anwendungen 136, die wahlweise im Speicher 102 gespeichert sind, schließen andere Textverarbeitungsanwendungen, andere Bildbearbeitungsanwendungen, Zeichnungsanwendungen, Präsentationsanwendungen, JAVA-fähige Anwendungen, Verschlüsselung, digitale Rechteverwaltung, Spracherkennung und Stimmreplikation ein.
  • In Verbindung mit dem berührungsempfindlichen Anzeigesystem 112, der Anzeigesteuerung 156, dem Kontaktmodul 130, dem Grafikmodul 132 und dem Texteingabemodul 134 schließt das Kontaktmodul 137 ausführbare Anweisungen zum Verwalten eines Adressbuchs oder einer Kontaktliste (z. B. gespeichert im anwendungsinternen Zustand 192 des Kontaktmoduls 137 im Speicher 102 oder im Speicher 370), einschließlich: Hinzufügen von Namen zu dem Adressbuch ein; Löschen von Namen aus dem Adressbuch; Zuordnen von Telefonnummern, E-Mail-Adressen, physischen Adressen oder anderen Informationen zu einem Namen; Zuordnen eines Bildes zu einem Namen; Klassifizieren und Sortieren von Namen; Bereitstellen von Telefonnummern und/oder E-Mail-Adressen, um die Kommunikation über Telefon 138, Videokonferenz 139, E-Mail 140 oder IM 141 zu initiieren und/oder zu ermöglichen; und so weiter.
  • In Verbindung mit der HF-Schaltung 108, der Audioschaltung 110, dem Lautsprecher 111, dem Mikrofon 113, dem berührungsempfindlichen Anzeigesystem 112, der Anzeigesteuerung 156, dem Kontaktmodul 130, dem Grafikmodul 132 und dem Texteingabemodul 134 schließt das Telefonmodul 138 ausführbare Anweisungen ein, um eine Zeichenfolge einzugeben, die einer Telefonnummer entspricht, auf eine oder mehrere Telefonnummern im Adressbuch 137 zuzugreifen, eine eingegebene Telefonnummer abzuändern, eine entsprechende Telefonnummer zu wählen, ein Gespräch zu führen und die Verbindung zu beenden oder aufzulegen, wenn das Gespräch zu Ende ist. Wie oben erwähnt, verwendet die drahtlose Kommunikation wahlweise beliebige von mehreren Kommunikationsstandards, -protokollen und -technologien.
  • In Verbindung mit der HF-Schaltung 108, der Audioschaltung 110, dem Lautsprecher 111, dem Mikrofon 113, dem berührungsempfindlichen Anzeigesystem 112, der Anzeigesteuerung 156, dem/den optischen Sensor(en) 164, der optischen Sensorsteuerung 158, dem Kontaktmodul 130, dem Grafikmodul 132, dem Texteingabemodul 134, der Kontaktliste 137 und dem Telefonmodul 138 schließt das Videokonferenzmodul 139 ausführbare Anweisungen zum Einleiten, Führen und Beenden einer Videokonferenz zwischen einem Benutzer und einem oder mehreren anderen Teilnehmern gemäß Benutzeranweisungen ein.
  • In Verbindung mit der HF-Schaltung 108, dem berührungsempfindlichen Anzeigesystem 112, der Anzeigesteuerung 156, dem Kontaktmodul 130, dem Grafikmodul 132 und dem Texteingabemodul 134 schließt das E-Mail-Client-Modul 140 ausführbare Anweisungen zum Erzeugen, Senden, Empfangen und Verwalten von E-Mails als Reaktion auf Benutzeranweisungen ein. In Verbindung mit dem Bildverwaltungsmodul 144 macht es das E-Mail-Client-Modul 140 sehr leicht, E-Mails mit Standbildern oder Videobildern, die mit dem Kameramodul 143 aufgenommen wurden, zu erstellen und zu versenden.
  • In Verbindung mit der HF-Schaltung 108, dem berührungsempfindlichen Anzeigesystem 112, der Anzeigesteuerung 156, dem Kontaktmodul 130, dem Grafikmodul 132 und dem Texteingabemodul 134 schließt das Instant Messaging-Modul 141 ausführbare Anweisungen zum Eingeben einer Zeichenfolge, die einer Sofortnachricht (instant message) entspricht, zum Ändern zuvor eingegebener Zeichen, zum Übertragen einer jeweiligen Sofortnachricht (zum Beispiel unter Verwendung eines Kurznachrichtendienst (Short Message Service -SMS)- oder eines Multimedianachrichtendienst (Multimedia Message Service - MMS)-Protokolls für telefoniebasierte Sofortnachrichten oder unter Verwendung von XMPP, SIMPLE, Apple Push Notification Service (APNs) oder IMPS für internetbasierte Sofortnachrichten), zum Empfangen von Sofortnachrichten und zum Ansehen von empfangenen Sofortnachrichten ein. In einigen Ausführungsformen schließen übermittelte und/oder empfangene Sofortnachrichten wahlweise Grafiken, Fotos, Audiodateien, Videodateien und/oder andere Anhänge, die von einem MMS und/oder einem Erweiterten Nachrichtendienst (Enhanced Messaging Service - EMS) unterstützt werden, ein. Wie hier verwendet, bezieht sich „Instant Messaging“ sowohl auf telefoniebasierte Nachrichten (z. B. per SMS oder MMS gesendete Nachrichten) als auch auf internetbasierte Nachrichten (z. B. per XMPP, SIMPLE, APNs oder IMPS gesendete Nachrichten).
  • In Verbindung mit der HF-Schaltung 108, dem berührungsempfindlichen Anzeigesystem 112, der Anzeigesteuerung 156, dem Kontaktmodul 130, dem Grafikmodul 132, dem Texteingabemodul 134, dem GPS-Modul 135, dem Kartenmodul 154 und dem Video- und Musikwiedergabemodul 152 schließt das Trainingsunterstützungsmodul 142 ausführbare Anweisungen zum Erstellen von Trainingseinheiten (z. B. mit Zeit-, Entfernungs- und/oder Kalorienverbrennungszielen); Kommunizieren mit Trainingssensoren (in Sportvorrichtungen und intelligenten Uhren); zum Empfangen von Trainingssensordaten; zum Kalibrieren von Sensoren, die verwendet werden, um eine Trainingseinheit zu überwachen; zum Auswählen und Abspielen von Musik für eine Trainingseinheit; und zum Anzeigen, Speichern und Senden von Trainingsdaten ein.
  • In Verbindung mit dem berührungsempfindlichen Anzeigesystem 112, der Anzeigesteuerung 156, dem/den optischen Sensor(en) 164, der optischen Sensorsteuerung 158, dem Kontaktmodul 130, dem Grafikmodul 132 und dem Bildverwaltungsmodul 144 schließt das Kameramodul 143 ausführbare Anweisungen zum Erfassen von Standbildern oder Videos (einschließlich eines Videostreams) und zum Speichern derselben im Speicher 102, zum Ändern der Eigenschaften eines Standbilds oder Videos und/oder zum Löschen eines Standbilds oder Videos aus dem Speicher 102 ein.
  • In Verbindung mit dem berührungsempfindlichen Anzeigesystem 112, der Anzeigesteuerung 156, dem Kontaktmodul 130, dem Grafikmodul 132, dem Texteingabemodul 134 und dem Kameramodul 143 schließt das Bildverwaltungsmodul 144 ausführbare Anweisungen zum Anordnen, Verändern (z. B. Bearbeiten) oder zum anderweitigen Verarbeiten, Kennzeichnen, Löschen, Präsentieren (z. B. in einer digitalen Diashow oder einem digitalen Album) und Speichern von Stand- und/oder Videobildern ein.
  • In Verbindung mit der HF-Schaltung 108, dem berührungsempfindlichen Anzeigesystem 112, der Anzeigesystemsteuerung 156, dem Kontaktmodul 130, dem Grafikmodul 132 und dem Texteingabemodul 134 schließt das Browsermodul 147 ausführbare Anweisungen zum Browsen des Internets gemäß Benutzeranweisungen, einschließlich Suchen von, Verknüpfen mit, Empfangen von und Anzeigen von Webseiten oder Teilen davon, sowie Anhängen und anderen mit Webseiten verknüpften Dateien ein.
  • In Verbindung mit der HF-Schaltung 108, dem berührungsempfindlichen Anzeigesystem 112, der Anzeigesystemsteuerung 156, dem Kontaktmodul 130, dem Grafikmodul 132, dem Texteingabemodul 134, dem E-Mail-Client-Modul 140 und dem Browsermodul 147 schließt das Kalendermodul 148 ausführbare Anweisungen zum Erstellen, Anzeigen, Verändern und Speichern von Kalendern und mit Kalendern zusammenhängenden Daten (z. B. Kalendereinträge, Aufgabenlisten, etc.) gemäß Benutzeranweisungen ein.
  • In Verbindung mit der HF-Schaltung 108, dem berührungsempfindlichen Anzeigesystem 112, der Anzeigesystemsteuerung 156, dem Kontaktmodul 130, dem Grafikmodul 132, dem Texteingabemodul 134 und dem Browsermodul 147 handelt es sich bei dem Widget-Modulen 149 um Minianwendungen, die wahlweise durch einen Benutzer heruntergeladen und verwendet werden können (z. B. das Wetter-Widget 149-1, das Aktien-Widget 149-2, das Rechner-Widget 149-3, das Wecker-Widget 149-4 und das Wörterbuch-Widget 149-5) oder die durch einen Benutzer erstellt werden (z. B. das benutzererstellte Widget 149-6). In einigen Ausführungsformen schließt ein Widget eine HTML-Datei (Hypertext Markup Language-Datei), eine CSS-Datei (Cascading Style Sheets-Datei) und eine JavaScript-Datei ein. In einigen Ausführungsformen schließt ein Widget eine XML-Datei (Extensible Markup Language-Datei) und eine JavaScript-Datei (z. B. Yahoo!- Widgets) ein.
  • In Verbindung mit der HF-Schaltung 108, dem berührungsempfindlichen Anzeigesystem 112, der Anzeigesystemsteuerung 156, dem Kontaktmodul 130, dem Grafikmodul 132, dem Texteingabemodul 134 und dem Browsermodul 147 schließt das Widgeterstellungsmodul 150 ausführbare Anweisungen ein, um Widgets zu erstellen (z. B. zum Umwandeln eines vom Benutzer vorgegebenen Teils einer Webseite in ein Widget).
  • In Verbindung mit dem berührungsempfindlichen Anzeigesystem 112, der Anzeigesystemsteuerung 156, dem Kontaktmodul 130, dem Grafikmodul 132 und dem Texteingabemodul 134 schließt das Suchmodul 151 ausführbare Anweisungen zum Suchen nach Text, Musik, Ton, Bildern, Videos und/oder anderen Dateien im Speicher 102, die einem oder mehreren Suchkriterien entsprechen (z. B. einem oder mehreren vom Benutzer vorgegebenen Suchbegriffen) gemäß Benutzeranweisungen ein.
  • In Verbindung mit dem berührungsempfindlichen Anzeigesystem 112, der Anzeigesystemsteuerung 156, dem Kontaktmodul 130, dem Grafikmodul 132, der Audioschaltung 110, dem Lautsprecher 111, der HF-Schaltung 108 und dem Browsermodul 147 schließt das Modul zur Wiedergabe von Video und Musik 152 ausführbare Anweisungen, die es dem Benutzer ermöglichen, aufgezeichnete Musik und andere in einem oder mehreren Dateiformaten, wie etwa MP3- oder AAC-Dateien, gespeicherte Audiodateien herunterzuladen und wiederzugeben, und ausführbare Anweisungen zum Anzeigen, Präsentieren oder anderweitigem Wiedergeben von Videos (z. B. auf dem Touchscreen 112 oder auf einem externen, über die externe Schnittstelle 124 verbundenen Anzeige) ein. In einigen Ausführungsformen schließt die Vorrichtung 100 wahlweise die Funktionalität eines MP3-Players, wie etwa einem iPod (Markenzeichen von Apple Inc.), ein.
  • In Verbindung mit dem berührungsempfindlichen Anzeigesystem 112, der Anzeigesteuerung 156, dem Kontaktmodul 130, dem Grafikmodul 132 und dem Texteingabemodul 134 schließt das Notizenmodul 153 ausführbare Anweisungen zum Erzeugen und Verwalten von Notizen, Aufgabenlisten und dergleichen gemäß Benutzeranweisungen ein.
  • In Verbindung mit dem RF-Schaltkreis 108, dem berührungsempfindlichen Anzeigesystem 112, der Anzeigesystemsteuerung 156, dem Kontaktmodul 130, dem Grafikmodul 132, dem Texteingabemodul 134, dem GPS-Modul 135 und dem Browsermodul 147 schließt das Kartenmodul 154 ausführbare Anweisungen zum Empfangen, Anzeigen, Modifizieren und Speichern von Karten und Daten, die Karten zugeordnet sind (z. B. Fahrtrichtungen; Daten über Geschäfte und andere Interessenpunkte an oder nahe einem bestimmten Ort; und andere ortsbasierte Daten) in Übereinstimmung mit Benutzeranweisungen ein.
  • In Verbindung mit dem berührungsempfindlichen Anzeigesystem 112, der Anzeigesystemsteuerung 156, dem Kontaktmodul 130, dem Grafikmodul 132, der Audioschaltung 110, dem Lautsprecher 111, der HF-Schaltung 108, dem Texteingabemodul 134, dem E-Mail-Client-Modul 140 und dem Browsermodul 147 schließt das Online-Video-Modul 155 ausführbare Anweisungen ein, die es dem Benutzer ermöglichen, auf Online-Videos zuzugreifen, sie zu durchsuchen, zu empfangen (z. B. durch Streamen und/oder Herunterladen), wiederzugeben (z. B. auf dem Touchscreen 112 oder auf einer externen Anzeige, die drahtlos oder über den externen Anschluss 124 angeschlossen ist), eine E-Mail mit einem Link zu einem bestimmten Online-Video zu senden und Online-Videos anderweitig in einem oder mehreren Dateiformaten, wie etwa H.264, zu verwalten. In einigen Ausführungsformen wird das Instant Messaging-Modul 141 anstelle des E-Mail-Client-Moduls 140 verwendet, um einen Link zu einem bestimmten Online-Video zu senden.
  • Jedes/jede der vorstehend aufgezeigten Module und Anwendungen entspricht einem Satz von ausführbaren Befehlen zum Ausführen einer oder mehrerer vorstehend beschriebener Funktionen und der in dieser Anmeldung beschriebenen Verfahren (z. B. der computerimplementierten Verfahren und anderer hierin beschriebener, informationsverarbeitender Verfahren). Diese Module (d. h. Befehlssätze) müssen nicht als separate Softwareprogramme, -verfahren oder -module implementiert werden, und deshalb sind verschiedene Teilsätze dieser Module wahlweise in verschiedenen Ausführungsformen kombiniert oder anderweitig anders angeordnet. In manchen Ausführungsformen speichert der Speicher 102 wahlweise eine Teilmenge der oben aufgezeigten Module und Datenstrukturen. Des Weiteren speichert der Speicher 102 wahlweise zusätzliche Module und Datenstrukturen, die vorstehend nicht beschrieben wurden.
  • In manchen Ausführungsformen handelt es sich bei der Vorrichtung 100 um eine Vorrichtung, bei der das Betreiben eines vordefinierten Satzes von Funktionen auf der Vorrichtung ausschließlich durch einen Touchscreen und/oder ein Touchpad ausgeführt wird. Durch Verwenden eines Touchscreens und/oder Touchpads als primäre Eingabesteuervorrichtung für den Betrieb der Vorrichtung 100 wird die Anzahl der physischen Eingabesteuervorrichtungen (wie etwa Drucktasten, Wählscheiben und dergleichen) auf Vorrichtung 100 wahlweise verringert.
  • Der vordefinierte Satz von Funktionen, die ausschließlich durch einen Touchscreen und/oder ein Touchpad ausgeführt werden, schließt wahlweise das Navigieren zwischen Benutzerschnittstellen ein. In einigen Ausführungsformen navigiert das Touchpad, wenn es vom Benutzer berührt wird, die Vorrichtung 100 von jeglicher Benutzerschnittstelle, die auf Vorrichtung 100 angezeigt wird, zu einem Haupt-, Home- oder Hauptverzeichnismenü. In solchen Ausführungsformen wird eine „Menüschaltfläche“ unter Verwendung eines Touchpads implementiert. In einigen weiteren Ausführungsformen ist die Menüschaltfläche eine physische Drucktaste oder eine andere physische Eingabesteuervorrichtung anstelle eines Touchpads.
  • 1B ist ein Blockdiagramm, das beispielhafte Komponenten für die Ereignisbehandlung gemäß einigen Ausführungsformen veranschaulicht. In einigen Ausführungsformen schließt der Speicher 102 (in 1A) oder 370 (3) den Ereignissortierer 170 (z. B. im Betriebssystem 126) und eine entsprechende Anwendung 136-1 (z. B. jegliche der vorstehend aufgeführten Anwendungen 136, 137-155, 380-390) ein.
  • Der Ereignissortierer 170 empfängt Ereignisinformationen und bestimmt die Anwendung 136-1 und die Anwendungsansicht 191 der Anwendung 136-1, an welche die Ereignisinformationen gesendet werden sollen. Der Ereignissortierer 170 schließt einen Ereignismonitor 171 und ein Ereignisweitergabemodul 174 ein. In manchen Ausführungsformen schließt die Anwendung 136-1 den internen Anwendungszustand 192 ein, der die aktuelle Anwendungsansicht oder Anwendungsansichten angibt, die auf dem berührungsempfindlichen Anzeigesystem 112 angezeigt werden, wenn die Anwendung aktiv ist oder ausgeführt wird. In manchen Ausführungsformen wird der vorrichtungsbezogene/globale interne Zustand 157 durch den Ereignissortierer 170 verwendet, um festzustellen, welche Anwendung oder Anwendungen aktuell aktiv sind, und der interne Anwendungszustand 192 wird durch den Ereignissortierer 170 verwendet, um die Anwendungsansichten 191 festzustellen, denen Ereignisinformationen zu liefern sind.
  • In manchen Ausführungsformen schließt der interne Anwendungsstatus 192 zusätzliche Informationen, wie etwa eine oder mehrere der Folgenden ein:
    • Wiederaufnahmeinformationen zur Verwendung, wenn die Ausführung der Anwendung 136-1 wiederaufgenommen wird, Benutzeroberflächenstatusinformationen,
    • die angeben, dass Informationen bereits angezeigt werden oder bereit sind zur Anzeige durch die Anwendung 136-1, einen Statuspuffer, um es dem Benutzer zu ermöglichen,
    • zu einem vorherigen Status oder einer vorherigen Ansicht der Anwendung 136-1 zurückzukehren, und/oder einen Wiederherstellen/Rückgängigmachen-Puffer für zuvor vom Benutzer ausgeführte Handlungen.
  • Der Ereignismonitor 171 empfängt Ereignisinformationen von der Peripherie schnittstelle 118. Ereignisinformationen schließen Informationen bezüglich eines Teilereignisses (z. B. eine Berührung eines Benutzers auf dem berührungsempfindlichen Anzeigesystem 112 als Teil einer Multi-Touch-Geste, d. h. einer Handbewegung mit mehreren Berührungen) ein. Die Peripherieschnittstelle 118 überträgt Informationen, die sie vom E/A-Subsystem 106 oder von einem Sensor wie dem Näherungssensor 166, dem/den Beschleunigungsmesser(n) 167, dem/den Gyroskop(en) 168, dem/den Magnetometer(n) 169 und/oder dem Mikrofon 113 (über die Audioschaltung 110) erhält.
  • Informationen, welche die Peripherieschnittstelle 118 vom E/A-Teilsystem 106 empfängt, schließen Informationen von der berührungsempfindlichen Anzeigesystem 112 oder von einer berührungsempfindlichen Oberfläche ein.
  • In manchen Ausführungsformen sendet der Ereignismonitor 171 in vorgegebenen Intervallen Anfragen an die Peripherieschnittstelle 118. Als Reaktion darauf übermittelt die Peripherieschnittstelle 118 Ereignisinformationen. In weiteren Ausführungsformen übermittelt die Peripherieschnittstelle 118 Ereignisinformationen nur dann, wenn ein bedeutendes Ereignis vorliegt (z. B. Empfangen einer Eingabe, die über einem vorgegebenen Lärmschwellenwert liegt und/oder länger dauert als eine vorgegebene Zeitdauer).
  • In manchen Ausführungsformen schließt der Ereignissortierer 170 auch ein Trefferansichtbestimmungsmodul 172 und/oder ein Bestimmungsmodul 173 einer Einrichtung zum Erfassen aktiver Ereignisse ein.
  • Das Trefferansichtbestimmungsmodul 172 stellt Software-Prozeduren bereit, um festzustellen, wo ein Teilereignis innerhalb einer oder mehrere Ansichten stattgefunden hat, wenn das berührungsempfindliche Anzeigesystem 112 mehr als eine einzige Ansicht anzeigt. Die Ansichten bestehen aus Steuerungen und anderen Elementen, die ein Benutzer auf der Anzeige sehen kann.
  • Ein weiterer Aspekt der mit einer Anwendung assoziierten Benutzeroberfläche ist ein Satz von Ansichten, die hier mitunter als Anwendungsansichten oder Benutzeroberflächenfenster bezeichnet werden, und in denen Informationen angezeigt werden und auf Berührung basierende Gesten stattfinden. Die Anwendungsansichten (einer jeweiligen Anwendung) in denen eine Berührung erfasst wird, entsprechen wahlweise programmatischen Ebenen innerhalb einer programmatischen oder Ansichtshierarchie der Anwendung. Beispielsweise wird die niedrigste Ebene der Ansicht, in der eine Berührung erfasst wird, wahlweise als Trefferansicht bezeichnet, und der Satz von Ereignissen, die als korrekte Eingaben erkannt werden, wird wahlweise mindestens teilweise basierend auf der Trefferansicht der ursprünglichen Berührung, die eine auf Berührung basierende Geste einleitet, festgestellt.
  • Das Trefferansichtbestimmungsmodul 172 empfängt Informationen bezüglich Teilereignissen einer auf Berührung basierenden Geste. Wenn eine Anwendung verschiedene, in einer Hierarchie geordnete Ansichten aufweist, identifiziert das Trefferansichtbestimmungsmodul 172 eine Trefferansicht als die niedrigste Ansicht in der Hierarchie, die das Teilereignis handhaben sollte. In den meisten Fällen ist die Trefferansicht die niedrigste Ebene der Ansicht, in der eine Initiierung des Teilereignisses stattfindet (z. B. das erste Teilereignis in der Folge von Teilereignissen, die ein Ereignis oder ein potenzielles Ereignis bilden). Sobald die Trefferansicht von dem Trefferansichtbestimmungsmodul erkannt worden ist, empfängt die Trefferansicht in der Regel alle Teilereignisse, die mit derselben Berührung oder Eingabequelle zusammenhängen, für die sie als Trefferansicht erkannt wurde.
  • Das Bestimmungsmodul 173 der Einrichtung zum Bestimmen eines aktiven Ereignisses bestimmt, welche Ansicht oder welche Ansichten innerhalb einer Ansichtshierarchie eine bestimmte Folge von Teilereignissen empfangen sollten. In manchen Ausführungsformen bestimmt das Bestimmungsmodul 173 der Einrichtung zum Bestimmen eines aktiven Ereignisses, dass nur die Trefferansicht eine bestimmte Folge von Teilereignissen empfangen sollte. In anderen Ausführungsformen bestimmt das Bestimmungsmodul 173 der Einrichtung zum Bestimmen eines aktiven Ereignisses, dass alle Ansichten, die den physischen Ort eines Teilereignisses einschließen, aktiv beteiligte Ansichten sind, und bestimmt somit, dass alle aktiv beteiligten Ansichten eine bestimmte Folge von Teilereignissen empfangen sollten. In anderen Ausführungsformen würden selbst dann, wenn Berührungsteilereignisse ausschließlich auf den mit einer bestimmten Ansicht assoziierten Bereich beschränkt wären, in der Hierarchie höher gestellte Ansichten immer noch aktive beteiligte Ansichten verbleiben.
  • Das Ereignisweitergabemodul 174 gibt die Ereignisinformationen an eine Ereigniserkennungseinrichtung (z. B. die Ereigniserkennungseinrichtung 180) weiter. In manchen Ausführungsformen, die das Bestimmungsmodul 173 der Einrichtung zum Bestimmen eines aktiven Ereignisses einschließen, liefert das Ereignisweitergabemodul 174 die Ereignisinformationen an eine Ereigniserkennungseinrichtung, die vom Bestimmungsmodul 173 der Einrichtung zum Bestimmen eines aktiven Ereignisses bestimmt wird. In manchen Ausführungsformen speichert das Ereignisweitergabemodul 174 in einem Ereignispuffer die Ereignisinformationen, die von einem betreffenden Ereignisempfangsmodul 182 abgerufen werden.
  • In manchen Ausführungsformen schließt das Betriebssystem 126 den Ereignissortierer 170 ein. Alternativ dazu schließt die Anwendung 136-1 den Ereignissortierer 170 ein. In noch weiteren Ausführungsformen ist der Ereignissortierer 170 ein eigenständiges Modul oder Abschnitt eines anderen im Speicher 102 gespeicherten Moduls, wie etwa eines Kontakt-/Bewegungsmoduls 130.
  • In manchen Ausführungsformen schließt die Anwendung 136-1 eine Vielzahl von Ereignishandhabungseinrichtungen 190 und eine oder mehrere Anwendungsansichten 191 ein, von denen jede Befehle zum Handhaben von Berührungsereignissen einschließt, die innerhalb einer betreffenden Ansicht der Benutzeroberfläche der Anwendung stattfinden. Jede Anwendungsansicht 191 der Anwendung 136-1 schließt eine oder mehrere Ereigniserkennungseinrichtungen 180 ein. In der Regel schließt eine jeweilige Anwendungsansicht 191 eine Vielzahl von Ereigniserkennungseinrichtungen 180 ein. In anderen Ausführungsformen sind eine oder mehrere Ereigniserkennungseinrichtungen 180 Teil eines separaten Moduls, wie etwa eines Benutzeroberflächenkits oder eines Objekts einer höheren Ebene, von dem die Anwendung 136-1 Verfahren und andere Eigenschaften übernimmt. In manchen Ausführungsformen schließt eine betreffende Ereignishandhabungseinrichtung 190 eine oder mehrere der Folgenden ein: eine Datenaktualisierungseinrichtung 176, eine Objektaktualisierungseinrichtung 177, eine GUI-Aktualisierungseinrichtung 178 und/oder Ereignisdaten 179, die vom Ereignissortierer 170 empfangen werden. Die Ereignishandhabungseinrichtung 190 verwendet wahlweise eine Datenaktualisierungseinrichtung 176, eine Objektaktualisierungseinrichtung 177 oder eine GUI-Aktualisierungseinrichtung 178 oder ruft diese auf, um den internen Anwendungszustand 192 zu aktualisieren. Alternativ dazu schließen eine oder mehrere der Anwendungsansichten 191 einen oder mehrere entsprechende Ereignishandhabungseinrichtungen 190 ein. Auch sind in einigen Ausführungsformen die Datenaktualisierungseinrichtung 176 und/oder die Objektaktualisierungseinrichtung 177 und/oder die GUI-Aktualisierungseinrichtung 178 in einer jeweiligen Anwendungsansicht 191 eingeschlossen.
  • Eine entsprechende Ereigniserkennungseinrichtung 180 empfängt Ereignisinformationen (z. B. die Ereignisdaten 179) vom Ereignissortierer 170 und identifiziert ein Ereignis aus den Ereignisinformationen. Die Ereigniserkennungseinrichtung 180 schließt einen Ereignisempfänger 182 und einen Ereignisvergleicher 184 ein. In manchen Ausführungsformen schließt die Ereigniserkennungseinrichtung 180 auch mindestens eine Teilmenge von: Metadaten 183 und Ereigniszustellungsbefehlen 188 (die wahlweise Teilereigniszustellungsbefehle einschließen) ein.
  • Der Ereignisempfänger 182 empfängt Ereignisinformationen vom Ereignissortierer 170. Die Ereignisinformationen schließen Informationen bezüglich eines Teilereignisses, beispielsweise einer Berührung oder einer Berührungsbewegung, ein. Je nach dem Teilereignis schließen die Ereignisinformationen auch zusätzliche Informationen, wie etwa die Position, an der das Teilereignisses stattfindet, ein. Wenn das Teilereignis die Bewegung einer Berührung betrifft, schließen die Ereignisinformationen wahlweise auch Schnelligkeit und Richtung des Teilereignisses ein. In manchen Ausführungsformen schließen Ereignisse das Drehen der Vorrichtung von einer Ausrichtung in eine andere (z. B. von einer Hochformatausrichtung in eine Querformatausrichtung oder umgekehrt), und die Ereignisinformationen schließen entsprechende Informationen bezüglich der aktuellen Ausrichtung der Vorrichtung (auch als räumliche Lage der Vorrichtung bezeichnet) ein.
  • Der Ereignisvergleicher 184 vergleicht die Ereignisinformationen mit vordefinierten Ereignis- oder Teilereignisdefinitionen und bestimmt, basierend auf dem Vergleich, ein Ereignis oder ein Teilereignis oder bestimmt oder aktualisiert den Status eines Ereignisses oder eines Teilereignisses. In manchen Ausführungsformen schließt der Ereignisvergleicher 184 Ereignisdefinitionen 186 ein. Die Ereignisdefinitionen 186 enthalten Definitionen von Ereignissen (z. B. vordefinierte Abfolgen von Teilereignissen), zum Beispiel Ereignis 1 (187-1), Ereignis 2 (187-2) und andere. In manchen Ausführungsformen schließen Teilereignisse in einem Ereignis 187 zum Beispiel Berührungsbeginn, Berührungsende, Berührungsbewegung, Berührungsabbruch und mehrfaches Berühren ein. In einem Beispiel ist die Definition für Ereignis 1 (187-1) ein doppeltes Tippen auf ein angezeigtes Objekt. Das doppelte Klopfen umfasst beispielsweise eine erste Berührung (Beginn der Berührung) auf dem angezeigten Objekt während einer vorgegebenen Phase, ein erstes Abheben (Ende der Berührung) während eine vorgegebenen Phase, eine zweite Berührung (Beginn der Berührung) auf dem angezeigten Objekt während einer vorgegebenen Phase und ein zweites Abheben (Ende der Berührung) während einer vorgegebenen Phase. In einem weiteren Beispiel ist die Definition für Ereignis 2 (187-2) ein Ziehen auf einem angezeigten Objekt. Das Ziehen umfasst zum Beispiel eine Berührung (oder einen Kontakt) auf dem angezeigten Objekt während einer vorgegebenen Phase, eine Bewegung der Berührung über das berührungsempfindliche Anzeigesystem 112 hinweg und ein Abheben der Berührung (Ende der Berührung). In manchen Ausführungsformen schließt das Ereignis auch Informationen für eine oder mehrere assoziierte Ereignishandhabungseinrichtungen 190 ein.
  • In manchen Ausführungsformen schließt die Ereignisdefinition 187 eine Definition eines Ereignisses für ein betreffendes Benutzerschnittstellenobjekt ein. In manchen Ausführungsformen führt der Ereignisvergleicher 184 einen Treffertest durch, um zu bestimmen, welches Benutzerschnittstellenobjekt einem Teilereignis zugeordnet ist. In einer Anwendungsansicht, in der drei Benutzerschnittstellenobjekte auf dem berührungsempfindlichen Anzeigesystem 112 angezeigt werden, führt zum Beispiel der Ereignisvergleicher 184 Treffertest durch, wenn eine Berührung auf dem berührungsempfindlichen Anzeigesystem 112 erfasst wird, um zu bestimmen, welches der drei Benutzerschnittstellenobjekte mit der Berührung (Teilereignis) verknüpft ist. Wenn jedes angezeigte Objekt mit einer betreffenden Ereignishandhabungseinrichtung 190 assoziiert ist, verwendet der Ereignisvergleicher das Ergebnis des Treffertests, um zu bestimmen, welche Ereignishandhabungseinrichtung 190 aktiviert werden sollte. Beispielsweise wählt der Ereignisvergleicher 184 eine Ereignishandhabungseinrichtung aus, die mit dem Teilereignis und dem den Treffertest auslösenden Objekt assoziiert ist.
  • In manchen Ausführungsformen schließt die Definition für ein betreffendes Ereignis 187 auch verzögerte Aktionen ein, welche die Zustellung von Ereignisinformationen so lange verzögern, bis bestimmt wurde, ob die Abfolge von Teilereignissen der Ereignisart der Ereigniserkennungseinrichtung entspricht oder nicht.
  • Wenn eine betreffende Ereigniserkennungseinrichtung 180 bestimmt, dass die Abfolge von Teilereignissen keinem der Ereignisse in den Ereignisdefinitionen 186 entspricht, gibt die betreffende Ereigniserkennungseinrichtung 180 einen Ereignis-unmöglich-Status, einen Ereignis-fehlgeschlagen-Status oder einen Ereignis-beendet-Status ein und lässt anschließend nachfolgende Teilereignisse der auf Berührung basierenden Geste außer Acht. In dieser Situation fahren, sofern vorhanden, andere Ereigniserkennungseinrichtungen, die für die Trefferansicht aktiv bleiben, mit der Nachverfolgung und Verarbeitung von Teilereignissen einer stattfindenden, auf Berührung basierenden Geste fort.
  • In manchen Ausführungsformen schließt eine betreffende Ereigniserkennungseinrichtung 180 Metadaten 183 mit konfigurierbaren Eigenschaften, Hinweissymbolen und/oder Listen ein, die angeben, wie das Ereigniszustellungssystem die Zustellung von Teilereignissen zu Einrichtungen zum Bestimmen aktiv beteiligter Ereignisse ausführen sollte. In manchen Ausführungsformen schließen die Metadaten 183 konfigurierbare Eigenschaften, Hinweissymbole und/oder Listen ein, die angeben, wie Ereigniserkennungseinrichtungen miteinander kommunizieren, oder wie ihnen ermöglicht wird, miteinander zu kommunizieren. In manchen Ausführungsformen schließen die Metadaten 183 konfigurierbare Eigenschaften, Hinweissymbole und/oder Listen ein, die angeben, ob Teilereignisse an variierende Ebenen in der ansichts- oder in der programmbezogenen Hierarchie zugestellt werden.
  • In manchen Ausführungsformen aktiviert eine betreffende Ereigniserkennungseinrichtung 180 die mit einem Ereignis assoziierten Ereignishandhabungseinrichtung 190, wenn ein oder mehrere bestimmte Teilereignisse eines Ereignisses erkannt werden. In manchen Ausführungsformen stellt eine betreffende Ereigniserkennungseinrichtung 180 der Ereignishandhabungseinrichtung 190 mit dem Ereignis verknüpfte Ereignisinformationen zu. Das Aktivieren einer Ereignishandhabungseinrichtung 190 unterscheidet sich vom Senden (und vom verzögerten Senden) von Teilereignissen an eine betreffende Trefferansicht. In manchen Ausführungsformen wirft die Ereigniserkennungseinrichtung 180 ein mit dem erkannten Ereignis assoziiertes Hinweissymbol aus, und die mit dem Hinweissymbol assoziierte Ereignishandhabungseinrichtung 190 nimmt das Hinweissymbol auf und führt einen vordefinierten Prozess aus.
  • In manchen Ausführungsformen schließen die Ereigniszustellungsanweisungen 188 Teilereigniszustellungsanweisungen, die Ereignisinformationen bezüglich eines Teilereignisses zustellen, ein, ohne eine Ereignishandhabungseinrichtung zu aktivieren. Stattdessen stellen die Teilereigniszustellungsanweisungen den mit der Abfolge von Teilereignissen oder mit den aktiv beteiligten Ansichten verknüpften Ereignishandhabungseinrichtungen Ereignisinformationen zu. Die mit der Abfolge von Teilereignissen oder mit den aktiv beteiligten Ansichten assoziierten Ereignishandhabungseinrichtungen empfangen die Ereignisinformationen und führen einen vordefinierten Prozess aus.
  • In manchen Ausführungsformen erzeugt und aktualisiert die Datenaktualisierungseinrichtung 176 in der Anwendung 136-1 verwendete Daten.
  • Beispielsweise aktualisiert das Datenaktualisierungsprogramm 176 die im KontakteModul 137 verwendete Telefonnummer oder speichert eine im Video- und Musikwiedergabemodul 152 verwendete Videodatei. In einigen Ausführungsformen erstellt und aktualisiert die Objektaktualisierungseinrichtung 177 in der Anwendung 136-1 verwendete Objekte. Beispielsweise erzeugt die Objektaktualisierungseinrichtung 177 ein neues Benutzerschnittstellenobjekt oder aktualisiert die Position eines Benutzerschnittstellenobjektes. Die GUI-Aktualisierungseinrichtung 178 aktualisiert die GUI. Beispielsweise bereitet das GUI-Aktualisierungseinrichtung 178 Anzeigeformationen vor und sendet sie zur Anzeige auf einer berührungsempfindlichen Anzeige an das Grafikmodul 132.
  • In manchen Ausführungsformen schließen die eine oder die mehreren Ereignishandhabungseinrichtungen 190 die Datenaktualisierungseinrichtung 176, die Objektaktualisierungseinrichtung 177 und die GUI-Aktualisierungseinrichtung 178 ein oder hat Zugang zu diesen. In manchen Ausführungsformen sind die Datenaktualisierungseinrichtung 176, die Objektaktualisierungseinrichtung 177 und die GUI-Aktualisierungseinrichtung 178 in einem einzigen Modul einer entsprechenden Anwendung 136-1 oder Anwendungsansicht 191 eingeschlossen. In anderen Ausführungsformen sind sie in zwei oder mehr Softwaremodulen eingeschlossen.
  • Es versteht sich, dass die vorangegangene Besprechung bezüglich der Ereignisbehandlung von Benutzerberührungen auf berührungsempfindlichen Anzeigen auch für andere Formen von Benutzereingaben zum Betreiben von Multifunktionsvorrichtungen 100 mit Eingabevorrichtungen, die nicht alle auf Touchscreens eingeleitet werden, gilt. Beispielsweise Mausbewegungen und Maustastendrücke, die wahlweise auf einzelne oder mehrere Tastendrücke oder Griffe abgestimmt sind; Kontaktbewegungen wie Tippen, Ziehen, Scrollen usw. auf Touchpads; Stift-Eingaben; Bewegung der Vorrichtung; mündliche Anweisungen; erfasste Augenbewegungen; biometrische Eingaben; und/oder eine beliebige Kombination davon werden wahlweise als Eingaben verwendet, die Teilereignissen entsprechen, die ein zu erkennendes Ereignis definieren.
  • 2 veranschaulicht eine tragbare Multifunktionsvorrichtung 100 mit einem Touchscreen (z. B. berührungsempfindliches Anzeigesystem 112, 1A) gemäß manchen Ausführungsformen. Der Touchscreen zeigt wahlweise eine oder mehrere Grafiken innerhalb der Benutzerschnittstelle (UI) 200 an. In dieser Ausführungsform sowie in anderen nachstehend beschriebenen Ausführungsformen wird es einem Benutzer ermöglicht, eine oder mehrere der Grafiken auszuwählen, indem er eine Geste auf den Grafiken ausführt, zum Beispiel mit einem oder mehreren Fingern 202 (in der Figur nicht maßstabsgetreu dargestellt) oder einem oder mehreren Eingabestiften 203 (in der Figur nicht maßstabsgetreu dargestellt). In einigen Ausführungsformen findet die Auswahl von einer oder mehreren Grafiken statt, wenn der Benutzer den Kontakt mit der einen oder den mehreren Grafiken abbricht. In einigen Ausführungsformen schließt die Handbewegung eine oder mehrere Klopfbewegungen, eine oder mehrere Wischbewegungen (von links nach rechts, rechts nach links, aufwärts und/oder abwärts) und/oder eine Rollbewegung eines Fingers (von rechts nach links, links nach rechts, aufwärts und/oder abwärts) ein, der Kontakt mit der Vorrichtung 100 aufgenommen hat. In einigen Ausführungsformen oder unter bestimmten Umständen wird durch einen versehentlichen Kontakt mit einer Grafik die Grafik nicht ausgewählt. Beispielsweise wird durch eine Wischgeste, die über ein Anwendungssymbol wischt, wahlweise nicht die entsprechende Anwendung gewählt, wenn die der Auswahl entsprechende Geste ein Tippen ist.
  • Die Vorrichtung 100 schließt wahlweise auch eine oder mehrere physische Tasten ein, wie eine „Home“- oder Menütaste 204. Wie zuvor beschrieben, wird die Menüschaltfläche 204 wahlweise dazu verwendet, um zu einer beliebigen Anwendung 136 in einem Satz von Anwendungen, die wahlweise auf der Vorrichtung 100 ausgeführt werden, zu navigieren. Alternativ dazu ist in einigen Ausführungsformen die Menütaste als Softkey in einer GUI implementiert, der auf der Touchscreen-Anzeige angezeigt wird.
  • In einigen Ausführungsformen schließt die Vorrichtung 100 die Touchscreen-Anzeige, Menütaste 204, Drucktaste 206 zum Ein-/Ausschalten und zum Sperren der Vorrichtung, die Lautstärkeregelungstaste(n) 208, den SIM (Subscriber Identity Module)-Kartenschlitz 210, den Kopfhöreranschluss 212 und einen externen Anschluss 124 zum Andocken/Aufladen ein. Die Drucktaste 206 wird wahlweise verwendet, um die Vorrichtung ein- und auszuschalten, indem die Taste gedrückt wird und die Taste für ein vordefiniertes Zeitintervall im gedrückten Zustand gehalten wird; um die Vorrichtung zu sperren, indem die Taste gedrückt und losgelassen wird, bevor das vordefinierte Zeitintervall verstrichen ist; und/oder zum Entriegeln der Vorrichtung oder zum Initiieren eines Entriegelungsvorgangs. In einigen Ausführungsformen nimmt die Vorrichtung 100 auch gesprochene Eingaben zur Aktivierung oder Deaktivierung einiger Funktionen durch das Mikrofon 113 an. Die Vorrichtung 100 schließt wahlweise auch einen oder mehrere Kontaktintensitätssensoren 165 zum Erfassen der Intensität von Kontakten auf dem berührungsempfindlichen Anzeigesystem 112 und/oder einen oder mehrere Tastausgabeerzeuger 163 zum Erzeugen von Tastausgaben für einen Benutzer der Vorrichtung 100 ein.
  • 3 ist ein Blockdiagramm einer beispielhaften Multifunktionsvorrichtung mit einer Anzeige und einer berührungsempfindlichen Oberfläche gemäß einigen Ausführungsformen. Vorrichtung 300 muss nicht tragbar sein. In einigen Ausführungsformen handelt es sich bei der Vorrichtung 300 um einen Laptop-Computer, einen Desktop-Computer, einen Tablet-Computer, eine Medienwiedergabevorrichtung, ein Navigationsgerät, eine pädagogische Vorrichtung (wie etwa ein Lernspielzeug eines Kindes), ein Spielsystem oder eine Steuervorrichtung (z. B. ein Heim- oder gewerblicher Regler). Die Vorrichtung 300 schließt typischerweise eine oder mehrere Verarbeitungseinheiten (CPUs) 310, eine oder mehrere Netzwerk- oder andere Kommunikationsschnittstellen 360, den Speicher 370 und einen oder mehrere Kommunikationsbusse 320 zum Verbinden dieser Komponenten miteinander ein. Die Kommunikationsbusse 320 schließen wahlweise eine Schaltung (manchmal als ein Chipsatz bezeichnet) ein, welche die Kommunikation zwischen den Systemkomponenten miteinander verbindet und steuert. Die Vorrichtung 300 schließt die Eingabe/AusgabeSchnittstelle (E/A-Schnittstelle) 330 ein, welche die Anzeige 340 umfasst, bei der es sich in der Regel um eine Touchscreen-Anzeige handelt. Die E/A-Schnittstelle 330 schließt wahlweise auch eine Tastatur und/oder eine Maus (oder andere Zeigevorrichtungen) 350 und das Touchpad 355, den Tastausgabeerzeuger 357 zum Erzeugen von Tastausgaben auf der Vorrichtung 300 (z. B. ähnlich dem/den Tastausgabeerzeuger(n) 163, der/die vorstehend unter Bezugnahme auf 1A beschrieben wurde(n)), die Sensoren 359 (z. B. berührungsempfindliche, optische, Kontaktintensitäts-, Näherungs-, Beschleunigungs-, Lage- und/oder magnetische Sensoren ähnlich wie die Sensoren 112, 164, 165, 166, 167, 168 und 169, die oben unter Bezugnahme auf 1A beschrieben wurden) ein. Der Speicher 370 schließt Hochgeschwindigkeitsdirektzugriffsspeicher, wie etwa DRAM, SRAM, DDR-RAM oder andere Festkörperspeichervorrichtungen mit wahlfreiem Zugriff; sowie wahlweise nichtflüchtigen Speicher, wie zum Beispiel eine oder mehrere Magnetplattenspeicher, optische Plattenspeicher, Flash-Speicher oder andere nichtflüchtige Festkörperspeicher, ein. Der Speicher 370 schließt wahlweise eine oder mehrere Datenspeichervorrichtungen ein, die von der/den CPU(s) 310 entfernt angeordnet sind. In einigen Ausführungsformen speichert der Speicher 370 Programme, Module und Datenstrukturen analog zu den Programmen, Modulen und Datenstrukturen, die im Speicher 102 der tragbaren Multifunktionsvorrichtung 100 (1A) gespeichert sind, oder eine Teilmenge davon. Ferner speichert der Speicher 370 wahlweise zusätzliche Programme, Module und Datenstrukturen, die im Speicher 102 der tragbaren Multifunktionsvorrichtung 100 nicht vorhanden sind. Beispielsweise speichert der Speicher 370 der Vorrichtung 300 wahlweise das Zeichnungsmodul 380, das Präsentationsmodul 382, das Textverarbeitungsmodul 384, das Modul zur Erstellung von Websites 386, das Modul zur Entwicklung von Autorensoftware für Discs 388 und/oder das Tabellenkalkulationsmodul 390, wohingegen der Speicher 102 der tragbaren Multifunktionsvorrichtung 100 (1A) diese Module wahlweise nicht speichert.
  • Jedes der vorstehend aufgezeigten Elemente in 3 wird wahlweise in einer oder mehreren der zuvor erwähnten Speichervorrichtungen gespeichert. Jedes der vorstehend aufgezeigten Module entspricht einem Anweisungssatz zum Ausführen einer vorstehend beschriebenen Funktion. Die vorstehend aufgezeigten Module oder Programme (d.h. Anweisungssätze) müssen nicht als separate Softwareprogramme, -verfahren oder -module implementiert werden, und deshalb sind verschiedene Teilmengen dieser Module wahlweise in verschiedenen Ausführungsformen kombiniert oder anderweitig umgeordnet. In manchen Ausführungsformen speichert der Speicher 370 wahlweise eine Teilmenge der oben aufgezeigten Module und Datenstrukturen. Des Weiteren speichert der Speicher 370 wahlweise zusätzliche Module und Datenstrukturen, die vorstehend nicht beschrieben wurden.
  • Die Aufmerksamkeit wird nun auf Ausführungsformen von Benutzerschnittstellen („UI“) gerichtet, die wahlweise auf einer tragbaren Multifunktionsvorrichtung 100 implementiert sind.
  • 4A veranschaulicht eine beispielhafte Benutzerschnittstelle für ein Anwendungsmenü auf einer tragbaren Multifunktionsvorrichtung 100 gemäß einigen Ausführungsformen. Ähnliche Benutzerschnittstellen sind wahlweise auf der Vorrichtung 300 implementiert. In einigen Ausführungsformen schließt die Benutzerschnittstelle 400 die folgenden Elemente oder eine Teilmenge oder eine Übermenge davon ein:
    • • einen oder mehrere Signalstärkeanzeiger 402 für drahtlose Kommunikation, wie Mobilfunkzellen- und Wi-Fi-Signale;
    • • Zeit 404;
    • • Bluetooth-Indikator 405;
    • • Batteriestatusindikator 406;
    • • Ablage 408 mit Symbolen für häufig verwendete Anwendungen, wie zum Beispiel:
      • ◯ Symbol 416 für das Telefonmodul 138, gekennzeichnet mit „Phone“ (Telefon), welches wahlweise eine Anzeige 414 der Anzahl verpasster Anrufe oder Anrufbeantworternachrichten einschließt;
      • ◯ Symbol 418 für das mit „Mail“ gekennzeichnete E-Mail-Client-Modul 140, welches wahlweise eine Anzeige 410 der Anzahl ungelesener E-Mails einschließt;
      • ◯ Symbol 420 für das mit „Browser“ gekennzeichnete Browsermodul 147; und und
      • ◯ Symbol 422 für das mit „iPod“ gekennzeichnete Video- und Musikwiedergabemodul 152, welches auch iPod (Marke von Apple Inc.)-Modul 152 genannt wird; und
    • • Symbole für andere Anwendungen, wie etwa:
      • ◯ Symbol 424 für das mit „Messages“ (Nachrichten) gekennzeichnete IM-Modul 141;
      • ◯ Symbol 426 für das mit „Calendar“ (Kalender) gekennzeichnete Kalendermodul 148;
      • ◯ Symbol 428 für das Bildverwaltungsmodul 144, gekennzeichnet mit „Photos“ (Fotos);
      • ◯ Symbol 430 für das mit „Camera“ (Kamera) gekennzeichnete Kameramodul 143;
      • ◯ Symbol 432 für das Online-Video-Modul 155, gekennzeichnet mit „Online Video“ (Online-Video);
      • ◯ Symbol 434 für das mit „Stocks“ (Aktien) gekennzeichnete Aktien-Widget 149-2;
      • ◯ Symbol 436 für das mit „Maps“ (Karten) gekennzeichnete Kartenmodul 154;
      • ◯ Symbol 438 für das mit „Weather“ (Wetter) gekennzeichnete Wetter-Widget 149-1;
      • ◯ Symbol 440 für das mit „Clock“ (Uhr) gekennzeichnete Wecker-Widget 169-6;
      • ◯ Symbol 442 für das mit „Workout Support“ (Trainingsunterstützung) gekennzeichnete Trainingsunterstützungsmodul 142;
      • ◯ Symbol 444 für das mit „Notes“ (Notizen) gekennzeichnete Notizenmodul 153; und
      • ◯ Icon 446 für eine Anwendung oder ein Modul für Einstellungen, das Zugang zu den Einstellungen für die Vorrichtung 100 und deren verschiedene Anwendungen 136 bereitstellt.
  • Es versteht sich, dass die Kennzeichnungen der Icons in 4A lediglich Beispiele sind. Beispielsweise ist das Symbol 422 für das Video- und Musikwiedergabemodul 152 in einigen Ausführungsformen als „Music“ (Musik) oder „Music Player“ (Musikwiedergabevorrichtung) gekennzeichnet. Für verschiedene Anwendungssymbole werden wahlweise andere Kennzeichnungen verwendet. In einigen Ausführungsformen schließt eine Kennzeichnung für ein jeweiliges Anwendungssymbol einen Namen einer Anwendung ein, der dem entsprechenden Anwendungssymbol entspricht. In einigen Ausführungsformen unterscheidet sich eine Kennzeichnung für ein bestimmtes Anwendungssymbol von einem Namen einer Anwendung, der dem bestimmten Anwendungssymbol entspricht.
  • 4B veranschaulicht eine beispielhafte Benutzerschnittstelle auf einer Vorrichtung (z. B. Vorrichtung 300, 3) mit einer berührungsempfindlichen Oberfläche 451 (z. B. ein Tablet oder ein Touchpad 355, 3), die von der Anzeige 450 separat ist. Die Vorrichtung 300 schließt wahlweise auch einen oder mehrere Kontaktintensitätssensoren (z. B. einen oder mehrere der Sensoren 359) zum Erfassen der Intensität von Kontakten auf der berührungsempfindlichen Oberfläche 451 und/oder einen oder mehrere Tastausgabeerzeuger 359 zum Erzeugen von Tastausgaben für einen Benutzer der Vorrichtung 300 ein.
  • 4B veranschaulicht eine beispielhafte Benutzerschnittstelle auf einer Vorrichtung (z. B. Vorrichtung 300, 3) mit einer berührungsempfindlichen Oberfläche 451 (z. B. ein Tablet oder ein Touchpad 355, 3), die von der Anzeige 450 separat ist. Obwohl viele der Beispiele, die folgen, unter Bezugnahme auf Eingaben auf der Touchscreen-Anzeige 112 gegeben werden (wo die berührungsempfindliche Oberfläche und die Anzeige kombiniert sind), erfasst in manchen Ausführungsformen die Vorrichtung Eingaben auf einer berührungsempfindlichen Oberfläche, die von der Anzeige separat ist, wie in 4B gezeigt. In einigen Ausführungsformen weist die berührungsempfindliche Oberfläche (z. B. 451 in 4B) eine Hauptachse (z. B. 452 in 4B) auf, die einer Hauptachse (z. B. 453 in 4B) auf der Anzeige (z. B. 450) entspricht. Gemäß diesen Ausführungsformen erfasst die Vorrichtung Kontakte (z. B. 460 und 462 in 4B) mit der berührungsempfindlichen Oberfläche 451 an Orten, die jeweiligen Orten auf der Anzeige entsprechen (z. B. entspricht in 4B 460 468 und 462 entspricht 470). Auf diese Weise werden von der Vorrichtung auf der berührungsempfindlichen Oberfläche (z. B. 451 in 4B) erfasste Benutzereingaben (z. B. Kontakte 460 und 462 und Bewegungen davon) von der Vorrichtung dazu verwendet, um die Benutzerschnittstelle auf der Anzeige (z. B. 450 in 4B) der Multifunktionsvorrichtung zu betätigen, wenn die berührungsempfindliche Oberfläche von der Anzeige separat ist. Es versteht sich, dass ähnliche Verfahren wahlweise für andere hierin beschriebene Benutzerschnittstellen verwendet werden.
  • Während die folgenden Beispiele hauptsächlich unter Bezugnahme auf Fingereingaben (z. B. Fingerkontakte, Fingertippgesten, Fingerwischgesten usw.) gegeben werden, sollte verstanden werden, dass in manchen Ausführungsformen zusätzlich eine oder mehrere der Fingereingaben durch Eingaben von einer anderen Eingabevorrichtung (z. B. eine mausbasierte Eingabe oder Stifteingabe) ersetzt werden. Beispielsweise wird eine Wischgeste wahlweise durch einen Mausklick (z. B. anstelle eines Kontakts) gefolgt von Bewegung des Cursors entlang dem Pfad des Wischens (z. B. anstelle der Bewegung des Kontakts) ersetzt. Als weiteres Beispiel wird eine Tippgeste wahlweise durch einen Mausklick ersetzt, während der Cursor sich über der Position der Tippgeste befindet (z. B. anstelle von Erfassen des Kontakts gefolgt vom Beenden des Erfassens des Kontakts). Wenn mehrere Benutzereingaben gleichzeitig erfasst werden, versteht es sich analog dazu, dass mehrere Computermäuse wahlweise gleichzeitig oder wahlweise eine Maus und Fingerkontakte gleichzeitig verwendet werden.
  • BEISPIELHAFTE VORRICHTUNGEN ZUR DARSTELLUNG VON CGR-DATEIEN
  • Eine physische Umgebung bezeichnet eine physische Welt, die Menschen ohne die Hilfe von elektronischen Systemen wahrnehmen können und/oder mit der sie ohne diese Hilfe interagieren können. Physische Umgebungen, wie etwa ein physischer Park, schließen physische Gegenstände ein, wie etwa physische Bäume, physische Gebäude und physische Personen. Menschen können die physische Umgebung direkt wahrnehmen und/oder mit ihr interagieren, z. B. durch Sehen, Berühren, Hören, Schmecken und Riechen.
  • Im Gegensatz dazu bezeichnet eine Umgebung der computergenerierten Realität (CGR) eine ganz oder teilweise simulierte Umgebung, die Menschen über ein elektronisches System wahrnehmen und/oder mit der sie über ein solches System interagieren. In CGR wird eine Teilmenge der physischen Bewegungen einer Person oder deren Darstellungen verfolgt, und als Reaktion darauf werden eine oder mehrere Eigenschaften eines oder mehrerer virtueller Objekte, die in der CGR-Umgebung simuliert werden, so angepasst, dass sie mit mindestens einem physikalischen Gesetz übereinstimmen. Zum Beispiel kann ein CGR-System die Kopfdrehung einer Person erfassen und als Reaktion darauf den der Person präsentierten graphischen Inhalt und ein akustisches Feld auf eine Weise anpassen, die dem ähnelt, wie solche Ansichten und Töne sich in einer physischen Umgebung verändern würden. In einigen Situationen (z. B. aus Gründen der Zugänglichkeit) können Anpassungen an den Merkmalen virtueller Objekte in einer CGR-Umgebung als Reaktion auf Darstellungen physischer Bewegungen (z. B. Stimmbefehlen) vorgenommen werden.
  • Eine Person kann ein CGR-Objekt über einen ihrer Sinne, einschließlich Sehen, Hören, Tasten, Schmecken und Riechen, wahrnehmen und/oder darüber mit ihm interagieren. So kann beispielsweise eine Person Audioobjekte wahrnehmen und/oder mit ihnen interagieren, die eine 3D- oder räumliche Audioumgebung erzeugen, die die Wahrnehmung von Punkt-Audioquellen im 3D-Raum ermöglicht. In einem anderen Beispiel können Audioobjekte Audiotransparenz ermöglichen, die selektiv Umgebungsgeräusche aus der physischen Umgebung mit oder ohne computergeneriertes Audio einbezieht. In einigen CGR-Umgebungen kann es sein, dass eine Person nur Audioobjekte wahrnimmt und/oder mit ihnen interagiert.
  • Beispiele für CGR schließen virtuelle Realität und gemischte Realität ein.
  • Eine Virtual-Reality-Umgebung (VR-Umgebung) bezeichnet eine simulierte Umgebung, die so ausgelegt ist, dass sie vollständig auf computergenerierten sensorischen Eingaben für einen oder mehrere Sinne basiert. Eine VR-Umgebung umfasst eine Vielzahl von virtuellen Objekten, die eine Person wahrnehmen kann und/oder mit denen sie interagieren kann. Beispielsweise sind computergenerierte Bilder von Bäumen, Gebäuden und Avatars, die Menschen darstellen, Beispiele für virtuelle Objekte. Eine Person kann virtuelle Objekte in der VR-Umgebung durch eine Simulation der Anwesenheit der Person in der computergenerierten Umgebung und/oder durch eine Simulation einer Teilmenge der physischen Bewegungen der Person in der computergenerierten Umgebung wahrnehmen und/oder mit ihnen interagieren.
  • Im Gegensatz zu einer VR-Umgebung, die vollständig auf computergenerierten sensorischen Eingaben basiert, bezieht sich eine Mixed-Reality-Umgebung (MR-Umgebung) auf eine simulierte Umgebung, die dazu ausgelegt ist, sensorische Eingaben von der physischen Umgebung oder eine Darstellung davon zusätzlich zu computergenerierten sensorischen Eingaben (z. B. virtuellen Objekten) aufzunehmen. Auf einem Virtualitätskontinuum befindet sich eine Mixed-Reality-Umgebung irgendwo zwischen einer vollständig physischen Umgebung an einem Ende und einer Virtual-Reality-Umgebung am anderen Ende, schließt diese jedoch nicht ein.
  • In manchen MR-Umgebungen können computergenerierte sensorische Eingaben auf Änderungen der sensorischen Eingaben von der physischen Umgebung reagieren. Außerdem können einige elektronische Systeme zur Darstellung einer MR-Umgebung den Standort und/oder die Ausrichtung in Bezug auf die physische Umgebung verfolgen, um es virtuellen Objekten zu ermöglichen, mit realen Objekten zu interagieren (d. h. physischen Gegenständen aus der physischen Umgebung oder Darstellungen davon). Zum Beispiel kann ein System Bewegungen berücksichtigen, sodass ein virtueller Baum in Bezug auf die physische Erde stationär erscheint.
  • Beispiele für gemischte Realitäten schließen erweiterte Realität (augmented reality) und erweiterte Virtualität (augmented virtuality) ein.
  • Eine Augmented-Reality-Umgebung (AR-Umgebung) bezeichnet eine simulierte Umgebung, in der ein oder mehrere virtuelle Objekte über eine physische Umgebung oder eine Darstellung davon gelegt werden. Zum Beispiel kann ein elektronisches System zum Präsentieren einer AR-Umgebung ein transparentes oder transluzentes Display aufweisen, durch das eine Person die physische Umgebung direkt betrachten kann. Das System kann dazu konfiguriert sein, virtuelle Objekte auf dem transparenten oder transluzenten Display darzustellen, sodass eine Person unter Verwendung des Systems die virtuellen Objekte wahrnimmt, die über die physische Umgebung gelegt wurden. Alternativ kann ein System ein opakes Display und einen oder mehrere bildgebende Sensoren aufweisen, die Bilder oder Videos der physischen Umgebung erfassen, die Darstellungen der physischen Umgebung sind. Das System setzt die Bilder oder Videos mit virtuellen Objekten zusammen, und stellt die Zusammensetzung auf dem opaken Display dar. Eine Person, die das System verwendet, betrachtet indirekt die physische Umgebung über die Bilder oder das Video der physischen Umgebung und nimmt die virtuellen Objekte wahr, die über die physische Umgebung gelegt wurden. Wie hierin verwendet, wird ein Video der physischen Umgebung, das auf einem opaken Display angezeigt wird, „Pass-Through-Video“ genannt, was bedeutet, dass ein System einen oder mehrere Bildsensoren verwendet, um Bilder der physischen Umgebung aufzunehmen, und diese Bilder verwendet, um die AR-Umgebung auf dem opaken Display darzustellen. Alternativ kann ein System auch ein Projektionssystem aufweisen, das virtuelle Objekte in die physische Umgebung projiziert, z. B. als Hologramm oder auf einer physischen Oberfläche, sodass eine Person, die das System verwendet, die über die physische Umgebung gelegten virtuellen Objekte wahrnimmt.
  • Eine Augmented-Reality-Umgebung bezeichnet auch eine simulierte Umgebung, in der eine Darstellung einer physischen Umgebung durch computergenerierte sensorische Informationen transformiert wird. So kann beispielsweise bei der Bereitstellung von Pass-Through-Videos ein System ein oder mehrere Sensorbilder transformieren, um eine ausgewählte Perspektive (z. B. einen Blickwinkel) festzulegen, die sich von der von den Bildsensoren erfassten Perspektive unterscheidet. Als weiteres Beispiel kann eine Darstellung einer physischen Umgebung durch graphisches Modifizieren (z. B. Vergrößern) von Teilen davon transformiert werden, sodass der modifizierte Abschnitt repräsentative aber nicht fotorealistische Versionen der ursprünglich aufgenommenen Bilder sein kann. Als weiteres Beispiel kann eine Darstellung einer physischen Umgebung transformiert werden, indem Teile davon grafisch eliminiert oder verschleiert werden.
  • Eine Augmented-Virtuality-Umgebung (AV-Umgebung) bezieht sich auf eine simulierte Umgebung, in der eine virtuelle oder computergenerierte Umgebung eine oder mehrere sensorische Eingaben aus der physischen Umgebung beinhaltet. Die sensorischen Eingaben können Darstellungen einer oder mehrerer Charakteristiken der physischen Umgebung sein. Ein AV-Park kann beispielsweise virtuelle Bäume und virtuelle Gebäude aufweisen, aber Menschen mit Gesichtern werden fotorealistisch aus Bildern von physischen Menschen reproduziert. Als weiteres Beispiel kann ein virtuelles Objekt eine Form oder Farbe eines physischen Gegenstands annehmen, der durch einen oder mehrere bildgebende Sensoren abgebildet wird. Als weiteres Beispiel kann ein virtuelles Objekt Schatten annehmen, die mit der Position der Sonne in der physischen Umgebung übereinstimmen.
  • Es gibt viele verschiedene Typen von elektronischen Systemen, die es einer Person ermöglichen, verschiedene CGR-Umgebungen wahrzunehmen und/oder mit diesen zu interagieren. Beispiele sind Datenhelmsysteme, projektionsbasierte Systeme, Heads-Up-Displays (HUDs), Fahrzeugwindschutzscheiben mit integrierter Displayfunktion, Fenster mit integrierter Displayfunktion, Displays, die als Linsen ausgebildet sind, die dazu bestimmt sind, auf den Augen einer Person platziert zu werden (z. B. ähnlich Kontaktlinsen), Kopfhörer/Ohrhörer, Lautsprecher-Arrays, Eingabesysteme (z. B. am Körper tragbare oder als Handgeräte ausgeführte Steuerungen mit oder ohne haptische Rückmeldung), Smartphones, Tablets und Desktop-/Laptop-Computer. Ein Datenhelmsystem kann einen oder mehrere Lautsprecher und ein integriertes opakes Display aufweisen. Alternativ kann ein kopfmontiertes System konfiguriert sein, um ein externes opakes Display (z. B. ein Smartphone) aufzunehmen. Das kopfmontierte System kann einen oder mehrere bildgebende Sensoren enthalten, um Bilder oder Video der physischen Umgebung aufzunehmen, und/oder ein oder mehrere Mikrofone, um Audio der physischen Umgebung zu erfassen. Im Gegensatz zu einem opaken Display kann ein Datenhelmsystem ein transparentes oder transluzentes Displays aufweisen. Das transparente oder transluzente Display kann ein Medium aufweisen, durch das Licht, das für Bilder repräsentativ ist, auf die Augen einer Person gerichtet wird. Das Display kann digitale Lichtprojektion, OLEDs, LEDs, uLEDs, Flüssigkristalle auf Silicium, Laserscanning-Lichtquellen oder eine beliebige Kombination dieser Technologien verwenden. Das Medium kann ein Lichtwellenleiter, ein Hologrammmedium, ein optischer Kombinierer, ein optischer Reflektor oder irgendeine Kombination davon sein. In einer Ausführungsform kann das transparente oder transluzente Display konfiguriert sein, um selektiv opak zu werden. Projektionsbasierte Systeme können retinale Projektionstechnologie verwenden, die graphische Bilder auf die Netzhaut einer Person projiziert. Projektionssysteme können auch so konfiguriert sein, dass sie virtuelle Objekte in die physische Umgebung projizieren, beispielsweise als Hologramm oder auf eine physische Oberfläche.
  • 5 ist ein Blockdiagramm einer beispielhaften Betriebsarchitektur 500 gemäß einigen Ausführungsformen. Während entsprechende Merkmale gezeigt sind, wird der Fachmann aus der vorliegenden Offenbarung erkennen, dass verschiedene andere Merkmale der Kürze halber nicht dargestellt worden sind, um relevantere Gesichtspunkte der hierin offenbarten beispielhaften Ausführungsformen nicht zu verschleiern. Zu diesem Zweck schließt die Betriebsarchitektur 500, als ein nicht begrenzendes Beispiel, eine elektronische Vorrichtung 520A ein.
  • In einigen Ausführungsformen ist die elektronische Vorrichtung 520A konfiguriert, um einem Benutzer CGR-Inhalte darzustellen. In einigen Ausführungsformen schließt die elektronische Vorrichtung 520A eine geeignete Kombination aus Software, Firmware bzw. Hardware ein. Gemäß einigen Ausführungsformen dargestellt die elektronische Vorrichtung 520A dem Benutzer über eine Anzeige 522 CGR-Inhalte, während der Benutzer physisch in einer physischen Umgebung 503 anwesend ist, die einen Tisch 507 innerhalb eines Sichtfeldes 511 der elektronischen Vorrichtung 520A einschließt. So hält der/die Benutzer(in) in einigen Ausführungsformen die elektronische Vorrichtung 520A in seiner/ihrer Hand (seinen/ihren Händen). In einigen Ausführungsformen ist die elektronische Vorrichtung 520A konfiguriert, um während der Bereitstellung des CGR-Inhalts ein virtuelles Objekt (z. B. einen virtuellen Zylinder 509) anzuzeigen und ein Video-Pass-Through der physischen Umgebung 503 (z. B. einschließlich einer Darstellung 517 des Tisches 507) auf einer Anzeige 522 zu ermöglichen.
  • In einigen Ausführungsformen entspricht die elektronische Vorrichtung 520A einer Datenhelmvorrichtung (HMD), und die Betriebsarchitektur 500 schließt eine Steuerung (z. B. die Steuerung 600 in 6) ein, die konfiguriert ist, um die Darstellung des CGR-Inhalts für den Benutzer zu verwalten und zu koordinieren. In einigen Ausführungsformen schließt die Steuerung eine geeignete Kombination aus Software, Firmware und/oder Hardware ein. Die Steuerung wird nachstehend in Bezug auf 6 detaillierter beschrieben. In einigen Ausführungsformen ist die Steuerung eine Rechenvorrichtung, die in Bezug auf eine Szene lokal oder entfernt ist. Beispielsweise ist die Steuerung ein lokaler Server, der sich innerhalb der Szene befindet. In einem anderen Beispiel ist die Steuerung ein entfernter Server, der sich außerhalb der Szene befindet (z. B. ein Cloud-Server, zentraler Server usw.). In einigen Ausführungsformen ist die Steuerung über einen oder mehrere drahtgebundene oder drahtlose Kommunikationskanäle (z. B. BLUETOOTH, IEEE 802.11x, IEEE 802.16x, IEEE 802.3x usw.) kommunikativ mit der Datenhelmvorrichtung gekoppelt. In einem anderen Beispiel ist die Steuerung innerhalb des Gehäuses der HMD eingeschlossen.
  • In einigen Ausführungsformen ist die HMD konfiguriert, um dem Benutzer einen CGR-Inhalt darzustellen. In einigen Ausführungsformen schließt die Datenhelmvorrichtung eine geeignete Kombination aus Software, Firmware und/oder Hardware ein. Die HMD wird nachstehend in Bezug auf 7 detaillierter beschrieben. In einigen Ausführungsformen werden die Funktionalitäten der Steuerung durch die HMD bereitgestellt und/oder mit dieser kombiniert.
  • Gemäß einigen Ausführungsformen stellt die HMD dem Benutzer einen CGR-Inhalt bereit, während der Benutzer virtuell und/oder physisch innerhalb einer Szene anwesend ist.
  • In einigen Ausführungsformen trägt der Benutzer/die Benutzerin die HMD auf seinem/ihrem Kopf. Als solche schließt die HMD eine oder mehrere CGR-Anzeigen ein, die zum Anzeigen von CGR-Inhalt bereitgestellt sind. Beispielsweise umschließt die HMD das Sichtfeld des Benutzers in verschiedenen Ausführungsformen. In einigen Ausführungsformen wird die HMD durch eine in der Hand gehaltene Vorrichtung (wie ein Smartphone oder Tablet) ersetzt, die konfiguriert ist, einen CGR-Inhalt darzustellen, wobei der Benutzer die HMD nicht trägt, sondern die Vorrichtung hält, wobei eine Anzeige auf das Sichtfeld des Benutzers gerichtet ist und eine Kamera auf eine Szene gerichtet ist. In einigen Ausführungsformen kann die tragbare Vorrichtung innerhalb eines Gehäuses platziert werden, das am Kopf des Benutzers getragen werden kann. In einigen Ausführungsformen wird die HMD durch eine CGR-Kammer, ein CGR-Gehäuse oder einen CGR-Raum ersetzt, die für das Präsentieren des CGR-Inhalts konfiguriert sind, wobei der Benutzer die HMD nicht trägt oder hält.
  • 6 ist ein Blockdiagramm eines Beispiels einer Steuerung 600 gemäß einigen Ausführungsformen. Während bestimmte Merkmale veranschaulicht sind, wird der Durchschnittsfachmann aus der vorliegenden Offenbarung erkennen, dass verschiedene andere Merkmale der Kürze halber nicht veranschaulicht worden sind, um relevantere Gesichtspunkte der hierin offenbarten Ausführungsformen nicht zu verschleiern. Zu diesem Zweck schließt die Steuerung 600, als ein nicht einschränkendes Beispiel, in einigen Ausführungsformen eine oder mehrere Verarbeitungseinheiten 602 (z. B. Mikroprozessoren, anwendungsspezifische integrierte Schaltungen (ASIC), Field Programmable Gate Arrays (FPGA), grafische Verarbeitungseinheiten (GPUs), zentrale Verarbeitungseinheiten (CPUs), Verarbeitungskerne und/oder dergleichen), eine oder mehrere Eingabe/Ausgabe-Vorrichtungen 606 (E/A-Vorrichtungen), eine oder mehrere Kommunikationsschnittstellen 608 (z. B. USB (Universal Serial Bus), FIREWIRE, THUNDERBOLT, IEEE 802.3x, IEEE 802.11x, IEEE 802.16x, GSM (Global System for Mobile Communications), CDMA (Code Division Multiple Access), TDMA (Time Division Multiple Access), GPS (Global Positioning System), Infrarot (IR), BLUETOOTH, ZIGBEE und/oder Schnittstellen ähnlicher Art), eine oder mehrere Programmierschnittstellen 610 (z. B. E/A-Schnittstellen), einen Speicher 620 und einen oder mehrere Kommunikationsbusse 604 zum Verbinden dieser und verschiedener anderer Komponenten ein.
  • In einigen Ausführungsformen schließen der eine oder die mehreren Kommunikationsbusse 604 Schaltlogik ein, welche die Kommunikationen zwischen Systemkomponenten miteinander verbindet und steuert. Bei einigen Ausführungsformen schließen die eine oder die mehreren E/A-Vorrichtungen 606 mindestens eines von einer Tastatur, einer Maus, einem Touchpad, einem Joystick, einem oder mehreren Mikrofonen, einem oder mehreren Lautsprechern, einem oder mehrere Bildsensoren, einem oder mehrere Anzeigen und/oder dergleichen ein.
  • Der Speicher 620 schließt Hochgeschwindigkeitsdirektzugriffsspeicher, wie dynamische Direktzugriffsspeicher (DRAM), statische Direktzugriffsspeicher (SRAM), Direktzugriffsspeicher mit doppelter Datenrate (DDR-RAM), oder andere Festkörperspeichervorrichtungen mit Direktzugriff ein. In einigen Ausführungsformen schließt der Speicher 620 einen nichtflüchtigen Speicher, wie eine oder mehrere Magnetplattenspeichervorrichtungen, optische Plattenspeichervorrichtungen, Flash-Speichervorrichtungen oder andere nichtflüchtige Festkörperspeichervorrichtungen, ein. Der Speicher 620 schließt optional eine oder mehrere Speichervorrichtungen ein, die sich entfernt von der einen oder den mehreren Verarbeitungseinheiten 602 befinden. Der Speicher 620 umfasst ein nichtflüchtiges computerlesbares Speichermedium. In einigen Ausführungsformen speichert der Speicher 620 oder das nicht-flüchtige computerlesbare Speichermedium des Speichers 620 die folgenden Programme, Module und Datenstrukturen oder eine Untermenge davon, einschließlich eines optionalen Betriebssystems 630 und eines CGR-Inhaltsmoduls 640.
  • Das Betriebssystem 630 schließt Prozeduren zum Handhaben verschiedener grundlegender Systemdienste und zum Durchführen hardwareabhängiger Aufgaben ein. In einigen Ausführungsformen ist das CGR-Inhaltsmodul 640 konfiguriert, um die Darstellung des CGR-Inhalts für einen oder mehrere Benutzer verwaltet und koordiniert (z. B. ein einzelner Satz des CGR-Inhalts für einen oder mehrere Benutzer oder mehrere Sätze des CGR-Inhalts für jeweilige Gruppen von einem oder mehreren Benutzern). Zu diesem Zweck beinhaltet das CGR-Inhaltsmodul 640 in verschiedenen Ausführungsformen eine Datenerfassungseinheit 642, eine Verfolgungseinheit 644, eine Koordinationseinheit 646 und eine Datenübertragungseinheit 648.
  • In einigen Ausführungsformen ist die Datenerfassungseinheit 642 konfiguriert, um Daten (z. B. Darstellungsdaten, Interaktionsdaten, Sensordaten, Ortsdaten usw.) von mindestens einer HMD zu erhalten. Zu diesem Zweck schließt die Datenerfassungseinheit 642 in verschiedenen Ausführungsformen Anweisungen und/oder Logiken sowie Heuristiken und Metadaten dafür ein.
  • In einigen Ausführungsformen ist die Verfolgungseinheit 644 konfiguriert, um eine Szene abzubilden und die Position/Lage von mindestens der HMD in Bezug auf die Szene zu verfolgen. Zu diesem Zweck schließt die Verfolgungseinheit 644 in verschiedenen Ausführungsformen Anweisungen und/oder Logiken sowie Heuristiken und Metadaten dafür ein.
  • In einigen Ausführungsformen ist die Koordinationseinheit 646 konfiguriert, um die Darstellung des CGR-Inhalts für den Benutzer durch die HMD zu verwalten und zu koordinieren. Zu diesem Zweck schließt die Koordinationseinheit 646 in verschiedenen Ausführungsformen Anweisungen und/oder Logiken sowie Heuristiken und Metadaten dafür ein.
  • In einigen Ausführungsformen ist die Datenübertragungseinheit 648 konfiguriert, um Daten (z. B. Darstellungsdaten, Positionsdaten usw.) mindestens an die HMD zu übertragen. Zu diesem Zweck schließt die Datenübertragungseinheit 648 in verschiedenen Ausführungsformen Anweisungen und/oder Logiken sowie Heuristiken und Metadaten dafür ein.
  • Obwohl die Datenerfassungseinheit 642, die Verfolgungseinheit 644, die Koordinationseinheit 646 und die Datenübertragungseinheit 648 als auf einer einzigen Vorrichtung (z. B. eine Steuerung) befindlich dargestellt werden, versteht es sich, dass sich in anderen Ausführungsformen jede Kombination der Datenerfassungseinheit 642, der Verfolgungseinheit 644, der Koordinationseinheit 646 und der Datenübertragungseinheit 648 in separaten Rechenvorrichtungen befinden kann.
  • Darüber hinaus ist 6 eher als funktionale Beschreibung der verschiedenen Merkmale gedacht, die in einer bestimmten Ausführungsform vorhanden sein können, im Gegensatz zu einem strukturellen Schema der hierin beschriebenen Ausführungsformen. Wie der Durchschnittsfachmann erkennt, könnten separat gezeigte Elemente kombiniert und einige Elemente getrennt werden. Beispielsweise könnten einige Funktionsmodule, die in 6 separat gezeigt sind, in einem einzigen Modul implementiert sein, und die verschiedenen Funktionen einzelner Funktionsblöcke könnten durch einen oder mehrere Funktionsblöcke in verschiedenen Ausführungsformen implementiert sein. Die tatsächliche Anzahl von Modulen, die Aufteilung bestimmter Funktionen und die Zuordnung der Merkmale variieren von einer Ausführungsform zur anderen und hängen in einigen Ausführungsformen teilweise von der speziellen Kombination von Hardware, Software bzw. Firmware ab, die für eine bestimmte Ausführungsform gewählt wird.
  • 7 ist ein Blockdiagramm eines Beispiels der HMD 700 gemäß einigen Ausführungsformen. Während bestimmte Merkmale veranschaulicht sind, wird der Durchschnittsfachmann aus der vorliegenden Offenbarung erkennen, dass verschiedene andere Merkmale der Kürze halber nicht veranschaulicht worden sind, um relevantere Gesichtspunkte der hierin offenbarten Ausführungsformen nicht zu verschleiern. Zu diesem Zweck schließt die HMD 700 in einigen Ausführungsformen als nicht einschränkendes Beispiel eine oder mehrere Verarbeitungseinheiten 702 (z. B. Mikroprozessoren, ASICs, FPGAs, GPUs, CPUs, Prozessorkerne und/oder dergleichen), eine oder mehrere Ein-/Ausgabevorrichtungen (E/A-Vorrichtungen) und Sensoren 706, eine oder mehrere Kommunikationsschnittstellen 708 (z. B. USB, FIREWIRE, THUNDERBOLT, IEEE 802.3x, IEEE 802.11x, IEEE 802.16x, GSM, CDMA, TDMA, GPS, IR, BLUETOOTH, ZIGBEE und/oder Schnittstellen ähnlicher Art), eine oder mehrere Programmierschnittstellen 710 (z. B. E/A-Schnittstellen), eine oder mehrere CGR-Anzeigen 712, einen oder mehrere innen- und/oder außenliegende Bildsensoren 714, einen Speicher 720 und einen oder mehrere Kommunikationsbusse 704 zum Verbinden dieser und verschiedener anderer Komponenten ein.
  • In einigen Ausführungsformen schließen der eine oder die mehreren Kommunikationsbusse 704 Schaltung ein, welche die Kommunikationen zwischen Systemkomponenten miteinander verbindet und steuert. In einigen Ausführungsformen schließen die eine oder die mehreren E/A-Vorrichtungen und Sensoren 706 mindestens eine Inertialmesseinheit (IMU) und/oder einen Beschleunigungsmesser und/oder ein Gyroskop und/oder ein Thermometer und/oder einen oder mehrere physiologische Sensoren (z. B. Blutdruckmonitor, Herzfrequenzmonitor, Blutsauerstoffsensor, Blutzuckersensor usw.) und/oder ein oder mehrere Mikrofone 707A und/oder einen oder mehrere Lautsprecher 707B und/oder einen Haptik-Motor und/oder einen oder mehrere Tiefensensoren (z. B. ein strukturiertes Licht, eine Lichtlaufzeit (ToF) oder dergleichen) und/oder dergleichen ein.
  • In einigen Ausführungsformen sind die eine oder mehreren CGR-Anzeigen 712 konfiguriert, um dem Benutzer den CGR-Inhalt anzuzeigen. In einigen Ausführungsformen entsprechen die eine oder die mehreren CGR-Anzeigen 712 einer holografischen Anzeige, DLP-Anzeige (digital light processing), LCD-Anzeige (liquidcrystal display), LCoS-Anzeige (liquid crystal on silicon), OLET-Anzeige (organic light-emitting field-effect transitory), OLED-Anzeige (organic light-emitting diode), SED-Anzeige (surface-conduction electron-emitter), FED-Anzeige (field-emission display), QD-LED-Anzeige (quantum-dot light-emitting diode), MEMS-Anzeige (micro-electromechanical system) und/oder ähnlichen Anzeigetypen. In einigen Ausführungsformen entsprechen die eine oder die mehreren CGR-Anzeigen 712 diffraktiven, reflektiven, polarisierten, holografischen usw. Wellenleiteranzeigen. Beispielsweise schließt die HMD 700 eine einzelne CGR-Anzeige ein. In einem weiteren Beispiel schließt die HMD 700 eine CGR-Anzeige für jedes Auge des Benutzers ein.
  • In einigen Ausführungsformen sind der eine oder die mehreren Bildsensoren 714 konfiguriert, um Bilddaten zu erfassen, die mindestens einem Teil des Gesichts des Benutzers entsprechen, der die Augen des Benutzers einschließt (und können als Blickverfolgungskamera bezeichnet werden). In einigen Ausführungsformen sind der eine oder die mehreren Bildsensoren 714 so konfiguriert, dass sie nach vorne gerichtet sind, um Bilddaten zu erfassen, die der Szene entsprechen, wie sie von dem Benutzer gesehen werden würde, wenn die HMD 700 nicht vorhanden wäre (und kann als Szenenkamera bezeichnet werden). Der eine oder die mehreren optionalen Bildsensoren 714 können eine oder mehrere RGB-Kameras (z. B. mit einem komplementären Metalloxid-Halbleiter-Bildsensor (CMOS-Bildsensor) oder einen Bildsensor einer ladungsgekoppelten Vorrichtung (CCD-Bildsensor)), eine oder mehrere Infrarot-Kameras (IR-Kameras), eine oder mehrere ereignisbasierte Kameras und/oder dergleichen einschließen.
  • Der Speicher 720 schließt Hochgeschwindigkeitsdirektzugriffsspeicher, wie DRAM, SRAM, DDR-RAM oder andere Festkörperspeichervorrichtungen mit Direktzugriff, ein. In einigen Ausführungsformen schließt der Speicher 720 einen nichtflüchtigen Speicher, wie eine oder mehrere Magnetplattenspeichervorrichtungen, optische Plattenspeichervorrichtungen, Flash-Speichervorrichtungen oder andere nichtflüchtige Festkörperspeichervorrichtungen, ein. Der Speicher 720 schließt optional eine oder mehrere Speichervorrichtungen ein, die sich entfernt von der einen oder den mehreren Verarbeitungseinheiten 702 befinden. Der Speicher 720 umfasst ein nicht-flüchtiges computerlesbares Speichermedium. In einigen Implementierungen speichert der Speicher 720 oder das nicht-flüchtige computerlesbare Speichermedium des Speichers 720 die folgenden Programme, Module und Datenstrukturen oder eine Teilmenge davon, einschließlich eines optionalen Betriebssystems 730 und eines CGR-Darstellungsmoduls 740.
  • Das Betriebssystem 730 schließt Prozeduren zum Handhaben verschiedener grundlegender Systemdienste und zum Durchführen hardwareabhängiger Aufgaben ein. In einigen Ausführungsformen ist das CGR-Darstellungsmodul 740 konfiguriert, um dem Benutzer den CGR-Inhalt über die eine oder die mehreren CGR-Anzeigen 712 und/oder die E/A-Vorrichtungen und Sensoren 706 (wie den einen oder die mehreren Lautsprecher 707B) darzustellen. Zu diesem Zweck schließt das CGR-Darstellungsmodul 740 in verschiedenen Ausführungsformen eine Datenerfassungseinheit 742, eine CGR-Inhaltsdarstellungseinheit 744 und eine Datenübertragungseinheit 746 ein.
  • In einigen Ausführungsformen ist die Datenerfassungseinheit 742 konfiguriert, um Daten (z. B. Darstellungsdaten, Interaktionsdaten, Sensordaten, Ortsdaten usw.) von mindestens einer Steuerung zu erhalten. In verschiedenen Ausführungsformen erhält die Datenerfassungseinheit eine CGR-Datei. Zu diesem Zweck schließt die Datenerfassungseinheit 742 in verschiedenen Ausführungsformen Anweisungen und/oder Logik sowie Heuristiken und Metadaten dafür ein.
  • In einigen Ausführungsformen ist die CGR-Inhaltsdarstellungseinheit 744 konfiguriert, um den CGR-Inhalt einem Benutzer darzustellen. In verschiedenen Ausführungsformen stellt die CGR-Inhaltsdarstellungseinheit 744 den CGR-Inhalt der CGR-Datei gemäß den Regeln dar, die in der CGR-Datei festgelegt sind. Zu diesem Zweck schließt die CGR-Inhaltsdarstellungseinheit 744 in verschiedenen Ausführungsformen Anweisungen und/oder Logik sowie Heuristiken und Metadaten dafür ein.
  • In einigen Ausführungsformen ist die Datenübertragungseinheit 746 konfiguriert, um Daten (z. B. Darstellungsdaten, Ortsdaten usw.) mindestens an die Steuerung zu übertragen. Zu diesem Zweck schließt die Datenübertragungseinheit 746 in verschiedenen Ausführungsformen Anweisungen und/oder Logik sowie Heuristiken und Metadaten dafür ein.
  • Obwohl die Datenerfassungseinheit 742, die CGR-Inhaltsdarstellungseinheit 744 und die Datenübertragungseinheit 746 als auf einer einzigen Vorrichtung (z. B. einer HMD) befindlich gezeigt werden, ist zu verstehen, dass sich in einigen Ausführungsformen jede Kombination der Datenerfassungseinheit 742, der CGR-Inhaltsdarstellungseinheit 744 und der Datenübertragungseinheit 746 in separaten Rechenvorrichtungen befinden kann.
  • Darüber hinaus ist 7 eher als funktionale Beschreibung der verschiedenen Merkmale gedacht, die in einer bestimmten Ausführungsform vorhanden sein können, im Gegensatz zu einem strukturellen Schema der hier beschriebenen Ausführungsformen. Wie der Durchschnittsfachmann erkennt, könnten separat gezeigte Elemente kombiniert und einige Elemente getrennt werden. Beispielsweise könnten einige Funktionsmodule, die in 7 separat gezeigt sind, in einem einzigen Modul implementiert sein, und die verschiedenen Funktionen einzelner Funktionsblöcke könnten durch einen oder mehrere Funktionsblöcke in verschiedenen Ausführungsformen implementiert sein. Die tatsächliche Anzahl von Modulen, die Aufteilung bestimmter Funktionen und die Zuordnung der Merkmale variieren von einer Ausführungsform zur anderen und hängen in einigen Ausführungsformen teilweise von der speziellen Kombination von Hardware, Software bzw. Firmware ab, die für eine bestimmte Ausführungsform gewählt wird.
  • In verschiedenen Ausführungsformen wird CGR-Inhalt einem Benutzer aus einer CGR-Datei dargestellt, die Daten in Bezug auf den CGR-Inhalt einschließt und ferner Daten einschließt, die beschreiben, wie der CGR-Inhalt dargestellt werden soll. In verschiedenen Ausführungsformen schließt die CGR-Datei Daten in Bezug auf eine oder mehrere CGR-Szenen ein. Die CGR-Datei schließt ferner Daten bezüglich Triggern (z. B. erkennbare Ereignisse) zur Darstellung der verschiedenen CGR-Szenen ein. Als ein Beispiel schließt die CGR-Datei in verschiedenen Ausführungsformen Daten in Bezug auf eine CGR-Szene ein, die ein Gameboard darstellt, und schließt auch Daten ein, die angeben, dass die CGR-Szene, die das Gameboard darstellt, dargestellt werden soll, wenn eine horizontale ebene Oberfläche im Sichtfeld einer Szenenkamera erfasst wird.
  • Die CGR-Datei schließt ferner Daten bezüglich eines oder mehrerer CGR-Objekte ein, die einer jeweiligen CGR-Szene zugeordnet sind. Die CGR-Datei schließt ferner Daten bezüglich Triggern bezüglich Aktionen der CGR-Objekte ein. Als ein Beispiel schließt die CGR-Datei in verschiedenen Ausführungsformen Daten in Bezug auf eine Vielzahl von CGR-Objekten ein, die der CGR-Szene zugeordnet sind, die das Gameboard darstellt, wobei jedes der Vielzahl von CGR-Objekten eine Spielfigur darstellt. Die CGR-Datei schließt auch Daten ein, die Aktionen der Vielzahl von CGR-Objekten als Reaktion auf erfasste Trigger angeben, z. B. wenn die Kollision von zwei Spielfiguren erfasst wird, hören die Spielfiguren auf, angezeigt zu werden.
  • Das Erzeugen einer solchen CGR-Datei kann ein schwieriger und zeitaufwendiger Prozess sein, der Expertenwissen zum Beispiel im 3D-Objektdesign und in der Anwendungscodierung erfordert. Dies stellt eine hohe Barriere für die Generierung von Qualitäts-CGR-Anwendungen dar. Dementsprechend wird in verschiedenen Ausführungsformen eine grafische Benutzerschnittstelle (GUI) bereitgestellt, um die Erzeugung einer CGR-Datei zu vereinfachen, die von einer Benutzervorrichtung gelesen (oder ausgeführt) werden kann, um eine CGR-Anwendung darzustellen, die den CGR-Inhalt einschließt, der von der CGR-Datei beschrieben wird.
  • BENUTZERSCHNITTSTELLEN UND VERKNÜPFTE PROZESSE
  • Die Aufmerksamkeit wird nun auf Ausführungsformen von Benutzerschnittstellen („UI“) und zugeordnete Prozesse gerichtet, die auf einer elektronischen Vorrichtung, wie einer tragbaren Multifunktionsvorrichtung (PMD) 100 mit einer Anzeige, einer berührungsempfindlichen Oberfläche und optional einem oder mehrere Sensoren zum Erfassen der Intensität von Kontakten mit der berührungsempfindlichen Oberfläche oder einer Vorrichtung 300 mit einem oder mehreren Prozessoren, einem nichtflüchtigen Speicher, einer Anzeige und einer Eingabevorrichtung implementiert werden können.
  • 8A-8DF veranschaulichen beispielhafte Benutzerschnittstellen zum Erzeugen von CGR-Dateien gemäß einigen Ausführungsformen. Die Benutzerschnittstellen in diesen Figuren werden verwendet, um die nachstehend beschriebenen Verfahren, einschließlich der Verfahren in 9-17, zu veranschaulichen. Wenngleich einige der nachstehenden Beispiele unter Bezugnahme auf Eingaben auf der Touchscreen-Anzeige (bei der die berührungsempfindliche Oberfläche und die Anzeige kombiniert sind) erfolgen, erfasst in einigen Ausführungsformen die Vorrichtung Eingaben auf einer berührungsempfindlichen Oberfläche 451, die von der Anzeige 450 separat ist, wie in 4B gezeigt.
  • 8A veranschaulicht eine CGR-Datei, die eine Benutzerschnittstelle 801 bildet, die von einer tragbaren Multifunktionsvorrichtung 100 (nachstehend „Vorrichtung 100“) angezeigt wird. In verschiedenen Ausführungsformen wird die CGR-Datei, welche die Benutzerschnittstelle 801 bildet, von einer CGR-Datei angezeigt, die von der Vorrichtung 100 ausgeführt wird.
  • In 8A schließt die CGR-Datei, welche die Benutzerschnittstelle 801 bildet, eine Willkommens-Benutzerschnittstelle 802A mit einer Neuprojekt-Affordance 802AA zum Erstellen eines neuen CGR-Projekts (das als CGR-Datei gespeichert und/oder in eine CGR-Datei kompiliert werden kann) und eine Projekt-Lade-Affordance 802AB zum Laden eines CGR-Projekts zum Bearbeiten ein.
  • 8A veranschaulicht eine Benutzereingabe 899A, die auf die Neuprojekt-Affordance 802AA gerichtet ist. In verschiedenen Ausführungsformen entspricht die Benutzereingabe 899A einem Kontakt (z. B. einem Tippen), der am Ort der Neuprojekt-Affordance 802AA erfasst wird.
  • 8B veranschaulicht die CGR-Datei, die als Reaktion auf das Erfassen der Benutzereingabe 899A, die an die Neuprojekt-Affordance 802AA gerichtet ist, die Benutzerschnittstelle 801 bildet. In 8B schließt die CGR-Datei, die Benutzerschnittstelle 801 bildet, eine Ankerauswahl-Benutzerschnittstelle 802B zum Auswählen eines Ankers einer ersten CGR-Szene des Projekts ein. Wenn eine CGR-Anwendung, die dem Projekt entspricht, dargestellt wird und der Anker in einem Szenenkamerabild einer realen Umgebung erfasst wird, wird die entsprechende CGR-Szene in Verbindung mit (z. B. offensichtlich daran gebunden oder verankert) dem Anker dargestellt.
  • Die Ankerauswahl-Benutzerschnittstelle 802B schließt eine Vielzahl von Ankerauswahl-Affordances 802BA-802BE ein. Die Vielzahl von Ankerauswahl-Affordances 802BA-802BE schließt eine Ankerauswahl-Affordance 802BA auf horizontaler Ebene zum Erstellen eines CGR-Projekts ein, das eine CGR-Szene einschließt, die in einer horizontalen Ebene verankert ist. Die Vielzahl von Ankerauswahl-Affordances 802BA-802BE schließt eine Bildankerauswahl-Affordance 802BB zum Erstellen eines CGR-Projekts ein, das eine CGR-Szene einschließt, die in einem ausgewählten oder erfassten Bild verankert ist. Die Vielzahl von Ankerauswahl-Affordances 802BA-802BE schließt eine Gesichtsankerauswahl-Affordance 802BC zum Erstellen eines CGR-Projekts ein, das eine CGR-Szene einschließt, die an einem menschlichen Gesicht verankert ist. Die Vielzahl von Ankerauswahl-Affordances 802BA-802BE schließt eine Ankerauswahl-Affordance 802BD der vertikalen Ebene zum Erstellen eines CGR-Projekts ein, das eine CGR-Szene einschließt, die in einer vertikalen Ebene verankert ist. Die Vielzahl von Ankerauswahl-Affordances 802BA-802BE schließt eine Objektankerauswahl-Affordance 802BE zum Erstellen eines CGR-Projekts ein, das eine CGR-Szene einschließt, die an einem ausgewählten oder gescannten Objekt verankert ist.
  • 8B veranschaulicht eine Benutzereingabe 899B, die auf die Bildankerauswahl-Affordance 802BB gerichtet ist. In verschiedenen Ausführungsformen entspricht die Benutzereingabe 899B einem Kontakt (z. B. einem Tippen), der am Ort der Bildankerauswahl-Affordance 802BB erfasst wird.
  • 8C veranschaulicht die CGR-Datei, die als Reaktion auf das Erfassen der Benutzereingabe 899B, die auf die Bildankerauswahl-Affordance 802BB gerichtet ist (und möglicherweise zusätzliche Benutzereingaben, die ein Bild einer Spielkarte auswählen oder erfassen), die Benutzerschnittstelle 801 bildet. In 8C schließt die CGR-Datei, welche die Benutzerschnittstelle 801 bildet, eine Projektverwaltungs-Benutzerschnittstelle 802C ein, die eine Vielzahl von Projektverwaltungs-Benutzerschnittstellenbereichen 803A-803E einschließt.
  • Die Vielzahl von Projektverwaltungs-Benutzerschnittstellenbereichen 803A-803E schließt einen Symbolleistenbereich 803A ein. Der Symbolleistenbereich 803A schließt eine Vielzahl von CGR-Inhaltshinzufügungs-Affordances 803AA-803AC. Die Vielzahl von CGR-Inhaltshinzufügungs-Affordances 803AA-803AC schließt eine CGR-Szenenhinzufügungs-Affordance 803AA zum Hinzufügen einer CGR-Szene zu dem Projekt, eine CGR-Objekthinzufügungs-Affordance 803AB zum Hinzufügen eines CGR-Objekts zu der aktuell ausgewählten CGR-Szene und eine Verhaltenshinzufügungs-Affordance 803AC zum Hinzufügen eines Verhaltens zu der aktuell ausgewählten CGR-Szene ein.
  • Der Symbolleistenbereich 803A schließt eine Vorschau-Affordance 803AD zum Präsentieren einer Vorschau des Projekts in einer CGR-Umgebung ein.
  • Der Symbolleistenbereich 803A schließt eine Vielzahl von Ansichts-Affordances 803AE-803AF ein, einschließlich einer Objektansichts-Affordance 803AE zum Ansehen der aktuell ausgewählten CGR-Szene in einem Ansichtsbereich 803E (weiter unten beschrieben) in einem Szenenmodus (in dem die an den Ansichtsbereich 803E gerichteten Benutzereingaben die Perspektive der Ansicht der aktuell ausgewählten CGR-Szene ändern) und einer CGR-Ansichts-Affordance 803AF zum Ansehen der aktuell ausgewählten CGR-Szene in dem Ansichtsbereich 803A in einem CGR-Modus (in dem eine Bewegung der Vorrichtung 100 die Perspektive der Ansicht der aktuell ausgewählten CGR-Szene ändert).
  • Der Symbolleistenbereich 803A schließt eine Vielzahl von Einstellungen-Affordances 803AG-803AJ zum Präsentieren unterschiedlicher Einstellungen in einem Einstellungsbereich 803D (weiter unten beschrieben) ein. Die Einstellungs-Affordances 803AG-803AJ schließen eine Projekteinstellungs-Affordance 803AG zum Präsentieren von Projekteinstellungen des Projekts in dem Einstellungsbereich 803D, eine Szeneneinstellungs-Affordance 803AH zum Präsentieren von Szeneneinstellungen der aktuell ausgewählten CGR-Szene in dem Einstellungsbereich 803D, eine Objekteinstellungs-Affordance 803AI zum Präsentieren von Objekteinstellungen eines aktuell ausgewählten CGR-Objekts in dem Einstellungsbereich 803D und eine Verhaltenseinstellungs-Affordance 803AJ zum Präsentieren von Verhaltenseinstellungen eines aktuell ausgewählten Verhaltens in dem Einstellungsbereich 803D ein.
  • Die Vielzahl von Projektverwaltungs-Benutzerschnittstellenbereichen 803A-803E schließt einen Szenenlistenbereich 803B ein, der jeweilige Affordances für jede CGR-Szene des Projekts einschließt. In 8C, wo das Projekt nur eine erste CGR-Szene einschließt, schließt der Szenenlistenbereich 803B nur eine erste CGR-Szenen-Affordance 803BA ein, die einer ersten CGR-Szene entspricht. In verschiedenen Ausführungsformen schließt die erste CGR-Szenen-Affordance 803BA (und andere Szenen-Affordances) den Namen der CGR-Szene (z. B. „Neue Szene 01“) ein, die unter einer bildlichen Darstellung der CGR-Szene angezeigt wird.
  • Die Vielzahl von Projektverwaltungs-Benutzerschnittstellenbereichen 803A-803E schließt einen Verhaltensbereich 803C ein, der jeweilige Affordances für jedes Verhalten der aktuell ausgewählten CGR-Szene einschließt. In 8C ist, wenn für die erste CGR-Szene kein Verhalten definiert wurde, der Verhaltensbereich 803C leer.
  • Die Vielzahl von Projektverwaltungs-Benutzerschnittstellenbereichen 803A-803E schließt einen Einstellungsbereich 803D zum Präsentieren einer Vielzahl von Einstellungsmanipulations-Affordances ein. In 8C schließt der Einstellungsbereich 803D, wenn die Szeneneinstellungs-Affordance 803AH ausgewählt wird (wie durch die andere Anzeige der Szeneneinstellungs-Affordance 803AH im Vergleich zu den anderen Einstellungs-Affordances 803AG, 803AI und 803AJ angegeben), eine Vielzahl von Szeneneinstellungs-Manipulations-Affordances ein, die über zusammenklappbare/erweiterbare Szeneneinstellungsmenüs 803DA-803DE dargestellt werden (von denen nur eine einzige Szeneneinstellungsmanipulations-Affordance, die Szenennamenmanipulations-Affordance 803DAA zum Ändern eines Namens der aktuell ausgewählten CGR-Szene, in 8C gezeigt ist).
  • Die Szeneneinstellungsmenüs 803DA-803DE schließen ein Szeneneigenschaftsmenü 803DA einschließlich Szeneneinstellungsmanipulations-Affordances zum Ändern von Szeneneigenschaften der aktuell ausgewählten CGR-Szene, ein Ankereigenschaftsmenü 803DB einschließlich Szeneneinstellungsmanipulations-Affordances zum Ändern von Ankereigenschaften der aktuell ausgewählten CGR-Szene, ein Menü 803DC für globale physikalische Eigenschaften, das Szeneneinstellungs-Manipulations-Affordances zum Ändern physikalischer Eigenschaften der aktuell ausgewählten CGR-Szene (wie etwa ob CGR-Objekte interagieren und/oder ein Vorhandensein und/oder eine Gravitationsstärke) einschließt, ein Menü 803DD für globale Audioeigenschaften, das Szeneneinstellungs-Manipulations-Affordances zum Ändern von Audioeigenschaften der aktuell ausgewählten CGR-Szene (wie einen Ton, der abgespielt werden soll, während die CGR-Szene dargestellt wird, z. B. eine Tonspur oder Audioeffekte, die auf reale Töne anzuwenden sind, die erfasst werden, während die CGR-Szene dargestellt wird, z. B. einen Nachhall oder eine Dämpfung), und ein Menü 803DE für globale Beleuchtungseigenschaften zum Ändern von Beleuchtungseigenschaften der aktuell ausgewählten CGR-Szene (wie etwa eines gerichteten oder omnidirektionalen Lichts, das gerendert werden soll, wenn die CGR-Szene dargestellt wird, oder wie reales Licht die Anzeige von CGR-Objekten der CGR-Szene beeinflusst) ein.
  • Die Vielzahl von Projektverwaltungs-Benutzerschnittstellenbereichen 803A-803E schließt einen Ansichtsbereich 803E zum Ansehen der aktuell ausgewählten CGR-Szene, Empfangen von Benutzereingaben, welche die Perspektive des Ansehens der aktuell ausgewählten CGR-Szene manipulieren (z. B. eine virtuelle Kameraposition), während sie sich in einem Objektansichtsmodus befindet, und CGR-Objekte der aktuell ausgewählten CGR-Szene manipulieren, ein.
  • Der Ansichtsbereich 803E schließt eine Darstellung des Ankers 803EA, welcher der aktuell ausgewählten CGR-Szene zugeordnet ist (in 8C eine Darstellung des ausgewählten Bildes (z. B. der Karo-Ass)), und, wie nachstehend beschrieben, Darstellungen von CGR-Objekten, die der aktuell ausgewählten CGR-Szene zugeordnet sind, ein.
  • 8C veranschaulicht eine Benutzereingabe 899C, die auf die Szenennamenmanipulations-Affordance 803DAA gerichtet ist. In verschiedenen Ausführungsformen entspricht die Benutzereingabe 899C einem Kontakt (z. B. einem Tippen), der am Ort der Szenennamenmanipulations-Affordance 803DAA erfasst wird.
  • 8D veranschaulicht die CGR-Datei, die als Reaktion auf das Erfassen der Benutzereingabe 899C, die auf die Szenennamenmanipulations-Affordance 803DAA gerichtet ist (und möglicherweise zusätzliche Benutzereingaben, die einen neuen Namen für die erste CGR-Szene definieren), die Benutzerschnittstelle 801 bildet.
  • In 8D hat sich die Szenen-Namenmanipulations-Affordance 803DAA geändert, um den neuen Namen für die erste CGR-Szene anzuzeigen (z. B. „Interaktive Karte“). In ähnlicher Weise hat sich die erste CGR-Szenen-Affordance 803BA geändert, um den neuen Namen für die erste CGR-Szene anzuzeigen.
  • 8D veranschaulicht eine Benutzereingabe 899D, die auf das Ankereigenschaftsmenü 803DB gerichtet ist. In verschiedenen Ausführungsformen entspricht die Benutzereingabe 899D einem Kontakt (z. B. einem Tippen), der am Ort des Ankereigenschaftsmenüs 803DB erfasst wird.
  • 8E veranschaulicht die CGR-Datei, die als Reaktion auf das Erfassen der Benutzereingabe 899D, die auf das Ankereigenschaftsmenü 803DB gerichtet ist, die Benutzerschnittstelle 801 bildet. In 8E wird das Ankereigenschaftsmenü 803DB erweitert (innerhalb des Einstellungsbereichs 803D), um eine Primäranker-Affordance 803DBA zum Ändern des Primärankers (zuvor über die Ankerauswahl-Benutzerschnittstelle 802B in 8D ausgewählt) der aktuell ausgewählten CGR-Szene, eine Ankerbild-Affordance 803DBB (angezeigt, wenn der primäre Anker ein Bild ist) zum Ändern des Ankerbildes und eine sekundäre Anker-Affordance 803DBC zum Auswählen oder Ändern des sekundären Ankers darzustellen.
  • In verschiedenen Ausführungsformen, wenn eine CGR-Anwendung, die dem Projekt entspricht, dargestellt wird und der primäre Anker nicht in einem Szenenkamerabild einer realen Umgebung erfasst wird, aber (optional nachdem eine Schwellenzeitdauer den Primäranker nicht erfasst hat) der Sekundäranker in einem Szenenkamerabild erfasst wird, wird die entsprechende CGR-Szene in Verbindung mit (z. B. scheinbar gebunden oder verankert) dem Sekundäranker dargestellt.
  • 8E veranschaulicht eine Benutzereingabe 899E, die auf die sekundäre Anker-Affordance 803DBC gerichtet ist. In verschiedenen Ausführungsformen entspricht die Benutzereingabe 899E einem Kontakt (z. B. einem Tippen), der am Ort der sekundären Anker-Affordance 803DBC erfasst wird.
  • 8F veranschaulicht die CGR-Datei, die als Reaktion auf das Erfassen der Benutzereingabe 899E, die auf die sekundäre Anker-Affordance 803DBC gerichtet ist (und möglicherweise zusätzliche Benutzereingaben, die eine horizontale Ebene als den sekundären Anker auswählen), die Benutzerschnittstelle 801 bildet. In 8F wird das Ankereigenschaftsmenü 803DB weiter erweitert (innerhalb des Einstellungsbereichs 803D), um eine tertiäre Anker-Affordance 803DBD zum Auswählen eines tertiären Ankers einzuschließen.
  • In verschiedenen Ausführungsformen die entsprechende CGR-Szene, wenn eine CGR-Anwendung, die dem Projekt entspricht, dargestellt wird und weder der Primäranker noch der Sekundäranker in einem Szenenkamerabild einer realen Umgebung erfasst werden, aber (optional nachdem eine Schwellenzeitdauer den Primäranker und den Sekundäranker nicht erfasst hat) der Tertiäranker in einem Szenenkamerabild erfasst wird, in Verbindung mit (z. B. offensichtlich daran gebunden oder verankert) dem Tertiäranker dargestellt wird.
  • 8F veranschaulicht eine Benutzereingabe 899F, die auf die CGR-Objekthinzufügungs-Affordance 803AB gerichtet ist. In verschiedenen Ausführungsformen entspricht die Benutzereingabe 899F einem Kontakt (z. B. einem Tippen), der am Ort der CGR-Objekthinzufügungs-Affordance 803AB erfasst wird.
  • 8G veranschaulicht die CGR-Datei, die als Reaktion auf das Erfassen der Benutzereingabe 899F, die an den CGR-Objekthinzufügungs-Affordance 803AB gerichtet ist, die Benutzerschnittstelle 801 bildet. In 8G schließt die CGR-Datei, die Benutzerschnittstelle 801 bildet, eine Medienbibliothek-Benutzerschnittstelle 804 in Form eines Popup-Fensters ein.
  • Die Medienbibliothek-Benutzerschnittstelle 804 schließt eine Vielzahl von bestimmten CGR-Objekthinzufügungs-Affordance 805A-805H zum Hinzufügen jeweiliger CGR-Objekte zu der aktuell ausgewählten CGR-Szene ein. In verschiedenen Ausführungsformen entspricht jeder der Vielzahl von bestimmten CGR-Objekthinzufügungs-Affordance 805A-805H einem bestimmten CGR-Objekt. In verschiedenen Ausführungsformen entspricht jeder der Vielzahl von bestimmten Objekthinzufügungshinweisen 805A-805H einem bestimmten CGR-Objekt, das einer bestimmten CGR-Objektdatei zugeordnet ist, die in einer lokalen oder entfernten Medienbibliothek gespeichert ist (z. B. einer Medienbibliothek, die auf der Vorrichtung 100 gespeichert ist oder an einem entfernten Ort gespeichert ist, der Vorrichtung 100 zugeordnet ist, wie in der Cloud).
  • Die Vielzahl von bestimmten CGR-Objekthinzufügungs-Affordances 805A-805H schließt eine Würfelhinzufügungs-Affordance 805A zum Hinzufügen eines Würfels zu der aktuell ausgewählten CGR-Szene, eine Karohinzufügungs-Affordance 805B zum Hinzufügen eines Karos zu der aktuell ausgewählten CGR-Szene, eine Kugelhinzufügungs-Affordance 805C zum Hinzufügen einer Kugel zu der aktuell ausgewählten CGR-Szene, eine Baumhinzufügungs-Affordance 805D zum Hinzufügen eines Baums zu der aktuell ausgewählten CGR-Szene, eine Gebäudehinzufügungs-Affordance 805E zum Hinzufügen eines Gebäudes zu der aktuell ausgewählten CGR-Szene, eine Gesteinshinzufügungs-Affordance 805F zum Hinzufügen eines Gesteins zu der aktuell ausgewählten CGR-Szene, eine Plattenhinzufügungs-Affordance 805G zum Hinzufügen einer Platte zu der aktuell ausgewählten CGR-Szene und eine Becherhinzufügungs-Affordance 805H zum Hinzufügen eines Bechers zu der aktuell ausgewählten CGR-Szene.
  • Die Medienbibliothek-Benutzerschnittstelle 804 schließt eine Suchleiste 804A zum Empfangen von Benutzereingaben ein, die Text umfassen. In verschiedenen Ausführungsformen wird der Text mit Schlüsselwörtern oder anderen Metadaten verglichen, die CGR-Objektdateien in der Medienbibliothek zugeordnet sind, um eine Teilmenge der bestimmten CGR-Objekthinzufügungs-Affordances 805A-805H darzustellen.
  • Die Medienbibliothek-Benutzerschnittstelle 804 schließt eine Zur-Bibliothek-Hinzufügen-Affordance 804B zum Hinzufügen von CGR-Objektdateien zu der Medienbibliothek ein. In verschiedenen Ausführungsformen wird, wenn eine Benutzereingabe erfasst wird, die auf die Zur-Bibliothek-Hinzufügen-Affordance 804B gerichtet ist, eine Zur-Bibliothek-Hinzufügen-Benutzerschnittstelle dargestellt, die Optionen zum Durchsuchen anderer CGR-Objektdateidepots nach einer CGR-Objektdatei (oder einer Vielzahl von CGR-Objektdateien) bereitstellt, um die Medienbibliothek auszuwählen und hinzuzufügen.
  • Die Medienbibliothek-Benutzerschnittstelle 804 schließt eine Abbruch-Affordance 804C ein, um die Medienbibliothek-Benutzerschnittstelle 804 zu verwerfen (nicht mehr anzuzeigen) und die CGR-Benutzerschnittstelle 801 in den in 8F dargestellten Zustand zurückzubringen.
  • 8G veranschaulicht eine Benutzereingabe 899G, die auf die Karohinzufügungs-Affordance 805B gerichtet ist. In verschiedenen Ausführungsformen entspricht die Benutzereingabe 899G einem Kontakt (z. B. einem Tippen), der am Ort der Karohinzufügungs-Affordance 805B erfasst wird.
  • 8H veranschaulicht die CGR-Datei, die als Reaktion auf das Erfassen der Benutzereingabe 899G, die auf die Karohinzufügungs-Affordance 805B gerichtet ist, die Benutzerschnittstelle 801 bildet. In 8H wird die Medienbibliothek-Benutzerschnittstelle 804 nicht mehr angezeigt. In 8H schließt der Ansichtsbereich 803E eine Darstellung eines CGR-Karo-Objekts 806A, das an einem bestimmten Ort über der Darstellung des Ankers 803EA angezeigt wird, ein. In diesem Zusammenhang hat sich die erste CGR-Szenen-Affordance 803BA geändert, um anzugeben, dass die erste CGR-Szene ein CGR-Karo-Objekt einschließt.
  • 8H veranschaulicht eine Benutzereingabe 899H, die auf die Vorschau-Affordance 803AD gerichtet ist. In verschiedenen Ausführungsformen entspricht die Benutzereingabe 899H einem Kontakt (z. B. einem Tippen), der am Ort der Vorschau-Affordance 803AD erfasst wird.
  • 81 veranschaulicht die CGR-Datei, die als Reaktion auf das Erfassen der Benutzereingabe 899H, die auf die Vorschau-Affordance 803AD gerichtet ist, die Benutzerschnittstelle 801 bildet. In 81 schließt die CGR-Datei, die Benutzerschnittstelle 801 bildet, eine Vorschau-Benutzerschnittstelle 802D ein. Die Vorschau-Benutzerschnittstelle 802D schließt einen Symbolleistenbereich 802DA und einen Vorschauanzeigebereich 802DB ein. Der Symbolleistenbereich 802DA beinhaltet eine Fertig-Affordance 802DAA zum Verlassen der Vorschau-Benutzerschnittstelle 802D und Zurückkehren zur Projektverwaltungs-Benutzerschnittstelle 802C (z. B. in 8H). Der Vorschauanzeigebereich 802DB schließt ein Szenenkamerabild ein, das von der Vorrichtung 100 einer physischen Umgebung aufgenommen wird (z. B. unter Verwendung einer Szenenkamera oder einer Kamera, die auf einer gegenüberliegenden Seite der Vorrichtung 100 als in 81 dargestellt angeordnet ist). Die physische Umgebung schließt unter anderem eine Tabelle, eine Karo-Ass-Spielkarte und eine Stern-Ass-Spielkarte. Dementsprechend schließt das Szenenkamerabild eine Darstellung der Tabelle 802DBA, eine Darstellung der Karo-Ass-Spielkarte 802DBB und eine Darstellung der Stern-Ass-Spielkarte 802DBC.
  • 8J veranschaulicht die CGR-Datei, die als Reaktion darauf, dass die Vorrichtung 100 einen Teil des Szenenkamerabildes (z. B. die Darstellung der Karo-Ass-Spielkarte 802DBB) erkennt, das mit dem Ankerbild (z. B. AofD.jpg) übereinstimmt, die Benutzerschnittstelle 801 bildet. In 8J schließt der Vorschauanzeigebereich 802DB das CGR-Karo-Objekt 802DBD ein, das in der Darstellung der Karo-Ass-Spielkarte 802DBB verankert angezeigt wird. Insbesondere wird das CGR-Karo-Objekt 802DBD an einem bestimmten Ort, welcher der bestimmten Ort entspricht, an dem die Darstellung des CGR-Karo-Objekts 806A über der Darstellung des Ankers 803EA in 8H angezeigt wird, an der Darstellung der Karo-Ass-Spielkarte 802DBB verankert angezeigt.
  • 8K veranschaulicht die CGR-Datei, welche die Benutzerschnittstelle 801 als Reaktion darauf bildet, dass der Standort der Karo-Ass-Spielkarte in der physischen Umgebung geändert wird. In 8K schließt der Vorschauanzeigebereich 802DB die Darstellung der Karo-Ass-Spielkarte 802DBB ein, die an einem anderen Ort angezeigt wird. Der Vorschauanzeigebereich 802DB schließt ferner das CGR-Karo-Objekt 802DBD an einem anderen Ort ein, das immer noch in der Darstellung der Karo-Ass-Spielkarte 802DBB verankert angezeigt wird.
  • 8L veranschaulicht die CGR-Datei, die als Reaktion darauf, dass sich die Karo-Ass-Spielkarte aus dem Sichtfeld der Szenenkamera bewegt, die Benutzerschnittstelle 801 bildet. In 8L schließt der Vorschauanzeigebereich 802DB weder die Darstellung der Karo-Ass-Spielkarte 802DBB noch das CGR-Karo-Objekt 802DBD ein.
  • 8M veranschaulicht die CGR-Datei, die als Reaktion darauf, dass die Vorrichtung 100 eine Darstellung einer horizontalen Ebene in einem Abschnitt des Szenenkamerabildes erfasst (und in verschiedenen Ausführungsformen als Reaktion auf das Fehlschlagen des Erfassens eines Abschnitts des Szenenkamerabildes, der mit dem Ankerbild übereinstimmt, für mindestens eine Schwellenzeitdauer z. B. 3 Sekunden), die Benutzerschnittstelle 801 bildet. In 8M wird, da der Primäranker, eine Darstellung, die mit dem Ankerbild (z. B. AofD.jpg.) übereinstimmt, nicht in dem Szenenbild erfasst, sondern der Sekundäranker, eine Darstellung einer horizontalen Ebene erfasst, das CGR-Karo-Objekt 802DBD in der Darstellung der horizontalen Ebene (z. B. in der Darstellung der Tabelle 802DBA) verankert angezeigt.
  • 8M veranschaulicht eine Benutzereingabe 899I, die auf die Fertig-Affordance 803DAA gerichtet ist. In verschiedenen Ausführungsformen entspricht die Benutzereingabe 899I einem Kontakt (z. B. einem Tippen), der an dem Ort der Fertig-Affordance 803DAA erfasst wird.
  • 8N veranschaulicht die CGR-Datei, die als Reaktion auf das Erfassen der Benutzereingabe 899I, die an den Fertig-Affordance 803DAA gerichtet ist, die Benutzerschnittstelle 801 bildet. In 8N schließt die CGR-Datei, welche die Benutzerschnittstelle 801 bildet, eine Projektverwaltungs-Benutzerschnittstelle 802C ein (z. B. in dem in 8H dargestellten Zustand).
  • 8N veranschaulicht eine Benutzereingabe 899J, die auf die CGR-Szenenhinzufügungs-Affordance 803AA gerichtet ist. In verschiedenen Ausführungsformen entspricht die Benutzereingabe 899J einem Kontakt (z. B. einem Tippen), der am Ort der CGR-Szenenhinzufügungs-Affordance 803AA erfasst wird.
  • 8O veranschaulicht die CGR-Datei, die als Reaktion auf das Erfassen der Benutzereingabe 899J, die auf die CGR-Szenenhinzufügungs-Affordance 803AA gerichtet ist, die Benutzerschnittstelle 801 bildet. In 8O schließt die CGR-Datei, welche die Benutzerschnittstelle 801 bildet, die Ankerauswahl-Benutzerschnittstelle 802B ein.
  • 8O veranschaulicht eine Benutzereingabe 899K, die auf die Ankerauswahl-Affordance 802BA der horizontalen Ebene gerichtet ist. In verschiedenen Ausführungsformen entspricht die Benutzereingabe 899K einem Kontakt (z. B. einem Tippen), der an dem Ort der Ankerauswahl-Affordance 802BA der horizontalen Ebene erfasst wird.
  • 8P veranschaulicht die CGR-Datei, die als Reaktion auf das Erfassen der Benutzereingabe 899K, die auf die Ankerauswahl-Affordance 802BA der horizontalen Ebene gerichtet ist, die Benutzerschnittstelle 801 bildet. In 8P schließt die CGR-Datei, die Benutzerschnittstelle 801 bildet, die Projektverwaltungs-Benutzerschnittstelle 802C ein. In 8P schließt der Szenenlistenbereich 803B zusätzlich zu der ersten CGR-Szenen-Affordance 803BA eine zweite CGR-Szenen-Affordance 803BB ein, die einer zweiten CGR-Szene entspricht.
  • Die zweite CGR-Szenen-Affordance 803BB wird anders angezeigt als die erste CGR-Szenen-Affordance 803BA, um anzugeben, dass die zweite CGR-Szene die aktuell ausgewählte CGR-Szene ist. In verschiedenen Ausführungsformen und in 8P wird die zweite CGR-Szenen-Affordance 803BB mit einem dickeren Rand angezeigt als der erste CGR-Szenen-Affordance 803BA. In verschiedenen Ausführungsformen wird die zweite CGR-Szenen-Affordance 803BB mit Hervorhebung oder einer anderen Angabe, dass die zweite CGR-Szene die aktuell ausgewählte CGR-Szene ist, angezeigt.
  • In 8P schließt der Einstellungsbereich 803D im Szeneneigenschaftsmenü 803DA die Szenennamenmanipulations-Affordance 803DAA, die den Namen der aktuell ausgewählten CGR-Szene angibt (z. B. „Neue Szene 02“).
  • In 8P schließt der Ansichtsbereich 803E eine Darstellung des Ankers 803EA ein, welcher der aktuell ausgewählten CGR-Szene zugeordnet ist (in 8P eine Darstellung einer horizontalen Ebene), wobei ein Raster 803EB darüber gelegt ist.
  • 8P veranschaulicht eine Benutzereingabe 899L, die auf die Szenennamenmanipulations-Affordance 803DAA gerichtet ist. In verschiedenen Ausführungsformen entspricht die Benutzereingabe 899C einem Kontakt (z. B. einem Tippen), der am Ort der Szenennamenmanipulations-Affordance 803DAA erfasst wird.
  • 8Q veranschaulicht die CGR-Datei, die als Reaktion auf das Erfassen der Benutzereingabe 899L, die auf die Szenen-Namenmanipulations-Affordance 803DAA gerichtet ist (und möglicherweise zusätzliche Benutzereingaben, die einen neuen Namen für die zweite CGR-Szene definieren), die Benutzerschnittstelle 801 bildet.
  • In 8Q hat sich die Szenennamenmanipulations-Affordance 803DAA geändert, um den neuen Namen für die zweite CGR-Szene anzuzeigen (z. B. „TEA-Zeit“). In ähnlicher Weise hat sich die zweite CGR-Szenen-Affordance 803BB geändert, um den neuen Namen für die zweite CGR-Szene anzuzeigen.
  • 8Q veranschaulicht eine Benutzereingabe 899M, die auf die CGR-Objekthinzufügungs-Affordance 803AB gerichtet ist. In verschiedenen Ausführungsformen entspricht die Benutzereingabe 899M einem Kontakt (z. B. einem Tippen), der am Ort der CGR-Objekthinzufügungs-Affordance 803AB erfasst wird.
  • 8R veranschaulicht die CGR-Datei, die als Reaktion auf das Erfassen der Benutzereingabe 899M, die auf die CGR-Objekthinzufügungs-Affordance 803AB gerichtet ist, die Benutzerschnittstelle 801 bildet. In 8R schließt die CGR-Datei, die Benutzerschnittstelle 801 bildet, die Medienbibliothek-Benutzerschnittstelle 804 in Form eines Popup-Fensters ein.
  • 8R veranschaulicht eine Benutzereingabe 899N (in verschiedenen Ausführungsformen eines anderen Typs als die Benutzereingabe 899G von 8G), die auf die Plattenhinzufügungs-Affordance 805G gerichtet ist. In verschiedenen Ausführungsformen entspricht die Benutzereingabe 899N einem verlängerten und/oder intensiven Kontakt (z. B. einem Tippen und/oder einer Kraftberührung), der am Ort der Plattenhinzufügungs-Affordance 805G erfasst wird.
  • 8S veranschaulicht die CGR-Datei, die als Reaktion auf das Erfassen der Benutzereingabe 899N, die an die Plattenhinzufügungs-Benutzerschnittstelle 805G gerichtet ist, die Benutzerschnittstelle 801 bildet. In 8S schließt die Medienbibliothek-Benutzerschnittstelle 804 eine ausgewählte Hinzufügungs-Affordance 804D zum Hinzufügen eines oder mehrerer ausgewählter CGR-Objekte zu der CGR-Szene und eine Alles-Abwählen-Affordance 804E zum Abwählen aller ausgewählten CGR-Objekte ein. In verschiedenen Ausführungsformen, wie in 8S veranschaulicht, ersetzen die ausgewählte Ausgewähltes-Hinzufügen-Affordance 804D und die Alles-Abwählen-Affordance 804E die Abbruch-Affordance 804C (z. B. wie in 8R gezeigt). In verschiedenen Ausführungsformen werden die Ausgewähltes-Hinzufügen-Affordance 804D und die Alles-Abwählen-Affordance 804E gleichzeitig mit der Abbruch-Affordance 804C angezeigt.
  • In 8S schließt die Plattenhinzufügungs-Affordance 805G einen Auswahlindikator 805GA ein, der anzeigt, dass ein CGR-Platten-Objekt ausgewählt ist.
  • Im Vergleich zu den 8G und 8H, in denen eine Benutzereingabe eines ersten Typs (z. B. ein Tippen), die auf eine bestimmte CGR-Objekthinzufügungs-Affordance gerichtet ist, ein entsprechendes CGR-Objekt zu der Szene hinzufügt, wählt in den 8R und 8S eine Benutzereingabe eines zweiten Typs (z. B. ein Tipp-und-Hold), die auf eine bestimmte CGR-Objekthinzufügungs-Affordance gerichtet ist, das entsprechende Objekt aus (z. B. wie durch einen Auswahlindikator angegeben, der in Verbindung mit der bestimmten CGR-Objekthinzufügungs-Affordance angezeigt wird).
  • 8S veranschaulicht eine Benutzereingabe 899O, die auf die Becherhinzufügungs-Affordance 805H gerichtet ist. In verschiedenen Ausführungsformen entspricht die Benutzereingabe 899O einem Kontakt (z. B. einem Tippen), der am Ort der Becherhinzufügungs-Affordance 805H erfasst wird.
  • 8T veranschaulicht die CGR-Datei, die als Reaktion auf das Erfassen der Benutzereingabe 899O, die an die Cup-Hinzufügungsbenutzerschnittstelle 805H gerichtet ist, die Benutzerschnittstelle 801 bildet. In 8T schließt die CAP-Addition-Affordance 805H einen Auswahlindikator 805HA ein, der anzeigt, dass ein CGR-Becher-Objekt ausgewählt ist.
  • 8T veranschaulicht eine Benutzereingabe 899P, die auf die ausgewählte Ausgewähltes-Hinzufügen-Affordance 804D gerichtet ist. In verschiedenen Ausführungsformen entspricht die Benutzereingabe 899P einem Kontakt (z. B. einem Tippen), der am Ort der Ausgewähltes-Hinzufügen-Affordance 804D erfasst wird.
  • 8U veranschaulicht die CGR-Datei, die als Reaktion auf das Erfassen der Benutzereingabe 899P, die auf den Ausgewähltes-Hinzufügen-Affordance 804D gerichtet ist, die Benutzerschnittstelle 801 bildet. In 8U wird die Medienbibliothek-Benutzerschnittstelle 804 nicht mehr angezeigt. In 8U schließt der Ansichtsbereich 803E eine Darstellung eines CGR-Platten-Objekts 806B, das an einem ersten Ort über der Darstellung des Ankers 803EA angezeigt wird, und eine Darstellung eines CGR-Becher-Objekts 806C, das an einem zweiten Ort über der Darstellung des Ankers 803EA angezeigt wird, ein. In diesem Zusammenhang hat sich die zweite CGR-Szenen-Affordance 803BB geändert, um anzuzeigen, dass die zweite CGR-Szene ein CGR-Platten-Objekt und ein CGR-Becher-Objekt einschließt.
  • In verschiedenen Ausführungsformen sind der erste Ort der Darstellung des CGR-Platten-Objekts 806B und der zweite Ort der Darstellung des CGR-Becher-Objekts 806C so gewählt, dass eine Unterseite der Darstellung des CGR-Platten-Objekts 806B an der Oberseite der Darstellung des Ankers 803EA anliegt und eine Unterseite der Darstellung des CGR-Becher-Objekts 806C an der Oberseite der Darstellung des Ankers 803EA anliegt.
  • In verschiedenen Ausführungsformen werden der erste Ort der Darstellung des CGR-Platten-Objekts 806B und der zweite Ort der Darstellung des CGR-Becher-Objekts 806C ausgewählt, um sicherzustellen, dass sich die Darstellung des CGR-Platten-Objekts 806B und die Darstellung des CGR-Becher-Objekts 806C nicht schneiden.
  • In verschiedenen Ausführungsformen werden der erste Ort der Darstellung des CGR-Platten-Objekts 806B und der zweite Ort der Darstellung des CGR-Becher-Objekts 806C basierend auf dem Gitter 803EB ausgewählt. Beispielsweise wird in verschiedenen Ausführungsformen der erste Ort so ausgewählt, dass ein räumlicher Manipulationspunkt (z. B. eine Kante, ein Mittelpunkt, ein Massenschwerpunkt, ein intuitiver räumlicher Manipulationspunkt, oder ein benutzerdefinierter räumlicher Manipulationspunkt) der Darstellung des CGR-Platten-Objekts 806B vertikal mit einem ersten Gitterpunkt des Gitters 803EB ausgerichtet ist und der zweite Ort so ausgewählt ist, dass ein räumlicher Manipulationspunkt der Darstellung des CGR-Becher-Objekts 806C vertikal mit einem zweiten Gitterpunkt des Gitters 803EB ausgerichtet ist.
  • 8U veranschaulicht eine Benutzereingabe 899Q, die auf die Darstellung des CGR-Becher-Objekts 806C gerichtet ist. In verschiedenen Ausführungsformen entspricht die Benutzereingabe 899Q einem Kontakt (z. B. einem Tippen), der an dem Ort der Darstellung des CGR-Becher-Objekts 806C erfasst wird.
  • 8V veranschaulicht die CGR-Datei, die als Reaktion auf das Erfassen der Benutzereingabe 899Q, die auf die Darstellung des CGR-Becher-Objekts 806C gerichtet ist, die Benutzerschnittstelle 801 bildet. In 8V schließt der Ansichtsbereich 803E einen ersten Typ des Objektauswahlindikators 807 ein, der die Darstellung des CGR-Becher-Objekts 806C umgibt. Der erste Typ des Objektauswahlindikators 807, der um die Darstellung des CGR-Becher-Objekts 806C herum angezeigt wird, zeigt an, dass das CGR-Becher-Objekt ausgewählt ist.
  • In 8V schließt, wenn die Objekteinstellungs-Affordance 803AI ausgewählt wird (wie durch die andere Anzeige der Objekteinstellungs-Affordance 803AI im Vergleich zu den anderen Einstellungs-Affordances 803AG, 803AH und 803AJ angezeigt), der Einstellungsbereich 803D eine Vielzahl von Objekteinstellungsmanipulations-Affordances ein, die über zusammenklappbare/erweiterbare Objekteinstellungsmenüs 813DA-813DD dargestellt werden (von denen nur eine einzige Objekteinstellungsmanipulations-Affordance, die Objektnamenmanipulations-Affordance 813DAA zum Ändern eines Namens des aktuell ausgewählten CGR-Objekts, in 8V gezeigt ist). Wie der erste Typ des Objektauswahlindikators 807, der die Darstellung des CGR-Becher-Objekts 806C umgebend angezeigt wird, zeigt die Objektnamenmanipulations-Affordance 813DAA, die den Namen des CGR-Becher-Objekts (z. B. „Becher01“) anzeigt, dass das CGR-Becher-Objekt ausgewählt ist.
  • Die Objekteinstellungsmenüs 813DA-813DD schließen ein Objekteigenschaftsmenü 813DA ein, das Szeneneinstellungsmanipulations-Affordances zum Ändern von Szeneneigenschaften des aktuell ausgewählten CGR-Objekts einschließt, ein Eigenschaftenanzeigemenü 813DB, das Anzeigeeinstellungsmanipulations-Affordances zum Ändern von Anzeige- (oder Wiedergabe-) Eigenschaften des aktuell ausgewählten CGR-Objekts (wie eine Form, Farbe oder optische Übertragung des CGR-Objekts) einschließt, ein Menü 813DC für physikalische Eigenschaften, das Objekteinstellmanipulations-Affordances zum Ändern physikalischer Eigenschaften des aktuell ausgewählten CGR-Objekts (wie Lichtreflexionsvermögen des CGR-Objekts oder Elastizität des CGR-Objekts [z. B. wie das CGR-Objekt mit anderen CGR-Objekten interagiert]) einschließt, und ein Menü 813DD für Audioeigenschaften, das Objekteinstellmanipulations-Affordances zum Ändern von Audioeigenschaften des aktuell ausgewählten CGR-Objekts (wie etwa eines omnidirektionalen oder Umgebungsgeräusches, das abgespielt werden soll, während das CGR-Objekt dargestellt wird, oder eines direktionalen Geräusches, das von dem CGR-Objekt emittiert werden soll) einschließt.
  • 8V veranschaulicht eine Benutzereingabe 899R, die auf das Eigenschaftenanzeigemenü 813DB gerichtet ist. In verschiedenen Ausführungsformen entspricht die Benutzereingabe 899Q einem Kontakt (z. B. einem Tippen), der am Ort der Darstellung des Eigenschaftenanzeigemenü 813DB erfasst wird.
  • 8W veranschaulicht die CGR-Datei, die als Reaktion auf das Erfassen der Benutzereingabe 899R, die an das Eigenschaftenanzeigemenü 813DB gerichtet ist, die Benutzerschnittstelle 801 bildet. In 8W wird das Eigenschaftenanzeigemenü 813DB erweitert (innerhalb des Einstellungsbereichs 803D), um eine Konfigurator-Affordance 813DBA zum Präsentieren einer Konfigurator-Benutzerschnittstelle (nachstehend beschrieben) darzustellen, eine Stil-Affordance 813DBB zum Ändern einer Form, eines Rendering-Drahtgitters oder eines Anzeigenetzes des aktuell ausgewählten CGR-Objekts und eine Muster-Affordance 813DBC zum Ändern eines Musters, einer Farbe oder einer Textur des aktuell ausgewählten CGR-Objekts.
  • 8W veranschaulicht eine Benutzereingabe 899S, die an die Konfigurator-Affordance 813DBA gerichtet ist. In verschiedenen Ausführungsformen entspricht die Benutzereingabe 899S einem Kontakt (z. B. einem Tippen), der am Ort der Konfigurator-Affordance 813DBA erfasst wird.
  • 8X veranschaulicht die CGR-Datei, die als Reaktion auf das Erfassen der Benutzereingabe 899S, die an den Konfigurator-Affordance 813DBA gerichtet ist, die Benutzerschnittstelle 801 bildet. In 8X schließt die CGR-Datei, welche die Benutzerschnittstelle 801 bildet, eine Konfigurator-Benutzerschnittstelle 808 in Form eines Popup-Fensters ein.
  • Die Konfigurator-Benutzerschnittstelle 808 beinhaltet eine Stilleiste 808E, die eine Vielzahl von Stil-Affordances 808EA-808ED zum Ändern eines aktuell ausgewählten Stils der Stilleiste 808E beinhaltet, und eine Musterleiste 808F, die eine Vielzahl von Muster-Affordances 808FA-808FD zum Ändern eines aktuell ausgewählten Musters der Musterleiste 808F beinhaltet. Die Stilleiste 808E schließt eine Becher-Affordance 808EA zum Ändern des aktuell ausgewählten Stils in einen Becher-Stil, eine Teetassen-Affordance 808EB zum Ändern des aktuell ausgewählten Stils in einen Teetassen-Stil, eine Espresso-Affordance 808EC zum Ändern des aktuell ausgewählten Stils in einen EspressoStil und eine Krug-Affordance 808ED zum Ändern des aktuell ausgewählten Stils in einen Krug-Stil ein. Die Musterleiste 808F schließt eine Weiß-Affordance 808FA zum Ändern des aktuell ausgewählten Musters in ein Weiß-Muster, eine Glas-Affordance 808FB zum Ändern des aktuell ausgewählten Musters in ein Glasmuster, eine Stern-Affordance 808FC zum Ändern des aktuell ausgewählten Musters in ein Sternmuster und eine Efeu-Affordance 808FD zum Ändern des aktuell ausgewählten Musters in ein Efeumuster ein.
  • Die Konfigurator-Benutzerschnittstelle 808 schließt ein Ansichtsfenster 808D ein, das eine Darstellung des aktuell ausgewählten CGR-Objekts 808DA mit dem aktuell ausgewählten Stil in der Stilleiste 808E und dem aktuell ausgewählten Muster in der Musterleiste 808F (und einen Namen 808C des aktuell ausgewählten CGR-Objekts über dem Ansichtsfenster 808D) darstellt.
  • Die Konfigurator-Benutzerschnittstelle 808 schließt eine Vielzahl von Ansichts-Affordances 808A-808B ein, einschließlich einer Objektansichts-Affordance 808A zum Ansehen des aktuell ausgewählten CGR-Objekts im Ansichtsfenster 808D in einem Szenenmodus (in dem die auf das Ansichtsfenster 808D gerichteten Benutzereingaben die Perspektive der Ansicht des aktuell ausgewählten CGR-Objekts) und einer CGR-Ansichts-Affordance 808B zum Ansehen des aktuell ausgewählten CGR-Objekts in dem Ansichtsfenster 808D in einem CGR-Modus (in dem eine Bewegung der Vorrichtung 100 die Perspektive der Ansicht des aktuell ausgewählten CGR-Objekts ändert).
  • Die Konfigurator-Benutzerschnittstelle 808 beinhaltet eine OK-Affordance 808G zum Ändern des Stils des aktuell ausgewählten CGR-Objekts in den aktuell ausgewählten Stil in der Stilleiste 808E, Ändern des Musters des aktuell ausgewählten CGR-Objekts in das aktuell ausgewählte Muster in der Musterleiste 808F und Verwerfen (Beenden der Anzeige) der Konfigurator-Benutzerschnittstelle 808. Die Konfigurator-Benutzerschnittstelle 808 schließt eine Abbruch-Affordance 808H, um die Konfigurator-Benutzerschnittstelle 808 zu verwerfen (nicht mehr anzuzeigen) und die CGR-Datei, welche die Benutzerschnittstelle 801 bildet, in den in 8W dargestellten Zustand zurückzubringen, ohne den Stil und/oder das Muster des aktuell ausgewählten CGR-Objekts zu ändern.
  • In verschiedenen Ausführungsformen wird, während ein bestimmter Stil der aktuell ausgewählte Stil der Stilleiste 808E ist, eine entsprechende Teilmenge der Muster zur Auswahl in der Musterleiste 808F dargestellt. In verschiedenen Ausführungsformen basiert die entsprechende Teilmenge auf einer oder mehreren Auswahlregeln, die definieren, wie die verschiedenen Stile und Muster kombiniert werden können. In verschiedenen Ausführungsformen sind die Auswahlregeln in einer entsprechenden CGR-Objektdatei gespeichert.
  • Beispielsweise ist in 8X der Tassenstil der aktuell ausgewählte Stil der Stilleiste 808E, wie durch einen ersten Anzeigestil (z. B. schwarz) de Tassen-Affordance 808EA im Vergleich zu einem zweiten Anzeigestil (z. B. weiß) der anderen Stil-Affordances 808EB-808ED angegeben. Ferner ist das Weiß-Muster das aktuell ausgewählte Muster der Musterleiste 808F, wie durch den ersten Anzeigestil der Weiß-Affordance 808FA angegeben. Basierend darauf, dass der aktuell ausgewählte Stil der Tassenstil ist, wird eine Teilmenge der Muster-Affordances 808FA-808FD zur Auswahl dargestellt. Insbesondere werden die Stern-Affordance 808FC und die Efeu-Affordance 808FD zur Auswahl dargestellt, wie durch den zweiten Anzeigestil angegeben, während die Glas-Affordance 808FB nicht zur Auswahl dargestellt wird, wie durch den dritten Anzeigestil angegeben (z. B. grau).
  • 8X veranschaulicht eine Benutzereingabe 899T, die auf die Espresso-Affordance 808EC gerichtet ist. In verschiedenen Ausführungsformen entspricht die Benutzereingabe 899T einem Kontakt (z. B. einem Tippen), der am Ort der Espresso-Affordance 808EC erfasst wird.
  • 8Y veranschaulicht die CGR-Datei, die als Reaktion auf das Erfassen der Benutzereingabe 899T, die auf die Espresso-Nutzung 808EC gerichtet ist, die Benutzerschnittstelle 801 bildet. In 8Y wird der aktuell ausgewählte Stil In den Espressostil geändert, wie durch den ersten Anzeigestil der Espresso-Affordance 808EC im Vergleich zum zweiten Anzeigestil der anderen Stil-Affordances 808EA, 808EB und 808ED angezeigt. Ferner wird die Darstellung des aktuell ausgewählten CGR-Objekts 808DA im Ansichtsfenster 808D basierend auf der Änderung des aktuell ausgewählten Stils geändert.
  • Wie oben erwähnt, wird in verschiedenen Ausführungsformen, während ein bestimmter Stil der aktuell ausgewählte Stil des Stilleiste 808E ist, eine entsprechende Teilmenge der Muster zur Auswahl in dem Musterleiste 808F dargestellt. Somit wird als ein weiteres Beispiel in 8Y basierend darauf, dass der aktuell ausgewählte Stil der Espressostil ist, eine Teilmenge der Muster-Affordances 808FA-808FD zur Auswahl dargestellt. Insbesondere wird die Glas-Affordance 808FB zur Auswahl wie durch den zweiten Anzeigestil angegeben dargestellt, während die Stern-Affordance 808FC und die Efeu-Affordance 808FD nicht zur Auswahl wie durch den dritten Anzeigestil angegeben dargestellt werden.
  • 8Y veranschaulicht eine Benutzereingabe 899U, die auf die Teetassen-Affordance 808EB gerichtet ist. In verschiedenen Ausführungsformen entspricht die Benutzereingabe 899U einem Kontakt (z. B. einem Tippen), der am Ort der Teetassen-Affordance 808EB erfasst wird.
  • 8Z veranschaulicht die CGR-Datei, die als Reaktion auf das Erfassen der Benutzereingabe 899U, die an die Teetassen-Affordance 808EB gerichtet ist, die Benutzerschnittstelle 801 bildet. In 8Z wird der aktuell ausgewählte Stil in den Teetassen-Stil geändert, wie durch den ersten Anzeigestil der Teetassen-Affordance 808EB im Vergleich zum zweiten Anzeigestil der anderen Stil-Affordances 808EA, 808EC und 808ED angezeigt. Ferner wird die Darstellung des aktuell ausgewählten CGR-Objekts 808DA im Ansichtsfenster 808D basierend auf der Änderung des aktuell ausgewählten Stils geändert.
  • Wie oben erwähnt, wird in verschiedenen Ausführungsformen, während ein bestimmter Stil der aktuell ausgewählte Stil des Stilleiste 808E ist, eine entsprechende Teilmenge der Muster zur Auswahl in dem Musterleiste 808F dargestellt. Somit wird als ein weiteres Beispiel in 8Z basierend darauf, dass der aktuell ausgewählte Stil der Teetassen-Stil ist, eine Teilmenge der Muster-Affordances 808FA-808FD zur Auswahl dargestellt. Insbesondere werden die Stern-Affordance 808FC und die Efeu-Affordance 808FD zur Auswahl dargestellt, wie durch den zweiten Anzeigestil angegeben, während die Glas-Affordance 808FB nicht zur Auswahl dargestellt wird, wie durch den dritten Anzeigestil angegeben.
  • 8Z veranschaulicht eine Benutzereingabe 899V, die auf die Stern-Affordance 808FC gerichtet ist. In verschiedenen Ausführungsformen entspricht die Benutzereingabe 899V einem Kontakt (z. B. einem Tippen), der am Ort der Sternen-Affordance 808FC erfasst wird.
  • 8AA veranschaulicht die CGR-Datei, die als Reaktion auf das Erfassen der Benutzereingabe 899V, die an die Stern-Affordance 808FC gerichtet ist, die Benutzerschnittstelle 801 bildet. In 8AA wird das aktuell ausgewählte Muster in den Sternstil geändert, wie durch den ersten Anzeigestil des Stern-Affordance 808FC im Vergleich zum zweiten Anzeigestil oder dritten Anzeigestil der anderen Muster-Affordances 808FA, 808FB und 808FD angegeben. Ferner wird die Darstellung des aktuell ausgewählten CGR-Objekts 808DA im Ansichtsfenster 808D basierend auf der Änderung des aktuell ausgewählten Musters geändert.
  • Wie oben erwähnt, wird in verschiedenen Ausführungsformen, während ein bestimmter Stil der aktuell ausgewählte Stil des Stilleiste 808E ist, eine entsprechende Teilmenge der Muster zur Auswahl in dem Musterleiste 808F dargestellt. Somit wird als ein weiteres Beispiel in 8AA basierend darauf, dass der aktuell ausgewählte Stil der Teetassen-Stil ist, eine Teilmenge der Muster-Affordances 808FA-808FD zur Auswahl dargestellt. Insbesondere werden die Weiß-Affordance 808FA und die Efeu-Affordance 808FD zur Auswahl dargestellt, wie durch den zweiten Anzeigestil angegeben, während die Glas-Affordance 808FB nicht zur Auswahl dargestellt wird, wie durch den dritten Anzeigestil angegeben.
  • 8AA veranschaulicht eine Benutzereingabe 899W, die auf die OK-Affordance 808G gerichtet ist. In verschiedenen Ausführungsformen entspricht die Benutzereingabe 899W einem Kontakt (z. B. einem Tippen), der am Ort der OK-Affordance 808G erfasst wird.
  • 8AB veranschaulicht die CGR-Datei, die als Reaktion auf das Erfassen der Benutzereingabe 899W, die an die OK-Affordance 808G gerichtet ist, die Benutzerschnittstelle 801 bildet. In 8AB wird die Konfigurator-Benutzerschnittstelle 808 verworfen, der Stil des aktuell ausgewählten CGR-Objekts wird in den Teetassenstil geändert, wie durch die Änderung des Erscheinungsbilds der Darstellung des CGR-Becher-Objekts 806C und die Änderung der Stil-Affordance 813DBB angegeben, und das Muster des aktuell ausgewählten CGR-Objekts wird in das Sternmuster geändert, wie durch die Änderung des Erscheinungsbilds des CGR-Becher-Objekts 806C und die Änderung der Muster-Affordance 813DBC angegeben.
  • 8AB veranschaulicht eine Benutzereingabe 899X, die auf die Darstellung des CGR-Becher-Objekts 806C gerichtet ist. In verschiedenen Ausführungsformen entspricht die Benutzereingabe 899X zwei Kontakten, die sich näher aufeinander zu oder weiter voneinander weg bewegen (z. B. eine Zusammendrück- oder Auseinanderdrückgeste), die an der Position der Darstellung des CGR-Becher-Objekts 806C erfasst wird.
  • 8AC veranschaulicht die CGR-Datei, die als Reaktion auf das Erfassen der Benutzereingabe 899X, die auf die Darstellung des CGR-Becher-Objekts 806C gerichtet ist, die Benutzerschnittstelle 801 bildet. In 8AC wird die Größe des CGR-Becher-Objekts vergrößert, wie durch die vergrößerte Anzeigegröße der Darstellung des CGR-Becher-Objekts 806C (und in ähnlicher Weise die Änderung des zweiten CGR-Szenen-Affordance 803BB) angezeigt. In verschiedenen Ausführungsformen ist die Größenänderung des CGR-Becher-Objekts proportional zu einer Abstandsänderung zwischen den zwei Kontakten der Benutzereingabe 899X.
  • 8AC veranschaulicht eine Benutzereingabe 899Y, die auf die Darstellung des CGR-Becher-Objekts 806C gerichtet ist. In verschiedenen Ausführungsformen entspricht die Benutzereingabe 899Y zwei Kontakten, die sich um ein gemeinsames Zentrum (z. B. eine Rotationsgeste) bewegen, das am Ort der Darstellung des CGR-Becher-Objekts 806C erfasst wird.
  • 8AD veranschaulicht die CGR-Datei, die als Reaktion auf das Erfassen der Benutzereingabe 899Y, die auf die Darstellung des CGR-Becher-Objekts 806C gerichtet ist, die Benutzerschnittstelle 801 bildet. In 8AD wird die Ausrichtung des CGR-Becher-Objekts geändert, wie durch die geänderte Ausrichtung der Darstellung des CGR-Becher-Objekts 806C (und in ähnlicher Weise die Änderung der zweiten CGR-Szenen-Affordance 803BB) angezeigt. In verschiedenen Ausführungsformen wird das CGR-Becher-Objekt (und seine entsprechende Darstellung 806C) um eine z-Achse gedreht, die senkrecht zur horizontalen Ebene ist und durch einen räumlichen Manipulationspunkt (z. B. eine Kante, einen Mittelpunkt, einen Massenschwerpunkt, einen intuitiven räumlichen Manipulationspunkt oder einen benutzerdefinierten räumlichen Manipulationspunkt) des CGR-Becher-Objekts verläuft.
  • In verschiedenen Ausführungsformen führt eine Drehung um eine Achse, die durch einen Mittelpunkt oder einen ungewichteten Massenschwerpunkt eines CGR-Objekts verläuft (oder Einschnappen eines Mittelpunkts oder ungewichteten Massenschwerpunkts des CGR-Objekts in einen Zielpunkt, z. B. Behandeln eines Abstands zwischen dem Mittelpunkt oder ungewichteten Massenschwerpunkt des CGR-Objekts und dem Zielpunkt als Null, wenn der Abstand kleiner als ein Schwellenbetrag ist) zu einer nicht-intuitiven räumlichen Manipulation des CGR-Objekts. 8AE1 veranschaulicht eine Seitenansicht eines CGR-Becher-Objekts 880. 8AE2 veranschaulicht eine Draufsicht auf das CGR-Becher-Objekt 880. Das CGR-Becher-Objekt 880 schließt einen Körper 881A einen Fuß 881B und einen Griff 881C ein. 8AE1 veranschaulicht eine Seitenansicht eines Begrenzungskastens 882, der das CGR-Becher-Objekt 880 umgibt. 8AE2 veranschaulicht eine Draufsicht des Begrenzungskastens 882, der das CGR-Becher-Objekt 880 umgibt.
  • Die 8AE1 und 8AE2 veranschaulichen einen ersten räumlichen Manipulationspunkt 883, der ein Mittelpunkt des Begrenzungskastens 882 ist. Somit halbieren die senkrechten Linien, die durch den ersten räumlichen Manipulationspunkt 883 verlaufen, die Kanten des Begrenzungskastens 882. Unter verschiedenen Umständen kann das Durchführen einer räumlichen Manipulation des CGR-Becher-Objekts 880 unter Verwendung des ersten räumlichen Manipulationspunkts 883 jedoch zu nicht-intuitiven Ergebnissen führen, insbesondere weil der erste räumliche Manipulationspunkt 883 im Vergleich zur Mitte des Körpers 881A außermittig ist (weil das CGR-Becher-Objekt 880 den Griff 881C einschließt). Beispielsweise würde das Drehen des CGR-Becher-Objekts 880 um eine z-Achse, die durch den ersten räumlichen Manipulationspunkt 883 verläuft, das CGR-Becher-Objekt 880 scheinbar auch bewegen. Als weiteres Beispiel würde ein Einschnappen des CGR-Becher-Objekts 880 durch Ausrichten des ersten räumlichen Manipulationspunkts 883 auf die Mitte eines CGR-Platten-Objekts (oder eines Gitterpunkts) bewirken, dass das CGR-Becher-Objekt 880 in Bezug auf das CGR-Platten-Objekt (oder den Gitterpunkt) versetzt erscheint.
  • In ähnlicher Weise ist ein zweiter räumlicher Manipulationspunkt 884 im Massenschwerpunkt des CGR-Objekts 880 nicht intuitiv vom Zentrum des Körpers 881A versetzt, was zu ähnlichen nicht intuitiven Ergebnissen führt, wenn das CGR-Becher-Objekt gedreht oder bewegt wird, wenn der zweite räumliche Manipulationspunkt 884 verwendet wird.
  • Dementsprechend wird in verschiedenen Ausführungsformen ein intuitiver räumlicher Manipulationspunkt 885 verwendet, wenn eine räumliche Manipulation des CGR-Becher-Objekts 880 durchgeführt wird. In verschiedenen Ausführungsformen wird der intuitive räumliche Manipulationspunkt 885 mit der CGR-Objektdatei gespeichert, die das CGR-Becher-Objekt definiert. Der intuitive räumliche Manipulationspunkt 885 kann zum Beispiel von einem Designer der CGR-Objektdatei definiert werden. In verschiedenen Ausführungsformen wird der intuitive räumliche Manipulationspunkt 885 durch einen Benutzer der CGR-Datei festgelegt, welche die Benutzerschnittstelle 801 bildet.
  • In verschiedenen Ausführungsformen wird der intuitive räumliche Manipulationspunkt 885 durch die Vorrichtung 100 bestimmt. Beispielsweise bestimmt die Vorrichtung 100 in verschiedenen Ausführungsformen eine Vielzahl von Segmenten des CGR-Becher-Objekts 880 (z. B. des Körpers 881A, des Fußes 881B und des Griffs 881C) und bestimmt den intuitiven räumlichen Manipulationspunkt 885 als Massenschwerpunkt des CGR-Becher-Objekts mit unterschiedlichen Segmenten, die unterschiedlich gewichtet sind (z. B. Zuweisen von mehr Gewicht dem Körper 881A als dem Griff 881C). In verschiedenen Ausführungsformen ist das einem oder mehreren der Segmente zugewiesene Gewicht Null, z. B. die Segmente werden bei der Bestimmung des intuitiven räumlichen Manipulationspunkts 885 ignoriert.
  • Zurückkehrend zu 8AD veranschaulicht 8AD eine Benutzereingabe 899Z, die auf die Darstellung des CGR-Becher-Objekts 806C gerichtet ist. In verschiedenen Ausführungsformen entspricht die Benutzereingabe 899Z einem beweglichen Kontakt (z. B. einem Ziehen oder Berühren und Ziehen), der mit einer Startposition an der Position der Darstellung des CGR-Becher-Objekts 806C erfasst wird.
  • 8AF veranschaulicht die CGR-Datei, die als Reaktion auf das Erfassen der Benutzereingabe 899Z, die auf die Darstellung des CGR-Becher-Objekts 806C gerichtet ist, die Benutzerschnittstelle 801 bildet. In 8AF wird die Position des CGR-Becher-Objekts geändert, wie durch die geänderte Position der Darstellung des CGR-Becher-Objekts 806C (und in ähnlicher Weise die Änderung der zweiten CGR-Szenen-Affordance 803BB) angezeigt. In verschiedenen Ausführungsformen wird das CGR-Becher-Objekt (und seine entsprechende Darstellung 806C) in einer xy-Ebene parallel zur horizontalen Ebene bewegt. In verschiedenen Ausführungsformen ist die Ortsänderung des CGR-Becher-Objekts proportional zu einer Bewegungsstrecke der Kontakte der Benutzereingabe 899Z.
  • Basierend auf der Änderung der Position des CGR-Becher-Objekts (wie durch die Position der Darstellung des CGR-Becher-Objekts 806C und die Position des CGR-Platten-Objekts dargestellt (wie durch die Position der Darstellung des CGR-Platten-Objekts 806B dargestellt) überlappen sich das CGR-Becher-Objekt und das CGR-Platten-Objekt.
  • In verschiedenen Ausführungsformen bestimmt die Vorrichtung 100, ob sich zwei oder mehr CGR-Objekte an einer Überlappungsstelle in einer CGR-Szene überlappen. In verschiedenen Ausführungsformen führt die Vorrichtung 100 die Bestimmung periodisch durch. In verschiedenen Ausführungsformen führt die Vorrichtung 100 die Bestimmung immer dann durch, wenn ein Objekt räumlich manipuliert wird (z. B. gedreht, bewegt oder bemessen). In verschiedenen Ausführungsformen führt die Vorrichtung 100 die Bestimmung als Reaktion auf eine Benutzereingabe durch, die eine Überlappungsprüfung anfordert.
  • In verschiedenen Ausführungsformen wird als Reaktion auf das Bestimmen, dass sich zwei oder mehr CGR-Objekte an einer Überlappungsstelle in einer CGR-Szene überlappen, eine Überlappungsangabe dargestellt. In verschiedenen Ausführungsformen wird die Überlappungsangabe in Verbindung mit mindestens einem der zwei oder mehr CGR-Objekten angezeigt. In verschiedenen Ausführungsformen wird die Überlappungsangabe in Verbindung mit der Überlappungsstelle angezeigt.
  • 8AF veranschaulicht einen ersten Überlappungsindikator 809A in Form einer Benachrichtigungsblase, die mit der Darstellung des CGR-Becher-Objekts 806C gekoppelt ist, und einen zweiten Überlappungsindikator 809B in Form einer Schattierung, eines Glühens, einer Schraffur oder einer anderen Hervorhebung, die über der Darstellung des CGR-Becher-Objekts 806C und der Darstellung des CGR-Platten-Objekts 806B gelegt ist.
  • 8AF veranschaulicht eine Benutzereingabe 899AA, die an den ersten Überlappungsindikator 809A gerichtet ist. In verschiedenen Ausführungsformen entspricht die Benutzereingabe 899AA einem Kontakt (z. B. einem Tippen), der an dem Ort des ersten Überlappungsindikators 809A erfasst wird.
  • 8AG veranschaulicht die CGR-Datei, die als Reaktion auf das Erfassen der Benutzereingabe 899AA, die an den ersten Überlappungsindikator 809A gerichtet ist, die Benutzerschnittstelle 801 bildet. In 8AG schließt die CGR-Datei, welche die Benutzerschnittstelle 801 bildet, eine Überlappungsbenachrichtigungs-Benutzerschnittstelle 810 in Form eines Popup-Fensters ein.
  • Die Überlappungsbenachrichtigungs-Benutzerschnittstelle 810 schließt eine Überlappungstextbeschreibung 810A ein, welche die erfasste Überlappung von CGR-Objekten beschreibt, und eine grafische Überlappungsansicht 810B, die das überlappende CGR-Objekt veranschaulicht.
  • Die Überlappungsbenachrichtigungs-Benutzerschnittstelle 810 schließt eine Abbruch-Affordance 810C zum Verwerfen (Beenden der Anzeige) der Überlappungsbenachrichtigungs-Benutzerschnittstelle 810 ein, wodurch die CGR-Datei, welche die Benutzerschnittstelle 801 bildet, in den in 8AG veranschaulichten Zustand zurückgebracht wird.
  • Die Überlappungsbenachrichtigungs-Benutzerschnittstelle 810 schließt eine Ignorier-Affordance 810D zum Verwerfen der Überlappungsbenachrichtigungs-Benutzerschnittstelle 810 und der entsprechenden Überlappungsindikatoren (ohne irgendeines der überlappenden CGR-Objekte zu bewegen) ein, wobei die CGR-Datei, welche die Benutzerschnittstelle 801 bildet, in den in 8AG veranschaulichten Zustand ohne den ersten Überlappungsindikator 809A und den zweiten Überlappungsindikator 809B zurückgebracht wird.
  • Die Überlappungsbenachrichtigungs-Benutzerschnittstelle 810 schließt eine Behebungs-Affordance 810E zum automatischen Ändern einer Position von mindestens einem der CGR-Objekte ein, so dass die sich überlappenden CGR-Objekte sich nicht mehr überlappen.
  • In verschiedenen Ausführungsformen wird das CGR-Objekt der zwei weiteren überlappenden CGR-Objekte, das zuletzt räumlich manipuliert wurde, zur Bewegung ausgewählt. In verschiedenen Ausführungsformen wird das ausgewählte CGR-Objekt in einer solchen Richtung bewegt, dass eine minimale Bewegung durchgeführt wird, um die Überlappung zu beheben.
  • 8AG veranschaulicht eine Benutzereingabe 899AB, die auf die Behebungs-Affordance 810E gerichtet ist. In verschiedenen Ausführungsformen entspricht die Benutzereingabe 899AB einem Kontakt (z. B. einem Tippen), der am Ort der Behebungs-Affordance 810E erfasst wird.
  • 8AH veranschaulicht die CGR-Datei, die als Reaktion auf das Erfassen der Benutzereingabe 899AB, die auf die Behebungs-Affordance 810E gerichtet ist, die Benutzerschnittstelle 801 bildet. In 8AH wird die Überlappungsbenachrichtigungs-Benutzerschnittstelle 810 verworfen und das CGR-Becher-Objekt wurde (nach oben) bewegt, um sich nicht mehr mit dem CGR-Platten-Objekt zu überlappen, wie durch die Bewegung der Darstellung des CGR-Becher-Objekts 806C (und die entsprechende Änderung der zweiten CGR-Szenen-Affordance 803BB) angezeigt.
  • 8AH veranschaulicht eine Benutzereingabe 899AC, die auf die Darstellung des CGR-Becher-Objekts 806C gerichtet ist. In verschiedenen Ausführungsformen entspricht die Benutzereingabe 899AC einem Kontakt (z. B. einem Tippen), der an dem Ort der Darstellung des CGR-Becher-Objekts 806C erfasst wird. In verschiedenen Ausführungsformen entspricht die Benutzereingabe 899AC einem Kontakt (z. B. einem Tippen), der an dem Ort des ersten Typs des Objektauswahlindikators 807 erfasst wird, der die Darstellung des CGR-Becher-Objekts 806C umgibt.
  • 8AI veranschaulicht die CGR-Datei, die als Reaktion auf das Erfassen der Benutzereingabe 899AC, die auf die Darstellung des CGR-Becher-Objekts 806C gerichtet ist, die Benutzerschnittstelle 801 bildet. In 8AI wird der erste Typ des Objektauswahlindikators 807 durch einen zweiten Typ des Objektauswahlindikators 817 ersetzt, der die Darstellung des CGR-Becher-Objekts 806C umgibt.
  • Während also ein CGR-Objekt ausgewählt wird (und der erste Typ des Objektauswahlindikators 807 angezeigt wird), führen unterschiedliche Typen von Benutzereingaben, die auf die Darstellung des CGR-Objekts gerichtet sind, zu unterschiedlichen Änderungen an räumlichen Eigenschaften des CGR-Objekts. Beispielsweise ändert in den 8AB und 8AC die Benutzereingabe 899X eines ersten Typs (z. B. ein Zusammendrücken), die auf die Darstellung des CGR-Becher-Objekts 806C gerichtet ist, eine Größe des CGR-Becher-Objekts. Als ein weiteres Beispiel ändert in den 8AC und 8AD die Benutzereingabe 899Y eines zweiten Typs (z. B. eine Rotation), die auf die Darstellung des CGR-Becher-Objekts 806C gerichtet ist, eine Ausrichtung um eine z-Achse des CGR-Becher-Objekts. Als weiteres Beispiel ändert in den 8AD und 8AF die Benutzereingabe 899Z eines dritten Typs (z. B. ein Ziehen), die auf die Darstellung des CGR-Becher-Objekts 806C gerichtet ist, eine Position in einer xy-Ebene des CGR-Becher-Objekts. Als weiteres Beispiel ändert in den 8AH und 8AI eine Benutzereingabe 899AB eines vierten Typs (z. B. ein Tippen), die auf die Darstellung des CGR-Becher-Objekts 806C gerichtet ist, den ersten Typ des Objektauswahlindikators 807 in einen zweiten Typ des Objektauswahlindikators 817, was verschiedene zusätzliche räumliche Manipulationen ermöglicht, wie nachstehend beschrieben.
  • Kongruente (oder isometrische) räumliche Manipulationen eines CGR-Objekts sind räumliche Manipulationen, bei denen die Größe und Form des CGR-Objekts nicht verändert wird. Kongruente räumliche Manipulationen schließen Translation, Rotation und Reflexion ein. Ähnliche (oder formerhaltende) räumliche Manipulationen eines CGR-Objekts sind räumliche Manipulationen, bei denen die Form des CGR-Objekts nicht verändert wird. Ähnliche räumliche Manipulationen schließen Skalieren, Translation, Rotation und Reflexion ein.
  • Während, wie oben beschrieben, ein CGR-Objekt ausgewählt wird (und der erste Typ des Objektauswahlindikators 807 angezeigt wird), führen verschiedene Benutzereingaben einen ersten Satz ähnlicher räumlicher Manipulationen durch. Beispielsweise schließt in verschiedenen Ausführungsformen der erste Satz ähnlicher räumlicher Manipulationen Skalieren (wie in den 8AB und 8AC gezeigt), Rotation um eine erste Achse (wie in den 8AC und 8AD gezeigt) und zweidimensionale Translation innerhalb einer ersten Ebene (wie in den 8AD und 8AF gezeigt) ein.
  • Wie nachstehend beschrieben, führen, während ein CGR-Objekt ausgewählt wird (und der zweite Typ des Objektauswahlindikators 817 angezeigt wird), verschiedene Benutzereingaben einen zweiten Satz ähnlicher räumlicher Manipulationen durch, der sich von dem ersten Satz ähnlicher räumlicher Manipulationen unterscheidet. In verschiedenen Ausführungsformen schließt der zweite Satz ähnlicher räumlicher Manipulationen eine oder mehrere oder alle des ersten Satzes ähnlicher räumlicher Manipulationen ein. Beispielsweise schließt in verschiedenen Ausführungsformen der zweite Satz ähnlicher räumlicher Manipulationen eine Drehung um die erste Achse, eine Drehung um eine zweite Achse, eine Drehung um eine dritte Achse und eine dreidimensionale Translation ein.
  • Der zweite Typ des Objektauswahlindikators 817 schließt eine erste Translation-Affordance 817A zum Bewegen des aktuell ausgewählten CGR-Objekts entlang einer ersten Achse (z. B. der z-Achse, Bewegen des aktuell ausgewählten CGR-Objekts auf und ab), eine zweite Translation-Affordance 817B zum Bewegen des aktuell ausgewählten CGR-Objekts entlang einer zweiten Achse (z. B. innerhalb der xy-Ebene) und eine dritte Translation-Affordance 817C zum Bewegen des aktuell ausgewählten CGR-Objekts entlang einer dritten Achse (z. B. senkrecht zu der zweiten Achse innerhalb der xy-Ebene) ein. Der zweite Typ des Objektauswahlindikators 817 schließt eine erste Rotations-Affordance 817D zum Drehen des aktuell ausgewählten CGR-Objekts um die erste Achse, eine zweite Rotations-Affordance 817E zum Drehen des aktuell ausgewählten CGR-Objekts um die zweite Achse und eine dritte Rotations-Affordance 817F zum Drehen des aktuell ausgewählten CGR-Objekts um die dritte Achse ein.
  • 8AI veranschaulicht eine Benutzereingabe 899AD, die auf die dritte Rotations-Affordance 817F gerichtet ist. In verschiedenen Ausführungsformen entspricht die Benutzereingabe 899AD einem beweglichen Kontakt (z. B. einem Ziehen oder Berühren und Ziehen), der mit einer Startposition an der Position der dritten Rotations-Affordance 817F erfasst wird.
  • 8AJ veranschaulicht die CGR-Datei, die als Reaktion auf das Erfassen der Benutzereingabe 899AD, die an den dritten Rotations-Affordance 817F gerichtet ist, die Benutzerschnittstelle 801 bildet. In 8AI wird das CGR-Becher-Objekt um die dritte Achse gedreht, wie durch die Drehung der Darstellung des CGR-Becher-Objekts 806C (und die entsprechende Änderung der zweiten CGR-Szenen-Affordance 803BB) angezeigt.
  • 8AJ veranschaulicht eine Benutzereingabe 899AE, die auf die erste Translation-Affordance 817A gerichtet ist. In verschiedenen Ausführungsformen entspricht die Benutzereingabe 899AE einem beweglichen Kontakt (z. B. einem Ziehen oder Berühren und Ziehen), der mit einer Startposition an der Position der ersten Translation-Affordance 817A erfasst wird.
  • 8AK veranschaulicht die CGR-Datei, die als Reaktion auf das Erfassen der Benutzereingabe 899AE, die auf die erste Translation-Affordance 817F gerichtet ist, die Benutzerschnittstelle 801 bildet. In 8AJ wird das CGR-Becher-Objekt entlang der ersten Achse nach unten bewegt, wie durch die Bewegung der Darstellung des CGR-Becher-Objekts 806C (und die entsprechende Änderung des zweiten CGR-Szenen-Affordance 803BB) angegeben.
  • 8AK veranschaulicht eine Benutzereingabe 899AF, die auf einen Ort im Ansichtsbereich 803E gerichtet ist, der von jeder Darstellung eines CGR-Objekts entfernt ist. In verschiedenen Ausführungsformen entspricht die Benutzereingabe 899AF einem Kontakt (z. B. einem Tippen), der an einem Ort im Ansichtsbereich 803E entfernt von jeder Darstellung eines CGR-Objekts erfasst wird.
  • 8AL veranschaulicht die CGR-Datei, die als Reaktion auf das Erfassen der Benutzereingabe 899AF, die auf den Ort im Ansichtsbereich 803E gerichtet ist, die Benutzerschnittstelle 801 bildet. In 8AL wird kein CGR-Objekt ausgewählt, wie durch das Fehlen einer Objektauswahl angegeben (z. B. der erste Typ des Objektauswahlindikators 807 oder der zweite Typ des Objektauswahlindikators 817). Wenn kein CGR-Objekt ausgewählt ist, wird die Szeneneinstellungs-Affordance 803AH ausgewählt (wie durch die andere Anzeige des Szeneneinstellungs-Affordance 803AH im Vergleich zu den anderen Einstellungs-Affordances 803AG, 803A1 und 803AJ angezeigt), und der Einstellungsbereich 803D schließt die Vielzahl von Szeneneinstellungs-Manipulations-Affordances ein, die über zusammenklappbare/erweiterbare Szeneneinstellungsmenüs 803DA-803DE dargestellt werden.
  • 8AL veranschaulicht eine Benutzereingabe 899AG, die auf einen Ort im Ansichtsbereich 803E gerichtet ist. In verschiedenen Ausführungsformen entspricht die Benutzereingabe 899AG zwei Kontakten, die sich näher zueinander oder weiter voneinander weg bewegen (z. B. einer Zusammendrück- oder Auseinanderdrückgeste), die an einem Ort im Ansichtsbereich 803E erfasst werden. In verschiedenen Ausführungsformen ist der Ort im Ansichtsbereich 803E von jeder Darstellung eines CGR-Objekts entfernt (während ein CGR-Objekt ausgewählt ist oder kein CGR-Objekt ausgewählt ist). In verschiedenen Ausführungsformen befindet sich der Ort am Ort einer Darstellung eines CGR-Objekts, das nicht ausgewählt ist.
  • 8AM veranschaulicht die CGR-Datei, die als Reaktion auf das Erfassen der Benutzereingabe 899AG, die auf den Ort im Ansichtsbereich 803E gerichtet ist, die Benutzerschnittstelle 801 bildet. In 8AM wird die Perspektive einer virtuellen Kamera des Ansichtsbereichs 803E näher an die Ankerdarstellung 803EA bewegt und der Ansichtsbereich 803E eingezoomt, was zu einer Vergrößerung der Ankerdarstellung 803EA, der Darstellung des CGR-Platten-Objekts 806B und der Darstellung des CGR-Becher-Objekts 806C führt. Die Größe des CGR-Platten-Objekts und des CGR-Becher-Objekts (im Gegensatz zu ihren Darstellungen im Ansichtsbereich 803E) wird nicht geändert, wie durch fehlende Änderung der zweiten CGR-Szenen-Affordance 803BB angegeben wird.
  • 8AM veranschaulicht eine Benutzereingabe 899AH, die auf einen Ort im Ansichtsbereich 803E gerichtet ist. In verschiedenen Ausführungsformen entspricht die Benutzereingabe 899AH einem beweglichen Kontakt (z. B. einer Zieh- oder Berührungs- und Ziehgeste), der an einem Ort im Ansichtsbereich 803E erfasst wird. In verschiedenen Ausführungsformen ist der Ort im Ansichtsbereich 803E von jeder Darstellung eines CGR-Objekts entfernt (während ein CGR-Objekt ausgewählt ist oder kein CGR-Objekt ausgewählt ist). In verschiedenen Ausführungsformen befindet sich der Ort am Ort einer Darstellung eines CGR-Objekts, das nicht ausgewählt ist.
  • 8AN veranschaulicht die CGR-Datei, die als Reaktion auf das Erfassen der Benutzereingabe 899AH, die auf den Ort im Ansichtsbereich 803E gerichtet ist, die Benutzerschnittstelle 801 bildet. In 8AN wird die Perspektive einer virtuellen Kamera des Sichtbereichs 803E zu einer Seite (z. B. senkrecht zu einer Linie von der virtuellen Kamera zur Mitte der Ankerdarstellung 803EA) bewegt und der Sichtbereich 803E wird bewegt, was zu einer seitlichen Bewegung der Ankerdarstellung 803EA, der Darstellung des CGR-Platten-Objekts 806B und der Darstellung des CGR-Becher-Objekts 806C führt. Die Position des CGR-Platten-Objekts und des CGR-Becher-Objekts (im Gegensatz zu ihren Darstellungen im Ansichtsbereich 803E) wird nicht geändert, wie durch eine fehlende Änderung der zweiten CGR-Szenen-Affordance 803BB angezeigt wird.
  • 8AN veranschaulicht eine Benutzereingabe 899AI, die an einen Ort im Ansichtsbereich 803E gerichtet ist. In verschiedenen Ausführungsformen entspricht die Benutzereingabe 899AI zwei Kontakten, die sich um ein gemeinsames Zentrum (z. B. eine Rotationsgeste) bewegen, das an einem Ort im Ansichtsbereich 803E erfasst wird. In verschiedenen Ausführungsformen ist der Ort im Ansichtsbereich 803E von jeder Darstellung eines CGR-Objekts entfernt (während ein CGR-Objekt ausgewählt ist oder kein CGR-Objekt ausgewählt ist). In verschiedenen Ausführungsformen befindet sich der Ort am Ort einer Darstellung eines CGR-Objekts, das nicht ausgewählt ist.
  • 8AO veranschaulicht die CGR-Datei, die als Reaktion auf das Erfassen der Benutzereingabe 899AI, die auf den Ort im Ansichtsbereich 803E gerichtet ist, die Benutzerschnittstelle 801 bildet. In 8AO wird die Perspektive einer virtuellen Kamera des Ansichtsbereichs 803E um die Mitte der Ankerdarstellung 803EA gedreht und der Ansichtsbereich 803E gedreht, was zu einer Drehung der Ankerdarstellung 803EA, der Darstellung des CGR-Platten-Objekts 806B und der Darstellung des CGR-Becher-Objekts 806C führt. Die Position und Ausrichtung des CGR-Platten-Objekts und des CGR-Becher-Objekts (im Gegensatz zu ihren Darstellungen im Ansichtsbereich 803E) wird nicht geändert, wie durch fehlende Änderung der zweiten CGR-Szenen-Affordance 803BB angegeben wird.
  • 8AO veranschaulicht eine Benutzereingabe 899AJ, die auf die CGR-Ansichts-Affordance 803AF gerichtet ist. In verschiedenen Ausführungsformen entspricht die Benutzereingabe 899AJ einem Kontakt (z. B. einem Tippen), der am Ort der CGR-Ansichts-Affordance 803AF erfasst wird.
  • 8AP veranschaulicht die CGR-Datei, die als Reaktion auf das Erfassen der Benutzereingabe 899AJ, die auf den Ort in der CGR-Ansichts-Affordance 803AF gerichtet ist, die Benutzerschnittstelle 801 bildet. In 8AP wird die CGR-Ansichts-Affordance 803AF ausgewählt und die Objektansichts-Affordance 803AE abgewählt (wie durch ihre unterschiedlichen Anzeigestile angegeben). In 8AP schließt der Ansichtsbereich 803A eine Darstellung der zweiten CGR-Szene (einschließlich der Ankerdarstellung 803EA, der Darstellung des CGR-Platten-Objekts 806B und der Darstellung des CGR-Becher-Objekts 806C) ein, die über einem von der Vorrichtung 100 aufgenommenen Szenenkamerabild angezeigt wird.
  • 8AQ veranschaulicht die CGR-Datei, die als Reaktion auf eine Bewegung der Vorrichtung 100 nach rechts, die Benutzerschnittstelle 801 bildet. In 8AQ ändert sich die Perspektive des Szenenkamerabildes und entsprechend ändert sich ähnlich die Perspektive einer virtuellen Kamera, die zum Rendern der Darstellung der zweiten CGR-Szene verwendet wird (einschließlich der Ankerdarstellung 803EA, der Darstellung des CGR-Platten-Objekts 806B und der Darstellung des CGR-Becher-Objekts 806C). Somit wird die Darstellung der zweiten CGR-Szene (zusätzlich zu anderen perspektivischen Effekten) innerhalb des Ansichtsbereichs 803A nach links verschoben.
  • 8AR veranschaulicht die CGR-Datei, die als Reaktion auf eine Bewegung der Vorrichtung nach hinten (z. B. weg von der Tabelle der physischen Umgebung) die Benutzerschnittstelle 801 bildet. In 8AR ändert sich die Perspektive der Szenenkamera und entsprechend wird die Perspektive einer virtuellen Kamera, die verwendet wird, um die Darstellung der zweiten CGR-Szene (einschließlich der Ankerdarstellung 803EA, der Darstellung des CGR-Platten-Objekts 806B und der Darstellung des CGR-Becher-Objekts 806C) rendern, ähnlich geändert. Somit wird die Darstellung der zweiten CGR-Szene in der Größe (zusätzlich zu anderen perspektivischen Effekten) innerhalb des Ansichtsbereichs 803A verringert.
  • 8AR veranschaulicht eine Benutzereingabe 899AK, die auf die Objektansichts-Affordance 803AE gerichtet ist. In verschiedenen Ausführungsformen entspricht die Benutzereingabe 899AK einem Kontakt (z. B. einem Tippen), der am Ort der Objektansichts-Affordance 803AE erfasst wird.
  • 8AS veranschaulicht die CGR-Datei, die als Reaktion auf das Erfassen der Benutzereingabe 899AK, die auf den Ort in der Objektansichts-Affordance 803AE gerichtet ist, die Benutzerschnittstelle 801 bildet. In 8AS wird der Objektansichts-Affordance 803AE ausgewählt und der CGR-Ansichts-Affordance 803AF abgewählt (wie durch ihre unterschiedlichen Anzeigestile angegeben). In 8AS wird das Szenenkamerabild nicht mehr hinter der Darstellung der zweiten CGR-Szene angezeigt.
  • 8AS veranschaulicht eine Benutzereingabe 899AL, die auf die Darstellung des CGR-Becher-Objekts 806C gerichtet ist. In verschiedenen Ausführungsformen entspricht die Benutzereingabe 899AL einem Kontakt (z. B. einem Tippen), der am Ort des CGR-Becher-Objekts 806C erfasst wird.
  • 8AT veranschaulicht die CGR-Datei, die als Reaktion auf das Erfassen der Benutzereingabe 899AL, die auf die Darstellung des CGR-Becher-Objekts 806C gerichtet ist, die Benutzerschnittstelle 801 bildet. In 8AT schließt der Ansichtsbereich 803E den ersten Typ des Objektauswahlindikators 807 ein, der die Darstellung des CGR-Becher-Objekts 806C umgibt. Der erste Typ des Objektauswahlindikators 807, der um die Darstellung des CGR-Becher-Objekts 806C herum angezeigt wird, zeigt an, dass das CGR-Becher-Objekt ausgewählt ist.
  • In 8AT schließt der Einstellungsbereich 803D, wenn die Objekteinstellungs-Affordance 803AI ausgewählt wird (wie durch die andere Anzeige der Objekteinstellungs-Affordance 803AI im Vergleich zu den anderen Einstellungs-Affordances 803AG, 803AH und 803AJ angegeben), eine Vielzahl von Objekteinstellungsmanipulations-Affordances ein, die über zusammenklappbare/erweiterbare Objekteinstellungsmenüs 813DA-813DD dargestellt werden (von denen der Objektnamenmanipulations-Affordance 813DAA, der Konfigurator-Affordance 813DBA, der Stil-Affordance 813DBB und der Muster-Affordance 813DBC in 8AT gezeigt sind). Wie der erste Typ des Objektauswahlindikators 807, der die Darstellung des CGR-Becher-Objekts 806C umgebend angezeigt wird, zeigt die Objektnamenmanipulations-Affordance 813DAA, die den Namen des CGR-Becher-Objekts (z. B. „Becher01“) anzeigt, dass das CGR-Becher-Objekt ausgewählt ist.
  • 8AT veranschaulicht eine Benutzereingabe 899AM, die auf die Muster-Affordance 813DBC gerichtet ist. In verschiedenen Ausführungsformen entspricht die Benutzereingabe 899AM einem Kontakt (z. B. einem Tippen), der am Ort der Darstellung der Muster-Affordance 813DBC erfasst wird.
  • 8AU veranschaulicht die CGR-Datei, die als Reaktion auf das Erfassen der Benutzereingabe 899AM, die auf die Muster-Affordance 813DBC gerichtet ist, die Benutzerschnittstelle 801 bildet. In 8AU schließt die CGR-Datei, welche die Benutzerschnittstelle 801 bildet, eine Live-Ansicht-Benutzerschnittstelle 811 in Form eines Popup-Fensters ein.
  • Die Live-Ansicht-Benutzerschnittstelle 811 schließt eine Vielzahl von Ansichtsfenstern 811DA-811DC ein, die jeweils eine Vielzahl von Darstellungen des aktuell ausgewählten CGR-Objekts 811EA-811EC mit jeweils einem anderen Muster einschließen. Insbesondere schließt die Live-Ansicht-Benutzerschnittstelle 811 ein erstes Ansichtsfenster 811DA ein, das eine Darstellung des CGR-Becher-Objekts mit einem Weiß-Muster 811EA einschließt, ein zweites Ansichtsfenster 811DB, das eine Darstellung des CGR-Becher-Objekts mit einem Sternmuster 811EB einschließt, und ein drittes Ansichtsfenster 811DC, das eine Darstellung des CGR-Becher-Objekts mit einem Efeumuster 811EC einschließt. In 8AU wird das zweite Ansichtsfenster 811DB auf eine andere Weise (z. B. mit einem dickeren Rand) als die anderen Ansichtsfenster 811DA und 811DC angezeigt, was angibt, dass das Sternmuster das aktuell ausgewählte Muster ist.
  • Die Live-Ansicht-Benutzerschnittstelle 811 schließt eine Textbeschreibung 811C des aktuell ausgewählten CGR-Objekts (z. B. „Becher01“) und die CGR-Objekteinstellung ein, die über die Live-Ansicht-Benutzerschnittstelle 811 (z. B. das Muster) manipuliert wird.
  • Die Live-Ansicht-Benutzerschnittstelle 811 schließt eine Vielzahl von Ansichts-Affordances 811A-811B ein, einschließlich einer Objektansichts-Affordance 811A zum Ansehen der Vielzahl von Darstellungen des aktuell ausgewählten CGR-Objekts 811EA-811EC in ihren jeweiligen Ansichtsfenstern 811DA-811DC in einem Szenenmodus (in dem die Benutzereingaben, die auf eines der Vielzahl von Ansichtsfenstern 811DA-811DC gerichtet sind, die Perspektive der Ansicht aller der Vielzahl von Darstellungen des aktuell ausgewählten CGR-Objekts 811EA-811EC ändert) und einer CGR-Ansichts-Affordance 811B zum Ansehen der Vielzahl von Darstellungen des aktuell ausgewählten CGR-Objekts 811EA-811EC in ihren jeweiligen Fenstern 811DA-811DC in einem CGR-Modus (in dem die Bewegung der Vorrichtung 100 die Perspektive der Ansicht aller der Vielzahl von Darstellungen des aktuell ausgewählten CGR-Objekts 811EA-811EC ändert).
  • Die Live-Ansicht-Benutzerschnittstelle 811 schließt eine OK-Affordance 811F zum Ändern des Musters des aktuell ausgewählten CGR-Objekts in den aktuell ausgewählten Stil und zum Verwerfen (Beenden der Anzeige) der Live-Ansicht-Schnittstelle 811 ein. Die Live-Ansicht-Benutzerschnittstelle 811 schließt eine Abbruch-Affordance 811G zum Verwerfen (Beenden der Anzeige) der Live-Ansicht-Benutzerschnittstelle 811 ein, wodurch die CGR-Datei, welche die Benutzerschnittstelle 801 bildet, in den in 8AT veranschaulichten Zustand zurückgebracht wird, ohne das Muster des aktuell ausgewählten CGR-Objekts zu ändern.
  • 8AU veranschaulicht eine Benutzereingabe 899AN, die auf das erste Ansichtsfenster 811DA gerichtet ist. In verschiedenen Ausführungsformen entspricht die Benutzereingabe 899AN zwei Kontakten, die sich um ein gemeinsames Zentrum (z. B. eine Rotationsgeste) bewegen, das am Ort des ersten Ansichtsfensters 811DA erfasst wird.
  • 8AV veranschaulicht die CGR-Datei, die als Reaktion auf das Erfassen der Benutzereingabe 899AN, die an das erste Ansichtsfenster 811DA gerichtet ist, die Benutzerschnittstelle 801 bildet. In 8AV hat sich die Perspektive einer virtuellen Kamera zum Rendern jeder der Vielzahl von Darstellungen des aktuell ausgewählten CGR-Objekts 811EA-811EC in ihren jeweiligen Ansichtsfenstern 811DA-811DC geändert, gedreht um eine z-Achse. Dementsprechend sind die Unterschiede in den jeweiligen Mustern leicht zu sehen und zu erkennen.
  • 8AV veranschaulicht eine Benutzereingabe 899AO, die an das erste Ansichtsfenster 811DA gerichtet ist. In verschiedenen Ausführungsformen entspricht die Benutzereingabe 899AO zwei Kontakten, die sich näher zueinander oder weiter voneinander weg bewegen (z. B. eine Zusammendrück- oder Auseinanderdrückgeste), die an der Position des ersten Ansichtsfensters 811DA erfasst wird.
  • 8AW veranschaulicht die CGR-Datei, die als Reaktion auf das Erfassen der Benutzereingabe 899AO, die auf das erste Ansichtsfenster 811DA gerichtet ist, die Benutzerschnittstelle 801 bildet. In 8AW hat sich die Perspektive einer virtuellen Kamera zum Rendern jeder der Vielzahl von Darstellungen des aktuell ausgewählten CGR-Objekts 811EA-811EC in ihren jeweiligen Ansichtsfenstern 811DA-811DC geändert, näher an die Darstellungen bewegt, eingezoomt und ihre Größe vergrößert.
  • 8AW veranschaulicht eine Benutzereingabe 899AP, die auf das dritte Ansichtsfenster 811DC gerichtet ist. In verschiedenen Ausführungsformen entspricht die Benutzereingabe 899AP einem Kontakt (z. B. einem Tippen), der am Ort des dritten Ansichtsfensters 811DC erfasst wird.
  • 8AX veranschaulicht die CGR-Datei, die als Reaktion auf das Erfassen der Benutzereingabe 899AP, die auf das dritte Ansichtsfenster 811DC gerichtet ist, die Benutzerschnittstelle 801 bildet. In 8AX wird das dritte Ansichtsfenster 811DC auf eine andere Weise (z. B. mit einem dickeren Rand) als die anderen Ansichtsfenster 811DA-811DB angezeigt, was anzeigt, dass das Efeumuster das aktuell ausgewählte Muster ist.
  • 8AX veranschaulicht eine Benutzereingabe 899AQ, die auf die OK-Affordance 811F gerichtet ist. In verschiedenen Ausführungsformen entspricht die Benutzereingabe 899AQ einem Kontakt (z. B. einem Tippen), der am Ort der OK-Affordance 811F erfasst wird.
  • 8AY veranschaulicht die CGR-Datei, die als Reaktion auf das Erfassen der Benutzereingabe 899AQ, die auf die OK-Affordance 811F gerichtet ist, die Benutzerschnittstelle 801 bildet. In 8AY wird die Live-Ansicht-Benutzerschnittstelle 811 verworfen und das Muster des aktuell ausgewählten CGR-Objekts in das Efeumuster geändert, wie durch die Änderung des Erscheinungsbilds der Darstellung des CGR-Becher-Objekts 806C (und, leichter in 8AY zu sehen, die entsprechende Änderung der zweiten CGR-Szenen-Affordance 803BB) und die Änderung der Muster-Affordance 813DBC angegeben.
  • 8AY veranschaulicht eine Benutzereingabe 899AR, die auf die CGR-Objekthinzufügungs-Affordance 803AB gerichtet ist. In verschiedenen Ausführungsformen entspricht die Benutzereingabe 899AR einem Kontakt (z. B. einem Tippen), der am Ort der CGR-Objekthinzufügungs-Affordance 803AB erfasst wird.
  • 8AZ veranschaulicht die CGR-Datei, die als Reaktion auf das Erfassen der Benutzereingabe 899AY, die auf die CGR-Objekthinzufügungs-Affordance 803AB gerichtet ist, die Benutzerschnittstelle 801 bildet. In 8AZ schließt die CGR-Datei, welche die Benutzerschnittstelle 801 bildet, die Medienbibliothek-Benutzerschnittstelle 804 in Form eines Popup-Fensters ein.
  • 8AZ veranschaulicht eine Benutzereingabe 899AS, die auf die Kugelhinzufügungs-Affordance 805C gerichtet ist. In verschiedenen Ausführungsformen entspricht die Benutzereingabe 899AC einem Kontakt (z. B. einem Tippen), der am Ort der Kugelhinzufügungs-Affordance 805C erfasst wird.
  • 8BA veranschaulicht die CGR-Datei, die als Reaktion auf das Erfassen der Benutzereingabe 899AS, die auf die Kugelhinzufügungs-Affordance 805B gerichtet ist, die Benutzerschnittstelle 801 bildet. In 8BA wird die Medienbibliothek-Benutzerschnittstelle 804 nicht mehr angezeigt, und der Ansichtsbereich 803E schließt eine Darstellung eines CGR-Kugel-Objekts 806D ein, das an einem bestimmten Ort über der Darstellung des Ankers 803EA angezeigt wird. In diesem Zusammenhang hat sich die zweite CGR-Szenen-Affordance 803BB geändert, um anzugeben, dass die zweite CGR-Szene ein CGR-Kugel-Objekt einschließt.
  • In 8BA schließt der Ansichtsbereich 803E ferner den ersten Typ des Objektauswahlindikators 807 ein, der die Darstellung des CGR-Kugel-Objekts 806D umgibt. Der erste Typ des Objektauswahlindikators 807, der die Darstellung des CGR-Kugel-Objekts 806D umgebend angezeigt wird, zeigt an, dass das CGR-Kugel-Objekt ausgewählt ist.
  • In 8BA wird der Einstellungsbereich 803D geändert, um Objekteinstellungsmanipulations-Affordances zum Ändern der Objekteinstellungen auf das aktuell ausgewählte CGR-Objekt anzuzeigen, wobei das CGR-Kugel-Objekt (einschließlich der Objektnamenmanipulations-Affordance 813DAA, die „Kugel01“ angibt, der Stil-Affordance 813DBB, die einen Kugelstil angibt, und der Muster-Affordance 8 ODBC, die ein Weiß-Muster angibt).
  • 8BA veranschaulicht eine Benutzereingabe 899AT, die auf die Stil-Affordance 813DBB gerichtet ist. In verschiedenen Ausführungsformen entspricht die Benutzereingabe 899AT einem Kontakt (z. B. einem Tippen), der am Ort der Stil-Affordance 813DBB erfasst wird.
  • 8BB veranschaulicht die CGR-Datei, die als Reaktion auf das Erfassen der Benutzereingabe 899AT, die auf die Stil-Affordance 813DBB gerichtet ist, die Benutzerschnittstelle 801 bildet. In 8BB schließt die CGR-Datei, welche die Benutzerschnittstelle 801 bildet, die Live-Ansicht-Benutzerschnittstelle 811 in Form eines Popup-Fensters ein.
  • In 8BB zeigt die Textbeschreibung 811C der Live-Ansicht-Benutzerschnittstelle 811 an, dass das aktuell ausgewählte CGR-Objekt „Kugel01“ ist und die CGR-Objekteinstellung, die über die Live-Ansicht-Benutzerschnittstelle 811 manipuliert wird, der Stil ist.
  • In 8BB schließt die Live-Ansicht-Benutzerschnittstelle 811 eine Vielzahl von Ansichtsfenstern 821DA-821DF ein, die jeweils eine Vielzahl von Darstellungen des aktuell ausgewählten CGR-Objekts 821EA-821EF mit jeweils einem anderen Stil einschließen. Insbesondere schließt die Live-Ansicht-Benutzerschnittstelle 811 ein erstes Ansichtsfenster 821DA, das eine Darstellung des CGR-Kugel-Objekts mit einem Kugelstil 821EA einschließt, ein zweites Ansichtsfenster 821DB, das eine Darstellung des CGR-Kugel-Objekts mit einem Golfballstil 821EB einschließt, ein drittes Ansichtsfenster 821DC, das eine Darstellung des CGR-Kugel-Objekts mit einem Baseballstil 821EC einschließt, ein viertes Ansichtsfenster 821DD, das eine Darstellung des CGR-Kugel-Objekts mit einem Basketballstil 821ED einschließt, ein fünftes Ansichtsfenster 821DE, das eine Darstellung des CGR-Kugel-Objekts mit einem Tennisballstil 821EE einschließt, und ein sechstes Ansichtsfenster 821DF, das eine Darstellung des CGR-Kugel-Objekts mit einem Bowlingballstil 821EF einschließt, ein.
  • In verschiedenen Ausführungsformen würden während eines Objektansichtsmodus geeignete Benutzereingaben, die auf eine beliebige der Vielzahl von Darstellungen von Ansichtsfenstern 821DA-821DF gerichtet sind, oder, während eines CGR-Ansichtsmodus die Bewegung der Vorrichtung 100 den Unterschied zwischen der Darstellung des CGR-Kugel-Objekts mit dem Kugelstil 821EA und der Darstellung des CGR-Kugel-Objekts mit dem Bowlingballstil 821EF (der Löcher einschließt, die in der Perspektive von 8BB nicht sichtbar sind) vorteilhafterweise offenbaren.
  • In 8BB wird das erste Ansichtsfenster 821DA auf eine andere Weise angezeigt (z. B. mit einem dickeren Rand) als die anderen Ansichtsfenster 821DB-821DF, was angibt, dass der Kugelstil der aktuell ausgewählte Stil ist.
  • 8BB veranschaulicht eine Benutzereingabe 899AU, die auf das zweite Ansichtsfenster 821DB gerichtet ist. In verschiedenen Ausführungsformen entspricht die Benutzereingabe 899AU einem Kontakt (z. B. einem Tippen), der am Ort des zweiten Ansichtsfensters 821DB erfasst wird.
  • 8BC veranschaulicht die CGR-Datei, die als Reaktion auf das Erfassen der Benutzereingabe 899AU, die auf das zweite Ansichtsfenster 821DB gerichtet ist, die Benutzerschnittstelle 801 bildet. In 8BC wird das zweite Ansichtsfenster 821DB auf eine andere Weise (z. B. mit einem dickeren Rand) als die anderen Ansichtsfenster 821DA und 821DC-821DF angezeigt, was angibt, dass der Golfballstil der aktuell ausgewählte Stil ist.
  • 8BC veranschaulicht eine Benutzereingabe 899AV, die auf die OK-Affordance 811F gerichtet ist. In verschiedenen Ausführungsformen entspricht die Benutzereingabe 899AV einem Kontakt (z. B. einem Tippen), der am Ort der OK-Affordance 811F erfasst wird.
  • 8BD veranschaulicht die CGR-Datei, die als Reaktion auf das Erfassen der Benutzereingabe 899AV, die an die OK-Affordance 811F gerichtet ist, die Benutzerschnittstelle 801 bildet. In 8AY ist die Live-Ansicht-Benutzerschnittstelle 811 nicht vorhanden und der Stil des aktuell ausgewählten CGR-Objekts wird in den Golfballstil geändert, wie durch die Änderung des Erscheinungsbilds der Darstellung des CGR-Kugel-Objekts 806D (und die entsprechende Änderung des zweiten CGR-Szenen-Affordance 803BB) und die Änderung des Stil-Affordance 813DBC angezeigt.
  • 8BD veranschaulicht eine Benutzereingabe 899AW, die auf das Menü 813DC für physikalische Eigenschaften gerichtet ist. In verschiedenen Ausführungsformen entspricht die Benutzereingabe 899AW einem Kontakt (z. B. einem Tippen), der am Ort des Menüs 813DC für physikalische Eigenschaften erfasst wird.
  • 8BE veranschaulicht die CGR-Datei, die als Reaktion auf das Erfassen der Benutzereingabe 899AW, die an das Menü 813DC für physikalische Eigenschaften gerichtet ist, die Benutzerschnittstelle 801 bildet. In 8BE wird das Menü 813DC für physikalische Eigenschaften erweitert (innerhalb des Einstellungsbereichs 803D), um eine Physiknetz-Affordance 813DCA zum Ändern eines Physiknetzes des aktuell ausgewählten CGR-Objekts (nachstehend beschrieben) darzustellen, eine Reflektivitäts-Affordance 813DCB zum Ändern einer Reflektivität des aktuell ausgewählten CGR-Objekts über einen Schieberegler und eine Elastizitäts-Affordance 813DCC zum Ändern einer Elastizität des aktuell ausgewählten CGR-Objekts darzustellen.
  • 8BE veranschaulicht eine Benutzereingabe 899AX, die auf die Physiknetz-Affordance 813DCA gerichtet ist. In verschiedenen Ausführungsformen entspricht die Benutzereingabe 899AX einem Kontakt (z. B. einem Tippen), der am Ort der Physiknetz-Affordance 813DCA erfasst wird.
  • 8BF veranschaulicht die CGR-Datei, die als Reaktion auf das Erfassen der Benutzereingabe 899AX, die auf die Physiknetz-Affordance 813DCA gerichtet ist, die Benutzerschnittstelle 801 bildet. In 8BF schließt die CGR-Datei, welche die Benutzerschnittstelle 801 bildet, eine Einstellwertauswahl-Benutzerschnittstelle 812 in Form eines Popup-Fensters ein.
  • Die Einstellwertauswahl-Benutzerschnittstelle 812 schließt eine Textbeschreibung 812A des aktuell ausgewählten CGR-Objekts (z. B. „Kugel01“) und die CGR-Objekteinstellung, die über die Einstellwertauswahl-Benutzerschnittstelle 812 manipuliert wird (z. B. das Physiknetz), ein.
  • Die Einstellwertauswahl-Benutzerschnittstelle 812 schließt eine Vielzahl von Einstellwertauswahl-Affordances 812BA-812BC zum Auswählen eines Einstellwerts ein.
  • Die Einstellwertauswahl-Benutzerschnittstelle 812 schließt eine Kugel-Affordance 812BA zum Auswählen eines Kugelnetzes als den aktuell ausgewählten Einstellwert, eine Golfball-Affordance 812BB zum Auswählen eines Golfballnetzes als den aktuell ausgewählten Einstellwert und eine Lade-Affordance 812BC zum Laden eines benutzerdefinierten Netzes als den aktuell ausgewählten Einstellwert ein.
  • Die Golfball-Affordance 812BB schließt einen Auswahlindikator 812C ein, der angibt, dass das Golfballnetz der aktuell ausgewählte Einstellwert ist.
  • Die Einstellwertauswahl-Benutzerschnittstelle 812 schließt eine OK-Affordance 812D zum Ändern des Werts der CGR-Objekteinstellung des aktuell ausgewählten CGR-Objekts auf den aktuell ausgewählten Einstellwert und zum Verwerfen (Beenden der Anzeige) der Einstellwertauswahl-Benutzerschnittstelle 812 ein. Die Einstellwertauswahl-Benutzerschnittstelle 812 schließt eine Abbruch-Affordance 812E zum Verwerfen (Beenden der Anzeige) der Einstellwertauswahl-Benutzerschnittstelle 812 ein, wobei die CGR-Datei, die Benutzerschnittstelle 801 bildet, in den in 8BE veranschaulichten Zustand zurückgebracht wird, ohne den Wert der CGR-Objekteinstellung des aktuell ausgewählten CGR-Objekts zu ändern.
  • Unter verschiedenen Umständen kann es wünschenswert sein, dass sich das Physiknetz eines CGR-Objekts (das verwendet wird, um Interaktionen des CGR-Objekts mit anderen CGR-Objekten zu bestimmen) von einem Anzeigennetz eines CGR-Objekts (das verwendet wird, um das CGR-Objekt auf einer Anzeige wiederzugeben) unterscheidet. Beispielsweise kann bei dem CGR-Golfballobjekt die Anzeige des CGR-Golfballobjekts auf einem komplizierten Anzeigenetz basieren, das eine große Anzahl von Vertiefungen und somit eine große Anzahl von Vielecken einschließt. Die Verwendung eines solchen Netzes als Physiknetz zum Berechnen physikalischer Interaktionen des CGR-Golfballobjekts kann jedoch rechenintensiv und zeitaufwendig sein (potenziell eine Echtzeitberechnung ausschließen). Durch die Wahl eines einfacheren Physiknetzes, zum Beispiel eines Kugelnetzes, mit weniger Polygonen können die Ergebnisse physikalischer Interaktionen effizienter und schneller berechnet werden.
  • 8BF veranschaulicht eine Benutzereingabe 899AY, die auf die Kugel-Affordance 812BA gerichtet ist. In verschiedenen Ausführungsformen entspricht die Benutzereingabe 899AY einem Kontakt (z. B. einem Tippen), der am Ort der Kugel-Affordance 812BA erfasst wird.
  • 8BG veranschaulicht die CGR-Datei, die als Reaktion auf das Erfassen der Benutzereingabe 899AY, die auf die Kugel-Affordance 812BA gerichtet ist, die Benutzerschnittstelle 801 bildet. In 8BG wird der Auswahlindikator 812C in Verbindung mit der Kugel-Affordance 812BA (statt der Golfball-Affordance 812BB) angezeigt.
  • 8BG veranschaulicht eine Benutzereingabe 899AZ, die auf die OK-Affordance 812D gerichtet ist. In verschiedenen Ausführungsformen entspricht die Benutzereingabe 899AZ einem Kontakt (z. B. einem Tippen), der am Ort der OK-Affordance 812D erfasst wird.
  • 8BH veranschaulicht die CGR-Datei, die als Reaktion auf das Erfassen der Benutzereingabe 899AZ, die auf die OK-Affordance 812D gerichtet ist, die Benutzerschnittstelle 801 bildet. In 8BH wird die Physiknetz-Affordance 813DCA aktualisiert, um anzuzeigen, dass das Physiknetz des CGR-Kugel-Objekts das Kugelnetz ist.
  • 8BH veranschaulicht eine Benutzereingabe 899BA, die auf die CGR-Szenenhinzufügungs-Affordance 803AA gerichtet ist. In verschiedenen Ausführungsformen entspricht die Benutzereingabe 899BA einem Kontakt (z. B. einem Tippen), der am Ort der CGR-Szenenhinzufügungs-Affordance 803AA erfasst wird.
  • 8BI veranschaulicht die CGR-Datei, die als Reaktion auf das Erfassen der Benutzereingabe 899BA, die auf die CGR-Szenenhinzufügungs-Affordance 803AA gerichtet ist, die Benutzerschnittstelle 801 und weitere Benutzereingabe bildet, um unter anderem einen Anker für die dritte CGR-Szene auszuwählen, der durch die Benutzereingabe 899BA erzeugt wird, die dritte CGR-Szene (z. B. auf „Teezeit 2“) umzubenennen, die dritte CGR-Szene mit einer Anzahl von CGR-Objekten zu füllen, CGR-Objekteinstellungen der Anzahl von CGR-Objekten zu manipulieren und die zweite CGR-Szene als die aktuell ausgewählte CGR-Szene erneut auszuwählen.
  • Dementsprechend schließt in 8BI die CGR-Datei, welche die Benutzerschnittstelle bildet, eine dritte CGR-Szenen-Affordance 803BC ein, die eine dritte CGR-Szene darstellt.
  • 8BI veranschaulicht eine Benutzereingabe 899BB, die auf die Verhaltenshinzufügungs-Affordance 803AC gerichtet ist. In verschiedenen Ausführungsformen entspricht die Benutzereingabe 899BB einem Kontakt (z. B. einem Tippen), der am Ort der Verhaltenshinzufügungs-Affordance 803AC erfasst wird.
  • 8BJ veranschaulicht die CGR-Datei, die als Reaktion auf das Erfassen der Benutzereingabe 899BB, die auf die Verhaltenshinzufügungs-Affordance 803AC gerichtet ist, die Benutzerschnittstelle 801 bildet. In 8BJ schließt die CGR-Datei, welche die Benutzerschnittstelle 801 bildet, eine Verhaltenseditor-Benutzerschnittstelle 831 in Form eines Popup-Fensters ein.
  • In verschiedenen Ausführungsformen wird die Verhaltenseditor-Benutzerschnittstelle 831 verwendet, um ein Verhalten zu erstellen und/oder zu bearbeiten, das der CGR-Szene zugeordnet ist. Jedes Verhalten ist mit einem oder mehreren Triggern und einer oder mehreren Aktionen zugeordnet. Wenn eine CGR-Anwendung, die dem Projekt entspricht, dargestellt wird und einer des einen oder der mehreren Trigger erfasst wird, werden die eine oder die mehreren Aktionen durchgeführt.
  • Die Verhaltenseditor-Benutzerschnittstelle 831 schließt ein Ansichtsfenster 831D ein, das eine Darstellung der aktuell ausgewählten CGR-Szene darstellt (einschließlich einer Darstellung des CGR-Becher-Objekts 831DA, einer Darstellung des CGR-Platten-Objekts 831DB und einer Darstellung des CGR-Kugel-Objekts 831DC). Die Verhaltenseditor-Benutzerschnittstelle 831 schließt einen Namen 831C (z. B. „VerhaltenOl“) des zu bearbeitenden (oder erstellten) Verhaltens (z. B. ein erstes Verhalten) ein, der über dem Ansichtsfenster 831D angezeigt wird.
  • Die Verhaltenseditor-Benutzerschnittstelle 831 schließt eine Vielzahl von Ansichts-Affordances 831A-831B ein, einschließlich einer Objektansichts-Affordance 831A zum Ansehen der Darstellung der aktuell ausgewählten CGR-Szene im Ansichtsfenster 831D in einem Szenenmodus (in dem die Benutzereingaben an das Ansichtsfenster 831D die Perspektive der Ansicht der aktuell ausgewählten CGR-Szene ändern) und einer CGR-Ansichts-Affordance 831B zum Ansehen der aktuell ausgewählten CGR-Szene im Ansichtsfenster 831D in einem CGR-Modus (in dem die Bewegung der Vorrichtung 100 die Perspektive der Ansicht des aktuell ausgewählten CGR-Objekts ändert).
  • Die Verhaltenseditor-Benutzerschnittstelle 831 schließt eine OK-Affordance 831E zum Erstellen (und/oder Akzeptieren von Änderungen an) des Verhaltens und zum Verwerfen (Beenden der Anzeige) der Verhaltenseditor-Benutzerschnittstelle 831 ein. Die Verhaltenseditor-Benutzerschnittstelle 831 schließt eine Abbruch-Affordance 831F zum Verwerfen (Beenden der Anzeige) der Verhaltenseditor-Benutzerschnittstelle 831 ein, wodurch die CGR-Datei, die Benutzerschnittstelle 801 bildet, in den in 8BI veranschaulichten Zustand zurückgebracht wird, ohne das Verhalten zu erzeugen (oder ohne es zu ändern).
  • Die Verhaltenseditor-Benutzerschnittstelle 831 schließt einen Übersichtsbereich 832 und einen Detailbereich 837 ein. Der Übersichtsbereich 832 schließt einen Triggerbereich 833 und einen Aktionsbereich 835 ein, die durch einen Separator 834 getrennt sind. Der Triggerbereich 833 schließt eine neue Trigger-Affordance 833A zum Hinzufügen eines Triggers zu dem Verhalten und der Aktionsbereich 835 schließt eine Neue-Aktions-Affordance 835A zum Hinzufügen einer neuen Aktion zu dem Verhalten ein.
  • Der Detailbereich 837 schließt eine Vielzahl von Verhaltenseinstellungs-Affordances 836A-836C zum Ändern der Einstellungen des Verhaltens ein. Der Detailbereich 837 schließt eine Namens-Affordance 836A zum Ändern eines Namens des Verhaltens, eine Farb-Affordance 836B zum Ändern einer Farbe des Verhaltens und eine Aktivierungs-/Deaktivierungs-Affordance 836C zum Umschalten zwischen dem Aktivieren und dem Deaktivieren des Verhaltens ein.
  • 8BJ veranschaulicht eine Benutzereingabe 899BC, die auf die Namens-Affordance 836A gerichtet ist. In verschiedenen Ausführungsformen entspricht die Benutzereingabe 899BC einem Kontakt (z. B. einem Tippen), der am Ort der Namens-Affordance 836A erfasst wird.
  • 8BK veranschaulicht die CGR-Datei, die als Reaktion auf das Erfassen der Benutzereingabe 899BC, die auf die Namens-Affordance 836A gerichtet ist (und möglicherweise eine zusätzliche Benutzereingabe, die einen neuen Namen für das erste Verhalten definiert), die Benutzerschnittstelle 801 bildet. In 8BK wird die Namens-Affordance 836A aktualisiert, um den neuen Namen für das erste Verhalten anzugeben (z. B. „Ball bewegen“).
  • 8BK veranschaulicht eine Benutzereingabe 899BD, die auf die neue Trigger-Affordance 833A gerichtet ist. In verschiedenen Ausführungsformen entspricht die Benutzereingabe 899BD einem Kontakt (z. B. einem Tippen), der am Ort der neuen Trigger-Affordance 833A erfasst wird.
  • 8BL veranschaulicht die CGR-Datei, die als Reaktion auf das Erfassen der Benutzereingabe 899BD, die auf den neuen Trigger-Affordance 833A gerichtet ist, die Benutzerschnittstelle 801 bildet. In 8BL wird die neue Trigger-Affordance 833A auf eine zweite Weise angezeigt, die sich von einer ersten Weise von 8BK unterscheidet (z. B. schwarz statt weiß), um anzuzeigen, dass der Detailbereich 837 Affordances zum Erstellen eines neuen Triggers für das Verhalten einschließt.
  • Beispielsweise schließt in 8BL der Detailbereich 837 eine Tipptrigger-Affordance 838A zum Erzeugen eines Tipptriggers ein, so dass, wenn eine CGR-Anwendung, die dem Projekt entspricht, dargestellt wird und ein Tippen auf ein CGR-Objekt (oder ein beliebiges einer Vielzahl von CGR-Objekten), das durch den Tipptrigger definiert ist, erfasst wird, die eine oder die mehreren Aktionen des Verhaltens durchgeführt werden. Der Detailbereich 837 schließt eine Näherungs-/Kollisionstrigger-Affordance 838B zum Erzeugen eines Näherungs-/Kollisionstriggers ein, so dass, wenn eine CGR-Anwendung, die dem Projekt entspricht, dargestellt wird und ein CGR-Objekt (oder ein beliebiges aus einer Vielzahl von CGR-Objekten), das durch den Trigger als ein primäres Ziel definiert ist, innerhalb eines Schwellenabstands (auch durch den Trigger definiert, der 0 sein kann) eines CGR-Objekts (oder eines beliebigen einer Vielzahl von CGR-Objekten) erfasst wird, der durch den Trigger als sekundäres Ziel definiert wird, die eine oder die mehreren Aktionen des Verhaltens durchgeführt werden. Der Detailbereich 837 schließt eine Gesichtsverfolgungstrigger-Affordance 838C zum Erstellen eines Gesichtsverfolgungstriggers ein, so dass, wenn eine CGR-Anwendung, die dem Projekt entspricht, dargestellt wird und eine Gesichtsfunktion eines Benutzers (e.g, Blinken, Kauen, Blasen, Lächeln usw.) erfasst wird, die eine oder die mehreren Aktionen des Verhaltens durchgeführt werden. Der Detailbereich 837 enthält eine andere Trigger-Affordance 83 8D zum Erstellen anderer Arten von Triggern.
  • 8BL veranschaulicht eine Benutzereingabe 899BE, die auf die Tipptrigger-Affordance 838A gerichtet ist. In verschiedenen Ausführungsformen entspricht die Benutzereingabe 899BE einem Kontakt (z. B. einem Tippen), der am Ort der Tipptrigger-Affordance 838A erfasst wird.
  • 8BM veranschaulicht die CGR-Datei, die als Reaktion auf das Erfassen der Benutzereingabe 899BE, die auf die Tipptrigger-Affordance 838A gerichtet ist, die Benutzerschnittstelle 801 bildet. In 8BL schließt der Triggerbereich 833 eine Tipptrigger-Affordance 833B ein, die auf die zweite Weise angezeigt wird, um anzugeben, dass der Detailbereich 837 Affordances zum Erstellen eines neuen Tipptriggers für das Verhalten einschließt.
  • Beispielsweise schließt in 8BM der Detailbereich 837 eine Fertig-Affordance 838AA zum Erzeugen eines Tipp-Triggers ein, so dass, wenn eine CGR-Anwendung, die dem Projekt entspricht, dargestellt wird und ein Tippen auf ein CGR-Objekt (oder ein beliebiges aus einer Vielzahl von CGR-Objekten), das in dem Ansichtsfenster 831D ausgewählt wird, erfasst wird, die eine oder die mehreren Aktionen des Verhaltens durchgeführt werden.
  • 8BM veranschaulicht eine Benutzereingabe 899BF, die auf die Darstellung des CGR-Kugel-Objekts 831DC gerichtet ist. In verschiedenen Ausführungsformen entspricht die Benutzereingabe 899BF einem Kontakt (z. B. einem Tippen), der am Ort der Darstellung des CGR-Kugel-Objekts 831DC erfasst wird.
  • 8BN veranschaulicht die CGR-Datei, die als Reaktion auf das Erfassen der Benutzereingabe 899BF, die auf die Darstellungen des CGR-Kugel-Objekts 831DC gerichtet ist, die Benutzerschnittstelle 801 bildet. In 8BN ist die Darstellung des CGR-Kugel-Objekts 831DC hervorgehoben, was angibt, dass das CGR-Kugel-Objekt zur Definition als Ziel des TAP-Triggers ausgewählt wird.
  • 8BN veranschaulicht eine Benutzereingabe 899BG, die auf die Fertig-Affordance 838AA gerichtet ist. In verschiedenen Ausführungsformen entspricht die Benutzereingabe 899BG einem Kontakt (z. B. einem Tippen), der an dem Ort der Fertig-Affordance 838AA erfasst wird. Als Reaktion darauf wird das erste Verhalten einem Tipptrigger zugeordnet, so dass, wenn eine CGR-Anwendung, die dem Projekt entspricht, dargestellt wird und ein Tippen auf das CGR-Kugel-Objekt erfasst wird, die eine oder die mehreren Aktionen des ersten Verhaltens durchgeführt werden.
  • 8BO veranschaulicht die CGR-Datei, die als Reaktion auf das Erfassen der Benutzereingabe 899BG, die auf die Fertig-Affordance 838AA gerichtet ist, die Benutzerschnittstelle 801 bildet. In 8BO werden die neue Trigger-Affordance 833A (und die Tipptrigger-Affordance 833B) auf die erste Weise angezeigt, um anzugeben, dass der Detailbereich 837 die Vielzahl von Verhaltenseinstellungs-Affordances 836A-836C einschließt.
  • 8BO veranschaulicht eine Benutzereingabe 899BH, die auf die neue Trigger-Affordance 833A gerichtet ist. In verschiedenen Ausführungsformen entspricht die Benutzereingabe 899BH einem Kontakt (z. B. einem Tippen), der am Ort der neuen Trigger-Affordance 833A erfasst wird.
  • 8BP veranschaulicht die CGR-Datei, die als Reaktion auf das Erfassen der Benutzereingabe 899BH, die auf die neue Trigger-Affordance 833A gerichtet ist, die Benutzerschnittstelle 801 bildet. In 8BP wird die neue Trigger-Affordance 833A auf eine zweite Weise angezeigt, die sich von einer ersten Weise von 8BO unterscheidet (z. B. schwarz statt weiß), um anzuzeigen, dass der Detailbereich 837 Affordances zum Erstellen eines neuen Triggers für das Verhalten einschließt. Beispielsweise schließt in 8BL der Detailbereich 837 unter anderem die Gesichtsverfolgungstrigger-Affordance 838C ein.
  • 8BP veranschaulicht eine Benutzereingabe 899BI, die auf die Gesichtsverfolgungstrigger-Affordance 838C gerichtet ist. In verschiedenen Ausführungsformen entspricht die Benutzereingabe 899BI einem Kontakt (z. B. einem Tippen), der am Ort der Affordance des Gesichtsverfolgungstriggers 838C erfasst wird.
  • 8BQ veranschaulicht die CGR-Datei, die als Reaktion auf das Erfassen der Benutzereingabe 899BI, die auf die Gesichtsverfolgungstrigger-Affordance 838C gerichtet ist, die Benutzerschnittstelle 801 bildet. In 8BQ schließt der Triggerbereich 833 eine Gesichtsverfolgungstrigger-Affordance 833C ein, die auf die zweite Weise angezeigt wird, um anzugeben, dass der Detailbereich 837 Affordances zum Erstellen eines neuen Gesichtsverfolgungstriggers für das Verhalten einschließt.
  • Beispielsweise schließt in 8BQ der Detailbereich 837 eine Blinktrigger-Affordance 838CA zum Erzeugen eines Blinktriggers ein, so dass, wenn eine CGR-Anwendung, die dem Projekt entspricht, dargestellt wird und ein Benutzer erfasst wird, der eine oder die mehreren Aktionen des Verhaltens durchgeführt werden. Der Detailbereich 837 schließt eine Kautrigger-Affordance 838CB zum Erzeugen eines Kautriggers ein, so dass, wenn eine CGR-Anwendung, die dem Projekt entspricht, dargestellt wird und ein Benutzer beim Kauen erfasst wird, die eine oder die mehreren Aktionen des Verhaltens durchgeführt werden. Der Detailbereich 837 schließt eine Blastrigger-Affordance 838CC zum Erzeugen eines Blastriggers ein, so dass, wenn eine CGR-Anwendung, die dem Projekt entspricht, dargestellt wird und ein Benutzer beim Blasen erfasst wird, die eine oder die mehreren Aktionen des Verhaltens durchgeführt werden. Der Detailbereich 837 enthält eine andere Gesichtsverfolgungstrigger-Affordance 838CD zum Erstellen anderer Gesichtsverfolgungstrigger.
  • 8BQ veranschaulicht eine Benutzereingabe 899BJ, die auf die Blastrigger-Affordance 838CC gerichtet ist. In verschiedenen Ausführungsformen entspricht die Benutzereingabe 899BJ einem Kontakt (z. B. einem Tippen), der am Ort der Blastrigger-Affordance 838CC erfasst wird. Als Reaktion darauf wird das erste Verhalten einem Blastrigger zugeordnet, so dass, wenn eine CGR-Anwendung, die dem Projekt entspricht, dargestellt wird und erfasst wird, dass ein Benutzer eine Blasaktion durchführt (wie z. B. Ausblasen von Geburtstagskerzen), die eine oder die mehreren Aktionen des ersten Verhaltens durchgeführt werden.
  • 8BR veranschaulicht die CGR-Datei, die als Reaktion auf das Erfassen der Benutzereingabe 899BJ, die an die Blastrigger-Affordance 838CC gerichtet ist, die Benutzerschnittstelle 801 bildet. In 8BR werden die neue Trigger-Affordance 833A (und die Gesichtsverfolgungstrigger-Affordance 833C) auf die erste Weise angezeigt, um anzugeben, dass der Detailbereich 837 die Vielzahl von Verhaltenseinstellungs-Affordances 836A-836C einschließt.
  • 8BR veranschaulicht eine Benutzereingabe 899BK, die auf die Neue-Aktions-Affordance 835A gerichtet ist. In verschiedenen Ausführungsformen entspricht die Benutzereingabe 899BK einem Kontakt (z. B. einem Tippen), der am Ort der neuen Aktions-Affordance 835A erfasst wird.
  • 8BS veranschaulicht die CGR-Datei, die als Reaktion auf das Erfassen der Benutzereingabe 899BK, die auf die Neue-Aktions-Affordance 835A gerichtet ist, die Benutzerschnittstelle 801 bildet. In 8BS ist der Triggerbereich 833 so zusammengeklappt, dass er eine einzige gruppierte Trigger-Affordance 833X einschließt, die für die neue Trigger-Affordance 833A und beliebige definierte Trigger (z. B. die Tipptrigger-Affordance 833B und die Gesichtsverfolgungstrigger-Affordance 833C) repräsentativ ist. In 8BS wird die Neue-Aktions-Affordance 835A auf die zweite Weise angezeigt, um anzugeben, dass der Detailbereich 837 Affordances zum Erstellen einer neuen Aktion für das Verhalten einschließt.
  • Beispielsweise schließt in 8BS der Detailbereich 837 eine Bewegungsaktions-Affordance 839A zum Erzeugen einer Bewegungsaktion ein, so dass, wenn eine CGR-Anwendung, die dem Projekt entspricht, dargestellt wird und ein Trigger für ein Verhalten, das die Bewegungsaktion einschließt, erfasst wird, sich ein CGR-Ziel in der CGR-Umgebung bewegt. Der Detailbereich 837 schließt eine Audioaktions-Affordance 839B zum Erzeugen einer Audioaktion ein, so dass, wenn eine CGR-Anwendung, die dem Projekt entspricht, dargestellt wird und ein Trigger für ein Verhalten, das die Audioaktion einschließt, erfasst wird, eine Audiodatei in der CGR-Umgebung abgespielt wird. Der Detailbereich 837 schließt eine Szenenänderungsaktions-Affordance 839C zum Erzeugen einer Szenenänderungsaktion ein, so dass, wenn eine CGR-Anwendung, die dem Projekt entspricht, dargestellt wird und ein Trigger für ein Verhalten, das die Szenenänderungsaktion einschließt, erfasst wird, eine neue CGR-Szene in der CGR-Umgebung dargestellt wird (entweder Ersetzen oder Ergänzen einer aktuellen CGR-Szene). Der Detailbereich 837 enthält eine andere Aktions-Affordance 839D zum Erstellen anderer Aktionstypen.
  • 8BS veranschaulicht eine Benutzereingabe 899BL, die auf die Bewegungsaktions-Affordance 839A gerichtet ist. In verschiedenen Ausführungsformen entspricht die Benutzereingabe 899BL einem Kontakt (z. B. einem Tippen), der an dem Ort der Bewegungsaktions-Affordance 839A erfasst wird.
  • 8BT veranschaulicht die CGR-Datei, die als Reaktion auf das Erfassen der Benutzereingabe 899BL, die auf den Umsetzungs-Affordance 839A gerichtet ist, die Benutzerschnittstelle 801 bildet. In 8BT schließt der Aktionsbereich 835 eine Bewegungsaktions-Affordance 835B ein, die auf die zweite Weise angezeigt wird, um anzugeben, dass der Detailbereich 837 Affordances zum Erstellen einer neuen Bewegungsaktion für das Verhalten einschließt.
  • Beispielsweise schließt in 8BT der Detailbereich 837 eine Bewegung-Zu-Aktions-Affordance 839AA zum Erzeugen einer Bewegung-Zu-Aktion ein, so dass, wenn eine CGR-Anwendung, die dem Projekt entspricht, dargestellt wird und ein Trigger für ein Verhalten, das die Bewegung-Zu-Aktion einschließt, erfasst wird, sich ein CGR-Ziel zu einer Position in der CGR-Umgebung bewegt, die durch die Aktion definiert ist. Der Detailbereich 837 schließt eine Bewegung-Von-Aktions-Affordance 839AB zum Erzeugen einer Bewegung-Von-Aktion, so dass, wenn eine CGR-Anwendung, die dem Projekt entspricht, dargestellt wird und ein Trigger für ein Verhalten, das die Bewegung-Von-Aktion einschließt, erfasst wird, sich ein CGR-Ziel von seiner Position in der CGR-Umgebung auf eine durch die Aktion definierte Weise bewegt. Der Detailbereich 837 schließt eine Dreh-Aktions-Affordance 839AC zum Erzeugen einer Dreh-Aktion ein, so dass, wenn eine CGR-Anwendung, die dem Projekt entspricht, dargestellt wird und ein Trigger für ein Verhalten, das die Dreh-Aktion einschließt, erfasst wird, ein CGR-Ziel sich an seiner Position in der CGR-Umgebung dreht. Der Detailbereich 837 schließt eine andere Bewegungsaktions-Affordance 839AD zum Erstellen anderer Arten von Bewegungsaktionen ein.
  • 8BT veranschaulicht eine Benutzereingabe 899BM, die auf die Affordance 839AB für eine Bewegung-Von-Aktions-Affordance gerichtet ist. In verschiedenen Ausführungsformen entspricht die Benutzereingabe 899BM einem Kontakt (z. B. einem Tippen), der an dem Ort der Bewegung-Von-Aktions-Affordance 839AB erfasst wird.
  • 8BU veranschaulicht die CGR-Datei, die als Reaktion auf das Erfassen der Benutzereingabe 899BM, die auf die Affordance 838AB gerichtet ist, die Benutzerschnittstelle 801 bildet. In 8BU schließt der Detailbereich 837 Affordances zum Erstellen einer neuen Bewegung-Von-Aktion für das Verhalten ein.
  • Beispielsweise schließt in 8BU der Detailbereich 837 eine Vorwärtsbewegungsaktions-Affordance 839ABA zum Erzeugen einer Vorwärtsbewegungsaktion ein, so dass, wenn eine CGR-Anwendung, die dem Projekt entspricht, dargestellt wird und ein Trigger für ein Verhalten, das die Vorwärtsbewegungsaktion einschließt, erfasst wird, sich ein CGR-Ziel in der CGR-Umgebung vorwärts bewegt. Der Detailbereich 837 schließt eine Sprungaktions-Affordance 839ABB zum Erzeugen einer Sprungaktion ein, so dass, wenn eine CGR-Anwendung, die dem Projekt entspricht, dargestellt wird und ein Trigger für ein Verhalten, das die Sprungaktion einschließt, erfasst wird, sich ein CGR-Ziel von seiner Position in der CGR-Umgebung nach oben bewegt. Der Detailbereich 837 schließt eine Fallaktions-Affordance 839ABC zum Erzeugen einer Fallaktion ein, so dass, wenn eine CGR-Anwendung, die dem Projekt entspricht, dargestellt wird und ein Trigger für ein Verhalten, das die Fallaktion einschließt, erfasst wird, ein CGR-Ziel von seiner Position in der CGR-Umgebung fällt. Der Detailbereich 837 schließt eine weitere Bewegung-Von-Aktions-Affordance 839ABD ein, um andere Arten von Bewegung-Von-Aktionen zu erstellen.
  • 8BU veranschaulicht eine Benutzereingabe 899BN, die auf die Vorwärtsbewegungsaktions-Affordance 839ABA gerichtet ist. In verschiedenen Ausführungsformen entspricht die Benutzereingabe 899BN einem Kontakt (z. B. einem Tippen), der am Ort der Vorwärtsbewegungsaktions-Affordance 839ABA erfasst wird.
  • 8BV veranschaulicht die CGR-Datei, die als Reaktion auf das Erfassen der Benutzereingabe 899BN, die auf die Vorwärtsbewegungsaktions-Affordance 838ABA gerichtet ist, die Benutzerschnittstelle 801 bildet. In 8BV schließt der Detailbereich 837 eine Geschwindigkeitseinstellungs-Affordance 839ABAA zum Einstellen einer Geschwindigkeit, mit der sich das CGR-Objekt vorwärts bewegt, und eine Interaktionseinstellungs-Affordance 839ABAB zum Aktivieren oder Deaktivieren der Interaktion mit anderen CGR-Objekten, wenn sich das CGR-Objekt vorwärts bewegt, ein. Der Detailbereich 837 schließt eine Speicher-Affordance 839ABAC zum Speichern der Vorwärtsbewegungsaktion im ersten Verhalten (oder zum Speichern von Änderungen an der Vorwärtsbewegungsaktion) und eine Verwerf-Affordance 839ABAD zum Verwerfen der Vorwärtsbewegungsaktion (oder zum Verwerfen von Änderungen an der Vorwärtsbewegungsaktion) ein.
  • In 8BV ist die Darstellung des CGR-Kugel-Objekts 831DC hervorgehoben, die angibt, dass das CGR-Kugel-Objekt das CGR-Objekt ist, das während der Aktion bewegt wurde. Durch Richten einer Benutzereingabe an Darstellungen anderer CGR-Objekte kann das während der Aktion bewegte CGR-Objekt verändert werden.
  • 8BV veranschaulicht eine Benutzereingabe 899BO, die auf die Speicher-Affordance 839ABAC gerichtet ist. In verschiedenen Ausführungsformen entspricht die Benutzereingabe 899BO einem Kontakt (z. B. einem Tippen), der am Ort der Speicher-Affordance 839ABAC erfasst wird.
  • 8BW veranschaulicht die CGR-Datei, die als Reaktion auf das Erfassen der Benutzereingabe 899BO, die auf die Speicher-Affordance 839ABAC gerichtet ist, die Benutzerschnittstelle 801 bildet. In 8BW werden die Neue-Aktions-Affordance 835A und die Bewegungsaktions-Affordance 835B auf die erste Weise angezeigt, was angibt, dass der Detailbereich 837 die Vielzahl von Verhaltenseinstellungs-Affordance 836A-836C zum Ändern der Einstellungen des Verhaltens einschließt.
  • 8BW veranschaulicht eine Benutzereingabe 899BP, die an die OK-Affordance 831E gerichtet ist. In verschiedenen Ausführungsformen entspricht die Benutzereingabe 899BP einem Kontakt (z. B. einem Tippen), der am Ort der OK-Affordance 831E erfasst wird.
  • 8BX veranschaulicht die CGR-Datei, die als Reaktion auf das Erfassen der Benutzereingabe 899BP, die auf die OK-Affordance 831E gerichtet ist, die Benutzerschnittstelle 801 bildet. In 8BX wird die Verhaltenseditor-Benutzerschnittstelle 831 verworfen und eine erste Verhaltens-Affordance 803CA (mit der durch das erste Verhalten angegebenen Farbe) im Verhaltensbereich 803C angezeigt.
  • In 8BX wird das erste Verhalten ausgewählt, wie durch die erste Verhaltens-Affordance 803CA angegeben, die auf eine ausgewählte Weise angezeigt wird (z. B. mit einem dickeren Rand als auf eine nicht ausgewählte Weise). Da das erste Verhalten ausgewählt ist, zeigt die Darstellung der zweiten CGR-Szene im Ansichtsbereich 803E die CGR-Objekte an, die den Triggern des ersten Verhaltens unter Verwendung einer ersten Hervorhebung (z. B. einem Glimmen) zugeordnet sind, und die CGR-Objekte, die den Aktionen des ersten Verhaltens unter Verwendung einer zweiten Hervorhebung (z. B. diagonales Hashen) zugeordnet sind. Dementsprechend wird die Darstellung des CGR-Kugel-Objekts 806D sowohl mit der ersten Hervorhebung (da Tippen auf das CGR-Kugel-Objekt ein Trigger des ersten Verhaltens ist) als auch mit der zweiten Hervorhebung (da Bewegen des CGR-Kugel-Objekts eine Aktion des ersten Verhaltens ist) angezeigt.
  • 8BX veranschaulicht eine Benutzereingabe 899BQ, die auf die Verhaltenshinzufügungs-Affordance 803AC gerichtet ist. In verschiedenen Ausführungsformen entspricht die Benutzereingabe 899BQ einem Kontakt (z. B. einem Tippen), der am Ort der Verhaltenshinzufügungs-Affordance 831AC erfasst wird.
  • 8BY veranschaulicht die CGR-Datei, die als Reaktion auf das Erfassen der Benutzereingabe 899BQ, die auf den Verhaltenshinzufügungs-Affordance 803AC gerichtet ist, die Benutzerschnittstelle 801 bildet. In 8BY schließt die CGR-Datei, welche die Benutzerschnittstelle 801 bildet, die Verhaltenseditor-Benutzerschnittstelle 831 in Form eines Popup-Fensters ein. Die Verhaltenseditor-Benutzerschnittstelle 831 schließt einen Namen 831C (z. B. „Verhalten02“) des zu bearbeitenden (oder erstellenden) Verhaltens (z. B. ein zweites Verhalten) ein, der über dem Ansichtsfenster 831D angezeigt wird.
  • 8BY veranschaulicht eine Benutzereingabe 899BR, die auf die Namens-Affordance 836A gerichtet ist. In verschiedenen Ausführungsformen entspricht die Benutzereingabe 899BR einem Kontakt (z. B. einem Tippen), der am Ort der Namens-Affordance 836A erfasst wird.
  • 8BZ veranschaulicht die CGR-Datei, die als Reaktion auf das Erfassen der Benutzereingabe 899BR, die auf die Namens-Affordance 836A gerichtet ist (und möglicherweise einer zusätzlichen Benutzereingabe, die einen neuen Namen für das zweite Verhalten definiert), die Benutzerschnittstelle 801 bildet. In 8BZ wird die Namens-Affordance 836A aktualisiert, um den neuen Namen für das zweite Verhalten anzuzeigen (z. B. „Ball im Becher“).
  • 8BZ veranschaulicht eine Benutzereingabe 899BS, die auf die Farb-Affordance 836B gerichtet ist. In verschiedenen Ausführungsformen entspricht die Benutzereingabe 899BS einem Kontakt (z. B. einem Tippen), der am Ort der Farb-Affordance 836B erfasst wird.
  • 8CA veranschaulicht die CGR-Datei, die als Reaktion auf das Erfassen der Benutzereingabe 899BS, die auf die Farb-Affordance 836B gerichtet ist (und möglicherweise zusätzlicher Benutzereingabe, die eine neue Farbe für das zweite Verhalten auswählt), die Benutzerschnittstelle 801 bildet. In 8CA wird die Farb-Affordance 836B aktualisiert, um die neue Farbe für das zweite Verhalten anzuzeigen (z. B. „Ball im Becher“).
  • 8CA veranschaulicht eine Benutzereingabe 899BT, die auf die neuen Trigger-Affordance 833A gerichtet ist. In verschiedenen Ausführungsformen entspricht die Benutzereingabe 899BT einem Kontakt (z. B. einem Tippen), der am Ort der neuen Trigger-Affordance 833A erfasst wird.
  • 8CB veranschaulicht die CGR-Datei, die als Reaktion auf das Erfassen der Benutzereingabe 899BD, die auf die neue Trigger-Affordance 833A gerichtet ist, die Benutzerschnittstelle 801 bildet. In 8CB wird die neue Trigger-Affordance 833A auf die zweite Weise angezeigt (z. B. schwarz), um anzugeben, dass der Detailbereich 837 Affordances zum Erstellen eines neuen Triggers für das Verhalten einschließt.
  • Beispielsweise schließt in 8CB der Detailbereich 837 die Tipptrigger-Affordance 83 8A zum Erstellen eines Tipptriggers, die Näherungs-/Kollisionstrigger-Affordance 838B, die Gesichtsverfolgungstrigger-Affordance 838C und die anderen Trigger-Affordance 83 8D zum Erstellen anderer Typen von Triggern ein.
  • 8CB veranschaulicht eine Benutzereingabe 899BU, die auf die Näherungs-/Kollisionstrigger-Affordance 838B gerichtet ist. In verschiedenen Ausführungsformen entspricht die Benutzereingabe 899BE einem Kontakt (z. B. einem Tippen), der am Ort der Näherungs-/Kollisionstrigger-Affordance 838B erfasst wird.
  • 8CC veranschaulicht die CGR-Datei, die als Reaktion auf das Erfassen der Benutzereingabe 899BU, die auf die Näherungs-/Kollisionstrigger-Affordance 838B gerichtet ist, die Benutzerschnittstelle 801 bildet. In 8CC schließt der Triggerbereich 833 eine Näherungs-/Kollisionstrigger-Affordance 833D ein, die auf die zweite Weise angezeigt wird, um anzugeben, dass der Detailbereich 837 Affordances zum Erstellen eines neuen Näherungs-/Kollisionstriggers für das Verhalten einschließt.
  • Beispielsweise schließt in 8CC der Detailbereich 837 eine Abstand-Vom-Netz-Trigger-Affordance 838BA zum Erzeugen eines Abstand-Vom-Netz-Triggers ein, so dass, wenn eine CGR-Anwendung, die dem Projekt entspricht, dargestellt wird und ein beliebiger Punkt des Netzes eines CGR-Objekts (oder eines einer Vielzahl von CGR-Objekten), der durch den Trigger als ein primäres Ziel definiert ist, innerhalb eines Schwellenabstands (auch durch den Trigger definiert, der 0 sein kann) eines beliebigen Punkts des Netzes eines CGR-Objekts (oder eines einer Vielzahl von CGR-Objekten) erfasst wird, das als ein sekundäres Ziel durch den Trigger definiert ist, die eine oder die mehreren Aktionen des Verhaltens durchgeführt werden.
  • Der Detailbereich 837 schließt eine Abstand-Vom-Zentrum-Trigger-Affordance 838BB zum Erzeugen eines Abstand-Vom-Zentrum-Triggers ein, so dass, wenn eine CGR-Anwendung, die dem Projekt entspricht, dargestellt wird und ein CGR-Objekt (oder ein beliebiges aus einer Vielzahl von CGR-Objekten), das als ein primäres Ziel durch den Trigger definiert ist, innerhalb eines Schwellenabstands (auch durch den Trigger definiert, der 0 sein kann) der Mitte (oder eines anderen räumlichen Manipulationspunkts) eines CGR-Objekts (oder eines beliebigen einer Vielzahl von CGR-Objekten) erfasst wird, das als ein sekundäres Ziel durch den Trigger definiert ist, die eine oder die mehreren Aktionen des Verhaltens durchgeführt werden.
  • Der Detailbereich 837 schließt eine Abstand-von-Koordinaten-Trigger-Affordance 838BC zum Erzeugen eines Abstand-von-Koordinaten-Triggers ein, so dass, wenn eine CGR-Anwendung, die dem Projekt entspricht, dargestellt wird und ein CGR-Objekt (oder ein beliebiges aus einer Vielzahl von CGR-Objekten), das durch den Trigger als ein primäres Ziel definiert ist, innerhalb eines Schwellenabstands (der auch durch den Trigger definiert ist, der 0 sein kann) einer Koordinate, die durch den Trigger als ein sekundäres Ziel definiert ist, erfasst wird, die eine oder die mehreren Aktionen des Verhaltens durchgeführt werden.
  • Der Detailbereich 837 schließt eine andere Näherungs-/Kollisionstrigger-Affordance 838BD zum Erstellen anderer Arten von Näherungs-/Kollisionstriggern ein.
  • 8CC veranschaulicht eine Benutzereingabe 899BV, die auf die Abstand-Vom-Zentrum-Affordance 838BB gerichtet ist. In verschiedenen Ausführungsformen entspricht die Benutzereingabe 899BV einem Kontakt (z. B. einem Tippen), der an dem Ort der Abstand-Vom-Zentrum-Trigger-Affordance 838BB erfasst wird.
  • 8CD veranschaulicht die CGR-Datei, welche die Benutzerschnittstelle 801 als Reaktion auf das Erfassen der Benutzereingabe 899BV bildet, die auf die Abstand-Vom-Zentrum-Trigger-Affordance 838BB gerichtet ist. Beispielsweise schließt in 8CD der Detailbereich 837 einen Fertig-Affordance 838BBA zum Abschließen einer Auswahl primärer Ziele ein, so dass, wenn eine CGR-Anwendung, die dem Projekt entspricht, dargestellt wird und ein CGR-Objekt (oder ein beliebiges aus einer Vielzahl von CGR-Objekten), das in dem Ansichtsfenster 831D ausgewählt wird, innerhalb eines Schwellenabstands (auch durch den Trigger definiert, der 0 sein kann) eines CGR-Objekts (oder eines beliebigen einer Vielzahl von CGR-Objekten) erfasst wird, das als ein sekundäres Ziel durch den Trigger definiert ist, die eine oder die mehreren Aktionen des Verhaltens durchgeführt werden.
  • 8CD veranschaulicht eine Benutzereingabe 899BW, die auf die Darstellung des CGR-Kugel-Objekts 831DC gerichtet ist. In verschiedenen Ausführungsformen entspricht die Benutzereingabe 899BW einem Kontakt (z. B. einem Tippen), der am Ort der Darstellung des CGR-Kugel-Objekts 831DC erfasst wird.
  • 8CE veranschaulicht die CGR-Datei, die als Reaktion auf das Erfassen der Benutzereingabe 899BW, die auf die Darstellungen des CGR-Kugel-Objekts 831DC gerichtet ist, die Benutzerschnittstelle 801 bildet. In 8CE ist die Darstellung des CGR-Kugel-Objekts 831DC hervorgehoben, was anzeigt, dass das CGR-Kugel-Objekt zur Definition als das primäre Ziel des Näherungs-/Kollisionstriggers ausgewählt wird.
  • 8CE veranschaulicht eine Benutzereingabe 899BX, die auf die Fertig-Affordance 838BBA gerichtet ist. In verschiedenen Ausführungsformen entspricht die Benutzereingabe 899BX einem Kontakt (z. B. einem Tippen), der an dem Ort der Fertig-Affordance 838BBA erfasst wird.
  • 8CF veranschaulicht die CGR-Datei, die als Reaktion auf das Erfassen der Benutzereingabe 899BX, die auf die Fertig-Affordance 838BBA gerichtet ist, die Benutzerschnittstelle 801 bildet. In 8CF schließt der Detailbereich 837 eine Fertig-Affordance 838BBB zum Abschließen einer Auswahl von sekundären Zielen ein, so dass, wenn eine CGR-Anwendung, die dem Projekt entspricht, dargestellt wird und ein CGR-Objekt (oder ein beliebiges aus einer Vielzahl von CGR-Objekten), das durch den Trigger als ein primäres Ziel definiert ist, innerhalb eines Schwellenabstands (auch durch den Trigger definiert, der 0 sein kann) eines CGR-Objekts (oder eines einer Vielzahl von CGR-Objekten) erfasst wird, das in dem Ansichtsfenster 831D ausgewählt ist, die eine oder die mehreren Aktionen des Verhaltens durchgeführt werden.
  • 8CF veranschaulicht eine Benutzereingabe 899BY, die auf die Darstellung des CGR-Becher-Objekts 831DA gerichtet ist. In verschiedenen Ausführungsformen entspricht die Benutzereingabe 899BY einem Kontakt (z. B. einem Tippen), der an dem Ort der Darstellung des CGR-Becher-Objekts 831DA erfasst wird.
  • 8CG veranschaulicht die CGR-Datei, die als Reaktion auf das Erfassen der Benutzereingabe 899BY, die auf die Darstellung des CGR-Becher-Objekts 831DA gerichtet ist, die Benutzerschnittstelle 801 bildet. In 8CG ist die Darstellung des CGR-Becher-Objekts 831DA hervorgehoben, was anzeigt, dass das CGR-Becher-Objekt zur Definition als das sekundäre Ziel des Näherungs-/Kollisionstriggers ausgewählt wird.
  • 8CG veranschaulicht eine Benutzereingabe 899BZ, die auf die Fertig-Affordance 838BBB gerichtet ist. In verschiedenen Ausführungsformen entspricht die Benutzereingabe 899BZ einem Kontakt (z. B. einem Tippen), der am Ort der Fertig-Affordance 838BBB erfasst wird. In 8CG schließt der Detailbereich 837 eine Abstandseinstellungs-Affordance 838BBC zum Einstellen des Schwellenabstands des Näherungs-/Kollisionstriggers ein. Durch Setzen des Schwellenabstands auf eine Zahl größer Null wird ein Näherungstrigger erzeugt. Durch Setzen des Schwellenabstands auf Null wird ein Kollisionstrigger erzeugt. Der Detailbereich 837 beinhaltet eine Affordance 838BBD für die Einstellung des volumetrischen Triggers zum Aktivieren oder Deaktivieren einer Einstellung des volumetrischen Triggers des Näherungs-/Kollisionstriggers. Wenn die volumetrische Triggereinstellung aktiviert ist, wenn eine CGR-Anwendung, die dem Projekt entspricht, dargestellt wird und ein beliebiger Punkt auf dem Netz eines CGR-Objekts (oder eines einer Vielzahl von CGR-Objekten), das durch den Trigger als ein primäres Ziel definiert ist, innerhalb eines Schwellenabstands (ebenfalls durch den Trigger definiert) der Mitte (oder eines anderen räumlichen Manipulationspunkts) eines CGR-Objekts (oder eines einer Vielzahl von CGR-Objekten) erfasst wird, das als ein sekundäres Ziel definiert ist, werden die eine oder die mehreren Aktionen des Verhaltens durchgeführt. Wenn die Lautstärke-Triggereinstellung deaktiviert ist, wenn eine CGR-Anwendung, die dem Projekt entspricht, dargestellt wird und eine Mitte (oder ein anderer räumlicher Manipulationspunkt) eines CGR-Objekts (oder eines einer Vielzahl von CGR-Objekten) als ein primäres Ziel durch den Trigger innerhalb eines Schwellenabstands (auch durch den Trigger definiert) der Mitte (oder eines anderen räumlichen Manipulationspunkts) eines CGR-Objekts (oder eines von mehreren CGR-Objekten), das als ein sekundäres Ziel definiert ist, erfasst wird, werden die eine oder die mehreren Aktionen des Verhaltens durchgeführt.
  • Der Detailbereich 837 schließt eine Speicher-Affordance 838BBE zum Speichern des Näherungs-/Kollisionstriggers im zweiten Verhalten (oder zum Speichern von Änderungen am Näherungs-/Kollisionstrigger) und eine Verwerf-Affordance 838BBF zum Verwerfen des Näherungs-/Kollisionstriggers (oder zum Verwerfen von Änderungen am Näherungs-/Kollisionstrigger) ein.
  • 8CH veranschaulicht eine Benutzereingabe 899CA, die auf die Abstandseinstellungs-Affordance 838BBC gerichtet ist. In verschiedenen Ausführungsformen entspricht die Benutzereingabe 899CA einem Kontakt (z. B. einem Tippen), der am Ort der Darstellung der Abstandseinstellungs-Affordance 838BBC erfasst wird.
  • 8CI veranschaulicht die CGR-Datei, die als Reaktion auf das Erfassen der Benutzereingabe 899CA, die auf die Abstandseinstellungs-Affordance 838BBC gerichtet ist (und möglicherweise zusätzliche Benutzereingabe zum Einstellen der Entfernungseinstellung auf Null), die Benutzerschnittstelle 801 bildet. In 8CI zeigt die Abstandseinstellungs-Affordance 838BBC an, dass die Abstandseinstellung auf null eingestellt wurde.
  • 8CI veranschaulicht eine Benutzereingabe 899CB, die auf die Speicher-Affordance 838BBE gerichtet ist. In verschiedenen Ausführungsformen entspricht die Benutzereingabe 899CB einem Kontakt (z. B. einem Tippen), der am Ort der Speicher-Affordance 838BBE erfasst wird. Als Reaktion darauf wird das zweite Verhalten einem Kollisionstrigger zugeordnet, so dass, wenn eine CGR-Anwendung, die dem Projekt entspricht, dargestellt wird und ein beliebiger Punkt des Netzes des CGR-Kugel-Objekts an der Position der Mitte des CGR-Becher-Objekts erfasst wird, die eine oder die mehreren Aktionen des zweiten Verhaltens durchgeführt werden.
  • 8CJ veranschaulicht die CGR-Datei, die als Reaktion auf das Erfassen der Benutzereingabe 899CB, die auf die Speicher-Affordance 838BBE gerichtet ist, die Benutzerschnittstelle 801 bildet. In 8CJ werden die neue Trigger-Affordance 833A (und die Näherungs-/Kollisionstrigger-Affordance 833D) auf die erste Weise angezeigt, die angibt, dass der Detailbereich 837 die Vielzahl von Verhaltenseinstellungs-Affordances 836A-836C zum Ändern von Einstellungen des Verhaltens einschließt.
  • 8CJ veranschaulicht eine Benutzereingabe 899CC, die auf die Neue-Aktions-Affordance 835A gerichtet ist. In verschiedenen Ausführungsformen entspricht die Benutzereingabe 899CC einem Kontakt (z. B. einem Tippen), der am Ort der Darstellung der neuen Aktions-Affordance 835A erfasst wird.
  • 8CK veranschaulicht die CGR-Datei, die als Reaktion auf das Erfassen der Benutzereingabe 899CC, die auf die Neue-Aktions-Affordance 835A gerichtet ist, die Benutzerschnittstelle 801 bildet. In 8CK wird der neue Aktionshinweis 835A auf die zweite Weise angezeigt, um anzugeben, dass der Detailbereich 837 Hinweise zum Erstellen einer neuen Aktion für das Verhalten enthält.
  • Beispielsweise schließt in 8CK der Detailbereich 837 die Aktions-Affordance 839A, die Aktions-Affordance 839B, die Aktions-Affordance 839C und die Aktions-Affordance 839D zum Erstellen anderer Aktionstypen ein.
  • 8CK veranschaulicht eine Benutzereingabe 899CD, die auf die Audioaktions-Affordance 839B gerichtet ist. In verschiedenen Ausführungsformen entspricht die Benutzereingabe 899CD einem Kontakt (z. B. einem Tippen), der an dem Ort der Audioaktions-Affordance 839B erfasst wird.
  • 8CL veranschaulicht die CGR-Datei, die als Reaktion auf das Erfassen der Benutzereingabe 899CD, die auf die Audioaktions-Affordance 839B gerichtet ist, die Benutzerschnittstelle 801 bildet. In 8CK wird die Neue-Aktions-Affordance 835A auf die erste Weise angezeigt, und der Aktionsbereich 835 schließt eine Audio-Aktions-Affordance 835C ein, die auf die zweite Weise angezeigt wird, um anzuzeigen, dass der Detailbereich 837 Affordances zum Erstellen einer Audio-Aktion einschließt.
  • Beispielsweise schließt der Detailbereich 837 eine Umgebungsaudioaktions-Affordance 839BA zum Erzeugen einer Umgebungsaudioaktion ein, so dass, wenn eine CGR-Anwendung, die dem Projekt entspricht, dargestellt wird und ein Trigger des Verhaltens erfasst wird, eine Audiodatei omnidirektional abgespielt wird. Der Detailbereich 837 schließt eine direktionale Audioaktions-Affordance 839BB zum Erzeugen einer direktionalen Audioaktion ein, so dass, wenn eine CGR-Anwendung, die dem Projekt entspricht, dargestellt wird und ein Trigger des Verhaltens erfasst wird, eine Audiodatei von einem bestimmten Punkt in der CGR-Umgebung abgespielt wird. Der Detailbereich 837 schließt eine andere Audioaktions-Affordance 839BC zum Erstellen anderer Arten von Audioaktionen ein.
  • 8CL veranschaulicht eine Benutzereingabe 899CE, die auf die Umgebungsaudioaktions-Affordance 839BB gerichtet ist. In verschiedenen Ausführungsformen entspricht die Benutzereingabe 899CK einem Kontakt (z. B. einem Tippen), der am Ort der Umgebungsaudioaktions-Affordance 839BB erfasst wird.
  • 8CM veranschaulicht die CGR-Datei, die als Reaktion auf das Erfassen der Benutzereingabe 899CE, die auf die Umgebungsaudioaktions-Affordance 839BA gerichtet ist, die Benutzerschnittstelle 801 bildet. In 8CM schließt der Detailbereich 837 eine Audiodateieinstellungs-Affordance 839BAA zum Einstellen der abzuspielenden Audiodatei und eine Lautstärkeeinstellungs-Affordance 839BAB zum Einstellen einer Lautstärke der abzuspielenden Audiodatei ein. Der Detailbereich 837 schließt eine Speicher-Affordance 839BAC zum Speichern der Umgebungsaudioaktion im zweiten Verhalten (oder zum Speichern von Änderungen an der Umgebungsaudioaktion) und eine Affordance 839BAD zum Verwerfen der Umgebungsaudioaktion (oder zum Verwerfen von Änderungen an der Umgebungsaudioaktion) ein.
  • 8CM veranschaulicht eine Benutzereingabe 899CF, die an die Speicher-Affordance 839BAC gerichtet ist. In verschiedenen Ausführungsformen entspricht die Benutzereingabe 899CF einem Kontakt (z. B. einem Tippen), der am Ort der Speicher-Affordance 839BAC erfasst wird.
  • 8CN veranschaulicht die CGR-Datei, die als Reaktion auf das Erfassen der Benutzereingabe 899CF, die auf die Speicher-Affordance 839BAC gerichtet ist, die Benutzerschnittstelle 801 bildet. In 8CN werden die neue Neue-Aktions-Affordance 835A und die Audioaktions-Affordance 835C auf die erste Weise angezeigt, die angibt, dass der Detailbereich 837 die Vielzahl von Verhaltenseinstellungs-Affordances 836A-836C zum Ändern von Einstellungen des Verhaltens enthält.
  • 8CN veranschaulicht eine Benutzereingabe 899CG, die auf die Neue-Aktions-Affordance 835A gerichtet ist. In verschiedenen Ausführungsformen entspricht die Benutzereingabe 899CG einem Kontakt (z. B. einem Tippen), der am Ort der Neue-Aktions-Affordance 835A erfasst wird.
  • 8CO veranschaulicht die CGR-Datei, die als Reaktion auf das Erfassen der Benutzereingabe 899CG, die auf die Neue-Aktions-Affordance 835A gerichtet ist, die Benutzerschnittstelle 801 bildet. In 8CO wird die neue Neue-Aktions-Affordance 835A auf die zweite Weise angezeigt, um anzugeben, dass der Detailbereich 837 Affordances zum Erstellen einer neuen Aktion für das Verhalten enthält.
  • Beispielsweise schließt in 8CO der Detailbereich 837 die Bewegungsaktions-Affordance 839A, die Audioaktions-Affordance 839B, die Szenenänderungsaktions-Affordance 839C und die anderen Aktions-Affordance 839D zum Erstellen anderer Aktionstypen ein.
  • 8CO veranschaulicht eine Benutzereingabe 899CH, die auf die Bewegungsaktions-Affordance 839A gerichtet ist. In verschiedenen Ausführungsformen entspricht die Benutzereingabe 899CH einem Kontakt (z. B. einem Tippen), der am Ort der Bewegungsaktions-Affordance 839A erfasst wird.
  • 8CP veranschaulicht die CGR-Datei, die als Reaktion auf das Erfassen der Benutzereingabe 899CH, die auf die Bewegungsaktions-Affordance 839A gerichtet ist, die Benutzerschnittstelle 801 bildet. In 8CP wird die Neue-Aktions-Affordance 835A auf die erste Weise angezeigt, und der Aktionsbereich 835 schließt eine Bewegungsaktions-Affordance 835D ein, die auf die zweite Weise angezeigt wird, um anzugeben, dass der Detailbereich 837 Affordances zum Erstellen einer Bewegungsaktion einschließt.
  • Beispielsweise schließt in 8CP der Detailbereich 837 die Bewegung-Zu-Aktions-Affordance 839AA, die Bewegung-Von-Aktions-Affordance 839AB, die Dreh-Aktions-Affordance 839AC und die andere Bewegungsaktions-Affordance 839AD zum Erstellen anderer Arten von Handlungen ein.
  • 8CP veranschaulicht eine Benutzereingabe 899CI, die auf die Dreh-Aktions-Affordance 839AC gerichtet ist. In verschiedenen Ausführungsformen entspricht die Benutzereingabe 899CI einem Kontakt (z. B. einem Tippen), der am Ort der Dreh-Aktions-Affordance 839CI erfasst wird.
  • 8CQ veranschaulicht die CGR-Datei, die als Reaktion auf das Erfassen der Benutzereingabe 899CI, die auf die Bewegungsaktions-Affordance 839AC gerichtet ist, die Benutzerschnittstelle 801 bildet. In 8CQ schließt der Detailbereich 837 eine Geschwindigkeitseinstellungs-Affordance 839ACA zum Einstellen der Geschwindigkeit, mit der sich das CGR-Objekt dreht, eine Drehzeiteinstellungs-Affordance 839ACB zum Einstellen einer Zeit, für die sich das CGR-Objekt dreht, und eine Drehachseneinstellungs-Affordance 839ACC zum Einstellen einer Achse, um die sich das CGR-Objekt dreht, ein.
  • Der Detailbereich 837 schließt eine Speicher-Affordance 839ACD zum Speichern der Dreh-Aktion im zweiten Verhalten (oder zum Speichern von Änderungen an der Dreh-Aktion) und eine Verwerf-Affordance 839ACE zum Verwerfen der Dreh-Aktion (oder zum Verwerfen von Änderungen an der Dreh-Aktion) ein.
  • In 8CQ ist die Darstellung des CGR-Kugel-Objekts 831DC hervorgehoben, die angibt, dass das CGR-Kugel-Objekt das CGR-Objekt ist, das sich während der Aktion gedreht wird. Durch Richten einer Benutzereingabe an Darstellungen anderer CGR-Objekte kann das während der Aktion gedrehte CGR-Objekt verändert werden.
  • 8CQ veranschaulicht eine Benutzereingabe 899CJ, die auf die Speicher-Affordance 839ACD gerichtet ist. In verschiedenen Ausführungsformen entspricht die Benutzereingabe 899CJ einem Kontakt (z. B. einem Tippen), der am Ort der Speicher-Affordance 839ACD erfasst wird.
  • 8CR veranschaulicht die CGR-Datei, die als Reaktion auf das Erfassen der Benutzereingabe 899CJ, die auf die Speicher-Affordance 839ACD gerichtet ist, die Benutzerschnittstelle 801 bildet. In 8CR werden die neue Aktions-Affordance 835A und die Aktions-Affordance 835D auf die erste Weise angezeigt, die angibt, dass der Detailbereich 837 die Vielzahl von Verhaltenseinstellungs-Affordances 836 A-836C zum Ändern der Einstellungen des Verhaltens einschließt.
  • 8CR veranschaulicht eine Benutzereingabe 899CK, die auf die Neue-Aktions-Affordance 835A gerichtet ist. In verschiedenen Ausführungsformen entspricht die Benutzereingabe 899CK einem Kontakt (z. B. einem Tippen), der am Ort der Neue-Aktions-Affordance 835A erfasst wird.
  • 8CS veranschaulicht die CGR-Datei, die als Reaktion auf das Erfassen der Benutzereingabe 899CK, die auf die Neue-Aktions-Affordance 835A gerichtet ist, die Benutzerschnittstelle 801 bildet. In 8CS wird die Neue-Aktions-Affordance 835A auf die zweite Weise angezeigt, um anzugeben, dass der Detailbereich 837 Affordances zum Erstellen einer neuen Aktion für das Verhalten einschließt.
  • Beispielsweise schließt in 8CS der Detailbereich 837 die Bewegungsaktions-Affordance 839A, die Audioaktions-Affordance 839B, die Szenenänderungsaktions-Affordance 839C und die Aktions-Affordance 839D zum Erstellen anderer Aktionstypen ein.
  • 8CS veranschaulicht eine Benutzereingabe 899CL, die auf die Szenenänderungsaktions-Affordance 839C gerichtet ist. In verschiedenen Ausführungsformen entspricht die Benutzereingabe 899CL einem Kontakt (z. B. einem Tippen), der am Ort der Szenenänderungsaktions-Affordance 839C erfasst wird.
  • 8CT veranschaulicht die CGR-Datei, die als Reaktion auf das Erfassen der Benutzereingabe 899CL, die auf die Szenenänderungsaktions-Affordance 839C gerichtet ist, die Benutzerschnittstelle 801 bildet. In 8CT wird die Neue-Aktions-Affordance 835A auf die erste Weise angezeigt, und der Aktionsbereich 835 schließt eine Szenenänderungsaktions-Affordance 835E ein, die auf die zweite Weise angezeigt wird, um anzugeben, dass der Detailbereich 837 Affordances zum Erstellen einer Szenenänderungsaktion einschließt.
  • Beispielsweise schließt in 8CT der Detailbereich 837 eine Zielszeneneinstellungs-Affordance 839CA zum Einstellen der CGR ein, in die geändert werden soll. Der Detailbereich 837 schließt eine Speicher-Affordance 839CB zum Speichern der Szenenänderungsaktion im zweiten Verhalten (oder zum Speichern von Änderungen an der Szenenänderungsaktion) und eine Verwerf-Affordance 839CC zum Verwerfen der Szenenänderungsaktion (oder zum Verwerfen von Änderungen an der Szenenänderungsaktion) ein.
  • 8CT veranschaulicht eine Benutzereingabe 899CM, die auf die Speicher-Affordance 839CB gerichtet ist. In verschiedenen Ausführungsformen entspricht die Benutzereingabe 899CM einem Kontakt (z. B. einem Tippen), der am Ort der Speicher-Affordance 839CB erfasst wird.
  • 8CU veranschaulicht die CGR-Datei, die als Reaktion auf das Erfassen der Benutzereingabe 899CM, die an die Speicher-Affordance 839CB gerichtet ist, die Benutzerschnittstelle 801 bildet. In 8CU werden die Neue-Aktions-Affordance 835A und die Szenenänderungsaktions-Affordance 835E auf die erste Weise angezeigt, die angibt, dass der Detailbereich 837 die Vielzahl von Verhaltenseinstellungs-Affordances 836A-836C zum Ändern von Einstellungen des Verhaltens enthält.
  • Wenn eine CGR-Anwendung, die dem Projekt entspricht, dargestellt wird und ein Trigger eines Verhaltens erfasst wird, wird jede Aktion des Verhaltens in der Reihenfolge durchgeführt, die in dem Aktionsbereich 835 angezeigt wird. Somit spielt die Vorrichtung 100 für das zweite Verhalten, wie in 8CU veranschaulicht, wenn der Näherungs-/Kollisionstrigger erfasst wird, die Audiodatei ab, dann, sobald die Audiodatei abgeschlossen ist, dreht sich das CGR-Kugel-Objekt, dann, sobald die durch die Drehzeiteinstellung definierte Drehzeit abgelaufen ist, ändert sich die CGR-Szene. Jedoch können, wie nachstehend beschrieben, die Aktionen für das Verhalten umgeordnet und gruppiert werden, um den Zeitpunkt der Aktionen zu ändern.
  • 8CU veranschaulicht eine Benutzereingabe 899CN, die auf die Bewegungsaktions-Affordance 835D gerichtet ist. In verschiedenen Ausführungsformen entspricht die Benutzereingabe 899CN einem beweglichen Kontakt (z. B. einem Ziehen oder Berühren und Ziehen), der mit einer Startposition an der Position der Bewegungsaktions-Affordance 835D und einer Endposition links von der Audioaktions-Affordance 835C erfasst wird.
  • 8CV veranschaulicht die CGR-Datei, die als Reaktion auf das Erfassen der Benutzereingabe 899CN, die auf die Bewegungsaktions-Affordance 835D gerichtet ist, die Benutzerschnittstelle 801 bildet. Innerhalb des Aktionsbereichs 835 werden die Aktions-Affordances so umgeordnet, dass sich die Bewegungsaktions-Affordance 835D links von der Audioaktions-Affordance 835C befindet. Dementsprechend dreht für das zweite Verhalten, wie in 8CV veranschaulichen, wenn der Näherungs-/Kollisionstrigger erfasst wird, die Vorrichtung 100 das CGR-Kugel-Objekt, dann wird, sobald die durch die Drehzeiteinstellung definierte Drehzeit abgelaufen ist, die Audiodatei abgespielt, dann ändert sich, sobald die Audiodatei abgeschlossen ist, die CGR-Szene.
  • 8CV veranschaulicht eine Benutzereingabe 899CO, die auf die Audioaktions-Affordance 835C gerichtet ist. In verschiedenen Ausführungsformen entspricht die Benutzereingabe 899CO einem beweglichen Kontakt (z. B. einem Ziehen oder Berühren und Ziehen), der mit einer Startposition an der Position der Audioaktions-Affordance 835C und einer Endposition an der Position der Bewegungsaktions-Affordance 835D erfasst wird.
  • 8CW veranschaulicht die CGR-Datei, die als Reaktion auf das Erfassen der Benutzereingabe 899CO, die auf die Audioaktions-Affordance 835C gerichtet ist, die Benutzerschnittstelle 801 bildet.
  • Innerhalb des Aktionsbereichs 835 werden die Audioaktions-Affordance 835C und die Bewegungsaktions-Affordance 835D durch eine gruppierte Aktions-Affordance 835X ersetzt, die für die Audioaktions-Affordance 835C und die Bewegungsaktions-Affordance 835D repräsentativ ist. Dementsprechend ändert die Vorrichtung 100 für das zweite Verhalten, wie in 8CW veranschaulicht, wenn der Näherungs-/Kollisionstrigger erfasst wird, gleichzeitig das CGR-Kugel-Objekt und spielt die Audiodatei ab, und dann, sobald die durch die Drehzeiteinstellung definierte Drehzeit abgelaufen ist und die Audiodatei abgeschlossen ist, ändert die Vorrichtung 100 die CGR-Szene.
  • 8CW veranschaulicht eine Benutzereingabe 899CP, die an die OK-Affordance 831E gerichtet ist. In verschiedenen Ausführungsformen entspricht die Benutzereingabe 899CP einem Kontakt (z. B. einem Tippen), der am Ort der OK-Affordance 831E erfasst wird.
  • 8CX veranschaulicht die CGR-Datei, die als Reaktion auf das Erfassen der Benutzereingabe 899CP, die auf die OK-Affordance 831E gerichtet ist, die Benutzerschnittstelle 801 bildet. In 8CX wird die Verhaltenseditor-Benutzerschnittstelle 831 verworfen und eine erste Verhaltens-Affordance 803CB (mit der durch das erste Verhalten angegebenen Farbe) im Verhaltensbereich 803C angezeigt.
  • In 8CX wird das zweite Verhalten ausgewählt, wie durch die zweite Verhaltens-Affordance 803CB angegeben, die auf eine ausgewählte Weise angezeigt wird (z. B. mit einem dickeren Rand als auf eine nicht ausgewählte Weise von zum Beispiel der ersten Verhaltens-Affordance 803CA). Da das zweite Verhalten ausgewählt ist, zeigt die Darstellung der zweiten CGR-Szene im Ansichtsbereich 803E die CGR-Objekte an, die den Triggern des ersten Verhaltens unter Verwendung einer ersten Hervorhebung (z. B. einem Glimmen) zugeordnet sind, und die CGR-Objekte, die den Aktionen des ersten Verhaltens unter Verwendung einer zweiten Hervorhebung (z. B. diagonales Hashen) zugeordnet sind. Dementsprechend werden die Darstellung des CGR-Kugel-Objekts 806D und die Darstellung des CGR-Becher-Objekts 806B beide mit der ersten Hervorhebung angezeigt (da CGR-Kugel-Objekt, das mit der Mitte des CGR-Becher-Objekts kollidiert, ein Trigger des zweiten Verhaltens ist). Ferner wird die Darstellung des CGR-Kugel-Objekts 806D auch mit der zweiten Hervorhebung angezeigt (da das Drehen des CGR-Kugel-Objekts eine Aktion des zweiten Verhaltens ist). Der Ansichtsbereich 803E schließt auch einen Off-Screen-Aktionsindikator 803EC ein, der angibt, dass das Verhalten eine oder mehrere Aktionen mit Zielen einschließt, die nicht angezeigt werden (z. B. CGR-Off-Screen-Objekte oder nicht angezeigte Elemente, wie die Audiodateiwiedergabe und die Szenenänderung).
  • 8CX veranschaulicht eine Benutzereingabe 899CQ, die auf die Vorschau-Affordance 803AD gerichtet ist. In verschiedenen Ausführungsformen entspricht die Benutzereingabe 899CQ einem Kontakt (z. B. einem Tippen), der am Ort der Vorschau-Affordance 803AD erfasst wird.
  • 8CY veranschaulicht die CGR-Datei, die als Reaktion auf das Erfassen der Benutzereingabe 899CQ, die auf die Vorschau-Affordance 803AD gerichtet ist, die Benutzerschnittstelle 801 bildet. In 8CY schließt die CGR-Datei, die Benutzerschnittstelle 801 bildet, eine Vorschau-Benutzerschnittstelle 802D ein. Die Vorschau-Benutzerschnittstelle 802D schließt eine Darstellung der Tabelle 802DBA innerhalb des Vorschauanzeigebereichs 802DB ein.
  • 8CZ veranschaulicht die CGR-Datei, die als Reaktion darauf, dass die Vorrichtung 100 einen Abschnitt des Szenenkamerabildes (z. B. die Darstellung der Tabelle 802DBA) einschließlich einer horizontalen Ebene erfasst, die der Anker der zweiten CGR-Szene ist, die Benutzerschnittstelle 801 bildet. In 8CZ schließt der Vorschauanzeigebereich 802DB die zweite CGR-Szene (einschließlich des CGR-Becher-Objekts 840A, des CGR-Platten-Objekts 840B und des CGR-Kugel-Objekts 840C) ein, die in der Darstellung der Tabelle 802DBA verankert angezeigt wird.
  • 8DA veranschaulicht die CGR-Datei, die als Reaktion auf das Bewegen der Vorrichtung 100 innerhalb der physischen Umgebung näher an die Tabelle die Benutzerschnittstelle 801 bildet. In 8DA schließt der Vorschauanzeigebereich 802DB die Darstellung der zweiten CGR-Szene (einschließlich des CGR-Becher-Objekts 840A, des CGR-Platten-Objekts 840B und des CGR-Kugel-Objekts 840C) und die Darstellung der Tabelle 802DBA, die größer angezeigt wird, ein.
  • 8DB veranschaulicht die CGR-Datei, welche die Benutzerschnittstelle 801 als Reaktion auf das Bewegen der Vorrichtung 100 innerhalb der physischen Umgebung um die Tabelle herum zu einer Seite der Tabelle bildet. In 8L hat sich die Perspektive der Vorrichtung 100 geändert (wodurch die Darstellung der Tabelle 802DBA aus der anderen Perspektive zu sehen ist) und die Perspektive einer virtuellen Kamera zum Rendern der zweiten CGR-Szene wird ähnlich geändert. Dementsprechend werden das CGR-Becher-Objekt 840A, das CGR-Platten-Objekt 840B und das CGR-Kugel-Objekt 840C an verschiedenen Orten im Vorschauanzeigebereich 802DB angezeigt.
  • 8DC veranschaulicht die CGR-Datei, die als Reaktion auf das Erfassen, dass der Benutzer nach einer ersten Zeitspanne bläst, die Benutzerschnittstelle 801 bildet. Da Blasen ein Trigger des ersten Verhaltens ist, führt die Vorrichtung 100 die Aktion des ersten Verhaltens durch, wodurch das CGR-Kugel-Objekt 840C vorwärts bewegt wird. Dementsprechend wird in 8DC das CGR-Kugel-Objekt 840C näher an das CGR-Becher-Objekt 840A und das CGR-Platten-Objekt 840B innerhalb des Vorschauanzeigebereichs 802DB bewegt und angezeigt.
  • 8DD veranschaulicht die CGR-Datei die als Reaktion auf das Erfassen, dass der Benutzer nach einer zweiten Zeitspanne bläst, die Benutzerschnittstelle 801 bildet. In 8DC wird das CGR-Kugel-Objekt 840C noch weiter nach vorne zu einem Punkt bewegt (und im Vorschauanzeigebereich 802DB angezeigt), an dem das Netz des CGR-Kugel-Objekts 840C die Mitte des CGR-Kugel-Objekts 840A schneidet.
  • 8DE veranschaulicht die CGR-Datei, die als Reaktion auf das Erfassen des CGR-Kugel-Objekts 840C, das die Mitte des CGR-Becher-Objekts 840A schneidet, die Benutzerschnittstelle 801 bildet. Da das CGR-Kugel-Objekt 840C, das die Mitte des CGR-Becher-Objekts 840A schneidet, ein Trigger des zweiten Verhaltens ist, führt die Vorrichtung 100 die Aktionen des zweiten Verhaltens in ihrer definierten Reihenfolge durch. Somit dreht sich in 8DE das CGR-Kugel-Objekt 840C innerhalb des CGR-Becher-Objekts 840A für eine Drehzeit, während eine Audiodatei abgespielt wird.
  • 8DF veranschaulicht die CGR-Datei, die als Reaktion darauf, dass die Drehzeit abläuft und die Wiedergabe der Audiodatei abgeschlossen ist, die Benutzerschnittstelle 801 bildet. In 8DF wird, da das zweite Verhalten eine Szenenänderungsaktion einschließt, die zweite CGR-Szene durch die dritte CGR-Szene 840D ersetzt, die in dem Vorschauanzeigebereich 802DB angezeigt wird, der in der Darstellung der Tabelle 802DBA verankert ist.
  • In verschiedenen Ausführungsformen schließt die CGR-Datei, welche die Benutzerschnittstelle 801 bildet, eine Affordance zum Speichern des Projekts als Projektdatei ein, die von der CGR-Datei, welche die Anwendung bildet, die von der Vorrichtung 100 ausgeführt wird, gelesen und über die CGR-Datei, welche die Benutzerschnittstelle 801 bildet, wie oben beschrieben dargestellt werden kann.
  • In verschiedenen Ausführungsformen schließt die CGR-Datei, die Benutzerschnittstelle 801 bildet, eine Affordance zum Kompilieren des Projekts als eine CGR-Datei ein, die von einer CGR-darstellenden Anwendung gelesen werden kann, die von der Vorrichtung 100 oder einer anderen Vorrichtung, wie der elektronischen Vorrichtung 520A oder einer HMD, ausgeführt wird.
  • In verschiedenen Ausführungsformen schließt die CGR-Datei eine XML- (Extensible Markup Language) oder JSON- (JavaScript Object Notation) Datei ein, die den CGR-Inhalt beschreibt und sich auf verschiedene Datenstrukturen (z. B. Anzeigenetze, Physiknetze, Texturen, Bilder, Audio usw.) bezieht, die ebenfalls in der CGR-Datei eingeschlossen sind.
  • 9 ist eine Flussdiagramm-Darstellung eines Verfahrens 900 zur Darstellung einer CGR-Szene unter Verwendung eines Backup-Ankers gemäß einigen Ausführungsformen. In verschiedenen Ausführungsformen wird das Verfahren 900 von einer Vorrichtung mit einem oder mehreren Prozessoren, einem nichtflüchtigen Speicher, einer Szenenkamera, einer Anzeige und einer oder mehreren Eingabevorrichtungen (z. B. der tragbaren Multifunktionsvorrichtung 100 von 1A oder einer HMD) durchgeführt. In einigen Ausführungsformen wird das Verfahren 900 von einer Verarbeitungslogik, einschließlich Hardware, Firmware, Software oder einer Kombination davon, durchgeführt. In einigen Ausführungsformen wird das Verfahren 900 von einem Prozessor durchgeführt, der Anweisungen (z. B. Code) ausführt, die in einem nichtflüchtigen computerlesbaren Medium (z. B. einem Speicher) gespeichert sind.
  • Das Verfahren 900 beginnt bei Block 910, wobei die Vorrichtung über die eine oder die mehreren Eingabevorrichtungen eine Benutzereingabe empfängt, um eine Szene der computergenerierten Realität (CGR) darzustellen, die ein oder mehrere CGR-Objekte einschließt, wobei die CGR-Szene einem ersten Anker und einem zweiten Anker zugeordnet ist. Beispielsweise erfasst in 8H die Vorrichtung 100 die Benutzereingabe 899H, die auf die Vorschau-Affordance 803AD gerichtet ist, um die erste CGR-Szene einschließlich des CGR-Karo-Objekts darzustellen, wobei die erste CGR-Szene einem Primäranker eines Ankerbildes (wie durch die Primäranker-Affordance 803DBA angegeben) und einem Sekundäranker einer horizontalen Ebene (wie durch die Sekundäranker-Affordance 803DBC angegeben) zugeordnet ist.
  • In verschiedenen Ausführungsformen ist der erste Anker ein Ankerbild und der zweite Anker ist eine horizontale Ebene oder vertikale Ebene. In verschiedenen Ausführungsformen wird die CGR-Szene dem Ankerbild zugeordnet, indem eine Bilddatei ausgewählt wird. In verschiedenen Ausführungsformen wird die CGR-Szene dem Ankerbild zugeordnet, indem das Ankerbild unter Verwendung der Kamera erfasst wird.
  • In verschiedenen Ausführungsformen ist der erste Anker eine Tischplatte oder ein Boden und der zweite Anker ist eine horizontale Ebene.
  • Das Verfahren 900 wird bei Block 920 fortgesetzt, indem die Vorrichtung unter Verwendung der Kamera ein Bild einer physischen Umgebung erfasst. Beispielsweise zeigt in 81 die Vorrichtung 100 den Vorschauanzeigebereich 802DB an, der ein von der Vorrichtung 100 aufgenommenes Szenenkamerabild einer physischen Umgebung einschließt.
  • Das Verfahren 900 setzt bei Block 930 fort, wobei die Vorrichtung bestimmt, dass dem Abbild der physischen Umgebung ein Abschnitt fehlt, der dem ersten Anker entspricht. Beispielsweise schließt in 8L der Vorschauanzeigebereich 802DB ein Szenenkamerabild ein, dem ein Abschnitt fehlt, der dem Primäranker der ersten CGR-Szene entspricht, z. B. ein Bild des Karo-Asses.
  • Das Verfahren 900 wird bei Block 940 fortgesetzt, wobei die Vorrichtung einen Abschnitt des Bildes der physischen Umgebung erfasst, der dem zweiten Anker entspricht. Beispielsweise schließt in 8L der Vorschauanzeigebereich 802DB ein Szenenkamerabild ein, das einen Abschnitt einschließt, der dem Sekundäranker der ersten CGR-Szene, z. B. einer horizontalen Ebene, wie der Darstellung der Tabelle 802DBA, entspricht.
  • Das Verfahren 900 wird bei Block 950 fortgesetzt, wobei die Vorrichtung als Reaktion auf das Bestimmen, dass dem Bild der physischen Umgebung ein Abschnitt fehlt, der dem ersten Anker entspricht, und das Erfassen eines Abschnitts des Bildes der physischen Umgebung, der dem zweiten Anker entspricht, die CGR-Szene auf einer Anzeige, an einem Ort der Anzeige, die dem zweiten Anker entspricht, anzeigt. Beispielsweise schließt in 8M der Vorschauanzeigebereich 802DB die erste CGR-Szene (einschließlich des CGR-Karo-Objekts 802DBD) ein, die an dem Ort der Darstellung der Tabelle 802DBA angezeigt wird.
  • In verschiedenen Ausführungsformen schließt das Anzeigen der CGR-Szene an dem Ort der Anzeige, die dem zweiten Anker entspricht, das Anzeigen des Bildes der physischen Umgebung und das Anzeigen der CGR-Szene an dem Abschnitt des Bildes der physischen Umgebung, der dem zweiten Anker entspricht, ein.
  • In verschiedenen Ausführungsformen schließt das Anzeigen der CGR-Szene an dem Ort der Anzeige, die dem zweiten Anker entspricht, das Anzeigen der CGR-Szene an einem Ort einer optischen Durchgangsanzeige (z. B. einer transparenten Anzeige) ein, an der ein Benutzer den zweiten Anker sehen kann.
  • In verschiedenen Ausführungsformen schließt das Anzeigen der CGR-Szene an dem Ort der Anzeige, die dem zweiten Anker entspricht, das Anzeigen der CGR-Szene ein, die am zweiten Anker verankert ist. In verschiedenen Ausführungsformen, wobei als Reaktion auf eine Änderung der Perspektive der Kamera die Anzeige der CGR-Szene auf der Anzeige entsprechend geändert wird. Beispielsweise wird in 8DA und 8DB die zweite CGR-Szene auf der Oberseite des Tisches verankert angezeigt, und als Reaktion auf die Bewegung der Vorrichtung 100 wird die Anzeige der zweiten CGR-Szene entsprechend geändert.
  • In verschiedenen Ausführungsformen entspricht der Abschnitt des Bildes der physischen Umgebung einem physischen Objekt, und als Reaktion auf eine Bewegung des physischen Objekts wird die Anzeige der CGR-Szene entsprechend auf der Anzeige bewegt. Beispielsweise wird in 8J und 8K die erste CGR-Szene in der Darstellung der Karo-Ass-Spielkarte 802DBB verankert angezeigt und als Reaktion auf die Bewegung der Karo-Ass-Spielkarte wird die Anzeige der ersten CGR-Szene (einschließlich des CGR-Karo-Objekts) entsprechend auf der Anzeige bewegt.
  • In verschiedenen Ausführungsformen wird das Anzeigen der CGR-Szene an dem Ort der Anzeige, die dem zweiten Anker entspricht, als Reaktion auf das Bestimmen durchgeführt, dass einer Vielzahl von Bildern der physischen Umgebung, die über eine Schwellenzeitdauer aufgenommen wurden, jeweils ein Abschnitt fehlt, der dem ersten Anker entspricht. Beispielsweise wird in 8M die erste CGR-Szene als Reaktion auf das Erfassen einer Darstellung einer horizontalen Ebene in einem Abschnitt des Szenenkamerabildes und in verschiedenen Ausführungsformen als Reaktion auf das Fehlschlagen des Erfassens eines Abschnitts des Szenenkamerabildes, der mit dem Ankerbild übereinstimmt, für mindestens eine Schwellenzeitdauer z. B. 3 Sekunden, angezeigt.
  • In verschiedenen Ausführungsformen ist die CGR-Szene einem dritten Anker zugeordnet, und das Bestimmen, dass dem Bild der physischen Umgebung ein Abschnitt fehlt, der dem ersten Anker entspricht, wird als Reaktion auf das Bestimmen durchgeführt, dass dem Bild der physischen Umgebung ein Abschnitt fehlt, der dem dritten Anker entspricht. Beispielsweise veranschaulicht 8F eine Tertiäranker-Affordance 803DBD zum Definieren eines Tertiärankers. In verschiedenen Ausführungsformen mit einem Tertiäranker, der für die CGR-Szene definiert ist, entspricht der Primäranker dem dritten Anker des Verfahrens 900, der Sekundäranker entspricht dem ersten Anker des Verfahrens 900 und der Tertiäranker entspricht dem zweiten Anker des Verfahrens 900. In verschiedenen Ausführungsformen ohne einen Tertiäranker, der für die CGR-Szene definiert ist, entspricht der Primäranker dem ersten Anker des Verfahrens 900 und der Sekundäranker entspricht dem zweiten Anker des Verfahrens 900.
  • 10 ist eine Flussdiagrammdarstellung eines Verfahrens 1000 zur Konfiguration eines CGR-Objekts gemäß einigen Ausführungsfonnen. In verschiedenen Ausführungsformen wird das Verfahren 1000 von einer Vorrichtung mit einem oder mehreren Prozessoren, einem nichtflüchtigen Speicher, einer Anzeige und einer oder mehreren Eingabevorrichtungen (z. B. der tragbaren Multifunktionsvorrichtung 100 von 1A oder einer HMD) durchgeführt. In einigen Ausführungsformen wird das Verfahren 1000 von einer Verarbeitungslogik, einschließlich Hardware, Firmware, Software oder einer Kombination davon, durchgeführt. In einigen Ausführungsformen wird das Verfahren 1000 von einem Prozessor durchgeführt, der Anweisungen (z. B. Code) ausführt, die in einem nichtflüchtigen computerlesbaren Medium (z. B. einem Speicher) gespeichert sind.
  • Das Verfahren 1000 beginnt bei Block 1010, indem die Vorrichtung auf einer Anzeige eine Darstellung eines Objekts der computergenerierten Realität (CGR) anzeigt, das einem ersten Parameter und einem zweiten Parameter zugeordnet ist, wobei der erste Parameter einen ersten aus einer Vielzahl von ersten Parameterwerten aufweist und der zweite Parameter einen ersten aus einer Vielzahl von zweiten Parameterwerten aufweist. Beispielsweise zeigt die Vorrichtung 100 in 8X die Darstellung des aktuell ausgewählten CGR-Objekts 808DA, z. B. des CGR-Becher-Objekts an, wobei das CGR-Becher-Objekt einem ersten Parameter (z. B. Stil) und einem zweiten Parameter (z. B. Muster) zugeordnet ist. Der erste Parameter weist einen ersten aus der Vielzahl von ersten Parameterwerten (z. B. den „Tassen“ -Wert aus den in der Stilleiste 808E aufgeführten) und einen ersten aus der Vielzahl von zweiten Parameterwerten (z. B. den „Weiß“ -Wert aus den in Musterleiste 808F aufgeführten) auf.
  • Das Verfahren 1000 wird in Block 1020 fortgesetzt, wobei die Vorrichtung auf der Anzeige ein erstes Benutzerschnittstellenelement zur Auswahl eines zweiten der Vielzahl von ersten Parameterwerten anzeigt. Beispielsweise zeigt die Vorrichtung 100 in 8X die Stilleiste 808E einschließlich einer Vielzahl von Stil-Affordances 808EA-808ED zum Ändern eines aktuell ausgewählten Stils der Stilleiste 808E an.
  • Das Verfahren 1000 wird in Block 1030 fortgesetzt, wobei die Vorrichtung auf der Anzeige ein zweites Benutzerschnittstellenelement zur Auswahl eines zweiten der Vielzahl von zweiten Parameterwerten anzeigt, wobei basierend auf dem ersten der Vielzahl von ersten Parameterwerten und einer oder mehreren Auswahlregeln eine Teilmenge der Vielzahl von zweiten Parameterwerten zur Auswahl über das zweite Benutzerschnittstellenelement dargestellt wird. Beispielsweise zeigt die Vorrichtung 100 in 8X die Musterleiste 808F einschließlich einer Vielzahl von Muster-Affordances 808FA-808FD zum Ändern eines aktuell ausgewählten Musters der Musterleiste 808F an. In 8X ist der Becherstil der aktuell ausgewählte Stil des Stilleiste 808E und das Weiß-Muster ist das aktuell ausgewählte Muster der Musterleiste 808F. Basierend darauf, dass der aktuell ausgewählte Stil der Tassenstil ist, wird eine Teilmenge der Muster-Affordances 808FA-808FD zur Auswahl dargestellt. Insbesondere werden die Stern-Affordance 808FC und die Efeu-Affordance 808FD zur Auswahl dargestellt, wie durch den zweiten Anzeigestil angezeigt, während die Glas-Affordance 808FB nicht zur Auswahl dargestellt wird, da sie ausgegraut ist.
  • In verschiedenen Ausführungsformen schließt das zweite Benutzerschnittstellenelement einen Satz auswählbarer Affordances, die der Teilmenge der Vielzahl von zweiten Parametern entsprechen, und einen Satz nicht auswählbarer Affordances, die den anderen der Vielzahl von zweiten Parametern entsprechen, ein. Beispielsweise schließt in 8X die Musterleiste 808F einen Satz auswählbarer Affordances (z. B. die Stern-Affordance 808FC und die Efeu-Affordance 808FD) und einen Satz nicht auswählbarer Affordances (z. B. die Glas-Affordance 808FB) ein.
  • In verschiedenen Ausführungsformen wird der Satz auswählbarer Affordances auf eine erste Weise angezeigt, und der Satz nicht auswählbarer Affordances wird auf eine zweite Weise angezeigt, die sich von der ersten Weise unterscheidet. Beispielsweise werden in 8X die Stern-Affordance 808FC und die Efeu-Affordance 808FD weiß angezeigt, die Glas-Affordance 808FB grau angezeigt wird.
  • In verschiedenen Ausführungsformen schließt das Verfahren 1000 ferner das Empfangen, über eine oder mehrere Eingabevorrichtungen, einer Benutzereingabe, die einen zweiten der Vielzahl von ersten Parameterwerten auswählt, und das Aktualisieren der Anzeige des zweiten Benutzerschnittstellenelements ein, wobei basierend auf dem zweiten der Vielzahl von ersten Parameterwerten und der einen oder den mehreren Auswahlregeln eine zweite Teilmenge der Vielzahl von zweiten Parametern zur Auswahl über das zweite Benutzerschnittstellenelement dargestellt wird. In 8X erkennt das Gerät 100 zum Beispiel die Benutzereingabe 899T, die an die Espresso-Affordance 808EC gerichtet ist. Ferner zeigt die Vorrichtung 100 in 8Y die Musterleiste 808F mit der zur Auswahl verfügbaren Glas-Affordance 808FB und der zur Auswahl nicht verfügbaren Sternen-Affordance 808FC und Efeu-Affordance 808FD an.
  • In verschiedenen Ausführungsformen schließt das Verfahren 1000 ferner das Aktualisieren der Anzeige der Darstellung des CGR-Objekts ein. Beispielsweise zeigt in 8Y die Vorrichtung 100 die Darstellung des aktuell ausgewählten CGR-Objekts 808 A, z. B. des CGR-Becher-Objekts, mit einer anderen Form an (z. B. statt als Becher als Espressotasse).
  • In verschiedenen Ausführungsformen schließt das Verfahren 1000 das Empfangen einer Benutzereingabe ein, die den ersten Parameter des CGR-Objekts auf den zweiten der Vielzahl von ersten Parameterwerten aktualisiert. Beispielsweise erfasst in 8AA die Vorrichtung 100 die Benutzereingabe 899W, die auf die OK-Affordance 808G gerichtet ist, wodurch der Stilparameter des CGR-Becher-Objekts vom „Tasse“--Wert auf den „Teetassen“-Wert aktualisiert wird, wie in 8AB gezeigt.
  • In verschiedenen Ausführungsformen schließt das Verfahren 1000 ferner das Anzeigen, auf der Anzeige, einer Vielzahl von Ansichts-Affordances, einschließlich einer Objektansichts-Affordance zum Wechseln in einen Objektansichtsmodus, in dem Benutzereingaben, die auf das CGR-Objekt gerichtet sind, eine Perspektive der Anzeige der Darstellung des CGR-Objekts ändern, und einer CGR-Ansichts-Affordance zum Wechseln in einen CGR-Ansichtsmodus, in dem eine Bewegung der Anzeige eine Perspektive der Anzeige der Darstellung des CGR-Objekts ändert, ein. Beispielsweise zeigt in 8X die Vorrichtung 100 die Objektansichts-Affordance 808A und die CGR-Ansichts-Affordance 808B an.
  • In verschiedenen Ausführungsformen ist das CGR-Objekt ferner einem dritten Parameter zugeordnet, wobei der dritte Parameter einen ersten aus einer Vielzahl von dritten Parameterwerten aufweist, ferner umfassend das Anzeigen auf der Anzeige eines dritten Benutzerschnittstellenelements zur Auswahl eines zweiten aus der Vielzahl von dritten Parameterwerten, wobei basierend auf dem ersten der Vielzahl von ersten Parameterwerten, dem ersten der Vielzahl von zweiten Parameterwerten und der einen oder den mehreren Auswahlregeln eine Teilmenge der Vielzahl von dritten Parameterwerten zur Auswahl über das dritte Benutzerschnittstellenelement dargestellt wird.
  • 11 ist eine Flussdiagrammdarstellung eines Verfahrens 1100 zur Auflösung der Überlappung von zwei CGR-Objekten gemäß einigen Ausführungsformen. In verschiedenen Ausführungsformen wird das Verfahren 1100 von einer Vorrichtung mit einem oder mehreren Prozessoren, einem nichtflüchtigen Speicher, einer Anzeige und einer oder mehreren Eingabevorrichtungen (z. B. der tragbaren Multifunktionsvorrichtung 100 von 1A oder einer HMD) durchgeführt. In einigen Ausführungsformen wird das Verfahren 1100 von einer Verarbeitungslogik, einschließlich Hardware, Firmware, Software oder einer Kombination davon, durchgeführt. In einigen Ausführungsformen wird das Verfahren 1100 von einem Prozessor durchgeführt, der Anweisungen (z. B. Code) ausführt, die in einem nichtflüchtigen computerlesbaren Medium (z. B. einem Speicher) gespeichert sind.
  • Das Verfahren 1100 beginnt bei Block 1110, indem die Vorrichtung auf einer Anzeige eine Darstellung einer CGR-Szene anzeigt, einschließlich des Anzeigens jeweiliger Darstellungen einer Vielzahl von CGR-Objekten der CGR-Szene. Beispielsweise zeigt in 8AF die Vorrichtung 100 eine Darstellung der zweiten CGR-Szene an, einschließlich des Anzeigens der Darstellung des CGR-Platten-Objekts 806B und der Darstellung des CGR-Becher-Objekts 806C.
  • Das Verfahren 1100 setzt bei Block 1120 fort, wobei die Vorrichtung bestimmt, dass sich zwei der Vielzahl von CGR-Objekten in der CGR-Szene überlappen. In verschiedenen Ausführungsformen wird das Bestimmen, dass sich die zwei der Vielzahl von CGR-Objekten in der CGR-Szene überlappen, periodisch durchgeführt. In verschiedenen Ausführungsformen wird das Bestimmen, dass sich die zwei der Vielzahl von CGR-Objekten in der CGR-Szene überlappen, als Reaktion auf eine Benutzereingabe durchgeführt, die eines der Vielzahl von CGR-Objekten räumlich manipuliert. Beispielsweise wird in 8AF im Vergleich zu 8AD die Position des CGR-Becher-Objekts geändert (z. B. das CGR-Becher-Objekt wird bewegt) als Reaktion auf die Benutzereingabe 899Z, die auf die Darstellung des CGR-Becher-Objekts 806C gerichtet ist). In verschiedenen Ausführungsformen wird das Bestimmen, dass sich die zwei der Vielzahl von CGR-Objekten in der CGR-Szene überlappen, als Reaktion auf eine Benutzereingabe durchgeführt, die eine Überlappungsprüfung anfordert.
  • Das Verfahren 1100 wird bei Block 1130 fortgesetzt, wobei die Vorrichtung auf der Anzeige in Verbindung mit mindestens einer jeweiligen Darstellung der zwei der Vielzahl von CGR-Objekten einen Indikator anzeigt, dass sich die zwei der Vielzahl von CGR-Objekten in der CGR-Szene überlappen. Beispielsweise zeigt in 8AF die Vorrichtung 100 den ersten Überlappungsindikator 809A in Form einer Benachrichtigungsblase an, die mit der Darstellung des CGR-Becher-Objekts 806C gekoppelt ist, und den zweiten Überlappungsindikator 809B in Form einer Schattierung, eines Glühens, einer Schraffur oder einer anderen Hervorhebung, die über die Darstellung des CGR-Becher-Objekts 806C und der Darstellung des CGR-Platten-Objekts 806B gelegt ist.
  • In verschiedenen Ausführungsformen wird die Überlappungsangabe in Verbindung mit beiden der jeweiligen Darstellungen der zwei der Vielzahl von CGR-Objekten angezeigt. Beispielsweise wird in 8AF der zweite Überlappungsindikator 809B sowohl über der Darstellung des CGR-Becher-Objekts 806C als auch über der Darstellung des CGR-Platten-Objekts 806B angezeigt.
  • In verschiedenen Ausführungsformen wird die Überlappungsangabe in Verbindung mit einem Ort angezeigt, an dem sich die zwei der Vielzahl von CGR-Objekten in der CGR-Szene überlappen. Beispielsweise wird in 8AF der zweite Überlappungsindikator 809B über dem Ort angezeigt, an dem sich die Darstellung des CGR-Becher-Objekts 806C und die Darstellung des CGR-Platten-Objekts 806B überlappen.
  • In verschiedenen Ausführungsformen schließt die Überlappungsangabe eine Hervorhebung ein, die über der mindestens einen jeweiligen Darstellung der zwei der Vielzahl von CGR-Objekten angezeigt wird. Beispielsweise wird in 8AF der zweite Überlappungsindikator 809B sowohl über der Darstellung des CGR-Becher-Objekts 806C als auch über der Darstellung des CGR-Platten-Objekts 806B angezeigt.
  • In verschiedenen Ausführungsformen schließt die Überlappungsangabe ein Benachrichtigungsbenutzerelement ein, das in der Nähe der mindestens einen jeweiligen Darstellung der zwei der Vielzahl von CGR-Objekten angezeigt wird. Beispielsweise zeigt in 8AF die Vorrichtung 100 den ersten Überlappungsindikator 809A in Form einer Benachrichtigungsblase in der Nähe und gekoppelt mit der Darstellung des CGR-Becher-Objekts 806C an.
  • In verschiedenen Ausführungsformen schließt das Verfahren 1100 ferner das Empfangen, über eine oder mehrere Eingabevorrichtungen, einer Benutzereingabe ein, die auf die Überlappungsangabe gerichtet ist. Beispielsweise erfasst in 8AF die Vorrichtung 100 die Benutzereingabe 899AA, die an den ersten Überlappungsindikator 809A gerichtet ist. Das Verfahren 1100 schließt ferner als Reaktion auf das Empfangen der Benutzereingabe, die auf die Überlappungsangabe gerichtet ist, das Anzeigen einer Ignorier-Affordance ein. Beispielsweise zeigt in 8AG die Vorrichtung 100 die Ignorier-Affordance 810D an. Das Verfahren 1100 schließt ferner das Empfangen, über die eine oder die mehreren Eingabevorrichtungen, einer Benutzereingabe, die auf die Ignorier-Affordance gerichtet ist, und als Reaktion auf das Empfangen der Benutzereingabe, die auf die Ignorier-Affordance gerichtet ist, das Beenden der Anzeige der Überlappungsangabe ein.
  • In verschiedenen Ausführungsformen schließt das Verfahren 1100 ferner das Empfangen, über eine oder mehrere Eingabevorrichtungen, einer Benutzereingabe ein, die auf die Überlappungsangabe gerichtet ist. Beispielsweise erfasst in 8AF die Vorrichtung 100 die Benutzereingabe 899AA, die an den ersten Überlappungsindikator 809A gerichtet ist. Das Verfahren 1100 schließt ferner als Reaktion auf das Empfangen der Benutzereingabe, die auf die Überlappungsangabe gerichtet ist, das Anzeigen einer Behebungs-Affordance ein. Beispielsweise zeigt die Vorrichtung 100 in 8AB die Behebungs-Affordance 810E an. Das Verfahren 1100 schließt ferner das Empfangen, über die eine oder die mehreren Eingabevorrichtungen, einer Benutzereingabe ein, die auf die Behebungs-Affordance gerichtet ist. In 8AG erkennt die Vorrichtung 100 zum Beispiel die Benutzereingabe 899AB, die an die Behebungs-Affordance 810E gerichtet ist. Das Verfahren 1100 schließt ferner als Reaktion auf das Empfangen der Benutzereingabe, die auf die Behebungs-Affordance gerichtet ist, das Ändern eines Orts von mindestens einem der zwei der Vielzahl von CGR-Objekten ein, so dass sich die zwei der Vielzahl von CGR-Objekten in der CGR-Szene nicht überlappen. Beispielsweise wird in 8AH die Position des CGR-Becher-Objekts geändert (wie durch die andere Position der Darstellung des CGR-Becher-Objekts 806C angezeigt), so dass sich das CGR-Becher-Objekt und das CGR-Platten-Objekt nicht mehr überlappen.
  • 12 ist eine Flussdiagrammdarstellung eines Verfahrens 1200 zum räumlichen Manipulieren eines CGR-Objekts in verschiedenen räumlichen Manipulationsmodi gemäß einigen Ausführungsformen. In verschiedenen Ausführungsformen wird das Verfahren 1200 von einer Vorrichtung mit einem oder mehreren Prozessoren, einem nichtflüchtigen Speicher, einer Anzeige und einer oder mehreren Eingabevorrichtungen (z. B. der tragbaren Multifunktionsvorrichtung 100 von 1A oder einer HMD) durchgeführt. In einigen Ausführungsformen wird das Verfahren 1200 von einer Verarbeitungslogik, einschließlich Hardware, Firmware, Software oder einer Kombination davon, durchgeführt. In einigen Ausführungsformen wird das Verfahren 1200 von einem Prozessor durchgeführt, der Anweisungen (z. B. Code) ausführt, die in einem nichtflüchtigen computerlesbaren Medium (z. B. einem Speicher) gespeichert sind.
  • Das Verfahren 1200 beginnt bei Block 1210, indem die Vorrichtung auf einer Anzeige eine Darstellung einer CGR-Szene anzeigt, einschließlich des Anzeigens jeweiliger Darstellungen eines oder mehrerer CGR-Objekte der CGR-Szene. Beispielsweise zeigt in 8U die Vorrichtung 100 eine Darstellung der zweiten CGR-Szene an, einschließlich des Anzeigens der Darstellung des CGR-Platten-Objekts 806B und der Darstellung des CGR-Becher-Objekts 806C.
  • Das Verfahren 1200 wird bei Block 1220 fortgesetzt, indem die Vorrichtung über eine oder mehrere Eingabevorrichtungen eine Benutzereingabe empfängt, die auf eine bestimmte Darstellung des einen oder der mehreren CGR-Objekte gerichtet ist. Beispielsweise erfasst in 8U die Vorrichtung 100 die Benutzereingabe 899Q, die auf die Darstellung des CGR-Becher-Objekts 806C gerichtet ist.
  • Das Verfahren 1200 setzt sich in Block 1230 fort, wobei die Vorrichtung als Reaktion auf das Empfangen der Benutzereingabe, die auf die bestimmte Darstellung des einen oder der mehreren CGR-Objekte gerichtet ist, einen ersten Manipulationsmodus bereitstellt, der einem ersten Satz von formerhaltenden räumlichen Manipulationen des entsprechenden CGR-Objekts zugeordnet ist. In verschiedenen Ausführungsformen schließt das Verfahren 1200 als Reaktion auf das Empfangen der Benutzereingabe, die auf die bestimmte Darstellung des einen oder der mehreren CGR-Objekte gerichtet ist, das Anzeigen eines ersten Typs von Objektauswahlindikator in Verbindung mit dem entsprechenden CGR-Objekt ein. Beispielsweise zeigt in 8V die Vorrichtung 100 als Reaktion auf die Benutzereingabe 899Q den ersten Typ des Objektauswahlindikators 807 an, der die Darstellung des CGR-Becher-Objekts 806C umgibt.
  • Während zum Beispiel ein CGR-Objekt ausgewählt wird (und der erste Typ des Objektauswahlindikators 807 angezeigt wird), führen unterschiedliche Typen von Benutzereingaben, die auf die Darstellung des CGR-Objekts gerichtet sind, zu unterschiedlichen Änderungen an räumlichen Eigenschaften des CGR-Objekts. Beispielsweise ändert in den 8AB und 8AC die Benutzereingabe 899X eines ersten Typs (z. B. ein Zusammendrücken), die auf die Darstellung des CGR-Becher-Objekts 806C gerichtet ist, eine Größe des CGR-Becher-Objekts. Als ein weiteres Beispiel ändert in den 8AC und 8AD die Benutzereingabe 899Y eines zweiten Typs (z. B. eine Rotation), die auf die Darstellung des CGR-Becher-Objekts 806C gerichtet ist, eine Ausrichtung um eine z-Achse des CGR-Becher-Objekts. Als weiteres Beispiel ändert in den 8AD und 8AF die Benutzereingabe 899Z eines dritten Typs (z. B. ein Ziehen), die auf die Darstellung des CGR-Becher-Objekts 806C gerichtet ist, eine Position in einer xy-Ebene des CGR-Becher-Objekts.
  • Das Verfahren 1200 wird in Block 1240 fortgesetzt, indem die Vorrichtung über die eine oder die mehreren Eingabevorrichtungen eine Benutzereingabe empfängt, die von dem ersten Manipulationsmodus in einen zweiten Manipulationsmodus wechselt, der einem zweiten Satz von formerhaltenden räumlichen Manipulationen des entsprechenden CGR-Objekts zugeordnet ist. Beispielsweise erfasst in 8AH die Vorrichtung 100 die Benutzereingabe 899AB, die auf die Darstellung des CGR-Becher-Objekts 806C gerichtet ist, wodurch der erste Typ des Objektauswahlindikators 807 in einen zweiten Typ des Objektauswahlindikators 817 geändert wird (wie in 8AI gezeigt).
  • In verschiedenen Ausführungsformen ist die Benutzereingabe, die auf die bestimmte Darstellung des einen oder der mehreren CGR-Objekte gerichtet ist, und die Benutzereingabe, die vom ersten Manipulationsmodus in den zweiten Manipulationsmodus umschaltet, dieselbe Art von Benutzereingabe. In verschiedenen Ausführungsformen ist dieselbe Art von Benutzereingabe ein Tippen an einem Ort der bestimmten Darstellung des einen oder der mehreren CGR-Objekte. Beispielsweise sind in 8U und 8AH die Benutzereingaben 899Q und 899AB beide Tippen an dem Ort der Darstellung des CGR-Becher-Objekts 806C.
  • Das Verfahren 1200 wird in Block 1250 fortgesetzt, wobei die Vorrichtung als Reaktion auf das Empfangen der Benutzereingabe vom ersten Manipulationsmodus in einen zweiten Manipulationsmodus umschaltet und den zweiten Manipulationsmodus bereitstellt. In verschiedenen Ausführungsformen schließt das Verfahren 1200 als Reaktion auf das Empfangen der Benutzereingabe, die vom ersten Manipulationsmodus in einen zweiten Manipulationsmodus wechselt, das Anzeigen eines zweiten Typs des Objektauswahlindikators in Verbindung mit dem entsprechenden CGR-Objekt ein. Während zum Beispiel ein CGR-Objekt ausgewählt wird (und der zweite Typ des Objektauswahlindikators 807 angezeigt wird), führt Benutzereingabe, die auf verschiedene Abschnitte des zweiten Typs des Objektauswahlindikators gerichtet ist, zu verschiedenen Änderungen an räumlichen Eigenschaften des CGR-Objekts. Beispielsweise dreht in den 8AI und 8AJ die Benutzereingabe 899AD, die auf die dritte Rotations-Affordance 817F gerichtet ist, das CGR-Becher-Objekt um eine dritte Achse. Als weiteres Beispiel bewegt in den 8AJ und 8AK die Benutzereingabe 899AE, die auf die erste Translation-Affordance 817A gerichtet ist, das CGR-Becher-Objekt entlang der z-Achse des CGR-Becher-Objekts.
  • In verschiedenen Ausführungsformen schließt der zweite Satz von formerhaltenden räumlichen Manipulationen des entsprechenden CGR-Objekts mindestens eine des ersten Satzes von formerhaltenden räumlichen Manipulationen des entsprechenden CGR-Objekts ein. In verschiedenen Ausführungsformen schließt der zweite Satz von formerhaltenden räumlichen Manipulationen des entsprechenden CGR-Objekts alle des ersten Satzes von formerhaltenden räumlichen Manipulationen des entsprechenden CGR-Objekts ein. In verschiedenen Ausführungsformen schließt der erste Satz von formerhaltenden räumlichen Manipulationen des entsprechenden CGR-Objekts eine Translation des entsprechenden CGR-Objekts in einer Ebene ein, ohne eine Translation des entsprechenden CGR-Objekts senkrecht zu der Ebene einzuschließen, wobei der zweite Satz von formerhaltenden räumlichen Manipulationen des entsprechenden CGR-Objekts eine Translation des entsprechenden CGR-Objekts senkrecht zu der Ebene einschließt. In verschiedenen Ausführungsformen schließt der erste Satz von formerhaltenden räumlichen Manipulationen des entsprechenden CGR-Objekts eine Drehung des entsprechenden CGR-Objekts um eine Achse ein, ohne eine Translation des entsprechenden CGR-Objekts um andere Achsen einzuschließen, wobei der zweite Satz von formerhaltenden räumlichen Manipulationen des entsprechenden CGR-Objekts eine Translation des entsprechenden CGR-Objekts um andere Achsen einschließt. In verschiedenen Ausführungsformen schließt der erste Satz von formerhaltenden räumlichen Manipulationen des entsprechenden CGR-Objekts die Größenänderung des entsprechenden CGR-Objekts ein.
  • 13 ist eine Flussdiagrammdarstellung eines Verfahrens 1300 zum räumlichen Manipulieren eines CGR-Objekts unter Verwendung eines intuitiven räumlichen Manipulationspunkts gemäß einigen Ausführungsformen. In verschiedenen Ausführungsformen wird das Verfahren 1300 von einer Vorrichtung mit einem oder mehreren Prozessoren, einem nichtflüchtigen Speicher, einer Anzeige und einer oder mehreren Eingabevorrichtungen (z. B. der tragbaren Multifunktionsvorrichtung 100 von 1A oder einer HMD) durchgeführt. In einigen Ausführungsformen wird das Verfahren 1300 von einer Verarbeitungslogik, einschließlich Hardware, Firmware, Software oder einer Kombination davon, durchgeführt. In einigen Ausführungsformen wird das Verfahren 1300 von einem Prozessor durchgeführt, der Anweisungen (z. B. Code) ausführt, die in einem nichtflüchtigen computerlesbaren Medium (z. B. einem Speicher) gespeichert sind.
  • Das Verfahren 1300 beginnt in Block 1310, indem die Vorrichtung auf einer Anzeige eine Darstellung einer Szene einer computergenerierten Realität (CGR) anzeigt, einschließlich des Anzeigens jeweiliger Darstellungen eines oder mehrerer CGR-Objekte der CGR-Szene. Beispielsweise zeigt in 8AC die Vorrichtung 100 eine Darstellung der zweiten CGR-Szene an, einschließlich des Anzeigens der Darstellung des CGR-Platten-Objekts 806B und der Darstellung des CGR-Becher-Objekts 806B.
  • Das Verfahren 1300 wird in Block 1310 fortgesetzt, indem die Vorrichtung über eine oder mehrere Eingabevorrichtungen eine Benutzereingabe empfängt, die ein bestimmtes CGR-Objekt des einen oder der mehreren CGR-Objekte räumlich manipuliert, wobei das bestimmte CGR-Objekt einem intuitiven räumlichen Manipulationspunkt zugeordnet ist. Beispielsweise empfängt in 8AC die Vorrichtung 100 die Benutzereingabe 899Y, die auf die Darstellung des CGR-Becher-Objekts 806C gerichtet ist, um das CGR-Becher-Objekt zu drehen. Als weiteres Beispiel empfängt die Vorrichtung 100 in 8AD die Benutzereingabe 899Z, die auf die Darstellung des CGR-Becher-Objekts 806C gerichtet ist, um das CGR-Becher-Objekt zu bewegen. Wie in den 8AE1 und 8AE2 veranschaulicht, ist das CGR-Becher-Objekt in verschiedenen Ausführungsformen einem intuitiven räumlichen Manipulationspunkt 885 zugeordnet.
  • In verschiedenen Ausführungsformen ist der intuitive räumliche Manipulationspunkt weder ein Rand des bestimmten CGR-Objekts, ein Mittelpunkt eines Begrenzungskastens, der das bestimmte CGR-Objekt umgibt, noch ein ungewichteter Massenschwerpunkt des bestimmten CGR-Objekts. Beispielsweise unterscheidet sich in den 8AE1 und 8AE2 der intuitive räumliche Manipulationspunkt 885 von dem ersten räumlichen Manipulationspunkt 883, dem Mittelpunkt des Begrenzungskastens 882, der das CGR-Becher-Objekt 880 umgibt, und unterscheidet sich von dem zweiten räumlichen Manipulationspunkt 884, dem ungewichteten Massenschwerpunkt des CGR-Becher-Objekts 880.
  • In verschiedenen Ausführungsformen wird der intuitive räumliche Manipulationspunkt mit einer CGR-Objektdatei gespeichert, die das bestimmte CGR-Objekt definiert. In verschiedenen Ausführungsformen schließt das Verfahren 1300 das Empfangen einer Benutzereingabe, die den intuitiven räumlichen Manipulationspunkt definiert, über die eine oder die mehreren Eingabevorrichtungen ein.
  • In verschiedenen Ausführungsformen schließt das Verfahren 1300 vor dem Empfangen der Benutzereingabe, die das bestimmte CGR-Objekt räumlich manipuliert, das Bestimmen des intuitiven räumlichen Manipulationspunkts ein. Beispielsweise schließt das Bestimmen des intuitiven räumlichen Manipulationspunkts in verschiedenen Ausführungsformen das Bestimmen einer Vielzahl von Segmenten des bestimmten CGR-Objekts und das Bestimmen des intuitiven räumlichen Manipulationspunkts basierend auf einer Gewichtung der Vielzahl von Segmenten des bestimmten CGR-Objekts ein. Beispielsweise wird in den 8AE1 und 8AE2 der intuitive räumliche Manipulationspunkt 885 als ein Massenschwerpunkt des CGR-Becher-Objekts 880 bestimmt, wobei der Fuß 881B und der Griff 881C ignoriert werden.
  • Das Verfahren 1300 wird in Block 1330 fortgesetzt, dass die Vorrichtung eine räumliche Eigenschaft des bestimmten CGR-Objekts basierend auf der Benutzereingabe und dem intuitiven räumlichen Manipulationspunkt ändert. In verschiedenen Ausführungsformen schließt das Ändern der räumlichen Eigenschaft des bestimmten CGR-Objekts basierend auf der Benutzereingabe und dem intuitiven räumlichen Manipulationspunkt das Drehen des bestimmten CGR-Objekts um eine Achse ein, die durch den intuitiven räumlichen Manipulationspunkt verläuft. Beispielsweise wird in 8AD die Darstellung des CGR-Becher-Objekts 806C um eine z-Achse gedreht, die durch den intuitiven räumlichen Manipulationspunkt verläuft. In verschiedenen Ausführungsformen schließt das Ändern der räumlichen Eigenschaft des bestimmten CGR-Objekts basierend auf der Benutzereingabe und dem intuitiven räumlichen Manipulationspunkt das Bewegen des bestimmten CGR-Objekts ein, wobei die intuitive räumliche Manipulation mit einem Zielpunkt ausgerichtet ist. In verschiedenen Ausführungsformen schließt das Ändern der räumlichen Eigenschaft des bestimmten CGR-Objekts basierend auf der Benutzereingabe und dem intuitiven räumlichen Manipulationspunkt das Bewegen des bestimmten CGR-Objekts ein, wobei der intuitive räumliche Manipulationspunkt an einem Zielpunkt eingeschnappt wird. Beispielsweise wird in 8AF die Darstellung des CGR-Becher-Objekts 806C zu der Mitte der Darstellung des CGR-Platten-Objekts 806B (und dem Gitterpunkt, mit dem die Mitte der Darstellung des CGR-Platten-Objekts 806B ausgerichtet ist) bewegt, eingeschnappt und ausgerichtet.
  • 14 ist eine Flussdiagrammdarstellung eines Verfahrens 1400 zur Konfiguration eines CGR-Objekts gemäß einigen Ausführungsfonnen. In verschiedenen Ausführungsformen wird das Verfahren 1400 von einer Vorrichtung mit einem oder mehreren Prozessoren, einem nichtflüchtigen Speicher, einer Anzeige und einer oder mehreren Eingabevorrichtungen (z. B. der tragbaren Multifunktionsvorrichtung 100 von 1A oder einer HMD) durchgeführt. In einigen Ausführungsformen wird das Verfahren 1400 von einer Verarbeitungslogik, einschließlich Hardware, Firmware, Software oder einer Kombination davon, durchgeführt. In einigen Ausführungsformen wird das Verfahren 1400 von einem Prozessor durchgeführt, der Anweisungen (z. B. Code) ausführt, die in einem nichtflüchtigen computerlesbaren Medium (z. B. einem Speicher) gespeichert sind.
  • Das Verfahren 1400 beginnt bei Block 1410, indem die Vorrichtung auf der Anzeige eine Darstellung einer CGR-Szene anzeigt, einschließlich des Anzeigens jeweiliger Darstellungen eines oder mehrerer CGR-Objekte der CGR-Szene. Beispielsweise zeigt in 8AS die Vorrichtung 100 eine Darstellung der zweiten CGR-Szene an, einschließlich des Anzeigens der Darstellung des CGR-Platten-Objekts 806B und der Darstellung des CGR-Becher-Objekts 806C.
  • Das Verfahren 1400 wird bei Block 1420 fortgesetzt, indem die Vorrichtung über die eine oder die mehreren Eingabevorrichtungen eine Benutzereingabe empfängt, die auf eine Darstellung eines bestimmten CGR-Objekts des einen oder der mehreren CGR-Objekte gerichtet ist, wobei das bestimmte CGR-Objekt einem Parameter zugeordnet ist. Beispielsweise erfasst in 8AS die Vorrichtung 100 die Benutzereingabe 899AL, die auf die Darstellung des CGR-Becher-Objekts 806C gerichtet ist, wobei das CGR-Becher-Objekt der Stileinstellung und der Mustereinstellung zugeordnet ist.
  • Das Verfahren 1400 wird bei Block 1430 fortgesetzt, wobei die Vorrichtung auf der Anzeige aus einer ersten Perspektive eine Vielzahl von Darstellungen des bestimmten CGR-Objekts anzeigt, wobei jede der Vielzahl von Darstellungen des bestimmten CGR-Objekts einem anderen jeweiligen Wert des Parameters zugeordnet ist. Beispielsweise zeigt in 8AU die Vorrichtung 100 die Live-Ansicht-Benutzerschnittstelle 811 an, welche die Vielzahl von Ansichtsfenstern 811DA-811DC einschließt, die jeweils eine Vielzahl von Darstellungen des CGR-Becher-Objekts 811EA-811EC einschließt, jeweils mit einem anderen Muster.
  • In verschiedenen Ausführungsformen schließt das Verfahren 1400 ferner das Anzeigen einer Textangabe des bestimmten CGR-Objekts und des Parameters ein. Beispielsweise schließt in 8AU die Live-Ansicht-Benutzerschnittstelle 811 die Textbeschreibung 811C des CGR-Becher-Objekts und die CGR-Objekteinstellung ein, die über die Live-Ansicht-Benutzerschnittstelle 811 manipuliert wird (z. B. das Muster).
  • In verschiedenen Ausführungsformen ist das bestimmte CGR-Objekt einem zweiten Parameter zugeordnet und das Verfahren 1400 schließt ferner, während des Anzeigens aus der ersten Perspektive die Vielzahl von Darstellungen des bestimmten CGR-Objekts, des Anzeigens aus der ersten Perspektive eine zweiten Vielzahl von Darstellungen des bestimmten CGR-Objekts ein, wobei jede der zweiten Vielzahl von Darstellungen des bestimmten CGR-Objekts einem unterschiedlichen jeweiligen Wert des zweiten Parameters zugeordnet ist.
  • Das Verfahren 1400 wird bei Block 1440 fortgesetzt, indem die Vorrichtung über die eine oder die mehreren Eingabevorrichtungen eine Benutzereingabe empfängt, die erste Perspektive in eine zweite Perspektive ändert. In verschiedenen Ausführungsformen schließt die Benutzereingabe, welche die erste Perspektive in die zweite Perspektive ändert, eine Benutzereingabe ein, die auf eine beliebige der Vielzahl von Darstellungen des bestimmten CGR-Objekts gerichtet ist. Beispielsweise erfasst in 8AU die Vorrichtung 100 die Benutzereingabe 899AN, die an das erste Ansichtsfenster 811DA gerichtet ist, wodurch die Perspektive der Ansichtsfenster 811DA-811DC geändert wird. In verschiedenen Ausführungsformen schließt die Benutzereingabe, welche die erste Perspektive in die zweite Perspektive ändert, das Bewegen der Anzeige ein. Wenn zum Beispiel in 8AU der CGR-Ansichtsmodus aktiv ist (z. B. durch Auswählen der CGR-Ansichts-Affordance 811B), ändert das Bewegen der Vorrichtung 100 die Perspektive der Ansichtsfenster 811DA-811DC.
  • In verschiedenen Ausführungsformen schließt das Verfahren 1400 das Anzeigen, auf der Anzeige, einer Vielzahl von Ansichts-Affordances ein, einschließlich einer Objektansichts-Affordance zum Wechseln in einen Objektansichtsmodus, in dem die Benutzereingabe, welche die erste Perspektive in eine zweite Perspektive ändert, eine Benutzereingabe einschließt, welche die Vielzahl von Darstellungen des bestimmten CGR-Objekts und einer CGR-Ansichts-Affordance zum Wechseln in einen CGR-Ansichtsmodus, in dem die Benutzereingabe, die erste Perspektive in die zweite Perspektive ändert, das Bewegen der Anzeige einschließt. Beispielsweise zeigt die Vorrichtung 100 in 8AU die Objektansichts-Affordance 811A und die CGR-Ansichts-Affordance 811B an.
  • Das Verfahren 1400 wird bei Block 1450 fortgesetzt, wobei die Vorrichtung als Reaktion auf das Empfangen der Benutzereingabe, welche die erste Perspektive in eine zweite Perspektive ändert, die Vielzahl von Darstellungen des bestimmten CGR-Objekts aus der zweiten Perspektive auf der Anzeige anzeigt. Beispielsweise zeigt die Vorrichtung in 8AV die Vielzahl von Darstellungen des CGR-Becher-Objekts 811EA-811EC aus einer anderen Perspektive als in 8AU an.
  • In verschiedenen Ausführungsformen wird ein Unterschied zwischen einer ersten Darstellung der Vielzahl von Darstellungen des bestimmten CGR-Objekts und einer zweiten Darstellung der Vielzahl von Darstellungen des bestimmten CGR-Objekts aus einer ersten Perspektive nicht sichtbar angezeigt, und der Unterschied wird aus der zweiten Perspektive angezeigt. Beispielsweise ist in 8AU der Unterschied zwischen dem Sternmuster und dem Efeumuster des CGR-CAP-Objekts in der ersten Perspektive nicht sichtbar, wird aber in 8AV angezeigt, wenn es aus der zweiten Perspektive betrachtet wird.
  • In verschiedenen Ausführungsformen schließt das Verfahren 1400 das Empfangen einer Benutzereingabe, die eine bestimmte Darstellung der Vielzahl von Darstellungen des bestimmten CGR-Objekts auswählt, und das Einstellen des Parameters des bestimmten CGR-Objekts auf den jeweiligen Wert des Parameters der bestimmten Darstellung ein. Beispielsweise erfasst in 8AW die Vorrichtung 100 die Benutzereingabe 899AP, die an das dritte Ansichtsfenster 811DC gerichtet ist, und setzt als Reaktion auf das Erfassen der Benutzereingabe 899AQ, die auf die OK-Affordance 811F in 8AX gerichtet ist, die Mustereinstellung des CGR-Becher-Objekts auf den „Efeu“-Wert, wie durch die Muster-Affordance 813DBC in 8AY angegeben.
  • 15 ist eine Flussdiagramm-Darstellung eines Verfahrens 1500 zur Darstellung einer CGR-Szene in Übereinstimmung mit einigen Ausführungsformen. In verschiedenen Ausführungsformen wird das Verfahren 1500 von einer Vorrichtung mit einem oder mehreren Prozessoren, einem nichtflüchtigen Speicher, einer Anzeige und einer oder mehreren Eingabevorrichtungen (z. B. der tragbaren Multifunktionsvorrichtung 100 von 1A oder einer HMD) durchgeführt. In einigen Ausführungsformen wird das Verfahren 1500 von einer Verarbeitungslogik, einschließlich Hardware, Firmware, Software oder einer Kombination davon, durchgeführt. In einigen Ausführungsformen wird das Verfahren 1500 von einem Prozessor durchgeführt, der Anweisungen (z. B. Code) ausführt, die in einem nichtflüchtigen computerlesbaren Medium (z. B. einem Speicher) gespeichert sind.
  • Das Verfahren 1500 beginnt bei Block 1510 mit der Vorrichtung, die auf der Anzeige eine Darstellung einer CGR-Szene anzeigt, einschließlich des Anzeigens einer Darstellung eines ersten CGR-Objekts der CGR-Szene, wobei das Anzeigen der Darstellung des ersten CGR-Objekts auf einem Anzeigenetz basiert, das dem ersten CGR-Objekt zugeordnet ist. Beispielsweise zeigt die Vorrichtung 100 in 8DB eine Darstellung der zweiten CGR-Szene an, einschließlich der Darstellung des CGR-Kugel-Objekts 840C, der Darstellung des CGR-Platten-Objekts 840B und der Darstellung des CGR-Becher-Objekts 840A. Das Anzeigen der Darstellung des CGR-Kugel-Objekts 840C basiert auf einem durch den Golfballstil definierten Anzeigenetz.
  • In verschiedenen Ausführungsformen basiert das Anzeigen der Darstellung des ersten CGR-Objekts ferner auf einer Textur, die dem ersten CGR-Objekt zugeordnet ist. Beispielsweise basiert in 8DB die Anzeige der Darstellung des CGR-Kugel-Objekts 840C auf einer Textur, die durch das Weiß-Muster definiert ist.
  • Das Verfahren 1500 wird bei Block 1520 fortgesetzt, wobei die Vorrichtung eine Interaktion des ersten CGR-Objekts mit einem zweiten CGR-Objekt der CGR-Szene basierend auf einem Physiknetz bestimmt, das dem ersten CGR-Objekt zugeordnet ist, wobei das physikalische Netz, das dem ersten CGR-Objekt zugeordnet ist, sich von dem Anzeigennetz unterscheidet, das dem ersten CGR-Objekt zugeordnet ist. In verschiedenen Ausführungsformen entspricht das zweite CGR-Objekt einem physischen Objekt. Beispielsweise bestimmt in 8DC die Vorrichtung 100 eine Interaktion des CGR-Kugel-Objekts mit einem CGR-Objekt, das der Tabelle entspricht. In verschiedenen Ausführungsformen ist das zweite CGR-Objekt ein virtuelles Objekt. Beispielsweise bestimmt in 8DD die Vorrichtung 100 eine Interaktion des CGR-Kugel-Objekts mit dem CGR-Platten-Objekt und/oder dem CGR-Becher-Objekt. In beiden Fällen wird die Interaktion basierend auf einem Physiknetz (z. B. einem Kugelnetz) bestimmt, das sich von dem durch den Golfballstil definierten Anzeigennetz unterscheidet.
  • In verschiedenen Ausführungsformen schließt das Physiknetz weniger Polygone als das Anzeigennetz ein. Beispielsweise schließt in den 8DB-8DD das Kugelnetz weniger Polygone als das Golfballnetz ein. In verschiedenen Ausführungsformen ist das Physiknetz glatter als das Anzeigennetz. Beispielsweise ist in den 8DB-8DD das Kugelnetz glatter als das Golfballnetz (ohne Vertiefungen).
  • In verschiedenen Ausführungsformen schließt das Verfahren 1500 vor dem Bestimmen der Interaktion das Empfangen einer Benutzereingabe ein, die das Physiknetz von einem ersten Netz, das das gleiche ist wie das Anzeigennetz, das dem ersten CGR-Objekt zugeordnet ist, zu einem zweiten Netz ändert, das sich von dem Anzeigennetz unterscheidet, das dem ersten CGR-Objekt zugeordnet ist, als Reaktion auf das Empfangen der Benutzereingabe, die das Physiknetz ändert, wodurch das zweite Netz dem ersten CGR-Objekt als das Physiknetz zugeordnet wird. Beispielsweise zeigt in den 8BE die Physiknetz-Affordance 813DCA an, dass das Physiknetz des CGR-Kugel-Objekts dasselbe ist wie das Anzeige-Netz (wie durch die Stil-Affordance 813DBB angegeben). Als Reaktion auf die Benutzereingabe 899AX von 8BE, wird die Benutzereingabe 899AY von 8BF und die Benutzereingabe 899AZ von 8BG das Physiknetz des CGR-Kugel-Objekts in das Kugelnetz geändert, wie durch die Physiknetz-Affordance 813DCA in 8BH angegeben.
  • In verschiedenen Ausführungsformen wird das erste CGR-Objekt durch eine CGR-Objektdatei beschrieben, die eine Vielzahl von Netzen einschließlich des ersten Netzes und des zweiten Netzes einschließt. Beispielsweise zeigt in 8BF die Vorrichtung 100 die Einstellwertauswahl-Benutzerschnittstelle 812 an, welche die Vielzahl von Einstellwertauswahl-Affordances 812BA-812BC einschließt, die Netzen einer CGR-Kugel-Objektdatei entsprechen.
  • In verschiedenen Ausführungsformen schließt das Verfahren 1500 das Empfangen einer Benutzereingabe zum Importieren eines Netzes in die CGR-Objektdatei und als Reaktion auf das Empfangen der Benutzereingabe zum Importieren eines Netzes in die CGR-Objektdatei das Importieren eines dritten Netzes in die CGR-Objektdatei ein. Beispielsweise zeigt die Vorrichtung 100 in 8BH die Lade-Affordance 812BC zum Laden eines benutzerdefinierten Netzes in die CGR-Kugel-Objektdatei an.
  • 16 ist eine Flussdiagrammdarstellung eines Verfahrens 1600 zur Zuordnung eines Verhaltens einer CGR-Szene gemäß einigen Ausführungsformen. In verschiedenen Ausführungsformen wird das Verfahren 1600 von einer Vorrichtung mit einem oder mehreren Prozessoren, einem nichtflüchtigen Speicher, einer Anzeige und einer oder mehreren Eingabevorrichtungen (z. B. der tragbaren Multifunktionsvorrichtung 100 von 1A oder einer HMD) durchgeführt. In einigen Ausführungsformen wird das Verfahren 1600 von einer Verarbeitungslogik, einschließlich Hardware, Firmware, Software oder einer Kombination davon, durchgeführt. In einigen Ausführungsformen wird das Verfahren 1600 von einem Prozessor durchgeführt, der Anweisungen (z. B. Code) ausführt, die in einem nichtflüchtigen computerlesbaren Medium (z. B. einem Speicher) gespeichert sind.
  • Das Verfahren 1600 beginnt in Block 1610, indem die Vorrichtung auf einer Anzeige eine Darstellung einer Szene einer computergenerierten Realität (CGR) anzeigt, einschließlich des Anzeigens jeweiliger Darstellungen eines oder mehrerer CGR-Objekte der CGR-Szene. Beispielsweise zeigt in 8BI die Vorrichtung 100 die Darstellung der zweiten CGR-Szene an, einschließlich der Darstellung des CGR-Platten-Objekts 806B, der Darstellung des CGR-Becher-Objekts 806C und der Darstellung des CGR-Kugel-Objekts 806D.
  • Das Verfahren 1600 wird bei Block 1620 fortgesetzt, indem die Vorrichtung über die eine oder die mehreren Eingabevorrichtungen eine Benutzereingabe empfängt, die der CGR-Szene ein Verhalten hinzufügt. In 8BI erkennt die Vorrichtung 100 zum Beispiel die Benutzereingabe 899BB, die auf die Verhaltenshinzufügungs-Affordance 803AC gerichtet ist.
  • Das Verfahren 1600 wird bei Block 1630 fortgesetzt, indem die Vorrichtung über die eine oder die mehreren Eingabevorrichtungen eine Benutzereingabe empfängt, die einen ersten Trigger für das Verhalten definiert. Beispielsweise definieren die Benutzereingabe 899BD, die auf die neue Trigger-Affordance 833A in 8BK gerichtet ist, die Benutzereingabe 899BE, die auf die Tipptrigger-Affordance 838A in 8BL gerichtet ist, die Benutzereingabe 899BF, die auf die Darstellung des CGR-Kugel-Objekts 831DC in 8BM gerichtet ist, und die Benutzereingabe 899BG, die auf die Fertig-Affordance 838AA in 8BN gerichtet ist, einen Tipptrigger für das erste Verhalten.
  • In verschiedenen Ausführungsformen ist der erste Trigger eine Benutzeraktion. Beispielsweise ist in verschiedenen Ausführungsformen die Benutzeraktion mindestens ein Tippen eines bestimmten CGR-Objekts des einen oder der mehreren CGR-Objekte durch einen Benutzer und/oder ein Blick des Benutzers auf das bestimmte CGR-Objekt und/oder eine Gesichtsaktion des Benutzers.
  • In verschiedenen Ausführungsformen ist der erste Trigger eine CGR-Szenenbedingung. Beispielsweise ist in verschiedenen Ausführungsformen die CGR-Szenenbedingung mindestens eine Nähe eines bestimmten CGR-Objekts des einen oder der mehreren CGR-Objekte zu einem Ort in der CGR-Szene (z. B. eine Koordinate oder der Ort eines anderen CGR-Objekts) und/oder eine verstreichende CGR-Szenenzeit (z. B. nachdem die CGR-Szene für eine Schwellenzeitdauer dargestellt wurde).
  • Das Verfahren 1600 wird in Block 1630 fortgesetzt, indem die Vorrichtung über die eine oder die mehreren Eingabevorrichtungen eine Benutzereingabe empfängt, die eine erste Aktion für das Verhalten definiert, wobei während des Präsentierens der CGR-Szene die erste Aktion als Reaktion auf das Erkennen des ersten Triggers durchgeführt wird. Beispielsweise definieren die Benutzereingabe 899BK, die auf die Neue-Aktions-Affordance 835A in 8BR gerichtet ist, die Benutzereingabe 899BL, die auf den Bewegungs-Affordance 839A in 8BS gerichtet ist, die Benutzereingabe 899BM, die auf die Bewegung-Von-Aktions-Affordance 839AB in 8BT gerichtet ist, die Benutzereingabe 899BN, die auf die Vorwärtsbewegungsaktions-Affordance 839ABA in 8BU gerichtet ist, und die Benutzereingabe 899BO, die auf die Speicher-Affordance 839ABAC in 8BV gerichtet ist, eine Bewegungsaktion für das erste Verhalten.
  • In verschiedenen Ausführungsformen ist die erste Aktion mindestens eines von einer räumlichen Manipulation eines bestimmten CGR-Objekts des einen oder der mehreren CGR-Objekte, Abspielen einer Audiodatei oder Präsentieren einer neuen CGR-Szene.
  • In verschiedenen Ausführungsformen schließt das Verfahren 1600 ferner das Empfangen, über die eine oder die mehreren Eingabevorrichtungen, einer Benutzereingabe ein, die einen zweiten Trigger für das Verhalten definiert, wobei während des Präsentierens der CGR-Szene die erste Aktion als Reaktion auf das Erfassen des zweiten Triggers durchgeführt wird. Beispielsweise definieren die Benutzereingabe 899BH, die auf die Neue-Trigger-Affordance 833A in 8BO gerichtet ist, die Benutzereingabe 899BI, die auf die Gesichtsverfolgungstrigger-Affordance 838C in 8BP gerichtet ist, und die Benutzereingabe 899BJ, die auf die Blastrigger-Affordance 838CC in 8BQ gerichtet ist, einen Gesichtsverfolgungstrigger für das erste Verhalten.
  • In verschiedenen Ausführungsformen schließt das Verfahren 1600 ferner das Empfangen, über die eine oder die mehreren Eingabevorrichtungen, einer Benutzereingabe ein, die eine zweite Aktion für das Verhalten definiert, wobei während des Präsentierens der CGR-Szene die zweite Aktion als Reaktion auf das Erfassen des ersten Triggers durchgeführt wird. Nachdem zum Beispiel die Audioaktion für das zweite Verhalten definiert ist, definieren die Benutzereingabe 899CG, die auf die Neue-Aktions-Affordance 835A in 8CN gerichtet ist, die Benutzereingabe 899CH, die auf die Bewegungsaktions-Affordance 839A in 8CO gerichtet ist, die Benutzereingabe 899CI, die auf die Dreh-Aktions-Affordance 839AC in 8CP gerichtet ist, und die Benutzereingabe 899CJ, die auf die Speicher-Affordance 839ACD in 8CQ gerichtet ist, eine Bewegungsaktion für das zweite Verhalten.
  • In verschiedenen Ausführungsformen wird die zweite Aktion nach der Durchführung der ersten Aktion durchgeführt. Beispielsweise wird, wie in 8CU konfiguriert, die Bewegungsaktion nach der Audioaktion durchgeführt. In verschiedenen Ausführungsformen wird die zweite Aktion gleichzeitig mit der Durchführung der ersten Aktion durchgeführt. Beispielsweise werden, wie in 8CW konfiguriert, die Bewegungsaktion und die Audioaktion gleichzeitig durchgeführt.
  • In verschiedenen Ausführungsformen schließt das Empfangen der Benutzereingabe, die den ersten Trigger für das Verhalten definiert (in Block 1630), über die eine oder die mehreren Eingabevorrichtungen das Empfangen einer Benutzereingabe ein, die auf eine Darstellung eines ersten CGR-Objekts des einen oder der mehreren CGR-Objekte gerichtet ist. Beispielsweise wählt in 8BM die Benutzereingabe 899BF, die auf die Darstellung des CGR-Kugel-Objekts gerichtet ist, 831DC das CGR-Kugel-Objekt als Ziel des Tipptriggers aus. In verschiedenen Ausführungsformen schließt das Empfangen der Benutzereingabe, welche die erste Aktion für das Verhalten definiert (in Block 1640), über die eine oder die mehreren Eingabevorrichtungen das Empfangen einer Benutzereingabe ein, die auf eine Darstellung eines zweiten CGR-Objekts des einen oder der mehreren CGR-Objekte gerichtet ist. Beispielsweise hat in 8BV die Vorrichtung 100 eine Benutzereingabe empfangen, die auf die Darstellung des CGR-Kugel-Objekts 831DC gerichtet ist, das CGR-Kugel-Objekt als das Ziel der Bewegungsaktion auswählt.
  • In verschiedenen Ausführungsformen schließt das Verfahren 1600 ferner das Anzeigen der Darstellung des ersten CGR-Objekts mit einer ersten Hervorhebung und das Anzeigen der Darstellung des zweiten CGR-Objekts mit einer zweiten Hervorhebung, die sich von der ersten Hervorhebung unterscheidet, ein. Beispielsweise sind in 8BX das erste CGR-Objekt und das zweite CGR-Objekt dasselbe CGR-Objekt, z. B. das CGR-Kugel-Objekt. Dementsprechend wird in 8BX die Darstellung des CGR-Kugel-Objekts 806D sowohl mit einer ersten Hervorhebung (z. B. einem Glimmen) als auch mit einer zweiten Hervorhebung (z. B. diagonales Hashen) angezeigt. Als weiteres Beispiel ist in 8CX das erste CGR-Objekt das CGR-Becher-Objekt und das zweite CGR-Objekt das CGR-Kugel-Objekt. Dementsprechend wird in 8CX die Darstellung des CGR-Becher-Objekts 806B mit der ersten Hervorhebung angezeigt, und die Darstellung des CGR-Kugel-Objekts 806D wird mit der zweiten Hervorhebung angezeigt.
  • 17 ist eine Flussdiagrammdarstellung eines Verfahrens 1700 zur Erstellung einer CGR-Datei gemäß einigen Ausführungsformen. In verschiedenen Ausführungsformen wird das Verfahren 1700 von einer Vorrichtung mit einem oder mehreren Prozessoren, einem nichtflüchtigen Speicher, einer Anzeige und einer oder mehreren Eingabevorrichtungen (z. B. der tragbaren Multifunktionsvorrichtung 100 von 1A oder einer HMD) durchgeführt. In einigen Ausführungsformen wird das Verfahren 1700 von einer Verarbeitungslogik, einschließlich Hardware, Firmware, Software oder einer Kombination davon, durchgeführt. In einigen Ausführungsformen wird das Verfahren 1700 von einem Prozessor durchgeführt, der Anweisungen (z. B. Code) ausführt, die in einem nichtflüchtigen computerlesbaren Medium (z. B. einem Speicher) gespeichert sind.
  • Das Verfahren 1700 beginnt in Block 1710, indem die Vorrichtung über eine oder mehrere Eingabevorrichtungen eine Benutzereingabe empfängt, die eine Szene der computergenerierten Realität (CGR) erzeugt. In 8A erkennt die Vorrichtung 100 zum Beispiel die Benutzereingabe 899A, die auf die Neuprojekt-Affordance 802AA gerichtet ist. Als Reaktion darauf erzeugt die Vorrichtung 100 die erste CGR-Szene.
  • Als weiteres Beispiel erfasst die Vorrichtung 100 in 8N die Benutzereingabe 899J, die auf die Szenenhinzufügungs-Affordance 803AA gerichtet ist. Als Reaktion darauf erzeugt die Vorrichtung 100 die zweite CGR-Szene.
  • Das Verfahren 1700 wird in Block 1720 fortgesetzt, indem die Vorrichtung über die eine oder die mehreren Eingabevorrichtungen eine Benutzereingabe empfängt, die einen Anker der CGR-Szene zugeordnet. Beispielsweise empfängt in 8B die Vorrichtung 100 die Benutzereingabe 899B, die auf die Bildankerauswahl-Affordance 802BB gerichtet ist, und ordnet als Reaktion einen Bildanker der ersten CGR-Szene zu. Als weiteres Beispiel empfängt die Vorrichtung 100 in 8E die Benutzereingabe 899E, die auf die Sekundäranker-Affordance 803DBC gerichtet ist, und ordnet als Reaktion einen Sekundäranker der ersten CGR-Szene zu. Als weiteres Beispiel empfängt die Vorrichtung 100 in 8O die Benutzereingabe 899K, die auf die Auswahl-Affordance 802BA für horizontale Ebenenanker gerichtet ist, und ordnet als Reaktion einen horizontalen Ebenenanker der zweiten CGR-Szene zu.
  • In verschiedenen Ausführungsformen ist der Anker ein Ankerbild. Beispielsweise ist in 8E der Primäranker der ersten CGR-Szene ein Ankerbild, z. B. „AofD.jpg“. In verschiedenen Ausführungsformen schließt der Anker einen ersten Anker und einen zweiten Anker ein, wobei das eine oder die mehreren CGR-Objekte in Verbindung mit dem zweiten Anker als Reaktion auf das Bestimmen, dass einem Bild einer physischen Umgebung ein Abschnitt fehlt, der dem ersten Anker entspricht, angezeigt werden sollen. Beispielsweise ist in 8F die erste CGR-Szene einem Primäranker (z. B. einem Ankerbild) und einem Sekundäranker (z. B. einer horizontalen Ebene) zugeordnet.
  • Das Verfahren 1700 wird in Block 1730 fortgesetzt, indem die Vorrichtung über die eine oder die mehreren Eingabevorrichtungen eine Benutzereingabe empfängt, die ein oder mehrere CGR-Objekte der CGR-Szene zugeordnet, wobei das eine oder die mehreren CGR-Objekte in Verbindung mit dem Anker angezeigt werden sollen. In 8F erkennt die Vorrichtung 100 zum Beispiel die Benutzereingabe 899F, die auf die Objekthinzufügungs-Affordance 803AB gerichtet ist. Als Reaktion auf die Benutzereingabe 899G, die auf die Karo-Hinzufügung 805B in 8G gerichtet ist, ordnet die Vorrichtung 100 ein CGR-Karo-Objekt der ersten CGR-Szene zu.
  • In verschiedenen Ausführungsformen schließt das Empfangen der Benutzereingabe, die ein oder mehrere CGR-Objekte der CGR-Szene zuordnet, das Empfangen, über die eine oder die mehreren Eingabevorrichtungen, einer Benutzereingabe, die ein oder mehrere CGR-Objekte der CGR-Szene zuordnet, auf einer Anzeige, einer Darstellung eines CGR-Objekts, das einem ersten Parameter und einem zweiten Parameter zugeordnet ist, wobei der erste Parameter einen ersten einer Vielzahl von ersten Parameterwerten aufweist und der zweite Parameter einen ersten einer Vielzahl von zweiten Parameterwerten aufweist.
  • Beispielsweise zeigt die Vorrichtung 100 in 8X die Darstellung des aktuell ausgewählten CGR-Objekts 808DA, z. B. des CGR-Becher-Objekts an, wobei das CGR-Becher-Objekt einem ersten Parameter (z. B. Stil) und einem zweiten Parameter (z. B. Muster) zugeordnet ist. Der erste Parameter weist einen ersten aus der Vielzahl von ersten Parameterwerten (z. B. den „Tassen“ -Wert aus den in der Stilleiste 808E aufgeführten) und einen ersten aus der Vielzahl von zweiten Parameterwerten (z. B. den „Weiß“ -Wert aus den in Musterleiste 808F aufgeführten) auf.
  • Das Empfangen der Benutzereingabe, die ein oder mehrere CGR-Objekte der CGR-Szene zuordnet, schließt ferner das Anzeigen, auf der Anzeige, eines ersten Benutzerschnittstellenelements zur Auswahl eines zweiten der Vielzahl von ersten Parameterwerten und das Anzeigen, auf der Anzeige, eines zweiten Benutzerschnittstellenelements zur Auswahl eines zweiten der Vielzahl von zweiten Parameterwerten ein, wobei basierend auf dem ersten der Vielzahl von ersten Parameterwerten und einer oder mehreren Auswahlregeln eine Teilmenge der Vielzahl von zweiten Parameterwerten zur Auswahl über das zweite Benutzerschnittstellenelement dargestellt wird.
  • Beispielsweise zeigt die Vorrichtung 100 in 8X die Stilleiste 808E einschließlich einer Vielzahl von Stil-Affordances 808EA-808ED zum Ändern eines aktuell ausgewählten Stils der Stilleiste 808E an. In 8X zeigt die Vorrichtung 100 die Musterleiste 808F einschließlich einer Vielzahl von Muster-Affordances 808FA-808FD zum Ändern eines aktuell ausgewählten Musters der Musterleiste 808F an. In 8X ist der Becherstil der aktuell ausgewählte Stil des Stilleiste 808E und das Weiß-Muster ist das aktuell ausgewählte Muster der Musterleiste 808F. Basierend darauf, dass der aktuell ausgewählte Stil der Tassenstil ist, wird eine Teilmenge der Muster-Affordances 808FA-808FD zur Auswahl dargestellt. Insbesondere werden die Stern-Affordance 808FC und die Efeu-Affordance 808FD zur Auswahl dargestellt, wie durch den zweiten Anzeigestil angezeigt, während die Glas-Affordance 808FB nicht zur Auswahl dargestellt wird, da sie ausgegraut ist.
  • In verschiedenen Ausführungsformen schließt das zweite Benutzerschnittstellenelement einen Satz auswählbarer Affordances, die der Teilmenge der Vielzahl von zweiten Parametern entsprechen, und einen Satz nicht auswählbarer Affordances, die den anderen der Vielzahl von zweiten Parametern entsprechen, ein. Beispielsweise schließt in 8X die Musterleiste 808F einen Satz auswählbarer Affordances (z. B. die Stern-Affordance 808FC und die Efeu-Affordance 808FD) und einen Satz nicht auswählbarer Affordances (z. B. die Glas-Affordance 808FB) ein.
  • In verschiedenen Ausführungsformen schließt das Empfangen einer Benutzereingabe, die ein oder mehrere CGR-Objekte der CGR-Szene zuordnet, über die eine oder die mehreren Eingabevorrichtungen das Anzeigen einer bestimmten Darstellung eines CGR-Objekts, das der CGR-Szene zugeordnet ist, auf einer Anzeige ein. Beispielsweise zeigt in 8U die Vorrichtung 100 eine Darstellung der zweiten CGR-Szene an, einschließlich des Anzeigens der Darstellung des CGR-Platten-Objekts 806B und der Darstellung des CGR-Becher-Objekts 806C.
  • Das Empfangen, über die eine oder die mehreren Eingabevorrichtungen, einer Benutzereingabe, die ein oder mehrere CGR-Objekte der CGR-Szene zugeordnet, schließt ferner das Empfangen, über eine oder mehrere Eingabevorrichtungen, einer Benutzereingabe ein, die auf die bestimmte Darstellung des CGR-Objekts gerichtet ist. Beispielsweise erfasst in 8U die Vorrichtung 100 die Benutzereingabe 899Q, die auf die Darstellung des CGR-Becher-Objekts 806C gerichtet ist.
  • Das Empfangen einer Benutzereingabe, die ein oder mehrere CGR-Objekte der CGR-Szene zugeordnet, über die eine oder die mehreren Eingabevorrichtungen schließt ferner als Reaktion auf das Empfangen der Benutzereingabe, die auf die bestimmte Darstellung des CGR-Objekts gerichtet ist, das Bereitstellen eines ersten Manipulationsmodus ein, der einem ersten Satz von formerhaltenden räumlichen Manipulationen des entsprechenden CGR-Objekts zugeordnet ist. Beispielsweise zeigt in 8V die Vorrichtung 100 als Reaktion auf die Benutzereingabe 899Q den ersten Typ des Objektauswahlindikators 807 an, der die Darstellung des CGR-Becher-Objekts 806C umgibt. Während ein CGR-Objekt ausgewählt wird (und der erste Typ des Objektauswahlindikators 807 angezeigt wird), führen unterschiedliche Typen von Benutzereingaben, die auf die Darstellung des CGR-Objekts gerichtet sind, zu unterschiedlichen Änderungen an räumlichen Eigenschaften des CGR-Objekts. Beispielsweise ändert in den 8AB und 8AC die Benutzereingabe 899X eines ersten Typs (z. B. ein Zusammendrücken), die auf die Darstellung des CGR-Becher-Objekts 806C gerichtet ist, eine Größe des CGR-Becher-Objekts. Als ein weiteres Beispiel ändert in den 8AC und 8AD die Benutzereingabe 899Y eines zweiten Typs (z. B. eine Rotation), die auf die Darstellung des CGR-Becher-Objekts 806C gerichtet ist, eine Ausrichtung um eine z-Achse des CGR-Becher-Objekts. Als weiteres Beispiel ändert in den 8AD und 8AF die Benutzereingabe 899Z eines dritten Typs (z. B. ein Ziehen), die auf die Darstellung des CGR-Becher-Objekts 806C gerichtet ist, eine Position in einer xy-Ebene des CGR-Becher-Objekts.
  • Das Empfangen, über die eine oder die mehreren Eingabevorrichtungen, einer Benutzereingabe, die ein oder mehrere CGR-Objekte mit der CGR-Szene zugeordnet, schließt ferner das Empfangen, über die eine oder die mehreren Eingabevorrichtungen, einer Benutzereingabe ein, die von dem ersten Manipulationsmodus zu einem zweiten Manipulationsmodus umschaltet, der einem zweiten Satz von formerhaltenden räumlichen Manipulationen des entsprechenden CGR-Objekts zugeordnet ist. Beispielsweise erfasst in 8AH die Vorrichtung 100 die Benutzereingabe 899AB, die auf die Darstellung des CGR-Becher-Objekts 806C gerichtet ist, wodurch der erste Typ des Objektauswahlindikators 807 in einen zweiten Typ des Objektauswahlindikators 817 geändert wird (wie in 8AI gezeigt).
  • Das Empfangen, über die eine oder die mehreren Eingabevorrichtungen, einer Benutzereingabe, die ein oder mehrere CGR-Objekte der CGR-Szene zuordnet, schließt ferner als Reaktion auf das Empfangen der Benutzereingabe das Umschalten vom ersten Manipulationsmodus in einen zweiten Manipulationsmodus das Bereitstellen des zweiten Manipulationsmodus ein. Während zum Beispiel ein CGR-Objekt ausgewählt wird (und der zweite Typ des Objektauswahlindikators 807 angezeigt wird), führt Benutzereingabe, die auf verschiedene Abschnitte des zweiten Typs des Objektauswahlindikators gerichtet ist, zu verschiedenen Änderungen an räumlichen Eigenschaften des CGR-Objekts. Beispielsweise dreht in den 8AI und 8AJ die Benutzereingabe 899AD, die auf die dritte Rotations-Affordance 817F gerichtet ist, das CGR-Becher-Objekt um eine dritte Achse. Als weiteres Beispiel bewegt in den 8AJ und 8AK die Benutzereingabe 899AE, die auf die erste Translation-Affordance 817A gerichtet ist, das CGR-Becher-Objekt entlang der z-Achse des CGR-Becher-Objekts.
  • In verschiedenen Ausführungsformen schließt der erste Satz von formerhaltenden räumlichen Manipulationen des entsprechenden CGR-Objekts eine Translation des entsprechenden CGR-Objekts in einer Ebene ein, ohne eine Translation des entsprechenden CGR-Objekts senkrecht zu der Ebene einzuschließen, wobei der zweite Satz von formerhaltenden räumlichen Manipulationen des entsprechenden CGR-Objekts eine Translation des entsprechenden CGR-Objekts senkrecht zu der Ebene einschließt. In verschiedenen Ausführungsformen schließt der erste Satz von formerhaltenden räumlichen Manipulationen des entsprechenden CGR-Objekts eine Drehung des entsprechenden CGR-Objekts um eine Achse ein, ohne eine Translation des entsprechenden CGR-Objekts um andere Achsen einzuschließen, wobei der zweite Satz von formerhaltenden räumlichen Manipulationen des entsprechenden CGR-Objekts eine Translation des entsprechenden CGR-Objekts um andere Achsen einschließt.
  • In verschiedenen Ausführungsformen schließt das Empfangen einer Benutzereingabe, die ein oder mehrere CGR-Objekte der CGR-Szene zuordnet, über die eine oder die mehreren Eingabevorrichtungen das Anzeigen einer Darstellung eines bestimmten CGR-Objekts, das der CGR-Szene zugeordnet ist, auf einer Anzeige ein. Beispielsweise zeigt in 8AC die Vorrichtung 100 eine Darstellung der zweiten CGR-Szene an, einschließlich des Anzeigens der Darstellung des CGR-Platten-Objekts 806B und der Darstellung des CGR-Becher-Objekts 806B.
  • Das Empfangen, über die eine oder die mehreren Eingabevorrichtungen, einer Benutzereingabe, die ein oder mehrere CGR-Objekte der CGR-Szene zugeordnet, schließt ferner das Empfangen, über eine oder mehrere Eingabevorrichtungen, einer Benutzereingabe ein, die das bestimmte CGR-Objekt räumlich manipuliert, wobei das bestimmte CGR-Objekt einem räumlichen Manipulationspunkt zugeordnet ist. Beispielsweise empfängt in 8AC die Vorrichtung 100 die Benutzereingabe 899Y, die auf die Darstellung des CGR-Becher-Objekts 806C gerichtet ist, um das CGR-Becher-Objekt zu drehen. Als weiteres Beispiel empfängt die Vorrichtung 100 in 8AD die Benutzereingabe 899Z, die auf die Darstellung des CGR-Becher-Objekts 806C gerichtet ist, um das CGR-Becher-Objekt zu bewegen. Wie in den 8AE1 und 8AE2 veranschaulicht, ist das CGR-Becher-Objekt in verschiedenen Ausführungsformen einem intuitiven räumlichen Manipulationspunkt 885 zugeordnet.
  • Das Empfangen, über die eine oder die mehreren Eingabevorrichtungen, einer Benutzereingabe, die ein oder mehrere CGR-Objekte der CGR-Szene zugeordnet, schließt ferner das Ändern einer räumlichen Eigenschaft des bestimmten CGR-Objekts basierend auf der Benutzereingabe und dem räumlichen Manipulationspunkt ein. In verschiedenen Ausführungsformen schließt das Ändern der räumlichen Eigenschaft des bestimmten CGR-Objekts basierend auf der Benutzereingabe und dem intuitiven räumlichen Manipulationspunkt das Drehen des bestimmten CGR-Objekts um eine Achse ein, die durch den intuitiven räumlichen Manipulationspunkt verläuft. Beispielsweise wird in 8AD die Darstellung des CGR-Becher-Objekts 806C um eine z-Achse gedreht, die durch den intuitiven räumlichen Manipulationspunkt verläuft. In verschiedenen Ausführungsformen schließt das Ändern der räumlichen Eigenschaft des bestimmten CGR-Objekts basierend auf der Benutzereingabe und dem intuitiven räumlichen Manipulationspunkt das Bewegen des bestimmten CGR-Objekts ein, wobei die intuitive räumliche Manipulation mit einem Zielpunkt ausgerichtet ist. In verschiedenen Ausführungsformen schließt das Ändern der räumlichen Eigenschaft des bestimmten CGR-Objekts basierend auf der Benutzereingabe und dem intuitiven räumlichen Manipulationspunkt das Bewegen des bestimmten CGR-Objekts ein, wobei der intuitive räumliche Manipulationspunkt an einem Zielpunkt eingeschnappt wird. Beispielsweise wird in 8AF die Darstellung des CGR-Becher-Objekts 806C zu der Mitte der Darstellung des CGR-Platten-Objekts 806B (und dem Gitterpunkt, mit dem die Mitte der Darstellung des CGR-Platten-Objekts 806B ausgerichtet ist) bewegt, eingeschnappt und ausgerichtet.
  • In verschiedenen Ausführungsformen ist der räumliche Manipulationspunkt weder ein Rand des bestimmten CGR-Objekts, ein Mittelpunkt eines Begrenzungskastens, der das bestimmte CGR-Objekt umgibt, noch ein ungewichteter Massenschwerpunkt des bestimmten CGR-Objekts. Beispielsweise unterscheidet sich in den 8AE1 und 8AE2 der intuitive räumliche Manipulationspunkt 885 von dem ersten räumlichen Manipulationspunkt 883, dem Mittelpunkt des Begrenzungskastens 882, der das CGR-Becher-Objekt 880 umgibt, und unterscheidet sich von dem zweiten räumlichen Manipulationspunkt 884, dem ungewichteten Massenschwerpunkt des CGR-Becher-Objekts 880.
  • In verschiedenen Ausführungsformen schließt das Empfangen der Benutzereingabe, die ein oder mehrere CGR-Objekte der CGR-Szene zuordnet, das Anzeigen einer Darstellung eines bestimmten CGR-Objekts, das der CGR-Szene zugeordnet ist, auf einer Anzeige ein. Beispielsweise zeigt in 8AS die Vorrichtung 100 eine Darstellung der zweiten CGR-Szene an, einschließlich des Anzeigens der Darstellung des CGR-Platten-Objekts 806B und der Darstellung des CGR-Becher-Objekts 806C.
  • Das Empfangen der Benutzereingabe, die ein oder mehrere CGR-Objekte der CGR-Szene zugeordnet, schließt ferner das Empfangen, über die eine oder die mehreren Eingabevorrichtungen, einer Benutzereingabe ein, die auf die Darstellung eines bestimmten CGR-Objekts gerichtet ist, wobei das bestimmte CGR-Objekt einem Parameter zugeordnet ist. Beispielsweise erfasst in 8AS die Vorrichtung 100 die Benutzereingabe 899AL, die auf die Darstellung des CGR-Becher-Objekts 806C gerichtet ist, wobei das CGR-Becher-Objekt der Stileinstellung und der Mustereinstellung zugeordnet ist.
  • Das Empfangen der Benutzereingabe, die ein oder mehrere CGR-Objekte der CGR-Szene zuordnet, schließt ferner das Anzeigen einer Vielzahl von Darstellungen des bestimmten CGR-Objekts aus einer ersten Perspektive auf der Anzeige ein, wobei jede der Vielzahl von Darstellungen des bestimmten CGR-Objekts einem anderen jeweiligen Wert des Parameters zugeordnet ist. Beispielsweise zeigt in 8AU die Vorrichtung 100 die Live-Ansicht-Benutzerschnittstelle 811 an, welche die Vielzahl von Ansichtsfenstern 811DA-811DC einschließt, die jeweils eine Vielzahl von Darstellungen des CGR-Becher-Objekts 811EA-811EC einschließen, jeweils mit einem anderen Muster.
  • Das Empfangen der Benutzereingabe, die ein oder mehrere CGR-Objekte der CGR-Szene zuordnet, schließt ferner das Empfangen, über die eine oder die mehreren Eingabevorrichtungen, einer Benutzereingabe ein, welche die erste Perspektive in eine zweite Perspektive ändert. Beispielsweise erfasst in 8AU die Vorrichtung 100 die Benutzereingabe 899AN, die an das erste Ansichtsfenster 811DA gerichtet ist, wodurch die Perspektive der Ansichtsfenster 811DA-811DC geändert wird.
  • Das Empfangen der Benutzereingabe, die ein oder mehrere CGR-Objekte der CGR-Szene zuordnet, schließt ferner als Reaktion auf das Empfangen der Benutzereingabe, welche die erste Perspektive in eine zweite Perspektive ändert, das Anzeigen der Vielzahl von Darstellungen des bestimmten CGR-Objekts aus der zweiten Perspektive auf der Anzeige ein. Beispielsweise zeigt die Vorrichtung in 8AV die Vielzahl von Darstellungen des CGR-Becher-Objekts 811EA-811EC aus einer anderen Perspektive als in 8AU an.
  • In verschiedenen Ausführungsformen schließt das Empfangen der Benutzereingabe, die ein oder mehrere CGR-Objekte mit der CGR-Szene zugeordnet, ferner das Empfangen einer Benutzereingabe ein, die eine bestimmte Darstellung der Vielzahl von Darstellungen des bestimmten CGR-Objekts auswählt, und Setzen des Parameters des bestimmten CGR-Objekts auf den jeweiligen Wert des Parameters der bestimmten Darstellung. Beispielsweise erfasst in 8AW die Vorrichtung 100 die Benutzereingabe 899AP, die an das dritte Ansichtsfenster 811DC gerichtet ist, und setzt als Reaktion auf das Erfassen der Benutzereingabe 899AQ, die auf die OK-Affordance 811F in 8AX gerichtet ist, die Mustereinstellung des CGR-Becher-Objekts auf den „Efeu“-Wert, wie durch die Muster-Affordance 813DBC in 8AY angegeben.
  • In verschiedenen Ausführungsformen ist ein erstes CGR-Objekt des einen oder der mehreren CGR-Objekte einem Anzeigennetz und einem Physiknetz zugeordnet, das sich von dem Anzeigennetz unterscheidet, wobei das erste CGR-Objekt basierend auf dem Anzeigennetz anzuzeigen ist und eine Interaktion des ersten CGR-Objekts mit einem zweiten CGR-Objekt des einen oder der mehreren CGR-Objekte basierend auf dem Physiknetz zu bestimmen ist.
  • Beispielsweise zeigt die Vorrichtung 100 in 8DB eine Darstellung der zweiten CGR-Szene an, einschließlich der Darstellung des CGR-Kugel-Objekts 840C, der Darstellung des CGR-Platten-Objekts 840B und der Darstellung des CGR-Becher-Objekts 840A. Das Anzeigen der Darstellung des CGR-Kugel-Objekts 840C basiert auf einem durch den Golfballstil definierten Anzeigenetz. In 8DC bestimmt die Vorrichtung 100 eine Interaktion des CGR-Kugel-Objekts mit einem CGR-Objekt, das der Tabelle entspricht. In verschiedenen Ausführungsformen ist das zweite CGR-Objekt ein virtuelles Objekt. In 8DD bestimmt die Vorrichtung 100 eine Interaktion des CGR-Kugel-Objekts mit dem CGR-Platten-Objekt und/oder dem CGR-Becher-Objekt. In beiden Fällen wird die Interaktion basierend auf einem Physiknetz (z. B. einem Kugelnetz) bestimmt, das sich von dem durch den Golfballstil definierten Anzeigennetz unterscheidet.
  • In verschiedenen Ausführungsformen schließt das Physiknetz weniger Polygone als das Anzeigennetz ein.
  • Das Verfahren 1700 wird in Block 1740 fortgesetzt, indem die Vorrichtung über die eine oder die mehreren Eingabevorrichtungen eine Benutzereingabe empfängt, die ein Verhalten der CGR-Szene zuordnet, wobei das Verhalten einen oder mehrere Trigger und eine oder mehrere Aktionen beinhaltet und wobei die eine oder die mehreren Aktionen als Reaktion auf das Erkennen eines beliebigen des einen oder der mehreren Trigger durchzuführen sind. In 8BI erkennt die Vorrichtung 100 zum Beispiel die Benutzereingabe 899BB, die auf die Verhaltenshinzufügungs-Affordance 803AC gerichtet ist.
  • In verschiedenen Ausführungsformen schließt das Verhalten einen Trigger ein, der einem ersten CGR-Objekt des einen oder der mehreren CGR-Objekte zugeordnet ist, wobei das Verhalten eine Aktion einschließt, die einem zweiten CGR-Objekt des einen oder der mehreren CGR-Objekte zugeordnet ist, wobei das Verfahren ferner das Anzeigen einer Darstellung des ersten CGR-Objekts mit einer ersten Hervorhebung und das Anzeigen der Darstellung des zweiten CGR-Objekts mit einer zweiten Hervorhebung, die sich von der ersten Hervorhebung unterscheidet, einschließt. Beispielsweise sind in 8BX das erste CGR-Objekt und das zweite CGR-Objekt dasselbe CGR-Objekt, z. B. das CGR-Kugel-Objekt. Dementsprechend wird in 8BX die Darstellung des CGR-Kugel-Objekts 806D sowohl mit einer ersten Hervorhebung (z. B. einem Glimmen) als auch mit einer zweiten Hervorhebung (z. B. diagonales Hashen) angezeigt. Als weiteres Beispiel ist in 8CX das erste CGR-Objekt das CGR-Becher-Objekt und das zweite CGR-Objekt das CGR-Kugel-Objekt. Dementsprechend wird in 8CX die Darstellung des CGR-Becher-Objekts 806B mit der ersten Hervorhebung angezeigt, und die Darstellung des CGR-Kugel-Objekts 806D wird mit der zweiten Hervorhebung angezeigt.
  • Das Verfahren 1700 wird in Block 1750 fortgesetzt, wobei die Vorrichtung eine CGR-Datei erzeugt, die Daten bezüglich der CGR-Szene einschließt, wobei die CGR-Datei Daten bezüglich des Ankers, des einen oder der mehreren CGR-Objekte und des Verhaltens einschließt. In verschiedenen Ausführungsformen kann die CGR-Datei von einer CGR-Anwendung gelesen werden, um die CGR-Szene so darzustellen, dass das eine oder die mehreren CGR-Objekte in Verbindung mit dem Anker angezeigt werden und die eine oder die mehreren Aktionen als Reaktion auf das Erfassen eines beliebigen des einen oder der mehreren Trigger durchgeführt werden. In verschiedenen Ausführungsformen ist die CGR-Datei eine ausführbare Datei, die von einem Betriebssystem ausgeführt werden kann, um eine CGR-Anwendung bereitzustellen, welche die CGR-Szene dargestellt, so dass das eine oder die mehreren CGR-Objekte in Verbindung mit dem Anker angezeigt werden und die eine oder die mehreren Aktionen als Reaktion auf das Erfassen eines beliebigen des einen oder der mehreren Trigger durchgeführt werden.
  • In verschiedenen Ausführungsformen schließt die CGR-Datei eine XML- (Extensible Markup Language) oder JSON- (JavaScript Object Notation) Datei ein, die das Betrachten des Ankers, das eine oder die mehreren CGR-Objekte und das Verhalten beschreibt. In verschiedenen Ausführungsformen schließt die CGR-Datei verschiedene Datenstrukturen (z. B. Anzeigenetze, Physiknetze, Texturen, Bilder, Audio usw.) ein, die dem Anker, dem einen oder den mehreren CGR-Objekten und/oder dem Verhalten zugeordnet sind.
  • Die vorstehend beschriebenen Operationen in den informationsverarbeitenden Verfahren werden wahlweise implementiert, indem ein oder mehrere funktionelle Module auf Informationsverarbeitungseinrichtungen betrieben werden, wie etwa Allzweckprozessoren (wie z. B. vorstehend unter Bezugnahme auf 1A, 3 und 5A beschrieben) oder anwendungsspezifische Chips. Ferner können die oben unter Bezugnahme auf 9-17 beschriebenen Operationen optional durch die in den 1A-1B dargestellten Komponenten implementiert werden. Beispielsweise werden die Benutzereingaben und Elemente der Benutzeroberfläche optional durch den Ereignissortierer 170, die Ereigniserkennungseinrichtung 180 und die Ereignishandhabungseinrichtung 190 implementiert. Der Ereignismonitor 171 im Ereignissortierer 170 erfasst einen Kontakt auf der berührungsempfindlichen Oberfläche 604, und das Ereignisweitergabemodul 174 liefert die Ereignisinformationen an die Anwendung 136-1. Ein jeweiliges Ereigniserkennungsprogramm 180 der Anwendung 136-1 vergleicht die Ereignisinformationen mit jeweiligen Ereignisdefinitionen 186 und bestimmt, ob ein erster Kontakt an einer ersten Stelle auf der berührungsempfindlichen Oberfläche einem vordefinierten Ereignis oder Unterereignis entspricht, wie etwa der Auswahl eines Objekts auf einer Benutzerschnittstelle. Wenn ein betreffendes, vordefiniertes Ereignis oder Teilereignis erfasst wird, aktiviert die Ereigniserkennungseinrichtung 180 eine Ereignishandhabungseinrichtung 190, die dem Erfassen des Ereignisses oder des Teilereignisses zugeordnet ist. Die Ereignishandhabungseinrichtung 190 verwendet oder ruft wahlweise das Datenaktualisierungsprogramm 176 oder das Objektaktualisierungsprogramm 177 auf, um den internen Anwendungsstatus 192 zu aktualisieren. In manchen Ausführungsformen greift die Ereignishandhabungseinrichtung 190 auf eine betreffende GUI-Aktualisierungseinrichtung 178 zu, um zu aktualisieren, was von der Anwendung angezeigt wird. Auf ähnliche Weise ist dem Fachmann klar, wie andere Prozesse basierend auf den in 1A-1B abgebildeten Komponenten implementiert werden können.
  • Die vorstehende Beschreibung wurde zum Zweck der Erklärung unter Bezugnahme auf spezifische Ausführungsformen beschrieben. Jedoch sollen die vorstehenden veranschaulichenden Erörterungen weder erschöpfend sein noch die Erfindung auf die genauen, offenbarten Formen beschränken. Angesichts der vorstehenden Lehre sind viele Abänderungen und Variationen möglich. Die Ausführungsformen wurden ausgesucht und beschrieben, um die Prinzipien der Erfindung und ihre Anwendung in der Praxis bestmöglich zu erklären und es somit anderen Fachkundigen zu ermöglichen, die Erfindung und verschiedene beschriebene Ausführungsformen mit verschiedenen Abänderungen bestmöglich zu verwenden, je nachdem, wie sie für den beabsichtigten besonderen Gebrauch geeignet sind.
  • Eine erste Ausführungsform ist ein Verfahren, welches das Empfangen, über eine oder mehrere Eingabevorrichtungen, einer Benutzereingabe zum Präsentieren einer Szene einer computergenerierten Realität (CGR) einschließlich eines oder mehrerer CGR-Objekte umfasst, wobei die CGR-Szene einem ersten Anker und einem zweiten Anker zugeordnet ist; Erfassen eines Bildes einer physischen Umgebung mit einer Kamera; Bestimmen, dass dem Bild der physischen Umgebung ein Abschnitt fehlt, der dem ersten Anker entspricht, Erfassen eines Abschnitts des Bildes der physischen Umgebung, der dem zweiten Anker entspricht; und als Reaktion auf das Bestimmen, dass dem Bild der physischen Umgebung ein Abschnitt fehlt, der dem ersten Anker entspricht, und das Erfassen eines Abschnitts des Bildes der physischen Umgebung, der dem zweiten Anker entspricht, Anzeigen der CGR-Szene an einem Ort der Anzeige, die dem zweiten Anker entspricht, auf einer Anzeige.
  • Eine zweite Ausführungsform ist ein Verfahren, das der ersten Ausführungsform im Wesentlichen ähnlich ist, wobei das Anzeigen der CGR-Szene an dem Ort der Anzeige, die dem zweiten Anker entspricht, das Anzeigen der CGR-Szene einschließt, die am zweiten Anker verankert ist.
  • Eine dritte Ausführungsform ist ein Verfahren, das im Wesentlichen der ersten Ausführungsform oder der zweiten Ausführungsform ähnlich ist, wobei als Reaktion auf eine Änderung der Perspektive der Kamera die Anzeige der CGR-Szene auf der Anzeige entsprechend geändert wird.
  • Eine vierte Ausführungsform ist ein Verfahren, das im Wesentlichen einer der ersten bis dritten Ausführungsformen ähnlich ist, wobei der Abschnitt des Bildes der physischen Umgebung einem physischen Objekt entspricht und als Reaktion auf eine Bewegung des physischen Objekts die Anzeige der CGR-Szene entsprechend auf der Anzeige bewegt wird.
  • Eine fünfte Ausführungsform ist ein Verfahren, das im Wesentlichen einer der ersten bis vierten Ausführungsformen ähnlich ist, wobei das Anzeigen der CGR-Szene an der Position der Anzeige, die dem zweiten Anker entspricht, als Reaktion auf das Bestimmen durchgeführt wird, dass einer Vielzahl von Bildern der physischen Umgebung, die über eine Schwellenzeitdauer aufgenommen wurden, jeweils ein Abschnitt fehlt, der dem ersten Anker entspricht.
  • Eine sechste Ausführungsform ist ein Verfahren, das im Wesentlichen einer der ersten bis fünften Ausführungsformen ähnlich ist, wobei der erste Anker ein Ankerbild ist und der zweite Anker eine horizontale Ebene oder vertikale Ebene ist.
  • Eine siebte Ausführungsform ist ein Verfahren, das im Wesentlichen der sechsten Ausführungsform ähnlich ist, wobei die CGR-Szene dem Ankerbild zugeordnet wird, indem eine Bilddatei ausgewählt wird.
  • Eine achte Ausführungsform ist ein Verfahren, das der sechsten Ausführungsform im Wesentlichen ähnlich ist, wobei die CGR-Szene dem Ankerbild zugeordnet wird, indem das Ankerbild unter Verwendung der Kamera aufgenommen wird.
  • Eine neunte Ausführungsform ist ein Verfahren, das im Wesentlichen einer der ersten bis fünften Ausführungsformen ähnlich ist, wobei der erste Anker eine Tischplatte oder ein Boden ist und der zweite Anker eine horizontale Ebene ist.
  • Eine zehnte Ausführungsform ist ein Verfahren, das im Wesentlichen einer der ersten bis neunten Ausführungsformen ähnlich ist, wobei die CGR-Szene einem dritten Anker zugeordnet ist und das Bestimmen, dass dem Bild der physischen Umgebung ein Abschnitt fehlt, der dem ersten Anker entspricht, als Reaktion auf das Bestimmen durchgeführt wird, dass dem Bild der physischen Umgebung ein Abschnitt fehlt, der dem dritten Anker entspricht.
  • Eine andere erste Ausführungsform ist ein Verfahren, welches das Anzeigen einer Darstellung eines Objekts einer computergenerierten Realität (CGR), das einem ersten Parameter und einem zweiten Parameter zugeordnet ist, auf einer Anzeige umfasst, wobei der erste Parameter einen ersten von mehreren ersten Parameterwerten aufweist und der zweite Parameter einen ersten von mehreren zweiten Parameterwerten aufweist, Anzeigen, auf der Anzeige, eines ersten Benutzerschnittstellenelements zur Auswahl eines zweiten der Vielzahl von ersten Parameterwerten; und Anzeigen, auf der Anzeige, eines zweiten Benutzerschnittstellenelements zur Auswahl eines zweiten der Vielzahl von zweiten Parameterwerten, wobei, basierend auf dem ersten der Vielzahl von ersten Parameterwerten und einer oder mehreren Auswahlregeln, eine Teilmenge der Vielzahl von zweiten Parameterwerten zur Auswahl über das zweite Benutzerschnittstellenelement dargestellt wird.
  • Eine zweite Ausführungsform ist ein Verfahren, das der ersten Ausführungsform im Wesentlichen ähnlich ist, wobei das zweite Benutzerschnittstellenelement einen Satz auswählbarer Affordances, die der Teilmenge der Vielzahl von zweiten Parametern entsprechen, und einen Satz nicht auswählbarer Affordances, die den anderen der Vielzahl von zweiten Parametern entsprechen, einschließt.
  • Eine dritte Ausführungsform ist ein Verfahren, das der zweiten Ausführungsform im Wesentlichen ähnlich ist, wobei der Satz auswählbarer Affordances auf eine erste Weise angezeigt wird und der Satz nicht auswählbarer Affordances auf eine zweite Weise angezeigt wird, die sich von der ersten Weise unterscheidet.
  • Eine vierte Ausführungsform ist ein Verfahren, das im Wesentlichen einer der ersten bis dritten Ausführungsformen ähnlich ist, wobei das Verfahren ferner das Empfangen, über eine oder mehrere Eingabevorrichtungen, einer Benutzereingabe, die einen zweiten der Vielzahl von ersten Parameterwerten auswählt, umfasst; und Aktualisieren der Anzeige des zweiten Benutzerschnittstellenelements, wobei basierend auf dem zweiten der Vielzahl von ersten Parameterwerten und der einen oder den mehreren Auswahlregeln eine zweite Teilmenge der Vielzahl von zweiten Parametern zur Auswahl über das zweite Benutzerschnittstellenelement dargestellt wird.
  • Eine fünfte Ausführungsform ist ein Verfahren, das der vierten Ausführungsform im Wesentlichen ähnlich ist, wobei das Verfahren ferner das Aktualisieren der Anzeige der Darstellung des CGR-Objekts umfasst.
  • Eine sechste Ausführungsform ist ein Verfahren, das der vierten Ausführungsform oder fünften Ausführungsform im Wesentlichen ähnlich ist, wobei das Verfahren ferner das Empfangen einer Benutzereingabe umfasst, die den ersten Parameter des CGR-Objekts auf den zweiten der Vielzahl von ersten Parameterwerten aktualisiert.
  • Eine siebte Ausführungsform ist ein Verfahren, das im Wesentlichen ähnlich einer der ersten bis sechsten Ausführungsformen ist, wobei das Verfahren ferner das Anzeigen, auf der Anzeige, einer Vielzahl von Ansichts-Affordances, einschließlich einer Objektansichts-Affordance zum Wechseln in einen Objektansichtsmodus, in dem Benutzereingaben, die auf das CGR-Objekt gerichtet sind, eine Perspektive der Anzeige der Darstellung des CGR-Objekts ändern, und einer CGR-Ansichts-Affordance zum Wechseln in einen CGR-Ansichtsmodus, in dem eine Bewegung der Anzeige eine Perspektive der Anzeige der Darstellung des CGR-Objekts ändert.
  • Eine achte Ausführungsform ist ein Verfahren, das im Wesentlichen ähnlich einer der ersten bis siebten Ausführungsform ist, wobei dem CGR-Objekt ferner ein dritter Parameter zugeordnet ist, wobei der dritte Parameter einen ersten einer Vielzahl von dritten Parameterwerten aufweist, ferner umfassend das Anzeigen, auf der Anzeige, ein drittes Benutzerschnittstellenelement zur Auswahl eines zweiten der Vielzahl von dritten Parameterwerten, wobei basierend auf dem ersten der Vielzahl von ersten Parameterwerten, dem ersten der Vielzahl von zweiten Parameterwerten und der einen oder den mehreren Auswahlregeln eine Teilmenge der Vielzahl von dritten Parameterwerten zur Auswahl über das dritte Benutzerschnittstellenelement dargestellt wird.
  • Eine weitere erste Ausführungsform ist ein Verfahren, das Anzeigen einer Darstellung einer CGR-Szene auf einer Anzeige einschließt, einschließlich des Anzeigens einer Darstellung eines ersten CGR-Objekts der CGR-Szene, wobei das Anzeigen der Darstellung des ersten CGR-Objekts auf einem Anzeigenetz basiert, das dem ersten CGR-Objekt zugeordnet ist; und Bestimmen einer Interaktion des ersten CGR-Objekts mit einem zweiten CGR-Objekt der CGR-Szene basierend auf einem Physiknetz ein, das dem ersten CGR-Objekt zugeordnet ist, wobei sich das physikalische Netz, das dem ersten CGR-Objekt zugeordnet ist, von dem Anzeigennetz unterscheidet, das dem ersten CGR-Objekt zugeordnet ist.
  • Eine zweite Ausführungsform ist ein Verfahren, das der ersten Ausführungsform im Wesentlichen ähnlich ist, wobei das Anzeigen der Darstellung des ersten CGR-Objekts ferner auf einer Textur basiert, die dem ersten CGR-Objekt zugeordnet ist.
  • Eine dritte Ausführungsform ist ein Verfahren, das der ersten Ausführungsform oder der zweiten Ausführungsform im Wesentlichen ähnlich ist, wobei das Physiknetz weniger Polygone als das Anzeigennetz einschließt.
  • Eine vierte Ausführungsform ist ein Verfahren, das im Wesentlichen einer der ersten bis dritten Ausführungsformen ähnlich ist, wobei das Physiknetz glatter als das Anzeigenetz ist.
  • Eine fünfte Ausführungsform ist ein Verfahren, das im Wesentlichen einer der ersten bis vierten Ausführungsformen ähnlich ist, wobei das zweite CGR-Objekt einem physischen Objekt entspricht.
  • Eine sechste Ausführungsform ist ein Verfahren, das im Wesentlichen einer der ersten bis fünften Ausführungsformen ähnlich ist, wobei das zweite CGR-Objekt ein virtuelles Objekt ist.
  • Eine siebte Ausführungsform ist ein Verfahren, das im Wesentlichen ähnlich einer der ersten bis sechsten Ausführungsformen ist, wobei das Verfahren ferner, vor dem Bestimmen der Interaktion, Empfangen einer Benutzereingabe, die das physikalische Netz von einem ersten Netz, das das gleiche ist wie das Anzeigennetz, das dem ersten CGR-Objekt zugeordnet ist, zu einem zweiten Netz ändert, das sich von dem Anzeigennetz unterscheidet, das dem ersten CGR-Objekt zugeordnet ist; und als Reaktion auf das Empfangen der Benutzereingabe, die das Physiknetz ändert, Zuordnung des zweiten Netzes dem ersten CGR-Objekt als das Physiknetz.
  • Eine achte Ausführungsform ist ein Verfahren, das im Wesentlichen ähnlich der siebten Ausführungsform ist, wobei das erste CGR-Objekt durch eine CGR-Objektdatei beschrieben wird, die eine Vielzahl von Netzen einschließt, die das erste Netz und das zweite Netz einschließen.
  • Eine neunte Ausführungsform ist ein Verfahren, das im Wesentlichen ähnlich der achten Ausführungsform ist, wobei das Verfahren ferner das Empfangen einer Benutzereingabe zum Importieren eines Netzes in die CGR-Objektdatei umfasst; und als Reaktion auf das Empfangen der Benutzereingabe zum Importieren eines Netzes in die CGR-Objektdatei, Importieren eines dritten Netzes in die CGR-Objektdatei.

Claims (20)

  1. Verfahren, umfassend: Empfangen, über eine oder mehrere Eingabevorrichtungen, einer Benutzereingabe, um eine Szene der computergenerierten Realität (CGR) darzustellen, die ein oder mehrere CGR-Objekte einschließt, wobei die CGR-Szene einem ersten Anker und einem zweiten Anker zugeordnet ist; Erfassen eines Bildes einer physischen Umgebung mit einer Kamera; Bestimmen, dass dem Bild der physischen Umgebung ein Abschnitt fehlt, der dem ersten Anker entspricht; Erfassen eines Abschnitts des Bildes der physischen Umgebung, der dem zweiten Anker entspricht; und als Reaktion auf das Bestimmen, dass dem Bild der physischen Umgebung ein Abschnitt fehlt, der dem ersten Anker entspricht, und das Erfassen eines Abschnitts des Bildes der physischen Umgebung, der dem zweiten Anker entspricht, Anzeigen der CGR-Szene an einem Ort der Anzeige, die dem zweiten Anker entspricht, auf einer Anzeige.
  2. Verfahren nach Anspruch 1, wobei das Anzeigen der CGR-Szene an dem Ort der Anzeige, der dem zweiten Anker entspricht, das Anzeigen der CGR-Szene einschließt, die an dem zweiten Anker verankert ist.
  3. Verfahren nach einem der Ansprüche 1-2, wobei als Reaktion auf eine Änderung der Perspektive der Kamera die Anzeige der CGR-Szene auf der Anzeige entsprechend geändert wird.
  4. Verfahren nach einem der Ansprüche 1-3, wobei der Abschnitt des Bildes der physischen Umgebung einem physischen Objekt entspricht und als Reaktion auf eine Bewegung des physischen Objekts die Anzeige der CGR-Szene entsprechend auf der Anzeige bewegt wird.
  5. Verfahren nach einem der Ansprüche 1-4, wobei das Anzeigen der CGR-Szene an dem Ort der Anzeige, der dem zweiten Anker entspricht, als Reaktion auf das Bestimmen durchgeführt wird, dass mehreren Bildern der physischen Umgebung, die über eine Schwellenzeitdauer aufgenommen wurden, jeweils ein Abschnitt fehlt, der dem ersten Anker entspricht.
  6. Verfahren nach einem der Ansprüche 1-5, wobei der erste Anker ein Ankerbild ist und der zweite Anker eine horizontale Ebene oder vertikale Ebene ist.
  7. Verfahren nach Anspruch 6, wobei die CGR-Szene dem Ankerbild durch Auswählen einer Bilddatei zugeordnet wird.
  8. Verfahren nach Anspruch 6, wobei die CGR-Szene dem Ankerbild zugeordnet wird, indem das Ankerbild unter Verwendung der Kamera aufgenommen wird.
  9. Verfahren nach einem der Ansprüche 1-8, wobei der erste Anker eine Tischplatte oder ein Boden und der zweite Anker eine horizontale Ebene ist.
  10. Verfahren nach einem der Ansprüche 1-9, wobei die CGR-Szene einem dritten Anker zugeordnet ist und das Bestimmen, dass dem Bild der physischen Umgebung ein Abschnitt fehlt, der dem ersten Anker entspricht, als Reaktion auf das Bestimmen durchgeführt wird, dass dem Bild der physischen Umgebung ein Abschnitt fehlt, der dem dritten Anker entspricht.
  11. Elektronische Vorrichtung, umfassend: eine Kamera; eine Anzeige; eine oder mehrere Eingabevorrichtungen, einen nicht-transitorischen Speicher; und einen oder mehrere Prozessoren zum: Empfangen, über die eine oder die mehreren Eingabevorrichtungen, einer Benutzereingabe zum Präsentieren einer Szene der computergenerierten Realität (CGR), die ein oder mehrere CGR-Objekte einschließt, wobei die CGR-Szene einem ersten Anker und einem zweiten Anker zugeordnet ist; Erfassen, unter Verwendung der Kamera, eines Bildes einer physischen Umgebung; Bestimmen, dass dem Bild der physischen Umgebung ein Abschnitt fehlt, der dem ersten Anker entspricht; Erfassen eines Abschnitts des Bildes der physischen Umgebung, der dem zweiten Anker entspricht; und als Reaktion auf das Bestimmen, dass dem Bild der physischen Umgebung ein Abschnitt fehlt, der dem ersten Anker entspricht, und das Erfassen eines Abschnitts des Bildes der physischen Umgebung, der dem zweiten Anker entspricht, Anzeigen, auf der Anzeige, der CGR-Szene an einem Ort der Anzeige, die dem zweiten Anker entspricht.
  12. Elektronische Vorrichtung nach Anspruch 11, wobei als Reaktion auf eine Änderung der Perspektive der Kamera der eine oder die mehreren Prozessoren ferner der entsprechenden Änderung der Anzeige der CGR-Szene auf der Anzeige dienen.
  13. Elektronische Vorrichtung nach einem der Ansprüche 11-12, wobei der Abschnitt des Bildes der physischen Umgebung einem physischen Objekt entspricht und als Reaktion auf eine Bewegung des physischen Objekts der eine oder die mehreren Prozessoren ferner die Anzeige der CGR-Szene auf der Anzeige entsprechend bewegen sollen.
  14. Elektronische Vorrichtung nach einem der Ansprüche 11-13, wobei der eine oder die mehreren Prozessoren die CGR-Szene an dem Ort der Anzeige anzeigen sollen, der dem zweiten Anker entspricht, als Reaktion auf das Bestimmen, dass einer Vielzahl von Bildern der physischen Umgebung, die über eine Schwellenzeitdauer aufgenommen wurden, jeweils ein Abschnitt fehlt, der dem ersten Anker entspricht.
  15. Elektronische Vorrichtung nach einem der Ansprüche 11-14, wobei der erste Anker ein Ankerbild ist und der zweite Anker eine horizontale Ebene oder vertikale Ebene ist.
  16. Elektronische Vorrichtung nach einem der Ansprüche 11-15, wobei der erste Anker eine Tischplatte oder ein Boden und der zweite Anker eine horizontale Ebene ist.
  17. Nichtflüchtiges computerlesbares Medium mit darauf codierten Anweisungen, die, wenn sie von einer elektronischen Vorrichtung ausgeführt werden, die eine Kamera, eine Anzeige, eine oder mehrere Eingabevorrichtungen und einen oder mehrere Prozessoren einschließt, die bewirken, das die elektronische Vorrichtung Folgendes durchführt: Empfangen, über die eine oder die mehreren Eingabevorrichtungen, einer Benutzereingabe zum Präsentieren einer Szene der computergenerierten Realität (CGR), die ein oder mehrere CGR-Objekte einschließt, wobei die CGR-Szene einem ersten Anker und einem zweiten Anker zugeordnet ist; Erfassen, unter Verwendung der Kamera, eines Bildes einer physischen Umgebung; Bestimmen, dass dem Bild der physischen Umgebung ein Abschnitt fehlt, der dem ersten Anker entspricht; Erfassen eines Abschnitts des Bildes der physischen Umgebung, der dem zweiten Anker entspricht; und als Reaktion auf das Bestimmen, dass dem Bild der physischen Umgebung ein Abschnitt fehlt, der dem ersten Anker entspricht, und das Erfassen eines Abschnitts des Bildes der physischen Umgebung, der dem zweiten Anker entspricht, Anzeigen, auf der Anzeige, der CGR-Szene an einem Ort der Anzeige, die dem zweiten Anker entspricht.
  18. Nichtflüchtiges computerlesbares Medium nach Anspruch 17, wobei der Abschnitt des Bildes der physischen Umgebung einem physischen Objekt entspricht und wobei die Anweisungen, wenn sie von der elektronischen Vorrichtung ausgeführt werden, bewirken, dass die elektronische Vorrichtung als Reaktion auf eine Bewegung des physischen Objekts die Anzeige der CGR-Szene auf der Anzeige entsprechend bewegt.
  19. Nichtflüchtiges computerlesbares Medium nach einem der Ansprüche 17-18, wobei die Anweisungen, wenn sie von der elektronischen Vorrichtung ausgeführt werden, bewirken, dass die Vorrichtung die CGR-Szene an dem Ort der Anzeige anzeigt, der dem zweiten Anker entspricht, als Reaktion auf das Bestimmen, dass mehreren Bildern der physischen Umgebung, die über eine Schwellenzeitdauer aufgenommen wurden, jeweils ein Abschnitt fehlt, der dem ersten Anker entspricht.
  20. Nichtflüchtiges computerlesbares Medium nach einem der Ansprüche 17-19, wobei der erste Anker ein Ankerbild ist und der zweite Anker eine horizontale Ebene oder vertikale Ebene ist.
DE112020002268.4T 2019-05-06 2020-04-08 Vorrichtung, verfahren und computerlesbares medium zur darstellung von dateien computergenerierter realität Pending DE112020002268T5 (de)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US201916403858A 2019-05-06 2019-05-06
US16/403,858 2019-05-06
PCT/US2020/027183 WO2020226832A1 (en) 2019-05-06 2020-04-08 Device, method, and computer-readable medium for presenting computer-generated reality files

Publications (1)

Publication Number Publication Date
DE112020002268T5 true DE112020002268T5 (de) 2022-02-10

Family

ID=70476462

Family Applications (1)

Application Number Title Priority Date Filing Date
DE112020002268.4T Pending DE112020002268T5 (de) 2019-05-06 2020-04-08 Vorrichtung, verfahren und computerlesbares medium zur darstellung von dateien computergenerierter realität

Country Status (4)

Country Link
US (2) US11250604B2 (de)
CN (1) CN113508361A (de)
DE (1) DE112020002268T5 (de)
WO (1) WO2020226832A1 (de)

Families Citing this family (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2020226832A1 (en) * 2019-05-06 2020-11-12 Apple Inc. Device, method, and computer-readable medium for presenting computer-generated reality files
US11227445B1 (en) 2020-08-31 2022-01-18 Facebook Technologies, Llc Artificial reality augments and surfaces
US11176755B1 (en) 2020-08-31 2021-11-16 Facebook Technologies, Llc Artificial reality augments and surfaces
US11113893B1 (en) 2020-11-17 2021-09-07 Facebook Technologies, Llc Artificial reality environment with glints displayed by an extra reality device
US11409405B1 (en) * 2020-12-22 2022-08-09 Facebook Technologies, Llc Augment orchestration in an artificial reality environment
US11762952B2 (en) 2021-06-28 2023-09-19 Meta Platforms Technologies, Llc Artificial reality application lifecycle
US12008717B2 (en) 2021-07-07 2024-06-11 Meta Platforms Technologies, Llc Artificial reality environment control through an artificial reality environment schema
US11874959B2 (en) * 2021-09-15 2024-01-16 Sony Interactive Entertainment Inc. Dynamic notification surfacing in virtual or augmented reality scenes
US11798247B2 (en) 2021-10-27 2023-10-24 Meta Platforms Technologies, Llc Virtual object structures and interrelationships
US11748944B2 (en) 2021-10-27 2023-09-05 Meta Platforms Technologies, Llc Virtual object structures and interrelationships
US11947862B1 (en) 2022-12-30 2024-04-02 Meta Platforms Technologies, Llc Streaming native application content to artificial reality devices

Family Cites Families (66)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6317144B1 (en) * 1998-11-30 2001-11-13 Sun Microsystems, Inc. Method and apparatus for navigating displayed elements
JP2008508621A (ja) * 2004-08-03 2008-03-21 シルバーブルック リサーチ ピーティワイ リミテッド ウォークアップ印刷
DE102005009437A1 (de) 2005-03-02 2006-09-07 Kuka Roboter Gmbh Verfahren und Vorrichtung zum Einblenden von AR-Objekten
US9526587B2 (en) 2008-12-31 2016-12-27 Intuitive Surgical Operations, Inc. Fiducial marker design and detection for locating surgical instrument in images
WO2010029553A1 (en) 2008-09-11 2010-03-18 Netanel Hagbi Method and system for compositing an augmented reality scene
CN102884490B (zh) * 2010-03-05 2016-05-04 索尼电脑娱乐美国公司 在共享的稳定虚拟空间上维持多视图
US10332176B2 (en) * 2014-08-28 2019-06-25 Ebay Inc. Methods and systems for virtual fitting rooms or hybrid stores
KR101329882B1 (ko) 2010-08-12 2013-11-15 주식회사 팬택 Ar 정보창 표시를 위한 사용자 장치 및 그 방법
EP2691935A1 (de) * 2011-03-29 2014-02-05 Qualcomm Incorporated System zur darstellung von gemeinsam genutzten digitalen schnittstellen in relation zur perspektive eines jeden benutzers
US8872852B2 (en) 2011-06-30 2014-10-28 International Business Machines Corporation Positional context determination with multi marker confidence ranking
US9443353B2 (en) * 2011-12-01 2016-09-13 Qualcomm Incorporated Methods and systems for capturing and moving 3D models and true-scale metadata of real world objects
WO2013119221A1 (en) 2012-02-08 2013-08-15 Intel Corporation Augmented reality creation using a real scene
CN103472909B (zh) 2012-04-10 2017-04-12 微软技术许可有限责任公司 用于头戴式、增强现实显示器的逼真遮挡
US9214137B2 (en) 2012-06-18 2015-12-15 Xerox Corporation Methods and systems for realistic rendering of digital objects in augmented reality
US20140267411A1 (en) 2013-03-15 2014-09-18 Elwha Llc Indicating observation or visibility patterns in augmented reality systems
US9158431B2 (en) 2013-05-29 2015-10-13 Intergraph Corporation Apparatus and method for manipulating the orientation of an object on a display device
US10139623B2 (en) 2013-06-18 2018-11-27 Microsoft Technology Licensing, Llc Virtual object orientation and visualization
AU2013245477A1 (en) * 2013-10-16 2015-04-30 Canon Kabushiki Kaisha Method, system and apparatus for determining a contour segment for an object in an image captured by a camera
US9911235B2 (en) 2014-11-14 2018-03-06 Qualcomm Incorporated Spatial interaction in augmented reality
US9778814B2 (en) 2014-12-19 2017-10-03 Microsoft Technology Licensing, Llc Assisted object placement in a three-dimensional visualization system
US10740971B2 (en) 2015-01-20 2020-08-11 Microsoft Technology Licensing, Llc Augmented reality field of view object follower
US9643314B2 (en) 2015-03-04 2017-05-09 The Johns Hopkins University Robot control, training and collaboration in an immersive virtual reality environment
EP3286718A4 (de) 2015-04-23 2018-12-05 Hasbro, Inc. Kontextbewusstes digitales spiel
US9520002B1 (en) * 2015-06-24 2016-12-13 Microsoft Technology Licensing, Llc Virtual place-located anchor
US20160379405A1 (en) * 2015-06-26 2016-12-29 Jim S Baca Technologies for generating computer models, devices, systems, and methods utilizing the same
US10176642B2 (en) * 2015-07-17 2019-01-08 Bao Tran Systems and methods for computer assisted operation
WO2017139509A1 (en) 2016-02-12 2017-08-17 Purdue Research Foundation Manipulating 3d virtual objects using hand-held controllers
US10373381B2 (en) * 2016-03-30 2019-08-06 Microsoft Technology Licensing, Llc Virtual object manipulation within physical environment
WO2017201162A1 (en) * 2016-05-17 2017-11-23 Google Llc Virtual/augmented reality input device
US10338392B2 (en) 2016-06-13 2019-07-02 Microsoft Technology Licensing, Llc Identification of augmented reality image display position
US20180095450A1 (en) 2016-09-30 2018-04-05 Velo3D, Inc. Three-dimensional objects and their formation
US10593116B2 (en) * 2016-10-24 2020-03-17 Snap Inc. Augmented reality object manipulation
US11995428B2 (en) * 2017-01-26 2024-05-28 Nice Inc. Method and system for providing image-based interoperability with an application
US10360736B2 (en) * 2017-03-15 2019-07-23 Facebook, Inc. Visual editor for designing augmented-reality effects
US10379606B2 (en) * 2017-03-30 2019-08-13 Microsoft Technology Licensing, Llc Hologram anchor prioritization
US10466953B2 (en) 2017-03-30 2019-11-05 Microsoft Technology Licensing, Llc Sharing neighboring map data across devices
US10249095B2 (en) * 2017-04-07 2019-04-02 Microsoft Technology Licensing, Llc Context-based discovery of applications
CA3059234A1 (en) 2017-04-19 2018-10-25 Magic Leap, Inc. Multimodal task execution and text editing for a wearable system
US10871934B2 (en) 2017-05-04 2020-12-22 Microsoft Technology Licensing, Llc Virtual content displayed with shared anchor
US20180350145A1 (en) * 2017-05-30 2018-12-06 Reston Restoration Augmented Reality Devices and Methods Thereof for Rendering Virtual Objects
WO2018222248A1 (en) * 2017-06-02 2018-12-06 Apple Inc. Method and device for detecting planes and/or quadtrees for use as a virtual substrate
WO2018237172A1 (en) 2017-06-21 2018-12-27 Quantum Interface, Llc SYSTEMS, APPARATUSES, INTERFACES AND METHODS FOR VIRTUAL CONTROL CONSTRUCTIONS, OCULAR MOTION OBJECT CONTROL DEVICES, AND VIRTUAL TRAINING
US10504297B2 (en) * 2017-07-14 2019-12-10 Glu Mobile Inc. Systems and methods for competitive scene completion in an application
US10943399B2 (en) 2017-08-28 2021-03-09 Microsoft Technology Licensing, Llc Systems and methods of physics layer prioritization in virtual environments
US10489951B2 (en) 2017-09-29 2019-11-26 Qualcomm Incorporated Display of a live scene and auxiliary object
US10685456B2 (en) 2017-10-12 2020-06-16 Microsoft Technology Licensing, Llc Peer to peer remote localization for devices
US20190114037A1 (en) * 2017-10-17 2019-04-18 Blend Systems, Inc. Systems and methods for distributing customized avatars responsive to events
US10600205B2 (en) 2018-01-08 2020-03-24 Htc Corporation Anchor recognition in reality system
KR20200121357A (ko) * 2018-02-22 2020-10-23 매직 립, 인코포레이티드 물리적 조작을 사용한 오브젝트 생성
CN108510597A (zh) * 2018-03-09 2018-09-07 北京小米移动软件有限公司 虚拟场景的编辑方法、装置及非临时性计算机可读存储介质
US10475196B2 (en) 2018-03-22 2019-11-12 Microsoft Technology Licensing, Llc Hybrid depth detection and movement detection
US10944957B2 (en) 2018-03-22 2021-03-09 Microsoft Technology Licensing, Llc Active stereo matching for depth applications
US20210056762A1 (en) * 2018-03-23 2021-02-25 Hoverlay, Inc. Design and generation of augmented reality experiences for structured distribution of content based on location-based triggers
US10672159B2 (en) 2018-04-02 2020-06-02 Microsoft Technology Licensing, Llc Anchor graph
GB2572786B (en) * 2018-04-10 2022-03-09 Advanced Risc Mach Ltd Image processing for augmented reality
US10937249B2 (en) * 2018-05-07 2021-03-02 Google Llc Systems and methods for anchoring virtual objects to physical locations
US10579230B2 (en) 2018-06-21 2020-03-03 Google Llc Digital supplement association and retrieval for visual search
US20200082576A1 (en) * 2018-09-11 2020-03-12 Apple Inc. Method, Device, and System for Delivering Recommendations
US10776954B2 (en) * 2018-10-08 2020-09-15 Microsoft Technology Licensing, Llc Real-world anchor in a virtual-reality environment
US20200111256A1 (en) * 2018-10-08 2020-04-09 Microsoft Technology Licensing, Llc Real-world anchor in a virtual-reality environment
EP3948840A4 (de) * 2019-03-18 2023-07-19 Geomagical Labs, Inc. Virtuelle interaktion mit dreidimensionalem innenraumbildmaterial
WO2020226832A1 (en) * 2019-05-06 2020-11-12 Apple Inc. Device, method, and computer-readable medium for presenting computer-generated reality files
CN113544634A (zh) * 2019-05-06 2021-10-22 苹果公司 用于构成cgr文件的设备、方法和图形用户界面
US11055585B2 (en) * 2019-09-26 2021-07-06 Vintra, Inc. Object detection based on object relation
US11003308B1 (en) * 2020-02-03 2021-05-11 Apple Inc. Systems, methods, and graphical user interfaces for annotating, measuring, and modeling environments
US11521361B1 (en) * 2021-07-01 2022-12-06 Meta Platforms Technologies, Llc Environment model with surfaces and per-surface volumes

Also Published As

Publication number Publication date
WO2020226832A1 (en) 2020-11-12
US11250604B2 (en) 2022-02-15
US20220130089A1 (en) 2022-04-28
CN113508361A (zh) 2021-10-15
US20200357155A1 (en) 2020-11-12

Similar Documents

Publication Publication Date Title
DE112020002268T5 (de) Vorrichtung, verfahren und computerlesbares medium zur darstellung von dateien computergenerierter realität
KR102606618B1 (ko) 증강 및 가상 현실 환경들과 상호작용하기 위한 시스템들, 방법들, 및 그래픽 사용자 인터페이스들
KR102274977B1 (ko) 사용자 인터페이스 카메라 효과들
EP4300430A2 (de) Vorrichtung, verfahren und grafische benutzeroberfläche zum erstellen von cgr-dateien
JP7073238B2 (ja) クリエイティブカメラ
DE202014004572U1 (de) Vorrichtung und grafische Benutzerschnittstelle zum Schalten zwischen Kameraschnittstellen
DE202016002906U1 (de) Vorrichtungen zum Navigieren zwischen Benutzerschnittstellen
DE202015006141U1 (de) Elektronische Touch-Kommunikation
DE202014004544U1 (de) Vorrichtung und graphische Benutzerschnittstelle zum Bereitstellen von Navigations- und Suchfunktionalitäten
DE112015004021T5 (de) Elektronische touch-kommunikation
DE202016002908U1 (de) Vorrichtungen zum Navigieren zwischen Benutzerschnittstellen
DE112013002409T5 (de) Vorrichtung, Verfahren und grafische Benutzeroberfläche für die Anzeige zusätzlicher Informationen in Reaktion auf einen Benutzerkontakt
DE112013002387T5 (de) Vorrichtung, Verfahren und grafische Benutzeroberfläche für die Bereitstellung taktiler Rückkopplung für Operationen in einer Benutzerschnittstelle
US11782571B2 (en) Device, method, and graphical user interface for manipulating 3D objects on a 2D screen
DE112020002244T5 (de) Vorrichtung, Verfahren und grafische Benutzerschnittstelle zur Erzeugung von CGR-Objekten
JP2022008997A (ja) クリエイティブカメラ

Legal Events

Date Code Title Description
R012 Request for examination validly filed