Вид РИД
Изобретение
Область техники, к которой относится изобретение
Настоящее изобретение относится к способам и системам для автоматического создания предлагаемых мини-игр на основе записанного игрового процесса, для создания многокомпонентных мини-игр для облачных игр на основе записанного игрового процесса, для совместного использования записанного игрового процесса в социальном графе и удаленного управления игровым процессом первого пользователя вторым пользователем.
Уровень техники
Индустрия видеоигр за последние годы претерпела много изменений. С ростом вычислительных мощностей разработчики видеоигр создали игровое программное обеспечение, которое также использует преимущества этого увеличения вычислительной мощности. С этой целью разработчики видеоигр создали программный код игр, который включает сложные операции и математику для создания максимально реалистичного восприятия игры.
Примером игровых платформ может служить Sony Playstation®, Sony Playstation2® (PS2) и Sony Playstation3® (PS3), каждая из которых продается в виде игровой приставки. Как известно, игровая приставка предназначена для подключения к монитору (обычно телевизору) и делает возможным взаимодействие пользователя с системой посредством ручных управляющих устройств. Игровая приставка разработана с использованием специализированного оборудования обработки, включающего процессор, графическое синтезирующее устройство для обработки интенсивных графических операций, векторный модуль для выполнения геометрических преобразований, а также другое связующее оборудование, микропрограммное обеспечение и программное обеспечение. Игровая приставка дополнительно содержит лоток оптических дисков для приема игровых компакт-дисков для осуществления локальной игры с помощью игровой приставки. Сетевая игра также возможна, в случаях, когда пользователь может интерактивно играть против или вместе с другими пользователями через Интернет. Так как усложнение игры продолжает заинтересовывать игроков, производители игр и оборудования продолжают внедрять технические новшества для возможности использования дополнительной интерактивности и компьютерных программ.
Растущей тенденцией в индустрии компьютерных игр является разработка игр, в которых возрастает взаимодействие между пользователем и игровой системой. Один из способов достижения более богатого интерактивного восприятия заключается в использовании беспроводных игровых управляющих устройств, движение которых отслеживается игровой системой для отслеживания движений игрока, и в использовании этих движений как исходной информации для игры. Вообще говоря, входное действие обозначает способность электронного устройства, такого как компьютерная система, игровая видеоприставка, интеллектуальное устройство и т.д., реагировать на некоторые действия, выполненные игроком и полученные электронным устройством.
Еще одна усиливающаяся тенденция в отрасли включает разработку облачных игровых систем. Такие системы могут содержать удаленный сервер обработки, который выполняет игровое приложение и взаимодействует с локальным тонким клиентом, который может быть сконфигурирован с возможностью получения входных данных от пользователей и выдачи видео на дисплей.
Именно в этом контексте возникают варианты воплощения изобретения.
Сущность изобретения
Варианты воплощения настоящего изобретения предусматривают способы и системы для автоматического создания предлагаемых мини-игр на основе записанного игрового процесса, для создания многокомпонентных мини-игр для облачных игр, основанных на записанном игровом процессе, для совместного использования записанного игрового процесса в социальном графе и удаленного управления игровым процессом первого пользователя вторым пользователем. Следует понимать, что настоящее изобретение может быть реализовано множеством способов, таких как процесс, оборудование, система, устройство или способ на машиночитаемом носителе. Несколько патентоспособных вариантов воплощения настоящего изобретения описано ниже.
В одном из вариантов воплощения предоставляется способ создания воспроизводимой ограниченной версии видеоигры, включающий следующий способ действий: запись игрового процесса пользователя полной версии видеоигры; анализ записанного игрового процесса пользователя для определения области заинтересованности; определение границ в контексте игрового процесса видеоигры на основе определенной области заинтересованности; и создание ограниченной версии видеоигры на основе определенных границ; при этом способ выполняется процессором.
В другом варианте воплощения предоставляется способ создания воспроизводимой ограниченной версии видеоигры, включающий следующий способ действий: запись игрового процесса пользователя полной версии видеоигры; анализ записанного игрового процесса пользователя для определения одной или более областей заинтересованности; предоставление каждой из областей заинтересованности для выбора; получение введенного выбора, указывающего выбранную область заинтересованности; для выбранной области заинтересованности, определение границ в контексте игрового процесса видеоигры на основе определенной области заинтересованности; и создание ограниченной версии видеоигры на основе определенных границ; при этом способ выполняется процессором.
В другом варианте воплощения предоставляется способ создания воспроизводимой ограниченной версии видеоигры, включающий следующий способ действий: запись игрового процесса пользователя полной версии видеоигры, где запись игрового процесса пользователя включает запись одних или более вводимых пользователем данных или данных состояния игры; анализ записанного игрового процесса пользователя для определения одной или более областей заинтересованности, где каждая область заинтересованности определяется автоматически на основе соответствия одному или более порогам; предоставление каждой из областей заинтересованности для выбора; получение введенного выбора, указывающего выбранную область заинтересованности; для выбранной области заинтересованности, определение границ в контексте игрового процесса видеоигры на основе определенной области заинтересованности; создание ограниченной версии видеоигры на основе определенных границ; при этом способ выполняется процессором.
В одном варианте воплощения предоставляется способ создания воспроизводимой ограниченной версии видеоигры, включающий следующий способ действий: запись игрового процесса пользователя полной версии видеоигры; определение множества устанавливаемых пользователем частей записанного игрового процесса пользователя; для каждой установленной пользователем части, определение границ в контексте игрового процесса видеоигры на основе установленной пользователем части и создание воспроизводимой части видеоигры на основе определенных границ; упорядочивание каждой из воспроизводимых частей видеоигры в последовательность для образования ограниченной версии видеоигры; при этом способ выполняется процессором.
В другом варианте воплощения предоставляется физический машиночитаемый носитель, содержащий в себе программные инструкции для создания воспроизводимой ограниченной версии видеоигры, включающий следующее: программные инструкции для записи игрового процесса пользователя полной версии видеоигры; программные инструкции для определения множества устанавливаемых пользователем частей записанного игрового процесса пользователя; программные инструкции, для каждой установленной пользователем части, для определения границ в контексте игрового процесса видеоигры на основе установленной пользователем части и создания воспроизводимой части видеоигры на основе определенных границ; программные инструкции для упорядочивания каждой из воспроизводимых частей видеоигры в последовательность для образования ограниченной версии видеоигры.
В другом варианте воплощения предоставляется система, включающая следующее: по меньшей мере одно серверное вычислительное устройство, это по меньшей мере одно серверное вычислительное устройство содержит логический блок для создания воспроизводимой ограниченной версии видеоигры, включающий логический блок для записи игрового процесса пользователя полной версии видеоигры; логический блок для определения множества устанавливаемых пользователем частей записанного игрового процесса пользователя; логический блок, для каждой установленной пользователем части, для определения границ в контексте игрового процесса видеоигры на основе установленной пользователем части и создания воспроизводимой части видеоигры на основе определенных границ; логический блок для упорядочивания каждой из воспроизводимых частей видеоигры в последовательность для образования ограниченной версии видеоигры.
В одном варианте воплощения предоставляется способ совместного использования записанного игрового процесса в социальном графе, включающий следующий способ действий: запись видео игрового процесса пользователя во время активного состояния игровой сессии; получение команды инициирования операции совместного использования во время активного состояния игровой сессии; в ответ на получение команды, ввод состояния приостановки игровой сессии и предоставление интерфейса совместного использования; обработка данных ввода, полученных через интерфейс совместного использования, для определения установленного пользователем выбора записанного видео; совместное использование установленного пользователем выбора записанного видео в социальном графе пользователя; возобновление активного состояния игровой сессии; при этом способ выполняется процессором.
В другом варианте воплощения предоставляется способ совместного использования записанного игрового процесса в социальном графе, включающий следующий способ действий: запись видео игрового процесса пользователя во время активного состояния игровой сессии; получение команды инициирования операции совместного использования во время активного состояния игровой сессии; в ответ на получение команды, установление установленного пользователем выбора записанного видео; совместное использование установленного пользователем выбора записанного видео в социальном графе пользователя; при этом способ выполняется процессором.
В другом варианте воплощения предоставляется машиночитаемый носитель постоянного хранения, содержащий в себе программные инструкции для совместного использования записанного игрового процесса в социальном графе. Программные инструкции включают: программные инструкции для записи видео игрового процесса пользователя во время активного состояния игровой сессии; программные инструкции для получения команды инициирования операции совместного использования во время активного состояния игровой сессии; программные инструкции для установления установленного пользователем выбора записанного видео в ответ на получение команды; программные инструкции для совместного использования установленного пользователем выбора записанного видео в социальном графе пользователя.
В одном варианте воплощения предоставляется способ обеспечения удаленного управления игровым процессом пользователя, этот способ включает следующий способ действий: представление потокового видео игрового процесса первого пользователя удаленно расположенному второму пользователю; обработка запроса на переход управления игровым процессом первого пользователя ко второму пользователю; инициирование управления игровым процессом первого пользователя вторым пользователем; при этом способ выполняется по меньшей мере одним процессором.
В другом варианте воплощения предоставляется способ для обеспечения мультиплеерного игрового процесса, включающий следующий способ действий: представление потокового видео игровой сессии первого пользователя удаленно расположенному второму пользователю; обработка запроса на подключение второго пользователя к игровой сессии первого пользователя; инициирование вторым пользователем игрового процесса в игровой сессии первого пользователя; при этом способ выполняется по меньшей мере одним процессором.
В другом варианте воплощения предоставляется машиночитаемый носитель постоянного хранения, содержащий в себе программные инструкции для обеспечения удаленного управления игровым процессом пользователя, эти программные инструкции включают: программные инструкции для представления потокового видео игрового процесса первого пользователя удаленно расположенному второму пользователю; программные инструкции для обработки запроса на переход управления игровым процессом первого пользователя ко второму пользователю; программные инструкции для инициирования управления игровым процессом первого пользователя вторым пользователем.
Другие аспекты настоящего изобретения станут очевидными из нижеследующего подробного описания в сочетании с прилагаемыми чертежами, иллюстрирующими в качестве примера принципы изобретения.
Краткое описание чертежей
Настоящее изобретение может быть лучше понято со ссылкой на последующее описание в сочетании с прилагаемыми чертежами, на которых:
Фигура 1А иллюстрирует пользователя, играющего в облачную видеоигру, в соответствии с вариантами воплощения изобретения.
Фигура 1В иллюстрирует несколько пользователей в нескольких местах, участвующих в игровом процессе облачных видеоигр.
Фигура 2А иллюстрирует систему для облачной игры в соответствии с вариантом воплощения настоящего изобретения.
Фигура 2В концептуально иллюстрирует накапливание видеоигр для различных поколений игровых приставок в соответствии с вариантами воплощения изобретения.
Фигура 3 иллюстрирует способ предоставления пользователю демонстрационного примера игры в соответствии с вариантом воплощения настоящего изобретения.
Фигура 4А иллюстрирует иерархическую организацию различных частей видеоигры в соответствии с вариантом воплощения настоящего изобретения.
Фигура 4В иллюстрирует интерфейс для выбора части временной шкалы игрового процесса для создания мини-игры или вырезки из игры в соответствии с вариантом воплощения настоящего изобретения.
Фигура 4С иллюстрирует интерфейс для выбора части временной шкалы игрового процесса для создания мини-игры в соответствии с вариантом воплощения настоящего изобретения.
Фигура 5 иллюстрирует последовательность снимков экрана, демонстрирующих способ создания мини-игры из существующей облачной видеоигры, в соответствии с вариантом воплощения настоящего изобретения.
Фигура 6 иллюстрирует систему генерации кода вырезки из игры в соответствии с вариантом воплощения настоящего изобретения.
Фигура 7А иллюстрирует модификацию виртуального пространства в целях создания вырезки из видеоигры в соответствии с вариантом воплощения настоящего изобретения.
Фигура 7В иллюстрирует модификацию графа сцены в целях создания вырезки из игры в соответствии с вариантами воплощения изобретения.
Фигура 8 иллюстрирует способ создания вырезки из игры в соответствии с вариантом воплощения настоящего изобретения.
Фигура 9А иллюстрирует интерфейс для просмотра вырезок из игры, связанных с различными видеоиграми, в соответствии с вариантом воплощения настоящего изобретения.
Фигура 9В иллюстрирует информационную страницу вырезки из игры в соответствии с вариантом воплощения настоящего изобретения.
Фигура 10 иллюстрирует вид сведений об учетной записи пользователя, включающих отображение друзей в режиме реального времени в облаке игровой социальной сети в соответствии с одним из вариантов воплощения настоящего изобретения.
Фигура 11 иллюстрирует способ представления видеопотоков игры друзей текущего пользователя в соответствии с вариантом воплощения настоящего изобретения.
Фигура 12 иллюстрирует систему, включающую облачную игровую систему и социальную сеть, в соответствии с вариантом воплощения настоящего изобретения.
Фигура 13 представляет собой график, иллюстрирующий различные переменные состояния игры в динамике по времени, в соответствии с вариантами воплощения изобретения.
Фигура 14А иллюстрирует способ создания вырезки из игры для видеоигры линейного типа в соответствии с вариантом воплощения настоящего изобретения.
Фигура 14В иллюстрирует способ создания вырезки из игры для видеоигры типа «открытый мир» в соответствии с вариантом воплощения настоящего изобретения.
Фигура 14С иллюстрирует способ создания вырезки из игры для спортивной видеоигры в соответствии с вариантом воплощения настоящего изобретения.
Фигура 15 концептуально иллюстрирует формирование игровой вырезки из мультиигры в соответствии с вариантом воплощения настоящего изобретения.
Фигура 16 концептуально иллюстрирует создание мини-игровой вырезки из мультиигры в соответствии с вариантом воплощения настоящего изобретения.
Фигура 17 иллюстрирует интерфейс для совместного использования игрового процесса в соответствии с вариантом воплощения настоящего изобретения.
Фигура 18 иллюстрирует интерфейс 1800 для выбора части записанного видео игрового процесса для совместного использования в соответствии с вариантом воплощения настоящего изобретения.
Фигура 19 иллюстрирует интерфейс 1900 для просмотра потока видеоданных в реальном масштабе времени игрового процесса пользователя в соответствии с вариантом воплощения настоящего изобретения.
Фигура 20 иллюстрирует оборудование и пользовательские интерфейсы, которые могут быть использованы для обеспечения интерактивности в видеоигре, в соответствии с одним вариантом воплощения настоящего изобретения.
Фигура 21 иллюстрирует дополнительное оборудование, которое может быть использовано для обработки инструкций, в соответствии с одним вариантом воплощения настоящего изобретения.
На фигуре 22 приведен иллюстративный рисунок сцен от А до Е с соответствующим пользователем от А до Е, взаимодействующим с игровыми клиентами 1102, подключенными к серверу обработки через Интернет, в соответствии с одним вариантом воплощения настоящего изобретения.
Фигура 23 иллюстрирует вариант воплощения архитектуры поставщика информационных услуг.
Подробное описание
Следующие варианты воплощения описывают способы и устройства для автоматического создания предлагаемых мини-игр на основе записанного игрового процесса, для создания многокомпонентных мини-игр для облачных игр на основе записанного игрового процесса, для совместного использования записанного игрового процесса в социальном графе и удаленного управления игровым процессом первого пользователя вторым пользователем.
Однако специалистам в данной области будет очевидно, что настоящее изобретение может быть реализовано без некоторых или всех из этих конкретных деталей. В других случаях хорошо известные технологические операции не были описаны подробно, чтобы без необходимости не усложнять раскрытие настоящего изобретения.
Фиг.1А иллюстрирует пользователя, играющего в облачную видеоигру, в соответствии с вариантами воплощения изобретения. Как показано, пользователь U1 играет в облачную видеоигру, отображаемую на дисплее 100. Облачная видеоигра представляет собой видеоигру, которая в основном выполняется на удаленном сервере. Сервер, в одном из вариантов воплощения, может включать отдельные серверы или серверы, работающие на виртуальной машине центра хранения и обработки данных, где может быть виртуализировано множество серверов для обеспечения осуществления требуемого объема вычислений. В показанном варианте воплощения видеоигра, отображаемая на дисплее 100, выполняется на сервере(ах) облачной игры 104. Клиент 101 расположен в месте нахождения пользователя, чтобы получать и обрабатывать вводимые данные и передавать их на серверы облачной игры 104, а также получать видео- и аудиоданные от серверов облачной игры 104. Клиент 101 и серверы облачной игры 104 взаимодействуют через сеть 102, такую как Интернет. В других вариантах воплощения клиент может быть любым устройством, портативным или не портативным, беспроводным или не беспроводным, таким, чтобы клиент мог взаимодействовать с сетью и обеспечить доступ к дисплею для отображения хода игры, и позволить пользователю осуществлять ввод для возможности интерактивного управления. В одном из вариантов воплощения клиентом является тонкий клиент. Тем не менее, в других вариантах воплощения в качестве клиента может выступать компьютер общего назначения, компьютер специального назначения, игровая приставка, персональный компьютер, портативный компьютер, планшетный компьютер, мобильное вычислительное устройство, портативное игровое устройство, мобильный телефон, телевизионная приставка, интерфейс/устройство потокового мультимедиа, телевизор высокой четкости или сетевой дисплей, или любое другое вычислительное устройство, которое можно сконфигурировать для получения требуемой функциональности клиента, как определено здесь. В одном из вариантов воплощения сервер облачной игры сконфигурирован с возможностью обнаружения типа клиентского устройства, используемого пользователем, и обеспечения восприятия облачной игры, соответствующего клиентскому устройству пользователя. Например, могут быть оптимизированы настройки изображения, аудионастройки и другие типы настроек клиентского устройства пользователя.
В различных вариантах воплощения степень обработки, выполняемой клиентом, может изменяться в отношении обработки ввода и вывода. Однако, говоря упрощенно, состояние видеоигры в основном сохраняется и выполняется на серверах облачной игры 104, при этом клиент в основном функционирует для получения и передачи данных, вводимых пользователем, и для получения видео-/аудиоданных для отображения. Клиент 101 может быть самостоятельным устройством, которое подключено к дисплею 100 и предоставляет видеоданные для отображения на дисплее 100. В других вариантах воплощения клиент может быть встроен в дисплей 100. В одном из вариантов воплощения дисплей 100 является сетевым дисплеем, предоставляя среду операционной системы для программ или "приложений", использующих возможности сетевого подключения дисплея. В таком варианте воплощения клиент может быть определен приложением, выполняемым в среде, предоставленной операционной системой дисплея.
Фигура 1В иллюстрирует несколько пользователей в нескольких местах, участвующих в игровом процессе облачных видеоигр. Пользователь U1, показанный в первом местоположении, взаимодействует с видеоигрой, отображаемой на дисплее 100.
Пользователи U2 и U3, показанные во втором местоположении, взаимодействуют с видеоигрой, отображаемой на дисплее 106. Пользователь U4, показанный в третьем местоположении, играет в видеоигру, отображаемую на дисплее 108. Пользователи U5, U6 и U7, показанные в четвертом местоположении, взаимодействуют с видеоигрой, отображаемой на дисплее 110.
В каждом из первого, второго, третьего и четвертого местоположений предусмотрено по меньшей мере одно вычислительное устройство для обработки вводимых данных от различных пользователей и отображения облачной видеоигры на их соответствующих дисплеях. Следует иметь в виду, что вычислительное устройство может быть встроено в дисплей или может быть самостоятельным устройством, таким как персональный компьютер, телевизионная приставка, игровая приставка или устройство любого другого типа, имеющее по меньшей мере один процессор и память для обработки и хранения данных. Вычислительное устройство может выполнять роль или образовывать клиента, как это было описано выше. Вычислительные устройства являются сетевыми и осуществляют взаимодействие по сети, такой как Интернет 102, с серверами облачной игры 104.
Серверы облачной игры 104 поддерживают выполнение различных видеоигр, в которые играют пользователи, время от времени определяя конкретное состояние видеоигры и отправляя видеоданные (включающие данные изображения и аудиоданные) на вычислительное устройство в определенном местоположении. Вычислительное устройство в данном местоположении обрабатывает данные, введенные пользователем(ями), играющим в видеоигру, и передает введенные данные на сервер облачной игры, который, в свою очередь, обрабатывает введенные данные, чтобы оказать влияние на состояние игры в видеоигре. Следует иметь в виду, что облачная игра облегчает мультиплеерные игры для игроков, находящихся в разных местах, предусматривая выполнение видеоигры на удаленном сервере, который доступен для всех игроков в сети. Таким образом, выполнение видеоигры не зависит от оборудования любого отдельного игрока или пропускной способности сети, хотя это и влияет на пользовательское восприятие игры для конкретного игрока.
Фиг.2А иллюстрирует систему облачной игры в соответствии с вариантом воплощения настоящего изобретения. Как показано, пользователь 200 управляет управляющим устройством 202 для обеспечения ввода данных в облачную видеоигру. Управляющее устройство 202 может включать любое из множества видов устройств ввода, таких как кнопочные устройства, джойстики, сенсорная панель, трекбол, и оборудование для обнаружения движения, такое как акселерометры, магнитометры и гироскопы. В одном варианте воплощения управляющее устройство 202 может содержать освещаемый объект, который можно отслеживать, чтобы определить местоположение управляющего устройства 202. Управляющее устройство 202 может поддерживать беспроводную связь с тонким игровым клиентом 204. Клиент 204 взаимодействует по сети 208 с сервисом облачной игры 210. Клиент 204 обрабатывает данные от управляющего устройства 202 для формирования данных ввода, которые передаются в видеоигру, выполнение которой обеспечивается сервисом облачной игры 210. Кроме того, клиент 204 получает видеоданные от сервиса облачной игры 210 для воспроизведения на дисплее 206. В одном из вариантов воплощения клиент 204 может обрабатывать полученные видеоданные таким образом, чтобы обеспечить видеопоток в формате, совместимом с дисплеем 206. В одном из вариантов воплощения клиент 204 может включать камеру для отслеживания управляющего устройства или объекта, расположенного на управляющем устройстве. Как уже отмечалось, объект может быть освещен для дополнительного облегчения его отслеживания на основе анализа зарегистрированных кадров изображения с камеры.
Сервис облачной игры 210 включает ресурсы для обеспечения условий, в которых может быть осуществлено выполнение видеоигры. Говоря упрощенно, ресурсы могут включать различные виды компьютерного серверного оборудования, включающего процессоры, устройства хранения данных и сетевое оборудование, которое может быть использовано для облегчения выполнения приложения видеоигры. В показанном варианте воплощения библиотека видеоигры 212 включает различные видеоигры. Каждый заголовок игры определяет исполняемый код, а также совместные данные и секцию библиотек, которые используются для создания экземпляра видеоигры. Главный компьютер 214 может представлять собой отдельное вычислительное устройство, которое определяет среду для создания экземпляров виртуальных машин 216. В другом варианте воплощения главный компьютер 214 может быть сам средой виртуализированного ресурса. Другими словами, главный компьютер 214 может работать на одном или более серверных вычислительных устройств, управляя распределением и использованием ресурсов, определенных серверными вычислительными устройствами, одновременно представляя единую среду, в которой могут быть созданы экземпляры виртуальных машин 216.
Каждая виртуальная машина 216 определяет ресурсную среду, которая может поддерживать операционную систему, на которой может выполняться приложение видеоигры 218. В одном из вариантов воплощения виртуальная машина может быть сконфигурирована с возможностью эмуляции ресурсной среды оборудования игровой приставки, с операционной системой, связанной с игровой приставкой, запущенной на виртуальной машине для поддержания управления видеоиграми, которые были разработаны для этой игровой приставки. В другом варианте воплощения операционная система может быть сконфигурирована с возможностью эмуляции собственной среды операционной системы игровой приставки, хотя базовая виртуальная машина может быть или может не быть сконфигурирована с возможностью эмуляции оборудования игровой приставки. В другом варианте воплощения приложение эмулятора работает поверх операционной системы виртуальной машины, эмулятор сконфигурирован с возможностью эмулировать среду собственной операционной системы игровой приставки таким образом, чтобы поддерживать видеоигры, разработанные для этой игровой приставки. Следует иметь в виду, что различные современные и устаревшие игровые приставки могут быть эмулированы в облачной игровой системе. Таким образом, пользователь может получить доступ к видеоиграм с различных игровых приставок посредством облачной игровой системы.
Когда пользователь 200 запрашивает для игры определенный заголовок видеоигры, заголовок видеоигры извлекается из библиотеки 212. Если совместимая виртуальная машина еще не создана или не доступна для использования, новая совместимая виртуальная машина создается на главном компьютере 214. Извлеченный заголовок видеоигры затем выполняется как приложение 218 на имеющейся или только что созданной виртуальной машине 216. В одном из вариантов воплощения это может повлечь определение соответствующей среды для видеоигры (например, какая игровая приставка или операционная система требуется для запуска игры) и назначение видеоигры соответствующей виртуальной машине для выполнения, например, имеющей приложение эмулятора, способное обрабатывать выполнение видеоигры. Выполнение видеоигры передается с помощью игрового клиента 204 для обеспечения интерактивного игрового восприятия для пользователя 200. В частности, осуществляя выполнение видеоигры, приложение 218 получает вводимые данные от клиента 204 через сеть 208. Приложение 218 обрабатывает введенные данные для обновления состояния игры в выполняемом приложении. По мере изменения состояния игры приложение 218 выводит видеоданные, которые отправляются на клиент 204 для отображения на дисплее 206. Кроме того, приложение 218 может также выводить на клиент 204 данные обратной связи, которые используются для обеспечения дополнительного механизма обратной связи для пользователя. В качестве примера, пользовательское управляющее устройство 202 может включать механизм ответной реакции на тактильное восприятие вибрации, который может быть активирован на основе данных обратной связи, выводимых из приложения видеоигры.
В одном из вариантов воплощения облачная игровая система сконфигурирована с возможностью определять тип клиентского устройства, связанного с пользователем, а также тип управляющего устройства, доступного для использования пользователем для предоставления возможности ввода данных в облачную видеоигру. Например, в одном варианте воплощения, когда пользователь осуществляет вход в систему облачной игры, ему может быть представлена возможность назначить тип клиентского устройства, с которым осуществляется доступ в облачную игровую систему. В одном из вариантов воплощения предоставляется ряд вариантов клиентского устройства, из которых пользователь может выбрать один, соответствующий его клиентскому устройству. Пользователю также может быть представлена возможность назначить тип управляющего устройства, которое он будет использовать для игры в видеоигру. В одном из вариантов воплощения пользователю может быть представлен ряд вариантов управляющих устройств, из которых пользователь может выбрать для назначения тип управляющего устройства, соответствующий его управляющему устройству. В других вариантах воплощения облачная игровая система может быть сконфигурирована с возможностью автоматического определения типа клиентского устройства и/или типа управляющего устройства.
Например, во время входа в систему клиентское устройство может посылать информацию на сервер облачной игры, идентифицируя себя, а также подключенное управляющее устройство (например, в ответ на запрос от сервера облачной игры). На основе этой информации сервер облачной игры может определить соответствующую конфигурацию вывода и конфигурацию параметра ввода видеоигры, чтобы обеспечить игровое восприятие, оптимизированное для клиентского устройства и управляющего устройства пользователя. В одном из вариантов воплощения таблица поиска используется для определения конфигурации видеоигры и конфигурации параметра ввода на основе обнаруженного клиентского устройства и обнаруженного управляющего устройства.
Следует понимать, что определенная видеоигра может быть разработана для конкретной среды и конкретного связанного управляющего устройства. Однако, когда такая игра становится доступной через облачную игровую систему, представленную здесь, пользователь может получить доступ к видеоигре с другим управляющим устройством. Например, игра может быть разработана для игровой приставки и связанного с ней управляющего устройства, в то время как пользователь может получить доступ к облачной версии игры с персонального компьютера с использованием клавиатуры и мыши. В таком случае конфигурация параметра ввода может определить сопоставление данных с вводов, которые могут быть сгенерированы доступным управляющим устройством пользователя (в данном случае, клавиатурой и мышью) с вводами, которые приемлемы для выполнения видеоигры.
В другом примере пользователь может получить доступ к облачной игровой системе через планшетное вычислительное устройство, смартфон с сенсорным экраном или другое устройство с сенсорным управлением экраном. В этом случае клиентское устройство и управляющее устройство объединены вместе в одном устройстве, с вводом данных, осуществляемым путем обнаружения сенсорных вводов/действий пользователя. Для такого устройства конфигурация параметра ввода может определять конкретный ввод с сенсорного экрана, соответствующий вводу данных игры для видеоигры. Например, кнопочные устройства, навигационная клавиша или другие виды устройств ввода могут отображаться или накладываться во время выполнения видеоигры для указания мест на сенсорном экране, где пользователь может коснуться с целью генерации вводимых данных игры. Действия, такие как скольжение, в определенных направлениях или определенные сенсорные движения, также могут быть обнаружены как ввод данных игры. В одном из вариантов воплощения пользователю может быть предоставлено обучение, указывающее, как произвести ввод данных для игрового процесса с помощью сенсорного экрана, например, до начала игрового процесса видео игры, с тем, чтобы дать пользователю приспособиться к органам управления на сенсорном экране.
В некоторых вариантах воплощения клиентское устройство служит в качестве точки подключения для управляющего устройства. То есть управляющее устройство взаимодействует через беспроводное или проводное соединение с клиентским устройством для передачи данных ввода от управляющего устройства на клиентское устройство. Клиентское устройство может, в свою очередь, обработать эти данные ввода, а затем передать данные ввода на сервер облачной игры через сеть (например, осуществляя доступ через локальное сетевое устройство, такое как маршрутизатор). Тем не менее, в других вариантах воплощения управляющее устройство может само по себе быть сетевым устройством с возможностью передавать данные ввода непосредственно по сети на сервер облачной игры без необходимости передавать эти данные ввода сначала через клиентское устройство. Например, управляющее устройство может подключаться к локальному сетевому устройству (например, к вышеупомянутому маршрутизатору) для отправки и получения данных от сервера облачной игры. Таким образом, в то время как для клиентского устройства может по-прежнему требоваться получать выходной видеосигнал от облачной видеоигры и отображать его на локальном дисплее, задержки ввода могут быть уменьшены при возможности отправки управляющим устройством данных ввода непосредственно по сети на сервер облачной игры, минуя клиентское устройство.
В одном из вариантов воплощения сетевой контроллер и клиентское устройство могут быть сконфигурированы с возможностью отправки определенных типов данных ввода непосредственно от управляющего устройства на сервер облачной игры, а других типов данных ввода через клиентское устройство. Например, данные ввода, обнаружение которых не зависит от наличия какого-либо дополнительного оборудования или обработки отдельно от самого управляющего устройства, могут быть отправлены непосредственно с управляющего устройства на сервер облачной игры по сети, минуя клиентское устройство. Такие данные ввода могут включать данные ввода кнопками, данные ввода джойстиком, данные ввода со встроенного детектора движения (например, акселерометра, магнитометра, гироскопа) и т.д. Однако данные ввода, для которых используется дополнительное оборудование или требуется обработка клиентским устройством, могут быть отправлены клиентским устройством на сервер облачной игры. Они могут включать захваченное из игровой среды видео или аудио, которые могут быть обработаны клиентским устройством перед отправкой на сервер облачной игры. Кроме того, данные ввода от оборудования обнаружения движения управляющего устройства могут быть обработаны клиентским устройством в сочетании с захваченным видео для обнаружения положения и движения управляющего устройства, которое впоследствии будет подключено посредством клиентского устройства к серверу облачной игры. Следует иметь в виду, что управляющее устройство в соответствии с различными вариантами воплощения также может получать данные (например, данные обратной связи) от клиентского устройства или непосредственно от сервера облачной игры.
Фиг.2В концептуально иллюстрирует накапливание видеоигр для различных поколений игровых приставок в соответствии с вариантами воплощения изобретения. В индустрии видеоигр видеоигры разрабатываются для конкретных видеоигровых приставок. Со временем библиотека видеоигр накапливает данные для определенной игровой приставки. Например, на представленном рисунке приставка первого поколения 220 имеет набор видеоигр 228, которые были разработаны для нее. Приставка второго поколения 222 связана с набором видеоигр 230, которые были разработаны для нее. Также показана приставка третьего поколения 224, имеющая набор видеоигр 232, которые были разработаны для нее. В других вариантах воплощения может иметься набор видеоигр 234, который был специально разработан как облачные игры для использования совместно с клиентом 226. Кроме того, другие виды игр, такие как интернет-игры, могут быть разработаны и накоплены для распределения по облачной игровой системе, как описано здесь. Следует иметь в виду, что видеоигры от игровых приставок разных поколений могут быть накоплены и объединены в библиотеке 212 облачной игры. Как показано, библиотека 212 включает библиотеку 236 приставки первого поколения, которая включает видеоигры, которые были разработаны для приставки 220 первого поколения. Аналогичным образом библиотека 212 также включает библиотеку 238 приставки второго поколения и библиотеку 240 приставки третьего поколения, которые содержат видеоигры, которые были разработаны для приставок второго и третьего поколения, соответственно. Игры, которые были разработаны для клиента 226 и других видов игр, таких как интернет-игры, также могут быть включены в библиотеку игр 212. Как видно, большое количество видеоигр для различных поколений видеоигровых приставок может быть накоплено и быть доступно через библиотеку облачной игры. Как было описано, каждая из этих игр может быть выполнена на виртуальной машине, которая имитирует среду операционной системы, связанную с данной игровой приставкой, для которой была разработана игра. Таким образом, пользователи, получающие доступ к облачной игровой системе, могут легко получить доступ и играть в игры со многих различных приставок, а также игры других видов, такие как интернет-игры и игры, которые были специально разработаны для использования с облачной игровой системой.
Фиг.3 иллюстрирует способ предоставления пользователю демонстрационного примера игры в соответствии с вариантом воплощения настоящего изобретения. Интерфейс 300 содержит фотографии или пиктограммы 302, 304, 306, 308, 310 и 312 различных видеоигр, которые доступны для демонстрации. Каждая пиктограмма может быть настроена для предоставления изображения игры, которую она представляет. В одном из вариантов воплощения, когда пользователь наводит курсор на данную пиктограмму, пиктограмма может активироваться и показать анимацию или видеоклип, который представляет видеоигру или иначе предоставляет дополнительную информацию для пользователя о содержании видеоигры. В показанном варианте воплощения пользователь навел курсор на пиктограмму 302, которая вследствие этого стала выделенной и отобразилась активная анимация, показывающая сцену из видеоигры. Когда пользователь выбирает пиктограмму, может быть показан предпросмотр видео в соответствии с действием 314 способа. Если пользователь продолжает выбирать игру в действии 316 способа, а затем в действии 318 способа, запускается демонстрационная программа игры. В действии 320 способа демонстрационная игра мгновенно становится доступной для игры пользователя. Следует иметь в виду, что, поскольку демонстрационная игра является облачной, она может быть доступна мгновенно из предварительно загруженного экземпляра демонстрационной игры в облачной системе.
Когда демонстрационная игра запущена, инициируется выполнение предварительно загруженного экземпляра демонстрационной игры. В действии 322 способа определяется, желает ли пользователь продолжить игровой процесс демонстрационной игры или сыграть в еще одну демонстрационную видеоигру, если таковая имеется. Если это так, то способ возвращается к действию 322 для продолжения выполнения демонстрационной игры или выполнения новой демонстрационной игры для видеоигры. Если нет, то в действии 324 способа пользователю предоставляется возможность покупки мини-версии видеоигры. Кроме того, в действии 326 способа пользователю может быть предоставлена возможность приобрести полную версию видеоигры. Если пользователь выбрал вариант покупки мини-версии или полной версии игры, то в действии 328 способа к учетной записи пользователя будет добавлена версия этой игры. Следует иметь в виду, что, поскольку игры доступны через облачную игровую систему, добавление игры к учетной записи пользователя может просто повлечь связывание прав доступа к конкретной версии игры с учетной записью пользователя. Кроме того, после покупки игра может быть доступна пользователю для игрового процесса практически мгновенно из облачной системы, в частности, в облачной системе предварительно может быть создан экземпляр игры.
Фиг.4А иллюстрирует иерархическую организацию различных частей видеоигры в соответствии с вариантом воплощения настоящего изобретения. В качестве примера, видеоигра может быть организована в ряд сегментов 400. В представленном варианте воплощения они могут включать сегмент установки, сегмент введения, сегменты различных уровней и сегмент концовки. Заданный уровень может быть дополнительно разделен на ряд сцен. Как показано, сегмент уровня 3 разбивается на ряд сцен 402. Когда пользователь играет данную сцену, может быть записана хронология игрового процесса этой сцены, включая запись видео игрового процесса пользователя, а также запись вводимых данных и игровых состояний выполняемого игрового приложения. В показанном варианте воплощения временная шкала 404 игрового процесса характеризует игровой процесс пользователей сцены 2 уровня 3 игры. В соответствии с вариантами воплощения изобретения пользователь может выбрать части из своего записанного игрового процесса, из которого будет создана мини-игра или вырезка из игры. Например, в показанном варианте воплощения временная шкала 404 игрового процесса имеет время начала Т0 и время окончания Tz. Мини-игра создается из выбранной части временной шкалы игрового процесса от времени Тх до времени Ту.
Фиг.4В иллюстрирует интерфейс для выбора части временной шкалы игрового процесса для создания мини-игры или вырезки из игры в соответствии с вариантом воплощения настоящего изобретения. В показанном варианте воплощения интерфейс 412 представлен на сенсорном экране 411 устройства 410. В одном из вариантов воплощения устройство 410 представляет собой планшетное вычислительное устройство. Интерфейс 412 включает временную шкалу 414 игрового процесса с возможностью выбора. В развернутом виде 430 временной шкалы 414 игрового процесса можно видеть, что в одном из вариантов воплощения временная шкала 414 игрового процесса представлена в виде кинопленки с регулируемыми маркерами 416 и 418. Маркер 416 обозначает начальную точку на выбираемой временной шкале 414 игрового процесса, в то время как маркер 418 обозначает конечную точку на выбираемой временной шкале игрового процесса. Кроме того, маркер 419 может быть расположен внутри этой части временной шкалы 414 игрового процесса, которая была обозначена начальным маркером 416 и конечным маркером 418. Для удобства использования и чтобы дать понять визуально пользователю, что часть его игрового процесса выбрана, может быть показан первый кадр 420, соответствующий точке на временной шкале игрового процесса, в которой расположен маркер 416. Начальный кадр 420 представляет собой изображение записанного видео игрового процесса, соответствующее времени, в котором позиционирован начальный маркер 416. Подобно этому показательный конечный кадр 424 может быть показан соответствующим точке на временной шкале игрового процесса, в которой позиционирован маркер 418. Аналогичным образом конечный кадр 424 представляет собой изображение записанного видео игрового процесса, соответствующее времени, в котором позиционирован конечный маркер 418. Кроме того, показательный кадр 422 может быть отображен соответствующим положению маркера 419 на временной шкале игрового процесса. Показательный кадр 422 может быть использован в качестве показательного изображения для мини-игры, которая создается на основе выбранной части временной шкалы игрового процесса. Следует понимать, что, хотя в показанном варианте воплощения предусмотрен и описан интерфейс сенсорного экрана, в других вариантах воплощения могут быть использованы различные другие виды ввода, чтобы выбрать начальную и конечную точки для указания части игрового процесса для создания мини-игры. Например, ввод данных может быть произведен с помощью игрового устройства управления, клавиатуры, действия ввода, голосового ввода и других типов устройств и механизмов ввода, с тем, чтобы осуществить выбор части игрового процесса наряду с выбором изображения показательного кадра из записанного видео игрового процесса.
В некоторых вариантах воплощения маркеры выбора могут не быть непрерывно настраиваемыми на временной шкале игрового процесса, но могут быть вместо этого настроены так, чтобы быть зафиксированными в предопределенных временных точках на временной шкале игрового процесса. Например, предопределенные временные точки могут быть определены так, чтобы соответствовать определенным событиям, происходящим на временной шкале игрового процесса. Определенные события данной временной шкалы игрового процесса, для которых будут назначены предопределенные временные точки, могут быть получены на основе анализа игрового процесса пользователей и будут зависеть от конкретной архитектуры игрового процесса видеоигры. В одном из вариантов воплощения предопределенные временные точки могут быть назначены на основе географического местоположения персонажа в виртуальном мире, определяемом видеоигрой. Например, предопределенные временные точки могут быть назначены для определенных моментов времени, в которых персонаж перемещается из одной географической местности в другую географическую местность, например, движение из одного места сцены в другое место сцены, движение из одного города в другой город, вход в здание, вход в комнату в здании, вход в транспортное средство, вход в среду другого вида или любой другой вид географического перехода как такового. В другом варианте воплощения предопределенные временные точки могут быть назначены на основе развития персонажа или объекта пользователя, который управляется в видеоигре. Например, предопределенные временные точки могут быть назначены, когда персонаж или объект, управляемый пользователем, выполняет задачу, приобретает навык, приобретает объект, проходит уровень или иным образом завершает часть видеоигры, или выполняет или достигает любой другой вид значительной активности в видеоигре.
Фиг.4С иллюстрирует интерфейс для выбора части временной шкалы игрового процесса для создания мини-игры в соответствии с вариантом воплощения настоящего изобретения. Временная шкала 414 игрового процесса графически иллюстрирует временную шкалу, на которой пользователь может установить начальную и конечную метки 416 и 418 таким образом, чтобы обозначить выбор игрового процесса, из которого можно создать мини-игру. Показан начальный кадр 410, соответствующий позиции начального маркера 416, а также конечный кадр 424, соответствующий позиции конечного маркера 418. Следует иметь в виду, что кадры могут быть идентифицированы из записанного видео игрового процесса пользователя. Представлен ряд предлагаемых кадров 440, 442, 444 и 446, из которого пользователь может выбрать один для использования в качестве показательного кадра для мини-игры. Предлагаемые для выбора кадры могут быть определены в соответствии с различными методами. Например, предлагаемые кадры могут быть представлены с дробными интервалами из выбранной части временной шкалы игрового процесса. Интервалы могут быть равными по величине, так что предлагаемые кадры равномерно разнесены вдоль временной шкалы игрового процесса, или интервалы могут быть неравными по величине, так что некоторые кадры более приближены друг к другу, чем другие, на временной шкале игрового процесса. В одном из вариантов воплощения более высокая плотность предлагаемых кадров образуется из предшествующих частей выбранной части временной шкалы игрового процесса по сравнению с более поздними частями выбранной части временной шкалы игрового процесса. В одном из вариантов воплощения более высокая плотность предлагаемых кадров образуется как из предшествующих, так и из более поздних областей выбранной части временной шкалы игрового процесса, тогда как более низкая плотность предлагаемых кадров образуется из центральных частей выбранной части временной шкалы игрового процесса.
После того как пользователь выбрал часть игрового процесса, из которой можно создать мини-игру, варианты воплощения настоящего изобретения предоставляют системы и способы для создания воспроизводимой мини-игры на основе выбранной части игрового процесса. В частности, мини-игра дает возможность другому пользователю сыграть, по существу, ту же часть видеоигры, которую сыграл первоначальный пользователь, и, возможно, в основном в той же обстановке и с теми же параметрами. В этом смысле, мини-игра является чем-то большим, чем просто воспроизведением видео игрового процесса первоначального пользователя (хотя воспроизведение видеоклипа игрового процесса первоначального пользователя может быть представлено в сочетании с мини-игрой), и является воспроизводимой частью самой видеоигры, которая была определена на основе выбора пользователем из его собственного игрового процесса. Второй пользователь может, таким образом, испытать, по существу, аналогичные игровые впечатления, что и первоначальный пользователь.
Фиг.5 иллюстрирует последовательность снимков экрана, демонстрирующих способ создания мини-игры из существующей облачной видеоигры в соответствии с вариантом воплощения настоящего изобретения. Снимок экрана 500 показывает ход видеоигры пользователя. В показанном варианте воплощения пользователь играет на уровне 3 видеоигры. На снимке экрана 502 пользователь завершил уровень 3 видеоигры. После завершения уровня пользователю предоставляется возможность создания вырезки из игры или мини-игры на основе игрового процесса пользователя на этом уровне. Когда пользователь делает выбор для создания вырезки из игры, на снимке экрана 504 пользователю предоставляется интерфейс для выбора начальной точки вырезки из игры из записанного игрового процесса пользователя.. Как было описано ранее, представление временной шкалы игрового процесса может быть отображено с регулируемым ползунком, который пользователь может перемещать в назначенную начальную точку для вырезки из игры. После того как пользователь определил начальную точку, на снимке экрана 506 пользователю предоставляется интерфейс, сконфигурированный с возможностью выбора конечной точки вырезки из игры. Опять же, регулируемый ползунок перемещается пользователем для обозначения в интерфейсе конечной точки на показательной временной шкале игрового процесса. После того как начальная и конечная точки временной шкалы игрового процесса пользователя будут обозначены, система создает вырезку из игры или мини-игру, как описано где-либо здесь. На снимке экрана 508 пользователю может быть представлена дополнительная возможность, такая как возможность поделиться вновь созданной вырезкой из игры с другими пользователями или иным способом сообщить другим пользователям о создании новой вырезки из игры, возможность создать другую вырезку из игры из той же временной шкалы игрового процесса, возможность продолжить игровой процесс текущей видеоигры, возможность просмотра существующих вырезок из игры пользователя и т.д. Если пользователь выбрал просмотр своих существующих вырезок из игры, то на снимке экрана 510 появляется интерфейс, отображающий ранее созданные вырезки из игры пользователя. В показанном варианте воплощения пользователь может выбрать одну из ранее созданных вырезок из игры, а также просмотреть информацию и статистику, связанную с этой вырезкой из игры, как показано на снимке экрана 512. Информация и статистика, связанные с данной вырезкой из игры, могут включать что-либо из следующего: заголовок вырезки из игры, видеоигру, из которой первоначально была создана вырезка из игры, дата создания вырезки из игры, количество раз, которое вырезка из игры была сыграна другими пользователями, процент завершения, указывающий на средний процент вырезок из игры, которые были доиграны пользователями, которые начинали играть в вырезке из игры, комментарии, оставленные другими пользователями, и т.д.
Хотя в описываемом варианте воплощения возможность создавать вырезку из игры предоставлена пользователю после завершения уровня видеоигры, следует понимать, что в других вариантах воплощения пользователь может создавать вырезку из игры в любое другое время во время или вне игрового процесса видеоигры, при условии, что существует записанный игровой процесс видеоигры, выборка из которого может быть определена пользователем для создания вырезки из игры. Например, в одном из вариантов воплощения может быть представлен интерфейс, который обеспечивает доступ к различным записанным игровым процессам из различных видеоигр, которые связаны с данным пользователем. Пользователь может выбрать игровой процесс конкретной видеоигры и создать вырезку из игры, выбрав часть записанного игрового процесса, из которого можно создать вырезку из игры в соответствии с вариантами воплощения, описанными здесь.
Фиг.6 иллюстрирует систему для генерации кода вырезки из игры в соответствии с вариантом воплощения настоящего изобретения. Термины вырезки из игры и мини-игры используются здесь взаимозаменяемо для определения небольшой и воспроизводимой части видеоигры, которая создается на основе выборки пользователя от существующего записанного игрового процесса. В показанном варианте воплощения игровой процесс пользователя 600 концептуально представляет пользователя, взаимодействующего с полной версией видеоигры. Основной код игры 602 выполняется для определения полной версии видеоигры, отображаемой пользователем. Во время игры в видеоигру генерируются различные виды выходных данных игрового процесса, включая видеоданные, данные состояния игры и данные, введенные пользователем. Они могут быть записаны таким образом, чтобы определить записанный игровой процесс пользователя. В показанном варианте воплощения поток изображения 604 концептуально представляет собой выходные видеоданные, производимые видеоигрой. Также показаны метаданные состояния игры 606 и данные пользовательского ввода 608. Данные состояния игры 606 включают в себя данные, определяющие игровое состояние выполняющейся видеоигры от момента к моменту во время игрового процесса. Данные состояния игры могут включать значения любых переменных, определяющих состояние выполнения видеоигры. Данные пользовательского ввода представляют собой данные, полученные путем захвата инициированных пользователем действий, возникающих в процессе интерактивного взаимодействия с видеоигрой, например, ими могут быть активация устройств ввода на управляющих устройствах, обнаружение сенсорных данных (например, датчиками движения), захваченные данные с аудиовхода и т.п.
Как было описано ранее, пользовательский интерфейс может графически отобразить записанный игровой процесс пользователя для упрощения выбора пользователем части игрового процесса пользователя, из которого создается вырезка из игры. В показанном варианте воплощения пользователь создал выборку 610 из записанного игрового процесса. Эта выборка записанного игрового процесса пользователя используется генератором вырезки из игры для создания кода вырезки из игры 622, который определяет ограниченную игру на основе выбранной части игрового процесса пользователя. Генератор вырезки из игры 612 включает анализатор состояния игры 614, который анализирует состояние игры записанной выборки 610. На основе анализа состояния игры записанной выборки процессор точек прерывания игры определяет соответствующие точки прерывания для определения начала и окончания вырезки из игры. Точки прерывания могут быть определены на основе географии, времени, задачи или достижения цели, границ сцены (физических или временных) или любого другого аспекта видеоигры, в соответствии с которым игровой процесс видеоигры может быть сегментирован для создания вырезки из игры. Краткое описание некоторых иллюстративных вариантов воплощения будет служить для выделения определенных возможностей для определения точек прерывания.
Например, некоторые видеоигры предусматривают управление персонажем, который можно перемещать из одной географической сцены или местности в другую сцену или местность. Выбранная часть игрового процесса пользователя может быть определена как создаваемая из игрового процесса в определенной сцене. В таком варианте воплощения границы конкретной сцены можно определить географической точкой прерывания для вырезки из игры, выбирая сцену, чтобы исключить другие сцены, что может повлечь исключение других смежных или соседних сцен, а также сцен, которые не являются смежными или соседними, или иных, менее связанных или не связанных с конкретной сценой. Следует иметь в виду, что записанная выборка игрового процесса 610 может предусматривать игровой процесс из нескольких сцен, в этом случае процессор точек прерывания игры 616 может быть сконфигурирован с возможностью определять точки прерывания, соответствующие границам нескольких сцен, которые используются для записанной выборки игрового процесса.
Следует отметить, что сцена может носить как географический, так и временной характер. То есть сцена может определять не только географический регион в виртуальном пространстве, ограниченном видеоигрой, но также может быть сконфигурирована с возможностью существования в течение определенного времени или в определенной хронологической точке в более широком контексте видеоигры. Такая сцена может иметь определенные задачи или цели, которые должны быть выполнены игроком. Таким образом, точки прерывания игры могут быть определены на основе хронологии или других временных аспектов, как это определено в видеоигре.
Кроме того, данная сцена, может иметь связанные объекты или функции, которые представлены как часть сцены во время игрового процесса. Эти объекты или функции могут быть проанализированы, чтобы определить дополнительные точки прерывания в соответствии с их включением. Например, объекты в сцене могут быть взяты из подмножества библиотеки ресурсов, и в этом случае подмножество библиотеки ресурсов может быть определено для вырезки из игры процессором точек прерывания игры 616 для исключения других объектов в библиотеке ресурсов, которые не используются в сцене(ах), связанных с записанной выборкой игрового процесса. Следует понимать, что объекты и функции могут быть динамическими элементами данной сцены со связанными механизмами определения их изменения в ответ на события, происходящие в видеоигре. Например, объект может иметь модуль моделирования повреждения, который определяет и настраивает внешний вид объекта, когда он повреждается (например, при ударе оружием). Или функция может быть транспортным средством, которое становится доступным во время сцены, при этом транспортное средство имеет связанную с ним логику, которая определяет его внешний вид во время игрового процесса, а также его функционирование и реагирование на действия пользователя. Такая логика или моделирование повреждения может дополнительно определить точки прерывания игры для создания вырезки из игры.
Различные аспекты видеоигры, которые определяют или иным образом используются для выбранной части видеоигры, могут стать основой для определения точки прерывания игры. Описанные здесь примеры приведены только в качестве примера, а не в качестве ограничения. Следует понимать, что в других вариантах воплощения другие аспекты видеоигры могут служить основой для определения точек прерывания для создания вырезки из игры.
В одном из вариантов воплощения видеоигра может быть организована в различные сцены, которые должны быть завершены линейно, так что более поздняя сцена не может произойти, пока предшествующая ей сцена не завершена. Каждая сцена может включать ряд задач или целей, некоторые из которых могут потребоваться для завершения сцены и некоторые из которых могут быть необязательными для завершения сцены. Задачи могут включать перемещение из исходного местоположения в предопределенное конечное место в сцене, выживание в течение заданного промежутка времени, уничтожение предопределенного количества врагов, получение определенного количества очков, победу над конкретным врагом или любую другую деятельность, которая может определить задачу в игре. Сцена может иметь различные предопределенные точки завершения, то есть точки, где пользователь, достигнув точки завершения, может потом вернуться в эту точку, если пользователь по какой-либо причине не может продолжить игровой процесс (например, пользователь выходит из игры, игровой персонаж пользователя погибает или заканчиваются его жизни или здоровье, разбивается транспортное средство пользователя и т.д.). В предопределенных точках завершения видеоигра может быть настроена для автоматического сохранения достижений пользователя в игре или предоставления возможности для пользователя сохранить его достижения.
В одном из вариантов воплощения процессор точек прерывания игры 616 сконфигурирован с возможностью определения точек прерывания игры в предопределенных точках завершения. В одном из вариантов воплощения это достигается путем нахождения точек завершения, ближайших к выбранным начальной и конечной точкам записанной выборки игрового процесса пользователя, и использования этих ближайших точек завершения для определения точек прерывания игры для вырезки из игры. В другом варианте воплощения ближайшая точка завершения, появляющаяся перед выбранной начальной точкой записанной выборки игрового процесса, используется для определения начальной точки прерывания, в то время как ближайшая точка завершения, появляющаяся после выбранной конечной точки записанной выборки игрового процесса, используется для определения конечной точки прерывания для создания вырезки из игры. В еще одном варианте воплощения, если точка завершения лежит в пределах предопределенного радиуса (например, до или после) начальной или конечной точек записанной выборки игрового процесса пользователя, то эта точка завершения используется для определения соответствующей начальной или конечной точки прерывания игры для вырезки из игры. При этом если нет точки завершения в пределах предопределенного радиуса, точка прерывания игры определяется так, чтобы более точно соответствовать выбранной начальной или конечной точке пользователя для записанной выборки. В других вариантах воплощения предопределенный радиус для начальной и конечной точек может отличаться для определения того, следует ли использовать существующую точку завершения для определения точки прерывания игры.
Как уже обсуждалось, процессор точки прерывания игры 616 определяет соответствующие точки прерывания, применимые к различным аспектам видеоигры на основе анализа записанной выборки игрового процесса пользователей. Точки прерывания, определенные с помощью процессора 616, служат для определения ограниченных пределов вырезки из игры, которые будут созданы на основе записанной выборки игрового процесса пользователей. В одном из вариантов воплощения процессор перекрытия 617 предназначен для создания перекрытий, которые могут способствовать улучшению впечатления пользователя при проигрывании вырезки из игры, генерируемой генератором вырезки из игры 612. Например, в одном варианте воплощения процессор перекрытия 617 определяет предыгровые данные вырезки, которые определяют видео или игровой процесс, или дополнительную информацию, которая может быть предоставлена в качестве введения в вырезку из игры перед фактическим игровым процессом вырезки из игры. Одним из примеров предыгровых данных вырезки является вводное видео, которое может предоставить контекст для пользователя, который инициирует игровой процесс сделанной вырезки. В другом варианте воплощения предыгровые данные вырезки могут определять вводный игровой процесс для вырезки из игры, который может предоставить пользователю возможность узнать о навыках, которые могут быть полезны или необходимы для прохождения игры в этой вырезке из игры. В другом варианте воплощения предыгровые данные вырезки могут определять последовательность из одного или более информационных экранов или изображений, которые предоставляют пользователю информацию о вырезке из игры. Такая информация может включать конфигурацию управляющего устройства, дополнительную сюжетную информацию, задачи и цели, карты или любой другой тип информации, относящейся к вырезке из игры, которая может быть полезна для пользователя или иным образом улучшить впечатление пользователей от прохождения игры в вырезке из игры.
Процессор перекрытия 617 также может быть сконфигурирован с возможностью определения послеигровых данных вырезки. В некоторых вариантах воплощения послеигровые данные вырезки могут определять видео или изображения, которые будут отображены после завершения игрового процесса в вырезке из игры. Например, поздравительное видео может быть показано после того, как пользователь завершает игру в вырезке. Такое видео может быть индивидуализировано на основе игрового процесса пользователя вырезки из игры, например, может быть отображена информация или изображения, которые основаны на игровом процессе пользователя. В одном из вариантов воплощения послеигровые данные вырезки могут определять механизм воспроизведения записанных частей игрового процесса пользователя вырезки из игры после его завершения. В другом варианте воплощения послеигровые данные вырезки могут быть настроены для отображения статистики об игровом процессе пользователей вырезки из игры и могут отображать сравнения игрового процесса пользователей и такового других пользователей или первоначального создателя вырезки из игры. В еще других вариантах воплощения послеигровые данные вырезки могут определить дополнительные интерактивные элементы для представления их пользователю после завершения вырезки из игры. Они могут включать возможности покупки части или полной версии видеоигры, на которой основывается вырезка из игры, перенаправить опции к дополнительным источникам информации, относящимся к видеоигре, и т.д.
В некоторых вариантах воплощения процессор перекрытия 617 может быть сконфигурирован с возможностью определения элементов, которые накладываются друг на друга в вырезке из игры. Они могут включать элементы, которые могут быть настроены пользователем, играющим в вырезку из игры, например, настройка персонажей, объектов, свойств и других видов опций настройки. В некоторых вариантах воплощения процессор перекрытия 617 может быть сконфигурирован с возможностью определения упрощенных элементов для вырезки из игры так, чтобы уменьшить сложность кода вырезки из игры и количество ресурсов, необходимых для выполнения вырезки из игры. В качестве примера, многие видеоигры включают объекты с искусственным интеллектом (ИИ, англ. AI), такие как персонажи, транспортные средства, противники и т.д. Эти объекты с искусственным интеллектом могут в полной версии видеоигры управляться моделями искусственного интеллекта, которые определяют реакцию и действия объектов с искусственным интеллектом на основе событий, происходящих в видеоигре. Однако в контексте вырезки из игры, которая имеет ограниченный объем, может быть приемлемым просто определить действие объекта с искусственным интеллектом через жестко заданное определение или упрощенные экстраполяции, а не полным моделированием действий объекта с искусственным интеллектом, как могло бы быть в полной версии видеоигры.
Например, если в записанной выборке игрового процесса полной версии видеоигры данный персонаж с искусственным интеллектом двигается определенным образом в соответствии с его моделью искусственного интеллекта, что вряд ли изменится в вырезке из игры, то это может быть более эффективным для определения приближения движения персонажа с искусственным интеллектом для данной вырезки из игры. Такое приближение не потребует наличия полной модели искусственного интеллекта, которая будет включена в качестве части кода вырезки из игры, при этом предоставляя пользователю возможность играть в вырезке из игры, по существу, с аналогичным впечатлением в отношении этого персонажа с искусственным интеллектом оригинального игрового процесса пользователя, из которого была создана вырезка из игры. Экономия ресурсов, реализованная через приближение действий объектов с искусственным интеллектом, может быть еще более значительной, когда несколько объектов с искусственным интеллектом присутствуют и взаимодействуют в записанной выборке игрового процесса пользователя. Для каждого из объектов с искусственным интеллектом могут иметься модели искусственного интеллекта, которые зависят от выхода других объектов с искусственным интеллектом. Однако, когда игровой процесс записан, действия каждого из этих объектов с искусственным интеллектом известны и поэтому могут быть воспроизведены в вырезке из игры применением упрощенных механизмов, таких как прямое кодирование их управляющих величин и приближение их действий.
Согласно фиг.6 процессор установки состояния игры 618 предназначен для определения начального состояния вырезки из игры. На основе работы анализатора состояния игры 614, процессора точек прерывания игры 616 и процессора установки состояния игры 618 программа сборки кода 620 собирает различные части кода для определения кода вырезки из игры 622. При выполнении кода вырезки из игры 622 пользователь игрового процесса 624 осуществляет ввод для определения состояния выполнения кода вырезки из игры, который производит выходные данные игрового процесса, включающие видеоданные и данные обратной связи для отображения вырезки из игры пользователю. Видеоданные могут включать предыгровое накладываемое видео вырезки 622, видео вырезки из игры 624, которое представляет собой видео, полученное в ходе игрового процесса вырезки из игры, и послеигровое накладываемое видео вырезки 626.
Следует понимать, что в одном из вариантов воплощения код вырезки из игры 622 является полностью независимым, включая все части кода, которые необходимы для выполнения вырезки из игры. Однако в других вариантах воплощения код вырезки из игры 622 может включать ссылки или указатели на имеющиеся части кода в основном коде игры полной версии видеоигры. Кроме того, код вырезки из игры 622 может включать ссылку или использовать существующие ресурсы из библиотек ресурсов основного игрового кода полной версии видеоигры. Однако в других вариантах воплощения для кода вырезки из игры могут быть созданы новые библиотеки ресурсов.
Фиг.7А иллюстрирует модификацию виртуального пространства для целей создания вырезки из игры видеоигры в соответствии с вариантом воплощения настоящего изобретения. Карта 700 представляет собой сцену или географическую часть видеоигры. Карта, как показано, является двумерным изображением, которое может отражать трехмерное виртуальное пространство, которое перемещается и подвергается воздействию во время реального игрового процесса видеоигры. Как показано, карта 700 иллюстрирует область 702 и несколько дорожек 704, 706, 708 и 710. В записанном игровом процессе видеоигры персонаж пользователя 712 перемещается из области 702 по дорожке 710. На основе этого записанного движения и другого анализа игрового процесса видеоигры может быть определено, что дополнительные дорожки 704, 706 и 708 не являются необходимыми для создания вырезки из игры. Дорожки могут предоставлять неверный выбор по сравнению с дорожкой 710 или могут привести в места, которые не имеют отношения к вырезке из игры, или могут приуменьшить способность игрока вырезки из игры следовать по дорожке и впечатление аналогичного игрового процесса, как у первоначального пользователя. Кроме того, если области, к которым приводят дорожки 704, 706 и 708, не будут поддерживаться в вырезке из игры, то включение таких дорожек может привести к путанице среди игроков или по меньшей мере ухудшить впечатление пользователя. Таким образом, в модифицированной карте 720 дорожки 704, 706 и 708 сделаны недоступными для игрового процесса в вырезке из игры, тогда как дорожка 710, а также область 702 остались неизменными. Таким образом, когда пользователь играет в вырезке из игры, которая включает топографию, определенную картой 720, он будет видеть виртуальное пространство, в котором дорожки 704, 706 и 708 не доступны для прохода. Пользователь, вероятнее всего, пройдет по дорожке 710, как это сделал первоначальный пользователь, таким образом, получая аналогичный игровой процесс.
Следует иметь в виду, что часть виртуального пространства, определенного для вырезки из игры или мини-игры, может быть обозначена границами, которые определяются на основе записанного игрового процесса пользователя. Границы будут обозначать подобласть большего виртуального пространства и будут включать подмножество функций, которые доступны в большем виртуальном пространстве. В некоторых вариантах воплощения границы виртуального пространства могут быть определены путем определения местоположений в виртуальном пространстве, определяемом игровым процессом пользователя, а затем путем установления предопределенных границ, связанных с виртуальным пространством, которое расположено ближе всего к этим местам и расположено таким образом, чтобы охватить их. Например, игровой процесс пользователя может определить дорожку, пройденную персонажем пользователя в видеоигре. Эта дорожка может быть проанализирована, и, в зависимости от местоположения дорожки в виртуальном пространстве, может быть выбран набор предопределенных границ таким образом, чтобы обозначить область, охватывающую дорожку. В некоторых вариантах воплощения предопределенные границы могут быть определены специфическими особенностями, которые по своей сути определяют части виртуального пространства, например, двери, окна, стены, комнаты, коридоры, заборы, дороги, перекрестки и т.д.
Фиг.7В иллюстрирует модификацию графа сцены в целях создания вырезки из игры в соответствии с вариантами воплощения изобретения. Граф сцены 730 концептуально иллюстрирует организацию различных сцен от А до G видеоигры. Следует иметь в виду, что сцены, описанные здесь, могут быть географическими и/или носить временный характер и каждая может представлять собой воспроизводимую часть видеоигры, такую как этап, уровень, сегмент, местоположение или любую другую организационную единицу видеоигры, согласно с которой игрок может продвигаться от одной сцены к другой сцене. В графе сцены 730 показаны различные узлы, изображающие сцены A-G. Как показано, игрок может переходить от сцены А к сцене В, и от сцены В либо к сцене D, либо к сцене Е. Игрок также может переходить от сцены А к сцене С, и от сцены С к любой из сцен F или G. Граф сцены 730 иллюстрирует организацию сцены полной версии видеоигры. Однако для создания вырезки из игры не все из доступных сцен могут потребоваться в вырезке из игры. Таким образом, в качестве примера, граф сцены 732 иллюстрирует организацию сцен для вырезки из игры. Как показано, граф сцены 732 включает сцены А, В, С и F, без остальных сцен, которые были включены в граф сцены 730 полной версии видеоигры. Таким образом, пользователь может переходить от сцены А к любой из сцен В или С, и от сцены С к сцене F. Однако другие сцены из графа сцены 730 полной версии видеоигры недоступны для игрового процесса в вырезке из игры. Как было описано ранее, системы в соответствии с вариантами воплощения изобретения могут быть сконфигурированы с возможностью ограничения включения сцен при создании вырезки из игры. Таким образом, вырезка из игры не включает сцены, которые не требуются для ограниченного контекста ее игрового процесса и целевого назначения.
Фиг.8 иллюстрирует способ для создания вырезки из игры в соответствии с вариантом воплощения настоящего изобретения. В действии 800 способа записывается игровой процесс видеоигры пользователей, включая запись видео игрового процесса пользователей и данные видеоигры, такие как вводимые данные и данные состояния игры данной видеоигры. В действии 802 способа представлен пользовательский интерфейс для выбора записанного игрового процесса для создания вырезки из игры. Интерфейс определяет механизмы получения данных, вводимых пользователем, чтобы определить начальную и конечную точки в записанном игровом процессе. Например, может быть предоставлен интерфейс для просмотра записанного видео игрового процесса, чтобы пользователь мог определить начальную и конечную точки в видео игрового процесса на основе перемещения по или воспроизведения видео игрового процесса. В действии 804 способа принимается установленная пользователем выборка из видео игрового процесса. В действии 806 способа на основании принятой установленной пользователем выборки из видео игрового процесса устанавливаются точки прерывания видеоигры. В одном из вариантов воплощения существуют предопределенные точки прерывания видеоигры. На основе установленной пользователем выборки из видео игрового процесса точки прерывания игры, которые находятся ближе всего к начальной и конечной точкам из установленной пользователем выборки, могут быть выбраны в качестве точек прерывания игры для создаваемой вырезки из игры. В действии 808 способа код игры для выборки вырезки определяется как определяемый определенными точками прерывания. В действии 810 способа определяется состояние настройки игры для выборки вырезки. В одном из вариантов воплощения состояние настройки игры основано на состоянии игры, которое имеет место во время записи игрового процесса пользователя. В действии 812 способа генерируется код вырезки из игры, а в действии 814 способа код вырезки из игры сохраняется в библиотеке вырезки из игры и привязывается к учетной записи пользователя.
В одном из вариантов воплощения способ может включать действие 816 способа, в котором предлагаемые видеовыборки вырезки из игры создаются на основе записанного видео игрового процесса и данных пользователя. Предлагаемые выборки игрового процесса пользователей могут быть определены на основе анализа записанного игрового процесса пользователя. Например, части игрового процесса, где определен высокий уровень активности (например, уровень активности, превышающий заданный порог), могут быть предложены в качестве возможных видеовыборок вырезки из игры. В действии 818 способа вышеупомянутый интерфейс пользователя для выбора вырезки из игры может предоставлять предлагаемые видеовыборки вырезки из игры пользователю. В одном из вариантов воплощения показательный снимок экрана каждой предлагаемой видеовыборки вырезки из игры может быть предоставлен пользователю. В действии 820 способа будет получен результат выбора пользователем одной из предложенных видеовыборок вырезки из игры. На основе выбора пользователя может быть создан код вырезки из игры и сохранен, как было описано ранее.
Фиг.9А иллюстрирует интерфейс для просмотра вырезок из игры, связанных с различными видеоиграми, в соответствии с вариантом воплощения настоящего изобретения. В показанном варианте воплощения интерфейс организован в последовательность вкладок, включающих вкладки 900, 902 и 904, которые при их выборе предоставляют доступ к различным страницам, соответствующим различным видеоиграм. В показанном варианте воплощения в данный момент выбрана вкладка 900, так что представленная страница отображает информацию о вырезках из игры, которые были созданы для конкретной видеоигры Т1. В списке вырезок из игры 904 перечислены различные вырезки из игры, которые были созданы из видеоигры Т1. В одном варианте воплощения список вырезок из игры 904 также идентифицирует пользователя, который создал вырезку из игры (например, отображая имя пользователя, который создал вырезку из игры). В одном варианте воплощения список вырезок из игры 904 может быть просмотрен или может существовать возможность перемещаться по нему таким образом, чтобы выделить некоторые из вырезок из игры, перечисленные в списке вырезок из игры 904. В показанном варианте воплощения выделена вырезка из игры А, созданная пользователем А, для которой выводится подробная информация 906, относящаяся к вырезке из игры А. Подробная информация 906 может включать различные виды информации, связанной с вырезкой из игры, того уровня или стадии, на которой была создана вырезка из игры, в подробной информации игры отображается более конкретная информация о местоположении, из которого была создана вырезка из игры, комментарии пользователя А, который создал вырезку из игры, количество чужих комментариев, информация о том, сколько раз была сыграна вырезка из игры, или любой другой вид информации о вырезке из игры, которая может быть предоставлена, когда выделен пункт в списке вырезок из игры.
Фиг.9В иллюстрирует информационную страницу вырезки из игры в соответствии с вариантом воплощения настоящего изобретения. Информационная страница вырезки из игры выводится для вырезки из игры А, обсуждаемой со ссылкой на фиг.9А, и может быть отображена, когда пользователь выбирает список вырезок из игры А, как показано на фиг.9А. Как показано на фиг.9В, информационная страница вырезки из игры предоставляет различные виды информации, связанной с вырезкой из игры. В дополнение к библиографической информации о вырезке из игры (например, заголовок, имя пользователя, создавшего вырезку из игры, дата создания и т.д.) может отображаться видео 910 вырезки из игры. В одном из вариантов воплощения видео 910 является записанным видео игрового процесса исходного пользователя, создавшего вырезку из игры. В другом варианте воплощения видео 910 может быть записанным видео игрового процесса других пользователей, например, пользователя, который заработал больше всего очков в вырезке из игры, или пользователя, который последним играл в эту вырезку из игры. В одном из вариантов воплощения видео 910 может представлять собой потоковое видео пользователя, который в настоящее время играет в вырезку из игры. В других вариантах воплощения вместо видео может быть отображено показательное изображение из вырезки из игры.
Информационная страница вырезки из игры может дополнительно включать выбираемую кнопку 912 для инициирования игрового процесса вырезки из игры. Информационная страница вырезки из игры может также включать раздел подробной информации 914, который может содержать различные детали и статистическую информацию о вырезке из игры, такую как количество игр, средний процент завершения и т.д. Информационная страница вырезки из игры может также включать раздел комментариев 916, отображающий комментарии, оставленные пользователями. Кнопка сортировки 918 может присутствовать для выбора различных опций сортировки комментариев (например, в хронологическом порядке, в обратном хронологическом порядке, по популярности, по рейтингу, по отношению к текущему пользователю (например, комментарии друзей пользователя в социальном графе являются приоритетными) и т.д.).
Фиг.10 иллюстрирует вид информации учетной записи пользователя, включающий отображение друзей в режиме реального времени в облаке игровой социальной сети в соответствии с вариантом воплощения изобретения. Раздел библиотеки 1002 отображает различные видеоигры в библиотеке пользователя. Это могут быть видеоигры, которые пользователь приобрел или получил иным способом. Отображение видеоигр может включать отображение показательной графики в дополнение к информации заголовка. Следует иметь в виду, что игры могут представлять собой полные версии видеоигр, но также могут быть мини-версиями ограниченных версий, каждая из которых может быть частью полной версии видеоигр или быть ограниченной в ином качестве по сравнению с полной версией видеоигр. В списке друзей 1004 перечисляются друзья текущего пользователя в социальной сети, связанной с облачной игровой системой (т.е. другие пользователи в социальном графе текущего пользователя). Социальная сеть может быть социальной сетью, которая является специфической для облачной игровой системы, или может быть (третья сторона) социальной сетью, которая существует отдельно от облачной игровой системы, с которой облачная игровая система взаимодействует для получения информации о социальном графе пользователя. Список друзей 1004 может включать дополнительную информацию о друзьях пользователя, например, изображения игр, которые принадлежат каждому из друзей, идентификация сетевого статуса друга (например, онлайн, оффлайн, неактивен и т.д.), последнее имя пользователя друга и продолжительность его игры, последняя игра, сыгранная другом, и т.д.
В одном из вариантов воплощения раздел действующих активных пользователей 1006 отображает текущий вид игрового процесса друзей, которые в настоящее время находятся в режиме онлайн и могут играть в видеоигру. В одном из вариантов воплощения каждый пользователь имеет опцию для определения, следует ли делать их текущий игровой процесс доступным для просмотра в реальном времени другими пользователями или не следует. В таком варианте воплощения просмотр в реальном времени отображается только для тех пользователей, которые выбрали опцию, разрешающую сделать видимым для других пользователей их текущий игровой процесс. В показанном варианте воплощения раздел действующих активных пользователей 1006 включает просмотр в режиме реального времени 1008 текущего игрового процесса друга A, а также просмотр в режиме реального времени 1010 текущего игрового процесса друга B. В одном из вариантов воплощения текущий пользователь может перемещаться по списку друзей или просматривать друзей в списке друзей 1004 и/или просматривать вид в режиме реального времени, который доступен в разделе действующих активных пользователей 1006. В одном из вариантов воплощения просмотр в реальном времени может быть выделен, когда текущий пользователь переходит на него, и может быть отображен способом, отличным от способа отображения других просмотров в реальном времени. Например, просмотр в реальном времени может отображаться по умолчанию в ненасыщенной цветовой гамме, но, будучи выбранным или выделенным, отображаться в полностью насыщенной цветовой гамме. Просмотр в реальном времени также может отображаться в более низком разрешении, частоте кадров или размере по умолчанию, но при выборе отображаться с более высоким разрешением, частотой кадров или размером. Таким образом, полоса окна может быть размещена для конкретного просмотра в реальном времени на основе выбора пользователя, чтобы представить просмотр в реальном времени, который пользователь желает просмотреть с большей четкостью изображения, чем другие просмотры в реальном времени, которые могут быть одновременно активны. Следует иметь в виду, что просмотр в реальном времени может отображать не только конкретный игровой процесс видеоигры, но и другое действие друга в облачной игровой системе, например, его перемещение по меню или другие виды действий, связанных с его облачной игровой сессией.
В одном из вариантов воплощения просмотр в реальном времени доступен только для тех пользователей, которые в настоящее время активно участвуют в игровом процессе видеоигры. Другими словами, для данного пользователя не будет отображаться просмотр в реальном времени, если этот пользователь находится в оффлайн-режиме или в онлайн, но активно не участвует в игровом процессе видеоигры. Таким образом, если пользователь выполняет другие, не игровые, действия в облачной игровой системе (например, осуществляет навигацию в графическом интерфейсе облачной игровой системы при входе в систему), такие действия не доступны для просмотра в реальном времени другим пользователям. В другом варианте воплощения просмотр в реальном времени может включать все действия пользователя, осуществившего вход в облачную игровую систему, включая как игровой процесс пользователя, так и другие неигровые действия.
В одном из вариантов воплощения просмотр в реальном времени данного пользователя может быть отфильтрован, чтобы не раскрывать его потенциально важную или личную информацию для просмотра другими пользователями. Например, облачная игровая система может поддерживать функцию чата. Поскольку некоторые пользователи могут пожелать, чтобы их чаты оставались скрытыми, может быть предоставлена опция скрытия журнала чата при отображении просмотра в реальном времени. Следует иметь в виду, что функция чата может быть осуществлена как во время игровой активности, так и в неигровое время, и может быть отфильтрована из просмотра в реальном времени исходя из одного или обоих из этих обстоятельств. В другом варианте воплощения аспекты видеоигры могут быть отфильтрованы из просмотра в реальном времени. Например, пользователь может пожелать сохранить в тайне установленные пользовательские настройки, поскольку они могут дать преимущество этому пользователю во время игрового процесса. Таким образом, может быть предусмотрена опция для действий, связанных с настройками, которые не должны отображаться в составе видеопотока (например, когда пользователь переходит в интерфейс настроек видеоигры). В другом варианте воплощения просмотр в реальном времени может быть настроен так, чтобы предотвратить просмотр личной информации (например, запрещая просмотр, когда пользователь обращается к странице персональной информации, заходит на страницу платежной информации, вводит пароль и т.д.).
В одном из вариантов воплощения интерфейс предоставляет опцию для первичного пользователя по отправке запроса о присоединении к игровой сессии вторичного пользователя, который в настоящее время находится онлайн. Например, первичный пользователь может просматривать в реальном времени видеопоток игрового процесса вторичного пользователя и пожелать присоединиться к игровому процессу вторичного пользователя. В одном варианте воплощения при активации опции отсылается запрос вторичному пользователю, уведомляющий вторичного пользователя о том, что первичный пользователь желает присоединиться к его сессии. Если вторичный пользователь принимает запрос, тогда инициируется многопользовательский режим видеоигры, облегчая мультиплеерный игровой процесс с участием первого и второго пользователей. В другом варианте воплощения два или более вторичных пользователей могут уже быть участниками мультиплеерного игрового процесса. В таком варианте воплощения первичный пользователь может послать запрос о присоединении к мультиплеерному игровому процессу. После принятия запроса одним из вторичных пользователей (например, назначенным главным компьютером сессии игрового процесса) первичный пользователь может присоединиться к мультиплеерной сессии видеоигры. Следует иметь в виду, что вышеупомянутый интерфейс, отображающий видеопоток игрового процесса в реальном времени вторичных пользователей, облегчает первичному пользователю присоединение к игровому процессу вторичных пользователей, когда он может видеть их игровой процесс.
В одном из вариантов воплощения возможность отправить запрос на присоединение к игровому процессу вторичного пользователя основывается на определении статуса владения видеоигрой первичным пользователем. Если первичный пользователь не является владельцем видеоигры, то ему не будет предоставлена опция, в то время как, если первичный пользователь владеет той же видеоигрой, что и вторичный пользователь, опция отправки запроса на присоединение к игровому процессу вторичного пользователя становится доступной как часть интерфейса. В одном варианте воплощения, если определяется, что первичный пользователь не является владельцем видеоигры, первичный пользователь все еще может присоединиться к игровому процессу вторичного пользователя в мультиплеерном режиме, но с ограниченными возможностями, например, с ограничением продолжительности игрового процесса, доступных сцен/уровней/стадий и т.д., параметров настройки, умений, навыков, оружия, персонажей, транспортных средств или любых других аспектов видеоигры, которые могут быть ограничены. В одном из вариантов воплощения после игрового процесса в ограниченной версии видеоигры первичному пользователю предоставляется возможность приобрести видеоигру в полном объеме. В другом варианте воплощения первичному пользователю предоставляется возможность приобрести дополнительную часть видеоигры.
Согласно фиг.10 отображаемая информация может также включать информацию об истории игры 1012 друзей пользователя. Информация об истории игры 1012 может предоставлять информацию об истории игрового процесса данного друга, например, последние сыгранные игры, продолжительность сессий игрового процесса, статистические данные, касающиеся игрового процесса, и т.д.
Следует иметь в виду, что многие способы и конфигурации представления облачного игрового интерфейса возможны в соответствии с различными вариантами воплощения изобретения. В одном таком варианте воплощения предусматривается способ отображения текущего состояния игры пользователей облачной игровой системы, включающий следующие действия способа: представление облачного игрового интерфейса первичного пользователя; определение одного или более вторичных пользователей, которые являются друзьями первичного пользователя; определение текущего статуса каждого из вторичных пользователей, текущий статус определяется как онлайн или оффлайн; для по меньшей мере одного находящегося онлайн вторичного пользователя, предоставление видеопотока в реальном времени текущей игровой сессии находящегося онлайн вторичного пользователя в облачном игровом интерфейсе первичного пользователя, видеопоток в реальном времени включает предоставление опции для первичного пользователя, касающейся присоединения к текущей игровой сессии находящегося онлайн вторичного пользователя; в ответ на получение запроса об активации опции для первичного пользователя о присоединении к текущей игровой сессии находящегося онлайн вторичного пользователя, инициирование мультиплеерного режима текущей игровой сессии находящегося онлайн вторичного пользователя, мультиплеерный режим обеспечивает игровой процесс первичного пользователя в текущей игровой сессии находящегося онлайн вторичного пользователя; при этом инициирование мультиплеерного режима включает определение статуса владения первичным пользователем видеоигрой, определяющей текущую игровую сессию находящегося онлайн вторичного пользователя; при этом, если первичный пользователь определен как владелец видеоигры, мультиплеерный режим предусматривает игровой процесс полной версии видеоигры; при этом, если первичный пользователь определен как не владеющий видеоигрой, мультиплеерный режим предусматривает игровой процесс ограниченной версии видеоигры.
В одном из вариантов воплощения ограниченная версия видеоигры определяет сокращение, по сравнению с полной версией видеоигры, в одном или более из доступных уровней, доступных сцен, доступных функций, ограничения по времени, уменьшения виртуального пространства, продолжительности кампании, количества жизней или количества переигровок.
В одном варианте воплощения способ дополнительно включает действие способа представления, если первичный пользователь не владеет видеоигрой, опции приобретения первичным пользователем по меньшей мере части видеоигры.
В одном варианте воплощения видеопоток в реальном времени находящегося онлайн вторичного пользователя представляется в первом разрешении; а выбор этого видеопотока в реальном времени вызывает представление видеопотока в реальном времени находящегося онлайн вторичного пользователя во втором разрешении, более высоком, чем первое разрешение.
В одном варианте воплощения видеопоток в реальном времени находящегося онлайн вторичного пользователя представляется в режиме ненасыщенной цветовой гаммы, а выбор этого видеопотока в реальном времени вызывает представление видеопотока в реальном времени находящегося онлайн вторичного пользователя в насыщенной цветовой гамме.
В одном из вариантов воплощения представление облачного игрового интерфейса включает представление библиотеки видеоигр, связанных с каждым из вторичных пользователей.
В одном из вариантов воплощения определение одного или более вторичных пользователей включает осуществление доступа к социальному графу, связанному с первичным пользователем. В одном варианте воплощения осуществление доступа к социальному графу включает осуществление доступа к интерфейсу API социальной сети.
В одном из вариантов воплощения представление облачного игрового интерфейса первичного пользователя включает предоставление списка всех вторичных пользователей в порядке приоритета, этот порядок приоритета основывается на одном или более из текущего статуса, новизны входа или общего владения игрой с первичным пользователем.
Фиг.11 иллюстрирует способ представления видеопотоков игрового процесса друзей в реальном времени текущего пользователя в соответствии с вариантом воплощения настоящего изобретения. В действии 1100 способа текущий пользователь входит в систему облачной игровой системы. В действии 1102 способа друзья текущего пользователя идентифицируются из социального графа текущего пользователя. Как уже отмечалось, социальный граф текущего пользователя может быть взят из социальной сети, которая является специфической для облачной игровой системы, или может быть взят из социальной сети, которая существует отдельно от облачной игровой системы. В действии 1104 способа извлекается библиотека информации о друзьях пользователя. Библиотека информации о друзьях пользователя может позволить идентифицировать видеоигры в библиотеках друзей пользователя. В действии 1106 способа идентифицируются текущие статусы друзей текущего пользователя. Если текущим статусом данного друга является статус онлайн, то в действии 1108 способа определяется, участвует ли данный друг в настоящее время в игровом процессе видеоигры в облачной системе. Если это так, тогда в действии 1112 способа в реальном времени принимается видеопоток игрового процесса. В действии 1110 способа друзья текущего пользователя имеют приоритет для отображения на основе различных факторов или параметров. В действии 1114 способа информация о друзьях текущего пользователя и информация об их статусах, и видеопоток игрового процесса в реальном времени предоставляются в порядке приоритета. В одном из вариантов воплощения друзья текущего пользователя, которые находятся онлайн, могут иметь приоритет перед друзьями, которые в настоящее время находятся оффлайн. В одном из вариантов воплощения друзья текущего пользователя, которые в настоящее время участвуют в активном игровом процессе, могут иметь приоритет перед друзьями, которые в настоящее время не участвуют в активном игровом процессе. В одном из вариантов воплощения друзья, имеющие доступный видеопоток игрового процесса в реальном времени, могут иметь приоритет перед другими друзьями. В одном из вариантов воплощения друзья могут иметь приоритет на основании показателя новизны, с которой они вошли в систему в облачной игровой системе. В другом варианте воплощения друзья могут иметь приоритет на основании общего владения видеоиграми. Приведенные выше примеры приоритета друзей предоставляются только в качестве примера, а не в качестве ограничения. Как будет понятно специалистам в данной области, в других вариантах воплощения друзьям текущего пользователя приоритет может назначаться и представляться в соответствии с порядком приоритета на основе любого другого подходящего фактора.
Фиг.12 иллюстрирует систему, включающую облачную игровую систему и социальную сеть, в соответствии с вариантом воплощения настоящего изобретения. Облачная игровая система 1200 предоставляет доступ к вашим облачным играм. Облачная игровая система включает библиотеку игры 1202, которая содержит различные видеоигры, в которые могут играть пользователи. Данные пользователя 1204 содержат различные виды данных, которые связаны с учетными записями пользователей, таких как видеоигры, которыми владеет пользователь, и любые сохраненные игровые процессы пользователя. В показанном варианте воплощения концептуально показаны различные сессии игрового процесса, включая сессию А, сессию В и сессию С.Сессия А определяет игровой процесс пользователя А, который видит игровой процесс сессии А на дисплее 1208. Игровой процесс сессии А отображается как просмотр 1210 на дисплее пользователя А 1208. Подобно этому сессия В определяет игровой процесс пользователя В, который отображается на устройстве 1212 пользователя В как просмотр 1214. В показанном варианте воплощения просмотр 1214 сессии пользователя В отображает интерфейс, включающий просмотры в реальном времени других пользователей, включая просмотр в реальном времени сессии А и просмотр в реальном времени сессии С.Когда выполняется игровой процесс сессий А и С, видео игрового процесса выводится из сессий А и С и может передаваться в сессию пользователя В таким образом, чтобы быть отображенным на просмотре 1214 пользователя В. Видео игрового процесса может быть обработано для потоковой передачи в сессию пользователя В, например, со сниженным разрешением, размером, частотой кадров, насыщенностью цвета и т.д., чтобы сэкономить пропускную способность канала.
На фиг.12 также показана социальная сеть 1216. Социальная сеть 1216 включает пользовательские данные 1218, которые включают такие данные как социальные графы пользователя, сообщения, фотографии, видео, биографические сведения и т.д. Приложения 1220 могут работать в среде социальной сети. Графический интерфейс пользователя (ГИП) 1222 определяет интерфейс взаимодействия с социальной сетью. Интерфейс API 1224 облегчает доступ к социальной сети. Модуль генерации уведомлений 1226 обрабатывает уведомления пользователей социальной сети в соответствии с их предпочтениями. Как уже отмечалось, просмотр 1214 пользователя В включает видеопоток в реальном времени из сессий других пользователей. В одном из вариантов воплощения друзья пользователя В были определены на основе осуществления доступа к API 1224 в социальной сети 1216 для определения членов социального графа пользователя В. Эти члены имели перекрестные ссылки с пользователями облачной игровой системы для предоставления видеопотоков игрового процесса в реальном времени от друзей пользователя В, включая видеопотоки из сессий А и С.
В одном из вариантов воплощения пользователь А решает поделиться своей сессией А игрового процесса со своим социальным графом. Сессия А пользователя А передается через API 1224 для активации модуля генерации уведомлений 1226 социальной сети 1216 для отправки соответствующего уведомления друзьям в социальном графе пользователя А. Когда пользователь 1230 социальной сети, который находится в социальном графе пользователя А, осуществляет доступ в социальную сеть через устройство 1228, он может увидеть сообщение или объявление от пользователя А о сессии пользователя А. При соответствующей настройке пользователь может получать уведомления, такие как сообщение электронной почты, указывающие, что пользователь А поделился чем-то в социальной сети. Следует иметь в виду, что пользователь А может поделиться информацией о связанной активности в различных видеоиграх, например, о достижениях в видеоигре, приглашениях поиграть в видеоигру, комментариях о видеоигре, приглашении просмотреть или поиграть в вырезку из игры, созданную пользователем А, просмотреть видеоклип игрового процесса пользователя А и т.д.
Фиг.13 представляет собой график, иллюстрирующий различные переменные состояния игры с течением времени, в соответствии с вариантами воплощения изобретения. Следует понимать, что в различных вариантах воплощения может использоваться много различных видов переменных состояния игры, которые будут специфичными для конкретных видеоигр. Представленное и описанное со ссылкой на проиллюстрированный вариант воплощения предлагается только в качестве примера, а не в качестве ограничения. Переменные состояния игры могут включать значения, которые определяются осуществлением видеоигры, а также значениями, которые определяются с помощью пользовательского ввода. В показанном варианте воплощения имеются переменные положения, указывающие X, Y и Z положения объекта в виртуальном пространстве видеоигры, например, персонажа или транспортного средства. Переменные угла съемки указывают направление виртуальной камеры или виртуального вида в видеоигре. В одном варианте воплощения определяется угол съемки и измеряется азимутальная составляющая (например, вдоль горизонтальной плоскости) и отсчет азимута, и компонент наклона, измеренные относительно отсчета наклона (например, по отношению к вертикали). Переменные действия, такие как проиллюстрированные переменные действий А и В, указывают на инициирование и поддержание различных действий в видеоигре. Следует иметь в виду, что действия для данной видеоигры будут специфичны в контексте этой видеоигры. В качестве примера, действия могут включать инициирование определенных маневров, применение навыков, запуск механизмов модификации, которые изменяют существующее действие, например, повышение его уровня интенсивности или частоты и т.д., или любой другой тип действия или активности, который может быть вызван вводом данных пользователем в ходе видеоигры. Согласно фиг.13 переменная оружия указывает срабатывание оружия в видеоигре. Переменная здоровья указывает уровень здоровья, например, персонажа пользователя в видеоигре. Переменные кнопки указывают состояние кнопок на управляющем устройстве, например, находится ли кнопка в нажатом состоянии или отпущена. Переменные состояния джойстика в показанном варианте воплощения указывают величину перемещения джойстика относительно нейтрального положения. Вышеприведенные переменные состояния игры, которые были описаны со ссылкой на показанный вариант воплощения, являются только примерными и, как будет понятно специалистам в данной области, с течением времени могут быть выявлены многие другие типы переменных состояния игры.
Согласно варианту воплощения на фиг.6 в одном варианте воплощения анализатор состояния игры 614 может быть сконфигурирован с возможностью анализа переменных состояния игры записанного игрового процесса пользователя. На основе анализа записанного игрового процесса пользователя могут быть определены различные области заинтересованности записанного игрового процесса пользователя и представлены пользователю в качестве возможных выборок, из которых создается вырезка из игры. Например, область игрового процесса, характеризуемая высокими уровнями активности для некоторых переменных состояния игры, может определять выборку записываемого игрового процесса пользователя. Следует иметь в виду, что уровень активности для данной переменной состояния игры может быть основан на различных факторах, таких как уровень интенсивности, частота активации, длительность поддержания и т.д. В некоторых вариантах воплощения анализ переменных состояния игры может повлечь поиск областей игрового процесса, в которых уровни активности двух или более различных переменных состояния игры коррелируют предопределенным способом, например, две или более переменных имеют высокий уровень активности одновременно. Высокий уровень активности может быть определен на основе предопределенного порогового значения.
В различных вариантах воплощения область заинтересованности записанного игрового процесса пользователя может быть автоматически определена на основе порогового обнаружения любого одного или более из следующих признаков: одного или более вводов данных пользователем, скорости ввода данных пользователем, частоты ввода, повторов типов вводов, случаев наборов ввода, комбинированных вводов (например, комбинированных ключей), векторов движения, давления, оказываемого на управляющее устройство, возбуждения пользователя (например, обнаруживаемого на основе захвата изображения или аудио данных пользователя).
Фиг.14А иллюстрирует способ создания вырезки из игры для видеоигры линейного типа в соответствии с вариантом воплощения настоящего изобретения. Вообще говоря, в линейной видеоигре продвижение игрока в процессе видеоигры осуществляется линейно, где в целях передвижения в процессе видеоигры игрок должен завершить раннее поставленные задачи, прежде чем переходить к последующим целям. Таким образом, все игроки должны завершить одни и те же задачи в одном и том же порядке в целях продвижения в процессе видеоигры. Задачи в видеоигре линейного типа могут быть связаны как с географическим, так и с временными местоположениями внутри контекста пространственно-временной сюжетной линии видеоигры. В действии 1400 способа обозначена сцена видеоигры. Сцена может иметь как пространственный, так и временный характер и иметь различные задачи, установленные в ней. В действии 1402 способа определена пространственная либо временная протяженность сцены. Протяженность сцены может быть определена в соответствии с вводом данных пользователя, а также может быть определена на основе задач, связанных со сценой. В действии 1404 способа установлены исходные свойства предметов, персонажей или любых других объектов сцены, для которой свойства могут быть предназначены. В действии 1406 способа вырезка из игры создается для определенной продолжительности сцены, имеющей исходные свойства, как определено ранее.
Фиг.14В иллюстрирует способ создания вырезки из игры для видеоигры типа «открытый мир» в соответствии с вариантом воплощения изобретения. Видеоигру типа «открытый мир» можно охарактеризовать как ту, в которой пользователь волен выполнять любое количество задач в соответствии с его собственным выбором. Обычно видеоигры типа «открытый мир» также позволяют пользователю перемещаться по одному или более виртуальных пространств по желанию. В целях продвижения далее на различные уровни видеоигры либо завершения видеоигры может потребоваться выполнение определенного набора задач, однако пользователь может быть волен в выборе последовательности выполнения этих задач. В действии 1410 способа обозначено местоположение в виртуальном мире видеоигры. В действии 1412 способа определена ограниченная часть виртуального мира. Ограниченная часть виртуального мира может быть определена на основе ввода данных пользователя, определящих выборку записанного игрового процесса, как было описано здесь выше. Например, игровой процесс пользователя в видеоигре типа «открытый мир» может иметь большое разнообразие местоположений во время игрового процесса. Однако в целях создания вырезки из игры пользователь может выбрать часть игрового процесса, происходящего в ограниченной географической области виртуального мира видеоигры. Ограниченная географическая область может быть определена на основе анализа выбранной части записанного игрового процесса пользователем, например, отслеживание местоположения контролируемого пользователем персонажа в виртуальном мире и определение границ, которые включают все местоположения, в которых было найдено наличие персонажей. В действии 1414 способа определены исходные свойства различных объектов, персонажей, предметов, транспортных средств или любых других найденных объектов в пределах ограниченной географической области, ранее определенной по записанной выборке игрового процесса пользователя. В действии 1416 способа вырезка из игры создается на основе ограниченной географической области «открытого мира» и ранее определенных свойств.
Фиг.14С иллюстрирует способ создания вырезки из игры для спортивных видеоигр в соответствии с вариантом воплощения настоящего изобретения. Вырезка из игры может создаваться на основе устанавливаемой пользователем выборки записанного игрового процесса пользователя. В действии 1420 способа настройки определены на основе выборки записанного игрового процесса пользователя. В качестве примера, настройки могут определять местоположение спортивного мероприятия, такое как корт, стадион, дорожки или любое другое установленное место, в котором может проходить спортивное мероприятие видеоигры. В действии 1422 способа период времени определяется на основе выборки записанного игрового процесса пользователя. Период времени определяет временный отрезок, за который будет создана вырезка из игры, и может быть определен на основе выборки записанного игрового процесса пользователя. Продолжительность спортивных видеоигр может определять некоторые аспекты вырезки из игры, например, включение специальных правил или действий, которые происходят за определенные периоды времени во время спортивной игры. В действии 1424 способа игроки вырезки из игры определяются на основе игроков, включенных в записанную выборку игрового процесса пользователя. Игроки могут включать один и более персонажей, которые определяются пользователем, а также персонажи с искусственным интеллектом (ИИ), которые контролируются логическим блоком управления персонажами с ИИ выполняемой видеоигры во время игрового процесса. Как здесь было описано выше, действия персонажей с ИИ в некоторых случаях могут быть приблизительно равными. Тогда как в некоторых вариантах воплощения изобретения логический блок управления персонажами с ИИ определяется для вырезок из игры с теми параметрами, которые были обозначены в записанной выборке игрового процесса пользователя. В действии 1426 способа определены атрибуты сцены для настройки местоположения спортивных вырезок из видеоигры. Например, они могут включать такие характеристики как погода, условия дорожек или корта и другие характеристики спортивных настроек. В действии 1428 способа вырезка из игры для видеоигр создается на основе вышеуказанных параметров.
Фиг.15 концептуально иллюстрирует формирование игровой вырезки из мультиигры в соответствии с вариантом воплощения настоящего изобретения. Видеоигра может быть организована в несколько уровней или этапов. В показанном варианте воплощения изобретения показаны различные уровни видеоигры в игровом процессе пользователя. В частности, временная шкала игрового процесса 1500 представляет игровой процесс пользователя на первом уровне видеоигры, в то время как временная шкала игрового процесса 1502 и временная шкала игрового процесса 1506 представляют игровой процесс пользователя на втором и третьем уровнях видеоигры, соответственно. Согласно с вариантом воплощения настоящего изобретения пользователь может объединять несколько игровых вырезок из видеоигры, чтобы сформировать большую мультиигровую вырезку в мини-игре. В иллюстрируемом варианте воплощения изобретения выборка 1502 из временной шкалы игрового процесса 1500 используется для определения первой вырезки игры 1514. Выборка 1504 из временной шкалы игрового процесса 15 из двух используется для определения второй вырезки игры 1818. А выборка 1508 из временной шкалы игрового процесса 1506 из двух используется для определения третьей вырезки игры 1522. Первая, вторая и третья вырезки из игры расположены в последовательном порядке для определения мини-игры 1510. В данном случае мини-игра 1510 включает в себя вырезки из игры первого, второго и третьего уровней видеоигры. Таким образом, пользователь, который играет в мини-игру 1510, имеет возможность пройти ограниченные части нескольких уровней видеоигры, играя в мини-игру 1510. Это может быть полезно для предоставления более наглядного предпросмотра или демонстрационного примера видеоигры по сравнению с обычными демонстрационными играми, где пользователь может играть лишь одну часть одного уровня или этапа видеоигры. Впечатление аналогично предпросмотру фильма, где обычно зрителю предоставлена нарезка разных частей данного фильма, а не один цельный кусочек. Согласно с вариантами воплощения настоящего изобретения пользователь может опробовать несколько частей демонстрационных примеров, которые обеспечивают лучшее ощущение масштабов полной версии видеоигры и которые могут дать представление об игровом процессе в непрерывном режиме от одной части к другой.
В одном из вариантов воплощения изобретения пользователь может вставить дополнительные материалы, такие как определенные пользователем видео, сообщение, изображения или любые другие виды информации, до или после вырезки из игры. В показанном варианте воплощения изобретения введение 1512 предназначено для ознакомления игрока с мини-игрой 1510 и, возможно, также для ознакомления игрока с первой вырезкой из игры 1514. Кроме того, вставляется сообщение 1516 между первой вырезкой из игры 1514 и второй вырезкой из игры 1518, в то время как другое сообщение 1520 вставляется между второй вырезкой из игры 1518 и третьей вырезкой из игры 1522. В одном из вариантов воплощения изобретения встроенные материалы могут включать записанное видео хода игры исходного игрового процесса пользователя, где была создана вырезка из игры. Если записанный игровой процесс показан перед началом вырезки из игры, игрок, ознакомленный с вырезкой из игры, может лучше понять вырезку из игры и ее задачи перед началом игрового процесса, в то время как записанный игровой процесс, показанный после игрового процесса вырезки из игры, позволяет игроку понять, как его игровой процесс вырезки из игры отличается от игрового процесса исходного пользователя.
Фиг.16 концептуально иллюстрирует создание мини-игровой вырезки из мультиигры в соответствии с вариантом воплощения настоящего изобретения. В показанном варианте воплощения изобретения представлена записанная временная шкала игрового процесса пользователя 1600 для игры А, так же как и записанная временная шкала игрового процесса пользователя 1604 для игры В и записанная временная шкала игрового процесса пользователя 1608 для игры С. В одном из вариантов воплощения изобретения пользователь способен создать мини-игровую вырезку из мультиигры на основе игровых вырезок из различных видеоигр. В показанном варианте воплощения изобретения выборка 1602 записанного игрового процесса пользователя 1600 используется для определения вырезки из игры 1616, тогда как выборка 1606 из записанного игрового процесса пользователя 1604 используется для определения вырезки из игры 1620, а выборка 1610 записанного игрового процесса пользователя 1608 используется для определения вырезки из игры 1624. Вырезки из игры 1616, 1620, 1624 расположены последовательно для определения мини-игры 1612. Необязательно, дополнительные материалы могут быть установлены до или после игровой вырезки. В показанном варианте воплощения изобретения введение 1614 установлено перед вырезкой из игры 1616, в то время как промежуток 1618 образован между вырезкой из игры 1616 и вырезкой из игры 1620, а другой промежуток 1622 образован между вырезкой из игры 1620 и вырезкой из игры 1624.
В показанном варианте воплощения изобретения следует иметь в виду, что вырезки из игры взяты из различных видеоигр. Это позволяет пользователю иметь большую гибкость в соединении вместе вырезок из игры разнообразных видеоигр, жанров и даже управлять системой воспроизведения. Только в качестве примера, пользователь может создать мини-игру, имеющую вырезки из игры из каждой нескольких видеоигр в одной и той же последовательности видеоигр. Таким образом, игрок мини-игры может испытать и оценить развитие последовательности видеоигр в непрерывном опыте игрового процесса.
Варианты воплощения настоящего изобретения, как правило, описаны со ссылкой на облачные игровые системы. Однако, как это должно быть понятно специалистам в данной области, подобные концепции и принципы, как описано здесь, могут быть применены к традиционным консольным системам видеоигр, возможно, в сочетании с облачными игровыми системами. Например, пользователь может играть в консольную видеоигру и иметь вводимые данные игрового процесса пользователя и оставшиеся метаданные игры, записанные на протяжении игрового процесса. Основанный на вводимых данных игрового процесса пользователя и метаданных состояния игры, фактический результат игрового процесса видеоигры может быть воссоздан позднее. Таким образом, записанные вводимые данные и метаданные состояния игры могут быть использованы в сочетании с кодом видеоигры для обеспечения интерфейса для выборки части игрового процесса пользователя, из которого создается мини-игра, как было описано выше. Код мини-игры может быть создан в приставке и загружен в облачную систему, и сделан доступным для скачивания другими пользователями. В другом варианте воплощения настоящего изобретения код мини-игры создается облачной системой после получения части выборки вводимых пользователем данных игрового процесса и метаданных состояния игры. Облачная система обрабатывает часть выборки вводимых пользователем данных игрового процесса и метаданных состояния игры для создания кода мини-игры, основанного на коде видеоигры, хранящейся в облачной системе. Созданная мини-игра может стать доступной для облачных игр, где само выполнение мини-игры происходит в облачной системе, но также может быть доступной для скачивания для традиционных консольных систем для выполнения их на приставке, чтобы облегчить консольный игровой процесс мини-игры. Таким образом, мини-игры могут быть созданы и использованы как пользователями консольных видеоигровых систем, так и пользователями облачных видеоигровых систем.
Варианты воплощения настоящего изобретения, как правило, описаны со ссылкой на мини-игры или воспроизводимые части видеоигр, устанавливаемые пользователем. Однако как это должно быть понятно специалистам в данной области, многие из принципов, которые были здесь описаны, такде могут быть легко применены для создания и совместного использования записанных игровых процессов, включая совместное использование записанного видео игрового процесса, снимки экрана и поток видеоданных в реальном масштабе времени. В некоторых вариантах воплощения настоящего изобретения обеспечение доступа к мини-игре (например, в ответ на прием уведомления) может включать презентацию записанного видео игрового процесса первоначального пользователя, который и стал основой для мини-игры. В еще других вариантах воплощения настоящего изобретения способы, системы и интерфейсы рассчитаны на облегчение совместного использования игрового процесса пользователя в социальном графе пользователя.
В одном из вариантов воплощения изобретения предусматривается способ сохранения игрового процесса. Игровой процесс может выполняться посредством операционной системы игровой приставки в ответ на запрос пользователя, который может быть выдан в виде стандартной файловой операции относительно набора данных, связанных с необходимым игровым процессом. Запрос может передаваться от приложения, связанного с игрой. Игровой процесс может содержать, например, видеоконтент, аудиоконтент и/или статический визуальный контент, в том числе обои, темы, контент дополнительной программы или любой другой вид контента, связанный с игрой. Предполагается, что такой контент может быть создан пользователем либо разработчиком, бесплатно либо с оплатой, полная версия либо пробная, и/или на продажу, или в аренду.
Часть игрового процесса может быть помещена в буфер, т.е. временно сохранена. Например, предыдущие 15 секунд, ранее завершенный уровень, предыдущие действия в рамках игрового процесса могут временно сохраняться, как описано здесь далее. Термин «часть», используемый здесь, может соответствовать любой части игрового процесса, который может делиться на любые связанные или произвольные группы, состоящие из одного или более битов или байтов данных. Например, «части» игрового процесса могут соответствовать уровням, разделам, эпизодам, действиям, персонажам, музыкальным сопровождениям, текстурам, линиям поведения, проявлениям активности, песням, темам, продолжительностям, размерам, файлам, их компонентам и их комбинациям. Кроме того, части игрового процесса могут содержать снимки экрана или установленную продолжительность видеозахвата.
В одном из вариантов воплощения изобретения части игрового процесса могут быть локально сохранены в игровой приставке как временно, так и на постоянное хранение. В качестве альтернативы или дополнения части игрового процесса могут быть переданы по сети и сохранены удаленно. Например, части игрового процесса могут быть переданы по беспроводной или проводной сети на другое вычислительное устройство, другую игровую приставку или на удаленный сервер. Такие удаленные серверы могут включать публичные медиа серверы.
Необязательно, части игрового процесса, не извлеченные из буфера, или части игрового процесса за пределами определенного игрового интервала (например, определенной длительности, уровня, раздела, направления и т.д.) могут быть удалены из буфера. Этот процесс удаления может быть выполнен с использованием стандартных файлов операционной системы.
Части игрового процесса могут быть отображены на любом из множества дисплейных устройств, имеющих доступ к сохраненному игровому процессу. Например, сохраненный игровой процесс может отображаться на телевизоре, подключенном к игровой приставке, с которой был получен игровой процесс. В другом примере сохраненный игровой процесс может быть отображен на компьютере, на который сохраненный игровой процесс был передан. Сохраненный игровой процесс может отображаться отдельно или совместно с другой информацией, например, на публичных медиа веб-сайтах.
В одном из вариантов воплощения изобретения части игрового процесса отображаются другой игровой приставкой, связанной с другим пользователем, отличным от пользователя, который поместил в буфер или записал игровой процесс. Согласно данному варианту воплощения изобретения части игрового процесса могут показывать мяч, брошенный первым пользователем второму пользователю, с точки наблюдения первого пользователя. Части игрового процесса далее могут быть переданы на игровую приставку второго пользователя. Таким образом, второй пользователь может затем увидеть игровой процесс с точки наблюдения первого пользователя. Второй пользователь может также иметь части сохраненного игрового процесса, показывающего мяч, брошенный первым пользователем и пойманный вторым пользователем, с точки наблюдения второго пользователя. В данном варианте воплощения изобретения второй пользователь может просматривать игровой процесс как с точки наблюдения первого пользователя, так и с точки наблюдения второго пользователя. Более того, части игрового процесса, сохраненные вторым пользователем, могут быть переданы на игровую приставку первого пользователя, так что и первый пользователь может наблюдать игровой процесс с двух точек наблюдения. Данный вариант воплощения изобретения может использоваться любым числом пользователей, имеющих любое количество точек наблюдения, так что игровой процесс может просматриваться с любого количества разнообразных ракурсов.
Что касается хранения, передачи и/или отображения частей игрового процесса, как описано здесь, подразумевается, что части игрового процесса могут быть сохранены, переданы и отображены в виде изображения или видеоданных. Однако в другом варианте воплощения изобретения части игрового процесса могут быть сохранены и переданы в виде телеметрических данных или метаданных, представленных изображением или видеоданными, и могут быть пересозданы в виде изображения или видео игровой приставкой или любым другим устройством перед отображением.
В некоторых вариантах воплощения изобретения часть игрового процесса имеет предопределенную связь с выполняемым игровым процессом. Например, часть игрового процесса может соответствовать определенному количеству игровых процессов перед выполняемым в данный момент игровым процессом, например, предыдущие 10 секунд игрового процесса. В другом варианте воплощения изобретения первая часть игрового процесса имеет заданную связь со второй частью игрового процесса. Например, первая часть игрового процесса может соответствовать определенному количеству игровых процессов перед получением запроса на захват второй части игрового процесса, например, 10 секунд игрового процесса перед выбором кнопки захвата. В каждом из этих вариантов воплощения изобретения количество игровых процессов, помещенных в буфер перед текущим игровым процессом или запрашиваемым игровым процессом, может быть настроено и скорректировано пользователем в соответствии с его или ее конкретными предпочтениями.
В других вариантах воплощения изобретения буфер является «умным» или «гибким», так что он осуществляет захват игрового процесса в соответствии с переменными без учета времени. В одном из таких вариантов воплощения изобретения первая часть игрового процесса имеет предварительно заданную связь с событием, связанным с игровым процессом. Например, первая часть игрового процесса может быть помещена в буфер для учета статистических отклонений, таких как достижение высокого счета, накопление большого количества очков за короткий промежуток времени, множественный выбор кнопок на управляющем устройстве и другие редкие случаи. Такие статистические отклонения могут быть определены путем сравнения показателей игрового процесса со средними показателями для конкретной игры или сцены или для всех игр в целом. Такие средние показатели могут быть сохранены локально или удаленно для сравнения. Например, игровая приставка может отслеживать высокий счет для конкретной игры по всему миру и заносить в буфер игровой процесс, в котором пользователь приблизился или превзошел этот самый высокий счет. В другом примере удаленный сервер может отслеживать высокий счет для конкретной игры по всему миру и передавать полученную информацию игровой приставке, которая помещает игровой процесс в буфер, где пользователь приблизился или превзошел этот самый высокий счет.
В другом примере часть игрового процесса может помещаться в буфер для включения достижения, такого как заслуженные награды или другие достигнутые отличия. Такие награды или отличия фиксируют любой показатель или достижение в игре, такое как определенное количество достигнутых очков, прохождение определенного уровня и тому подобное. Например, игровой процесс может помещаться в буфер, для того чтобы зафиксировать получение заслуженной награды за прохождение 10 уровня, достижения 100000 очков и т.д.
Аналогичным образом прогресс относительно достижения события, в дополнение к фактическому получению награды или статистическому отклонению, может помещаться в буфер для включения в часть игрового процесса. Например, могут быть сделаны снимки экрана каждого уровня от первого до 10, создавая фотоальбом для фиксирования получения награды за достижения 10 уровня. В другом примере может быть сделано видео, где пользователь выигрывает гонку от одного до пяти раз, где награда присуждается за пять побед.
Таким образом, в соответствии с вариантами воплощения изобретения по меньшей мере часть выполненного игрового процесса всегда можно хранить в рабочем буфере. Другими словами, когда получен запрос на совместное использование части игрового процесса, может быть получена часть предшествующего игрового процесса, включая предыдущие кадры. Например, если получен запрос на совместное использование игрового процесса после того как пользователь пересекает финишную черту в гоночной игре, игровой процесс, помещенный в буфер, может включать кадр, где пользователь пересекает финишную черту. Другими словами, пользователь сможет захватить моменты, происходящие перед сделанным запросом, чтобы поделиться игровым процессом.
Фиг.17 иллюстрирует интерфейс для совместного использования игрового процесса в соответствии с вариантом воплощения настоящего изобретения. Интерфейс 1700, как показано, включает в себя различные выбираемые пиктограммы для облегчения совместного использования с друзьями пользователя, например, участниками социального графа пользователя. В одном варианте воплощения изобретения интерфейс 1700 может быть доступен посредством специальной кнопки на управляющем устройстве. Когда во время игрового процесса кнопка нажата, интерфейс 1700 может быть предоставлен, для того чтобы позволить пользователям совместно использовать их игровой процесс.
Пиктограмма 1702 может быть выбрана для инициирования загрузки снимка экрана игрового процесса пользователя. В одном варианте воплощения изобретения область 1704 пиктограммы 1702 заполняется показательным скриншотом последнего игрового процесса пользователя, тем самым обеспечивая короткий предварительный просмотр скриншота, который может совместно использоваться. В одном варианте воплощения изобретения выбор пиктограммы 1702 может обеспечить доступ к дополнительному интерфейсу выбора скриншота, позволяющему пользователю выбрать отдельный скриншот из записанного игрового процесса пользователя для совместного использования в социальном графе пользователя. Он может принимать форму управляемой временной шкалы видео игрового процесса, которая может быть пройдена или управляема для обозначения конкретного момента времени внутри игрового процесса и соответствующего ему скриншота.
Пиктограмма 1706 может быть выбрана для начала загрузки видео игрового процесса пользователя. Область 1708 пиктограммы 1706 может быть настроена для отображения показательного видеоклипа последнего игрового процесса пользователя, например, последних 5 секунд игрового процесса пользователя, последнего достижения и т.д., и, таким образом, отображает короткий предварительный просмотр видеоклипа игрового процесса пользователя, который может быть совместно использован с другими.
Пиктограмма 1710 может быть выбрана для инициирования потокового видео игрового процесса пользователя в реальном времени. В одном варианте воплощения изобретения выбор пиктограммы 1710 приведет к возобновлению игрового процесса пользователя при инициировании потокового видео игрового процесса пользователя в реальном времени. В другом варианте воплощения изобретения выбор пиктограммы 1710 обеспечивает доступ к интерфейсу для определения параметров для потоковой видеотрансляции, например, с кем совместно использовать потоковое видео, следует ли включать видеопоток от локального устройства захвата изображений, предназначенного для показа самого пользователя на протяжении игрового процесса, разрешать ли комментарии и т.д.
Следует иметь в виду, что пользователь может поделиться игровым процессом (например, выбранным снимком экрана, видео или видеопотоком игрового процесса в реальном времени) с одним или более специально выбранных друзей, во всем своем социальном графе или с любым пользователем социальной сети. Социальная сеть может быть игровой социальной сетью, связанной со средой, на которой выполняется эта видеоигра, или сторонней социальной сетью, которая существует отдельно от видеоигры или ее среды. Доступ в социальную сеть можно получить через API, установленный для взаимодействия с социальной сетью. Пользователи, для которых было разрешено совместное использование, могут получить уведомление, информирующее их о совместном использовании игрового процесса. Такое уведомление может принимать форму постинга в социальной ленте новостей, личных сообщений через социальную сеть, уведомления в игре, по электронной почте, уведомления чата и т.д. Совместное использование игрового процесса в социальной сети может повлечь доступность игрового процесса для других подмножеств пользователей социальной сети, которые могут быть или могут не быть частью социального графа пользователя, для которого разрешено совместное использование. Например, для данной видеоигры для игрового процесса может быть разрешено совместное использование или он может быть сделан доступным для любого пользователя социальной сети, который также владеет видеоигрой и поэтому ему предоставляется доступ к игровому процессу совместного использования видео игры. Такой игровой процесс совместного использования может быть доступен через онлайн-форумы, чаты или другие онлайновые каналы, которые доступны только для игроков видеоигры. В одном из вариантов воплощения видеоигра может иметь специальную страницу или сайт в социальной сети. Игровой процесс совместного использования может быть сделан доступным для пользователей, осуществляющих доступ к странице или сайту видеоигры. Конечно, следует иметь в виду, что с позиции пользователя, предоставляющего совместный доступ, могут быть предоставлены опции, позволяющие пользователю определить и настроить все параметры форума, на котором будет в общем доступе его игровой процесс.
Фиг.18 иллюстрирует интерфейс 1800 для выбора части записанного видео игрового процесса для совместного использования в соответствии с вариантом воплощения настоящего изобретения. Интерфейс 1800 включает область предварительного просмотра 1802, которая закольцовывает предварительный просмотр текущей выбранной части видео из игрового процесса пользователя. Снимки экрана 1804, 1806, 1808, 1810 и 1812 расположены рядом друг с другом в хронологическом порядке для определения временной шкалы снимков экрана с указанием контента видео игрового процесса. Различные снимки экрана 1804, 1806, 1808, 1810 и 1812 могут быть кадрами изображения, извлеченными с постоянными интервалами из видео игрового процесса. Временную шкалу снимка экрана можно прокручивать вправо или влево для отображения дополнительных кадров, предшествующих или отображаемых в данный момент. Маркеры 1814 и 1816 указывают начальную и конечную точки для выбранного в данный момент видеоклипа (или сегмента, или части). Выбранный в данный момент видеоклип может быть многократно воспроизведен в области предварительного просмотра 1802, как уже было отмечено.
В одном из вариантов воплощения кнопки 1818 и 1820 могут быть выбраны для уменьшения или увеличения, соответственно, продолжительности выбранной части видео. Опция предварительного просмотра 1822 может быть выбрана, чтобы запустить воспроизведение полноэкранного предварительного просмотра выбранного в данный момент видеоклипа. Опция обрезки 1824 может быть выбрана для доступа к дополнительной функции обрезки видео.
Фиг.19 иллюстрирует интерфейс 1900 для просмотра видеопотока в реальном времени игрового процесса пользователя в соответствии с вариантом воплощения настоящего изобретения. По ссылке 1902 показано имя и/или псевдоним пользователя, который передает видеопоток своего игрового процесса. По ссылке 1904 показано количество пользователей, которые в настоящее время просматривают видеопоток в реальном времени. Видеопоток в реальном времени игрового процесса пользователя отображается в области 1906 отображения видео. Кроме того, видео 1908 действующего пользователя может быть включено, показывая видео в реальном времени фактического пользователя, чей игровой процесс передается в настоящее время. Опция команды 1910 может быть выбрана, чтобы разрешить просмотр пользователю для выдачи команд, влияющих на видеоигру, или даже взять на себя управление видеопотоком игрового процесса пользователя. Следует иметь в виду, что выдача команд в игре или удаленное управление игровым процессом пользователя может потребовать разрешения, которое должно быть или предопределенно, или затребовано во время игрового процесса, от пользователя, играющего в игру, чтобы позволить просматривающему пользователю выполнять такие действия.
Опция 1912 позволяет просматривающему пользователю присоединиться к игровому процессу передающего пользователя. А опция 1914 позволяет просматривающему пользователю приобрести видеоигру во время ее выполнения.
Кроме того, интерфейс может включать раздел комментариев 1916, который отображает комментарии от пользователей, просматривающих потоковое видео в реальном времени с указанием времени каждого комментария. Поле ввода комментария 1918 предназначено для просматривающего пользователя для введения текста для комментария, который будет опубликован. А кнопка отправки 1920 нажимается, чтобы загрузить комментарий для просмотра отправляющим видеопоток пользователем и другие просмотры видеопотока в реальном времени.
Хотя варианты воплощения настоящего изобретения были описаны в отношении доступа к различным интерфейсам для совместного использования по нажатию специальной кнопки, следует понимать, что в других вариантах воплощения некоторые или все из этих интерфейсов могут не потребоваться для облегчения совместного использования игрового процесса в социальном графе пользователя. Например, в одном из вариантов воплощения кнопка управляющего устройства может быть сконфигурирована с возможностью захвата снимка экрана игрового процесса пользователей при ее нажатии. Полученный снимок экрана затем может быть автоматически загружен и совместно использоваться в социальном графе пользователя.
В другом варианте воплощения нажатие на определенную кнопку на управляющем устройстве инициирует запись видео игрового процесса. Если эта специальная кнопка нажата во второй раз, запись видео игрового процесса останавливается, и видеоклип может быть загружен и совместно использоваться в социальном графе пользователя. В одном варианте воплощения загрузка и совместное использование видеоклипа в социальном графе пользователя может происходить автоматически после завершения операции записи видео. Однако в другом варианте воплощения, если специальная кнопка нажата второй раз, чтобы остановить запись, представляется интерфейс, чтобы позволить пользователю настроить различные опции, такие как обрезка видео, выбор показательного снимка экрана для видео, определение конкретных пользователей, с которыми будет совместно использоваться видео, добавление подписи или заголовка и т.д. После настройки пользователем видео можно совместно использовать с другими или иным образом сделать доступным для просмотра.
В одном из вариантов воплощения определенная кнопка на управляющем устройстве может быть настроена для совместного использования видео игрового процесса предопределенной продолжительностью в социальной сети. Например, пользователь может указать, что при нажатии на кнопку предыдущие 10 секунд видео игрового процесса будут совместно использоваться в социальном графе пользователя. В другом варианте воплощения может быть указано, что при нажатии кнопки следующие 10 секунд видео игрового процесса будут записаны и совместно использоваться в социальном графе. Следует понимать, что к записываемому видео игрового процесса могут быть применены опции обрезки видео и выполнение других видов настройки. Кроме того, видео игрового процесса предопределенной продолжительности, записанное после нажатия кнопки, может быть объединено с ранее буферизированным видео игрового процесса, как было описано ранее.
В еще одном варианте воплощения определенная кнопка на управляющем устройстве может быть сконфигурирована с возможностью инициирования потокового видео активного игрового процесса пользователей. Может быть установлено, что потоковое видео должно быть доступно только для членов социального графа пользователя или для других меньших или больших групп пользователей, таких как определенное подмножество пользовательского социального графа, всем пользователям, которые владеют или иным образом имеют доступ к той же видеоигре, любому пользователю игровой среды и т.д.
АВТОМАТИЧЕСКОЕ СОЗДАНИЕ ПРЕДЛАГАЕМЫХ МИНИ-ИГР ДЛЯ ОБЛАЧНОЙ ИГРЫ НА ОСНОВЕ ЗАПИСАННОГО ИГРОВОГО ПРОЦЕССА
В одном из вариантов воплощения предоставляется способ создания воспроизводимой ограниченной версии видеоигры, включающий следующий способ действий: запись игрового процесса пользователя полной версии видеоигры; анализ записанного игрового процесса пользователя для определения области заинтересованности; определение границ в контексте игрового процесса видеоигры на основе определенной области заинтересованности; и создание ограниченной версии видеоигры на основе определенных границ; при этом способ выполняется процессором.
В одном из вариантов воплощения запись игрового процесса пользователя включает запись одних или более вводимых пользователем данных или данных состояния игры. В одном из вариантов воплощения анализ записанного игрового процесса пользователя включает определение уровней активности вводимых пользователем данных или данных состояния игры, при этом область заинтересованности является областью, имеющей уровни активности, которые превышают наперед заданный порог.
В одном из вариантов воплощения определение границ в контексте игрового процесса видеоигры включает определение пространственной границы в виртуальном пространстве видеоигры. В одном из вариантов воплощения пространственная граница в виртуальном пространстве видеоигры определяет часть виртуального пространства, меньшую, чем виртуальное пространство целиком, при этом часть виртуального пространства имеет подмножество функций виртуального пространства.
В одном из вариантов воплощения определение границ в контексте игрового процесса видеоигры включает определение временной границы во временном контексте видеоигры.
В одном из вариантов воплощения определение границ включает определение ближайшей начальной точки или ближайшей конечной точки одного или более из стадии, уровня или сцены.
В одном из вариантов воплощения анализ записанного игрового процесса пользователя включает определение пользовательских настроек состояния игры на основе записанного игрового процесса пользователя, а создание ограниченной версии видеоигры включает определение ограниченной версии видеоигры таким образом, чтобы она имела начальные настройки состояния игры, основанные на определенных пользовательских настройках состояния игры.
В одном из вариантов воплощения область заинтересованности определяется автоматически на основе соответствия одному или нескольким порогам. В одном из вариантов воплощения по меньшей мере один из упомянутых порогов связан с одним или более из вводимых пользователем данных, скорости ввода данных пользователем, частоты ввода данных пользователем, повторов ввода данных пользователем, образца вводимых данных, совместного использования контекста игрового процесса с другими пользователями, размещения комментариев, связанных с игровым процессом, в социальной сети или распространенности частей видеоигры на основе уровней совместного использования в социальной сети.
В другом варианте воплощения предоставляется способ создания воспроизводимой ограниченной версии видеоигры, включающий следующий способ действий: запись игрового процесса пользователя полной версии видеоигры; анализ записанного игрового процесса пользователя для определения одной или более областей заинтересованности; предоставление каждой из областей заинтересованности для выбора; получение введенного выбора, указывающего выбранную область заинтересованности; для выбранной области заинтересованности, определение границ в контексте игрового процесса видеоигры на основе выбранной области заинтересованности; и создание ограниченной версии видеоигры на основе определенных границ; при этом способ выполняется процессором.
В одном из вариантов воплощения запись игрового процесса пользователя включает запись одних или более из вводимых пользователем данных или данных состояния игры. В одном из вариантов воплощения анализ записанного игрового процесса пользователя включает определение уровней активности вводимых пользователем данных или данных состояния игры, при этом каждая из областей заинтересованности является областью, имеющей уровни активности, которые превышают наперед заданный порог.
В одном из вариантов воплощения анализ записанного игрового процесса пользователя включает определение пользовательских настроек состояния игры на основе записанного игрового процесса пользователя, а создание ограниченной версии видеоигры включает определение ограниченной версии видеоигры таким образом, чтобы она имела начальные настройки состояния игры, основанные на определенных пользовательских настройках состояния игры.
В одном из вариантов воплощения каждая область заинтересованности определяется автоматически на основе соответствия одному или нескольким порогам.
В другом варианте воплощения предоставляется способ создания воспроизводимой ограниченной версии видеоигры, включающий следующий способ действий: запись игрового процесса пользователя полной версии видеоигры, при этом запись игрового процесса пользователя включает запись одних или более из вводимых пользователем данных или данных состояния игры; анализ записанного игрового процесса пользователя для определения одной или более областей заинтересованности, при этом каждая область заинтересованности определяется автоматически на основе соответствия одному или нескольким порогам; предоставление каждой из областей заинтересованности для выбора; получение введенного выбора, указывающего выбранную область заинтересованности; для выбранной области заинтересованности, определение границ в контексте игрового процесса видеоигры на основе определенной области заинтересованности; создание ограниченной версии видеоигры на основе определенных границ; при этом способ выполняется процессором.
В одном из вариантов воплощения определение границ в контексте игрового процесса видеоигры включает определение пространственной границы в виртуальном пространстве видеоигры; при этом пространственная граница в виртуальном пространстве видеоигры определяет часть виртуального пространства, меньшую, чем виртуальное пространство целиком, при этом часть виртуального пространства имеет подмножество функций виртуального пространства.
В одном из вариантов воплощения определение границ в контексте игрового процесса видеоигры включает определение временной границы во временном контексте видеоигры.
В одном из вариантов воплощения определение границ включает определение ближайшей начальной точки или ближайшей конечной точки одного или более из стадии, уровня или сцены.
В одном из вариантов воплощения по меньшей мере один из упомянутых порогов связан с одним или более из вводимых пользователем данных, скорости ввода данных пользователем, частоты ввода данных пользователем, повторов ввода данных пользователем, образца вводимых данных, совместного использования контекста игрового процесса с другими пользователями, размещения комментариев, связанных с игровым процессом, в социальной сети или распространенности частей видеоигры на основе уровней совместного использования в социальной сети.
СОЗДАНИЕ МНОГОКОМПОНЕНТНОЙ МИНИ-ИГРЫ ДЛЯ ОБЛАЧНОЙ ИГРЫ НА ОСНОВЕ ЗАПИСАННОГО ИГРОВОГО ПРОЦЕССА
В одном из вариантов воплощения предоставляется способ создания воспроизводимой ограниченной версии видеоигры, включающий следующий способ действий: запись игрового процесса пользователя полной версии видеоигры; определение множества устанавливаемых пользователем частей записанного игрового процесса пользователя; для каждой установленной пользователем части, определение границ в контексте игрового процесса видеоигры на основе установленной пользователем части и создание воспроизводимой части видеоигры на основе установленных границ; упорядочивание каждой из воспроизводимых частей видеоигры в последовательность для образования ограниченной версии видеоигры; при этом способ выполняется процессором.
В одном из вариантов воплощения определение каждой устанавливаемой пользователем части записанного игрового процесса пользователя включает получение устанавливаемой пользователем начальной и конечной точек в записанном игровом процессе пользователя и определение устанавливаемой пользователем части на основе полученных устанавливаемых пользователем начальной и конечной точек.
В одном из вариантов воплощения запись игрового процесса пользователя включает запись одних или более из вводимых пользователем данных или данных состояния игры. В одном из вариантов воплощения создание воспроизводимой части видеоигры включает анализ данных состояния игры для определения элементов кода и сборку элементов кода для образования выполняемого кода, определяющего воспроизводимую часть видеоигры.
В одном из вариантов воплощения определение границ в контексте игрового процесса видеоигры включает определение пространственной границы в виртуальном пространстве видеоигры. В одном из вариантов воплощения пространственная граница в виртуальном пространстве видеоигры определяет часть виртуального пространства, меньшую, чем виртуальное пространство целиком, при этом часть виртуального пространства имеет подмножество функций виртуального пространства.
В одном из вариантов воплощения определение границ в контексте игрового процесса видеоигры включает определение временной границы во временном контексте видеоигры.
В одном из вариантов воплощения способ дополнительно включает, для каждой устанавливаемой пользователем части, анализ записанного игрового процесса пользователя для определения пользовательских настроек состояния игры; и при этом создание воспроизводимой части видеоигры включает определение воспроизводимой части видеоигры таким образом, чтобы она имела начальные настройки состояния игры, основанные на определенных пользовательских настройках состояния игры.
В одном из вариантов воплощения определение границ включает определение ближайшей начальной точки или ближайшей конечной точки из одного или более - стадии, уровня или сцены.
В одном из вариантов воплощения способ дополнительно включает запись устанавливаемого пользователем видео, при этом упорядочивание воспроизводимых частей видеоигры включает упорядочивание устанавливаемого пользователем видео в позиции в последовательности, находящейся перед или следом за одной из воспроизводимых частей видеоигры. В одном из вариантов воплощения устанавливаемое пользователем видео включает видео из по меньшей мере одной из устанавливаемых пользователем частей записанного игрового процесса пользователя.
В другом варианте воплощения предоставляется физический машиночитаемый носитель, имеющий в себе программные инструкции для создания воспроизводимой ограниченной версии видеоигры, включающий следующее: программные инструкции для записи игрового процесса пользователя полной версии видеоигры; программные инструкции для определения множества устанавливаемых пользователем частей записанного игрового процесса пользователя; программные инструкции, для каждой установленной пользователем части, для определения границ в контексте игрового процесса видеоигры на основе установленной пользователем части и создание воспроизводимой части видеоигры на основе определенных границ; программные инструкции для упорядочивания каждой из воспроизводимых частей видеоигры в последовательность для образования ограниченной версии видеоигры.
В одном из вариантов воплощения определение каждой устанавливаемой пользователем части записанного игрового процесса пользователя включает получение устанавливаемой пользователем начальной и конечной точек в записанном игровом процессе пользователя и определение устанавливаемой пользователем части на основе полученных устанавливаемых пользователем начальной и конечной точек.
В одном из вариантов воплощения запись игрового процесса пользователя включает запись одних или более из вводимых пользователем данных или данных состояния игры. В одном из вариантов воплощения создание воспроизводимой части видеоигры включает анализ данных состояния игры для определения элементов кода и сборку элементов кода для образования выполняемого кода, определяющего воспроизводимую часть видеоигры.
В одном из вариантов воплощения физический машиночитаемый носитель дополнительно включает программные инструкции, для каждой устанавливаемой пользователем части, для анализа записанного игрового процесса пользователя с целью определения пользовательских настроек состояния игры; и при этом создание воспроизводимой части видеоигры включает определение воспроизводимой части видеоигры таким образом, чтобы она имела начальные настройки состояния игры, основанные на определенных пользовательских настройках состояния игры.
В другом варианте воплощения предоставляется система, включающая следующее: по меньшей мере одно серверное вычислительное устройство, при этом данное по меньшей мере одно серверное вычислительное устройство имеет логический блок для создания воспроизводимой ограниченной версии видеоигры, включающий логический блок для записи игрового процесса пользователя полной версии видеоигры; логический блок для определения множества устанавливаемых пользователем частей записанного игрового процесса пользователя; логический блок, для каждой установленной пользователем части, для определения границ в контексте игрового процесса видеоигры на основе установленной пользователем части и создание воспроизводимой части видеоигры на основе определенных границ; логический блок для упорядочивания каждой из воспроизводимых частей видеоигры в последовательность для образования ограниченной версии видеоигры.
В одном из вариантов воплощения определение каждой устанавливаемой пользователем части записанного игрового процесса пользователя включает получение устанавливаемой пользователем начальной и конечной точек в записанном игровом процессе пользователя и определение устанавливаемой пользователем части на основе полученных устанавливаемых пользователем начальной и конечной точек.
В одном из вариантов воплощения запись игрового процесса пользователя включает запись одних или более из вводимых пользователем данных или данных состояния игры. В одном из вариантов воплощения создание воспроизводимой части видеоигры включает анализ данных состояния игры для определения элементов кода и сборку элементов кода для определения выполняемого кода, определяющего воспроизводимую часть видеоигры.
В одном из вариантов воплощения упомянутый логический блок дополнительно включает логический блок, для каждой устанавливаемой пользователем части, для анализа записанного игрового процесса пользователя с целью определения пользовательских настроек состояния игры; и при этом создание воспроизводимой части видеоигры включает определение воспроизводимой части видеоигры таким образом, чтобы она имела начальные настройки состояния игры, основанные на определенных пользовательских настройках состояния игры.
СОВМЕСТНОЕ ИСПОЛЬЗОВАНИЕ ЗАПИСАННОГО ИГРОВОГО ПРОЦЕССА В СОЦИАЛЬНОМ ГРАФЕ
В одном из вариантов воплощения предоставляется способ совместного использования записанного игрового процесса в социальном графе, включающий следующий способ действий: запись видео игрового процесса пользователя во время активного состояния сессии игрового процесса; получение команды инициирования операции совместного использования во время активного состояния сессии игрового процесса; в ответ на получение команды, ввод состояния приостановки сессии игрового процесса и предоставление интерфейса совместного использования; обработку данных ввода, полученных через интерфейс совместного использования, для определения установленного пользователем выбора записанного видео; совместное использование установленного пользователем выбора записанного видео в социальном графе пользователя; возобновление активного состояния сессии игрового процесса; при этом способ выполняется процессором.
В одном из вариантов воплощения запись видео игрового процесса пользователя включает хранение видео в буфере во время активного состояния сессии игрового процесса.
В одном из вариантов воплощения предоставление интерфейса совместного использования включает извлечение и предоставление одной или более частей видео из буфера.
В одном из вариантов воплощения интерфейс совместного использования включает селектор продолжительности для определения продолжительности устанавливаемого пользователем выбора.
В одном из вариантов воплощения совместное использование выбора включает загрузку выбора для доступности в сервисе социальной сети, которая определяет социальный граф пользователя.
В одном из вариантов воплощения загрузка выбора включает сжатие выбора и загрузку сжатого выбора.
В одном из вариантов воплощения совместное использование выбора включает создание уведомления члену социального графа пользователя.
В одном из вариантов воплощения уведомление определяется одним или более из приватного сообщения, сообщения в чате, внутриигрового уведомления, сообщения на ленту новостей в социальной сети, сообщения по электронной почте.
В одном из вариантов воплощения совместное использование выбора включает предоставление выбора на профильной странице пользователя.
В одном из вариантов воплощения получение команды инициирования операции совместного использования определяется нажатием кнопки на управляющем устройстве.
В другом варианте воплощения предоставляется способ совместного использования записанного игрового процесса в социальном графе, включающий следующий способ действий: запись видео игрового процесса пользователя во время активного состояния сессии игрового процесса; получение команды инициирования операции совместного использования во время активного состояния сессии игрового процесса; в ответ на получение команды, определение установленного пользователем выбора записанного видео; совместное использование установленного пользователем выбора записанного видео в социальном графе пользователя; при этом способ выполняется процессором.
В одном из вариантов воплощения запись видео игрового процесса пользователя включает хранение видео в буфере во время активного состояния сессии игрового процесса.
В одном из вариантов воплощения определение устанавливаемого пользователем выбора записанного видео включает извлечение и предоставление видео из буфера и обработку данных ввода пользователя, определяющих часть видео.
В одном из вариантов воплощения совместное использование выбора включает загрузку выбора для доступности в сервисе социальной сети, которая определяет социальный граф пользователя.
В одном из вариантов воплощения получение команды инициирования операции совместного использования определяется нажатием кнопки на управляющем устройстве.
В другом варианте воплощения предоставляется машиночитаемый носитель постоянного хранения, имеющий в себе программные инструкции для совместного использования записанного игрового процесса в социальном графе. Программные инструкции включают: программные инструкции для записи видео игрового процесса пользователя во время активного состояния сессии игрового процесса; программные инструкции для получения команды инициирования операции совместного использования во время активного состояния сессии игрового процесса; программные инструкции, в ответ на получение команды, для определения установленного пользователем выбора записанного видео; программные инструкции для совместного использования установленного пользователем выбора записанного видео в социальном графе пользователя.
В одном из вариантов воплощения запись видео игрового процесса пользователя включает хранение видео в буфере во время активного состояния сессии игрового процесса.
В одном из вариантов воплощения определение устанавливаемого пользователем выбора записанного видео включает извлечение и предоставление видео из буфера и обработку данных ввода пользователя, определяющих часть видео.
В одном из вариантов воплощения совместное использование выбора включает загрузку выбора для доступности в сервисе социальной сети, которая определяет социальный граф пользователя.
В одном из вариантов воплощения получение команды инициирования операции совместного использования определяется нажатием кнопки на управляющем устройстве.
УДАЛЕННОЕ УПРАВЛЕНИЕ ИГРОВЫМ ПРОЦЕССОМ ПЕРВОГО ПОЛЬЗОВАТЕЛЯ ВТОРЫМ ПОЛЬЗОВАТЕЛЕМ
В одном из вариантов воплощения предоставляется способ обеспечения удаленного управления игровым процессом пользователя, этот способ включает следующий способ действий: представление потокового видео игрового процесса первого пользователя удаленно расположенному второму пользователю; обработка запроса на переход управления игровым процессом первого пользователя ко второму пользователю; инициирование управления игровым процессом первого пользователя вторым пользователем; при этом способ выполняется по меньшей мере одним процессором.
В одном из вариантов воплощения инициирование управления игровым процессом первого пользователя вторым пользователем включает отключение управления игровым процессом первого пользователя первым управляющим устройством, связанным с первым пользователем, и включение управления игровым процессом первого пользователя вторым управляющим устройством, связанным со вторым пользователем.
В одном из вариантов воплощения управление игровым процессом первого пользователя вторым управляющим устройством включает получение входных команд от второго управляющего устройства и применение входных команд для определения игрового процесса первого пользователя.
В одном из вариантов воплощения потоковое видео предоставляется через социальный интерфейс второму пользователю, при этом социальный интерфейс обеспечивает доступ к социальному графу второго пользователя, первый пользователь определяется как член социального графа второго пользователя.
В одном из вариантов воплощения социальный интерфейс включает интерфейс комментариев для размещения комментариев во время игрового процесса первого пользователя.
В одном из вариантов воплощения обработка запроса на переход управления включает получение подтверждения от первого пользователя разрешения управления игровым процессом первого пользователя вторым пользователем.
В одном из вариантов воплощения предоставление потокового видео игрового процесса первого пользователя второму пользователю включает предоставление потокового видео в неполноэкранном формате, а инициирование управления игровым процессом первого пользователя вторым пользователем включает запуск представления потокового видео в полноэкранном формате.
В другом варианте воплощения предоставляется способ для обеспечения мультиплеерного игрового процесса, включающий следующий способ действий: представление потокового видео сессии игрового процесса первого пользователя удаленно расположенному второму пользователю; обработка запроса на подключение второго пользователя к сессии игрового процесса первого пользователя; инициирование вторым пользователем игрового процесса в сессии игрового процесса первого пользователя; при этом способ выполняется по меньшей мере одним процессором.
В одном из вариантов воплощения инициирование игрового процесса вторым пользователем в сессии игрового процесса первого пользователя включает инициирование мультиплеерного режима видеоигры.
В одном из вариантов воплощения потоковое видео предоставляется через социальный интерфейс второму пользователю, при этом социальный интерфейс обеспечивает доступ к социальному графу второго пользователя, первый пользователь определяется как член социального графа второго пользователя.
В одном из вариантов воплощения социальный интерфейс включает интерфейс комментариев для размещения комментариев во время игрового процесса первого пользователя.
В одном из вариантов воплощения обработка запроса на подключение к сессии игрового процесса первого пользователя включает получение подтверждения от первого пользователя разрешения осуществления игрового процесса вторым пользователем в сессии игрового процесса первого пользователя.
В одном из вариантов воплощения предоставление потокового видео игрового процесса первого пользователя второму пользователю включает предоставление потокового видео в неполноэкранном формате, а инициирование игрового процесса вторым пользователем в сессии игрового процесса первого пользователя включает запуск представления потокового видео в полноэкранном формате.
В другом варианте воплощения предоставляется машиночитаемый носитель постоянного хранения, имеющий в себе программные инструкции для обеспечения удаленного управления игровым процессом пользователя, при этом программные инструкции включают: программные инструкции для представления потокового видео игрового процесса первого пользователя удаленно расположенному второму пользователю; программные инструкции для обработки запроса на переход управления игровым процессом первого пользователя ко второму пользователю; программные инструкции для инициирования управления игровым процессом первого пользователя вторым пользователем.
В одном из вариантов воплощения инициирование управления игровым процессом первого пользователя вторым пользователем включает отключение управления игровым процессом первого пользователя первым управляющим устройством, связанным с первым пользователем, и включение управления игровым процессом первого пользователя вторым управляющим устройством, связанным со вторым пользователем.
В одном из вариантов воплощения управление игровым процессом первого пользователя вторым управляющим устройством включает получение входных команд от второго управляющего устройства и применение входных команд для определения игрового процесса первого пользователя.
В одном из вариантов воплощения потоковое видео предоставляется через социальный интерфейс второму пользователю, при этом социальный интерфейс обеспечивает доступ к социальному графу второго пользователя, первый пользователь определяется как член социального графа второго пользователя.
В одном из вариантов воплощения социальный интерфейс включает интерфейс комментариев для размещения комментариев во время игрового процесса первого пользователя.
В одном из вариантов воплощения обработка запроса на переход управления включает получение подтверждения от первого пользователя разрешения управления игровым процессом первого пользователя вторым пользователем.
В одном из вариантов воплощения предоставление потокового видео игрового процесса первого пользователя второму пользователю включает предоставление потокового видео в неполноэкранном формате, а инициирование управления игровым процессом первого пользователя вторым пользователем включает запуск предоставления потокового видео в полноэкранном формате.
Фигура 20 иллюстрирует оборудование и пользовательские интерфейсы, которые могут быть использованы для обеспечения интерактивности в видеоигре, в соответствии с одним вариантом воплощения настоящего изобретения. Фигура 20 схематически иллюстрирует общую архитектуру системы развлекательного устройства Sony® Playstation3®, приставки, которая может быть совместимой для взаимодействия с управляющим устройством, для которого компьютерная программа выполняется на основном вычислительном устройстве, в соответствии с вариантами воплощения настоящего изобретения. Предоставляется системный блок 2000 с различными периферийными устройствами, которые могут подключаться к системному блоку 2000. Системный блок 2000 содержит: Cell-процессор 2028; блок динамической памяти с произвольным доступом (XDRAM) 2026 корпорации Rambus®; блок графического процессора RSX 2030 со специализированным блоком видеопамяти с произвольным доступом (VRAM) 2032; и мост ввода/вывода 2034. Системный блок 2000 также содержит устройство чтения оптических дисков Blu Ray® BD-ROM® 2040, предназначенное для осуществления чтения с диска 2040а, и извлекаемый размещаемый в слоте накопитель на жестком диске (HDD) 2036, доступ к которому производится через мост ввода/вывода 2034. Необязательно, системный блок 2000 также содержит кард-ридер 2038 для чтения компактных карт флеш-памяти, карт памяти Memory Stick® и тому подобных, доступ к которому аналогично производится через мост ввода/вывода 2034.
Мост ввода/вывода 2034 также соединен с шестью портами USB 2.0 2024; гигабитным портом Ethernet 2022; портом беспроводного доступа к сети (Wi-Fi) IEEE 802.11 b/g 2020; и портом беспроводного подключения Bluetooth® 2018, способным поддерживать до семи подключений Bluetooth.
В процессе работы мост ввода/вывода 2034 обрабатывает все данные, поступающие через беспроводные соединения, порты USB и Ethernet, включая данные, получаемые от одного или более игровых управляющих устройств 2002-2003. Например, когда пользователь играет в игру, мост ввода/вывода 2034 получает данные от игрового управляющего устройства 2002-2003 через соединение Bluetooth и направляет их Cell-процессору 2028, который, соответственно, обновляет текущее состояние игры.
Беспроводные порты, порты USB и Ethernet также предоставляют возможность подключения других периферийных устройств дополнительно к игровым управляющим устройствам 2002-2003, таких как: удаленно расположенное устройство управления 2004; клавиатура 2006; мышь 2008; переносное развлекательное устройство 2010, такое как развлекательное устройство Sony Playstation Portable®; видеокамера, такая как видеокамера ЕуеТоу® 2012; микрофонная гарнитура 2014; и микрофон 2015. Такие периферийные устройства могут, следовательно, в принципе, быть подключены к системному блоку 2000 с помощью беспроводного соединения; например, переносное развлекательное устройство 2010 может взаимодействовать посредством эпизодического Wi-Fi соединения, в то время как микрофонная гарнитура 2014 может взаимодействовать посредством соединения Bluetooth.
Предоставление данных интерфейсов означает, что устройство Playstation 3 является также потенциально совместимым с другими периферийными устройствами, такими как цифровые видеомагнитофоны (DVR), телевизионные приставки, цифровые камеры, переносные мультимедийные проигрыватели, телефоны, использующие систему телефонии по протоколу передачи данных в Интернет, мобильные телефоны, принтеры и сканеры.
Кроме того, кард-ридер для чтения устаревших карт памяти 2016 может быть подключен к системному блоку через USB порт 2024, обеспечивая возможность чтения карт памяти 2048 тех типов, которые используются устройствами Playstation® или Playstation 2®.
Игровые управляющие устройства 2002-2003 способны в процессе работы взаимодействовать посредством беспроводного соединения с системным блоком 2000 через подключение Bluetooth или быть подключенными к USB порту, тем самым также обеспечивая питание, которым заряжается батарея игровых управляющих устройств 2002-2003. Игровые управляющие устройства 2002-2003 могут также включать устройство памяти; процессор; кард-ридер; устройство постоянной памяти, такой как флеш-память; светоизлучающие устройства, такие как подсвеченная сферическая область, светоизлучающие диоды, или источники инфракрасного излучения; микрофон и громкоговоритель для взаимодействия с помощью ультразвука; акустическую камеру; цифровую камеру; внутренний генератор тактовых импульсов; легкоузнаваемую форму, такую как сферическая область, обращенная к игровой приставке; и средства беспроводной связи, использующие протоколы, такие как Bluetooth®, WiFi™ и т.д.
Игровое управляющее устройство 2002 является управляющим устройством, разработанным для использования двумя руками, а игровое управляющее устройство 2003 является управляющим устройством для работы одной рукой с использованием насадки. В дополнение к одному или более аналоговых джойстиков и традиционных управляющих кнопок игровое управляющее устройство является восприимчивым к трехмерному определению местоположения. Следовательно, жесты и движения пользователя игрового управляющего устройства могут быть распознаны как данные ввода игры в дополнение или вместо команд, поступающих от традиционной кнопки или джойстика. Необязательно, в качестве управляющего устройства могут использоваться другие периферийные устройства с возможностью беспроводного взаимодействия, такие как устройство Playstation™ Portable. В случае использования устройства Playstation™ Portable на экран устройства может выводиться дополнительная информация, относящаяся к игре или управлению (например, управляющие инструкции или количество жизней). Также могут быть использованы другие альтернативные или дополнительные управляющие устройства, такие как танцевальный мат (не показан), световое перо (не показано), рулевое колесо и педали (не показаны) или сделанные на заказ управляющие устройства, такие как одна или несколько кнопок больших размеров для игры-викторины с быстрыми ответами (также не показаны).
Удаленно расположенное устройство управления 2004 также во время работы способно взаимодействовать посредством беспроводного соединения с системным блоком 2000 с помощью подключения Bluetooth. Удаленно расположенное устройство управления 704 содержит устройства управления, которые подходят для работы с устройством чтения дисков Blu Ray™ BD-ROM 2040 и для просмотра содержимого диска.
Устройство чтения дисков Blu Ray™ BD-ROM 2040 в процессе работы способно читать диски CD-ROM, совместимые с устройствами Playstation и Playstation 2, в дополнение к традиционным предварительно записанным и перезаписываемым дискам CD, и так называемые диски Super Audio CD. Устройство чтения 2040 в процессе работы также может читать диски DVD-ROM, совместимые с устройствами Playstation 2 и Playstation 3, в дополнение к традиционным предварительно записанным и перезаписываемым дискам DVD. Устройство чтения 2040 дополнительно в процессе работы способно читать диски BD-ROM, совместимые с устройством Playstation 3, а также традиционные предварительно записанные и перезаписываемые диски Blu-Ray.
Системный блок 2000 в процессе работы способен подавать аудио- и видеосигналы, как созданные, так и декодированные устройством Playstation 3 с помощью блока графического процессора RSX 2030, через аудио- и видеоконнекторы на дисплей и устройство вывода звука 2042, такие как монитор или телевизионный приемник, имеющий дисплей 2044 и один или более громкоговорителей 2046. Аудиоконнекторы 2050 могут включать традиционные аналоговые и цифровые выходы, в то время как видеоконнекторы 2052 могут в разное время включать компонентный выход, S-video выход, композитный выход и один или более выходов Мультимедийного Интерфейса Высокого Разрешения (HDMI). Следовательно, выходной видеосигнал может иметь формат, такой как PAL или NTSC, или 720р, 1080i или 1080р высокого разрешения.
Обработка аудиосигнала (создание, декодирование и т.д.) осуществляется Cell-процессором 2028. Операционная система устройства Playstation 3 поддерживает звуковое окружение Dolby® 5.1, Dolby® Theatre Surround (DTS) и декодирование звукового окружения 7.1 дисков Blu-Ray®.
В настоящем варианте воплощения видеокамера 2012 содержит один прибор с зарядовой связью (ПЗС), светодиодный индикатор и оборудование для сжатия и кодирования данных в реальном времени на основе аппаратного обеспечения, так что сжатые видеоданные могут быть переданы в подходящем формате, таком как стандарт MPEG (motion picture expert group - экспертная группа по движущемуся изображению) на основе изображений с внутренним кодированием, для декодирования системным блоком 2000. Светодиодный индикатор камеры скомпонован так, чтобы светиться в ответ на получение соответствующих управляющих данных от системного блока 2000, например, с целью указания на неблагоприятные условия освещения. Варианты воплощения видеокамеры 2012 могут в разное время подключаться к системному блоку 700 посредством коммуникационного порта USB, Bluetooth или Wi-Fi. Варианты воплощения видеокамеры могут включать один или более связанных микрофонов и быть также способными к передаче аудиоданных. В вариантах воплощения видеокамеры ПЗС может иметь разрешение, подходящее для захвата видео с высоким разрешением. В процессе использования изображения, захваченные видеокамерой, могут, например, быть вставлены в игру или интерпретированы как входные игровые управляющие данные. В другом варианте воплощения камера является инфракрасной камерой, подходящей для детектирования инфракрасного излучения.
В общем случае для осуществления успешного обмена данными с периферийным устройством, таким как видеокамера или удаленно расположенное устройство управления, посредством одного из коммуникационных портов системного блока 2000 необходимо предоставить соответствующую часть программного обеспечения, такого как драйвер устройства. Технология использования драйверов устройств является хорошо известной и не будет подробно описана здесь, за исключением примечания о том, что специалисту будет известно, что в настоящем описанном варианте воплощения может требоваться драйвер устройства или подобный программный интерфейс.
Фигура 21 иллюстрирует дополнительное аппаратное оборудование, которое может использоваться для обработки инструкций, в соответствии с одним вариантом воплощения настоящего изобретения. Cell-процессор 2028 имеет архитектуру, содержащую четыре базовых компонента: внешние структуры ввода и вывода, содержащие контроллер памяти 2160 и контроллер интерфейса двойной шины 2170А, В; основной процессор, называемый Процессорным Элементом Power 2150; восемь сопроцессоров, называемых синергетическими процессорными элементами (СПЭ) 2110А-Н; и кольцевую шину данных, связывающую вышеуказанные компоненты, называемую соединительная шина элементов 2180. Общая производительность Cell-процессора при выполнении операций с плавающей точкой составляет 218 GFLOPS, по сравнению с 6.2 GFLOPS процессора Emotion Engine устройства Playstation 2.
Процессорный Элемент Power (PPE) 2150 выполнен на основе двухканального ядра PowerPC, обеспечивающего одновременную многозадачность, совместимого с Power 570 (PPU) 855, работающего на внутренней тактовой частоте 3,2 ГГц. Он содержит кеш-память второго уровня (L2) объемом 512 кБ и кеш-память первого уровня (L1) объемом 32 кБ. МПЭ 2150 способен осуществлять восемь отдельных позиционных операций за один период тактовой частоты, переводя до 25,6 GFLOPS на частоте 3,2 ГГц. Основной ролью МПЭ 2150 является работа в качестве управляющего устройства для синергетических процессорных элементов 2110А-Н, которые принимают на себя большую часть вычислительного объема работы. В процессе работы МПЭ 2150 поддерживает очередь работ, формируя график работ для синергетических процессорных элементов 2110A-H и осуществляя мониторинг за ходом их выполнения. Соответственно, каждый синергетический процессорный элемент 2110А-Н запускает ядро, роль которого состоит в получении работы, ее выполнении и синхронизации с МПЭ 2150.
Каждый синергетический процессорный элемент (СПЭ) 2110А-Н содержит соответствующий синергетический процессорный блок (СПБ) 2120А-Н и соответствующий контроллер потоков памяти (КПП) 2140А-Н, в свою очередь содержащий соответствующий контроллер доступа к динамической памяти (КДДП) 2142А-Н, соответствующий блок управления памятью (БУП) 2144А-Н и интерфейс шины (не показан). Каждый СПБ 2120А-Н является RISC-процессором с тактовой частотой 3,2 ГГц и содержит 256 кБ локальной оперативной памяти 2130А-Н, объем которой может быть, в принципе, расширен до 4 ГБ. Каждый СПЭ дает теоретическую величину производительности выполнения операций с одинарной точностью 25,6 GFLOPS. СПБ может произвести обработку 4 элементов с плавающей точкой с одинарной точностью, 4 32-битных чисел, 8 16-битных целых чисел или 16 8-битных целых чисел за один период тактовой частоты. За тот же период тактовой частоты он может также осуществить операцию в памяти. СПБ 2120А-Н не имеет непосредственного доступа к системной памяти XDRAM 2026; 64-битные адреса, сформированные СПБ 2120А-Н, передаются КПП 2140А-Н, которые дают инструкции своим контроллерам ДДП 2142А-Н на получение доступа к памяти через соединительную шину элементов 2180 и контроллер памяти 2160.
Соединительная шина элементов (СШЭ) 2180 является логически кольцевой коммуникационной шиной, внутренней по отношению к Cell-процессору 2028, которая соединяет вышеупомянутые элементы процессора, а именно: МПЭ 2150, контроллер памяти 2160, интерфейс двойной шины 2170А,В и 8 СПЭ 2110А-Н, что, в общем, составляет 12 элементов. Элементы могут одновременно осуществлять чтение или запись в шину на скорости 8 байт за период тактовой частоты. Как отмечается выше, каждый СПЭ 2110А-Н содержит КДДП 2142А-Н, предназначенный для составления графиков более длительных последовательностей чтения или записи. СШЭ содержит четыре канала, два в направлении по часовой стрелке и два в направлении против часовой стрелки. Следовательно, для двенадцати элементов наиболее длинный пошаговый поток данных между любыми двумя элементами составляет шесть шагов в соответствующем направлении. Теоретическая пиковая мгновенная пропускная способность СШЭ для 12 слотов составляет, следовательно, 96 Б за такт в случае полного использования через арбитраж между элементами. Это соответствует теоретической пиковой пропускной способности 307,2 ГБ/с (гигабайт за секунду) при тактовой частоте 3,2 ГГц.
Контроллер памяти 2160 содержит интерфейс XDRAM 2162, разработанный Rambus Incorporated. Контроллер памяти взаимодействует с Rambus XDRAM 2026 с теоретической пиковой пропускной способностью 25,6 ГБ/с.
Интерфейс двойной шины 2170А,В содержит системный интерфейс Rambus FlexIO® 2172А,В. Интерфейс разделен на 12 каналов, ширина каждого составляет 8 бит, при этом пять путей являются входящими, и семь - исходящими. Это обеспечивает теоретическую пиковую пропускную способность 62,4 ГБ/с (36,4 ГБ/с исходящая, 26 ГБ/с входящая) между Cell-процессором и мостом ввода/вывода 2034 посредством контроллера 2170А, и блоком графического процессора RSX 2130 посредством контроллера 2170В.
Данные, посылаемые Cell-процессором 2128 блоку графического процессора RSX 2130, будут, как правило, содержать дисплейные списки, которые являются последовательностью команд, предназначенных для рисования вершин, приложения текстур к многоугольникам, задания условий освещения и т.д.
Фигура 22 представляет примерную иллюстрацию сцен от А до Е, когда соответствующие пользователи от А до Е взаимодействуют с игровыми клиентами 2202, которые подключены к серверной обработке через сеть Интернет, в соответствии с одним вариантом воплощения настоящего изобретения. Игровой клиент является устройством, которое позволяет пользователям подключаться к серверным приложениям и обработке через сеть Интернет. Игровой клиент позволяет пользователям получать доступ и воспроизводить в онлайновом режиме развлекательное содержание, такое как игры, фильмы, музыку и фотографии, не ограничиваясь этим. Кроме того, игровой клиент может предоставлять доступ к онлайновым приложениям связи, таким как VOIP, протоколы текстового чата и электронная почта.
Пользователь взаимодействует с игровым клиентом посредством управляющего устройства. В некоторых вариантах воплощения управляющее устройство является специфическим для игрового клиента управляющим устройством, в то время как в других вариантах воплощения управляющее устройство может представлять собой сочетание клавиатуры и мыши. В одном варианте воплощения игровой клиент является автономным устройством, способным выводить аудио- и видеосигналы для создания мультимедийного окружения через монитор/телевизор и связанное с ними аудиооборудование. Например, игровой клиент может быть, не ограничиваясь этим, тонким клиентом, внутренней картой, подсоединяемой к шине PCI-express, внешним устройством, подсоединяемым к шине PCI-express, устройством, подсоединяемым через интерфейс ExpressCard, внутренним, внешним или беспроводным устройством USB или устройством, подсоединяемым к шине Firewire, и т.д. В других вариантах воплощения игровой клиент является интегрированным с телевизором или другим устройством мультимедиа, таким как DVR, проигрыватель Blu-Ray, проигрыватель DVD или многоканальный приемник.
В сцене А на Фигуре 22 пользователь А взаимодействует с клиентским приложением, выведенным на монитор 2204А, используя управляющее устройство 2206А, спаренное с игровым клиентом 2202А. Подобным образом в сцене В пользователь В взаимодействует с другим клиентским приложением, которое выведено на монитор 2204 В, используя управляющее устройство 2206 В, спаренное с игровым клиентом 2202 В. Сцена С иллюстрирует вид сзади пользователя С, когда он смотрит на монитор, на который выведена игра и список контактов от игрового клиента 2202С. В то время как Фигура 22 показывает односерверный модуль обработки в одном варианте воплощения, в мире существуют и многосерверные модули обработки. Каждый серверный модуль обработки включает подмодули управления пользовательской сессией, логические блоки совместного использования/взаимодействия, блоки определения географического местоположения пользователя и службу обработки выравнивания нагрузки. Более того, серверный модуль обработки включает сетевую обработку и распределенный носитель информации.
Когда игровой клиент 2202 подключается к серверному модулю обработки, устройство управления пользовательской сессией может быть использовано для аутентификации пользователя. Аутентифицированный пользователь может иметь связанный с ним виртуализированный распределенный носитель информации и виртуализированную сетевую обработку. Примерные элементы, которые могут храниться как часть пользовательского виртуализированного распределенного носителя информации, включают приобретенные медиа, такие как игры, видео и музыка, и т.д., но не ограничиваются ими. Кроме того, распределенный носитель информации может быть использован для сохранения статуса игры для коллективных игр, пользовательских настроек для отдельных игр и общих настроек для игрового клиента. В одном варианте воплощения модуль определения географического местоположения пользователя серверной обработки используется для определения географического местоположения пользователя и его соответствующего игрового клиента. Географическое местоположение пользователя может быть использовано как логическим блоком совместного использования/взаимодействия, так и службой обработки выравнивания нагрузки для оптимизации производительности на основе географического местоположения и требований, касающихся обработки, от нескольких серверных модулей обработки. Виртуализация сетевой обработки и сетевого хранения информации или чего-либо одного из них позволит динамически перемещать задания на обработку от игровых клиентов к не полностью загруженному серверному модулю(модулям) обработки. Таким образом, выравнивание нагрузки может быть использовано для минимизации времени ожидания, связанного как с выборкой информации из носителя информации, так и с передачей данных между серверными модулями обработки и игровыми клиентами.
Серверный модуль обработки имеет экземпляры класса серверного приложения А и серверного приложения В. Серверный модуль обработки способен поддерживать несколько серверных приложений, как указывается серверным приложением X1 и серверным приложением Х2. В одном варианте воплощения серверная обработка основывается на кластерной архитектуре вычислений, которая позволяет нескольким процессорам в пределах кластера осуществлять обработку серверных приложений. В другом варианте воплощения для обработки серверных приложений применяется иной тип схемы обработки с использованием нескольких компьютеров. Это позволяет масштабировать серверную обработку с целью согласования большего количества игровых клиентов, выполняющих несколько клиентских приложений, и соответствующих серверных приложений. Как вариант, серверная обработка может масштабироваться для согласования возросшей требуемой вычислительной мощности, необходимость которой обусловливается обработкой более требовательной к ресурсам графики или игрой, сжатием видео или сложностью приложения. В одном варианте воплощения серверный модуль обработки осуществляет большую часть обработок с помощью серверного приложения. Это позволяет относительно дорогостоящие компоненты, такие как графические процессоры, оперативные запоминающие устройства и процессоры общего назначения, размещать централизованно и приводит к уменьшению стоимости игрового клиента. Обработанные данные серверного приложения отправляются назад соответствующему игровому клиенту через сеть Интернет с их выводом на монитор.
Сцена С иллюстрирует примерное приложение, которое может выполняться игровым клиентом и серверным модулем обработки. Например, в одном варианте воплощения игровой клиент 2202С позволяет пользователю С создать и просматривать список контактов 2220, который включает пользователя А, пользователя В, пользователя D и пользователя Е. Как показано, в сцене С пользователь С может видеть на мониторе 2204С либо изображения в реальном времени, либо «аватары» соответствующего пользователя. Серверная обработка выполняет соответствующие приложения игрового клиента 2202С и с соответствующими игровыми клиентами 2202 пользователя А, пользователя В, пользователя D и пользователя Е. Поскольку серверная обработка имеет информацию о приложениях, выполняемых игровым клиентом В, в списке контактов для пользователя А может указываться, в какую игру играет пользователь В. Кроме того, в одном варианте воплощения пользователь А может просматривать актуальное в игре видео непосредственно от пользователя В. Это становится возможным, всего лишь посылая обработанные данные серверного приложения для пользователя В игровому клиенту А в дополнение к игровому клиенту В.
В дополнение к возможности просматривать видео из списка контактов приложение связи может обеспечить возможность в реальном времени связываться между собой членам списка контактов. Относительно предыдущего примера, это позволяет пользователю А осуществлять поддержку или давать подсказки при просмотре видео пользователя В в реальном времени. В одном варианте воплощения двухканальная голосовая связь в реальном времени устанавливается через приложение клиент/сервер. В другом варианте воплощения приложение клиент/сервер позволяет вести текстовый чат. Еще в другом варианте воплощения приложение клиент/сервер преобразовывает речь в текст для вывода на экран члена списка контактов.
Сцена D и сцена Е иллюстрируют соответствующих пользователя D и пользователя Е, взаимодействующих, соответственно, с игровыми приставками 2210D и 2210Е. Каждая игровая приставка 2210D и 2210Е подключена к серверному модулю обработки и иллюстрирует сеть, в которой серверные модули обработки осуществляют координацию игрового процесса как для игровых приставок, так и для игровых клиентов.
Фигура 23 иллюстрирует вариант воплощения архитектуры провайдера службы информации. Провайдер службы информации (ПСИ) 2370 осуществляет доставку множества информационных служб пользователям 2382, распределенных географически и связанных посредством сети 2386. ПСИ может осуществлять доставку только одного типа службы, такого как обновленные данные о курсах акций, или множества служб, таких как вещательные средства массовой информации, службы новостей, спорта, игры и т.д. Кроме того, службы, предлагаемые каждым ПСИ, являются динамическими, то есть службы могут быть добавлены или изъяты в любой момент времени. Таким образом, ПСИ, предоставляющий конкретный тип службы конкретной личности, может меняться со временем. Например, пользователь может обслуживаться ПСИ, находящимся в непосредственной близости к пользователю, когда пользователь находится в ее родном городе, и пользователь может обслуживаться другим ПСИ, когда пользователь переезжает в другой город. ПСИ родного города будет передавать требуемую информацию и данные новому ПСИ, так что информация для пользователя «следует» за пользователем в новый город, приближая данные к пользователю и приводя к большей простоте доступа к ним. В другом варианте воплощения может устанавливаться отношение мастер-сервер между ведущим ПСИ, который управляет информацией для пользователя, и серверным ПСИ, который непосредственно взаимодействует с пользователем под управлением ведущего ПСИ. В другом варианте воплощения данные передаются от одного ПСИ другому ПСИ по мере того, как клиент перемещается вокруг света, с той целью, чтобы ПСИ, который находится в лучшем расположении относительно пользователя, предоставлял эти службы.
ПСИ 2370 включает провайдер службы приложений (ПСП) 2372, который предоставляет компьютерные службы клиентам через сеть. Программное обеспечение, предлагаемое при использовании модели ПСП, также иногда называется программным обеспечением по запросу или программным обеспечением в виде службы (ПОввС). Простой формой предоставления доступа к конкретной программе-приложению (такой как управление взаимоотношениями с клиентами) является предоставление доступа с использованием стандартного протокола, такого как HTTP. Программное обеспечение приложения находится в системе продавца, и доступ пользователей к нему осуществляется посредством веб-браузера, используя HTML, с помощью специализированного клиентского программного обеспечения, предоставляемого продавцом, или другого удаленно расположенного интерфейса, такого как тонкий клиент.
Службы, доставляемые через обширную географическую область, часто используют облачные вычисления. Облачные вычисления являются стилем проведения вычислений, при котором динамически масштабируемые и часто виртуализированные ресурсы предоставляются через сеть Интернет в виде службы. Пользователи не имеют необходимости быть экспертами в технологической инфраструктуре в «облаке», которое поддерживает их. Облачные вычисления могут быть поделены на различные службы, такие как инфраструктура в виде службы (ИввС), платформа в виде службы (ПввС) и программное обеспечение в виде службы (ПОввС). Службы облачных вычислений часто предоставляют в онлайн-режиме бизнес-приложения общего назначения, доступ к которым осуществляется через веб-браузер, в то время как программное обеспечение и данные хранятся на серверах. Термин «облако» используется в качестве метафоры для сети Интернет, основываясь на том, как сеть Интернет изображается в компьютерных сетевых диаграммах, и является абстракцией для обозначения сложной инфраструктуры, которую он заключает в себе.
Кроме того, ПСИ 2370 включает сервер обработки игры (СОИ) 2374, который используется игровыми клиентами для игры в однопользовательские и многопользовательские видеоигры. Большинство видеоигр, игра в которые происходит через сеть Интернет, осуществляет работу посредством подключения к игровому серверу. Как правило, в играх используется специализированное серверное приложение, которое собирает данные от игроков и передает их другим игрокам. Это является более действенным и эффективным, чем децентрализованная организация, однако это требует отдельного сервера, на котором находится серверное приложение. В другом варианте воплощения СОИ устанавливает взаимодействие между игроками, и их соответствующие игровые устройства обмениваются информацией без обращения к централизованному СОИ.
Специализированные СОИ являются серверами, которые запускаются независимо от клиента. Такие серверы обычно запускаются на специализированном аппаратном оборудовании, расположенном в центрах обработки данных, предоставляя большую пропускную способность и специализированную мощность обработки. Специализированные серверы являются предпочтительным способом размещения игровых серверов для большинства многопользовательских игр на основе персонального компьютера. В широком масштабе многопользовательские онлайн-игры запускаются на специализированных серверах, обычно находящихся у компании, предоставляющей программное обеспечение, которая владеет названием игры, позволяя им управлять и обновлять содержание.
Сервер обработки вещания (СОВ) 2376 осуществляет распределение аудио- или видеосигналов аудитории. Вещание для очень узкой аудитории иногда называют узкой рассылкой. Заключительным этапом распределения вещания является то, как сигнал доходит до слушателя или зрителя, и он может приходить по воздуху, как это происходит в случае радиостанции или телевизионной станции, к антенне или приемнику или может приходить по телевизионному кабелю или кабельному радио (или «беспроводному кабелю») через станцию или непосредственно из сети. Через сеть Интернет адресат также может получать доступ к радио или телевидению, в частности, в случае группового вещания, обеспечивая возможность совместного использования сигнала и пропускной способности. Исторически вещание разграничено географическими областями, например, национальное вещание или региональное вещание. Однако с распространением скоростного доступа к сети Интернета вещание не определяется географиями, поскольку содержание может достичь почти любой страны мира.
Провайдер службы хранения информации (ПСХИ) 2378 предоставляет компьютерное пространство для хранения информации и соответствующие службы управления. ПСХИ также предлагают возможность периодического создания резервных копий и архивации. Имея предложение хранения информации, оформленное в виде службы, пользователи могут, при необходимости, заказать больший объем для хранения информации. Другим основным преимуществом является то, что ПСХИ включают услуги создания резервных копий, и пользователи не потеряют все свои данные, если в жестких дисках на их компьютерах случится сбой. Кроме того, множество ПСХИ могут иметь полные или частичные копии данных пользователей, что позволяет пользователям эффективно получать доступ к данным независимо от того, где находится пользователь или устройство, которое используется для получения доступа к данным. Например, пользователь может получить доступ к личным файлам на домашнем компьютере, а также с помощью мобильного телефона, когда пользователь находится в дороге.
Провайдер связи 380 предоставляет пользователям возможность подключения. Одним видом провайдера связи является провайдер службы Интернет (ПСИ), который предлагает доступ к сети Интернет. ПСИ осуществляет подключение своих клиентов, используя технологию передачи данных, которая подходит для доставки датаграмм интернет-протокола, такую как подключение по телефонной линии, цифровой абонентской линии (DSL), с помощью кабельного модема, беспроводных или специализированных высокоскоростных межсоединений. Провайдер связи также может предоставлять доступ к службам передачи сообщений, таким как электронная почта, посылка мгновенных сообщений и передача текстов SMS. Другим типом провайдера связи является провайдер службы сети (ПСС), который осуществляет продажу пропускной способности или доступа к сети путем предоставления прямого магистрального доступа к сети Интернет. Провайдеры службы сети могут состоять из телекоммуникационных компаний, телефонных компаний, провайдеров беспроводного соединения, провайдеров службы сети Интернет, операторов кабельного телевидения, предлагающих высокоскоростной доступ к сети Интернет, и т.д.
Обмен данными 2388 соединяет между собой несколько модулей внутри ПСИ 2370 и соединяет эти модули с пользователями 2382 посредством сети 2386. Обмен данными 2388 может покрывать малую область, в которой все модули ПСИ 2370 находятся в непосредственной близости друг от друга, или может покрывать обширную географическую область, в которой различные модули географически рассеяны. Например, обмен данными 2388 может включать быстрый гигабитный Ethernet (или еще более быстрый) в пределах стойки центра обработки данных или интерконтинентальную виртуальную сеть (VLAN).
Пользователи 2382 получают доступ к удаленным службам с помощью клиентского устройства 2384, которое включает по меньшей мере ЦПУ, дисплей и устройство ввода/вывода. Клиентское устройство может быть персональным компьютером, мобильным телефоном, нетбуком, карманной электронной записной книжкой и т.д. В одном варианте воплощения ПСИ 2370 распознает тип устройства, используемого клиентом, и подбирает применяемый способ взаимодействия. В других случаях клиентские устройства используют стандартный способ взаимодействия, такой как html, для получения доступа к ПСИ 2370.
Варианты воплощения настоящего изобретения могут быть воплощены на практике с различными конфигурациями компьютерной системы, включая карманные устройства, микропроцессорные системы, бытовые электронные приборы на основе микропроцессоров или программируемые, мини-компьютеры, большие электронно-вычислительные машины и тому подобное. Изобретение также может быть воплощено на практике в распределенных вычислительных средах, в которых задания выполняются удаленно расположенными устройствами обработки, которые подключены посредством кабельной или беспроводной сети.
С учетом указанных выше вариантов воплощения следует понимать, что в изобретении могут применяться различные реализуемые на компьютере операции, использующие данные, хранимые в компьютерных системах. Данные операции являются теми, для которых требуется физическая манипуляция физическими величинами. Любые из операций, описанных здесь, которые составляют часть изобретения, являются полезными машинными операциями. Изобретение также относится к устройству или оборудованию для осуществления данных операций. Оборудование может быть специальным образом сконструировано для требуемой цели или оборудование может быть компьютером общего назначения, селективно приведенным в действие или сконфигурированным с помощью компьютерной программы, хранящейся в компьютере. В частности, различные машины общего назначения могут быть использованы вместе с компьютерными программами, написанными в соответствии с основными теоретическими принципами, представленными здесь, или может быть более удобным сконструировать более специализированное оборудование для осуществления требуемых операций.
Изобретение также может быть воплощено в виде машиночитаемого кода на машиночитаемом носителе информации. Машиночитаемый носитель информации является любым устройством хранения информации, на котором могут храниться данные, которые могут затем быть прочитаны компьютерной системой. Примеры машиночитаемого носителя информации включают жесткие диски, устройства хранения данных, подключаемые к сети (УХДПС), постоянные запоминающие устройства, устройства памяти с произвольным доступом, диски CD-ROM, диски CD-R, диски CD-RW, магнитные ленты и другие оптические и неоптические устройства хранения данных. Машиночитаемый носитель информации может включать машиночитаемый материальный носитель информации, распределенный в подключенной к сети компьютерной системе, так что машиночитаемый код хранится и выполняется в распределенном виде.
Хотя способ действий был описан в определенном порядке, следует понимать, что другие служебные операции могут осуществляться между операциями, или операции могут подбираться таким образом, что они выполняются в слегка различающиеся моменты времени, или могут быть распределены в системе, что позволяет осуществлять операции обработки с различными интервалами, связанными с обработкой, при условии, что обработка оверлейных операций выполняется желаемым способом.
Хотя вышеописанное изобретение было описано в некоторых деталях в целях ясности понимания, будет очевидно, что некоторые изменения и модификации могут быть воплощены на практике в пределах объема приложенной формулы изобретения. Соответственно, настоящие варианты воплощения следует рассматривать как иллюстративные, а не ограничивающие, и изобретение не должно ограничиваться деталями, представленными здесь, но может быть модифицировано в рамках объема и эквивалентов приложенной формулы изобретения.