(57)【要約】      （修正有）【課題】仮想現実コンテンツのビデオレンダリング速度の調整および立体画像の処理を提供する。【解決手段】コンピューティングデバイス上に提供される仮想現実アプリケーションによって、第１の更新レートでコンピューティングデバイスの画面上の画像全体を更新することに基づいて第１のビデオレンダリング速度でビデオレンダリングを実行し５１０、ビデオレンダリングの性能が閾値未満であると判断し５２０、当該判断に基づいて、第１の更新レートで画像の第１の部分を更新することによって、かつ、第１の更新レート未満の第２の更新レートで画像の第２の部分を更新することによって、第２のビデオレンダリング速度でビデオレンダリングを実行する５３０。また、瞬目期間中に、左眼画像および右眼画像の一方または両方を移動させて、左に見えるオブジェクトと右に見えるオブジェクトとの間の視差を減少させる。【選択図】図５
2020174384.tif 000002
【特許請求の範囲】
【請求項１】
非一時的なコンピュータ読取可能な記憶媒体上に記憶される命令を実行するためのコンピュータによって実行される方法であって、前記方法は、
コンピューティングデバイス上に提供される仮想現実アプリケーションによって、第１の更新レートで前記コンピューティングデバイスの画面上の画像全体を更新することに基づいて第１のビデオレンダリング速度でビデオレンダリングを実行することと、
前記ビデオレンダリングの性能が閾値未満であると判断することと、
前記判断に基づいて、前記第１の更新レートで前記画像の第１の部分を更新することによって、かつ前記第１の更新レート未満の第２の更新レートで前記画像の第２の部分を更新することによって、第２のビデオレンダリング速度でビデオレンダリングを実行することとを備える、方法。
【請求項２】
前記第２のビデオレンダリング速度でビデオレンダリングを実行することは、
前記判断に基づいて、前記第１の更新レートで前記画像の中央部を更新することによって、かつ前記第１の更新レート未満の第２の更新レートで前記画像の周辺部を更新することによって、第２のビデオレンダリング速度でビデオレンダリングを実行することを含む、請求項１に記載の方法。
【請求項３】
前記ビデオレンダリングを実行することは、
前記判断に基づいて、前記第１の更新レートおよび第１の画像解像度で前記画像の中央部を更新することによって、かつ前記第２の更新レートおよび前記第１の画像解像度未満の第２の画像解像度で前記画像の周辺部を更新することによって、第２のビデオレンダリング速度でビデオレンダリングを実行することを含み、前記第２の更新レートは前記第１の更新レート未満である、請求項２に記載の方法。
【請求項４】
前記第２のビデオレンダリング速度でビデオレンダリングを実行することは、１つ以上の表示フレームを表示するために用いられることになる前記画面内の画素の数を調整することをさらに含む、請求項１から３のいずれか１項に記載の方法。
【請求項５】
前記第２のビデオレンダリング速度でビデオレンダリングを実行することは、１つ以上の表示フレームを前記画面に表示するための表示フレームまたは画像解像度を調整することをさらに含む、請求項１から４のいずれか１項に記載の方法。
【請求項６】
前記コンピューティングデバイスのコンピューティングリソースを、前記コンピューティングデバイス上で実行される１つ以上の非仮想現実アプリケーションから前記仮想現実アプリケーションに割当てることをさらに備える、請求項１から５のいずれか１項に記載の方法。
【請求項７】
前記コンピューティングデバイスのユーザの瞬目期間の開始を検出することと、
前記検出に応答して、前記瞬目期間の少なくとも一部にわたって、コンピューティングリソースを、前記仮想現実アプリケーションから前記コンピューティングデバイス上で実行される１つ以上の非仮想現実アプリケーションに割当てることとをさらに備える、請求項１から６のいずれか１項に記載の方法。
【請求項８】
前記画面の移動を検出することと、
前記検出の後の少なくともある期間にわたって、１つ以上の表示フレームを前記画面に表示するための視野を調整することとをさらに備える、請求項１から７のいずれか１項に記載の方法。
【請求項９】
コンピュータによって実行される方法であって、
符号化ビデオ信号を受信することと、
コンピューティングデバイス上に提供される仮想現実アプリケーションによって、前記符号化ビデオ信号に基づいてビデオレンダリングを実行して第１のセットの表示フレームを前記コンピューティングデバイスの画面に表示することと、
前記コンピューティングデバイスのユーザの瞬目期間の開始を検出することと、
前記瞬目期間の少なくとも一部にわたって、コンピューティングリソースを、前記仮想現実アプリケーションから前記コンピューティングデバイス上で実行される１つ以上の非仮想現実アプリケーションに割当てることとを備える、方法。
【請求項１０】
前記仮想現実アプリケーションによって、前記瞬目期間の少なくとも一部にわたってビデオレンダリングを停止することと、
前記コンピューティングデバイス上で実行される１つ以上の非仮想現実アプリケーションによって、前記瞬目期間の少なくとも一部の間に１つ以上の非ビデオレンダリングタスクを実行することとをさらに備える、請求項９に記載の方法。
【請求項１１】
前記仮想現実アプリケーションによって、前記瞬目期間の少なくとも一部にわたってビデオレンダリング速度を減少させることと、
前記瞬目期間の少なくとも一部にわたって、少なくともいくらかのコンピューティングリソースを、前記仮想現実アプリケーションから前記コンピューティングデバイス上で実行される１つ以上の非仮想現実アプリケーションに割当てることと、
前記コンピューティングデバイス上で実行される前記１つ以上の非仮想現実アプリケーションによって、前記瞬目期間の少なくとも一部の間に１つ以上の非ビデオレンダリングタスクを実行することとをさらに備える、請求項９から１０のいずれか１項に記載の方法。
【請求項１２】
前記瞬目期間の終わりにまたは終わり間近に、
少なくともいくらかのコンピューティングリソースを、前記コンピューティングデバイス上で実行される前記１つ以上の非仮想現実アプリケーションから前記仮想現実アプリケーションに再割当てすること、および
前記仮想現実アプリケーションによってビデオレンダリング速度を増加させること
の１つ以上を実行することをさらに備える、請求項１１に記載の方法。
【請求項１３】
非一時的なコンピュータ読取可能な記憶媒体上に記憶される命令を実行するためのコンピュータによって実行される方法であって、前記方法は、
コンピューティングデバイス上に提供される仮想現実アプリケーションによって、第１の更新レートで前記コンピューティングデバイスの画面上の画像全体を更新することに基づいて第１のビデオレンダリング速度でビデオレンダリングを実行することと、
前記画面の移動を検出することと、
前記検出に基づいて、前記第１の更新レートで前記画像の第１の部分を更新することによって、かつ前記第１の更新レートと異なる第２の更新レートで前記画像の第２の部分を更新することによって、第２のビデオレンダリング速度でビデオレンダリングを実行することとを備える、方法。
【請求項１４】
前記第２のビデオレンダリング速度でビデオレンダリングを実行することは、
前記判断に基づいて、前記第１の更新レートで前記画像の中央部を更新することによって、かつ前記第１の更新レート未満の第２の更新レートで前記画像の周辺部を更新することによって、第２のビデオレンダリング速度でビデオレンダリングを実行することを含む、請求項１３に記載の方法。
【請求項１５】
前記第２のビデオレンダリング速度でビデオレンダリングを実行することは、
前記検出に基づいて、前記第１の更新レートおよび第１の画像解像度で前記画像の中央部を更新することによって、かつ前記第２の更新レートおよび前記第１の画像解像度未満の第２の画像解像度で前記画像の周辺部を更新することによって、第２のビデオレンダリング速度でビデオレンダリングを実行することを含み、前記第２の更新レートは前記第１の更新レート未満である、請求項１３から１４のいずれか１項に記載の方法。
【請求項１６】
前記第２のビデオレンダリング速度でビデオレンダリングを実行することは、
前記検出に基づいて、第１の解像度で前記画像の第１の部分を更新することによって、かつ前記第１の解像度と異なる第２の解像度で前記画像の第２の部分を更新することによって、第２のビデオレンダリング速度でビデオレンダリングを実行することを含む、請求項１３から１５のいずれか１項に記載の方法。
【請求項１７】
非一時的なコンピュータ読取可能な記憶媒体上に記憶される命令を実行するためのコンピュータによって実行される方法であって、前記方法は、
右眼画像および左眼画像を含む立体画像をコンピューティングデバイスの画面に表示することを備え、前記左眼画像および前記右眼画像の各々は１つ以上のオブジェクトを表わしており、前記方法はさらに、
前記コンピューティングデバイスのユーザから見える、見えるオブジェクトを判定することを備え、前記見えるオブジェクトは、前記左眼画像の一部である左に見えるオブジェクト、および前記右眼画像の一部である右に見えるオブジェクトを含み、前記方法はさらに、
前記左に見えるオブジェクトと前記右に見えるオブジェクトとの間の視差を測定することと、
前記コンピューティングデバイスのユーザの瞬目期間の開始を検出することと、
前記瞬目期間中に、前記左眼画像および前記右眼画像の一方または両方を移動させて、前記左に見えるオブジェクトと前記右に見えるオブジェクトとの間の前記視差を減少させることとを備える、方法。
【請求項１８】
前記移動させることは、
前記瞬目期間中に、前記左眼画像および前記右眼画像の一方または両方を移動させて、前記左に見えるオブジェクトと前記右に見えるオブジェクトとの間の前記視差を除去することを含む、請求項１７に記載の方法。
【請求項１９】
前記移動させることは、
前記瞬目期間の前に、前記左眼画像および前記右眼画像の一方または両方の移動を開始して、前記左に見えるオブジェクトと前記右に見えるオブジェクトとの間の前記視差を減少させることと、
前記瞬目期間中に、前記左眼画像および前記右眼画像の一方または両方の移動を継続して、前記左に見えるオブジェクトと前記右に見えるオブジェクトとの間の前記視差をさらに減少させることとを含む、請求項１７から１８のいずれか１項に記載の方法。
【請求項２０】
前記移動させることは、
前記瞬目期間の前に、前記左眼画像および前記右眼画像の一方または両方を第１の移動速度で移動させて、前記左に見えるオブジェクトと前記右に見えるオブジェクトとの間の前記視差を減少させることと、
前記瞬目期間中に、前記左眼画像および前記右眼画像の一方または両方の第２の移動速度での移動を継続して、前記左に見えるオブジェクトと前記右に見えるオブジェクトとの間の前記視差をさらに減少させることとを含み、前記第２の移動速度は前記第１の移動速度よりも速い、請求項１７から１９のいずれか１項に記載の方法。
【請求項２１】
前記ユーザのどちらの眼が非優位眼であるかを判断することと、
非瞬目期間中に、前記ユーザの非優位眼の画像のみを移動させて、前記左に見えるオブジェクトと前記右に見えるオブジェクトとの間の前記視差を減少させることとをさらに備える、請求項１７から２０のいずれか１項に記載の方法。
【発明の詳細な説明】
【技術分野】
【０００１】
関連出願との相互参照
本願は、２０１５年１２月２２日に出願された米国出願番号第１４／９７８，３２０号の継続出願であって当該米国出願に基づく優先権を主張し、当該米国出願の開示全体を引用により含むものである。
【０００２】
本説明は画像処理および仮想現実コンテンツのレンダリングに関し、特に、レンダリング性能に基づく仮想現実コンテンツのビデオレンダリング速度の調整および立体画像の処理に関連した技術に関する。
【背景技術】
【０００３】
背景
ビデオレンダリングを実行すると大量のコンピューティングリソースが消費され得る。場合によっては、コンピューティングデバイス上で実行される多数のアプリケーションがコンピューティングリソースを共有し得、これによって１つ以上のアプリケーションの性能が低下し得る。
【発明の概要】
【発明が解決しようとする課題】
【０００４】
また、現実世界では、調節デマンドと輻輳デマンドとの間に矛盾はめったにない。しかし、画面に表示されるＶＲ（仮想現実）画像または立体画像については、調節デマンドと輻輳デマンドとの間に差異または矛盾がある場合がある。表示画面については、ユーザの眼が表示画面上に合焦しているため、調節デマンドは典型的に固定されている（たとえば、眼から画面までの距離が固定されている）。しかし、場合によっては、立体画像の左に見える画像と右に見える画像との間の視差（または距離または分離）が不定の輻輳デマンドを作り出す場合があり、場合によっては、この輻輳デマンドは調節デマンドと異なり得る。調節デマンドと輻輳デマンドとの間のこの矛盾はユーザの眼精疲労を引起こし得る。
【課題を解決するための手段】
【０００５】
要約
例示的な実現例によると、非一時的なコンピュータ読取可能な記憶媒体上に記憶される命令を実行するためのコンピュータによって実行される方法が提供され、当該方法は、コンピューティングデバイス上に提供される仮想現実アプリケーションによって、ある更新レートでコンピューティングデバイスの画面上の画像全体を更新することに基づいて第１のビデオレンダリング速度でビデオレンダリングを実行することと、ビデオレンダリングの性能が閾値未満であると判断することと、当該判断に基づいて、当該更新レートで画像の一部のみを更新することによって第２のビデオレンダリング速度でビデオレンダリングを実行することとを含む。
【０００６】
例示的な実現例によると、非一時的なコンピュータ読取可能な記憶媒体上に記憶される命令を実行するためのコンピュータによって実行される方法が提供され、当該方法は、コンピューティングデバイス上に提供される仮想現実アプリケーションによって、第１の更新レートでコンピューティングデバイスの画面上の画像全体を更新することに基づいて第１のビデオレンダリング速度でビデオレンダリングを実行することと、ビデオレンダリングの性能が閾値未満であると判断することと、当該判断に基づいて、第１の更新レートで画像の第１の部分を更新することによって、かつ第１の更新レート未満の第２の更新レー
トで画像の第２の部分を更新することによって、第２のビデオレンダリング速度でビデオレンダリングを実行することとを含む。
【０００７】
例示的な実現例によると、非一時的なコンピュータ読取可能な記憶媒体上に記憶される命令を実行するためのコンピュータによって実行される方法が提供され、当該方法は、コンピューティングデバイス上に提供される仮想現実アプリケーションによって、第１のビデオレンダリング速度でビデオレンダリングを実行することと、ビデオレンダリングの性能が閾値未満であると判断することと、当該判断に基づいて、第１の解像度で画像の第１の部分を更新することによって、かつ第１の解像度と異なる第２の解像度で画像の第２の部分を更新することによって、第２のビデオレンダリング速度でビデオレンダリングを実行することとを含む。
【０００８】
例示的な実現例によると、非一時的なコンピュータ読取可能な記憶媒体上に記憶される命令を実行するためのコンピュータによって実行される方法が提供され、当該方法は、符号化ビデオ信号を受信することと、コンピューティングデバイス上に提供される仮想現実アプリケーションによって、符号化ビデオ信号に基づいて第１のビデオレンダリング速度でビデオレンダリングを実行して第１のセットの表示フレームをコンピューティングデバイスの画面に表示することと、第１のセットの表示フレームを表示するビデオレンダリングの性能を測定することと、測定したビデオレンダリングの性能に基づいて、第２のセットの表示フレームを表示するために用いられることになる画面の一部を少なくとも調整することに基づいて第２のビデオレンダリング速度を求めることと、符号化ビデオ信号に基づいて第２のビデオレンダリング速度でビデオレンダリングを実行して第２のセットの表示フレームを画面の調整部分上に表示することとを含む。
【０００９】
例示的な実現例によると、装置は、少なくとも１つのプロセッサと、コンピュータ命令を含む少なくとも１つのメモリとを含み得、当該命令は、当該少なくとも１つのプロセッサによって実行されると、当該装置に、符号化ビデオ信号を受信させ、コンピューティングデバイス上に提供される仮想現実アプリケーションによって、符号化ビデオ信号に基づいて第１のビデオレンダリング速度でビデオレンダリングを実行させて第１のセットの表示フレームをコンピューティングデバイスの画面に表示させ、第１のセットの表示フレームを表示するビデオレンダリングの性能を測定させ、測定したビデオレンダリングの性能に基づいて、第２のセットの表示フレームを表示するために用いられることになる画面の一部を少なくとも調整することに基づいて第２のビデオレンダリング速度を求めさせ、符号化ビデオ信号に基づいて第２のビデオレンダリング速度でビデオレンダリングを実行させて第２のセットの表示フレームを画面の調整部分上に表示させる。
【００１０】
例示的な実現例によると、方法は、符号化ビデオ信号を受信することと、コンピューティングデバイス上に提供される仮想現実アプリケーションによって、符号化ビデオ信号に基づいてビデオレンダリングを実行して第１のセットの表示フレームをコンピューティングデバイスの画面に表示することと、コンピューティングデバイスのユーザの瞬目期間の開始を検出することと、瞬目期間の少なくとも一部にわたって、コンピューティングリソースを、仮想現実アプリケーションからコンピューティングデバイス上で実行される１つ以上の非仮想現実アプリケーションに割当てることとを含み得る。
【００１１】
例示的な実現例によると、装置は、少なくとも１つのプロセッサと、コンピュータ命令を含む少なくとも１つのメモリとを含み得、当該命令は、当該少なくとも１つのプロセッサによって実行されると、当該装置に、符号化ビデオ信号を受信させ、コンピューティングデバイス上に提供される仮想現実アプリケーションによって、符号化ビデオ信号に基づいてビデオレンダリングを実行させて第１のセットの表示フレームをコンピューティングデバイスの画面に表示させ、コンピューティングデバイスのユーザの瞬目期間の開始を検
出させ、瞬目期間の少なくとも一部にわたって、コンピューティングリソースを、仮想現実アプリケーションからコンピューティングデバイス上で実行される１つ以上の非仮想現実アプリケーションに割当てさせる。
【００１２】
例示的な実現例によると、非一時的なコンピュータ読取可能な記憶媒体上に記憶される命令を実行するためのコンピュータによって実行される方法が提供され、当該方法は、コンピューティングデバイス上に提供される仮想現実アプリケーションによって、ある更新レートでコンピューティングデバイスの画面上の画像全体を更新することに基づいて第１のビデオレンダリング速度でビデオレンダリングを実行することと、画面の動きまたは移動を検出することと、当該検出に基づいて、当該更新レートで画像の一部のみを更新することによって第２のビデオレンダリング速度でビデオレンダリングを実行することとを含む。
【００１３】
例示的な実現例によると、非一時的なコンピュータ読取可能な記憶媒体上に記憶される命令を実行するためのコンピュータによって実行される方法が提供され、当該方法は、コンピューティングデバイス上に提供される仮想現実アプリケーションによって、第１の更新レートでコンピューティングデバイスの画面上の画像全体を更新することに基づいて第１のビデオレンダリング速度でビデオレンダリングを実行することと、画面の動きまたは移動を検出することと、当該検出に基づいて、第１の更新レートで画像の第１の部分を更新することによって、かつ第１の更新レートと異なる第２の更新レートで画像の第２の部分を更新することによって、第２のビデオレンダリング速度でビデオレンダリングを実行することとを含む。
【００１４】
例示的な実現例によると、非一時的なコンピュータ読取可能な記憶媒体上に記憶される命令を実行するためのコンピュータによって実行される方法が提供され、当該方法は、コンピューティングデバイス上に提供される仮想現実アプリケーションによって、第１のビデオレンダリング速度でビデオレンダリングを実行することと、画面の動きまたは移動を検出することと、当該検出に基づいて、第１の解像度で画像の第１の部分を更新することによって、かつ第１の解像度と異なる第２の解像度で画像の第２の部分を更新することによって、第２のビデオレンダリング速度でビデオレンダリングを実行することとを含む。
【００１５】
別の例示的な実現例によると、方法は、符号化ビデオ信号を受信することと、コンピューティングデバイス上に提供される仮想現実アプリケーションによって、符号化ビデオ信号に基づいてビデオレンダリングを実行して仮想現実コンテンツの第１のセットの表示フレームをコンピューティングデバイスの画面に表示することと、コンピューティングデバイスの動きまたは移動を検出することと、動きまたは移動を検出したことに応答して、少なくともある期間にわたって、仮想現実コンテンツの１つ以上の表示フレームを画面に表示するためのフレームレートを調整することとを含み得る。
【００１６】
別の例示的な実現例によると、装置は、少なくとも１つのプロセッサと、コンピュータ命令を含む少なくとも１つのメモリとを含み得、当該命令は、当該少なくとも１つのプロセッサによって実行されると、当該装置に、符号化ビデオ信号を受信させ、コンピューティングデバイス上に提供される仮想現実アプリケーションによって、符号化ビデオ信号に基づいてビデオレンダリングを実行させて仮想現実コンテンツの第１のセットの表示フレームをコンピューティングデバイスの画面に表示させ、コンピューティングデバイスの動きまたは移動を検出させ、動きまたは移動を検出したことに応答して、少なくともある期間にわたって、仮想現実コンテンツの１つ以上の表示フレームを画面に表示するためのフレームレートを調整させる。
【００１７】
別の例示的な実現例によると、方法は、右眼画像および左眼画像を含む立体画像をコン
ピューティングデバイスの画面に表示することを含み、左眼画像および右眼画像の各々は１つ以上のオブジェクトを表わしており、当該方法はさらに、コンピューティングデバイスのユーザから見える、見えるオブジェクトを判定することを含み、見えるオブジェクトは、左眼画像の一部である左に見えるオブジェクト、および右眼画像の一部である右に見えるオブジェクトを含み、当該方法はさらに、左に見えるオブジェクトと右に見えるオブジェクトとの間の視差を測定することと、コンピューティングデバイスのユーザの瞬目期間の開始を検出することと、瞬目期間中に、左眼画像および右眼画像の一方または両方を移動させて、左に見えるオブジェクトと右に見えるオブジェクトとの間の視差を減少させることとを含む。
【００１８】
別の例示的な実現例によると、装置は、少なくとも１つのプロセッサと、コンピュータ命令を含む少なくとも１つのメモリとを含み得、当該命令は、当該少なくとも１つのプロセッサによって実行されると、当該装置に、右眼画像および左眼画像を含む立体画像をコンピューティングデバイスの画面に表示させ、左眼画像および右眼画像の各々は１つ以上のオブジェクトを表わしており、当該命令は当該装置にさらに、コンピューティングデバイスのユーザから見える、見えるオブジェクトを判定させ、見えるオブジェクトは、左眼画像の一部である左に見えるオブジェクト、および右眼画像の一部である右に見えるオブジェクトを含み、当該命令は当該装置にさらに、左に見えるオブジェクトと右に見えるオブジェクトとの間の視差を測定させ、コンピューティングデバイスのユーザの瞬目期間の開始を検出させ、瞬目期間中に、左眼画像および右眼画像の一方または両方を移動させて、左に見えるオブジェクトと右に見えるオブジェクトとの間の視差を減少させる。
【００１９】
１つ以上の実現例の詳細を添付の図面および以下の説明に述べる。他の特徴は当該説明および図面から、かつ請求項から明らかになるであろう。
【図面の簡単な説明】
【００２０】
【図１】例示的な実現例に係るシステムを示すブロック図である。
【図２】例示的な実現例に係る、フレームを表示するために用いられる表示画面１３０の一部が調整され得る当該表示画面の図である。
【図３】例示的な実現例に係るコンピューティングデバイスの動作を示すフローチャートの図である。
【図４】例示的な実現例に係るコンピューティングデバイスの動作を示すフローチャートの図である。
【図５】別の例示的な実現例に係るコンピューティングデバイスの動作を示すフローチャートの図である。
【図６】別の例示的な実現例に係るコンピューティングデバイスの動作を示すフローチャートの図である。
【図７】例示的な実現例に係るコンピューティングデバイスのブロック図である。
【図８】例示的な実現例に係るコンピューティングデバイスの動作を示すフローチャートの図である。
【図９】例示的な実現例に係るコンピューティングデバイスの動作を示すフローチャートの図である。
【図１０】別の例示的な実現例に係るコンピューティングデバイスの動作を示すフローチャートの図である。
【図１１】別の例示的な実現例に係るコンピューティングデバイスの動作を示すフローチャートの図である。
【図１２】別の例示的な実現例に係るコンピューティングデバイスの動作を示すフローチャートの図である。
【図１３】例示的な実現例に係る調節デマンドと輻輳デマンドとの間の例示的な矛盾を示す図である。
【図１４】例示的な実現例に係る、見えるオブジェクトについての調節デマンドと輻輳デマンドとの間の矛盾が減少したかまたは除去された例を示す図である。
【図１５】例示的な実現例に係るコンピューティングデバイスの動作を示すフローチャートの図である。
【図１６】本明細書に記載の技術とともに用いられ得る、一般的なコンピュータデバイスおよび一般的なモバイルコンピュータデバイスの例を示す図である。
【発明を実施するための形態】
【００２１】
詳細な説明
図１は、例示的な実現例に係るシステム１００を示すブロック図である。図１を参照して、オーディオ／ビデオソース１０６がオーディオ信号およびビデオ信号を生成して出力し得、当該信号はネットワーク１０４を介して１つ以上のコンピューティングデバイスに分散または送信され得る。例示的な実現例では、オーディオ／ビデオソース１０６が出力するオーディオ／ビデオ信号は、１つ以上のコンピューティングデバイスにストリームまたは配信される仮想現実（ＶＲ）コンテンツの一部として提供され得る。説明的かつ例示的な実現例によると、没入型マルチメディアまたはコンピュータシミュレートされた生活とも称され得る仮想現実（ＶＲ）は、少なくともいくつかの場合、現実世界または想像上の世界もしくは環境のさまざまな場所に環境または物理的存在をさまざまな程度に複製またはシミュレートし得る。ネットワーク１０４は、インターネット、ローカルエリアネットワーク（ＬＡＮ）、無線ローカルエリアネットワーク（ＷＬＡＮ）、および／またはその他のネットワークであり得る。コンピューティングデバイス１０５はたとえばオーディオ／ビデオ信号を受信し得、当該信号は説明的かつ例示的な実現例ではＶＲコンテンツの一部として提供され得る。
【００２２】
さまざまな例示的な実現例では、コンピューティングデバイス１０５はたとえばＶＲグラスまたはＶＲゴーグル１１０を含み得、これは、たとえば、ユーザが表示画面上で仮想現実コンテンツ（たとえばＶＲコンテンツからレンダリングされた表示画像）を見ることができ、たとえばスピーカ上で仮想現実コンテンツから音声を聞くことができるようにすることによって、仮想現実（ＶＲ）体験をユーザに提供し得る。説明的かつ例示的な実現例では、ＶＲゴーグル１１０は、典型的にユーザの左眼によって見られ得る左眼画像、および典型的にユーザの右眼によって見られ得る右眼画像を含む立体画像を表示し得る。コンピューティングデバイス１０５は、たとえば、モバイルデバイス１０８、ラップトップ、ノートブック、ＰＣ、コンピュータ、ポータブルもしくはハンドヘルドコンピュータもしくはコンピューティングデバイス、またはその他のコンピューティングデバイスも含み得る。モバイルデバイス１０８は、たとえば、携帯電話、スマートフォン、ＰＤＡ（携帯情報端末）、または他のモバイルコンピューティングデバイスを含み得る。例示的な実現例では、コンピューティングデバイス１０５は、ＶＲコンテンツをユーザに提供または出力しつつ、並行して１つ以上の非ＶＲアプリケーションを動作させるように構成され得るモバイルデバイス（たとえばスマートフォン）であり得る。
【００２３】
コンピューティングデバイス１０５は、たとえば、命令またはソフトウェアを実行するかまたは動作させるためのプロセッサと、命令およびデータを記憶するためのメモリと、表示フレームまたは画像もしくは他の情報を表示または出力するための表示画面１３０（たとえばタッチセンシティブスクリーンまたはタッチスクリーンであり得る）と、スピーカおよびマイクロフォンおよびまたは他の入出力デバイスとを含み得る。コンピューティングデバイス１０５のプロセッサ／ＣＰＵおよびメモリは、図１ではコンピューティングリソース１３２として示され得る。コンピューティングリソース１３２は、命令を実行するかもしくはデータを処理するＣＰＵサイクルなどのＣＰＵもしくはプロセッサリソースと、および／または命令もしくはデータを記憶するコンピュータメモリと、付加的なコンピューティングリソースとを含み得る。
【００２４】
図１を参照して、コンピューティングデバイス１０５はＶＲアプリケーション１２０を含み得、ＶＲアプリケーション１２０は、オーディオ／ビデオソース１０６から信号を受信し得、表示画面１３０、スピーカ（図示せず）、または他の出力デバイスなどのコンピューティングデバイス１０５の１つ以上の出力デバイスを介してＶＲコンテンツをユーザに提示または提供し得る。表示画面１３０は、たとえば、ＬＣＤ（液晶ディスプレイ）画面、タッチスクリーン、またはたとえば画像もしくは情報をユーザに表示するためのその他の画面もしくはディスプレイを含み得る。コンピューティングデバイス１０５は、コンピューティングデバイス１０５および／もしくは表示画面１３０の動きもしくは移動または加速を検出し得るたとえば加速度計またはその他のセンサなどの、コンピューティングデバイス１０５の動きまたは移動を検出する１つ以上のセンサ１２８も含み得る。
【００２５】
ＶＲアプリケーション１２４は、たとえばオーディオ／ビデオコンテンツをコンピューティングデバイス１０５上にレンダリングするためのＶＲレンダリングモジュール１２２と、ＶＲレンダリングモジュール１２２および／またはＶＲアプリケーション１２０の動作を制御するための制御モジュール１２４とを含み得る。ＶＲレンダリングモジュール１２２はオーディオ／ビデオソース１０６からオーディオ／ビデオ信号を受信し得、仮想現実コンテンツのオーディオレンダリングおよび／またはビデオレンダリングを実行し得る。たとえば、ＶＲレンダリングモジュール１２２はＶＲコンテンツのオーディオ信号を受信し得、コンピューティングデバイス１０５の一部として設けられるスピーカ（図示せず）にオーディオ信号を出力し得る。
【００２６】
ＶＲレンダリングモジュール１２２はさらに、オーディオ／ビデオソース１０６から符号化ビデオ信号を受信し得、符号化ビデオ信号に基づいてビデオレンダリングを実行して１セットの（または複数の）表示フレームをコンピューティングデバイス１０５の表示画面１３０に表示し得る。説明的かつ例示的な実現例では、ビデオレンダリングは、コンピュータまたはコンピューティングデバイスがコード化データソースからの情報を処理し、その情報を用いて画面に表示する画像を生成して表示する処理を含み得る。たとえば、ビデオレンダリングは、受信した符号化ビデオ信号を復号することと、１つ以上の表示フレームを生成することと、各表示フレームをフレームバッファに出力して表示画面１３０上に出力または表示することとを含み得る。ビデオレンダリングは、たとえば受信する符号化信号のタイプに依存して、付加的な機能またはタスクを含み得る。いくつかの場合、ビデオレンダリングは計算的に集約的またはリソース集約的であり得、コンピューティングデバイス１０５内の大量のコンピューティングリソース１３２を必要とし得る。
【００２７】
例示的な実現例によると、ビデオレンダリングは、たとえば、命令もしくはソフトウェアを実行して、ビデオ復号化などのビデオレンダリングと関連付けられているさまざまなタスクもしくは機能を実行するプロセッサもしくはＣＰＵによって、および／またはグラフィックスプロセッサユニット（ＧＰＵ）などの専用のハードウェアによって実行され得る。たとえば、ＧＰＵが存在する場合は、いくつかのビデオレンダリングタスクがメインプロセッサ／ＣＰＵからＧＰＵにオフロードされ得る。コンピューティングリソース１３２は、ＣＰＵ実行時間／サイクル、メモリ、またはデータを処理するために用いられ得るコンピューティングデバイス１０５内のその他のリソースなどのＣＰＵリソースを含み得る。コンピューティングデバイス１０５は例示的な実現例ではＧＰＵを含み得る。
【００２８】
コンピューティングデバイス１０５は、レンダリング性能を測定するかもしくはビデオレンダリング速度を求めるなどのＶＲアプリケーション１２０の性能を測定するための、またはＶＲレンダリングモジュール１２２および／もしくはＶＲアプリケーション１２０の他の性能測定のための性能測定モジュール１２６も含み得る。たとえば、レンダリング性能は、時間量当たりにレンダリングされるデータ量として測定され得、たとえば、レン
ダリング速度は、毎秒レンダリングされる画素（たとえば画素レンダリング速度）、毎秒レンダリングされるビット（たとえばビットレンダリング速度）、フレームレートもしくはフレームレンダリング速度（たとえばフレーム／秒）、または他のレンダリング性能測定として測定され得る。
【００２９】
例示的な実現例では、制御モジュール１２４はＶＲアプリケーション１２０のビデオレンダリング性能を閾値と比較し得、次いで当該比較に基づいて、ＶＲアプリケーション１２０またはＶＲレンダリングモジュール１２２のビデオレンダリング速度を調整し（たとえば増加または減少させ）得る。たとえば、ＶＲアプリケーション１２０のビデオレンダリング速度が閾値未満である場合は、たとえば、ＶＲアプリケーション１２０は閾値ビデオレンダリング速度性能を果たすまたは満たすことができなかったため、制御モジュール１２４は、以前のビデオレンダリング速度未満であり得る更新されたビデオレンダリング速度を求め得る。例示的な実現例では、たとえば測定したビデオレンダリング速度が閾値レンダリング速度よりも速い場合は、制御モジュール１２４は、以前のビデオレンダリング速度よりも速い場合がある更新または調整されたビデオレンダリング速度を求め得る。換言すれば、例示的な実現例によると、測定したビデオレンダリング速度性能が閾値ビデオレンダリング速度を超えると、ＶＲアプリケーション１２０のビデオレンダリング速度が増加し得る。以下により詳細に説明するように、ＶＲアプリケーション１２０は多数の異なる技術を用いてビデオレンダリング速度を調整または更新し得、当該技術は、たとえば、ＶＲコンテンツの１つ以上の画像を表示するために用いられ得る表示画面１３０の一部を調整すること、および／または（表示画面のすべてもしくは一部について）更新レートを調整すること、および／または１つ以上の画像もしくは表示フレームの表示（のすべてもしくは一部）についての解像度を調整することなどである。たとえば、画像の第１の部分（たとえば中央部）を画像の第２の（たとえば周辺）部分よりも高いレートで更新することができるように、画像の異なる部分（たとえば中央部対周辺部）がたとえば異なる更新レートで更新され得る。同様に、画像の第１の（たとえば中央）部分は第１の解像度（たとえば高解像度）で更新され得るのに対して、画像の第２の（たとえば周辺）部分は第１の解像度より低い第２の解像度で更新され得る。他の技術が用いられてもよい。このように、１つ以上の例示的な技術を用いてビデオレンダリング速度が調整され得る。例示的な実現例によると、リフレッシュレートは表示画面がリフレッシュされる割合であり得、このリフレッシュレートは画面に基づいて（少なくともいくつかの場合は）固定され得る。更新レートは、新たな画像データが表示画面に書込まれる割合であり得る。フレームレートはフレームが更新される割合であり得、これはリフレッシュレートと同一であることが多い。また、１つの例示的な実現例では、更新レートとフレームレートとは同一のレートであり得る。
【００３０】
上述のように、コンピューティングデバイス１０５はたとえば１つ以上のコンピューティングリソース１３２を含み得、コンピューティングリソース１３２は、命令を実行するかもしくはデータを処理するＣＰＵサイクルなどのＣＰＵもしくはプロセッサリソース、および／または命令もしくはデータを記憶するコンピュータメモリを含み得る。例示的な実現例によると、より多くの利用可能なコンピューティングリソース１３２をＶＲアプリケーション１２０に割当てると、ＶＲアプリケーション１２０がより速いビデオレンダリング速度でビデオレンダリングを実行することが可能になり得る。他方では、十分なコンピューティングリソース１３２がＶＲアプリケーション１２０に割当てられない場合は、ＶＲアプリケーション１２０の性能（たとえば、ＶＲアプリケーション１２０が達成するビデオレンダリング速度を含む）が、そのような制限されたコンピューティングリソース１３２に基づいて阻害または制限されることが考えられる。この結果、ＶＲアプリケーション１２０に割当てられるコンピューティングリソース１３２が不十分である場合は、ＶＲアプリケーション１２０のビデオレンダリング性能は、少なくともいくつかの場合、たとえば目標または閾値ビデオレンダリング速度を達成できない場合がある。
【００３１】
ＶＲアプリケーション１２０に加えて、コンピューティングデバイス１０５はさまざまな非ＶＲアプリケーション１３４も含み得る。説明的かつ例示的な実現例では、非ＶＲアプリケーション１３４は、ＶＲコンテンツをコンピューティングデバイス１０５のユーザに提示するためのレンダリングまたは他の信号の処理に関与しない任意のアプリケーションを含み得る。たとえば、非ＶＲアプリケーション１３４は、たとえば、電子メールを送受信する電子メールプログラム、ソーシャルメディアアプリケーション、気象情報を受信する天気アプリケーション、他のユーザとメッセージを送受信するテキスティングもしくはメッセージングアプリケーション、歌もしくは音楽を再生する音楽プレーヤもしくは音楽アプリケーション、ウェブページをダウンロードするウェブブラウザ、またはコンピューティングデバイス１０５上で実行もしくは提供され得る他のアプリケーションを含み得る。いくつかの場合、コンピューティングリソース１３２は、コンピューティングデバイス１０５上で並列に実行され得る多数のアプリケーション同士の間で割当てられ得るかまたは共有され得、たとえば、コンピューティングリソースは、たとえばＶＲアプリケーション１２０および１つ以上の非ＶＲアプリケーション１３４によって共有され得る。
【００３２】
図２は、例示的な実現例に係る、フレームまたは画像を表示するために用いられる表示画面１３０の一部が調整され得る当該表示画面の図である。図２を参照して、画面１３０の全表示境界２１０は、画像を表示するための画面１３０の全領域／部分の外側境界を規定し得る。画面１３０の一部表示境界２１２は、全表示境界２１０よりも小さい画面１３０の表示領域の境界を特定する。したがって、全表示境界２１０はこの表示画面１３０のすべての画素（画像素子）を含む外側境界を提供し得るのに対して、一部表示境界２１２は表示画面１３０の画素のサブセット（またはすべての画素よりも少ない画素）を含む画面の一部についての外側境界を規定し得る。たとえば、画像の中央部２２４は一部表示境界２１２内に設けられ得るのに対して、画像の周辺部２２２は全表示境界２１０と一部表示境界２１２との間に設けられ得る。ゆえに、たとえば、画面１３０の（全表示境界２１０内の）全領域／部分は、（一部表示境界２１２内の）中央部２２４と、境界２１０と２１２との間に位置する周辺部２２２とを含み得る。
【００３３】
例示的な実現例によると、ＶＲアプリケーション１２０の制御モジュール１２４は、ＶＲレンダリングモジュール１２２によって実行されるビデオレンダリングの性能を測定し得る。たとえば、制御モジュール１２４は、たとえば１セットのフレームを表示するためにＶＲレンダリングモジュール１２２によって達成されるビデオレンダリング速度を測定することによって、ビデオレンダリング性能を測定し得る。制御モジュール１２４はさらに、たとえば、ビデオレンダリングの性能（たとえば測定した第１のビデオレンダリング速度）を閾値と比較し得る。たとえば、制御モジュール１２４は、測定した第１のビデオレンダリング速度と閾値との比較に基づいて、１セットの表示フレームをＶＲコンテンツの一部として表示するために用いられることになる第２のまたは調整されたビデオレンダリング速度を求め得る。たとえば、第２のまたは調整されたビデオレンダリング速度は、たとえばフレームを表示するために表示画面１３０の一部を調整または変更する（または調整部分を選択する）ことに基づいて求められ得る。この説明的な例では１つの閾値しか記載されていないが、多数の閾値を用いてビデオレンダリング速度を比較し、次いで、たとえば当該比較に基づいてビデオレンダリング速度を調整するために、または更新されたもしくは第２のビデオレンダリング速度を選択するために、１つ以上の表示フレームを表示するために用いるべき表示画面の選択部分または調整部分を求めてもよい。
【００３４】
たとえば、例示的な実現例によると、ビデオレンダリングの性能（または測定したビデオレンダリング速度）が閾値未満である場合は、制御モジュール１２４は、初期のまたは第１のレンダリング速度未満の調整されたまたは第２のビデオレンダリング速度を求め得る。たとえば、１つ以上の表示フレームを表示するために用いられる表示画面１３０の一
部を調整するかまたは調整部分を選択することによって、より低い（または減少した）ビデオレンダリング速度が達成され得る。図２を参照して、例示的な実現例によると、第１のビデオレンダリング速度でＶＲコンテンツの画像を表示するために、初めは全表示境界２１０（図２）内の表示画面１３０が用いられ得る。この説明的な例では、測定した第１のビデオレンダリング速度が閾値未満であるという判断に応答して、制御モジュール１２４は、（たとえば）一部表示境界２１２内の中央部２２４などの、表示画面１３０の全部分よりも小さい部分を含む画面１３０の調整部分を選択して（または当該部分を調整して）、第１のビデオレンダリング速度未満の第２のビデオレンダリング速度に従って１つ以上の表示フレームを表示し得る。このように、たとえば、ＶＲアプリケーション１２０のビデオレンダリング速度は、フレームを表示するために用いられる画面１３０の一部を少なくとも減少させることによって減少（たとえば、全表示境界２１０内の画面１３０の一部から、一部表示境界２１２内の画面１３０のより小さい部分に減少）し得、これによって、たとえばレンダリングすべき１フレーム当たりのデータ量（または１フレーム当たりの画素）が減少し得、これによって、ビデオレンダリングモジュール１２２によって目標フレームレートを達成することができ得る。いくつかの例示的な実現例では、（たとえば、フレームレートを減少させるおよび／または画像もしくは表示フレーム解像度を減少させることによって）ビデオレンダリング速度を減少させる他のステップが取られてもよい。これによって、たとえば、ビデオレンダリング速度が減少し得、たとえば、これは、ＶＲアプリケーション１２０またはＶＲレンダリングモジュール１２２が閾値ビデオレンダリング速度を達成できない場合に有用または有利であり得る。上述のように、１つ以上の非ＶＲアプリケーション１３４がかなりのコンピューティングリソース１３２を占めているまたは使用している場合は、これはＶＲアプリケーション１２０またはＶＲレンダリングモジュール１２２の性能低下に繋がり得る。そのような場合、たとえば、１つの解決策は、たとえば、１表示フレーム当たりにレンダリングされる画素量を減少させることによって、１表示フレーム当たりにレンダリングされるデータ量を減少させてビデオレンダリング速度を減少させることであり得、たとえばこれによって目標フレームレートを達成することができ得る。これは、たとえば、１つ以上の表示フレームを表示するために用いられる画面１３２の調整部分（例として、一部表示境界２１２内の中央部２２４に対応し得る）を選択することによって達成され得る。
【００３５】
たとえば、目標または閾値フレームレート（フレーム／秒のフレームレンダリング速度）がたとえば不十分なリソースに基づいてビデオレンダリングモジュール１２２によって達成できない場合は、表示画面１３０の調整部分を調整または選択する（たとえば、表示画面のより小さい部分を選択することによって、表示する１表示フレーム当たりの画素量を減少させる）ことによって、各（または１つ以上の）表示フレームのビデオレンダリング負荷（１フレーム当たりの画素）が減少し得、これによって全体的なビデオレンダリング速度が減少し得る。
【００３６】
別の例示的な実現例によると、たとえば、ビデオレンダリングの性能（または測定したビデオレンダリング速度）が閾値よりも高い場合は、制御モジュール１２４は、初期のまたは第１のレンダリング速度よりも速い調整されたまたは第２のビデオレンダリング速度を求め得る。例示的な実現例では、より速い（または増加した）ビデオレンダリング速度は、たとえば、同一のまたは同様のフレームレートを維持しつつ、１つ以上の表示フレームを表示するために用いられる表示画面１３０の一部を調整するかまたは調整部分を選択することによって達成され得る。図２を参照して、例示的な実現例によると、第１のビデオレンダリング速度でＶＲコンテンツの画像を表示するために、初めは一部表示境界２１２（図２）内の表示画面１３０の全部分が用いられ得る。この説明的な例では、測定した第１のビデオレンダリング速度が閾値よりも高いという判断に応答して、制御モジュール１２４は画面１３０の調整部分を選択し（または当該部分を調整し、たとえば増加させ）得、当該部分は、一部表示境界２１２内の一部よりも大きい領域または部分またはより多
くの画素を含み得、たとえば、これは（たとえば）全表示境界２１０内の画面の全部分に対応し得、第１のビデオレンダリング速度よりも速い第２のビデオレンダリング速度に従って１つ以上の表示フレームが表示され得る。ゆえに、たとえば、画像を表示するために用いられる画面１３０の一部は、全表示境界２１０内の画面の全部分または部分全体を用いて画像が表示されるようになり得るように、周辺部２２２（境界２１２と２１０との間に設けられる）を中央部２２４に追加することによって増加し得る。したがって、この例では、より高いまたは増加したレンダリング速度は、例示的な実現例によると、１表示フレーム当たりにレンダリングされる画素の量または数を増加させることによって、たとえば、画面１３０の選択部分を一部表示境界２１２内の画面１３０の中央部２２４から全表示境界２１０内の画面の全部分に増加させることによってなどで、フレームを表示するために用いられる画面１３０の部分を増加させることによって達成または遂行され得る（たとえば、画面の当該部分または画素数の増加は、一部表示境界２１２と全表示境界２１０との間に周辺部２２２を追加することによるものである）。たとえば、１つ以上の表示フレームの表示用のフレームレートを増加させることによって、および／または画面１３０に表示される画像の解像度もしくは表示フレームを増加させることによってなどで、ビデオレンダリング速度を増加させる他のステップが取られてもよい。
【００３７】
また、ビデオレンダリング速度を増加させることは典型的に、ビデオレンダリング速度のそのような増加に対処するために利用可能なリソース（たとえば、計算リソース、メモリリソース等）が十分ある場合に実行され得る。別の例示的な実現例によると、第１のビデオレンダリング速度が閾値未満であるという判断に応答して、コンピューティングリソース１３２が１つ以上の非ＶＲアプリケーション１３４からＶＲアプリケーション１２０に割当てられ得、たとえばこれによって、ＶＲアプリケーション１２０またはＶＲレンダリングモジュール１２２によって達成される性能またはビデオレンダリング速度を増加または向上させることができ得る。同様に、ＶＲアプリケーション１２０のビデオレンダリング速度またはビデオレンダリング性能が閾値よりも高い場合は、いくつかの場合、たとえば、非ＶＲアプリケーション１３４がいくらかのデータを処理できるように、少なくともある期間にわたってコンピューティングリソース１３２がＶＲアプリケーション１２０から１つ以上の非ＶＲアプリケーション１３４に割当てられ得、その後、そのようなリソースはＶＲアプリケーション１２０に再割当てされる。
【００３８】
いくつかの場合、ビデオレンダリング性能が不十分であるか、または最小（もしくは閾値）ビデオレンダリング速度を達成しない場合は、ＶＲコンテンツを見ているまたは体験しているユーザはかなりの待ち時間または遅れを体験し得る。たとえば、ＶＲアプリケーション１２０またはＶＲレンダリングモジュール１２２の性能が悪い（たとえば性能の閾値を満たしていない）場合、ユーザは、ユーザの動きまたは行動に応答して表示されるＶＲコンテンツの変化または更新にかなりの遅れまたは待ち時間を体験し得る。いくつかの場合、ＶＲアプリケーションの、たとえばＶＲコンテンツのレンダリングのかなりの待ち時間は、ユーザの酔いまたは吐き気の原因となり得る。したがって、可能であれば、ユーザが体験する待ち時間を減少させることが望ましい場合がある。いくつかの場合、体験するＶＲ待ち時間は、（たとえば）ＶＲアプリケーション１２０またはＶＲレンダリングモジュール１２２のより低い（または不十分な）実行に少なくとも部分的に起因し得、これは、たとえば、非ＶＲアプリケーション１３４によるコンピューティングリソース１３２の使用または要求に基づいて、ＶＲアプリケーション１２０に利用可能であるかまたは割当てられるコンピューティングリソース１３２が不十分であることに起因し得る。したがって、例示的な実現例によると、ユーザが体験するようなＶＲコンテンツの待ち時間または遅れまたは遅延は、１つ以上の画像を表示するための全表示画面未満（たとえば全表示境界２１０内の領域未満）であり得る表示画面１３０の調整されたより小さい表示部分（たとえば一部表示境界２１２内の中央部２２４）を選択することによってなどで、レンダリングデータの量が減少すると減少し得る。このように、レンダリング性能の向上（たと
えば、およびＶＲコンテンツの出力の待ち時間の減少）は、各表示フレームのビデオレンダリング負荷／負担を減少させることによって、たとえば、全表示境界２１０内の領域未満（より少ない画素）であり得る表示画面１３０の調整部分（一部表示境界２１２内の中央部２２４など）を調整または選択することによって達成され得る。さらに、ＶＲコンテンツの出力の待ち時間の減少および／またはＶＲアプリケーション１２０／ＶＲレンダリングモジュール１２２の性能の向上は、少なくともいくつかの場合、少なくともある期間にわたって、コンピューティングリソース１３２を１つ以上の非ＶＲアプリケーション１３４からＶＲアプリケーション１２０に割当てることによって達成され得る。
【００３９】
図３は、例示的な実現例に係るコンピューティングデバイスの動作を示すフローチャートである。動作３１０は、符号化ビデオ信号を受信することを含み得る。動作３２０は、コンピューティングデバイス上に提供される仮想現実（ＶＲ）アプリケーションによって、符号化ビデオ信号に基づいて第１のビデオレンダリング速度でビデオレンダリングを実行して第１のセットの表示フレームをコンピューティングデバイスの画面に表示することを含み得る。動作３３０は、第１のセットの表示フレームを表示するビデオレンダリングの性能を測定することを含み得る。動作３４０は、測定したビデオレンダリングの性能に基づいて、第２のセットの表示フレームを表示するために用いられることになる画面の一部を少なくとも調整することに基づいて第２のビデオレンダリング速度を求めることを含み得る。そして、動作３５０は、符号化ビデオ信号に基づいて第２のビデオレンダリング速度でビデオレンダリングを実行して第２のセットの表示フレームを画面の調整部分上に表示することを含み得る。
【００４０】
図３に示す方法の例示的な実現例によると、求めることは、ビデオレンダリングの性能を第１の閾値と比較することと、ビデオレンダリングの性能が第１の閾値未満である場合は、第１のレンダリング速度未満の第２のビデオレンダリング速度を求めることとを含み得、画面の一部を調整することは、第２のセットの表示フレームを表示するために用いられることになる画面の一部を減少させることを含む。
【００４１】
図３に示す方法の例示的な実現例によると、求めることは、ビデオレンダリングの性能を第２の閾値と比較することと、ビデオレンダリングの性能が第２の閾値よりも高い場合は、第１のレンダリング速度よりも速い第２のビデオレンダリング速度を求めることとをさらに含み得、画面の一部を調整することは、第２のセットの表示フレームを表示するために用いられることになる画面の一部を増加させることを含む。
【００４２】
図３に示す方法の例示的な実現例によると、測定することは、データの量または表示フレームの数を表示するために必要な時間量またはプロセッササイクルの数を求めることを含み得る。
【００４３】
図３に示す方法の例示的な実現例によると、測定したビデオレンダリングの性能に基づいて、第２のセットの表示フレームを表示するために用いられることになる画面の一部を少なくとも調整することに基づいて第２のビデオレンダリング速度を求めることは、測定したビデオレンダリングの性能に基づいて、第２のセットの表示フレームの各表示フレームを表示するために用いられることになる画面内の画素の数を少なくとも調整することに基づいて第２のビデオレンダリング速度を求めることを含み得る。
【００４４】
図３に示す方法の例示的な実現例によると、第２のビデオレンダリング速度を求めることは、少なくとも第２のセットの表示フレームを画面に表示するためのフレームレートを調整することをさらに含み得る。
【００４５】
図３に示す方法の例示的な実現例によると、第２のビデオレンダリング速度を求めるこ
とは、少なくとも第２のセットの表示フレームを画面に表示するための表示フレームまたは画像解像度を調整することをさらに含み得る。
【００４６】
図３に示す方法の例示的な実現例によると、当該方法は、ビデオレンダリングの性能を第１の閾値と比較することと、ビデオレンダリングの性能が第１の閾値未満であると判断することと、コンピューティングデバイスのコンピューティングリソースを、コンピューティングデバイス上で実行される１つ以上の非仮想現実アプリケーションから仮想現実アプリケーションに割当てることとをさらに含み得る。
【００４７】
図３に示す方法の例示的な実現例によると、当該方法は、コンピューティングデバイスのユーザの瞬目期間を推定することと、瞬目期間の少なくとも一部にわたって、コンピューティングリソースを、仮想現実アプリケーションからコンピューティングデバイス上で実行される１つ以上の非仮想現実アプリケーションに割り当てることとをさらに含み得る。図３に示す方法の例示的な実現例によると、推定することは、コンピューティングデバイスのユーザの瞬目期間の少なくとも開始を予測すること、およびコンピューティングデバイスのユーザの瞬目または瞬目期間の開始を検出することの少なくとも一方を含み得る。
【００４８】
図３に示す方法の例示的な実現例によると、当該方法は、ＶＲ表示装置の動きまたは移動を検出することと、検出後の少なくともある期間にわたって、１つ以上の表示フレームを画面に表示するための視野を調整する（たとえば増加または減少させる）こととをさらに含み得る。
【００４９】
図３に示す方法の例示的な実現例によると、当該方法は、コンピューティングデバイスの動きまたは移動を検出することと、検出後の少なくともある期間にわたって、１つ以上の表示フレームを画面に表示するためのフレームレートを調整する（たとえば増加または減少させる）こととをさらに含み得る。
【００５０】
別の例示的な実現例によると、装置は、少なくとも１つのプロセッサと、コンピュータ命令を含む少なくとも１つのメモリとを含み得、当該命令は、当該少なくとも１つのプロセッサによって実行されると、当該装置に、符号化ビデオ信号を受信させ、コンピューティングデバイス上に提供される仮想現実アプリケーションによって、符号化ビデオ信号に基づいて第１のビデオレンダリング速度でビデオレンダリングを実行させて第１のセットの表示フレームをコンピューティングデバイスの画面に表示させ、第１のセットの表示フレームを表示するビデオレンダリングの性能を測定させ、測定したビデオレンダリングの性能に基づいて、第２のセットの表示フレームを表示するために用いられることになる画面の一部を少なくとも調整することに基づいて第２のビデオレンダリング速度を求めさせ、符号化ビデオ信号に基づいて第２のビデオレンダリング速度でビデオレンダリングを実行させて第２のセットの表示フレームを画面の調整部分上に表示させる。
【００５１】
例示的な実現例によると、リフレッシュレート（またはフレームレート）は、画面１３０が画面データをリフレッシュする割合を指し得る。画像（または新たな画像）が画面１３０に更新／表示される割合である更新レートも存在する。典型的に、リフレッシュレートは画像更新レートと同一であり得る。しかし、さまざまな例示的な実現例によると、コンピューティングデバイス１０５上のビデオレンダリング速度（およびレンダリング負荷）を減少させるように更新レートが調整され（たとえば減少し）得る状況があり得る。そのような場合は、画像の更新レートは画面１３０のリフレッシュレート未満であり得る。
【００５２】
例示的な実現例によると、ビデオレンダリング速度／負荷が減少し得るいくつかの例示的な状況があり得る。たとえば、ビデオレンダリング性能が閾値未満である場合は、たと
えば、少なくともいくつかの場合、他のタスクに使用できるようにリソースを解放するように、またはビデオレンダリングに現在利用可能なリソースにさらに好適なビデオレンダリング速度を選択するように、ビデオレンダリング速度／負荷を調整する（たとえば増加または減少させる）１つ以上の技術が用いられ得る。また、画面１３０の動きが検出された場合は、ビデオレンダリング速度を調整する（たとえば増加または減少させる）１つ以上の技術が用いられ得る。
【００５３】
ビデオレンダリング速度を減少させるためのいくつかの付加的な例示的な技術を簡潔に説明する。まず、図２に示すように、表示画面１３０は、画像の中央部２２４および画像の周辺部２２２を含む画像を表示し得る。中央部２２４は、たとえば、少なくとも画像の中央にまたは中央の近くに（または中央に近接して）設けられ得、一部表示境界２１２内に設けられ得る。画像の中央部２２４は典型的にユーザの中心窩の周りに位置する可能性が高くなり得る。画像の周辺部２２２はユーザの中心窩の近くに位置する可能性が低くなり得る。中心窩は、視力が最も高い眼の網膜の小さい窪みである。視野の中心は、網膜錐体が特に集中するこの領域内に合焦する。ゆえに、さまざまな例示的な実現例によると、たとえば、画像の周辺部２２２について、中心窩の外側の低視力を利用し得るビデオレンダリング速度を減少させるいくつかの技術が用いられ得る。
【００５４】
第１の例示的な実現例によると、ビデオレンダリング速度／負荷は、画像の一部のみを更新することによって減少し得る。たとえば、ビデオレンダリング速度を減少させるために、画像の中央部２２４のみが更新されるのに対して、周辺部２２２は（たとえば、少なくともある期間にわたって）更新されない。ゆえに、更新が必要な画素が少なくなるので、これによってビデオレンダリング負荷／速度が減少し得る。
【００５５】
第２の例示的な実現例によると、ビデオレンダリング速度は、第１の更新レートで画像の第１の部分を更新することによって、かつ第１の更新レート未満の第２の更新レートで画像の第２の部分を更新することによって減少し得る。たとえば、画像の中央部２２４（たとえば、ユーザの中心窩の周りに存在し得る少なくとも一部）は第１の更新レート（たとえば、少なくともいくつかの例ではリフレッシュレートと同一であり得る）で更新され得るのに対して、画像の周辺部２２２は第１の更新レート未満の第２の更新レートで更新され得る。ゆえに、この例では、画像の周辺部２２２は、たとえば、画像の中央部２２４よりも低いレートで更新され得（またはある期間にわたって全く更新されず）、これによって全体的なビデオレンダリング速度／負荷が減少し得る。この例では、減少した更新レートを周辺部２２２に用いてもユーザにとって目立たない場合がある。なぜなら、少なくともいくつかの場合、たとえば、ユーザがたとえば中央部２２４内の一点を眺めているかまたは見ていると仮定すれば、周辺部２２２（または、たとえばその少なくとも一部）はユーザの中心窩の外側のさらに遠くに存在し得るからである。
【００５６】
第３の例示的な実現例によると、ビデオレンダリング速度は、画像の異なる部分に異なる解像度を用いることによって減少し得る。たとえば、減少したビデオレンダリング速度は、第１の解像度で画像の第１の部分（たとえば中央部２２４）を更新し、第１の解像度よりも低い第２の解像度で画像の第２の部分（たとえば周辺部２２２）を更新することによって得られ得る。本明細書に記載のこれらのさまざまな技術および他の技術は、さまざまな組合せに組合せることもできる。ゆえに、ビデオについての画像の一部（たとえば周辺部２２２）を更新するのに低解像度を用いると、ビデオレンダリング速度が減少することになる。
【００５７】
図４は、例示的な実現例に係るコンピューティングデバイスの動作を示すフローチャートである。動作４１０は、コンピューティングデバイス上に提供される仮想現実アプリケーションによって、ある更新レートでコンピューティングデバイスの画面上の画像全体を
更新することに基づいて第１のビデオレンダリング速度でビデオレンダリングを実行することを含む。動作４２０は、ビデオレンダリングの性能が閾値未満であると判断することを含む。そして、動作４３０は、当該判断に基づいて、当該更新レートで画像の一部のみを更新することによって第２のビデオレンダリング速度でビデオレンダリングを実行することを含む。
【００５８】
図４の方法の例示的な実現例によると、第２のビデオレンダリング速度でビデオレンダリングを実行することは、当該判断に基づいて、当該更新レートで画像の中央部のみを更新し、画像の周辺部は更新しないことによって、第２のビデオレンダリング速度でビデオレンダリングを実行することを含み得る。
【００５９】
図５は、別の例示的な実現例に係るコンピューティングデバイスの動作を示すフローチャートである。動作５１０は、コンピューティングデバイス上に提供される仮想現実アプリケーションによって、第１の更新レートでコンピューティングデバイスの画面上の画像全体を更新することに基づいて第１のビデオレンダリング速度でビデオレンダリングを実行することを含む。動作５２０は、ビデオレンダリングの性能が閾値未満であると判断することを含む。動作５３０は、当該判断に基づいて、第１の更新レートで画像の第１の部分を更新することによって、かつ第１の更新レート未満の第２の更新レートで画像の第２の部分を更新することによって、第２のビデオレンダリング速度でビデオレンダリングを実行することを含む。
【００６０】
図５の方法の例示的な実現例によると、第２のビデオレンダリング速度でビデオレンダリングを実行することは、当該判断に基づいて、第１の更新レートで画像の中央部を更新することによって、かつ第１の更新レート未満の第２の更新レートで画像の周辺部を更新することによって、第２のビデオレンダリング速度でビデオレンダリングを実行することを含み得る。
【００６１】
図５の方法の例示的な実現例によると、第２のビデオレンダリング速度でビデオレンダリングを実行することは、当該判断に基づいて、第１の更新レートおよび第１の画像解像度で画像の中央部を更新することによって、かつ第２の更新レートおよび第１の画像解像度未満の第２の画像解像度で画像の周辺部を更新することによって、第２のビデオレンダリング速度でビデオレンダリングを実行することを含み得、第２の更新レートは第１の更新レート未満である。
【００６２】
図６は、別の例示的な実現例に係るコンピューティングデバイスの動作を示すフローチャートである。動作６１０は、コンピューティングデバイス上に提供される仮想現実アプリケーションによって、第１のビデオレンダリング速度でビデオレンダリングを実行することを含む。動作６２０は、ビデオレンダリングの性能が閾値未満であると判断することを含む。動作６３０は、当該判断に基づいて、第１の解像度で画像の第１の部分を更新することによって、かつ第１の解像度未満の第２の解像度で画像の第２の部分を更新することによって、第２のビデオレンダリング速度でビデオレンダリングを実行することを含む。
【００６３】
図６の方法の例示的な実現例によると、第１の部分は画像の中央部を含み得、第２の部分は画像の周辺部を含み得る。
【００６４】
図７は、例示的な実現例に係るコンピューティングデバイス１０５のブロック図である。例示的な実現例によると、コンピューティングデバイス１０５（図１、図７）はＶＲアプリケーション１２０および１つ以上の非ＶＲアプリケーション１３４の両方を含み得、これらはコンピューティングリソース１３２を共有し得る。いくつかの場合、ＶＲアプリ
ケーション１２０の動作と関連付けられているビデオレンダリングおよび／または他のタスクの要求が厳しい性質のために、例示的な実現例では、ＶＲアプリケーション１２０が実行されているおよび／またはビデオレンダリングを行なっている間にコンピュータリソース１３２のすべてまたは少なくとも大部分をＶＲアプリケーション１２０に割当てることが望ましい場合がある。しかし、コンピューティングリソース１３２のすべてまたは大部分をＶＲアプリケーション１２０に割当てることによって、ＶＲアプリケーション１２０が実行されている期間中も１つ以上の非ＶＲアプリケーション１３４の動作が完全にまたは少なくとも部分的に阻害され得る。なぜなら、この期間中にそのような非ＶＲアプリケーション１３４に十分なコンピューティングリソース１３２が利用可能でない場合があるためである。
【００６５】
さらに、例示的な実現例によると、非ＶＲアプリケーション１３４がアプリケーションタスクを実行する／データを処理することができるように、コンピューティングリソース１３２の少なくとも一部がＶＲアプリケーション１２０から１つ以上の非ＶＲアプリケーション１３４に割当てられ得る。しかし、上述のように、リソースをＶＲアプリケーション１２０から非ＶＲアプリケーション１３４に割当てるとＶＲアプリケーション１２０の性能が劣化し得、これはたとえば、ＶＲレンダリングモジュール１２２のビデオレンダリング性能の低下を含み得、これによって都合の悪いことにかなりの待ち時間が生じ得るかもしくは引起こされ得、またはそうでなければユーザのＶＲ体験が劣化し得る。
【００６６】
したがって、例示的な実現例によると、コンピューティングデバイス１０５は、たとえば、ユーザが瞬きをしているかまたは眼をつぶっている瞬目期間の開始を検出し得る。例示的な実現例によると、ユーザの瞬目期間の少なくとも一部の間にこれらの非ＶＲアプリケーション１３４が動作するかまたはデータを処理することができるように、瞬目期間の間、リソースがＶＲアプリケーション１２０から１つ以上の非ＶＲアプリケーション１３４に割当てられて得る。例示的な実現例によると、この瞬目期間中にコンピューティングリソース１３２をＶＲアプリケーション１２０から非ＶＲアプリケーション１３４に割当てるとＶＲアプリケーション１２０の性能が低下し得、および／またはＶＲコンテンツのＶＲレンダリングの待ち時間が増加し得るが、ユーザは瞬目期間中は眼を閉じているので、この待ち時間の増加（またはレンダリング性能の低下）はコンピューティングデバイス１０５のユーザによって典型的に検出不可能である。したがって、たとえば、瞬目期間を用いて、リソースが非ＶＲアプリケーションタスクに割当てられ得、および／または非ＶＲアプリケーション１３４が動作するかもしくはデータを処理することが可能になり得る。
【００６７】
たとえば、リソース割当てモジュール７１６は、ユーザの瞬目期間の少なくとも一部の間にコンピューティングリソース１３２をＶＲアプリケーション１２０から１つ以上の非ＶＲアプリケーション１３４に割当て得る。同様に、ＶＲアプリケーション１２０および／またはＶＲレンダリングモジュール１２２は、たとえば、ユーザの瞬目期間の少なくとも一部の間に、ＶＲコンテンツについてのビデオレンダリング速度を減少させ得、および／またはさらにはビデオレンダリングを停止し得るかもしくはビデオレンダリングを休止し得、これによって、たとえば、瞬目期間中にコンピューティングリソース１３２を非ＶＲアプリケーション１３４に割当てることが可能になり得、および／または非ＶＲアプリケーション１３４がデータを処理することが可能になり得る。
【００６８】
図７に示すように、コンピューティングデバイス１０５は１つ以上のカメラ７１８または他のセンサを含み得、これらを用いて、たとえば、瞬目期間（たとえばユーザが眼を一時的に閉じること）の開始を判定または検出するために、ユーザの眼から（またはユーザの眼と関連付けられている）画像、写真、ビデオまたは他の信号が捕捉または受信され得る。例示的な実現例によると、カメラ７１８または他のセンサによって捕捉または受信さ
れる、ユーザの眼の画像もしくは写真、または他の信号は、瞬目推定モジュール７１０に転送され得る。瞬目推定モジュール７１０は、ユーザが瞬きをした（たとえば両眼を一時的に閉じた）ときを検出または推定し得る画像処理ロジックまたはソフトウェアを含み得る。瞬目推定モジュール７１０は、たとえば、カメラ７１８またはセンサから受信した画像または写真に基づいてユーザの眼における色の変化を検出得る画像処理ロジックまたはソフトウェアに基づいて、瞬目期間（またはユーザが眼を閉じること／つぶること）の開始を検出するための瞬目検出モジュール７１４を含み得る。
【００６９】
瞬目推定モジュール７１０は、ユーザが瞬目し得るときを予測するための瞬目予測モジュール７１２も含み得、および／またはユーザの瞬目期間を予測もしくは推定し得る。たとえば、カメラ７１８または他のセンサから受信したユーザの眼の画像またはビデオに基づいて、瞬目推定モジュール７１２は、たとえば、ユーザについての平均瞬目率（たとえば、２３瞬目／分などの、１分当たりの瞬目回数）、平均瞬目期間（たとえば、２００ｍｓなどの、瞬目中に眼が閉じている持続期間または期間）、瞬目同士の間の平均時間（たとえば７秒）、および／または他の統計などの、ユーザの瞬目（または一時的に眼をつぶること／閉じること）に関連したさまざまな統計を求め得る。例示的な実現例によると、瞬目予測モジュール７１２は、たとえばユーザについてのさまざまな瞬目統計に基づいて、ユーザが次に瞬目する可能性が高いときを予測もしくは推定し得、またはユーザが瞬目する可能性が高い次の時点を求め得る。たとえば、瞬目同士の間の期間または間隔が増加してユーザについての瞬目同士の間の平均時間に近づく（および／またはさらには超える）と、この説明的な例では、ユーザが瞬目する確率は典型的に増加し得る。
【００７０】
したがって、例示的な実現例によると、瞬目検出モジュール７１４は、たとえば眼を閉じること／つぶることを検出することによって瞬目期間の開始を検出し得る。瞬目予測モジュール７１２は、瞬目期間の長さを予測し得る。リソース割当てモジュール７１６は、瞬目期間の開始の通知または指示に応答して、たとえば瞬目期間の少なくとも一部の間にコンピューティングリソース１３２の少なくとも一部をＶＲアプリケーション１２０から１つ以上の非ＶＲアプリケーション１３４に割当て得る。さらに、またはあるいは、ＶＲアプリケーション１２０および／またはＶＲレンダリングモジュール１２２は、瞬目期間の少なくとも一部の間にビデオレンダリングの速度を減少させ得、およびまたはさらにはビデオレンダリングを休止もしくは停止し得、非ＶＲアプリケーション１３４の１つ以上は、瞬目期間の少なくとも一部の間に実行されるかまたは動作してデータを処理し得る。
【００７１】
説明的な例によると、ＶＲアプリケーション１２０およびＶＲレンダリングモジュール１２２は、初期期間中はすべてのまたはかなりの量／部分のコンピューティングリソース１３２に基づいて動作してビデオレンダリングを実行し得るのに対して、１つ以上の非ＶＲアプリケーション１３４はこの初期期間中は動作せず、および／またはコンピューティングリソース１３２をほとんど受信しない。たとえば、電子メールアプリケーションおよび／またはテキスティングアプリケーション（または他の非ＶＲアプリケーション）の動作は、たとえば、より多くのコンピューティングリソース１３２をＶＲアプリケーション１２０に割当てることができるように、この初期期間中は中断（一時的に停止）または減速され得、これによって、この初期期間中にＶＲアプリケーション１２０のビデオレンダリング性能が増加し得、それによって、この初期期間中にユーザが体験するＶＲアプリケーション１２０の待ち時間が減少し得る。したがって、説明的な例によると、この初期期間中、電子メールアプリケーションおよび／またはテキスティングアプリケーションに割当てられているコンピューティングリソースがない（または少ない）ことに基づいて、たとえば、電子メールアプリケーションは電子メールを送受信せず、テキスティングアプリケーションはテキストメッセージを送受信しない（または少なくともこの初期期間中に送受信される電子メールが減少し、送受信されるテキストメッセージが減少する）。ゆえに、たとえば、この初期期間中、たとえば、より多くのリソースをビデオレンダリングのた
めにおよび／またはＶＲアプリケーション１２０および／またはＶＲ処理（ビデオレンダリングなど）に割当てることができるように、１つ以上の非ＶＲアプリケーション（電子メール、メッセージング／テキスティングアプリケーションなど）の動作は中断され（たとえば一時的に停止／中断され）得るか、または減少し得る。
【００７２】
瞬目検出モジュール７１４がコンピューティングデバイス１０５のユーザの瞬目期間の開始を検出すると、リソース割当てモジュール７１６は、たとえば瞬目期間の少なくとも一部にわたって、コンピューティングリソース１３２の少なくとも一部をＶＲアプリケーション１２０から、電子メールアプリケーションおよびテキスティングアプリケーション、ウェブブラウザなどの１つ以上の非ＶＲアプリケーションに割当て得る。たとえば、ユーザは、約５０ｍｓから４００ｍｓの、たとえば平均で約２００〜３００ｍｓであり得る持続期間にわたって瞬目し（たとえば眼を一時的に閉じ／つぶり）得る。これらの数字は説明的な例に過ぎず、瞬目持続期間は異なる期間であってもよい。ゆえに、３００ｍｓ（説明的な例として）の瞬目期間中、１つ以上の非ＶＲアプリケーションが処理を再開し得、たとえば、電子メールアプリケーションは処理されるのを待機していた可能性がある多数の電子メールを送信および／または受信し得、テキスティング／メッセージングアプリケーションは処理されるのを待機していた可能性がある多数のテキストまたはメッセージを送信および／または受信し得る。さらに、ＶＲアプリケーション１２０は、（たとえば、以前はＶＲ処理／ビデオレンダリングに使用されていたリソースを、このような瞬目期間中に非ＶＲアプリケーションに割当てるために）瞬目期間の少なくとも一部の間、ビデオレンダリング速度を減少させ得、およびまたはさらには動作もしくはＶＲレンダリングを休止もしくは一時的に停止（もしくは中断）し得る。例示的な実現例によると、ユーザは瞬目期間中は眼を閉じているので、瞬目期間中のＶＲアプリケーション１２０の待ち時間の増加または性能の劣化（またはさらには不実行）はユーザには検出され得ない／検出不可能であり得るか、またはユーザには見えない場合がある。瞬目期間の終わりにまたは終わり間近に、リソース割当てモジュール７１６は、たとえば、ＶＲアプリケーション１２０が増量したコンピューティングリソース１３２を受信することができ、ＶＲアプリケーション１２０／ＶＲレンダリングモジュール１２２がそのビデオレンダリング速度を増加させるおよび／または許容可能なビデオレンダリング速度でビデオレンダリングの実行を再開することができるように、たとえば、コンピューティングリソース１３２の一部を電子メールアプリケーションおよびテキスティングアプリケーション（非ＶＲアプリケーション１３４）からＶＲアプリケーション１２０に再割当てし得る。なぜなら、ユーザは既に眼を開けており、いずれの待ち時間またはＶＲアプリケーション１２０による性能の劣化もユーザによって検出可能であり得るからである。
【００７３】
図８は、例示的な実現例に係るコンピューティングデバイスの動作を示すフローチャートである。動作８１０は、符号化ビデオ信号を受信することを含み得る。動作８２０は、コンピューティングデバイス上に提供される仮想現実アプリケーションによって、符号化ビデオ信号に基づいてビデオレンダリングを実行して第１のセットの表示フレームをコンピューティングデバイスの画面に表示することを含み得る。動作８３０は、コンピューティングデバイスのユーザの瞬目期間の開始を検出することを含み得る。そして、動作８４０は、瞬目期間の少なくとも一部にわたって、コンピューティングリソースを、仮想現実アプリケーションからコンピューティングデバイス上で実行される１つ以上の非仮想現実アプリケーションに割当てることを含み得る。
【００７４】
図８に示す方法の例示的な実現例によると、推定することは、コンピューティングデバイスのユーザの瞬目期間の少なくとも開始を検出すること、およびコンピューティングデバイスのユーザの瞬目期間を推定することの少なくとも一方を含み得る。
【００７５】
図８に示す方法の例示的な実現例によると、当該方法は、仮想現実アプリケーションに
よって、瞬目期間の少なくとも一部にわたってビデオレンダリングを停止することと、コンピューティングデバイス上で実行される１つ以上の非仮想現実アプリケーションによって、瞬目期間の少なくとも一部の間に１つ以上の非ビデオレンダリングタスクを実行することとをさらに含み得る。
【００７６】
図８に示す方法の例示的な実現例によると、当該方法は、仮想現実アプリケーションによって、瞬目期間の少なくとも一部にわたってビデオレンダリング速度を減少させることと、瞬目期間の少なくとも一部にわたって、少なくともいくらかのコンピューティングリソースを、仮想現実アプリケーションからコンピューティングデバイス上で実行される１つ以上の非仮想現実アプリケーションに割当てることと、コンピューティングデバイス上で実行される１つ以上の非仮想現実アプリケーションによって、瞬目期間の少なくとも一部の間に１つ以上の非ビデオレンダリングタスクを実行することとをさらに含み得る。
【００７７】
図８に示す方法の例示的な実現例によると、当該方法は、瞬目期間の終わりにまたは終わり間近に、少なくともいくらかのコンピューティングリソースを、コンピューティングデバイス上で実行される１つ以上の非仮想現実アプリケーションから仮想現実アプリケーションに再割当てすることと、仮想現実アプリケーションによってビデオレンダリング速度を増加させることとを実行することをさらに含み得る。
【００７８】
別の例示的な実現例によると、装置は、少なくとも１つのプロセッサと、コンピュータ命令を含む少なくとも１つのメモリとを含み得、当該命令は、当該少なくとも１つのプロセッサによって実行されると、当該装置に、符号化ビデオ信号を受信させ、コンピューティングデバイス上に提供される仮想現実アプリケーションによって、符号化ビデオ信号に基づいてビデオレンダリングを実行させて第１のセットの表示フレームをコンピューティングデバイスの画面に表示させ、コンピューティングデバイスのユーザの瞬目期間の開始を検出させ、瞬目期間の少なくとも一部にわたって、コンピューティングリソースを、仮想現実アプリケーションからコンピューティングデバイス上で実行される１つ以上の非仮想現実アプリケーションに割当てさせる。
【００７９】
例示的な実現例では、センサ１２８（図１）は、表示画面１３０またはコンピューティングデバイス１０５の動き、移動または加速を検出し得る。別の例示的な実現例によると、表示画面１３０の動き、移動または加速を検出したことに応答して、コンピューティングデバイス１０５は画面１３０に表示される１つ以上の表示画面の視野を調整し（たとえば増加もしくは減少させ）得、および／またはコンピューティングデバイス１０５は表示画像のフレームレートを調整し（たとえば増加もしくは減少させ）得る。視野（ＦＯＶ）（視界とも称される）は、任意の所与の瞬間に見える観測可能な世界／環境の範囲を含み得る。たとえば、ＶＲ体験内では、視野は、任意の所与の瞬間にディスプレイ上に見えるＶＲ世界／環境の範囲を含み得る。
【００８０】
例示的な実現例によると、コンピューティングデバイス１０５は眼球追跡デバイス１４２を含み得、眼球追跡デバイス１４２は、コンピューティングデバイス１０５のユーザの眼球または視線を追跡し、ユーザがどの画素またはオブジェクト（たとえば、画面１３０上の一群の関連画素）を見ているかを判断する。
【００８１】
ユーザが移動している、回転している、自身の見る方向を変更している場合は、視野を調整すること（たとえば増加または減少させること）によって、少なくともいくつかの場合、画面１３０に表示される表示画像のブレまたは歪みの量が減少し得る。また、ユーザの移動中は高いフレームレートは不要であり得る。なぜなら、少なくともいくつかの場合、表示画面１３０のそのような動き中に画面１３０上でユーザに表示される画像は、見えるまたは表示されるフレーム／画像をブレさせ得るかまたは歪ませ得るからである。ゆえ
に、そのようなユーザ／コンピューティングデバイス／画面の動き中に画面１３０に表示されるこれらの表示フレームの多くは、結局ブレ得るかまたは歪み得るため、コンピューティングデバイス１０５がかなりのコンピューティングリソース１３２を費やして高いまたは閾値のビデオレンダリング速度でビデオレンダリングを実行することは割に合わない場合がある。ゆえに、表示画面１３０またはコンピューティングデバイスのユーザが移動している期間中は、フレームレートおよび／またはビデオレンダリング速度が調整され（たとえば増加または減少し）得、視野が調整され（たとえば増加または減少し）得る。
【００８２】
図９は、例示的な実現例に係るコンピューティングデバイスの動作を示すフローチャートである。動作９１０は、コンピューティングデバイス上に提供される仮想現実アプリケーションによって、ある更新レートでコンピューティングデバイスの画面上の画像全体を更新することに基づいて第１のビデオレンダリング速度でビデオレンダリングを実行することを含む。動作９２０は、画面の動きまたは移動を検出することを含む。そして、動作９３０は、当該検出に基づいて、当該更新レートで画像の一部のみを更新することによって第２のビデオレンダリング速度でビデオレンダリングを実行することを含む。
【００８３】
図９の方法の例示的な実現例によると、第２のビデオレンダリング速度でビデオレンダリングを実行することは、当該検出に基づいて、当該更新レートで画像の中央部のみを更新することによって第２のビデオレンダリング速度でビデオレンダリングを実行することを含み得る。
【００８４】
図１０は、別の例示的な実現例に係るコンピューティングデバイスの動作を示すフローチャートである。動作１０１０は、コンピューティングデバイス上に提供される仮想現実アプリケーションによって、第１の更新レートでコンピューティングデバイスの画面上の画像全体を更新することに基づいて第１のビデオレンダリング速度でビデオレンダリングを実行することを含む。動作１０２０は、画面の動きまたは移動を検出することを含む。そして、動作１０３０は、当該検出に基づいて、第１の更新レートで画像の第１の部分を更新することによって、かつ第１の更新レートと異なる（たとえば第１の更新レートよりも大きいまたは小さい）第２の更新レートで画像の第２の部分を更新することによって、第２のビデオレンダリング速度でビデオレンダリングを実行することを含む。
【００８５】
図１０の方法の例示的な実現例によると、第２のビデオレンダリング速度でビデオレンダリングを実行することは、当該判断に基づいて、第１の更新レートで画像の中央部を更新することによって、かつ第１の更新レートと異なる（たとえば第１の更新レートよりも大きいまたは小さい）第２の更新レートで画像の周辺部を更新することによって、第２のビデオレンダリング速度でビデオレンダリングを実行することを含み得る。
【００８６】
図１０の方法の例示的な実現例によると、第２のビデオレンダリング速度でビデオレンダリングを実行することは、当該検出に基づいて、第１の更新レートおよび第１の画像解像度で画像の中央部を更新することによって、かつ第２の更新レートおよび第１の画像解像度未満の第２の画像解像度で画像の周辺部を更新することによって、第２のビデオレンダリング速度でビデオレンダリングを実行することを含み得、第２の更新レートは第１の更新レート未満である。
【００８７】
図１１は、別の例示的な実現例に係るコンピューティングデバイスの動作を示すフローチャートである。動作１１１０は、コンピューティングデバイス上に提供される仮想現実アプリケーションによって、第１のビデオレンダリング速度でビデオレンダリングを実行することを含む。動作１１２０は、画面の動きまたは移動を検出することを含む。動作１１３０は、当該検出に基づいて、第１の解像度で画像の第１の部分を更新することによって、かつ第１の解像度と異なる（たとえば第１の解像度よりも大きいまたは小さい）第２
の解像度で画像の第２の部分を更新することによって、第２のビデオレンダリング速度でビデオレンダリングを実行することを含む。
【００８８】
図１１の方法の例示的な実現例によると、第１の部分は画像の中央部を含み得、第２の部分は画像の周辺部を含み得る。
【００８９】
図１２は、別の例示的な実現例に係るコンピューティングデバイスの動作を示すフローチャートである。動作１２１０は、符号化ビデオ信号を受信することを含み得る。動作１２２０は、コンピューティングデバイス上に提供される仮想現実アプリケーションによって、符号化ビデオ信号に基づいてビデオレンダリングを実行して仮想現実コンテンツの第１のセットの表示フレームをコンピューティングデバイスの画面に表示することを含み得る。動作１２３０は、画面の動きまたは移動を検出することを含み得る。動作１２４０は、動きまたは移動を検出したことに応答して、少なくともある期間にわたって、仮想現実コンテンツの１つ以上の表示フレームを画面に表示するためのフレームレートを調整する（たとえば増加または減少させる）ことを含み得る。
【００９０】
図１２に示す方法の例示的な実現例によると、動作１２４０は、動きまたは移動を検出したことに応答して、少なくともある期間にわたって、仮想現実コンテンツの１つ以上の表示フレームを画面に表示するためのフレームレートを減少させることを含み得る。
【００９１】
図１２に示す方法の例示的な実現例によると、動作１２４０は、動きまたは移動を検出したことに応答して、少なくともある期間にわたって、仮想現実コンテンツの１つ以上の表示フレームを画面に表示するためのフレームレートを増加させることを含み得る。
【００９２】
図１２に示す方法の例示的な実現例によると、当該方法は、コンピューティングデバイスの動きまたは移動が停止したことを検出することと、コンピューティングデバイスの表示画面の動きまたは移動が停止したことを検出したことに応答して、仮想現実コンテンツの１つ以上の表示フレームを画面に表示するためのフレームレートを増加させることとをさらに含み得る。
【００９３】
図１２に示す方法の例示的な実現例によると、当該方法は、コンピューティングデバイスの表示画面の動きまたは移動を検出した後の少なくともある期間にわたって、仮想現実コンテンツの１つ以上の表示フレームを画面に表示するための視野を調整する（たとえば増加または減少させる）ことをさらに含み得る。
【００９４】
図１２に示す方法の例示的な実現例によると、当該方法は、コンピューティングデバイスの表示画面の動きまたは移動が停止したことを検出することと、仮想現実コンテンツの１つ以上の表示フレームを画面に表示するための視野を調整する（たとえば減少または増加させる）こととをさらに含み得る。
【００９５】
例示的な実現例によると、装置は、少なくとも１つのプロセッサと、コンピュータ命令を含む少なくとも１つのメモリとを含み得、当該命令は、当該少なくとも１つのプロセッサによって実行されると、当該装置に、符号化ビデオ信号を受信させ、コンピューティングデバイス上に提供される仮想現実アプリケーションによって、符号化ビデオ信号に基づいてビデオレンダリングを実行させて仮想現実コンテンツの第１のセットの表示フレームをコンピューティングデバイスの画面に表示させ、表示装置の動きまたは移動を検出させ、動きまたは移動を検出したことに応答して、少なくともある期間にわたって、仮想現実コンテンツの１つ以上の表示フレームを画面に表示するためのフレームレートを調整させる。
【００９６】
上述のように、説明的かつ例示的な実現例では、ＶＲゴーグル１１０（図１）は、たとえば、ＶＲゴーグル１１０の左アパーチャまたは左眼開口部を通してユーザが見ることができる左眼画像と、ＶＲゴーグル１１０の右アパーチャまたは右眼開口部を通してユーザが見ることができる右眼画像とを含む立体画像を表示し得る。例示的な実現例によると、左眼画像および右眼画像は、画面１３０に表示される１つ以上のオブジェクトを含み得る。これらのオブジェクトは、たとえば、画面１３０に表示される１つの画素であり得るか、または一群の関連画素であり得る。各オブジェクトは、人物、動物、物、または他の物体などの任意のオブジェクトであり得る。見える画像は、右眼画像および左眼画像の両方に基づいて表示され得る。閉塞（あるオブジェクトが別のオブジェクトを遮っているかまたは閉塞している）、サイズ、遠近感などのさまざまな奥行き手がかりを用いてユーザに奥行き情報が伝えられ得る。
【００９７】
例示的な実現例では、説明的な立体画像において、１つ以上のオブジェクトについての奥行き情報はさらに、左に見えるオブジェクト（左眼画像の一部）と右に見えるオブジェクト（右眼画像の一部）との間の視差（または距離／分離）を介してユーザに提供または通信され得る。
【００９８】
輻輳とは、人の（ユーザの）眼が観察される／見られるオブジェクトに向けられたときに形成される角度についての言及であり得る。調節とは、見られる／観察されるオブジェクト上に合焦しているユーザの眼についての言及である。調節デマンドは、オブジェクトまでの距離と反比例する。
【００９９】
現実世界では、調節デマンドと輻輳デマンドとの間に矛盾はめったにない。しかし、画面（画面１３０など）に表示されるＶＲ（仮想現実）画像または立体画像については、調節デマンドと輻輳デマンドとの間に差異または矛盾がある場合がある。表示画面については、眼が表示画面上に合焦しているため、調節デマンドは固定されている（たとえば、眼から画面までの距離が固定されている）。（ＶＲ  ＨＭＤシステム内のディスプレイはレンズによって形成される仮想ディスプレイである。この場合の調節デマンドは、レンズによって形成されるディスプレイの仮想画像までの距離である。）しかし、場合によっては、左に見える画像と右に見える画像との間の視差（または距離）が不定の輻輳デマンドを作り出す場合があり、場合によっては、この輻輳デマンドは調節デマンドと異なり得る。調節デマンドと輻輳デマンドとの間のこの矛盾は、ユーザの緊張および不快感、または眼精疲労を引起こし得る。
【０１００】
図１３は、例示的な実現例に係る調節デマンドと輻輳デマンドとの間の例示的な矛盾を示す図である。ステレオ（立体）画像１３１２が画面１３０に表示され得る。画像１３１２は多数のオブジェクトを含み得、各オブジェクトは画像１３１２の一部であり、画像１３１２は、人物、動物、物、またはその他の物体を表示し得る１つの画素または一群の関連画素を含み得る。画面１３０に表示される説明的かつ例示的なステレオ画像１３１２では、オブジェクトは、たとえば、犬オブジェクト１３１８、傘オブジェクト１３１６、および恐竜オブジェクト１３１４を含み得る。これらはいくつかの例示的なオブジェクトに過ぎない。左眼１３１０Ｌおよび右眼１３１０Ｒを含むユーザの眼が図１３に示されており、ユーザがこの説明的な例では恐竜オブジェクト１３１４を見ていることを示すように向けられて輻輳している。
【０１０１】
ステレオ画像１３１２を提示するために、左眼画像がユーザの左眼１３１０Ｌに示され、右眼画像がユーザの右眼１３１０Ｒに示される。左眼画像は、左の犬オブジェクト１３１８Ｌ、左の傘オブジェクト（図示せず）、および左の恐竜オブジェクト１３１４Ｌを含む。右眼画像は、右の犬オブジェクト１３１８Ｒ、右の傘オブジェクト（図示せず）、および右の恐竜オブジェクト１３１４Ｒを含む。
【０１０２】
図１３に示す説明的な例によると、左の傘オブジェクトと右の傘オブジェクト（図１３には図示せず）とが同じ位置で重ね合わせられ、つまり、左の傘オブジェクトと右の傘オブジェクトとの間に視差が存在しない。左の傘オブジェクトと右の傘オブジェクト１３１６との間に視差が存在しないため、傘１３１６は画面１３０のある距離／奥行きに位置している。ユーザは典型的に、画像のオブジェクトが合焦するように画面１３０上に合焦することになる（調節）。ゆえに、これは、図１３では、現実世界と同様に、傘オブジェクト１３１６についての輻輳デマンドが調節デマンドと同一であることを意味する。ゆえに、輻輳デマンドが調節デマンドと同一であるため、ユーザが傘オブジェクト１３１６を見る際に矛盾または緊張が存在しない（図１３に示すように、傘オブジェクト１３１６については視差が存在しないため、ユーザはこの例では画面１３０の当該奥行きで合焦および輻輳して傘オブジェクト１３１６を見る）。
【０１０３】
図１３に示す例示的な実現例によると、犬オブジェクト１３１８について交差視差が存在する。交差視差とは、右眼の犬オブジェクト１３１８Ｒが左側に示され、左眼の犬オブジェクト１３１８Ｌが右側に示されることを意味する。そのような交差視差（この例では犬オブジェクト１３１８）については、オブジェクトは画面１３０の前に、または画面１３０よりも見ている人の近くに（画面１３０よりも小さい奥行きに）あるように見える。
【０１０４】
また、図１３に示す例示的な実現例によると、恐竜オブジェクト１３１４について非交差視差１３２０（左右の恐竜オブジェクト１３１４Ｌ，１３１４Ｒの間の距離）が存在する。右眼の恐竜オブジェクト１３１４Ｒは右側にあり、左眼の恐竜オブジェクト１３１４Ｌは左側にあるため、恐竜オブジェクトについてのこの視差１３２０は交差していない。つまり、恐竜オブジェクト１３１４は画面１３０の後ろに（画面１３０よりもさらに遠くに、または画面１３０よりも大きい奥行きに）あるようにユーザには見える。ゆえに、たとえば、ユーザが恐竜オブジェクト１３１４または犬オブジェクト１３１８のいずれか一方を見ると、調節デマンドと輻輳デマンドとの間に矛盾または緊張が存在することになる。この理由は、たとえば、恐竜オブジェクト１３１４を見ているユーザは典型的に、恐竜オブジェクト１３１４が合焦するように画面１３０上に合焦することになるが、輻輳デマンドは視差１３２０のために異なるからである。
【０１０５】
図１３に示す例では、眼球追跡デバイス１４２（図１）が表示装置１０５内に用いられて、ユーザが恐竜オブジェクト１３１４を見ていると判断され得る。上述のように、画面１３０上の焦点、および恐竜オブジェクト１３１４についての視差１３２０（または左右の恐竜オブジェクト１３１４Ｌ，１３１４Ｒの間の距離）のために、ユーザが恐竜オブジェクト１３１４を見ると調節デマンドと輻輳デマンドとの間に矛盾または緊張が生じることになる。この矛盾または緊張はユーザにとって非常に不快であり得、特に、見えるオブジェクト（たとえば恐竜オブジェクト１３１４）の相対的な奥行きを画像１３１２内の他のオブジェクト（たとえば傘オブジェクト１３１６、犬オブジェクト１３１８）と比較して維持しつつこの矛盾を減少させることができる場合は、矛盾を減少させることが望ましい場合がある。この相対的な奥行きとは、犬オブジェクト１３１８が最も近いオブジェクト（これらのオブジェクトの中で最小の奥行きを有する）としてユーザに見え、続いて傘オブジェクト１３１６があり、それに続いて恐竜オブジェクト１３１４がユーザから最も遠いオブジェクト（これらのオブジェクトの中で最大の奥行きを有する）としてあることを意味する。
【０１０６】
説明的かつ例示的な実現例によると、眼球追跡デバイス１４２（図１）は、ユーザの視線の角度（ユーザが眺めている／見ている角度または方向）を判定し得る。また、たとえば、ＶＲアプリケーション１２０は、ユーザが眺めているオブジェクトを判定するために、ユーザの視線の角度で３Ｄシーン内に投影またはレイキャストして、当該レイキャスト
に交差するオブジェクトを判定し得る。
【０１０７】
したがって、例示的な実現例によると、見えるオブジェクトについての調節デマンドと輻輳デマンドとの間の矛盾／緊張を減少させる技術が記載される。例示的な実現例によると、この矛盾の減少は、たとえば、見えるオブジェクトの相対的な奥行きを画像内の他のオブジェクトに対して維持しつつ、かつ他のオブジェクト同士の間の相対的な奥行きを維持しつつ行なわれ得る。
【０１０８】
例示的な実現例によると、左に見えるオブジェクト（たとえば左の恐竜オブジェクト１３１４Ｌ）と右に見えるオブジェクト（たとえば右の恐竜オブジェクト１３１４Ｒ）との間の視差１３２０は、たとえば距離（たとえばインチ）で、または画素で測定、計算または判定され得る。瞬目検出モジュール７１４は、ユーザの瞬目期間の開始を検出し得る。コンピューティングデバイス１０５は次いで、瞬目期間の間、右眼画像および左眼画像の一方または両方を視差（または視差距離）の分だけ移動させて、左に見えるオブジェクト（たとえば１３１４Ｌ）と右に見えるオブジェクト（たとえば１３１４Ｒ）との間の視差を減少させ得る。たとえば、左眼画像のみを移動させて、または右眼画像のみを移動させて、または左眼画像および右眼画像の両方を移動させて、矛盾／緊張を減少させてもよい。いくつかの場合、左に見えるオブジェクトおよび右に見えるオブジェクトの一方または両方を互いに向かって移動させてもよく、ならびに／または視差が除去されるように移動させてもよい（これは、右に見えるオブジェクトと左に見えるオブジェクトとが同じ位置で重ね合わせられると達成される）。左眼画像および／または右眼画像を視差の分（視差量）だけ移動させると、左に見える画像と右に見える画像（たとえば１３１４Ｌ，１３１４Ｒ）との間の緊張／矛盾が減少することになる（完全に移動させる場合は、除去されるはずである）。同時に、この場合の他のオブジェクト（たとえば傘オブジェクトおよび犬オブジェクト）の視差は、恐竜オブジェクトに対するそれらの相対的な表示される奥行きが維持されるように、それに応じて変化することになる。
【０１０９】
例示的な実現例によると、左右の眼の画像の移動は、たとえばこの変化がユーザによって検出され得ないかまたはほとんど検出され得ないように、瞬目期間中に有利に行なわれ得る。また、例示的な実現例では、見えるオブジェクトの視差１３２０を減少させるように、かつ画像１３１２内のオブジェクトの相対的な奥行きが維持されるように、左眼画像全体および右眼画像全体（たとえばそれらの上のすべてのオブジェクトを含む）が移動し得る。したがって、２つの画像（左眼画像、および／または右眼画像）は、見えるオブジェクトに対して他のオブジェクトの相対的な奥行きを維持するように、全体として移動すべきである。また、各オブジェクトの絶対的な奥行きは典型的に、この移動に基づいて変化することになる。つまり、画像１３１２上の左右のオブジェクト（それぞれ左右の画像の一部である）のすべては、左右の恐竜オブジェクト１３１４Ｌ，１３１４Ｒがそれぞれ移動するのと同じ量だけ移動することになる。ゆえに、たとえば、左および／または右の傘オブジェクト１３１６Ｌ，１３１６Ｒも（恐竜オブジェクト１３１４に対して測定される距離視差１３２０の分だけ）移動して、当該オブジェクト同士の間に視差を有するようになる。同様に、左および／または右の犬オブジェクト１３１８Ｌ，１３１８Ｒも（恐竜オブジェクト１３１４に対して測定される）視差１３２０に等しい距離だけ移動することになり、左右の犬オブジェクト１３１８Ｌ，１３１８Ｒ同士の間により大きい視差を有し得る。短期の目標は、ユーザが恐竜オブジェクト１３１４を見ている間のみに見える恐竜オブジェクト１３１４について調節デマンドと輻輳デマンドとの間の矛盾を減少させることであるため、これは知覚的に許容可能である。
【０１１０】
図１４は、例示的な実現例に係る、見えるオブジェクトについての調節デマンドと輻輳デマンドとの間の矛盾が減少したかまたは除去された例を示す図である。図１４に示すこの例では、左右の恐竜オブジェクト１３１４Ｌ，１３１４Ｒの間の視差１３２０（図１３
）を（少なくともいくつかの場合は）除去するために、たとえば瞬目期間中に、左眼画像が右に移動しており、および／または右眼画像が左に移動している。ゆえに、この移動後、図１４に示すように、左右の恐竜オブジェクト１３１４Ｌ，１３１４Ｒは同じ位置で重ね合わせられて、視差１３２０が除去され、恐竜が画面１３０のある深さに位置しているという見かけが与えられる。ゆえに、図１４に示すように、視差１３２０に基づいて左眼画像および／または右眼画像を移動させた後、恐竜オブジェクト１３１４についての輻輳デマンドと調節デマンドとは同一である（これらのデマンド同士の間に矛盾／緊張がない）。また、この説明的な例では、左右の傘オブジェクト１３１６Ｌ，１３１６Ｒの間に交差視差が存在するようになり（たとえば、これによって傘オブジェクト１３１６が画面１３０よりも近くに見えるようになり）、左右の犬オブジェクト１３１８Ｌ，１３１８Ｒの間の交差視差は図１３のこれらのオブジェクトについて示した視差よりもさらに大きい。上述のように、この説明的な例における目標または目的は、シーン内のさまざまなオブジェクト同士の間の相対的な奥行きを維持しつつ、見える恐竜オブジェクト１３１４についての視差を減少させ、いくつかの場合は除去することであるので、１つ以上の見えないオブジェクトについての視差を増加させることは許容可能であり、実際に望ましい。
【０１１１】
例示的な実現例では、ＶＲアプリケーションは３Ｄゲームエンジンを含み得る。ＶＲアプリケーションは、アプリケーションプログラミングインターフェイス（ＡＰＩ）を介して、視差を減少させる／除去する要求を３Ｄゲームエンジンに送信し得、当該量の視差１３２０を含み得る。例示的な実現例では、３Ｄゲームエンジンは視差を知っている場合があり、または視差を判定可能である場合があり、ＶＲアプリケーションはユーザの視線方向を３Ｄゲームエンジンに送信し得る。３Ｄゲームエンジンは次いで視線方向を用いて、見えているオブジェクトおよびその視差を特定し得る。３Ｄゲームエンジンは次いで、見えるオブジェクトについてのこの差異を減少させるまたは除去するためには左右の眼の画像をどれほど調整すべきか／移動させるべきかを判断し得る。ＶＲアプリケーションおよび／または３Ｄゲームエンジンは次いで、左右の眼の画像の一方または両方を移動させることによって視差を減少させ（またはさらには除去し）得る。
【０１１２】
また、例示的な実現例によると、表示されるオブジェクトのサイズは左および／または右の画像の移動に基づいて変化しない。ゆえに、見えるオブジェクトの知覚される絶対距離は絶対視差の変化に影響されず、（画像内の他のオブジェクトに対して）固定された相対的な奥行きは、表示空間の安定した知覚もサポートする。
【０１１３】
上述のように、左眼画像および／または右眼画像は、移動がユーザによって検出されないように、たとえば瞬目期間中に移動して視差を減少させ得るかまたはさらには除去し得る。別の例示的な実現例によると、左眼画像および／または右眼画像は、ユーザが眼を開けているときに（非瞬目期間中に）多数のフレームにわたって移動または画像調整を徐々に実行できるようにすることによって、（非瞬目期間中の）この移動または画像調整がユーザにとって目立たなくなるように、多数のフレームの各々について視差１３２０の一部だけ移動し得る。たとえば、視差が１インチである場合は、左右の恐竜オブジェクトが同じ（またはほぼ同じ）位置で重ね合わせられて視差１３２０を減少させるかまたはさらには場合によっては除去するように、右眼画像は１００個のフレームのフレーム毎に左に０．０１インチ移動し得る。同様に、左眼画像および右眼画像の各々は、左右の恐竜オブジェクト１３１４Ｌ，１３１４Ｒが近付くまで、または視差７２０が除去されるかもしくは少なくとも減少するまで、１００個のフレームのフレーム毎に互いに向かって０．００５インチ移動し得る。
【０１１４】
また、別の例示的な実現例によると、左眼画像および／または右眼画像は（たとえば視差の減少を開始するために）非瞬目期間中に視差１３２０の一部（たとえば３０％）だけ移動し得るか、または、ユーザが新たなオブジェクトを見ていることもしくは見えるオブ
ジェクトが移動したことを眼球追跡デバイス１４２が判断したときにまたは判断した後に、多数のフレームにわたって視差を減少させ得る。そして、次いで瞬目期間の開始を検出した後、瞬目に紛れて視差７２０をさらに減少させるために左右の眼の画像の移動が完了し得る。
【０１１５】
例示的な実現例によると、ＶＲアプリケーションまたはコンピューティングデバイスは、瞬目期間の前に、左眼画像および右眼画像の一方または両方を第１の（遅い）移動速度で（遅く）移動させて、瞬目期間の前に左に見えるオブジェクトと右に見えるオブジェクトとの間の視差を部分的に減少させ得る。次いで、瞬目期間の開始が検出される。ＶＲアプリケーションまたはコンピューティングデバイスは、瞬目期間中に第２の（速い）移動速度で左眼画像および右眼画像の一方または両方の移動を継続して、左に見えるオブジェクトと右に見えるオブジェクトとの間の視差をさらに減少させ得、第２の移動速度は第１の移動速度よりも速い。ゆえに、ＶＲアプリケーションは、画像移動がユーザに知覚されにくくなり得るように、瞬目期間の前に左眼画像および／または右眼画像を第１の移動速度で遅く移動させ得、次いで、瞬目期間中に第２の（速い）移動速度で移動させることによって画像の移動を完了し得る。ゆえに、ユーザはこの瞬目期間中は画像／画面を見ていないため、瞬目期間中は速い移動速度が用いられ得る。たとえば、画像は、瞬目期間の前に．００５インチ／フレームの第１の移動速度で移動し得（たとえば移動の一部を実行する）、次いで、（たとえば瞬目期間中に移動を完了するために）瞬目期間中に．０５インチ／フレームの第２の移動速度で移動し得る。これらは説明のために用いられるいくつかの例示的な数字に過ぎず、他の移動速度が用いられてもよい。
【０１１６】
この処理は、ユーザが新たなオブジェクトを見るたびに、またはオブジェクトの位置が移動すると、または見えるオブジェクトについての視差が視差を変更すると、または周期的に、たとえば．５秒毎に反復され得る。ビデオは、たとえば、時間とともに移動する多数のオブジェクトを示し得る。たとえば、周期的に、たとえば０．１秒、０．２秒、０．５秒、０．７秒毎に、または他の周期で、眼球追跡デバイス１４２はユーザが見ているオブジェクト（新たなオブジェクトであり得るか、または同一のオブジェクトであり得、視差は以前の視差測定から変化している場合がある）を特定し得る。コンピューティングデバイス１０５は、そのような見えるオブジェクトについての視差１３２０を測定し得る。瞬目検出モジュール７１５は瞬目期間の開始を検出し得る。コンピューティングデバイス１０５は、瞬目期間中に左右の眼の画像の一方または両方を移動させて、見えるオブジェクトについての視差を減少させ得るおよび／または除去し得る。
【０１１７】
例示的な実現例によると、瞬目期間の開始を検出した後、コンピューティングシステムはユーザの非優位眼の画像のみを移動させ得る。ユーザの眼優位性は眼球追跡デバイス１４２によって確立され得る。たとえば、眼球追跡デバイス１４２は、ターゲット／オブジェクトが横方向および深さ方向の両方に急速に移動する較正段階中のユーザの（左右両眼の）眼球運動を記録し得る。説明的かつ例示的な実現例では、眼球追跡デバイス１４２は、衝動性運動を用いて、どちらの眼の方が新たなターゲット位置に早く動くか（優位眼となる）を判断し得る。ゆえに、画像の移動が（ユーザの眼が開いている）非瞬目期間中に行なわれる場合は、非優位眼の画像のみを移動させることが有利であり得る。なぜなら、たとえば、非優位眼の画像のみが移動している間は優位眼は静止画像上に固定されることになるので、非優位眼におけるこの画像移動は目立たなくなるからである。ゆえに、たとえば非瞬目期間中に、非優位眼についての画像のみを移動させることによって、および／または優位眼の画像の移動量よりも大きい移動量だけ非優位眼についての画像を移動させることによって、画像移動のすべてまたは一部が実行されて視差が減少し得る／除去され得る。
【０１１８】
図１５は、例示的な実現例に係るコンピューティングデバイスの動作を示すフローチャ
ートである。動作１５１０は、コンピューティングデバイスの画面に、右眼画像および左眼画像を含む立体画像を表示することを含み、左眼画像および右眼画像の各々は１つ以上のオブジェクトを表わしている。動作１５２０は、コンピューティングデバイスのユーザから見える、見えるオブジェクトを判定することを含み、見えるオブジェクトは、左眼画像の一部である左に見えるオブジェクト、および右眼画像の一部である右に見えるオブジェクトを含む。動作１５３０は、左に見えるオブジェクトと右に見えるオブジェクトとの間の視差を計算または測定することを含む。動作１５４０は、コンピューティングデバイスのユーザの瞬目期間の開始を検出することを含む。そして、動作１５５０は、瞬目期間中に、左眼画像および右眼画像の一方または両方を移動させて、左に見えるオブジェクトと右に見えるオブジェクトとの間の視差を減少させることを含む。
【０１１９】
図１５の方法の例示的な実現例によると、移動させることは、瞬目期間中に、左眼画像および右眼画像の一方または両方を移動させて、左に見えるオブジェクトと右に見えるオブジェクトとの間の視差を除去することを含み得る。
【０１２０】
図１５の方法の例示的な実現例によると、移動させることは、瞬目期間の前に、左眼画像および右眼画像の一方または両方の移動を開始して、左に見えるオブジェクトと右に見えるオブジェクトとの間の視差を減少させることと、瞬目期間中に、左眼画像および右眼画像の一方または両方の移動を継続して、左に見えるオブジェクトと右に見えるオブジェクトとの間の視差をさらに減少させることとを含み得る。
【０１２１】
図１５の方法の例示的な実現例によると、当該方法は、ユーザのどちらの眼が非優位眼であるかを判断することと、非瞬目期間中に、ユーザの非優位眼の眼画像のみを移動させて、左に見えるオブジェクトと右に見えるオブジェクトとの間の視差を減少させることとをさらに含み得る。
【０１２２】
図１５の方法の例示的な実現例によると、見えるオブジェクトは第１の見えるオブジェクトを含み、立体画像は第１の立体画像を含み、瞬目期間は第１の瞬目期間を含み、当該方法はさらに、コンピューティングデバイスの画面に、第２の右眼画像および第２の左眼画像を含む第２の立体画像を表示することと、コンピューティングデバイスのユーザから見える、第２の見えるオブジェクトを判定することとを含み、第２の見えるオブジェクトは、第２の左眼画像の一部である第２の左に見えるオブジェクト、および第２の右眼画像の一部である第２の右に見えるオブジェクトを含み、当該方法はさらに、第２の左に見えるオブジェクトと第２の右に見えるオブジェクトとの間の視差を測定することと、コンピューティングデバイスのユーザの第２の瞬目期間の開始を検出することと、第２の瞬目期間中に、第２の左眼画像および第２の右眼画像の一方または両方を移動させて、第２の左に見えるオブジェクトと第２の右に見えるオブジェクトとの間の視差を減少させることとを含む。
【０１２３】
図１６は、本明細書に記載の技術とともに用いられ得る一般的なコンピュータデバイス１６００および一般的なモバイルコンピュータデバイス１６５０の例を示す。コンピューティングデバイス１６００は、ラップトップ、デスクトップ、ワークステーション、携帯情報端末、サーバ、ブレードサーバ、メインフレーム、および他の適切なコンピュータといった、さまざまな形態のデジタルコンピュータを表わすことを意図している。コンピューティングデバイス１６５０は、携帯情報端末、セルラー電話、スマートフォン、および他の同様のコンピューティングデバイスといった、さまざまな形態のモバイルデバイスを表わすことを意図している。ここに示すコンポーネント、それらの接続および関係、ならびにそれらの機能は例示であることが意図されているに過ぎず、本文書に記載のおよび／または請求項に記載の本発明の実現例を限定することを意図していない。
【０１２４】
コンピューティングデバイス１６００は、プロセッサ１６０２、メモリ１６０４、記憶装置１６０６、メモリ１６０４および高速拡張ポート１６１０に接続している高速インターフェイス１６０８、ならびに低速バス１６１４および記憶装置１６０６に接続している低速インターフェイス１６１２を含む。コンポーネント１６０２，１６０４，１６０６，１６０８，１６１０および１６１２の各々はさまざまなバスを用いて相互に接続されており、共通のマザーボード上にまたは他の態様で適宜搭載され得る。プロセッサ１６０２は、コンピューティングデバイス１６００内で実行される命令を処理可能であり、この命令には、ＧＵＩのためのグラフィカル情報を高速インターフェイス１６０８に結合されているディスプレイ１６１６などの外部入出力デバイス上に表示するためにメモリ１６０４内または記憶装置１６０６上に記憶されている命令が含まれる。他の実現例では、複数のプロセッサおよび／または複数のバスが、複数のメモリおよび複数種類のメモリとともに必要に応じて用いられ得る。また、複数のコンピューティングデバイス１６００が接続され得、各デバイスは（たとえばサーババンク、ブレードサーバのグループ、またはマルチプロセッサシステムとして）必要な動作の一部を提供する。
【０１２５】
メモリ１６０４は情報をコンピューティングデバイス１６００内に記憶する。一実現例では、メモリ１６０４は１つまたは複数の揮発性メモリユニットである。別の実現例では、メモリ１６０４は１つまたは複数の不揮発性メモリユニットである。また、メモリ１６０４は、磁気ディスクまたは光ディスクといった別の形態のコンピュータ読取可能な媒体であってもよい。
【０１２６】
記憶装置１６０６は、コンピューティングデバイス１６００に大容量記憶を提供可能である。一実現例では、記憶装置１６０６は、フロッピー（登録商標）ディスクデバイス、ハードディスクデバイス、光ディスクデバイス、またはテープデバイス、フラッシュメモリもしくは他の同様のソリッドステートメモリデバイス、またはストレージエリアネットワークもしくは他の構成におけるデバイスを含む多数のデバイスといった、コンピュータ読取可能な媒体であってもよく、または当該コンピュータ読取可能な媒体を含んでいてもよい。コンピュータプログラムプロダクトが情報担体内に有形に具体化され得る。また、コンピュータプログラムプロダクトは、実行されると上述のような１つ以上の方法を実行する命令を含み得る。情報担体は、メモリ１６０４、記憶装置１６０６、またはプロセッサ１６０２上のメモリといった、コンピュータ読取可能な媒体または機械読取可能な媒体である。
【０１２７】
高速コントローラ１６０８はコンピューティングデバイス１６００のための帯域幅集約的な動作を管理するのに対して、低速コントローラ１６１２はより低い帯域幅集約的な動作を管理する。そのような機能の割当ては例示に過ぎない。一実現例では、高速コントローラ１６０８はメモリ１６０４、ディスプレイ１６１６に（たとえばグラフィックスプロセッサまたはアクセラレータを介して）、およびさまざまな拡張カード（図示せず）を受付け得る高速拡張ポート１６１０に結合される。当該実現例では、低速コントローラ１６１２は記憶装置１６０６および低速拡張ポート１６１４に結合される。さまざまな通信ポート（たとえばＵＳＢ、ブルートゥース（登録商標）、イーサネット（登録商標）、無線イーサネット）を含み得る低速拡張ポートは、キーボード、ポインティングデバイス、スキャナ、またはスイッチもしくはルータといったネットワーキングデバイスなどの１つ以上の入出力デバイスに、たとえばネットワークアダプタを介して結合され得る。
【０１２８】
コンピューティングデバイス１６００は、図に示すように多数の異なる形態で実現されてもよい。たとえば、コンピューティングデバイス１６００は標準的なサーバ１６２０として、またはそのようなサーバのグループ内で複数回実現されてもよい。また、コンピューティングデバイス１６００はラックサーバシステム１６２４の一部として実現されてもよい。さらに、コンピューティングデバイス１６００はラップトップコンピュータ１６２
２などのパーソナルコンピュータにおいて実現されてもよい。あるいは、コンピューティングデバイス１６００からのコンポーネントは、デバイス１６５０などのモバイルデバイス（図示せず）内の他のコンポーネントと組合されてもよい。そのようなデバイスの各々がコンピューティングデバイス１６００，１６５０の１つ以上を含んでいてもよく、システム全体が、互いに通信する複数のコンピューティングデバイス１６００，１６５０で構成されてもよい。
【０１２９】
コンピューティングデバイス１６５０は、数あるコンポーネントの中でも特に、プロセッサ１６５２、メモリ１６６４、ディスプレイ１６５４などの入出力デバイス、通信インターフェイス１６６６、およびトランシーバ１６６８を含む。また、デバイス１６５０には、マイクロドライブまたは他のデバイスなどの記憶装置が提供されて付加的なストレージが提供されてもよい。コンポーネント１６５０，１６５２，１６６４，１６５４，１６６６および１６６８の各々はさまざまなバスを用いて相互に接続されており、当該コンポーネントのいくつかは共通のマザーボード上にまたは他の態様で適宜搭載され得る。
【０１３０】
プロセッサ１６５２は、メモリ１６６４に記憶されている命令を含む、コンピューティングデバイス１６５０内の命令を実行可能である。プロセッサは、別個の複数のアナログおよびデジタルプロセッサを含むチップのチップセットとして実現されてもよい。プロセッサは、たとえば、ユーザインターフェイス、デバイス１６５０が実行するアプリケーション、およびデバイス１６５０による無線通信の制御といった、デバイス１６５０の他のコンポーネントの協調を提供し得る。
【０１３１】
プロセッサ１６５２は、ディスプレイ１６５４に結合された制御インターフェイス１６５８およびディスプレイインターフェイス１６５６を介してユーザと通信し得る。ディスプレイ１６５４は、たとえば、ＴＦＴ  ＬＣＤ（薄膜トランジスタ液晶ディスプレイ）もしくはＯＬＥＤ（有機発光ダイオード）ディスプレイ、または他の適切なディスプレイ技術であり得る。ディスプレイインターフェイス１６５６は、ディスプレイ１６５４を駆動してグラフィカル情報および他の情報をユーザに提示するための適切な回路を含み得る。制御インターフェイス１６５８はユーザからコマンドを受信し、当該コマンドをプロセッサ１６５２に提出するために変換し得る。さらに、外部インターフェイス１６６２が、デバイス１６５０と他のデバイスとの隣接通信を可能にするために、プロセッサ１６５２と通信した状態で提供されてもよい。外部インターフェイス１６６２は、たとえば、ある実現例では有線通信を提供し、他の実現例では無線通信を提供してもよく、また、複数のインターフェイスが用いられてもよい。
【０１３２】
メモリ１６６４は情報をコンピューティングデバイス１６５０内に記憶する。メモリ１６６４は、１つもしくは複数のコンピュータ読取可能な媒体、１つもしくは複数の揮発性メモリユニット、または１つもしくは複数の不揮発性メモリユニットの１つ以上として実現され得る。さらに、拡張メモリ１６７４が提供され、たとえばＳＩＭＭ（Single In Line Memory Module）カードインターフェイスを含み得る拡張インターフェイス１６７２を介してデバイス１６５０に接続されてもよい。このような拡張メモリ１６７４はデバイス１６５０に余分のストレージスペースを提供し得るか、またはデバイス１６５０のためのアプリケーションもしくは他の情報をさらに記憶し得る。具体的には、拡張メモリ１６７４は上述のプロセスを実行または補足するための命令を含み得、さらにセキュア情報を含み得る。ゆえに、たとえば、拡張メモリ１６７４はデバイス１６５０のためのセキュリティモジュールとして提供されてもよく、デバイス１６５０のセキュアな使用を許可する命令でプログラムされてもよい。さらに、ハッキング不可能なようにＳＩＭＭカード上に識別情報を置くといったように、セキュアなアプリケーションが付加的な情報とともにＳＩＭＭカードを介して提供されてもよい。
【０１３３】
メモリは、以下に記載のように、たとえばフラッシュメモリおよび／またはＮＶＲＡＭメモリを含み得る。一実現例では、コンピュータプログラムプロダクトが情報担体内に有形に具体化される。コンピュータプログラムプロダクトは、実行されると上述のような１つ以上の方法を実行する命令を含む。情報担体は、たとえばトランシーバ１６６８または外部インターフェイス１６６２上で受信され得る、メモリ１６６４、拡張メモリ１６７４、またはプロセッサ１６５２上のメモリといった、コンピュータ読取可能な媒体または機械読取可能な媒体である。
【０１３４】
デバイス１６５０は、必要に応じてデジタル信号処理回路を含み得る通信インターフェイス１６６６を介して無線通信し得る。通信インターフェイス１６６６は、とりわけ、ＧＳＭ（登録商標）音声電話、ＳＭＳ、ＥＭＳ、またはＭＭＳメッセージング、ＣＤＭＡ、ＴＤＭＡ、ＰＤＣ、ＷＣＤＭＡ（登録商標）、ＣＤＭＡ２０００、またはＧＰＲＳといった、さまざまなモードまたはプロトコル下の通信を提供し得る。そのような通信は、たとえば無線周波数トランシーバ１６６８を介して起こり得る。さらに、ブルートゥース、Ｗｉ−Ｆｉ、または他のそのようなトランシーバ（図示せず）を用いるなどして、短距離通信が起こり得る。さらに、ＧＰＳ（全地球測位システム）レシーバモジュール１６７０が付加的なナビゲーション関連および位置関連の無線データをデバイス１６５０に提供し得、当該データはデバイス１６５０上で実行されるアプリケーションによって適宜用いられ得る。
【０１３５】
また、デバイス１６５０は、ユーザから口頭情報を受信して当該情報を使用可能なデジタル情報に変換し得るオーディオコーデック１６６０を用いて可聴的に通信し得る。オーディオコーデック１６６０も同様に、たとえばデバイス１６５０のハンドセット内で、スピーカを介すなどしてユーザに可聴音を生成し得る。そのような音は音声電話からの音を含んでいてもよく、録音された音（たとえば音声メッセージ、音楽ファイル等）を含んでいてもよく、さらに、デバイス１６５０上で実行されるアプリケーションが生成する音を含んでいてもよい。
【０１３６】
コンピューティングデバイス１６５０は、図に示すように多数の異なる形態で実現されてもよい。たとえば、コンピューティングデバイス１６５０はセルラー電話１６８０として実現されてもよい。また、コンピューティングデバイス１６５０は、スマートフォン１６８２、携帯情報端末、または他の同様のモバイルデバイスの一部として実現されてもよい。
【０１３７】
本明細書に記載のシステムおよび技術のさまざまな実現例は、デジタル電子回路、集積回路、特別に設計されたＡＳＩＣ（特定用途向け集積回路）、コンピュータハードウェア、ファームウェア、ソフトウェア、および／またはそれらの組合せで実現され得る。これらのさまざまな実現例は、少なくとも１つのプログラマブルプロセッサを含むプログラマブルシステム上で実行可能および／または解釈可能な１つ以上のコンピュータプログラムにおける実現例を含んでいてもよく、当該プロセッサは専用であっても一般的であってもよく、ストレージシステム、少なくとも１つの入力デバイス、および少なくとも１つの出力デバイスからデータおよび命令を受信するように、かつこれらにデータおよび命令を送信するように結合されている。
【０１３８】
これらのコンピュータプログラム（プログラム、ソフトウェア、ソフトウェアアプリケーションまたはコードとしても公知）はプログラマブルプロセッサのための機械命令を含んでおり、高レベル手続きおよび／もしくはオブジェクト指向プログラミング言語で、ならびに／またはアセンブリ／機械言語で実現され得る。本明細書において使用する「機械読取可能な媒体」「コンピュータ読取可能な媒体」という用語は、機械命令および／またはデータをプログラマブルプロセッサに提供するために用いられる任意のコンピュータプ
ログラムプロダクト、装置および／またはデバイス（たとえば磁気ディスク、光ディスク、メモリ、プログラマブルロジックデバイス（ＰＬＤ））を指し、機械命令を機械読取可能な信号として受信する機械読取可能な媒体を含む。「機械読取可能な信号」という用語は、機械命令および／またはデータをプログラマブルプロセッサに提供するために用いられる任意の信号を指す。
【０１３９】
ユーザとの対話を提供するために、本明細書に記載のシステムおよび技術は、情報をユーザに表示するための表示装置（たとえばＣＲＴ（陰極線管）またはＬＣＤ（液晶ディスプレイ）モニタ）と、ユーザが入力をコンピュータに提供する際に使用可能なキーボードおよびポインティングデバイス（たとえばマウスまたはトラックボール）とを有するコンピュータ上で実現され得る。他の種類のデバイスを用いてユーザとの対話を提供することもでき、たとえば、ユーザに提供されるフィードバックは任意の形態の感覚フィードバック（たとえば視覚フィードバック、聴覚フィードバック、または触覚フィードバック）であり得、ユーザからの入力は、音響、音声、または触覚入力を含む任意の形態で受信され得る。
【０１４０】
本明細書に記載のシステムおよび技術は、バックエンドコンポーネントを（たとえばデータサーバとして）含む、またはミドルウェアコンポーネント（たとえばアプリケーションサーバ）を含む、またはフロントエンドコンポーネント（たとえば、ユーザが本明細書に記載のシステムおよび技術の実現例と対話する際に使用可能なグラフィカルユーザインターフェイスもしくはウェブブラウザを有するクライアントコンピュータ）、またはそのようなバックエンド、ミドルウェア、もしくはフロントエンドコンポーネントの任意の組合せを含むコンピューティングシステムにおいて実現され得る。システムのコンポーネントは、任意の形態または媒体のデジタルデータ通信（たとえば通信ネットワーク）によって相互に接続され得る。通信ネットワークの例として、ローカルエリアネットワーク（「ＬＡＮ」）、ワイドエリアネットワーク（「ＷＡＮ」）、およびインターネットが挙げられる。
【０１４１】
コンピューティングシステムはクライアントおよびサーバを含み得る。クライアントおよびサーバは一般に互いにリモートであり、典型的に通信ネットワークを介して対話する。クライアントとサーバとの関係は、それぞれのコンピュータ上で実行されて互いにクライアント−サーバ関係を有するコンピュータプログラムによって生じる。
【０１４２】
多数の実施形態を説明した。しかしながら、本発明の精神および範囲から逸脱することなくさまざまな変更がなされ得ることが理解されるであろう。
【０１４３】
さらなる実現例を以下の例において要約する。
例１：非一時的なコンピュータ読取可能な記憶媒体上に記憶される命令を実行するためのコンピュータによって実行される方法であって、上記方法は、
コンピューティングデバイス上に提供される仮想現実アプリケーションによって、第１の更新レートで上記コンピューティングデバイスの画面上の画像全体を更新することに基づいて第１のビデオレンダリング速度でビデオレンダリングを実行することと、
上記ビデオレンダリングの性能が閾値未満であると判断することと、
上記判断に基づいて、上記第１の更新レートで上記画像の第１の部分を更新することによって、かつ上記第１の更新レート未満の第２の更新レートで上記画像の第２の部分を更新することによって、第２のビデオレンダリング速度でビデオレンダリングを実行することとを含む、方法。
【０１４４】
例２：上記第２のビデオレンダリング速度でビデオレンダリングを実行することは、
上記判断に基づいて、上記第１の更新レートで上記画像の中央部を更新することによっ
て、かつ上記第１の更新レート未満の第２の更新レートで上記画像の周辺部を更新することによって、第２のビデオレンダリング速度でビデオレンダリングを実行することを含む、例１に記載の方法。
【０１４５】
例３：上記ビデオレンダリングを実行することは、
上記判断に基づいて、上記第１の更新レートおよび第１の画像解像度で上記画像の中央部を更新することによって、かつ上記第２の更新レートおよび上記第１の画像解像度未満の第２の画像解像度で上記画像の周辺部を更新することによって、第２のビデオレンダリング速度でビデオレンダリングを実行することを含み、上記第２の更新レートは上記第１の更新レート未満である、例２に記載の方法。
【０１４６】
例４：上記第２のビデオレンダリング速度でビデオレンダリングを実行することは、１つ以上の表示フレームを表示するために用いられることになる上記画面内の画素の数を調整することをさらに含む、例１，２または３に記載の方法。
【０１４７】
例５：上記第２のビデオレンダリング速度でビデオレンダリングを実行することは、１つ以上の表示フレームを上記画面に表示するための表示フレームまたは画像解像度を調整することをさらに含む、例１，２または３に記載の方法。
【０１４８】
例６：上記コンピューティングデバイスのコンピューティングリソースを、上記コンピューティングデバイス上で実行される１つ以上の非仮想現実アプリケーションから上記仮想現実アプリケーションに割当てることをさらに含む、例１から５のいずれかに記載の方法。
【０１４９】
例７：上記コンピューティングデバイスのユーザの瞬目期間の開始を検出することと、
上記検出に応答して、上記瞬目期間の少なくとも一部にわたって、コンピューティングリソースを、上記仮想現実アプリケーションから上記コンピューティングデバイス上で実行される１つ以上の非仮想現実アプリケーションに割当てることとをさらに含む、例１から６のいずれかに記載の方法。
【０１５０】
例８：上記画面の移動を検出することと、
上記検出の後の少なくともある期間にわたって、１つ以上の表示フレームを上記画面に表示するための視野を調整することとをさらに含む、例１から７のいずれかに記載の方法。
【０１５１】
例９：コンピュータによって実行される方法であって、
符号化ビデオ信号を受信することと、
コンピューティングデバイス上に提供される仮想現実アプリケーションによって、上記符号化ビデオ信号に基づいてビデオレンダリングを実行して第１のセットの表示フレームを上記コンピューティングデバイスの画面に表示することと、
上記コンピューティングデバイスのユーザの瞬目期間の開始を検出することと、
上記瞬目期間の少なくとも一部にわたって、コンピューティングリソースを、上記仮想現実アプリケーションから上記コンピューティングデバイス上で実行される１つ以上の非仮想現実アプリケーションに割当てることとを含む、方法。
【０１５２】
例１０：上記仮想現実アプリケーションによって、上記瞬目期間の少なくとも一部にわたってビデオレンダリングを停止することと、
上記コンピューティングデバイス上で実行される１つ以上の非仮想現実アプリケーションによって、上記瞬目期間の少なくとも一部の間に１つ以上の非ビデオレンダリングタスクを実行することとをさらに含む、例９に記載の方法。
【０１５３】
例１１：上記仮想現実アプリケーションによって、上記瞬目期間の少なくとも一部にわたってビデオレンダリング速度を減少させることと、
上記瞬目期間の少なくとも一部にわたって、少なくともいくらかのコンピューティングリソースを、上記仮想現実アプリケーションから上記コンピューティングデバイス上で実行される１つ以上の非仮想現実アプリケーションに割当てることと、
上記コンピューティングデバイス上で実行される上記１つ以上の非仮想現実アプリケーションによって、上記瞬目期間の少なくとも一部の間に１つ以上の非ビデオレンダリングタスクを実行することとをさらに含む、例９に記載の方法。
【０１５４】
例１２：上記瞬目期間の終わりにまたは終わり間近に、
少なくともいくらかのコンピューティングリソースを、上記コンピューティングデバイス上で実行される上記１つ以上の非仮想現実アプリケーションから上記仮想現実アプリケーションに再割当てすること、および
上記仮想現実アプリケーションによってビデオレンダリング速度を増加させること
の１つ以上を実行することをさらに含む、例１１に記載の方法。
【０１５５】
例１３：非一時的なコンピュータ読取可能な記憶媒体上に記憶される命令を実行するためのコンピュータによって実行される方法であって、上記方法は、
コンピューティングデバイス上に提供される仮想現実アプリケーションによって、第１の更新レートで上記コンピューティングデバイスの画面上の画像全体を更新することに基づいて第１のビデオレンダリング速度でビデオレンダリングを実行することと、
上記画面の移動を検出することと、
上記検出に基づいて、上記第１の更新レートで上記画像の第１の部分を更新することによって、かつ上記第１の更新レートと異なる第２の更新レートで上記画像の第２の部分を更新することによって、第２のビデオレンダリング速度でビデオレンダリングを実行することとを含む、方法。
【０１５６】
例１４：上記第２のビデオレンダリング速度でビデオレンダリングを実行することは、
上記判断に基づいて、上記第１の更新レートで上記画像の中央部を更新することによって、かつ上記第１の更新レート未満の第２の更新レートで上記画像の周辺部を更新することによって、第２のビデオレンダリング速度でビデオレンダリングを実行することを含む、例１３に記載の方法。
【０１５７】
例１５：上記第２のビデオレンダリング速度でビデオレンダリングを実行することは、
上記検出に基づいて、上記第１の更新レートおよび第１の画像解像度で上記画像の中央部を更新することによって、かつ上記第２の更新レートおよび上記第１の画像解像度未満の第２の画像解像度で上記画像の周辺部を更新することによって、第２のビデオレンダリング速度でビデオレンダリングを実行することを含み、上記第２の更新レートは上記第１の更新レート未満である、例１３に記載の方法。
【０１５８】
例１６：上記第２のビデオレンダリング速度でビデオレンダリングを実行することは、
上記検出に基づいて、第１の解像度で上記画像の第１の部分を更新することによって、かつ上記第１の解像度と異なる第２の解像度で上記画像の第２の部分を更新することによって、第２のビデオレンダリング速度でビデオレンダリングを実行することを含む、例１３に記載の方法。
【０１５９】
例１７：非一時的なコンピュータ読取可能な記憶媒体上に記憶される命令を実行するためのコンピュータによって実行される方法であって、上記方法は、
右眼画像および左眼画像を含む立体画像をコンピューティングデバイスの画面に表示す
ることを含み、上記左眼画像および上記右眼画像の各々は１つ以上のオブジェクトを表わしており、上記方法はさらに、
上記コンピューティングデバイスのユーザから見える、見えるオブジェクトを判定することを含み、上記見えるオブジェクトは、上記左眼画像の一部である左に見えるオブジェクト、および上記右眼画像の一部である右に見えるオブジェクトを含み、上記方法はさらに、
上記左に見えるオブジェクトと上記右に見えるオブジェクトとの間の視差を測定することと、
上記コンピューティングデバイスのユーザの瞬目期間の開始を検出することと、
上記瞬目期間中に、上記左眼画像および上記右眼画像の一方または両方を移動させて、上記左に見えるオブジェクトと上記右に見えるオブジェクトとの間の上記視差を減少させることとを含む、方法。
【０１６０】
例１８：上記移動させることは、
上記瞬目期間中に、上記左眼画像および上記右眼画像の一方または両方を移動させて、上記左に見えるオブジェクトと上記右に見えるオブジェクトとの間の上記視差を除去することを含む、例１７に記載の方法。
【０１６１】
例１９：上記移動させることは、
上記瞬目期間の前に、上記左眼画像および上記右眼画像の一方または両方の移動を開始して、上記左に見えるオブジェクトと上記右に見えるオブジェクトとの間の上記視差を減少させることと、
上記瞬目期間中に、上記左眼画像および上記右眼画像の一方または両方の移動を継続して、上記左に見えるオブジェクトと上記右に見えるオブジェクトとの間の上記視差をさらに減少させることとを含む、例１７に記載の方法。
【０１６２】
例２０：上記移動させることは、
上記瞬目期間の前に、上記左眼画像および上記右眼画像の一方または両方を第１の移動速度で移動させて、上記左に見えるオブジェクトと上記右に見えるオブジェクトとの間の上記視差を減少させることと、
上記瞬目期間中に、上記左眼画像および上記右眼画像の一方または両方の第２の移動速度での移動を継続して、上記左に見えるオブジェクトと上記右に見えるオブジェクトとの間の上記視差をさらに減少させることとを含み、上記第２の移動速度は上記第１の移動速度よりも速い、例１７から１９のいずれかに記載の方法。
【０１６３】
例２１：上記ユーザのどちらの眼が非優位眼であるかを判断することと、
非瞬目期間中に、上記ユーザの非優位眼の画像のみを移動させて、上記左に見えるオブジェクトと上記右に見えるオブジェクトとの間の上記視差を減少させることとをさらに含む、例１７から２０のいずれかに記載の方法。
【０１６４】
また、図面に示す論理フローは、所望の結果を達成するために、示されている特定の順序、または順番を必要としない。また、記載のフローとは他のステップが提供されてもよく、または当該フローからステップが除去されてもよく、記載のシステムに他のコンポーネントが追加されてもよく、または当該システムからコンポーネントが除去されてもよい。したがって、他の実施形態も以下の請求項の範囲内にある。
【図１】
2020174384.tif 000003
【図２】
2020174384.tif 000004
【図３】
2020174384.tif 000005
【図４】
2020174384.tif 000006
【図５】
2020174384.tif 000007
【図６】
2020174384.tif 000008
【図７】
2020174384.tif 000009
【図８】
2020174384.tif 000010
【図９】
2020174384.tif 000011
【図１０】
2020174384.tif 000012
【図１１】
2020174384.tif 000013
【図１２】
2020174384.tif 000014
【図１３】
2020174384.tif 000015
【図１４】
2020174384.tif 000016
【図１５】
2020174384.tif 000017
【図１６】
2020174384.tif 000018
【手続補正書】
【提出日】令和2年7月27日(2020.7.27)
【手続補正１】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項１】
コンピュータによって実行される方法であって、前記方法は、
最初の視野に基づいて仮想世界の一部のビデオレンダリングを実行することと、
レンダリングしたビデオの画面上の表示をトリガすることと、
前記画面が物理的に動いていることを検出したことに応答して、
前記検出の後の少なくともある期間にわたって、前記ビデオレンダリングの実行を変更することと、
前記ある期間の少なくとも一部にわたって、コンピューティングリソースを、前記仮想世界の一部のビデオレンダリングを実行することから、非仮想世界の処理タスクを実行することに割当てることとを備える、方法。
【請求項２】
前記ビデオレンダリングの実行を変更することは、更新された視野に基づいて前記仮想世界の前記一部を減少させることを含み、前記更新された視野は前記最初の視野よりも小さい、請求項１に記載の方法。
【請求項３】
小さくなった前記視野によって、レンダリングされる前記仮想世界の範囲が減少する、請求項２に記載の方法。
【請求項４】
前記最初の視野に基づいて仮想世界の一部のビデオレンダリングを実行することは、第１のビデオレンダリング速度でビデオレンダリングを実行することを含み、前記ビデオレンダリングの実行を変更することは、第２のビデオレンダリング速度でビデオレンダリングを実行することを含む、請求項１から３のいずれか１項に記載の方法。
【請求項５】
前記第２のビデオレンダリング速度は前記第１のビデオレンダリング速度よりも速い、請求項４に記載の方法。
【請求項６】
前記第２のビデオレンダリング速度でビデオレンダリングを実行することは、前記第２のビデオレンダリング速度で前記画面の中央部のみを更新することを含む、請求項４または５に記載の方法。
【請求項７】
前記第２のビデオレンダリング速度でビデオレンダリングを実行することは、
第１の更新レートで前記画面の中央部を更新することと、
前記第１の更新レートよりも遅い第２の更新レートで前記画面の周辺部を更新することとを含む、請求項４または５に記載の方法。
【請求項８】
前記ビデオレンダリングの実行を変更することは、１つ以上の表示フレームを表示するために用いられることになる前記画面内の画素の数を調整することを含む、請求項１から７のいずれか１項に記載の方法。
【請求項９】
前記ビデオレンダリングの実行を変更することは、前記ビデオレンダリングの解像度を調整することを含む、請求項１から７のいずれか１項に記載の方法。
【請求項１０】
前記ビデオレンダリングの実行を変更することは、
第１の解像度で前記画面の第１の部分を更新することと、
前記第１の解像度とは異なる第２の解像度で前記画面の第２の部分を更新することとを含む、請求項１から７のいずれか１項に記載の方法。
【請求項１１】
前記画面が物理的に動いていることを検出することは、前記画面の動作、動き、または加速を検出するセンサによって検出することを含む、請求項１から１０のいずれか１項に記載の方法。
【請求項１２】
コンピューティングデバイスであって、
画面と、
前記画面の動作または動きを検出する加速度計を含むセンサと、
少なくとも１つのプロセッサと、
コンピュータ命令を含む少なくとも１つのメモリとを備え、前記命令は、前記少なくとも１つのプロセッサによって実行されると、前記コンピューティングデバイスに、
コンピューティングデバイス上に提供される仮想現実アプリケーションによって、ビデオレンダリングを実行させて前記コンピューティングデバイスの画面上に仮想現実コンテンツの第１のセットの表示フレームを表示させ、
前記画面の動作または動きを前記センサによって検出したことに応答して、
前記動作または動きを検出したことに応答して少なくともある期間にわたって、前記画面上に前記仮想現実コンテンツの第２のセットの表示フレームを表示するためのフレームレートを調整させ、
前記ある期間の少なくとも一部にわたって、コンピューティングリソースを、前記仮想現実コンテンツのビデオレンダリングを実行することから、非仮想現実アプリケーションタスクを実行することに割当てさせる、コンピューティングデバイス。
【請求項１３】
前記コンピューティングデバイスに、前記画面上に前記仮想現実コンテンツを表示するためのフレームレートを調整させる前記命令は、前記コンピューティングデバイスに、前記仮想現実コンテンツの前記第２のセットの表示フレームをビデオレンダリングする際に用いられる仮想世界の一部のサイズを減少させる命令を含む、請求項１２に記載のコンピューティングデバイス。
【請求項１４】
前記仮想世界の前記一部の減少した前記サイズは、前記仮想世界の視野の減少した範囲に対応する、請求項１３に記載のコンピューティングデバイス。
【請求項１５】
前記コンピューティングデバイスに、前記画面上に前記仮想現実コンテンツを表示するためのフレームレートを調整させる前記命令は、前記コンピューティングデバイスに、前記画面上に前記仮想現実コンテンツを表示するための前記フレームレートを増加させる命令を含む、請求項１２に記載のコンピューティングデバイス。
【請求項１６】
非一時的なコンピュータ読取可能な記憶媒体上に記憶される命令を実行するためのコンピュータによって実行される方法であって、前記方法は、
コンピューティングデバイス上に提供される仮想現実アプリケーションによって、第１の更新レートで前記コンピューティングデバイスの画面上の画像全体を更新することに基づいて第１のビデオレンダリング速度でビデオレンダリングを実行することと、
前記画面の物理的な動きを検出したことに応答して、
前記検出に基づいて、前記第１の更新レートで前記画像の第１の部分を更新することによって、かつ前記第１の更新レートとは異なる第２の更新レートで前記画像の第２の部分を更新することによって、第２のビデオレンダリング速度でビデオレンダリングを実行することと、
ある期間の少なくとも一部にわたって、コンピューティングリソースを、前記仮想現実アプリケーションにおいて前記ビデオレンダリングを実行することから、非仮想現実アプリケーションタスクを実行することに割当てることとを備える、方法。
【請求項１７】
前記第２のビデオレンダリング速度でビデオレンダリングを実行することは、
前記検出に基づいて、前記第１の更新レートで前記画像の中央部を更新することによって、かつ前記第２の更新レートで前記画像の周辺部を更新することを更新することによって、第２のビデオレンダリング速度でビデオレンダリングを実行することを備え、前記第２の更新レートは前記第１の更新レートよりも遅い、請求項１６に記載の方法。
【請求項１８】
前記第２のビデオレンダリング速度でビデオレンダリングを実行することは、
前記検出に基づいて、前記第１の更新レートおよび第１の画像解像度で前記画像の中央部を更新することによって、かつ前記第２の更新レートおよび前記第１の画像解像度よりも低い第２の画像解像度で前記画像の周辺部を更新することを更新することによって、第２のビデオレンダリング速度でビデオレンダリングを実行することを備え、前記第２の更新レートは前記第１の更新レートよりも低い、請求項１６に記載の方法。
【請求項１９】
前記第２のビデオレンダリング速度でビデオレンダリングを実行することは、
前記検出に基づいて、第１の解像度で前記画像の第１の部分を更新することによって、かつ前記第１の解像度とは異なる第２の解像度で前記画像の第２の部分を更新することによって、第２のビデオレンダリング速度でビデオレンダリングを実行することを備える、請求項１６に記載の方法。
【請求項２０】
前記第１のビデオレンダリング速度でビデオレンダリングを実行することは、最初の視野に基づいて仮想世界の一部のビデオレンダリングを実行することを含み、
前記第２のビデオレンダリング速度でビデオレンダリングを実行することは、減少した視野に基づいて前記仮想世界の減少した部分のビデオレンダリングを実行することを含み、
前記第２のビデオレンダリング速度は前記第１のビデオレンダリング速度よりも速い、請求項１６から１９のいずれか１項に記載の方法。
【請求項２１】
請求項１から１１および請求項１６から２０のいずれか１項に記載の方法をコンピュータに実行させるプログラム。
【外国語明細書】
2020174384000001.pdf