DE102020127862A1 - Erhöhung der benutzerbindung während des wartens auf die zuweisung von rechenmitteln für cloud-dienste - Google Patents

Erhöhung der benutzerbindung während des wartens auf die zuweisung von rechenmitteln für cloud-dienste Download PDF

Info

Publication number
DE102020127862A1
DE102020127862A1 DE102020127862.4A DE102020127862A DE102020127862A1 DE 102020127862 A1 DE102020127862 A1 DE 102020127862A1 DE 102020127862 A DE102020127862 A DE 102020127862A DE 102020127862 A1 DE102020127862 A1 DE 102020127862A1
Authority
DE
Germany
Prior art keywords
user
game
presentation
application
window
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
DE102020127862.4A
Other languages
English (en)
Inventor
Hardik Jagdishbhai PAREKH
Sonakshi Anil Kumar Agrawal
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.)
Nvidia Corp
Original Assignee
Nvidia Corp
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 Nvidia Corp filed Critical Nvidia Corp
Publication of DE102020127862A1 publication Critical patent/DE102020127862A1/de
Pending legal-status Critical Current

Links

Images

Classifications

    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F13/00Video games, i.e. games using an electronically generated display having two or more dimensions
    • A63F13/30Interconnection arrangements between game servers and game devices; Interconnection arrangements between game devices; Interconnection arrangements between game servers
    • A63F13/35Details of game servers
    • A63F13/355Performing operations on behalf of clients with restricted processing capabilities, e.g. servers transform changing game scene into an MPEG-stream for transmitting to a mobile phone or a thin client
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F13/00Video games, i.e. games using an electronically generated display having two or more dimensions
    • A63F13/45Controlling the progress of the video game
    • A63F13/48Starting a game, e.g. activating a game device or waiting for other players to join a multiplayer session
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F13/00Video games, i.e. games using an electronically generated display having two or more dimensions
    • A63F13/70Game security or game management aspects
    • A63F13/77Game security or game management aspects involving data related to game devices or game servers, e.g. configuration data, software version or amount of memory
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F13/00Video games, i.e. games using an electronically generated display having two or more dimensions
    • A63F13/85Providing additional services to players
    • A63F13/88Mini-games executed independently while main games are being loaded
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/50Allocation of resources, e.g. of the central processing unit [CPU]
    • G06F9/5061Partitioning or combining of resources
    • G06F9/5072Grid computing
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/50Network services
    • H04L67/60Scheduling or organising the servicing of application requests, e.g. requests for application data transmissions using the analysis and optimisation of the required network resources
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/50Network services
    • H04L67/75Indicating network or usage conditions on the user display
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/23Processing of content or additional data; Elementary server operations; Server middleware
    • H04N21/239Interfacing the upstream path of the transmission network, e.g. prioritizing client content requests
    • H04N21/2393Interfacing the upstream path of the transmission network, e.g. prioritizing client content requests involving handling client requests
    • H04N21/2396Interfacing the upstream path of the transmission network, e.g. prioritizing client content requests involving handling client requests characterized by admission policies
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/43Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
    • H04N21/431Generation of visual interfaces for content selection or interaction; Content or additional data rendering
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/47End-user applications
    • H04N21/472End-user interface for requesting content, additional data or services; End-user interface for interacting with content, e.g. for content reservation or setting reminders, for requesting event notification, for manipulating displayed content
    • H04N21/47202End-user interface for requesting content, additional data or services; End-user interface for interacting with content, e.g. for content reservation or setting reminders, for requesting event notification, for manipulating displayed content for requesting content on demand, e.g. video on demand
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/47End-user applications
    • H04N21/475End-user interface for inputting end-user data, e.g. personal identification number [PIN], preference data
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/47End-user applications
    • H04N21/478Supplemental services, e.g. displaying phone caller identification, shopping application
    • H04N21/4781Games
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/47End-user applications
    • H04N21/488Data services, e.g. news ticker
    • H04N21/4882Data services, e.g. news ticker for displaying messages, e.g. warnings, reminders
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/14Session management

Abstract

Bei verschiedenen Beispielen werden bei Empfang eines Hinweises von einer Startanwendung, dass ein Benutzer einen Cloud-Spiel- oder Rechen-Dienst in Anspruch nehmen möchte, und einem Bestimmen, dass ein erwünschtes Rechenmittel, welche für diese Inanspruchnahme angefordert wird, nicht für eine Zuweisung verfügbar ist, eine oder mehrere interaktive Inhaltselemente im Zusammenhang mit einer Anzeige einer lokalen Recheneinrichtung des Benutzers dargestellt. Eine Benutzerbetätigung eines interaktiven Inhaltselements kann eine Präsentation eines Optionenfensters veranlassen. Eine Option kann eine Präsentation eines zusätzlichen Inhaltselements in dem Hintergrund bewirken, so dass es nach der Inanspruchnahme betrachtet werden kann. Eine andere Option kann eine Anzeige eines zusätzlichen Inhaltselements bewirken, z. B. anstelle des interaktiven Inhaltselements oder in einem Webbrowser außerhalb der Startanwendung. Diese Option kann eine Stornierung der Benutzeranforderung für die Zuweisung und ein Entfernen der Benutzeranforderung aus einer Warteschlange bewirken.

Description

  • HINTERGRUND
  • Cloud-Spieldienste bieten den Benutzern die Möglichkeit, Softwareanwendungen (z. B. Videospiele) mit Hilfe von abgesetzter Hardware, in der Regel in Form von Recheneinrichtungen, wie z. B. Servern, zu nutzen, die einem separaten Unternehmen, z. B. einem Anbieter von Cloud-Spieldiensten, gehören und von diesem betrieben werden. Anstatt alle oder einen wesentlichen Teil der für die Ausführung eines Spiels oder einer anderen Anwendung erforderlichen Dinge auf das lokale Computersystem eines Benutzers (z.B. einen PersonalComputer, Laptop oder eine Spielkonsole) herunterzuladen und lokal zu spielen, ist das Cloud-Gaming auf Internet-Streaming angewiesen, um grafische Inhalte an die Spiel- und/oder Anzeige-Einrichtung der Wahl des Benutzers zu liefern und alle Änderungen an Weltmodellen oder Anwendungszuständen, die aus den Eingaben des Benutzers hervorgehen, zu kommunizieren. Auf diese Weise muss sich die Konsole, der Fernseher, das Mobiltelefon oder der Computer eines Benutzers nicht auf seine eigene interne Hardware verlassen, um Grafiken zu rendern oder andere Berechnungen für Spiele und andere grafische Anwendungen durchzuführen. Folglich können Spiele und Anwendungen, die der Benutzer nicht lokal ausführen kann (z.B. aufgrund von Systembeschränkungen und ähnlichem), von dem Benutzer über Cloud-Computing genutzt werden.
  • Obwohl die Nutzung von Cloud-Computing-Diensten vielen Benutzern erweiterte Möglichkeiten bietet, können solche Dienste in einigen Fällen Einschränkungen hinsichtlich der Anzahl der Benutzer haben, die auf einmal bedient werden können. Um diese Dienste bereitzustellen, kann ein Anbieter von Cloud-Computing-Diensten den Benutzern Rechenressourcen bzw. Rechenmittel, wie virtuelle Maschinen (VMs) (z.B. virtuelle Spielkonsolen), zuweisen, um einen Teil der für Spielsitzungen erforderlichen Rechenleistung zu erbringen. Es kann jedoch eine begrenzte Menge von Rechenmitteln oder andere Beschränkungen geben, mit denen Benutzer gleichzeitig bedient werden können, was zu Einschränkungen bei der Nutzung der Dienste durch einen Benutzer führen kann. Zum Beispiel haben einige Cloud-Spieldienste Sitzungszeitbegrenzungen eingeführt, so dass ein einzelner Benutzer nicht einen übergroßen Teil der Rechenmittel für mehr als einen bestimmten Zeitraum an sich reißen oder verbrauchen kann. Als weiteres Beispiel haben einige Cloud-Spieldienste ein abgestuftes Zugangsmodell für ihre Dienste eingeführt. Zum Beispiel können Anbieter von Cloud-Spieldiensten eine erste Stufe, die die Benutzer wählen können und die ihnen im Vergleich zu anderen Benutzern einen vorrangigen Zugang zu Rechenmitteln bereitstellt, und eine zweite Stufe mit einem anderen Kosten- und Prioritätsniveau, die die Benutzer wählen können, anbieten. Unabhängig davon, welche Beschränkungen ein Anbieter von Cloud-Spieldiensten den Benutzern seines Dienstes auferlegt, kann es Zeiten geben, in denen ein Benutzer die Rechenmittel eines Cloud-Spieldienstes nutzen möchte, ein solcher Dienst jedoch nicht über ausreichende Rechenmittel verfügt, die zu dem Zeitpunkt, zu dem der Benutzer einen Einsatz beantragt, sofort verfügbar sind.
  • Um der Verfügbarkeit von Rechenmitteln Rechnung zu tragen, haben viele Cloud-Spieldienste ein Warteschlangen- oder Wartelistenmodell implementiert, bei dem der Benutzer in eine Warteschlange (oder auf eine Warteliste) gesetzt wird, während er auf die Verfügbarkeit von Rechenmitteln wartet, wenn festgestellt wird, dass die Anforderung bzw. Anfrage eines Benutzers nach einem Einsatz bei dem Cloud-Spieldienst zum Zeitpunkt der Anfrage nicht erfüllt werden kann. In einigen Fällen werden die Benutzer in der Reihenfolge, in der ihre Anfragen erhalten werden, in die Warteschlange (oder auf die Warteliste) gesetzt, vorbehaltlich der anwendbaren Einschränkungen, wie z.B. dem oben besprochenen stufenweisen Zugriffsmodell. Sobald ein Benutzer in eine Zugriffswarteschlange eingereiht ist, muss er warten, bis die für seine angeforderte Nutzung und für die entsprechende Zugriffsstufe geeigneten Rechenmittel verfügbar sind.
  • Während ein Benutzer auf Rechenmittel wartet, zeigt ein Cloud-Spieldienst normalerweise einen Hinweis an, der den Benutzer darüber informiert, dass er sich in einer Warteschlange befindet und auf eine verfügbare Ressource bzw. Mittel wartet. Beispielsweise kann ein Hinweis mit der Angabe „In Warteschlange wartend...“ oder „Suche nach der nächsten verfügbaren Anlage“ (bezieht sich auf eine VM wie z.B. eine virtuelle Spielanlage) angezeigt werden. Auf diese Weise werden die Benutzer positiv darüber informiert, dass sie in die Warteschlange platziert wurden und dass der Dienst versucht, ein verfügbares Rechenmittel zuzuweisen. Oft wird in Verbindung mit dem Hinweis ein statisches Bild eines Startbildschirms präsentiert, das sich auf das Spiel bezieht, das der Benutzer angegeben hat und das er spielen möchte. Während der Startbildschirm anzeigen kann, dass das Spiel gerade im Begriff ist, gestartet zu werden, können die Benutzer, wenn die Wartezeiten für verfügbare Ressourcen manchmal sehr lang sind (z.B. 20-30 Minuten oder länger), während ihrer Wartezeit das Interesse an dem präsentierten statischen Bild verlieren. Ein Verlust des Interesses kann dazu führen, dass der Cloud-Spieldienst ganz abgebrochen wird. Dementsprechend kann die Präsentation statischer Startbildschirme - oder sogar eines wechselnden Ensembles von Startbildschirmen - während Zeiten, in denen Benutzer auf verfügbare Rechenmittel warten, unerwünscht sein, insbesondere wenn die Wartezeiten lang sind.
  • ZUSAMMENF ASSUNG
  • Ausführungsformen der vorliegenden Offenbarung beziehen sich auf eine Einbeziehung bzw. Bindung von Benutzern während der Wartezeiten auf die Zuweisung von Rechenmitteln, z.B. bei Cloud-Spieldiensten. Im Gegensatz zu herkömmlichen Systemen, wie den oben beschriebenen, bietet die vorliegende Offenbarung einen Mechanismus zur Aufrechterhaltung oder Erhöhung der Bindung der Benutzer an eine Anwendung (z.B. ein Spiel, eine Telekonferenz/Kommunikationsanwendung oder eine Software-Suite/Anwendung zur Erstellung von Inhalten), eines Dienstanbieters, während sie auf die Zuweisung von Rechenmitteln (z.B. Spiel- oder Rechenzeit-Slots) für eine Anwendungsinstanz warten.
  • Nach Erhalt eines Hinweises von einer Startanwendung, dass ein Benutzer einen Cloud-Spiel- oder Computerdienst in Anspruch nehmen möchte, und der Feststellung, dass ein für einen solchen Einsatz angefordertes gewünschtes Rechenmittel für die Zuweisung nicht verfügbar ist, können ein oder mehrere interaktive Inhaltselemente im Zusammenhang mit einer Anzeige der lokalen Recheneinrichtung des Benutzers präsentiert werden. Die Betätigung eines präsentierten interaktiven Inhaltselements durch den Benutzer kann eine Präsentation mindestens eines zusätzlichen bzw. weiteren Inhaltselements verursachen, das mit dem interaktiven Inhaltselement in Verbindung steht. Bei einigen Ausführungsformen bewirkt die Betätigung des Benutzers als erstes die Darstellung eines Optionsfensters. Eine Option kann eine Darstellung des/der zusätzlichen Inhaltselements/e im Hintergrund des Spiel- oder Anwendungsstartprogramms (und/oder eines Spielstartfensters oder Warteschlangenfensters) bewirken. Auf diese Weise ist/sind das/die zusätzliche(n) Inhaltselement(e) unaufdringlich und kann/können nach dem Spiel betrachtet werden. Eine andere Option kann dazu führen, dass der Benutzer an einen Online-Ort umgeleitet wird, an dem das/die zusätzliche(n) Inhaltselement(e) präsentiert wird/werden, z.B. an Stelle des/der interaktiven Inhaltselements/e oder in einem Webbrowser außerhalb der Startanwendung. Diese Option kann auch dazu führen, dass die Benutzeranfrage für die Zuweisung abgebrochen und die Benutzeranfrage aus einer Warteschlange entfernt wird (z.B. wenn das/die zusätzliche(n) Inhaltselement(e) in einer anderen Anwendung präsentiert wird/werden). Verschiedene Ausführungsformen können eine beliebige Anzahl dieser Optionen darstellen oder automatisch eine oder mehrere dieser Optionen implementieren, ohne sie zu präsentieren, wenn seit der Betätigung eines interaktiven Inhaltselements eine gewisse Zeit verstrichen ist.
  • Figurenliste
  • Die derzeitigen Systeme und Verfahren zur Bindung der Benutzer während der Wartezeiten auf die Zuweisung von Rechenmitteln, z. B. bei Cloud-Spieldiensten, werden im Folgenden unter Bezugnahme auf die beigefügten Figuren im Detail beschrieben, wobei gilt:
    • 1 ist gemäß einigen Ausführungsformen der vorliegenden Offenbarung eine Systemdarstellung eines beispielhaften Systems zur Bindung von Benutzern während der Wartezeiten auf die Zuteilung von Rechenmitteln;
    • 2 ist gemäß einigen Ausführungsformen der vorliegenden Offenbarung ein Flussdiagramm, das ein beispielhaftes Verfahren zur Bindung von Benutzern während der Wartezeiten auf die Zuteilung von Rechenmitteln darstellt;
    • 3 ist gemäß einigen Ausführungsformen der vorliegenden Offenbarung ein Flussdiagramm, das ein beispielhaftes Verfahren für die Bindung von Benutzern während der Wartezeiten auf die Zuteilung von Spiel-Slots darstellt;
    • 4 ist gemäß einigen Ausführungsformen der vorliegenden Offenbarung ein Flussdiagramm, das ein beispielhaftes Verfahren für die Bindung von Benutzern während der Wartezeiten auf die Zuteilung von Rechen-Slots darstellt;
    • 5 ist gemäß einigen Ausführungsformen der vorliegenden Offenbarung eine schematische Darstellung einer beispielhaften Bildschirmanzeige, die ein zusätzliches Inhaltselement darstellt, das in einem Fenster hinter einem Spielstartfenster präsentiert wird;
    • 6 ist gemäß einigen Ausführungsformen der vorliegenden Offenbarung eine schematische Darstellung einer beispielhaften Bildschirmanzeige, die ein Optionsfenster darstellt, das bei der Betätigung eines präsentierten interaktiven Inhaltselements durch den Benutzer präsentiert wird;
    • 7 ist gemäß einigen Ausführungsformen der vorliegenden Offenbarung eine beispielhafte Systemdarstellung für ein Spiel-Streaming-System; und
    • 8 ist ein Blockdiagramm einer beispielhaften Rechenumgebung, die zur Verwendung bei der Implementierung einiger Ausführungsformen der vorliegenden Offenbarung geeignet ist.
  • DETAILLIERTE BESCHREIBUNG
  • Es werden Systeme und Verfahren offenbart, die sich auf die Einbeziehung von Benutzern während der Wartezeiten bei der Zuweisung von Rechenmitteln bei Cloud-Spieldiensten beziehen. Im Gegensatz zu herkömmlichen Systemen stellt die vorliegende Offenbarung einen Mechanismus zur Verfügung, mit dem Benutzer mit einem Cloud-Spieldienst in Eingriff gehalten werden können, während sie auf die Zuweisung eines Spiel-Slots für den Benutzer und/oder anderer Rechenmittel für eine Spielinstanz warten. Offenbarte Ausführungsformen sollen nicht auf Spiele beschränkt sein, und der Verweis auf ein Spiel und/oder auf Rechenmittel, die ein Spiel unterstützen, kann sich allgemeiner auf eine Anwendung und/oder Rechenmittel beziehen, die eine Anwendung unterstützen, wie z.B. Cloud-Anwendungsdienste, Anwendungs-Slots bzw. Anwendungs-Zeiten und dergleichen. Cloud-Anwendungsdienste können nur als Beispiel Unternehmensanwendungsdienste (z. B. Finanzverwaltungssysteme, Finanzanalyseanwendungen, Finanzkontrollsysteme, automatisierte Abrechnungssysteme, Zahlungsverarbeitungssysteme, E-Mail-Marketingsysteme, Content-Management-Systeme, Kundenbeziehungsmanagementsysteme, Systeme zur Planung von Unternehmensressourcen, Business Intelligence-Systeme, Systeme zur Planung der Geschäftskontinuität, Personalverwaltungssysteme, Messaging- und Kollaborationssysteme und Ähnliches) und WebRTC-Anwendungen beinhalten. Alle Cloud-basierten Anwendungen, für die zu einem bestimmten Zeitpunkt eine begrenzte Menge an Rechenmitteln zur Verfügung steht, so dass auf eine Benutzeranfrage nach der Nutzung solcher Rechenmittel eine Wartezeit bis zum Beginn einer solchen Nutzung entstehen kann, werden als im Umfang der Ausführungsformen der vorliegenden Offenbarung liegend betrachtet.
  • Es werden Systeme und Verfahren offenbart, die z.B. von einer Spielstartanwendung eine Benutzeranfrage für die Zuweisung von mindestens einem von einem Cloud-Spieldienstanbieter angebotenen Rechenmittel für eine Instanz einer Spielanwendung erhalten können. Bei Ausführungsformen können solche Rechenmittel nur beispielhaft einen Spiel-Slot bzw. eine Spielzeit einer Vielzahl von Spiel-Slots (und/oder eine oder mehrere Virtuelle Maschinen (VMs)) aufweisen, die für eine Zuweisung durch den Anbieter von Spieldiensten zur Verfügung stehen. Wie er hier verwendet wird, kann sich der Begriff „Spiel-Slot(s)“ auf eine von einer endlichen Anzahl von Spielinstanzen beziehen, für die ein Einsatz zu einer bestimmten Zeit möglich ist. Beispielsweise kann ein bestimmtes Spiel hundert Online-Spielern ermöglichen, dass sie sich gleichzeitig an dem Spiel beteiligen. In diesem Fall würde jeder der einhundert Online-Spieler einen einzelnen Spiel-Slot von einhundert verfügbaren Spiel-Slots besetzen. In ähnlicher Weise kann sich die Verwendung des Begriffs „Anwendungs-Slot(s)“ auf eine von einer endlichen Anzahl von Anwendungsinstanzen beziehen, für die ein Einsatz bzw. eine Einbindung zu einer bestimmten Zeit möglich ist.
  • Abhängig von der Anforderung können die offenbarten Systeme und Verfahren bestimmen, dass das/die angeforderte(n) Rechenmittel zum Zeitpunkt, zu dem die Anforderung eingeht, nicht für eine Zuteilung verfügbar ist/sind. Abhängig von der Bestimmung der Nichtverfügbarkeit der Mittel kann die Benutzeranforderung in eine Warteschlange (oder auf eine Warteliste) von Benutzeranfragen für die angeforderten Rechenmittel (z.B. Spiel-Slots) gestellt werden.
  • Nach Erhalt einer Benutzeranforderung für die Zuweisung eines Rechenmittels und der Feststellung, dass das gewünschte Rechenmittel für die Zuweisung an den Benutzer nicht verfügbar ist, können ein oder mehrere interaktive Inhaltselemente präsentiert werden, z.B. in Verbindung mit der Anzeige einer Recheneinrichtung, die die Benutzeranforderung bereitgestellt hat. Wie er hier verwendet wird, kann sich der Begriff „interaktive(s) Inhaltselement(e)“ auf ein Element mit visuellem Inhalt (z.B. ein Bild) beziehen, dessen Betätigung die Darstellung eines oder mehrerer zusätzlicher bzw. weiterer Inhaltselemente bewirkt, die mit dem betätigten Inhaltselement in Beziehung stehen. Bei Ausführungsformen kann (können) das (die) interaktive(n) Inhaltselement(e) so gewählt werden, dass es (sie) den Benutzer zu einer Interaktion mittels einer Betätigung davon verleiten. Beispielsweise kann das/die interaktive(n) Inhaltselement(e) mit dem Spiel (oder einem anderen Software-Titel) verbunden sein, das der Benutzer zu spielen oder zu benutzen wünscht. Das/die interaktive(n) Inhaltselement(e) kann/können z.B. ein oder mehrere auswählbare Bilder beinhalten, die sich auf ein Zubehörteil beziehen, das das Gameplay des Spiels, das der Benutzer zu spielen wünscht, verbessert, und die Betätigung (z.B. Auswahl) des Bildes kann die Darstellung von Informationen bezüglich des Erwerbs des Zubehörteils veranlassen. Als weiteres Beispiel kann das/die interaktive(n) Inhaltselement(e) in Beziehung zu anderen Anwendungen stehen, an denen der Benutzer interessiert sein könnte. Ein weiteres Beispiel ist, dass das/die interaktive(n) Inhaltselement(e) von einem oder mehreren Parametern und/oder Einstellungen abhängen kann/können, die sich auf eine Spielsystem-Hardware, eine Software, Benutzerinformationen (z.B. Sprache, Region usw.) oder Dienste beziehen. Interaktive Inhaltselemente, die sich auf ein beliebiges Thema, beliebige Benutzerinformationen, ein beliebiges Produkt oder einen beliebigen Dienst beziehen, können im Rahmen von Ausführungsformen der vorliegenden Verfahren präsentiert werden.
  • Das/die interaktive(n) Inhaltselement(e) kann/können in einem oder mehreren Spielstartfenstern und/oder Warteschlangenfenstern einer Spielstartanwendung (in einer grafischen Benutzeroberfläche (GUI) davon) des Cloud-Spieldienstes präsentiert werden. Bei Ausführungsformen kann auch die Darstellung eines Hinweises erfolgen, der den Benutzer darüber informiert, dass er sich in einer Warteschlange befindet und auf ein verfügbares Rechenmittel wartet, so dass der Benutzer positiv darüber informiert bleibt, dass die Mittelzuweisung noch aussteht. Sobald ein Rechenmittel für die Zuweisung an den Benutzer verfügbar ist, kann die Präsentation des/der interaktiven Inhaltselements/e (und ggf. des Hinweises, der den Benutzer darüber informiert, dass er sich in einer Warteschlange befindet) (z.B. automatisch) beendet werden.
  • Unter Verwendung der hierin beschriebenen Verfahren kann die Betätigung eines präsentierten interaktiven Inhaltselements durch den Benutzer die Präsentation mindestens eines zusätzlichen Inhaltselements bewirken, das mit dem interaktiven Inhaltselement in Zusammenhang steht, während der Anbieter des Cloud-Spieldienstes weiterhin nach einem verfügbaren Rechenmittel (z. B. einer virtuellen Spieleinrichtung) sucht oder darauf wartet, dass diese dem Benutzer zugewiesen wird. In Übereinstimmung mit offenbarten Ausführungsformen verbessern die Darstellung des/der zusätzlichen Inhaltselements/e abhängig von der Betätigung eines interaktiven Inhaltselements durch den Benutzer und offenbarte Ansätze zur Darstellung des/der zusätzlichen Inhaltselements/e die Fähigkeit von Computersystemen, Informationen anzuzeigen und mit dem Benutzer zu interagieren. Beispielsweise kann die Präsentation des/der zusätzlichen Inhaltselements/e die Bindung des Benutzers mit dem Cloud-Spieldienst während einer Wartezeit aufrechterhalten. Es können weitere Optionen präsentiert werden, die es dem Benutzer ermöglichen, die Art und Weise zu steuern, wie das/die zusätzliche(n) Inhaltselement(e) präsentiert wird/werden, und/oder es kann nach einer bestimmten Dauer automatisch eine Standardoption implementiert werden. Auf diese Weise ist es wahrscheinlicher, dass der Benutzer bereit ist, das Spiel zu spielen, wenn Ressourcen bzw. Mittel verfügbar sind, anstatt dass das Spiel nicht benutzt wird und Rechenmittel verschwendet werden. Darüber hinaus kann eine Benutzeranfrage für eine Zuweisung in einigen Fällen abgebrochen werden, um Rechenmittel einzusparen.
  • Bei einigen Anwendungsfällen kann/können das/die zusätzliche(n) Inhaltselement(e) in einem Spielstartfenster und/oder einem Warteschlangenfenster einer Spielstartanwendung des Cloud-Spieldienstes präsentiert werden. Dabei bleibt die Spielstartanwendung aktiv und im Vordergrund des Desktop- oder Anwendungsmanagers des Benutzers, so dass der Benutzer eher bereit ist, wenn das Spiel gestartet wird. Bei einigen Anwendungsfällen können eines oder mehrere der zusätzlichen Inhaltselemente in einem Fenster der Spielstartanwendung hinter einem Spielstartfenster und/oder einem Warteschlangenfenster oder anderweitig im Hintergrund angezeigt werden. Auf diese Weise kann der Benutzer ein zusätzliches Inhaltselement zu einem späteren Zeitpunkt, z.B. nach der Spielsitzung, anschauen. Bei einigen Anwendungsfällen kann/können das/die zusätzliche(n) Inhaltselement(e) in einem Standard-Webbrowser dargestellt werden, der einer Recheneinrichtung zugeordnet ist, die die Anfrage des Benutzers zur Mittelzuweisung bereitgestellt hat (z.B. der Spielcomputer des Benutzers). Der Standard-Webbrowser, der das/die zusätzliche(n) Inhaltselement(e) präsentiert, kann in dem Vorder- oder Hintergrund des/der interaktiven Inhaltselement(e) positioniert sein und dem Benutzer jederzeit vor, während oder nach dem Spiel zur Verfügung stehen. Bei einigen Ausführungsformen kann, wenn das Rechenmittel verfügbar ist, automatisch ein Spielfenster über dem/den zusätzlichen Inhaltselement(en) angezeigt werden (z.B. in einem Vollbildmodus), selbst wenn der Benutzer das/die zusätzliche(n) Inhaltselement(e) in einer separaten Anwendung betrachtet.
  • Bei einigen Ausführungsformen kann die Betätigung eines präsentierten interaktiven Inhaltselements durch den Benutzer die Darstellung eines Optionsfensters bewirken. Das Optionsfenster kann eine erste Option aufweisen, deren Betätigung die Darstellung mindestens eines zusätzlichen Inhaltselements in einem Fenster der Spielstartanwendung hinter dem Spielstartfenster und/oder dem Warteschlangenfenster des Spiels (z.B. im Hintergrund der Spielstartanwendung oder des Betriebssystems) bewirken kann, so dass es für den Benutzer nicht unmittelbar oder vollständig ohne weiteres Zutun sichtbar ist. Bei Ausführungsformen kann/können das/die zusätzliche(n) Inhaltselement(e) im Hintergrund bleiben (z.B. so, dass es hinter einem Spielfenster positioniert ist), sobald ein Rechenmittel verfügbar und zugewiesen ist und der Benutzer mit dem Cloud-Spieldienst beschäftigt ist. Auf diese Weise kann der Benutzer das/die zusätzliche(n) Inhaltselement(e) (z.B. in einer Spielstartanwendung) ansehen, wenn er das Spielen beendet hat oder zu jedem beliebigen Zeitpunkt während des Spielens, wie es das Spiel, das der Benutzer gerade spielt, erlaubt. Somit kann der zusätzliche Inhalt auch zu einem späteren Zeitpunkt noch angesehen werden, ohne den Spielstart zu stören oder die Aufmerksamkeit des Benutzers von dem Spiel abzulenken. Bei einigen Ausführungsformen kann diese Option automatisch ausgeführt werden, wenn die Rechenmittel dem Spiel zugewiesen werden und das Spiel automatisch gestartet wird.
  • Bei einigen Anwendungsfällen kann das Optionsfenster eine zweite Option aufweisen (zusätzlich zu oder anstelle der ersten Option), deren Betätigung eine Umleitung zu einer Online-Stelle bewirken kann, an der mindestens ein zusätzliches Inhaltselement innerhalb der Spielstartanwendung (z.B. anstelle des/der interaktiven Inhaltselements/-e) oder in einem Webbrowser oder einer anderen Anwendung präsentiert werden kann. Bei einigen Aspekten kann die Auswahl der zweiten Option auch dazu führen, dass die Anfrage des Benutzers nach Rechenmitteln abgebrochen wird, wodurch die Position des Benutzers in der Warteschlange aufgegeben wird (z.B. wenn das/die zusätzliche(n) Inhaltselement(e) in einer anderen Anwendung präsentiert wird/werden). So kann abhängig von der Präsentation und/oder Anzeige eines zusätzlichen Inhaltselements (z.B. in einer externen Anwendung) die Benutzeranforderung für Rechenmittel automatisch storniert und/oder die Anforderung aus der Warteschlange entfernt werden. Auf diese Weise kann der Cloud-Spieldienst in Fällen, in denen der Benutzer möglicherweise stark mit dem zusätzlichen Inhalt beschäftigt ist, Rechenmittel einsparen. Verschiedene Ausführungsformen können nur die erste Option, nur die zweite Option oder beide Optionen bereitstellen. Bei Anwendungsfällen, in denen ein abgestuftes Modell für die Mittelzuweisung verfügbar ist, kann das Optionsfenster darüber hinaus eine dritte Option aufweisen, deren Betätigung die Aufwertung der Zugangsstufe eines Benutzers ermöglichen kann, um die Wartezeiten bei der Mittelzuweisung zu verringern oder zu eliminieren. Alle derartigen Optionsvarianten und alle Kombinationen davon werden als in dem Umfang der Ausführungsformen der vorliegenden Offenbarung liegend betrachtet.
  • Mit Bezug zu 1 wird nun gemäß einigen Ausführungsformen der vorliegenden Erfindung ein beispielhaftes System 100 zur Benutzerbindung während der Wartezeiten bei der Zuteilung von Rechenmitteln dargestellt. Es sei darauf hingewiesen, dass diese und andere hier beschriebene Anordnungen nur als Beispiele aufgeführt sind. Andere Anordnungen und Elemente (z.B. Maschinen, Schnittstellen, Funktionen, Reihenfolgen, Gruppierungen von Funktionen usw.) können zusätzlich zu oder anstelle der dargestellten verwendet werden, und einige Elemente können ganz weggelassen werden. Darüber hinaus sind viele der hier beschriebenen Elemente funktionale Einheiten, die als diskrete oder verteilte Komponenten oder in Verbindung mit anderen Komponenten und in jeder geeigneten Kombination und Lage implementiert sein können. Verschiedene hier beschriebene Funktionen, die von Einheiten ausgeführt werden, können von Hardware, Firmware und/oder Software ausgeführt werden. Beispielsweise können verschiedene Funktionen von einem Prozessor ausgeführt werden, der im Speicher gespeicherte Befehle ausführt.
  • Das System 100 zur Benutzerbindung weist unter anderem eine Client-Einrichtung 102 (z.B. eine Benutzer-Spieleinrichtung), eine (Spiel-) Startanwendung 104, einen Mittel- bzw. Ressourcen-Manager 106 (z.B. einen Server), einen Inhaltelementmanager 108 (z.B. einen Server) und Inhaltelement-Abrufmittel 110 (z.B. einen Server) auf. Obwohl eine einzelne Client-Einrichtung 102 in 1 dargestellt ist, ist dies nicht als Einschränkung anzusehen. Eine beliebige Anzahl von Client-Einrichtungen 102 kann im Rahmen der Ausführungsformen der vorliegenden Offenbarung verwendet werden. Das System 100 zur Benutzerbindung (und seine Komponenten und/oder Merkmale) kann unter Verwendung einer oder mehrerer Client-Einrichtungen (z.B. der/den Client-Einrichtung(en) 704 von 7, die weiter unten ausführlicher beschrieben ist (sind)) und/oder eines oder mehrerer Server (z.B. der/die Server 702 von 7, der/die weiter unten ausführlicher beschrieben ist/sind) implementiert sein.
  • Jede(r) (der) Client-Einrichtung(en) und/oder (der) Server kann als eine oder mehrere der im Folgenden näher beschriebenen Recheneinrichtungen 800 aus 8 implementiert sein. Obwohl eine einzelne (Spiel-)Startanwendung 104, ein Ressourcenmanager 106, ein Inhaltselementmanager 108 und Inhaltselement-Abrufmittel 110 in 1 dargestellt sind, soll auch dies keine Einschränkung darstellen. In jedem Beispiel kann es eine beliebige Anzahl von (Spiel-) Startanwendungen 104, Ressourcenmanagem 106, Inhaltselementmanagern 108 und Inhaltselement-Abrufmitteln 110 geben.
  • Komponenten des Systems 100 zur Benutzerbindung können über ein oder mehrere Netzwerke kommunizieren 112. Das/die Netzwerk(e) 112 kann/können aufweisen ein Weitverkehrsnetz (WAN) (z.B. das Internet, ein öffentliches Fernsprechwählnetz (PSTN) usw.), ein lokales Netz (LAN) (Local Area Network) (z.B. Wi-Fi, ZigBee, Z-Wave, Bluetooth, Bluetooth Low Energy (BLE), Ethernet usw.), ein Low-Power Wide Area Network (LPWAN) (z.B. LoRaWAN, SigFox usw.), ein Global Navigation Satellite System (GNSS-) Netzwerk (z.B. das Global Positioning System (GPS)) und/oder einen anderen Netzwerktyp. In jedem Beispiel kann jede der Komponenten des Systems 100 zur Benutzerbindung mit einer oder mehreren der anderen Komponenten über eines oder mehrere der Netzwerke 112 kommunizieren.
  • Die Client-Einrichtung 102 kann aufweisen ein Smartphone, einen Laptop-Computer, einen Tablet-Computer, einen Desktop-Computer, ein tragbares Gerät, eine Spielkonsole, ein Virtual-Reality-System (z.B. ein Headset, einen Computer, eine Spielkonsole, Fernbedienung(en), Controller und/oder andere Komponenten), ein Streaming-Gerät (z.B, ein NVIDIA SHIELD), eine Smart-Home-Einrichtung, die einen intelligenten persönlichen Assistenten aufweisen kann, und/oder eine andere Einrichtung, die in der Lage ist, eine Cloud-gehostete Anwendung zu unterstützen, für die Rechenmittel zugewiesen werden sollen.
  • Die Client-Einrichtung 102 kann die (Spiel-)Startanwendung 104, einen Bildschirm, eine Kommunikationsschnittstelle, eine oder mehrere Eingabeeinrichtung(en) und einen lokalen Speicher aufweisen. Obwohl hierin nur einige wenige Komponenten und/oder Einrichtungen, die die Client-Einrichtung 102 aufweisen kann, offenbart sind, ist dies nicht als Einschränkung anzusehen. Zum Beispiel kann die Client-Einrichtung 102 zusätzliche oder alternative Einrichtungen aufweisen, wie z.B. die im Folgenden in Bezug auf die Recheneinrichtung 800 von 8 beschriebenen.
  • Die Startanwendung 104 kann eine mobile Anwendung, eine Computeranwendung, eine Konsolenanwendung und/oder eine andere Art von Anwendung sein. Die Startanwendung 104 kann Anweisungen aufweisen, die, wenn sie von einem Prozessor/von Prozessoren ausgeführt wird/werden, den Prozessor/die Prozessoren dazu veranlassen, ohne Einschränkung Eingabedaten zu empfangen, die repräsentativ für Benutzereingaben in die eine oder die mehreren Eingabeeinrichtung(en) sind, die Eingabedaten an einen oder mehrere Server zu übertragen, Daten aus dem Speicher oder dem lokalen Speicher abzurufen, Daten über die Kommunikationsschnittstelle von einem oder mehreren Servern zu empfangen und die Darstellung von Daten auf dem Bildschirm zu veranlassen (z.B. gestreamte visuelle Daten eines gerenderten Spiels oder einer anderen Anwendung). Mit anderen Worten, die Startanwendung 104 kann als Vermittler fungieren, um die Bindung mit einer Cloud-Anwendung auf der Client-Einrichtung 102 zu ermöglichen.
  • Bei einigen Beispielen kann die Startanwendung 104 Anzeigedaten empfangen (z.B. kodierte Anzeigedaten, wie es in 7 beschrieben ist) und die Anzeigedaten verwenden, um ein Spiel auf einer Anzeige der Client-Einrichtung 102 zu präsentieren. Bei solchen Beispielen, bei denen die Anzeigedaten von der Client-Einrichtung 102 empfangen werden, kann das System 100 zur Benutzerbindung Teil eines Spiel-Streaming-Systems sein, wie z.B. das Spiel-Streaming-System 700 aus 7, das im Folgenden näher beschrieben wird.
  • Die Anzeige der Client-Einrichtung 102 kann jede Art von Anzeige aufweisen, die in der Lage ist, die gestreamte Anwendung darzustellen (z.B. eine Leuchtdiodenanzeige (LED), eine organische LED-Anzeige (OLED), eine Flüssigkristallanzeige (LCD), eine Aktivmatrix - OLED-Anzeige (AMOLED), eine Quantenpunktanzeige (QDD), eine Plasmaanzeige, eine LED/LCD-Anzeige und/oder eine andere Art von Anzeige). Bei einigen Beispielen kann die Anzeige mehr als eine Anzeige aufweisen (z.B. eine Doppelmonitor-Anzeige für Computerspiele, eine erste Anzeige zum Konfigurieren eines Spiels und eine Virtual-Reality-Anzeige zum Spielen des Spiels usw.). Bei einigen Beispielen handelt es sich bei der Anzeige um eine Touch-Screen-Anzeige, wie z.B. einen Touch-Screen eines Smartphones, eines Tablet-Computers, eines Laptops oder ähnlichem, wobei der Touch-Screen zumindest eine der Eingabe-einrichtungen) der Client-Einrichtung 102 ist.
  • (Eine) Eingabeeinrichtung(en) kann (können) jede Art von Einrichtungen aufweisen, die in der Lage sind, Benutzereingaben für die Spielanwendung bereitzustellen. Die Eingabe-einrichtungen) kann (können) eine Tastatur, eine Maus, ein Mikrophon (Mikrophone), eine Touchscreen-Anzeige, (einen) Controller, (eine) Fernbedienung(en), ein Headset (z.B. Sensoren eines Virtual-Reality-Headsets) und/oder andere Arten von Eingabeeinrichtungen aufweisen.
  • Die Kommunikationsschnittstelle kann eine oder mehrere Komponenten und Merkmale für die Kommunikation über ein oder mehrere Netzwerke, wie z.B. das/die Netzwerk(e) 112, aufweisen. Die Kommunikationsschnittstelle kann so ausgestaltet sein, dass sie über eine beliebige Anzahl von Netzwerken, wie es hier beschrieben ist, kommuniziert. Zum Beispiel kann die Client-Einrichtung 102 für die Kommunikation in dem System 100 zur Benutzerbindung von 1 eine Ethernet- oder Wi-Fi-Verbindung über einen Router verwenden, um auf das Internet zuzugreifen, um mit einem Anwendungsserver (z.B. einem Spielserver) und/oder mit anderen Client-Einrichtungen 102 zu kommunizieren.
  • Der lokale Speicher kann eine Vielzahl von computerlesbaren Medien aufweisen. Bei den computerlesbaren Medien kann es sich um alle verfügbaren Medien handeln, auf die die Client-Einrichtung 102 zugreifen kann. Zu den computerlesbaren Medien können sowohl flüchtige als auch nicht flüchtige Medien sowie austauschbare und nicht austauschbare Medien gehören. Als Beispiel, aber nicht als Einschränkung, können die computerlesbaren Medien Computer-Speichermedien und Kommunikationsmedien umfassen. Der lokale Speicher kann zusätzliche oder alternative Komponenten aufweisen, wie z.B. die unten in Bezug auf den Speicher 804 von 8 beschriebenen.
  • Weiter mit Bezug auf 1 wird die (Spiel-)Startanwendung 104 so ausgestaltet, dass sie Benutzeranfragen für die Bindung mit einem oder mehreren Spielen oder Anwendungen (z.B. von der Client-Einrichtung 102) empfängt und Anfragen nach den für eine solche Bindung gewünschten Rechenmitteln (z.B. an den Ressourcenmanager 106) übermittelt. Bei einigen Ausführungsformen ist die (Spiel-) Startanwendung 104 ferner so ausgestaltet, dass sie ein oder mehrere interaktive Inhaltselemente in einem (Spiel-) Startfenster 138 davon präsentiert, wie es weiter unten ausführlicher beschrieben ist.
  • Der Ressourcenmanager 106 ist so ausgestaltet, dass er Benutzeranforderungen zur Zuweisung von Rechenmitteln empfängt, die Verfügbarkeit der angefragten Rechenmittel bestimmt und Benutzeranfragen in eine Warteschlange stellt und/oder Rechenmittel abhängig von Bestimmungen zur Verfügbarkeit von Rechenmitteln zuweist. In diesem Zusammenhang weist der Ressourcenmanager 106 Abrufmittel 114, einen Kontotyp-Bestimmer 116, einen Ressourcenverfügbarkeits- Bestimmer 118, einen Warteschlangenmanager 120, einen Sender 122, einen Generator 124 und einen Ressourcenzuweiser 126 auf. Die Abrufmittel 114 sind so ausgestaltet, dass sie eine Benutzeranforderung für die Zuweisung einer oder mehrerer Rechenmittel empfangen, die für die Teilnahme an einem Spiel bei einem Spieldienstanbieter gewünscht werden. Bei Ausführungsformen kann die Benutzeranforderung von der Startanwendung 104 empfangen werden.
  • Wie vorab dargelegt ist, haben einige Cloud-Spieldienste ein abgestuftes Zugangsmodell für ihre Dienste eingeführt. Zum Beispiel können Anbieter von Cloud-Spieldiensten eine erste Ebene bereitstellen, die die Benutzer wählen können und die ihnen im Vergleich zu anderen Benutzern einen vorrangigen Zugang zu Rechenmitteln bereitstellt, und eine zweite Ebene, die die Benutzer mit einem anderen Kosten- und Prioritätsniveau wählen können. In solchen Fällen ist der Kontotyp-Bestimmer 116 so ausgestaltet, dass er den Kontotyp bestimmt, den der Benutzer, der die Rechenmittel angefordert hat, gewählt hat.
  • Abhängig von der Benutzeranforderung (und der Bestimmung des Kontotyps, falls zutreffend) ist der Ressourcenverfügbarkeitsbestimmer 118 so ausgestaltet, dass er bestimmt, ob die angeforderten Rechenmittel dem Benutzer zum Zeitpunkt des Eingangs der Anforderung zur Verfügung stehen. Nach dem Bestimmen, dass die angeforderten Rechenmittel für die Zuweisung an den Benutzer zur Verfügung stehen, können die angeforderten Rechenmittel dem Benutzer durch den Ressourcenzuweiser 126 zugewiesen werden. Eine solche Bestimmung kann zu dem Zeitpunkt erfolgen, zu dem die Benutzeranforderung für die gewünschten Rechenmittel eingeht, oder zu jedem Zeitpunkt, zu dem der Benutzer auf die Zuteilung der Rechenmittel wartet. Wenn die Mittel zugewiesen sind, kann der Sender 122 (und/oder ein Sender 132) Daten an die Startanwendung 104 übertragen, wodurch die Startanwendung 104 automatisch das Spiel oder eine andere Anwendung auf der Client-Einrichtung 102 präsentiert. Wenn jedoch bestimmt wird, dass das/die angeforderte(n) Rechenmittel für die Zuweisung an den Benutzer nicht verfügbar ist/sind, wird die Benutzeranforderung von dem Warteschlangenmanager 120 in eine Warteschlange oder auf eine Warteliste gesetzt. Die Warteschlange oder Warteliste kann andere Benutzeranforderungen für die gewünschten Rechenmittel aufweisen.
  • Wenn darüber hinaus bestimmt wird, dass die angeforderten Rechenmittel zum Zeitpunkt des Empfangs der Anforderung für die Zuweisung an den Benutzer nicht verfügbar sind, sendet der Sender 122 des Ressourcenmanagers 106 während der Wartezeit des Benutzers auf die gewünschten Rechenmittel eine Anforderung zur Darstellung eines oder mehrerer Inhaltselemente, beispielsweise in Verbindung mit einer Anzeige der Client-Einrichtung 102. Bei Ausführungsformen sendet der Sender 122 die Anforderung an den Inhaltselementmanager 108, der so ausgestaltet ist, dass er die Auswahl und Präsentation eines oder mehrerer interaktiver Inhaltselemente ermöglicht, wie es im Folgenden ausführlicher beschrieben ist.
  • Die gewünschten Rechenmittel können dem Benutzer jederzeit nach Erhalt der Benutzeranforderung zur Zuweisung zur Verfügung stehen. Wenn die Rechenmittel nach der Präsentation eines oder mehrerer interaktiver Inhaltselemente verfügbar sind, ist der Generator 124 so ausgestaltet, dass er eine Anforderung zur Einstellung der Präsentation des/der Inhaltselemente(s) und/oder zum Start des Spiels ausgibt. Eine solche Anforderung kann dann (z.B. durch den Sender 122) an den Inhaltselementmanager 108 und/oder die Startanwendung 104 übermittelt werden, so dass die Einstellung der Präsentation des/der Inhaltselements/e ermöglicht und/oder die Präsentation des Spiels, für das die Rechenmittel angefordert wurden, auf der Client-Einrichtung 102 begonnen werden kann.
  • Der Inhaltselementmanager ist so ausgestaltet, dass er Anforderungen nach Inhaltselementen entgegennimmt und die Auswahl und Präsentation von Inhaltselementen ermöglicht, z.B. in Verbindung mit dem (Spiel-) Startfenster 138 der (Spiel-) Startanwendung 104 und/oder einer Anzeige auf der Client-Einrichtung 102. In diesem Zusammenhang weist der Inhaltselementmanager 108 einen Empfänger 128, einen Generator 130, den Sender 132, Präsentationsmittel 134 und Umleitungsmittel 136 auf. Der Empfänger 128 ist so ausgestaltet, dass er Anfragen zur Präsentation eines oder mehrerer interaktiver Inhaltselemente (z.B. von dem Sender 122 des Ressourcenmanagers 106) empfängt.
  • Wie es bereits dargelegt ist, kann sich der Begriff „interaktive(s) Inhaltselement(e)“ auf ein Element mit einem visuellen Inhalt (z.B. ein Bild, ein Video, ein Banner) beziehen, dessen Betätigung die Präsentation eines oder mehrerer zusätzlicher Inhaltselemente bewirkt, die mit dem betätigten Inhaltselement in Beziehung stehen. Bei Ausführungsformen kann (können) das (die) Inhaltselement(e) so gewählt werden, dass es (sie) durch seine (ihre) Betätigung zu einer Benutzerbindung verleitet/n. Beispielsweise kann/können das/die interaktive(n) Inhaltselement(e) mit dem Spiel in Verbindung stehen, das der Benutzer zu spielen wünscht. Das/die interaktive(n) Inhaltselement(e) kann/können z.B. ein oder mehrere auswählbare Bilder aufweisen, die sich auf ein Zubehörteil (z.B. eine themenbezogene Spielsteuerung oder eine andere periphere Einrichtung) beziehen, das das Gameplay des Spiels, das der Benutzer zu spielen wünscht, verbessert, und die Betätigung (z.B. Auswahl) des Bildes kann die Darstellung von Informationen bezüglich des Erwerbs des Zubehörs bewirken. Als weiteres Beispiel kann das/die interaktive(n) Inhaltselement(e) in Beziehung zu anderen Anwendungen stehen, an denen der Benutzer interessiert sein könnte. Ein weiteres Beispiel ist, dass das/die interaktive(n) Inhaltselement(e) von einem oder mehreren Parametern und/oder Einstellungen in Bezug auf eine Spielsystem-Hardware, Software, Benutzerinformationen (z.B. Sprache, Region usw.) oder Dienste abhängen kann/können. Interaktive Inhaltselemente, die sich auf ein beliebiges Thema, beliebige Benutzerinformationen, ein beliebiges Produkt oder einen beliebigen Dienst beziehen, können im Umfang von Ausführungsformen der vorliegenden Verfahren vorhanden sein. In diesem Zusammenhang ist der Generator 130 des Inhaltselementmanagers 108 so ausgestaltet, dass er gegebenenfalls eine parametrisierte Anfrage für ein oder mehrere interaktive Inhaltselemente erzeugt.
  • Der Sender 132 ist so ausgestaltet, dass er Anfragen (parametrisiert oder nicht parametrisiert) für interaktive Inhaltselemente an die Inhaltselement-Abrufmittel 110 überträgt. Die Inhaltselement-Abrufmittel 110 sind so ausgestaltet, dass sie ein oder mehrere interaktive Inhaltselemente zur Präsentation während der Wartezeit eines Benutzers auf die Zuweisung von Rechenmitteln auswählen. In dieser Hinsicht weisen die Inhaltselement-Abrufmittel 110 einen Empfänger 140, Datenbank-Abfragemittel 142 und einen Sender 144 auf.
  • Der Empfänger 140 der Inhaltselement-Abrufmittel 110 ist so ausgestaltet, dass er Anfragen (parametrisiert oder nicht parametrisiert) für interaktive Inhaltselemente von dem Sender 132 des Inhaltselementmanagers 108 empfängt. Wie dargestellt ist, haben die Inhaltselement-Abrufmittel 110 Zugriff auf eine Datenbank 146 (oder allgemeiner auf einen Datenspeicher). Die Datenbank-Abfragemittel 142 der Inhaltselement-Abrufmittel 110 sind so ausgestaltet, dass sie die Datenbank 146 nach einem oder mehreren interaktiven Inhaltselementen zur Präsentation während der Wartezeit des Benutzers auf die Rechenmittelzuweisung abfragen. Sobald ein oder mehrere Inhaltselement(e) ausgewählt ist/sind, ist der Sender 144 der Inhaltselement-Abfragemittel 110 ausgestaltet, um das/die interaktive(n) Inhaltselement(e) an den Inhaltselementmanager 108 zu übertragen, wo es/sie (oder ein Link zu dem interaktiven Inhaltselement, wie z.B. eine URL) z.B. von dem Empfänger 128 empfangen werden kann/können.
  • Die Präsentationsmittel 134 des Inhaltselementmanagers 108 sind so ausgestaltet, dass sie die Präsentation des/der empfangenen interaktiven Inhaltselements/e bewirken, z.B. in Verbindung mit einer Anzeige der Client-Einrichtung 102 und/oder in dem (Spiel-)Startfenster 138 der (Spiel-)Startanwendung 104. Bei Ausführungsformen können die Präsentationsmittel 134 ferner so ausgestaltet sein, dass sie einen Hinweis (z.B. in dem Startfenster 138) ausgeben, der den Benutzer darüber informiert, dass er sich in einer Warteschlange befindet und auf eine verfügbare Spielressource wartet, so dass der Benutzer positiv darüber informiert bleibt, dass die Ressourcenzuweisung noch aussteht.
  • Unter Verwendung der hierin beschriebenen Verfahren kann die Betätigung eines präsentierten interaktiven Inhaltselements durch den Benutzer die Präsentation mindestens eines zusätzlichen Inhaltselements verursachen, das mit dem interaktiven Inhaltselement in Zusammenhang steht, während der Ressourcenverfügbarkeitsbestimmer 118 weiterhin nach verfügbaren Rechenmitteln (z.B. einer virtuellen Spielanlage und/oder einer oder mehrerer VMs) sucht, um sie dem Benutzer zuzuweisen. In diesem Zusammenhang kann der Empfänger 128 des Inhaltselementmanagers 108 ferner so ausgestaltet sein, dass er Hinweise erhält, dass ein präsentiertes interaktives Inhaltselement von dem Benutzer betätigt wurde (z.B. von der Startanwendung 104 und/oder dem Ressourcenmanager 106). Als Reaktion darauf kann der Sender 132 des Inhaltselementmanagers 108 ferner so ausgestaltet sein, dass er die Betätigungsanzeige an die Inhaltselement-Abrufmittel 110 überträgt, wo sie von dem Empfänger 140 empfangen wird. Die Datenbankabfragemittel 142 können ferner so konfiguriert sein, dass sie die Datenbank 146 nach zusätzlichen Inhaltselementen abfragen, die sich auf das/die betätigte(n) Inhaltselement(e) beziehen, und der Sender 144 kann ferner so konfiguriert sein, dass er das/die zusätzliche(n) Inhaltselement(e) (und/oder einen Link dazu, der verwendet wird, um das/die zusätzliche(n) Inhaltselement(e) zu präsentieren) an den Inhaltselementmanager 108 zur Präsentation (z.B. durch die Präsentationsmittel 134) sendet. Zusätzlich oder alternativ kann/können das/die zusätzliche(n) Inhaltselement(e) und/oder ein Link dazu von den Inhaltselement-Abrufmitteln 110 dem Inhaltselementmanager 108 bereitgestellt werden, und/oder das/die interaktive(n) Inhaltselement(e) kann/können der Startanwendung 104 bereitgestellt werden. Daher sind möglicherweise keine separaten Anfragen von dem/den interaktiven Inhaltselement(en) erforderlich, um das/die zusätzliche(n) Inhaltselement(e) zu bestimmen.
  • Das System 100 zur Benutzerbindung von 1 kann zusätzlich eine Datenbank 148 aufweisen (die, ähnlich wie die Datenbank 146, allgemeiner ein Datenspeicher sein kann). Die Datenbank 148 kann so ausgestaltet sein, dass sie nach einem oder mehreren Datenelementen für das Hosting, den Betrieb und/oder die Ausführung von Instanzen einer oder mehrerer Softwareanwendungen (z.B. Anwendungsinhalte und/oder Code) abgefragt werden kann, die mit der Startanwendung 104 gestartet werden können. Bei einigen Anwendungsfällen kann es sich bei der Datenbank 148, die Datenelemente für eine oder mehrere der Software-Anwendungen enthält, und der Datenbank 146, die interaktive Inhaltselemente enthält, wie es dargestellt ist, um getrennte Datenbanken handeln. Bei einigen Ausführungsformen kann die Datenbank 146 von einer Drittpartei gehostet werden, so dass das/die interaktive(n) Inhaltselement(e) von der Drittpartei bereitgestellt werden. Bei einigen Anwendungsfällen kann es sich bei der Datenbank 148 und der Datenbank 146 um dieselbe Datenbank handeln.
  • Bei einigen Anwendungsfällen kann/können das/die zusätzliche(n) Inhaltselement(e) in dem Spielstartfenster 138 und/oder in dem Warteschlangenfenster (das dasselbe wie das Spielstartfenster 138 sein kann) der Spielstartanwendung 104 des Cloud-Spieldienstes angezeigt werden. Bei einigen Anwendungsfällen kann/können das/die zusätzliche(n) Inhaltselement(e) in einem Fenster der Spielstartanwendung 104 hinter dem Spielstartfenster 138 und/oder dem Spielwarteschlangenfenster angezeigt werden. Ein solcher beispielhafter Anwendungsfall wird in einer Bildschirmanzeige 500 von 5 dargestellt, in der das/die zusätzliche(n) Inhaltselement(e) 502 in einem Fenster 504 hinter dem Spielstartfenster 138 dargestellt ist/sind. Wie es dargestellt ist, zeigt das Spielstartfenster 138 das/die interaktive(n) Inhaltselement(e) an. Bei anderen Beispielen kann/können das/die zusätzliche(n) Inhaltselement(e) in dem Spielstartfenster 138 angezeigt werden und das/die interaktive(n) Inhaltselement(e) ersetzen.
  • Bei einigen Anwendungsfällen kann/können das/die zusätzlichen Inhaltselement(e) in einem Standard-Webbrowser angezeigt werden, der einer Recheneinrichtung zugeordnet ist, die die Benutzeranfrage nach Ressourcenzuweisung bereitgestellt hat (z.B. der Spielcomputer des Benutzers). Der Standard-Webbrowser, der das/die zusätzliche(n) Inhaltselement(e) präsentiert, kann im Vorder- oder Hintergrund des/der interaktiven Inhaltselement(e) angeordnet sein und dem Benutzer jederzeit vor, während oder nach dem Spiel zur Verfügung stehen. Zum Beispiel kann das Fenster 504 von dem Webbrowser oder einer anderen Anwendung stammen, die sich von der Startanwendung unterscheidet. Bei anderen Beispielen kann das Fenster 504 von der Startanwendung 104 stammen. Bei einigen Ausführungsformen kann ein Spielfenster automatisch von der Startanwendung 104 über dem/den zusätzlichen Inhaltselement(en) dargestellt werden (z.B. in einem Vollbildmodus), wenn die Rechenmittel verfügbar sind, selbst wenn der Benutzer das/die zusätzliche(n) Inhaltselement(e) in einer davon separaten Anwendung betrachtet.
  • Bei einigen Ausführungsformen kann die Betätigung eines präsentierten interaktiven Inhaltselements durch den Benutzer die Darstellung eines Optionsfensters bewirken. Eine solche beispielhafte Ausführungsform wird in einer Bildschirmanzeige 600 von 6 gezeigt. Zum Beispiel kann eine Option in einem Optionsfenster 602 betätigt werden, um die Darstellung der Bildschirmanzeige 500 von 5 zu bewirken. Bei einigen Anwendungsfällen kann das Optionsfenster 602 eine Option 604 aufweisen, deren Betätigung die Darstellung mindestens eines zusätzlichen Inhaltselements in einem Fenster der Spielstartanwendung hinter dem Spielstartfenster und/oder dem Spiel-Warteschlangenfenster (z.B. wie es in 5 dargestellt ist) bewirken kann. Bei einigen Anwendungsfällen kann das Optionsfenster 602 zusätzlich oder alternativ eine Option 606 aufweisen, deren Betätigung eine Umleitung zu einer Online-Stelle (z.B. entsprechend dem Link oder der URL) zur Folge haben kann, wo mindestens ein zusätzliches Inhaltselement innerhalb der Spielstartanwendung und/oder einem Webbrowser präsentiert werden kann. Wieder unter Bezugnahme auf 1 kann eine solche Umleitung durch die Umleitungsmittel 136 des Inhaltselementmanagers 108 durchgeführt und/oder ermöglicht werden. Bei Anwendungsfällen, in denen ein abgestuftes Modell für die Ressourcenzuweisung verfügbar ist, kann das Optionsfenster 602 darüber hinaus eine Option 608 aufweisen, deren Betätigung ein Höherstufen der Zugriffsebene des Benutzers ermöglichen kann, um die Wartezeiten bei der Ressourcenzuweisung zu verringern oder zu eliminieren. Es sei darauf hingewiesen, dass alle derartigen Optionsvarianten und alle Kombinationen davon in den Anwendungsbereich der Ausführungsformen der vorliegenden Offenbarung fallen.
  • Wenn bei einigen Ausführungsformen die gewünschten Rechenmittel verfügbar sind, bevor der Benutzer eine Option (z.B. 604, 606 oder 608) aus dem Optionsfenster 602 auswählt, können die offenbarten Verfahren bei der Zuweisung der gewünschten Rechenmittel (z.B. 604, 606 oder 608) auf die Option 604 voreingestellt sein, wobei die gewünschten Rechenmittel (z.B. eine VM und/oder eine virtuelle Spielanlage) dem Benutzer zugewiesen wird und das gewünschte Spiel gestartet wird, während das/die zusätzliche(n) Inhaltselement(e) im Hintergrund geöffnet wird/werden, z.B. in einem Fenster hinter dem Spielstartfenster (wie in der Bildschirmanzeige 500 von 5), hinter einem Fenster, das das Spiel präsentiert (das das Startfenster 138 oder ein anderes Fenster sein kann), und/oder hinter einem Hauptfenster der Startanwendung 104 (das aufweisen kann ein Spielstartsymbol 610, das auswählbar ist, um die Ressourcenbeschaffung für ein Spiel einzuleiten (und ggf. um das interaktive Inhaltselement anzuzeigen), und ein Spielstartsymbol 612, das auswählbar ist, um die Ressourcenbeschaffung für ein anderes Spiel einzuleiten (und ggf. um das interaktive Inhaltselement anzuzeigen), wo es verbleiben kann und sichtbar ist, wenn die Interaktion des Benutzers mit dem Spiel endet (wenn z.B, das Fenster, das das Spiel hostet, geschlossen wird) oder der Benutzer sich anderweitig mit dem/den zusätzlichen Inhaltselement(en) während des Spielens beschäftigt.
  • Bezüglich der 2, 3 und 4 umfasst jeder Block der hier beschriebenen Verfahren 200, 300 bzw. 400 einen Rechenprozess, der mit jeder beliebigen Kombination von Hardware, Firmware und/oder Software durchgeführt werden kann. Beispielsweise können verschiedene Funktionen von einem Prozessor ausgeführt werden, der im Speicher gespeicherte Befehle ausführt. Die Verfahren können auch als von einem Computer verwendbare Ausführungsformen von Befehlen, die auf Computerspeichermedien gespeichert sind, ausgeführt werden. Jedes Verfahren kann durch eine eigenständige Anwendung, einen Dienst oder einen gehosteten Dienst (eigenständig oder in Kombination mit einem anderen gehosteten Dienst) oder ein Plug-in für ein anderes Produkt bereitgestellt werden, um nur einige zu nennen. Darüber hinaus sind die Verfahren 200, 300 und 400 beispielhaft in Bezug auf das System von 1 beschrieben. Diese Verfahren können jedoch zusätzlich oder alternativ von einem beliebigen System oder einer beliebigen Kombination von Systemen ausgeführt werden, einschließlich, aber nicht beschränkt auf die hier beschriebenen. Es kann beispielsweise ein Konfigurationsblock vorhanden sein, der die Art der Analyse, die Art der Videoverarbeitung und/oder andere Details spezifiziert.
  • Unter Bezugnahme auf 2 wird ein Flussdiagramm dargestellt, das gemäß einigen Ausführungsformen der vorliegenden Offenbarung ein Verfahren 200 zur Bindung von Anwendern bzw. Benutzern während der Wartezeiten bei der Zuweisung von Rechenmitteln, z.B. bei Cloud-Spieldiensten, darstellt. Das Verfahren 200 weist, in Block B202, z.B. von einer Startanwendung den Empfang einer Benutzeranfrage für die Zuweisung von mindestens einem Rechenmittel (z.B. einem Spiel oder einem Anwendungs-Slot) eines Anbieters von Cloud-Anwendungsdiensten auf. Bei einigen Anwendungsfällen wird, z.B. von einer Spielstartanwendung, eine Benutzeranforderung für die Zuweisung von mindestens einem Rechenmittel eines Cloud-Spieldienstanbieters zu einer Instanz einer Spielanwendung empfangen. Wie zuvor dargelegt ist, kann die Benutzeranforderung für eine Zuweisung von mindestens einem Rechenmittel von dem Empfänger 114 des Ressourcenmanagers 106 von 1 oder von einem ähnlichen Modul einer Set-Top-Box oder einer anderen Streaming-Einrichtung empfangen werden.
  • Im Block B204 weist das Verfahren 200 abhängig von der Benutzeranforderung ein Bestimmen auf, dass das angeforderte mindestens eine Rechenmittel für die Zuweisung nicht verfügbar ist. Beispielsweise kann die Bestimmung der Nichtverfügbarkeit von Rechenmitteln auf der Grundlage der Benutzeranforderung durch den Ressourcenverfügbarkeitsbestimmer 118 des Ressourcenmanagers 106 von 1 oder durch ein ähnliches Modul einer Set-Top-Box oder einer anderen Streaming-Einrichtung erfolgen.
  • Der Block B206 weist, abhängig von dem Bestimmen, dass das mindestens eine Rechenmittel für die Zuweisung nicht verfügbar ist, ein Veranlassen einer Präsentation (z.B. in Verbindung mit der Anzeige einer Recheneinrichtung, die die Anforderung für die Zuweisung von Rechenmitteln bereitgestellt hat) eines oder mehrerer interaktiver Inhaltselemente auf. Bei einigen Anwendungsfällen kann die Präsentation des/der interaktiven Inhaltselements/-elemente in Verbindung mit einem Startfenster einer Startanwendung veranlasst werden, z.B. in Verbindung mit einem Spielstartfenster einer Spielstartanwendung. Wie es zuvor dargelegt ist, kann die Präsentation durch die Präsentationsmittel 134 des Inhaltselementmanagers 108 (oder durch ein ähnliches Modul einer Set-Top-Box oder einer anderen Streaming-Einrichtung) in Verbindung mit einer Anzeige der Client- Einrichtung 102 aus 1 veranlasst werden.
  • Mit Bezug zu 3 wird ein Flussdiagramm dargestellt, das gemäß einigen Ausführungsformen der vorliegenden Offenbarung ein Verfahren 300 zur Bindung von Benutzern während einer Spiel-Slot-Zuweisung bei einer Spielanwendung darstellt. Das Verfahren 300 weist, in Block B302, den Empfang einer Benutzeranfrage für eine Zuweisung eines Spiel-Slots aus einer Vielzahl von Spiel-Slots eines Cloud-Spieldienstanbieters an eine Instanz einer Spielanwendung auf. Bei einigen Anwendungsfällen kann die Benutzeranfrage von einer Spielstartanwendung empfangen werden. Zum Beispiel kann die Benutzeranfrage für die Zuweisung eines Spiel-Slots von dem Empfänger 114 des Ressourcenmanagers 106 von 1 oder von einem ähnlichen Modul einer Set-Top-Box oder einer anderen Streaming- Einrichtung empfangen werden.
  • In Block B304 weist das Verfahren 300 abhängig von der Benutzeranfrage ein Bestimmen, dass der angeforderte Spiel-Slot für die Zuweisung nicht verfügbar ist, auf. Beispielsweise kann das Bestimmen der Nichtverfügbarkeit des Spiel-Slots abhängig von der Benutzeranfrage durch den Ressourcenverfügbarkeitsbestimmer 118 des Ressourcenmanagers 106 von 1 oder durch ein ähnliches Modul einer Set-Top-Box oder einer anderen Streaming-Einrichtung erfolgen.
  • Block B306 weist als Reaktion auf das Bestimmen, dass der Spiel-Slot für die Zuweisung nicht verfügbar ist, ein Anordnen der Benutzeranfrage in einer Warteschlange von Benutzeranfragen für Spiel-Slots auf. Zum Beispiel kann die Benutzeranfrage für einen Spiel-Slot durch den Warteschlangenmanager 120 des Ressourcenmanagers 106 von 1 oder durch ein ähnliches Modul einer Set-Top-Box oder einer anderen Streaming-Einrichtung in eine Warteschlange von Benutzeranfragen für Spiel-Slots gestellt werden.
  • In Block B308 weist das Verfahren 300 als Reaktion auf das Bestimmen, dass der Spiel-Slot für die Zuweisung nicht verfügbar ist, die Präsentation eines oder mehrerer interaktiver Inhalte auf. Bei einigen Anwendungsfällen kann die Präsentation des/der interaktiven Inhaltselements/e in einem Spielstartfenster einer Spielstartanwendung veranlasst werden. Wie es zuvor dargelegt ist, kann die Präsentation des/der interaktiven Inhaltselements/e durch die Präsentationsmittel 134 des Inhaltselementmanagers 108 (oder durch ein ähnliches Modul einer Set-Top-Box oder einer anderen Streaming-Einrichtung) in Verbindung mit einer Anzeige der Client-Einrichtung 102 aus 1 veranlasst werden.
  • Mit Bezug zu 4 wird nun ein Flussdiagramm dargestellt, das gemäß einigen Ausführungsformen der vorliegenden Offenbarung ein Verfahren 400 zur Bindung von Benutzern während der Wartezeiten bei der Zuweisung von Rechen-Slots darstellt. Das Verfahren 400 weist, im Block B402, den Empfang einer Benutzeranforderung für die Zuweisung eines Rechen-Slots aus einer Vielzahl von Rechen-Slots eines Cloud-Anwendungs-Hosting-Dienstes an eine Instanz einer Anwendung auf. Bei einigen Anwendungsfällen kann die Benutzeranforderung von einer Startanwendung empfangen werden. Wie es zuvor dargelegt ist, kann die Benutzeranforderung für eine Zuweisung eines Rechen-Slots von dem Empfänger 114 des Ressourcenmanagers 106 von 1 oder von einem ähnlichen Modul einer Set-Top-Box oder einer anderen Streaming-Einrichtung empfangen werden.
  • Im Block B404 weist das Verfahren 400 auf der Grundlage der Benutzeranforderung ein Bestimmen auf, dass der Rechen-Slot für die Zuweisung nicht verfügbar ist. Zum Beispiel kann das Bestimmen der Nichtverfügbarkeit des Rechen-Slots auf der Grundlage der Benutzeranforderung durch den Ressourcenverfügbarkeitsbestimmer 118 des Ressourcenmanagers 106 aus 1 oder durch ein ähnliches Modul einer Set-Top-Box oder einer anderen Streaming-Einrichtung erfolgen.
  • Der Block B406 weist als Antwort auf das Bestimmen, dass der Rechen-Slot für die Zuweisung nicht verfügbar ist, ein Anordnen der Benutzeranforderung in einer Warteschlange von Benutzeranforderungen für Rechen-Slots auf, um auf die Zuweisung des Rechen-Slots zu warten. Zum Beispiel kann die Benutzeranforderung für einen Rechen-Slot durch den Warteschlangenmanager 120 des Ressourcenmanagers 106 von 1 oder durch ein ähnliches Modul einer Set-Top-Box oder einer anderen Streaming-Einrichtung in einer Warteschlange angeordnet werden.
  • Im Block B408 weist das Verfahren 400 als Reaktion auf das Bestimmen, ein Veranlassen einer Präsentation eines Hinweises auf, dass die Benutzeranforderung in der Warteschlange angeordnet wurde, wobei die Präsentation ein oder mehrere interaktive Inhaltselemente umfasst. Zum Beispiel kann die Präsentation bzw. Darstellung des Hinweises, dass die Benutzeranfrage in der Warteschlange angeordnet wurde, und des/der interaktiven Inhaltselements/e durch die Präsentationsmittel 134 des Inhaltselementmanagers 108 (oder durch ein ähnliches Modul einer Set-Top-Box oder einer anderen Streaming-Einrichtung) in Verbindung mit einer Anzeige der Client-Einrichtung 102 von 1 veranlasst werden.
  • Mit Bezug zu 7 wird nun gemäß einigen Ausführungsformen der vorliegenden Offenbarung eine Darstellung eines beispielhaften Systems für ein Spiel-Streaming-System 700 dargestellt. 7 enthält (einen) Spielserver 702 (der/die ähnliche Komponenten, Merkmale und/oder Funktionen wie die Recheneinrichtung 800 aus 8 aufweisen kann/können, die im Folgenden ausführlicher beschrieben ist), (eine) Client-Einrichtung(en) 704 (die ähnliche Komponenten, Merkmale und/oder Funktionen wie die Client-Einrichtung 102 aus 1 und/oder die Recheneinrichtung 800 aus 8 aufweisen kann/können, die im Folgenden ausführlicher beschrieben ist) und (ein) Netzwerk(e) 806 (das/die ähnlich wie das/die Netzwerke) 112 aus 1 sein kann/können). Bei einigen Ausführungsformen der vorliegenden Offenbarung kann das System 700 implementiert sein.
  • In dem System 700 kann/können die Client-Einrichtung(en) 704 für eine Spielsitzung Eingabedaten nur abhängig von Eingaben an die Eingabeeinrichtung(en) empfangen, die Eingabedaten an den/die Spielserver 702 übertragen, kodierte Anzeigedaten von dem/den Spielserver(n) 702 empfangen und die Anzeigedaten auf der Anzeige 724 darstellen. Dadurch wird die rechenintensivere Berechnung und Verarbeitung an den/die Spielserver 702 ausgelagert (z.B. wird das Rendern der Spielsitzung durch den/die Grafikprozessor(en) des/der Spielserver(s) 702 ausgeführt). Mit anderen Worten, die Spielsitzung wird von dem Spielserver/von den Spielservern 702 auf die Client-Einrichtung(en) 704 gestreamt, wodurch sich die Anforderungen der Client-Einrichtung(en) 704 an die Grafikverarbeitung und -wiedergabe reduzieren.
  • In Bezug auf eine Instanziierung einer Spielsitzung kann beispielsweise eine Client-Einrichtung 604 ein Bild der Spielsitzung auf dem Bildschirm 724 anzeigen, basierend auf einem Empfang der Anzeigedaten von dem/den Spielserver(n) 702. Die Client-Einrichtung 704 kann eine Eingabe auf einem der Eingabe-Einrichtungen 726 empfangen und als Reaktion darauf Eingabedaten erzeugen. Die Client-Einrichtung 704 kann die Eingabedaten über die Kommunikationsschnittstelle 720 und über das/die Netzwerk(e) 706 (z.B. das Internet) an den/die Spielserver 702 übertragen, und der (die) Spielserver 702 kann (können) die Eingabedaten über die Kommunikationsschnittstelle 718 empfangen. Die CPU(s) kann/können die Eingabedaten empfangen, die Eingabedaten verarbeiten und Daten an die GPU(s) übertragen, die die GPU(s) veranlassen, ein Rendering der Spielsitzung zu erzeugen. Die Eingabedaten können z.B. repräsentativ sein für eine Bewegung einer Figur des Benutzers in einem Spiel, ein Abfeuern einer Waffe, ein Nachladen, ein Passen eines Balls, ein Wenden eines Fahrzeugs usw. Die Rendering-Komponente 712 kann die Spielsitzung rendern (z.B. repräsentativ für das Ergebnis der Eingabedaten) und die Render-Capture-Komponente 714 kann das Rendering der Spielsitzung als Anzeigedaten erfassen (z.B. als Bilddaten, die das gerenderte Bild der Spielsitzung erfassen). Der Kodierer 716 kann dann die Anzeigedaten kodieren, um kodierte Anzeigedaten zu erzeugen, und die kodierten Anzeigedaten können über das/die Netzwerk(e) 706 über die Kommunikationsschnittstelle 718 an die Client-Einrichtung 704 übertragen werden. Die Client-Einrichtung 704 kann die kodierten Anzeigedaten über die Kommunikationsschnittstelle 720 empfangen, und der Dekoder 722 kann die kodierten Anzeigedaten zur Erzeugung der Anzeigedaten dekodieren. Die Client-Einrichtung 704 kann dann die Anzeigedaten über die Anzeige 724 darstellen.
  • 8 ist ein Blockdiagramm einer beispielhaften Recheneinrichtung 800, die zur Verwendung bei der Implementierung einiger Ausführungsformen der vorliegenden Offenbarung geeignet ist. Die Recheneinrichtung 800 weist einen Bus 802 auf, der die folgenden Einrichtungen direkt oder indirekt koppelt: einen Speicher 804, eine oder mehrere Zentraleinheiten (CPUs) 806, eine oder mehrere Grafikverarbeitungseinheiten (GPUs) 808, eine Kommunikationsschnittstelle 810, Ein-/Ausgabeanschlüsse (E/A) 812, Ein-/Ausgabekomponenten 814, eine Stromzufuhr 816 und eine oder mehrere Darstellungskomponenten 818 (z.B. Anzeige(n)).
  • Obwohl die verschiedenen Blöcke von 8 so dargestellt sind, als wären sie über den Bus 802 mit Leitungen verbunden, ist dies nicht als Einschränkung gedacht und dient nur der Übersichtlichkeit. Beispielsweise kann bei einigen Ausführungsformen eine Darstellungskomponente 818, wie z.B. eine Anzeigeeinrichtung, als E/A-Komponente 814 angesehen werden (z.B. wenn die Anzeige ein Touchscreen ist). Als weiteres Beispiel können die CPUs 806 und/oder GPUs 808 Speicher aufweisen (z.B. kann der Speicher 804 zusätzlich zu dem Speicher der GPUs 808, der CPUs 806 und/oder anderer Komponenten eine Speichereinrichtung darstellen). Mit anderen Worten, die Recheneinrichtung von 8 hat lediglich illustrativen Charakter. Es wird nicht zwischen Kategorien wie „Arbeitsstation“, „Server“, „Laptop“, „Desktop“, „Tablett“, „Client-Einrichtung“, „mobile Einrichtung“, „Handheld-Gerät“, „Spielkonsole“, „elektronische Steuereinheit (ECU)“, „Virtual-Reality-System“ und/oder anderen Einrichtungen oder Systemtypen unterschieden, wie sie alle im Rahmen der Recheneinrichtung von 8 in Betracht gezogen werden.
  • Der Bus 802 kann einen oder mehrere Busse darstellen, wie z.B. einen Adressbus, einen Datenbus, einen Steuerbus oder eine Kombination davon. Der Bus 802 kann einen oder mehrere Bustypen aufweisen, wie z.B. einen ISA-Bus (Industry Standard Architecture), einen EISA-Bus (Extended Industry Standard Architecture), einen VESA-Bus (Video Electronics Standards Association), einen PCI-Bus (Peripheral Component Interconnect), einen PCIe-Bus (Peripheral Component Interconnect Express) und/oder einen anderen Bustyp.
  • Der Speicher 804 kann eine Vielzahl von computerlesbaren Medien aufweisen. Bei den computerlesbaren Medien kann es sich um alle verfügbaren Medien handeln, auf die von der Recheneinrichtung 800 zugegriffen werden kann. Zu den computerlesbaren Medien können sowohl flüchtige als auch nichtflüchtige Medien sowie herausnehmbare und nicht herausnehmbare Medien gehören. Als Beispiel, aber nicht als Einschränkung, können die computerlesbaren Medien Computer-Speichermedien und Kommunikationsmedien umfassen.
  • Die computerlesbaren Medien können sowohl flüchtige als auch nicht flüchtige Medien und/oder austauschbare und nicht austauschbare Medien aufweisen, die in einer beliebigen Methode oder Technologie zur Speicherung von Informationen, wie z.B. computerlesbare Anweisungen, Datenstrukturen, Programm-Module und/oder andere Datentypen, implementiert sind. Zum Beispiel kann der Speicher 804 computerlesbare Anweisungen speichern (die z.B. ein Programm (Programme) und/oder ein Programmelement (Programmelemente), wie ein Betriebssystem, darstellen). Computer-Speichermedien können unter anderem RAM, ROM, EEPROM, Flash-Speicher oder andere Speichertechnologien, CD-ROM, Digital Versatile Disks (DVD) oder andere optische Plattenspeicher, Magnetkassetten, Magnetband, Magnetplattenspeicher oder andere magnetische Speichereinrichtungen oder jedes andere Medium aufweisen, das zur Speicherung der gewünschten Informationen verwendet werden kann und auf das von der Recheneinrichtung 800 zugegriffen werden kann. In der hier verwendeten Form umfassen Computerspeichermedien keine Signale per se.
  • Die Kommunikationsmedien können computerlesbare Ausführungsformen, Datenstrukturen, Programmodule und/oder andere Datentypen in einem modulierten Datensignal wie einer Trägerwelle oder einem anderen Transportmechanismus aufweisen und umfassen alle Informationsliefermedien. Der Begriff „moduliertes Datensignal“ kann sich auf ein Signal beziehen, bei dem eine oder mehrere seiner Eigenschaften so eingestellt oder verändert sind, dass Informationen in dem Signal kodiert sind. Als Beispiel und ohne Einschränkung können die Kommunikationsmedien drahtgebundene Medien wie ein drahtgebundenes Netzwerk oder eine direkt verdrahtete Verbindung sowie drahtlose Medien wie akustische, HF-, Infrarot- und andere drahtlose Medien aufweisen. Kombinationen von irgendeinem der oben genannten Medien sollen auch in dem Umfang der computerlesbaren Medien enthalten sein.
  • Die CPU(s) 806 kann/können so ausgestaltet sein, dass sie die computerlesbaren Befehle zur Steuerung einer oder mehrerer Komponenten der Recheneinrichtung 800 ausführt/ausführen, um eine oder mehrere der hier beschriebenen Verfahren und/oder Prozesse auszuführen. Die CPU(s) 806 kann/können jeweils einen oder mehrere Kerne aufweisen (z. B. einen, zwei, vier, acht, achtundzwanzig, zweiundsiebzig usw.), die in der Lage sind, eine Vielzahl von Software-Threads gleichzeitig zu verarbeiten. Die CPU(s) 806 kann/können jede Art von Prozessor aufweisen und kann/können je nach Art der implementierten Recheneinrichtung 800 verschiedene Typen von Prozessoren aufweisen (z.B. Prozessoren mit weniger Kernen für mobile Einrichtungen und Prozessoren mit mehr Kernen für Server). Abhängig von der Art der Recheneinrichtung 800 kann der Prozessor z.B. ein ARM-Prozessor sein, der mit RISC (Reduced Instruction Set Computing) implementiert ist, oder ein x86-Prozessor, der mit CISC (Complex Instruction Set Computing) implementiert ist. Die Recheneinrichtung 800 kann eine oder mehrere CPUs 806 zusätzlich zu einem oder mehreren Mikroprozessoren oder zusätzlichen Koprozessoren, wie z.B. mathematische Koprozessoren, aufweisen.
  • Die GPU(s) 808 kann/können von der Recheneinrichtung 800 zum Rendern von Grafiken (z. B. 3D-Grafiken) verwendet werden. Die GPU(s) 808 kann/können Hunderte oder Tausende von Kernen aufweisen, die in der Lage sind, Hunderte oder Tausende von Software-Threads gleichzeitig zu verarbeiten. Die GPU(s) 808 kann/können Pixeldaten für Ausgabebilder als Reaktion auf Rendering-Befehle erzeugen (z. B. Rendering-Befehle von der/den CPU(s) 806, die über eine Host-Schnittstelle empfangen werden). Die GPU(s) 808 kann/können Grafikspeicher, wie z.B. Anzeigespeicher, zur Speicherung von Pixeldaten aufweisen. Der Anzeigespeicher kann als Teil des Speichers 804 vorhanden sein. Die GPU(s) 808 kann (können) zwei oder mehr parallel (z. B. über eine Verbindung) arbeitende GPUs aufweisen. Wenn sie miteinander kombiniert sind, kann jede GPU 808 Pixeldaten für verschiedene Abschnitte eines Ausgabebildes oder für verschiedene Ausgabebilder erzeugen (z. B. eine erste GPU für ein erstes Bild und eine zweite GPU für ein zweites Bild). Jede GPU kann ihren eigenen Speicher aufweisen oder Speicher mit anderen GPUs gemeinsam benutzen.
  • Bei Beispielen, bei denen die Recheneinrichtung 800 keine GPU(s) 808 aufweist, kann die CPU(s) 806 zum Rendern von Grafiken verwendet werden.
  • Die Kommunikationsschnittstelle 810 kann einen oder mehrere Empfänger, Sender und/oder Transceiver aufweisen, die es der Recheneinrichtung 800 ermöglichen, mit anderen Recheneinrichtungen über ein elektronisches Kommunikationsnetz, einschließlich drahtgebundener und/oder drahtloser Kommunikation, zu kommunizieren. Die Kommunikationsschnittstelle 810 kann Komponenten und Funktionen aufweisen, die eine Kommunikation über eine Anzahl verschiedener Netzwerke ermöglichen, wie z.B. drahtlose Netzwerke (z.B. Wi-Fi, Z-Wave, Bluetooth, Bluetooth LE, ZigBee, usw.), drahtgebundene Netzwerke (z.B. Kommunikation über Ethernet), Weitverkehrsnetzwerke mit geringer Leistung (z.B. LoRaWAN, SigFox, usw.) und/oder das Internet.
  • Die E/A-Anschlüsse 812 können es ermöglichen, die Recheneinrichtung 800 logisch mit anderen Einrichtungen zu koppeln, einschließlich der E/A-Komponenten 814, der Präsen-tationskomponente(n) 818 und/oder anderer Komponenten, von denen einige in die Recheneinrichtung 800 eingebaut (z.B. integriert) sein können. Dargestellte E/A-Komponenten 814 weisen ein Mikrofon, eine Maus, eine Tastatur, einen Joystick, ein Gamepad, einen Gamecontroller, eine Satellitenschüssel, einen Scanner, einen Drucker, eine drahtlose Einrichtung usw. auf. Die E/A-Komponenten 814 können eine natürliche Benutzerschnittstelle (NUI) bereitstellen, die von einem Benutzer erzeugte Luftgesten, eine Stimme oder andere physiologische Eingaben verarbeitet. In einigen Fällen können Eingaben zur weiteren Verarbeitung an ein geeignetes Netzelement übertragen werden. Eine NUI kann eine beliebige Kombination aus Spracherkennung, Stifterkennung, Gesichtserkennung, biometrischer Erkennung, Gestenerkennung sowohl auf dem Bildschirm als auch neben dem Bildschirm, Luftgesten, Kopf- und Augenverfolgung und Berührungserkennung (wie im Folgenden näher beschrieben) in Verbindung mit einer Anzeige der Recheneinrichtung 800 implementieren. Die Recheneinrichtung 800 kann Tiefenkameras aufweisen, wie z.B. stereoskopische Kamerasysteme, Infrarotkamerasysteme, RGB-Kamerasysteme, Touchscreen-Technologie und Kombinationen davon, zur Gestenerfassung und -erkennung. Zusätzlich kann die Recheneinrichtung 800 Beschleunigungsmesser oder Gyroskope (z.B. als Teil einer Trägheitsmesseinheit (IMU)) aufweisen, die die Erkennung von Bewegungen ermöglichen. Bei einigen Beispielen kann die Ausgabe der Beschleunigungsmesser oder Gyroskope von der Recheneinrichtung 800 verwendet werden, um immersive Augmented Reality oder virtuelle Realität darzustellen.
  • Die Stromzufuhr 816 kann eine fest verdrahtete Stromzufuhr, eine Batteriestromversorgung oder eine Kombination daraus aufweisen. Die Stromzufuhr 816 kann die Recheneinrichtung 800 mit Strom versorgen, um den Betrieb der Komponenten der Recheneinrichtung 800 zu ermöglichen.
  • Die Präsentationskomponente(n) 818 kann/können eine Anzeige (z. B. einen Monitor, einen Touchscreen, einen Fernsehbildschirm, ein Heads-up-Display (HUD), andere Anzeigetypen oder eine Kombination davon), Lautsprecher und/oder andere Präsentationskomponenten aufweisen. Die Präsentationskomponente(n) 818 kann/können Daten von anderen Komponenten (z.B. der/den GPU(s) 808, der/den CPU(s) 806 usw.) empfangen und die Daten (z.B. als Bild, Video, Ton usw.) ausgeben.
  • Die vorliegende Offenbarung kann im allgemeinen Kontext von Computercode oder maschinenverwendbaren Befehlen, einschließlich computerausführbarer Befehle, wie z.B. Programmmodule, die von einem Computer oder einer anderen Maschine, wie z.B. einem Assistenten für persönliche Daten oder einer anderen tragbaren Einrichtung, ausgeführt werden, beschrieben werden. Im Allgemeinen betreffen Programmmodule, welche Routinen, Programme, Objekte, Komponenten, Datenstrukturen usw. aufweisen, Code, der bestimmte Aufgaben ausführt oder bestimmte abstrakte Datentypen implementiert. Die vorliegende Offenbarung kann in einer Vielzahl von Systemkonfigurationen ausgeführt werden, einschließlich Handheld-Geräten, Unterhaltungselektronik, Allzweckcomputern, spezielleren Computereinrichtungen usw. Die vorliegende Offenbarung kann auch in verteilten Rechenumgebungen ausgeführt werden, in denen die Aufgaben von abgesetzt arbeitenden Einrichtungen ausgeführt werden, die über ein Kommunikationsnetz miteinander verbunden sind.
  • Wie es hier verwendet wird, sollte die Bezeichnung „und/oder“ in Bezug auf zwei oder mehr Elemente so interpretiert werden, dass nur ein Element oder eine Kombination von Elementen gemeint ist. Beispielsweise kann „Element A, Element B und/oder Element C“ nur Element A, nur Element B, nur Element C, Element A und Element B, Element A und Element C, Element B und Element C oder die Elemente A, B und C beinhalten. Darüber hinaus kann „mindestens eines von Element A oder Element B“ mindestens eines von Element A, mindestens eines von Element B oder mindestens eines von Element A und mindestens eines von Element B beinhalten. Darüber hinaus kann „mindestens eines von Element A und Element B“ mindestens eines von Element A, mindestens eines von Element B oder mindestens eines von Element A und mindestens eines von Element B beinhalten.
  • Der Gegenstand der vorliegenden Offenbarung wird hierin mit Genauigkeit beschrieben, um die gesetzlichen Anforderungen zu erfüllen. Die Beschreibung selbst ist jedoch nicht dazu gedacht, den Umfang dieser Offenbarung einzuschränken. Vielmehr haben die Erfinder in Betracht gezogen, dass der beanspruchte Gegenstand auch andere Ausführungsformen aufweisen könnte, um verschiedene Schritte oder Kombinationen von Schritten ähnlich denen, die in diesem Dokument beschrieben sind, in Verbindung mit anderen gegenwärtigen oder zukünftigen Technologien aufzuweisen. Darüber hinaus, obwohl die Begriffe „Schritt“ und/oder „Block“ hier verwendet werden können, um verschiedene Elemente der angewandten Verfahren zu bezeichnen, sollten die Begriffe nicht so ausgelegt werden, dass sie eine bestimmte Reihenfolge unter oder zwischen den verschiedenen hier offengelegten Schritten implizieren, es sei denn, die Reihenfolge der einzelnen Schritte wird ausdrücklich beschrieben.

Claims (20)

  1. Von einem Computer implementiertes Verfahren, umfassend: Empfangen, von einer Softwarestartanwendung, einer Benutzeranforderung für eine Zuweisung von zumindest einem Rechenmittel eines Cloud-Rechendienstanbieters, um eine Instanz einer Softwareanwendung zu hosten; Bestimmen, dass die Zuweisung des mindestens einen Rechenmittels temporär nicht möglich ist, basierend auf der Benutzeranforderung; und Veranlassen, abhängig von dem Bestimmen, einer Präsentation von einem oder von mehreren interaktiven Inhaltselementen in einem ersten Fenster der Softwarestartanwendung, während die Zuweisung des mindestens einen Rechenmittels nicht möglich ist, wobei das Veranlassen der Präsentation des einen oder der mehreren interaktiven Inhaltselemente aufweist ein Empfangen des einen oder der mehreren interaktiven Inhaltselemente von einem ersten Datenspeicher, welcher mehrere interaktive Inhaltselemente umfasst, wobei der erste Datenspeicher ein von einem zweiten Datenspeicher getrennter Datenspeicher ist, welcher Daten zum Hosten der Softwareanwendung umfasst.
  2. Von einem Computer implementiertes Verfahren nach Anspruch 1, wobei die Präsentation einen grafischen Hinweis aufweist, dass die Benutzeranforderung einer Warteschlange von Benutzeranforderungen für eine Zuweisung des mindestens einen Rechenmittels hinzugefügt worden ist.
  3. Von einem Computer implementiertes Verfahren nach Anspruch 1 oder 2, darüber hinaus umfassend: Empfangen einer Benutzerbetätigung eines Inhaltselements des einen oder der mehreren interaktiven Inhaltselemente; und Veranlassen, abhängig von dem Empfangen der Benutzerbetätigung des Inhaltselements, einer Präsentation eines zweiten Fensters, welches eine Option anzeigt, wobei eine Betätigung der Option eine Präsentation von mindestens einem zusätzlichen Inhaltselement in einem Fenster der Softwarestartanwendung veranlasst.
  4. Von einem Computer implementiertes Verfahren nach einem der vorhergehenden Ansprüche, darüber hinaus umfassend: Empfangen einer ersten Benutzerbetätigung eines Inhaltselements des einen oder der mehreren interaktiven Inhaltselemente; und Veranlassen, abhängig von dem Empfangen der ersten Benutzerbetätigung des Inhaltselements, einer Präsentation eines zweiten Fensters, welches eine Option darstellt, wobei eine Betätigung der Option eine Umleitung zu einer Online-Stelle veranlasst, wo zumindest ein zusätzliches Inhaltselement in der Softwarestartanwendung präsentiert wird; und abhängig von dem Empfangen einer zweiten Benutzerbetätigung der Option, Stornieren der Benutzeranforderung für die Zuweisung und Veranlassen einer Präsentation des mindestens einen zusätzlichen Inhaltselements in der Softwarestartanwendung.
  5. Von einem Computer implementiertes Verfahren nach einem der vorhergehenden Ansprüche, darüber hinaus umfassend: Empfangen einer Benutzerbetätigung eines Inhaltselements des einen oder der mehreren aktiven Inhaltselemente; und Veranlassen, abhängig von dem Empfangen der Benutzerbetätigung des Inhaltselements, einer Präsentation von zumindest einem zusätzlichen Inhaltselement in einem standardmäßigen Webbrowser einer Recheneinrichtung, welche die Benutzeranforderung bereitstellt.
  6. Von einem Computer implementiertes Verfahren nach einem der vorhergehenden Ansprüche, wobei die Benutzeranforderung abhängig von einer betätigten Option in der Softwarestartanwendung erzeugt wird, um die Instanz der Softwareanwendung zu starten.
  7. Von einem Computer implementiertes Verfahren nach einem der vorhergehenden Ansprüche, darüber hinaus umfassend ein automatisches Veranlassen einer Präsentation eines dritten Fensters, wobei das dritte Fenster der Instanz der Softwareanwendung abhängig von einer Durchführung der Zuweisung zugeordnet ist.
  8. Von einem Computer implementiertes Verfahren, umfassend: Empfangen, von einer Spielstartanwendung, einer Benutzeranforderung für eine Zuweisung eines Spiel-Slots von mehreren Spiel-Slots eines Cloud-Spieldienstanbieters, um eine Instanz einer Spielanwendung zu hosten; Bestimmen, abhängig von der Benutzeranforderung, dass der Spiel-Slot temporär nicht verfügbar ist; und abhängig von dem Bestimmen, dass der Spiel-Slot temporär nicht verfügbar ist: Anordnen der Benutzeranforderung in einer Warteschlange von Benutzeranforderungen für Spiel-Slots; und Veranlassen einer Präsentation eines oder mehrerer interaktiver Inhaltselemente in einem ersten Fenster der Spielstartanwendung, während die Zuweisung des Spiel-Slots nicht möglich ist, wobei das Veranlassen der Präsentation des einen oder der mehreren interaktiven Inhaltselemente ein Empfangen des einen oder der mehreren interaktiven Inhaltselemente von einem ersten Datenspeicher aufweist, welcher mehrere interaktive Inhaltselemente umfasst, wobei der erste Datenspeicher ein von einem zweiten Datenspeicher getrennter Datenspeicher ist, welcher Daten zum Hosten der Spielanwendung umfasst.
  9. Von einem Computer implementiertes Verfahren nach Anspruch 8, darüber hinaus umfassend: Erzeugen einer Inhaltselementanforderung, welche einen oder mehrere Parameter aufweist, die der Benutzeranforderung zugeordnet sind; Senden der Inhaltselementanforderung zu einem Inhaltselementserver; und Empfangen des einen oder der mehreren interaktiven Inhaltselemente für die Präsentation abhängig von der Inhaltselementanforderung.
  10. Von einem Computer implementiertes Verfahren nach Anspruch 8 oder 9, wobei die Präsentation einen Hinweis aufweist, dass sich die Benutzeranforderung in der Warteschlange befindet, in welcher die Zuweisung des Spiel-Slots abgewartet wird.
  11. Von einem Computer implementiertes Verfahren nach einem der Ansprüche 8 bis 10, wobei das Verfahren darüber hinaus umfasst: Empfangen einer Benutzerbetätigung eines Inhaltselements des einen oder der mehreren interaktiven Inhaltselemente; und Veranlassen, abhängig von dem Empfangen der Benutzerbetätigung des Inhaltselements, einer Präsentation eines zweiten Fensters, welches eine Option darstellt, wobei eine Betätigung der Option eine Präsentation von mindestens einem zusätzlichen Inhaltselement in einem Fenster der Spielstartanwendung veranlasst.
  12. Von einem Computer implementiertes Verfahren nach einem der Ansprüche 8 bis 11, wobei das Verfahren darüber hinaus umfasst: Empfangen einer Benutzerbetätigung eines Inhaltselements des einen oder der mehreren interaktiven Inhaltselemente; und Veranlassen, abhängig von dem Empfangen der Benutzerbetätigung des Inhaltselements, einer Präsentation eines dritten Fensters, welches eine Option darstellt, wobei eine Betätigung der Option eine Präsentation des mindestens einen zusätzlichen Inhaltselements und eine Stornierung der Benutzeranforderung für die Zuweisung veranlasst.
  13. Von einem Computer implementiertes Verfahren nach einem der Ansprüche 8 bis 12, wobei die Benutzeranforderung abhängig von einer betätigten Option in der Spielstartanwendung erzeugt wird, um die Instanz der Spielanwendung zu starten.
  14. Von einem Computer implementiertes Verfahren nach einem der Ansprüche 8 bis 13, darüber hinaus umfassend ein automatisches Veranlassen einer Präsentation eines vierten Fensters, wobei das vierte Fenster der Instanz der Spielanwendung abhängig von einer Durchführung der Zuweisung zugeordnet ist.
  15. Von einem Computer implementiertes Verfahren, umfassend: Empfangen, von einer Startanwendung, einer Benutzeranforderung für eine Zuweisung eines Rechen-Slots von mehreren Rechen-Slots eines Cloud-Anwendungs-Hosting-Dienstes, um eine Instanz einer Softwareanwendung zu hosten; Bestimmen, abhängig von der Benutzeranforderung, dass der Rechen-Slot temporär nicht verfügbar ist; Anordnen, abhängig von dem Bestimmen, dass der Rechen-Slot temporär nicht verfügbar ist, der Benutzeranforderung in einer Warteschlange, um die Zuweisung des Rechen-Slots abzuwarten; und Veranlassen einer Präsentation eines grafischen Hinweises, dass die Benutzeranforderung in der Warteschlange angeordnet worden ist, wobei die Präsentation ein oder mehrere interaktive Inhaltselemente umfasst.
  16. Von einem Computer implementiertes Verfahren nach Anspruch 15, darüber hinaus umfassend: Veranlassen, abhängig von einer Benutzerbetätigung des einen oder der mehreren interaktiven Inhaltselemente, einer Präsentation eines ersten Fensters, welches umfasst eine erste Option, wobei eine Betätigung der ersten Option eine Präsentation von mindestens einem zusätzlichen Inhaltselement in einem Hintergrund der Startanwendung veranlasst, und eine zweite Option, wobei eine Betätigung der zweiten Option eine Präsentation des mindestens einen zusätzlichen Inhaltselements in einem Vordergrund der Startanwendung und eine Stornierung der Benutzeranforderung für die Zuweisung veranlasst.
  17. Von einem Computer implementiertes Verfahren nach Anspruch 15 oder 16, darüber hinaus umfassend: Empfangen einer Benutzeranforderung eines Inhaltselements des einen oder der mehreren interaktiven Inhaltselemente; und Veranlassen, abhängig von dem Empfangen der Benutzerbetätigung des Inhaltselements, einer Präsentation eines zweiten Fensters, welches eine Option umfasst, wobei eine Betätigung der Option eine Präsentation des mindestens einen zusätzlichen Inhaltselements in einem Fenster veranlasst, wobei ein Anwendungsstartfenster der Startanwendung eine Anzeige des grafischen Hinweises umfasst.
  18. Von einem Computer implementiertes Verfahren nach einem der Ansprüche 15 bis 17, darüber hinaus umfassend: Empfangen einer Benutzerbetätigung eines Inhaltselements des einen oder der mehreren interaktiven Inhaltselemente; und Entfernen der Benutzeranforderung aus der Warteschlange abhängig von der Benutzerbetätigung des Inhaltselements.
  19. Von einem Computer implementiertes Verfahren nach einem der Ansprüche 15 bis 18, darüber hinaus umfassend: Empfangen einer Benutzerbetätigung eines Inhaltselements des einen oder der mehreren interaktiven Inhaltselemente; und Stornieren der Benutzeranforderung abhängig von der Benutzerbetätigung des Inhaltselements.
  20. Von einem Computer implementiertes Verfahren nach einem der Ansprüche 15 bis 19, darüber hinaus umfassend automatisches Veranlassen, abhängig von der Zuweisung des Rechen-Slots, dass die Instanz der Anwendung in Verbindung mit einer Recheneinrichtung, welche die Benutzeranforderung bereitstellt, gestartet und angezeigt wird.
DE102020127862.4A 2019-10-23 2020-10-22 Erhöhung der benutzerbindung während des wartens auf die zuweisung von rechenmitteln für cloud-dienste Pending DE102020127862A1 (de)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US16/661,307 US11343354B2 (en) 2019-10-23 2019-10-23 Increasing user engagement during computing resource allocation queues for cloud services
US16/661,307 2019-10-23

Publications (1)

Publication Number Publication Date
DE102020127862A1 true DE102020127862A1 (de) 2021-04-29

Family

ID=75378958

Family Applications (1)

Application Number Title Priority Date Filing Date
DE102020127862.4A Pending DE102020127862A1 (de) 2019-10-23 2020-10-22 Erhöhung der benutzerbindung während des wartens auf die zuweisung von rechenmitteln für cloud-dienste

Country Status (3)

Country Link
US (1) US11343354B2 (de)
CN (1) CN112698938A (de)
DE (1) DE102020127862A1 (de)

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP7314090B2 (ja) * 2020-03-27 2023-07-25 任天堂株式会社 ゲーム装置、情報処理プログラム、および情報処理方法
CN112153402A (zh) * 2020-09-22 2020-12-29 北京达佳互联信息技术有限公司 电子资源分配方法、装置、电子设备和存储介质
US11704609B2 (en) 2021-06-10 2023-07-18 Bank Of America Corporation System for automatically balancing anticipated infrastructure demands
US11252036B1 (en) 2021-06-10 2022-02-15 Bank Of America Corporation System for evaluating and tuning resources for anticipated demands
US20230297448A1 (en) * 2022-03-17 2023-09-21 OpenFin Inc. Initiating operations for applications via communication bridges

Family Cites Families (20)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2010015072A1 (en) * 2008-08-07 2010-02-11 Research In Motion Limited System and method for providing an interactive content portal on a mobile device
US9223624B2 (en) * 2010-10-20 2015-12-29 International Business Machines Corporation Processing requests in a cloud computing environment
US8834277B2 (en) * 2012-12-27 2014-09-16 Sony Computer Entertainment America Llc Systems and methods for sharing cloud-executed mini-games, challenging friends and enabling crowd source rating
US9122510B2 (en) * 2013-01-02 2015-09-01 International Business Machines Corporation Querying and managing computing resources in a networked computing environment
CN103491151A (zh) * 2013-09-13 2014-01-01 中安消技术有限公司 一种云计算资源的调度方法、装置及云计算平台
US9457264B1 (en) * 2014-03-10 2016-10-04 Kabam, Inc. System and method for providing speed-up quest offers to users during idle time
US10296391B2 (en) * 2014-06-30 2019-05-21 Microsoft Technology Licensing, Llc Assigning a player to a machine
JP6526826B2 (ja) * 2015-03-06 2019-06-05 ソニー インタラクティブ エンタテインメント アメリカ リミテッド ライアビリテイ カンパニー クラウド上のアプリケーションのための予測的なインスタントプレイ技術
US9632664B2 (en) * 2015-03-08 2017-04-25 Apple Inc. Devices, methods, and graphical user interfaces for manipulating user interface objects with visual and/or haptic feedback
US9778957B2 (en) * 2015-03-31 2017-10-03 Stitch Fix, Inc. Systems and methods for intelligently distributing tasks received from clients among a plurality of worker resources
US9858597B2 (en) * 2015-05-21 2018-01-02 Cloudtraq Llc Identification, location, and authentication systems and methods
US10315108B2 (en) * 2015-08-19 2019-06-11 Sony Interactive Entertainment America Llc Local application quick start with cloud transitioning
US10083054B2 (en) * 2015-12-28 2018-09-25 Amazon Technologies, Inc. Application-based computing resource management
CN109152955B (zh) * 2015-12-30 2022-09-23 索尼互动娱乐美国有限责任公司 云游戏中的用户保存数据管理方法
US10207184B1 (en) * 2017-03-21 2019-02-19 Amazon Technologies, Inc. Dynamic resource allocation for gaming applications
US10456673B1 (en) * 2017-11-17 2019-10-29 Amazon Technologies, Inc. Resource selection for hosted game sessions
US11077364B2 (en) * 2018-04-02 2021-08-03 Google Llc Resolution-based scaling of real-time interactive graphics
CN109842671B (zh) * 2018-11-30 2022-08-30 畅捷通信息技术股份有限公司 一种浏览器与自动报税应用程序通信的方法及系统
US10967274B1 (en) * 2019-03-13 2021-04-06 Amazon Technologies, Inc. Dynamic management of processes executing on computing instances
US11343220B2 (en) * 2019-04-10 2022-05-24 Meta Platforms, Inc. User engagement with co-users of a networking system

Also Published As

Publication number Publication date
CN112698938A (zh) 2021-04-23
US11343354B2 (en) 2022-05-24
US20210126984A1 (en) 2021-04-29

Similar Documents

Publication Publication Date Title
DE102020127862A1 (de) Erhöhung der benutzerbindung während des wartens auf die zuweisung von rechenmitteln für cloud-dienste
DE102014117344A1 (de) Gerät und Verfahren zum Empfangen einer Eingabe und Darstellen als Antwort eine Ausgabe auf einem von dem ersten Gerät unterschiedlichen zweiten Gerät
CN1921495B (zh) 医学图像的分布式图像处理
DE102018111900A1 (de) Systeme und Verfahren zum Bestimmen eines Reaktionshinweises für einen digitalen Assistenten basierend auf einem Kontext
DE60313108T2 (de) Verfahren und System zur Steuerung auf PXE basierender Bootentscheidungen von einem Netzwerkstrategieverzeichnis
DE202017105871U1 (de) Umsetzbare Vorschläge für Aktivitäten
US20160286275A1 (en) Content delivery system, delivery program, and delivery method
DE112019007506T5 (de) Bestimmen von dauern von hohem interesse von gameplay-sitzungen aus benutzereingaben
DE202017006742U1 (de) Eingabegerät-Stabilisierungstechniken für virtuelle Realitätssysteme
CN104813309A (zh) 用于远程显示器的基于云的虚拟化图形处理方法和系统
DE102015120189A1 (de) Darstellen einer Fahrzeit zu und von einem Event in einem elektronischen Kalender
US20080238929A1 (en) Local Themeing Of Remote Applications
DE112010005473T5 (de) Opportunistisches multitasking
DE112021001301T5 (de) Dialogorientierte-ki-plattform mit gerenderter graphischer ausgabe
DE102015002365A1 (de) Prioritätsbasierte kontextpräemption
DE102020111960A1 (de) Dynamische vergabe von rechenressourcen zur erzeugung von höhepunkten in cloudspiel-systemen
US9705936B2 (en) System and method for interactive and real-time visualization of distributed media
US10402462B2 (en) Robust filters for social networking environments
DE202015009270U1 (de) Automatische Ermittlung und Installation von Anwendungen über das Internet bei Koppelung von Hardware-Geräten mit Computergeräten
DE112016002384T5 (de) Hilfsschicht mit automatisierter Extraktion
DE112015005511T5 (de) Mehrzweck-anwendungsstartoberfläche
US11792245B2 (en) Network resource oriented data communication
DE102015006750A1 (de) Abtasten, fehlerverwaltung und/oder kontextwechsel über eine rechnerpipeline
DE102022100815A1 (de) Lautstärkensteuerung für audio- und videokonferenzanwendungen
DE102020002356A1 (de) Verbesserte gestalterische gemeinsame Bearbeitung unter Nutzung einer gestaltungsbasierten Rückmeldung

Legal Events

Date Code Title Description
R012 Request for examination validly filed