コンピューティングデバイスにおいて表示アニメーションを実施するための方法であって、前記表示アニメーション中にレンダリングされたフレームのレートを監視するステップと、前記監視されたフレームレートが許容可能な最小値未満であることが決定されると、計算量的にあまり複雑ではない項目をレンダリングするステップであり、前記計算量的にあまり複雑ではない項目は通常の項目よりも速くレンダリングすることができる、ステップと、前記監視されたフレームレートが前記許容可能な最小値未満であることが決定されると、前記アニメーションの速度を記憶するステップと、前記アニメーションの速度が前記記憶された速度を下回ると、通常の項目をレンダリングするステップとを含む方法。前記監視されたフレームレートがあらかじめ定義された前の間隔の間にレンダリングされたフレームの数に基づく、請求項1に記載の方法。前記監視されたフレームレートが移動平均フレームレートに基づく、請求項1に記載の方法。前記計算量的にあまり複雑ではない項目がアプリケーションの一部として定義される、請求項1に記載の方法。前記表示アニメーションが高速リストスクロールアニメーション、ウェブページの高速スクロールまたはパン、テキスト文書の高速スクロール、portabledocumentformat文書の高速スクロールまたはパン、PowerPointプレゼンテーションの高速スクロール、および写真画像の高速スクロールまたはパンのうちの1つである、請求項1に記載の方法。コンピューティングデバイスにおいて表示アニメーションを実施するための方法であって、前記表示アニメーションの開始時に画像をレンダリングするための第1のレンダリングフォーマットを指定するステップと、前記指定されたレンダリングフォーマットを使用して画像をレンダリングするステップと、前記表示アニメーション中にレンダリングされたフレームのレートを監視するステップと、前記監視されたフレームレートが許容可能な最小値を下回ったときを決定するステップと、前記監視されたフレームレートが前記許容可能な最小値を下回ったことが決定されると、画像をレンダリングするための第2のレンダリングフォーマットを指定するステップであり、前記第2のレンダリングフォーマットが前記第1のレンダリングフォーマットよりも処理を必要としない、ステップと、前記監視されたフレームレートが前記許容可能な最小値未満であることが決定されると、前記アニメーションの第1の速度を記憶するステップと、前記アニメーションの速度が前記記憶された第1の速度未満であるときを決定するステップと、前記現在の指定されたレンダリングフォーマットが前記第2のレンダリングフォーマットであり、前記アニメーションの前記速度が前記記憶された第1の速度未満であることが決定されたとき、前記第1のレンダリングフォーマットを指定するステップとを含む方法。前記現在指定されているレンダリングフォーマットが前記第2のフォーマットであり、前記監視されたフレームレートが前記許容可能な最小値を下回ったことが決定されたとき、画像をレンダリングするための第3のレンダリングフォーマットを指定し、前記アニメーションの第2の速度を記憶するステップと、前記アニメーションの速度が前記記憶された第2の速度未満であるときを決定するステップと、前記現在の指定されたレンダリングフォーマットが前記第3のレンダリングフォーマットであり、前記アニメーションの前記速度が前記記憶された第2の速度未満であることが決定されたとき、前記第2のレンダリングフォーマットを指定するステップとをさらに含む請求項6に記載の方法。前記現在指定されているレンダリングフォーマットが前記第3のフォーマットであり、前記監視されたフレームレートが前記許容可能な最小値を下回ったことが決定されたとき、画像をレンダリングするための第4のレンダリングフォーマットを指定し、前記アニメーションの第3の速度を記憶するステップと、前記アニメーションの速度が前記記憶された第3の速度未満であるときを決定するステップと、前記現在の指定されたレンダリングフォーマットが前記第4のレンダリングフォーマットであり、前記アニメーションの前記速度が前記記憶された第3の速度未満であることが決定されたとき、前記第3のレンダリングフォーマットを指定するステップとをさらに含む請求項7に記載の方法。前記第1、第2、および第3のレンダリングフォーマットがアプリケーションの一部として定義される、請求項8に記載の方法。前記監視されたフレームレートがあらかじめ定義された前の間隔の間にレンダリングされたフレームの数に基づく、請求項6に記載の方法。前記監視されたフレームレートが移動平均フレームレートに基づく、請求項6に記載の方法。前記表示アニメーションが高速リストスクロールアニメーションである、請求項6に記載の方法。前記表示アニメーションがゲームアプリケーションによって生成される、請求項6に記載の方法。コンピューティングデバイスであって、プロセッサと、前記プロセッサに結合されたディスプレイと、前記前記プロセッサに結合されたメモリとを含み、前記プロセッサが、前記表示アニメーション中にレンダリングされたフレームのレートを監視するステップと、前記監視されたフレームレートが許容可能な最小値未満であることが決定されると、計算量的にあまり複雑ではない項目をレンダリングするステップであり、前記計算量的にあまり複雑ではない項目は通常の項目よりも速くレンダリングすることができる、ステップと、前記監視されたフレームレートが前記許容可能な最小値未満であることが決定されると、前記アニメーションの速度を記憶するステップと、前記アニメーションの速度が前記記憶された速度を下回ると、通常の項目をレンダリングするステップとを含む操作を実行するためのプロセッサ実行可能命令で構成される、コンピューティングデバイス。前記プロセッサが、前記監視されたフレームレートがあらかじめ定義された前の間隔の間にレンダリングされたフレームの数に基づくような操作を実行するためのプロセッサ実行可能命令で構成される、請求項14に記載のコンピューティングデバイス。前記プロセッサが、前記監視されたフレームレートが移動平均フレームレートに基づくような操作を実行するためのプロセッサ実行可能命令で構成される、請求項14に記載のコンピューティングデバイス。前記プロセッサが、前記計算量的にあまり複雑ではない項目がアプリケーションの一部として定義されるような操作を実行するためのプロセッサ実行可能命令で構成される、請求項14に記載のコンピューティングデバイス。前記プロセッサが、前記表示アニメーションが高速リストスクロールアニメーション、ウェブページの高速スクロールまたはパン、テキスト文書の高速スクロール、portabledocumentformat文書の高速スクロールまたはパン、PowerPointプレゼンテーションの高速スクロール、および写真画像の高速スクロールまたはパンのうちの1つであるような操作を実行するためのプロセッサ実行可能命令で構成される、請求項14に記載のコンピューティングデバイス。コンピューティングデバイスであって、プロセッサと、前記プロセッサに結合されたディスプレイと、前記前記プロセッサに結合されたメモリとを含み、前記プロセッサが、前記表示アニメーションの開始時に画像をレンダリングするための第1のレンダリングフォーマットを指定するステップと、前記指定されたレンダリングフォーマットを使用して画像をレンダリングするステップと、前記表示アニメーション中にレンダリングされたフレームのレートを監視するステップと、前記監視されたフレームレートが許容可能な最小値を下回ったときを決定するステップと、前記監視されたフレームレートが前記許容可能な最小値を下回ったことが決定されると、画像をレンダリングするための第2のレンダリングフォーマットを指定するステップであり、前記第2のレンダリングフォーマットが前記第1のレンダリングフォーマットよりも処理を必要としない、ステップと、前記監視されたフレームレートが前記許容可能な最小値未満であることが決定されると、前記アニメーションの第1の速度を記憶するステップと、前記アニメーションの速度が前記記憶された第1の速度未満であるときを決定するステップと、前記現在の指定されたレンダリングフォーマットが前記第2のレンダリングフォーマットであり、前記アニメーションの前記速度が前記記憶された第1の速度未満であることが決定されたとき、前記第1のレンダリングフォーマットを指定するステップとを含む操作を実行するためのプロセッサ実行可能命令で構成される、コンピューティングデバイス。前記プロセッサが、前記現在指定されているレンダリングフォーマットが前記第2のフォーマットであり、前記監視されたフレームレートが前記許容可能な最小値を下回ったことが決定されたとき、画像をレンダリングするための第3のレンダリングフォーマットを指定し、前記アニメーションの第2の速度を記憶するステップと、前記アニメーションの速度が前記記憶された第2の速度未満であるときを決定するステップと、前記現在の指定されたレンダリングフォーマットが前記第3のレンダリングフォーマットであり、前記アニメーションの前記速度が前記記憶された第2の速度未満であることが決定されたとき、前記第2のレンダリングフォーマットを指定するステップとをさらに含む操作を実行するためのプロセッサ実行可能命令で構成される、請求項19に記載のコンピューティングデバイス。前記プロセッサが、前記現在指定されているレンダリングフォーマットが前記第3のフォーマットであり、前記監視されたフレームレートが前記許容可能な最小値を下回ったことが決定されたとき、画像をレンダリングするための第4のレンダリングフォーマットを指定し、前記アニメーションの第3の速度を記憶するステップと、前記アニメーションの速度が前記記憶された第3の速度未満であるときを決定するステップと、前記現在の指定されたレンダリングフォーマットが前記第4のレンダリングフォーマットであり、前記アニメーションの前記速度が前記記憶された第3の速度未満であることが決定されたとき、前記第3のレンダリングフォーマットを指定するステップとをさらに含む操作を実行するためのプロセッサ実行可能命令で構成される、請求項20に記載のコンピューティングデバイス。前記プロセッサが、前記第1、第2、および第3のレンダリングフォーマットがアプリケーションの一部として定義されるような操作を実行するためのプロセッサ実行可能命令で構成される、請求項21に記載のコンピューティングデバイス。前記プロセッサが、前記監視されたフレームレートがあらかじめ定義された前の間隔の間にレンダリングされたフレームの数に基づくような操作を実行するためのプロセッサ実行可能命令で構成される、請求項19に記載のコンピューティングデバイス。前記プロセッサが、前記監視されたフレームレートが移動平均フレームレートに基づくような操作を実行するためのプロセッサ実行可能命令で構成される、請求項19に記載のコンピューティングデバイス。前記プロセッサが、前記表示アニメーションが高速リストスクロールアニメーション、ウェブページの高速スクロールまたはパン、テキスト文書の高速スクロール、portabledocumentformat文書の高速スクロールまたはパン、PowerPointプレゼンテーションの高速スクロール、および写真画像の高速スクロールまたはパンのうちの1つであるような操作を実行するためのプロセッサ実行可能命令で構成される、請求項19に記載のコンピューティングデバイス。前記プロセッサが、前記表示アニメーションがゲームアプリケーションによって生成されるような操作を実行するためのプロセッサ実行可能命令で構成される、請求項19に記載のコンピューティングデバイス。コンピューティングデバイスであって、前記表示アニメーション中にレンダリングされたフレームのレートを監視するための手段と、前記監視されたフレームレートが許容可能な最小値未満であることが決定されると、計算量的にあまり複雑ではない項目をレンダリングするための手段であり、前記計算量的にあまり複雑ではない項目は通常の項目よりも速くレンダリングすることができる、手段と、前記監視されたフレームレートが前記許容可能な最小値未満であることが決定されると、前記アニメーションの速度を記憶するための手段と、前記アニメーションの速度が前記記憶された速度を下回ると、通常の項目をレンダリングするための手段とを含むコンピューティングデバイス。レンダリングされたフレームのレートを監視するための手段が、あらかじめ定義された前の間隔の間にレンダリングされたフレームの数に基づいてレンダリングされたフレームの前記レートを監視するための手段を含む、請求項27に記載のコンピューティングデバイス。レンダリングされたフレームのレートを監視するための手段が、移動平均フレームレートに基づいてレンダリングされたフレームの前記レートを監視するための手段を含む、請求項27に記載のコンピューティングデバイス。前記計算量的にあまり複雑ではない項目がアプリケーションの一部として定義される、請求項27に記載のコンピューティングデバイス。前記表示アニメーションが高速リストスクロールアニメーション、ウェブページの高速スクロールまたはパン、テキスト文書の高速スクロール、portabledocumentformat文書の高速スクロールまたはパン、PowerPointプレゼンテーションの高速スクロール、および写真画像の高速スクロールまたはパンのうちの1つである、請求項27に記載のコンピューティングデバイス。コンピューティングデバイスであって、前記表示アニメーションの開始時に画像をレンダリングするための第1のレンダリングフォーマットを指定するための手段と、前記指定されたレンダリングフォーマットを使用して画像をレンダリングするための手段と、前記表示アニメーション中にレンダリングされたフレームのレートを監視するための手段と、前記監視されたフレームレートが許容可能な最小値を下回ったときを決定するための手段と、前記監視されたフレームレートが前記許容可能な最小値を下回ったことが決定されると、画像をレンダリングするための第2のレンダリングフォーマットを指定するための手段であり、前記第2のレンダリングフォーマットが前記第1のレンダリングフォーマットよりも処理を必要としない、手段と、前記監視されたフレームレートが前記許容可能な最小値未満であることが決定されると、前記アニメーションの第1の速度を記憶するための手段と、前記アニメーションの速度が前記記憶された第1の速度未満であるときを決定するための手段と、前記現在の指定されたレンダリングフォーマットが前記第2のレンダリングフォーマットであり、前記アニメーションの前記速度が前記記憶された第1の速度未満であることが決定されたとき、前記第1のレンダリングフォーマットを指定するための手段とを含むコンピューティングデバイス。前記現在指定されているレンダリングフォーマットが前記第2のフォーマットであり、前記監視されたフレームレートが前記許容可能な最小値を下回ったことが決定されたとき、画像をレンダリングするための第3のレンダリングフォーマットを指定し、前記アニメーションの第2の速度を記憶するための手段と、前記アニメーションの速度が前記記憶された第2の速度未満であるときを決定するための手段と、前記現在の指定されたレンダリングフォーマットが前記第3のレンダリングフォーマットであり、前記アニメーションの前記速度が前記記憶された第2の速度未満であることが決定されたとき、前記第2のレンダリングフォーマットを指定するための手段とをさらに含む、請求項32に記載のコンピューティングデバイス。前記現在指定されているレンダリングフォーマットが前記第3のフォーマットであり、前記監視されたフレームレートが前記許容可能な最小値を下回ったことが決定されたとき、画像をレンダリングするための第4のレンダリングフォーマットを指定し、前記アニメーションの第3の速度を記憶するための手段と、前記アニメーションの速度が前記記憶された第3の速度未満であるときを決定するための手段と、前記現在の指定されたレンダリングフォーマットが前記第4のレンダリングフォーマットであり、前記アニメーションの前記速度が前記記憶された第3の速度未満であることが決定されたとき、前記第3のレンダリングフォーマットを指定するための手段とをさらに含む、請求項33に記載のコンピューティングデバイス。前記第1、第2、および第3のレンダリングフォーマットがアプリケーションの一部として定義される、請求項34に記載のコンピューティングデバイス。レンダリングされたフレームのレートを監視するための手段が、あらかじめ定義された前の間隔の間にレンダリングされたフレームの数に基づいてレンダリングされたフレームの前記レートを監視するための手段を含む、請求項33に記載のコンピューティングデバイス。レンダリングされたフレームのレートを監視するための手段が、移動平均フレームレートに基づいてレンダリングされたフレームの前記レートを監視するための手段を含む、請求項33に記載のコンピューティングデバイス。前記表示アニメーションが高速リストスクロールアニメーション、ウェブページの高速スクロールまたはパン、テキスト文書の高速スクロール、portabledocumentformat文書の高速スクロールまたはパン、PowerPointプレゼンテーションの高速スクロール、および写真画像の高速スクロールまたはパンのうちの1つである、請求項33に記載のコンピューティングデバイス。前記表示アニメーションがゲームアプリケーションによって生成される、請求項33に記載のコンピューティングデバイス。前記表示アニメーション中にレンダリングされたフレームのレートを監視するステップと、前記監視されたフレームレートが許容可能な最小値未満であることが決定されると、計算量的にあまり複雑ではない項目をレンダリングするステップであり、前記計算量的にあまり複雑ではない項目は通常の項目よりも速くレンダリングすることができる、ステップと、前記監視されたフレームレートが前記許容可能な最小値未満であることが決定されると、前記アニメーションの速度を記憶するステップと、前記アニメーションの速度が前記記憶された速度を下回ると、通常の項目をレンダリングするステップとを含む操作をコンピューティングデバイスのプロセッサに実行させるように構成されるプロセッサ実行可能命令を記録した、プロセッサ可読記録媒体。前記記録された命令が、前記監視されたフレームレートがあらかじめ定義された前の間隔の間にレンダリングされたフレームの数に基づくような操作をコンピューティングデバイスのプロセッサに実行させるように構成される、請求項40に記載のプロセッサ可読記録媒体。前記記録された命令が、前記監視されたフレームレートが移動平均フレームレートに基づくような操作をコンピューティングデバイスのプロセッサに実行させるように構成される、請求項40に記載のプロセッサ可読記録媒体。前記記録された命令が、前記計算量的にあまり複雑ではない項目がアプリケーションの一部として定義されるような操作をコンピューティングデバイスのプロセッサに実行させるように構成される、請求項40に記載のプロセッサ可読記録媒体。前記記録された命令が、前記表示アニメーションが高速リストスクロールアニメーション、ウェブページの高速スクロールまたはパン、テキスト文書の高速スクロール、portabledocumentformat文書の高速スクロールまたはパン、PowerPointプレゼンテーションの高速スクロール、および写真画像の高速スクロールまたはパンのうちの1つであるような操作をコンピューティングデバイスのプロセッサに実行させるように構成される、請求項40に記載のプロセッサ可読記録媒体。前記表示アニメーションの開始時に画像をレンダリングするための第1のレンダリングフォーマットを指定するステップと、前記指定されたレンダリングフォーマットを使用して画像をレンダリングするステップと、前記表示アニメーション中にレンダリングされたフレームのレートを監視するステップと、前記監視されたフレームレートが許容可能な最小値を下回ったときを決定するステップと、前記監視されたフレームレートが前記許容可能な最小値を下回ったことが決定されると、画像をレンダリングするための第2のレンダリングフォーマットを指定するステップであり、前記第2のレンダリングフォーマットが前記第1のレンダリングフォーマットよりも処理を必要としない、ステップと、前記監視されたフレームレートが前記許容可能な最小値未満であることが決定されると、前記アニメーションの第1の速度を記憶するステップと、前記アニメーションの速度が前記記憶された第1の速度未満であるときを決定するステップと、前記現在の指定されたレンダリングフォーマットが前記第2のレンダリングフォーマットであり、前記アニメーションの前記速度が前記記憶された第1の速度未満であることが決定されたとき、前記第1のレンダリングフォーマットを指定するステップとを含む操作をコンピューティングデバイスのプロセッサに実行させるように構成されるプロセッサ実行可能命令を記録した、プロセッサ可読記録媒体。前記記録された命令が、前記現在指定されているレンダリングフォーマットが前記第2のフォーマットであり、前記監視されたフレームレートが前記許容可能な最小値を下回ったことが決定されたとき、画像をレンダリングするための第3のレンダリングフォーマットを指定し、前記アニメーションの第2の速度を記憶するステップと、前記アニメーションの速度が前記記憶された第2の速度未満であるときを決定するステップと、前記現在の指定されたレンダリングフォーマットが前記第3のレンダリングフォーマットであり、前記アニメーションの前記速度が前記記憶された第2の速度未満であることが決定されたとき、前記第2のレンダリングフォーマットを指定するステップとをさらに含む操作をコンピューティングデバイスのプロセッサに実行させるように構成される、請求項45に記載のプロセッサ可読記録媒体。前記記録された命令が、前記現在指定されているレンダリングフォーマットが前記第3のフォーマットであり、前記監視されたフレームレートが前記許容可能な最小値を下回ったことが決定されたとき、画像をレンダリングするための第4のレンダリングフォーマットを指定し、前記アニメーションの第3の速度を記憶するステップと、前記アニメーションの速度が前記記憶された第3の速度未満であるときを決定するステップと、前記現在の指定されたレンダリングフォーマットが前記第4のレンダリングフォーマットであり、前記アニメーションの前記速度が前記記憶された第3の速度未満であることが決定されたとき、前記第3のレンダリングフォーマットを指定するステップとをさらに含む操作をコンピューティングデバイスのプロセッサに実行させるように構成される、請求項46に記載のプロセッサ可読記録媒体。前記記録された命令が、前記第1、第2、および第3のレンダリングフォーマットがアプリケーションの一部として定義されるような操作をコンピューティングデバイスのプロセッサに実行させるように構成される、請求項47に記載のプロセッサ可読記録媒体。前記記録された命令が、前記監視されたフレームレートがあらかじめ定義された前の間隔の間にレンダリングされたフレームの数に基づくような操作をコンピューティングデバイスのプロセッサに実行させるように構成される、請求項45に記載のプロセッサ可読記録媒体。前記記録された命令が、前記監視されたフレームレートが移動平均フレームレートに基づくような操作をコンピューティングデバイスのプロセッサに実行させるように構成される、請求項45に記載のプロセッサ可読記録媒体。前記記録された命令が、前記表示アニメーションが高速リストスクロールアニメーション、ウェブページの高速スクロールまたはパン、テキスト文書の高速スクロール、portabledocumentformat文書の高速スクロールまたはパン、PowerPointプレゼンテーションの高速スクロール、および写真画像の高速スクロールまたはパンのうちの1つであるような操作をコンピューティングデバイスのプロセッサに実行させるように構成される、請求項45に記載のプロセッサ可読記録媒体。前記記録された命令が、前記表示アニメーションがゲームアプリケーションによって生成されるような操作をコンピューティングデバイスのプロセッサに実行させるように構成される、請求項45に記載のプロセッサ可読記録媒体。様々な態様は、コンピューティングデバイスにおいて表示アニメーションを実施するための方法を含み、方法は、表示アニメーション中にレンダリングされたフレームのレートを監視するステップと、監視されたフレームレートが許容可能な最小値未満であることが決定されると、計算量的にあまり複雑ではない項目をレンダリングするステップであり、計算量的にあまり複雑ではない項目は通常の項目よりも速くレンダリングすることができる、ステップと、監視されたフレームレートが許容可能な最小値未満であることが決定されると、アニメーションの速度を記憶するステップと、アニメーションの速度が記憶された速度を下回ると、通常の項目をレンダリングするステップとを含む。監視されたフレームレートは、様々な方法のうちのいずれかで決定することができる。たとえば、フレームレートは、あらかじめ定義された前の間隔の間にレンダリングされたフレームの数に基づき得る。別の例では、フレームレートは、達成されたフレームレートの移動平均または移動平均レートを反映するフレームレートの計算に基づき得る。プレースホルダー項目は、アプリケーションの一部として定義され得る。計算量的にあまり複雑ではない項目は、より低い解像度のもの、レンダリングするのに高価なグラフィック要素を除外する、より小さいサイズまたはあまり詳細ではないもの、およびメモリから呼び出すことができ、または場合によっては計算量的に複雑ではないようにレンダリングすることができる固定の画像要素である画像オブジェクトを含み得る。表示アニメーションは、高速リストスクロールアニメーション、ウェブページの高速スクロールまたはパン、テキスト文書の高速スクロール、portabledocumentformat文書の高速スクロールまたはパン、PowerPointプレゼンテーションの高速スクロール、および写真画像の高速スクロールまたはパンのうちの1つとすることができる。さらなる態様は、コンピューティングデバイスにおいて表示アニメーションを実施するための方法を含み、方法は、表示アニメーションの開始時に画像をレンダリングするための第1のレンダリングフォーマットを指定するステップと、指定されたレンダリングフォーマットを使用して画像をレンダリングするステップと、表示アニメーション中にレンダリングされたフレームのレートを監視するステップと、監視されたフレームレートが許容可能な最小値を下回ったときを決定するステップと、監視されたフレームレートが許容可能な最小値を下回ったことが決定されると、画像をレンダリングするための第2のレンダリングフォーマットを指定するステップであり、第2のレンダリングフォーマットが第1のレンダリングフォーマットよりも処理を必要としない、ステップと、監視されたフレームレートが許容可能な最小値未満であることが決定されると、アニメーションの第1の速度を記憶するステップと、アニメーションの速度が記憶された第1の速度未満であるときを決定するステップと、現在の指定されたレンダリングフォーマットが第2のレンダリングフォーマットであり、アニメーションの速度が記憶された第1の速度未満であることが決定されると、第1のレンダリングフォーマットを指定するステップとを含む。方法は、現在指定されているレンダリングフォーマットが第2のフォーマットであり、監視されたフレームレートが許容可能な最小値を下回ったことが決定されたとき、画像をレンダリングするための第3のレンダリングフォーマットを指定し、アニメーションの第2の速度を記憶するステップと、アニメーションの速度が記憶された第2の速度未満であるときを決定するステップと、現在の指定されたレンダリングフォーマットが第3のレンダリングフォーマットであり、アニメーションの速度が記憶された第2の速度未満であることが決定されると、第2のレンダリングフォーマットを指定するステップとをさらに含み得る。方法は、現在指定されているレンダリングフォーマットが第3のフォーマットであり、監視されたフレームレートが許容可能な最小値を下回ったことが決定されたとき、画像をレンダリングするための第4のレンダリングフォーマットを指定し、アニメーションの第3の速度を記憶するステップと、アニメーションの速度が記憶された第3の速度未満であるときを決定するステップと、現在の指定されたレンダリングフォーマットが第4のレンダリングフォーマットであり、アニメーションの速度が記憶された第3の速度未満であることが決定されると、第3のレンダリングフォーマットを指定するステップとをさらに含み得る。第1、第2、および第3のレンダリングフォーマットは、アプリケーションの一部として定義され得る。監視されたフレームレートは、あらかじめ定義された前の間隔の間にレンダリングされたフレームの数、または移動平均フレームレートに基づき得る。表示アニメーションは、高速リストスクロールアニメーション、ウェブページの高速スクロールまたはパン、テキスト文書の高速スクロール、portabledocumentformat文書の高速スクロールまたはパン、PowerPointプレゼンテーションの高速スクロール、および写真画像の高速スクロールまたはパン、またはゲームアプリケーションによって生成されるもののうちの1つとすることができる。さらなる態様は、プロセッサに結合されたメモリおよびディスプレイを含むコンピューティングデバイスを含み、プロセッサは、上記で説明した方法の操作を実行するためのプロセッサ実行可能命令で構成されている。さらなる態様は、上記で説明した方法の操作を実行するための手段を含むコンピューティングデバイスを含む。さらなる態様は、上記で説明した方法の操作をコンピューティングデバイスのプロセッサに実行させるように構成される、プロセッサ実行可能命令を記憶した、プロセッサ可読記録媒体を含む。本明細書に組み込まれ、本明細書の一部を構成する添付の図面は、本発明の例示的な態様を示す。上記の概略的な説明および下記の発明を実施するための形態とともに、図面は、本発明の機能を説明するのに役立つ。様々な態様が、添付の図面を参照して詳細に説明される。可能な場合はいつでも、同じまたは同様の部分を指すのに、図面全体にわたって同じ参照番号を使用する。具体的な例および実装形態への言及は、説明を目的とし、本発明の範囲または本特許請求の範囲を限定するものではない。例示的なという言葉は、一例、実例または例としてを意味するように本明細書で使用される。本明細書に例示的と記載されるいかなる実装形態も、必ずしも他の実装形態よりも好ましいまたは有利であると解釈されるべきではない。本明細書で使用するコンピューティングデバイスおよびモバイルデバイスは、携帯電話、パーソナルテレビジョン受信機、携帯情報端末、パームトップコンピュータ、ノートブックコンピュータ、パーソナルコンピュータ、ワイヤレス電子メール受信機およびセルラー電話受信機およびTreoデバイス、マルチメディアインターネット対応携帯電話、ならびにプログラマブルプロセッサ、メモリ、およびディスプレイを含む類似の電子デバイスのうちのいずれか1つまたはすべてを指す。本発明の様々な態様を示すために使用される一態様例では、コンピューティングデバイスは、一体型のタッチスクリーンディスプレイを含む携帯電話である。しかし、この態様は、単に様々な態様の1つの例示的な実装形態として存在するだけにすぎず、したがって、特許請求の範囲に記載される主題の他の可能な実装形態を除外するためのものではない。本明細書で使用するリストという用語は、そのようなデータ構造によってリスト要素に連続的にアクセスできるか否かにかかわらず、アレイ、連結リスト、双方向連結リスト、または順次リストとして論理的に提示することができる任意の類似のデータ構造を含む様々なデータ構造のうちの任意の1つを指すことができる。様々な態様では、通常のフォーマットでオブジェクトまたは画像をレンダリングする間に処理リソースが最小フレームレートを満たすことができないときでも、方法と装置によって、コンピューティングデバイスは、最小フレームレート要件内で移動するオブジェクトまたは画像の画像をレンダリングすることができる。様々な態様では、コンピューティングデバイスのプロセッサは、移動するグラフィックスまたは項目のレンダリングの間に達成されたフレームレートを監視することができる。達成されたフレームレートが許容可能な最小値未満に低下すると、プロセッサは、レンダリングされたオブジェクトまたは項目の現在の速度に注目し、レンダリングされた画像における標準のグラフィックオブジェクトまたは項目に取って代わる軽量の計算量的にあまり複雑ではないオブジェクトまたは項目のレンダリングを開始することができる。プレースホルダー項目は、レンダリングがより速く、作成がより速いように定義され、選択され、これによって、アニメーションにおいてより速いフレームレートを達成できるようになる。計算量的にあまり複雑ではないオブジェクトまたは項目は、より低い解像度のもの、レンダリングするのに高価なグラフィック要素を除外する、より小さいサイズまたはあまり詳細ではないもの、およびメモリから呼び出すことができ、または場合によっては計算量的に複雑ではないようにレンダリングすることができる固定の画像要素である画像オブジェクトを含み得る。参照しやすいように、そのような計算量的にあまり複雑ではない画像項目を、本明細書では、プレースホルダー項目と呼ぶ。そのような軽量のプレースホルダー項目のレンダリングは、フレームレートが許容可能な最小値未満に低下した同一速度にグラフィックス項目の速度が減少したことをプロセッサが決定するまで継続し得る。この状態が検出されると、プロセッサは、通常のオブジェクトまたは項目のレンダリングの要求を開始することができる。プレースホルダー項目は、計算量的にあまり複雑ではないように選択され、したがってレンダリングする処理が少なくて済むので、処理リソースは、アニメーションによって必要とされるオブジェクトまたは項目の移動レートをサポートしながら、最小フレームレートでプレースホルダー項目をレンダリングすることが可能である。本明細書の例として使用されるアプリケーションは、たとえばコンピューティングデバイスタッチスクリーンディスプレイ上のユーザのフリックジェスチャーに応答して生成することができるような高速リストスクロールアニメーションである。様々な態様は、2つ以上のタイプの軽量のプレースホルダー項目で実施することができ、これによって、最小フレームレート要件をサポートしながら、レンダリングされたグラフィック品質を最適化することができる。様々な態様について、画像項目およびリスト要素を参照して以下で説明するが、態様は、ディスプレイにおいてスクロールまたはパンされる任意の表示されたコンテンツまたは画像に適用することもできる。様々な態様のそのような他のアプリケーションの例は、ウェブページテキストおよび画像、ワード処理文書、PDF文書、PowerPointプレゼンテーション、テキスト文書、写真画像画像、コンピュータゲームグラフィックスなどのスクロールまたはパンを含む。様々な態様を説明するのに有用な例示的な実装形態は、たとえばユーザがモバイルコンピューティングデバイス上に表示される連絡先リスト上でフリックジェスチャーを実行するときに行われ得るリストの高速スクロールを伴う。連絡先のリスト、ワード処理文書、またはピクチャ画像など、文書のコンテンツ全体の画像が表示エリア内に適合しない場合があるので、大部分のグラフィカルユーザインターフェースは、文書画像をデバイスビューウィンドウ内で移動できるようにするために、スクロールおよびパン機能を提供する。ユーザは、ボタンを押し、またはタッチスクリーンディスプレイにわたって指をドラッグして、GUI内でそのようなスクロールおよびパンを達成することができる。タッチスクリーンコンピューティングデバイス上のGUIシステムで可能にされる一般的な文書制御ジェスチャーは、ドラッグ、パン、スクロール、およびフリックのジェスチャーを含む。ドラッグ、パン、およびスクロールのジェスチャーにおいて、表示された画像は、ユーザの指のタッチ位置に従って比較的ゆっくり移動する。しかし、フリックジェスチャーでは、コンピューティングデバイスは、表示された文書を高速に、ユーザのタッチジェスチャーパラメータに基づいて決定された距離の間移動させる。コンピューティングデバイスが連絡先リスト上のフリックジェスチャーを受信する一例が図1に示される。図1に示されるモバイルデバイス100は、写真および個々の名前および電話番号からなる連絡先リスト104が提示されるタッチスクリーンディスプレイ102を備える。そのようなモバイルデバイス100に実装されるGUIは、一般的に、フリックジェスチャー機能をサポートしており、ユーザは、矢印106によって示されるように、指108をタッチスクリーンに当て、一方向に非常に速く指を移動させ、ジェスチャーが終了すると、あたかも表面から何かを払うかのように、指108をディスプレイ102から持ち上げる。フリックジェスチャーは標準GUI機能なので、多くのデバイスおよびアプリケーション開発者は、ジェスチャーが一貫した結果を提供するのを好む。たとえば、特定の速度のフリックジェスチャーに応答して、リストスクロールは、所定時間内に所定数の項目をスクロールするように構成され得る。これは、デバイスの処理能力、現在のシステム負荷、またはレンダリングされる項目の複雑さにかかわらず、ユーザがそれらのコンピューティングデバイスの一貫した結果を経験することを確実にする。さらに、リストの移動は、しばしば、時間に応じてあらかじめ定義された移動挙動を呈するように設計されている。たとえば、多くのモバイルデバイスGUIシステムおよび連絡先リストアプリケーションは、図3Aに示されるものなど、放物線速度分布を呈するように構成される。多くのプログラムされたアニメーションでは一般的であるように、矢印302として示したアニメーションの持続時間は、アニメーションが常に同じ持続時間を呈するように、あらかじめ定義された値である。このようにして、リストは、瞬間的に加速し、次いで、最終的なリスト位置で停止する前に、一貫した速度対時間の軌道300に従って減速するように見える。さらに、移動するオブジェクトまたは項目が、レンダリングされた画像の処理容量または複雑さに関係なく、開始位置から同じ距離で止まるように、アニメーションにおいて達成される移動量も固定される。そのようなあらかじめ定義された挙動は、アニメーションの持続時間に依存するアルゴリズムまたは機能の形態で実施され得る。図2は、あらかじめ定義された速度対時間の挙動に従って移動する表示を生成するために実施され得るソフトウェア操作200の一例を示す。ブロック202でアニメーションが開始すると、アニメーションを実施するプロセッサは、アニメーションの適切な移動挙動の決定において使用するための時間基準を提供するために、ブロック204でタイマーを開始することができる。ブロック206で、プロセッサは、次に表示されたフレームにおいて、表示されたオブジェクトまたは項目がどれほど移動するかを計算するために、タイマーからの現在時間を使用することができる。たとえば、アニメーションが高速リストスクロールである場合、ブロック206で、プロセッサは、表示されたリストの各項目がどれほど移動したか、ならびにいくつの項目が表示ウィンドウの上部または下部に入っているかを決定することができる。ブロック208で、プロセッサは、計算された移動量を使用して、次にレンダリングすべき画像または項目を決定することができる。たとえば、プロセッサは、移動量を使用して、次のフレームにおいてレンダリングしなければならないリスト内の項目を識別することができる。ブロック210で、プロセッサは、たとえば、レンダリングエンジンに対して、レンダリングすべきオブジェクトおよび項目、ならびに表示エリア内のそれらの位置を識別することによって、次のフレームのレンダリングを要求することができる。決定ブロック212において、プロセッサは、アニメーションが完了したかどうかを決定することができ、そうでない場合、ブロック206に戻り、次の瞬間に応じて移動量を計算することができる。アニメーションが完了すると、ブロック214でアニメーションシーケンスが終了する。たとえば項目のリストのスクロールなど、そのグラフィックスがより速く移動するほど、単位時間当たり、より多くの項目が作成され、初期化される必要がある。リストの項目の作成、初期化、およびレンダリングは、時間がかかる。より速く移動するグラフィックスは、1秒当たり、より多くの項目を表示することを必要とし、したがって、単位時間当たり、より多くの新しい画像オブジェクトを初期化することを必要とする。したがって、より多くのリスト項目の作成および初期化が必要とされるので、より速く移動するグラフィックスでのフレームのレンダリングは、ゆっくり移動するグラフィックスの場合よりも長くかかり得る。その結果、達成されたフレームレートは、低下する。いくつかの状況では、図2に示される方法によるオブジェクトおよび画像の作成および初期化は、最小フレームレート要件を満たすほど速く達成することができない。これは、携帯電話のようなモバイルデバイスにおいて、またはオブジェクトもしくは項目が非常に速く移動するとき、およびまたは作成し、初期化し、レンダリングすべきオブジェクトもしくは項目が計算量的に困難であるときによくあるように、コンピューティングデバイスの処理リソースが制限されるときに起こり得る。達成されたフレームレートが最小フレームレート要件を下回ると、画像フレームがドロップされ、レンダリングされたフレーム間をオブジェクトが移動する距離が、オブジェクトがぎくしゃくした方法でジャンプしたり移動したりするように見えるほど大きくなるので、ディスプレイは、ちらつくように見えることがある。これは、図3Aに示されるアニメーションにプログラムされる表示挙動の後の時間に応じたオブジェクトの作品、初期化、およびレンダリングを示す図3Bに示される。実線304で示されるように、たとえばアニメーションの始めなど、オブジェクトまたは項目がアニメーションにおいて比較的ゆっくり移動している間、プロセッサは、所望の最小フレームレートを達成するのに十分速くオブジェクトまたは項目を作成し、初期化し、レンダリングすることができ得る。しかしながら、移動するオブジェクトまたは項目の速度が、処理リソースによって所望のフレームレート内でそれらをもはや作成し、初期化し、レンダリングすることができない時点に達すると、306でいくつかのフレームがドロップされるので、結果的にちらつく表示となり得、一方、提示されたフレーム308は、フレーム間の知覚可能な距離を移動したオブジェクトまたは項目を示す。この視覚的性能の低下は、実線310で示されるように、プロセッサが最小フレームレートを再度サポートすることができるレベルにオブジェクトのまたは項目の速度が低下するまで継続し得る。表示性能のそのような低下は、しばしば限られた計算能力を有するモバイルコンピューティングデバイスで起こり得、したがって、高速で移動するリストまたは他のオブジェクトのレンダリングによって容易に圧倒され得る。プロセッサ集約型のバックグラウンド操作が並行して実行されており、したがって、最小フレームレート要件を満たしながら、要求された画像レンダリングタスクについていくには利用可能な処理リソースが不十分である場合、そのように低下した性能は、パーソナルコンピュータなど、より有能なコンピューティングデバイスでも起こり得る。アプリケーション開発者は、一般的に、30フレーム毎秒など、何らかの許容可能な最小値以上のフレームレート性能を見ることを好む。歴史的に、アプリケーション開発者は、アニメーションの広範囲なプロトタイピングによる許容可能な最小値未満のフレームレート、またはドロップしたフレームの視覚的な性能の低下を回避するために懸命に働く。そのような試行錯誤のアプリケーションの開発は、時間がかかり、高価であり、画像レンダリングおよびアニメーションの挙動に影響を及ぼし得る様々なコンピューティングプラットフォーム、動作状態、およびバックグラウンドプロセスを考慮に入れることができない。様々な態様は、高速なグラフィックの移動によってフレームレートが許容可能な最小値を下回る問題を、アプリケーション開発プロセスを単純化する方法で解決する。様々な態様では、コンピューティングデバイスは、より迅速にレンダリングすることができる計算量的にあまり複雑ではない画像またはオブジェクトを代用し、それによって、表示された画像において制御された低下で最小限の許容可能なフレームレート要件をアニメーションが満たすことができるように構成される。プロセッサが達成されたフレームレートを監視し、自動的にプレースホルダーオブジェクトまたは項目のレンダリングを実施するので、アプリケーション開発者は、デバイスのレンダリング性能、個々のオブジェクトもしくは項目のレンダリング時間、またはターゲットコンピューティングデバイス上で実行しているバックグラウンドプロセスについて心配する必要がない。代わりに、アプリケーション開発者は、アプリケーションソフトウェア内で所望の最小フレームレートを指定し、レンダリングプロセスが標準グラフィックスまたは項目に関して最小フレームレートを維持することができないときに使用すべきプレースホルダーグラフィック項目を指定または提供することができる。様々な態様の操作が図4Aおよび図4Bに示されており、これらの図は、プリプログラムされたオブジェクトの移動対時間分布300、および時間に応じて達成されたフレームレート400を示す3次元グラフである。図4Aを参照すると、フリックジェスチャーに応答する高速リストスクロールの例において、モバイルデバイスは、線300で示されるようなスクロール速度対時間分布に従うように構成され得る。処理リソース制限のため、1秒当たりに生成され、開始され、レンダリングされ得るフレームの数は、リストスクロールの速度が時間とともに増加するにつれて変化し得る。これは、オブジェクトの速度が時間とともに増加するにつれて低下するフレームレートを示す線400で示される。線402は、たとえばデバイス製造業者またはアプリケーション開発者によって指定することができる所望の最小フレームレートに対応する。様々な態様では、線300に示されるように移動アニメーションが実行される間、プロセッサは、達成されたフレームレートを追跡し、たとえばポイント404で示されるように、フレームレート400が所望の最小フレームレート402未満に低下したときを検出することができる。この状態が検出されると、プロセッサは、たとえばポイント406で示されるその時点に、オブジェクトのまたは項目のアニメーション速度に注目し、その速度または移動パラメータ408をメモリに記憶する。プロセッサは、より軽量であり、したがって、アニメーションにおいて通常の項目よりも高速にレンダリングすることができるプレースホルダー項目またはオブジェクトのレンダリングも開始する。図4Bを参照すると、アニメーション速度が増加し続けるときでさえ、プレースホルダー項目のレンダリングによって、フレームレートは、最小許容フレームレート402を超えて増加することができる。これは、ラインセグメント412に示されるように、フレームレートが最小値を超えて増加する時点である、プロセッサがプレースホルダー項目のレンダリングを開始するまで、通常の項目をレンダリングする達成されたフレームレートがラインセグメント410で低下することを示すフレームレートのグラフに示される。次いで、プロセッサは、アニメーションの速度が、フレームレートが最初に最小値402未満に低下した速度408以下であることを決定するまで、プレースホルダー項目をレンダリングし続ける。これは、ポイント414として示される。第2の状態が検出されると、プロセッサは、プレースホルダー項目のレンダリングを中止し、通常の項目のレンダリングに切り替わる。破線416で示されるように、これによって、達成されたフレームレートは、最小フレームレート402以上のレートまで低下する場合がある。アニメーションがその結論に向かって減速するにつれて、ラインセグメント418で示されるように、達成されたフレームレートは増加し得る。図4Bに示されるように、様々な態様によって、達成されたフレームレートは、最小フレームレート402を上回ったままになる。この一貫したフレームレートの挙動は、プロセッサが容易に利用可能な値に対する2つの単純な比較を実行することによって、すなわち、達成されたフレームレートを最小しきい値と比較し、アニメーション速度をメモリに記憶された値と比較することによって、達成される。高速リストスクロールアニメーション300の例における様々な態様の操作が図5A~図5Cにさらに示される。図5Aを参照すると、リストスクロールアニメーションの始めに、リスト項目速度が増加するとき、レンダリングされたリスト項目の達成されたフレームレートが最小しきい値を上回ったままであるので、通常のリスト項目は、線502に示されるようにレンダリングされる。図5Bを参照すると、ポイント504で決定されるように、達成されたフレームレートが最小値以下であることをプロセッサが決定すると、プロセッサは、現在のリスト項目速度506を記憶し、破線508によって示されるように、プレースホルダー項目のレンダリングを開始する。プロセッサは、ポイント510で示されるように、リスト項目速度がもう一度記憶されたリスト項目速度506以下となるまで、プレースホルダー項目をレンダリングし続ける。その後、プロセッサは、図5Cに示される線512によって示されるように、通常の項目のレンダリングに戻る。快いユーザの視覚経験を可能にするために、多種多様なプレースホルダー項目が様々な態様において実施され得る。プレースホルダー項目の性質は、アニメーション化される文書のタイプ、ならびにアニメーションのタイプに依存し得る。さらに、図10を参照しながら後述するように、様々な態様は、一般のコンピュータグラフィックアニメーションに適用することができ、プレースホルダー項目は、本質的に、非常に一般的で、アプリケーション開発者によって定義することができる。リストアプリケーションに適したプレースホルダー項目の例が図6A~図6Dに示される。図6Aを参照すると、携帯電話用の連絡先アプリケーションなど、多くのデータレコードを含むアプリケーションは、写真602およびテキストデータ604など様々なデータ要素を含み得るリスト600の形態でデータを編成することができる。そのようなリストをスクロールするために、ユーザは、キーを押す、またはタッチスクリーンディスプレイ上でタッチジェスチャーを実行して、リストをスクロールさせることができる。リストがスクロールするにつれて、アプリケーションは、画像602のそれぞれおよび604のテキストデータのすべてを含むリスト600の可視部分内に画像のすべてをレンダリングすることをプロセッサに要求する。図6Bを参照すると、様々な態様で使用され得るプレースホルダー項目610のうちの1つの形態は、個々の画像602を標準の単純なグラフィック612に置き換えることを伴う。そのような標準の単純なグラフィック612は、写真612よりもはるかにレンダリングしやすい可能性があり、リストが高速スクロールするときでさえ、テキストデータ604を含むプレースホルダー項目を最小フレームレートでレンダリングすることができる。単純なグラフィック612では、多種多様な写真602よりもレンダリングするための処理が少なくて済むので、図6Bに示されるプレースホルダー項目は、図6Aに示される通常の項目よりもより軽量である。さらにより軽量の例示的なプレースホルダー項目が図6Cに示されており、写真602がブランクスペース622に置き換えられている。単純なグラフィック612さえレンダリングする必要がないので、図6Cに示されるプレースホルダー項目620は、依然として最小フレームレートを達成しながら、高速スクロール移動の間に、リストテキストデータ604を、レンダリングされた画像に含めることができる。高速スクロールアニメーション速度が、最小フレームレート未満に低下することなく、アニメーションにおいてテキストデータ604さえレンダリングすることができないポイントまで増加する場合、たとえば図6Dに示されるように、さらにより軽量のプレースホルダー項目が使用され得る。このプレースホルダー項目630では、テキストデータが標準グラフィック632に置き換えられ、したがって、個々のテキストデータをレンダリングする必要がない。特定の項目をレンダリングする必要なしに移動の錯覚を作り出すために、ディスプレイ上の異なる場所に同じグラフィック画像を配置することによって、リスト項目データに標準グラフィック632を使用することによって、プロセッサは、画像を簡単にレンダリングすることができる。図6Bから図6Dに示される例は、ユーザに対してデータをあまり有意に提示しないように見えるが、これらのプレースホルダー項目の提示は、高速アニメーションの間のみ起こる。したがって、ユーザは、図6Bに示されるように、その実際の写真602が標準のグラフィック612に置き換えられていることに気づいていない可能性がある。さらにより高い速度では、ユーザは、写真が表示されていないことに気づいていない、または図6Cに示されるように、写真が提示されていないことにかまわない可能性がある。さらにより高い速度では、ユーザは、テキスト様のグラフィックから移動するテキストを区別することができない可能性があるので、テキストが高速で移動していったように見えるように構成されているグラフィックプレースホルダー項目632にテキストデータ604が置き換えられていることに気づかない可能性がある。多種多様な種類のプレースホルダー項目を、アプリケーション開発者によって定義され得るように、実装することができる。たとえば、リストアプリケーションでは、レンダリングされた画像からデータの一部をドロップすることによって、軽量のプレースホルダー項目が提供され得る。たとえば、連絡先リストスクロールアニメーションでは、個人の名前のみがプレースホルダー項目に現れるように、連絡先および電話番号データがレンダリングされた項目からドロップされ得る。いくつかの実装形態では、情報のカテゴリのドロップによって、リストが速くスクロールしている間、各リスト項目の高さをもたらし、スクロール速度が低下するにつれて、カテゴリが拡張し、またはカテゴリのプレースホルダーエンティティがいっぱいになり得る。したがって、プレースホルダーの使用は、スクロールするリストの項目の高さに影響を及ぼす可能性がある。別の例として、軽量のプレースホルダー項目を提供するために、シェーディング、グループ識別子、および他のリスト項目の画像強調がアニメーション画像からドロップされ得る。さらなる例として、プレースホルダーは、リストの現在位置のインデックス文字の表示など、リストにおける見出しまたはセグメントヘッダに縮小され得る。図7は、様々な態様によるコンピューティングデバイス内で実施することができる例示的な方法700を示す。アニメーション202の開始時に、コンピューティングデバイスは、ブロック204でアニメーションに関連付けられたタイマーを開始することができる。ブロック206で、コンピューティングデバイスは、現在時間に応じて、オブジェクトまたは項目の移動量を計算し、ブロック208で、この計算に基づいて、次のフレームでレンダリングすべきオブジェクトまたは項目を決定することができる。ブロック210で、コンピューティングデバイスは、たとえばレンダリングエンジンによるレンダリングを要求することによって、決定されたオブジェクトまたは項目のレンダリングを開始する。ブロック702で、コンピューティングデバイスは、レンダリングプロセスで達成されている現在のフレームレートを決定し、またはそれに注目することができる。達成された現在のフレームレートの決定は、瞬時値、移動平均値、または統計的に決定された値に基づいて、あらかじめ定義された前の時間間隔内にレンダリングされたフレームの数に基づいて計算され得る。決定ブロック704で、コンピューティングデバイスは、ブロック702で決定された現在のフレームレートが最小しきい値未満であるかどうかを決定することができる。フレームレートが最小レート以上である場合、コンピューティングデバイスは、決定ブロック212においてアニメーションが完了したかどうかを決定することができる。アニメーションが完了していない場合、コンピューティングデバイスがブロック206に戻って次の移動量を計算することによって、アニメーションは継続し得る。アニメーションが完了すると、ブロック214でアニメーションが終わる。コンピューティングデバイスは、アニメーションの間、現在達成されているフレームレートが最小しきい値未満であることを決定した場合、ブロック706で、現在のアニメーション速度またはブロック206で計算された移動量をメモリに記憶することができる。ブロック708で、コンピューティングデバイスは、図2のブロック206を参照して上記で説明したものと同様の方法で、現在の時間に応じて、次のフレームにおける画像または項目の移動量を計算することができる。オプションのブロック710で、コンピューティングデバイスは、ブロック208を参照して上記で説明したものと同様の方法で、次のフレームにおいてレンダリングすべき次の画像または項目を決定することができる。いくつかのプレースホルダー項目は、スクロールする文書から取得されたデータのレンダリングを伴わない場合があり、この場合、レンダリングのために項目を識別する必要がないので、この決定はオプションである。ブロック712で、コンピューティングデバイスは、プレースホルダー項目をレンダリングすることができる。決定ブロック714で、コンピューティングデバイスは、ブロック708で計算された現在のアニメーション速度が記憶された速度値以下かどうかを決定することができる。現在の速度が記憶された速度値よりも大きい場合、コンピューティングデバイスは、ブロック708に戻って現在時間に応じて次の移動量を計算し、アニメーションを継続することができる。コンピューティングデバイスは、現在のアニメーション速度が記憶された速度値以下であることを決定すると、決定ブロック212に戻ってアニメーションが完了したかどうかを決定することができる。アニメーションが完了していない場合、コンピューティングデバイスは、上記で説明したように、ブロック206に戻ることによって、通常の項目をレンダリングするアニメーションを継続することができる。さらなる態様では、コンピューティングデバイスが、様々なアニメーション速度による許容できるグラフィック表現とともに最小フレームレートを維持できるようにするために、2つ以上のタイプのプレースホルダー項目を実装することができる。たとえば、図8Aに示されるように、アプリケーションは、2つのプレースホルダー項目、すなわち、中解像度プレースホルダー、および低解像度プレースホルダーで構成され得る。この図示の例では、ポイント802で示されるように、達成されたフレームレートが最小値を下回るまで、通常の項目をレンダリングすることができる。この状態に遭遇すると、コンピューティングデバイスプロセッサは、現在のアニメーション速度804を記憶し、線806によって示されるように、中解像度プレースホルダー項目のレンダリングを開始する。ポイント808で示されるように、達成されたフレームレートが再度最小値未満であることをプロセッサが決定するまで、中解像度プレースホルダー項目のレンダリング806が継続する。フレームレートが最小値を下回るこの状態が2回目に検出されると、コンピューティングデバイスは、現在のアニメーション速度810をメモリに記憶し、低解像度プレースホルダー項目のレンダリング812を開始する。アニメーション速度が記憶された値810を下回るまで、低解像度プレースホルダー項目のレンダリング812が継続し、その後でコンピューティングデバイスが中解像度プレースホルダー項目のレンダリング806を開始する。アニメーション速度が804の記憶された値を下回るまで、中解像度プレースホルダー項目のレンダリング806が継続し、その後でコンピューティングデバイスが通常の解像度項目のレンダリング502を開始する。実装され得る異なるタイプの解像度のプレースホルダーの数は、無制限である。たとえば、図8Bは、3つの異なるプレースホルダーが実装される態様を示す。この例では、中および低解像度のプレースホルダーの実装は、図8Aを参照して上記で説明したように進み得る。しかしながら、ポイント820で示されるように、低解像度項目のレンダリングでさえ、処理リソースが最小フレームレートを満たすことができない場合、コンピューティングデバイスは、線824によって示されるように、たとえば単純なシェーディングバンド、単純なグラフィックス、またはプレースホルダーテキストなど、最小のプレースホルダーをレンダリングすることによって、最小フレームレートを維持することができる。フレームレートが最小値を下回るこの状態が3回目に検出されると、コンピューティングデバイスは、現在のアニメーション速度822をメモリに記憶し、最小解像度プレースホルダー項目のレンダリング824を開始する。アニメーション速度が記録された値822を下回るまで、最小解像度プレースホルダー項目のレンダリング844が継続し、その後でコンピューティングデバイスが低解像度プレースホルダー項目のレンダリング812を開始する。図9は、最小フレームレートを維持するために、任意の数の異なるタイプのプレースホルダーを可能にするための態様に従って、コンピューティングデバイスにおいて実装することができる例示的な方法900を示す。方法900のブロック902で、アニメーションは開始することができ、これは、ブロック904でタイマーを開始することを伴い得る。ブロック906で、コンピューティングデバイスは、レンダリングフォーマットを通常または標準として指定し、速度基準およびレンダリングフォーマットを追跡するためにインデックスが使用されるとき、インデックスiを初期化することによって、アニメーションを初期化することができる。この操作は、アニメーションの始めに、通常のオブジェクトまたは項目をレンダリングする必要があること、または、項目を通常のフォーマットでレンダリングする必要があることを示す。ブロック908で、コンピューティングデバイスは、現在時間に応じて、移動パラメータまたはアニメーションの速度を計算することができる。ブロック910で、コンピューティングデバイスは、次の画像位置またはレンダリングすべき項目を決定し、ブロック912で、現在指定されているフォーマットを使用したそれらの画像または項目のレンダリングを要求することができる。現在指定されているフォーマットは、ブロック906、または後述するように、ブロック924もしくは928のうちの1つで指定されるフォーマットである。この操作において、コンピューティングデバイスは、レンダリングすべきオブジェクトまたは画像、ならびに使用すべきレンダリングフォーマットをレンダリングエンジンに対して指定することができる。ブロック914で、コンピューティングデバイスは、図7を参照して上記で説明したものと同様の方法で現在のフレームレートに注目し、またはそれを決定する。決定ブロック916で、コンピューティングデバイスは、フレームレートが最小しきい値未満であるかどうかを決定する。コンピューティングデバイスは、フレームレートが最小しきい値未満に低下したことを決定した場合、速度基準およびレンダリングフォーマットを追跡するためにインデックスを使用するとき、ブロック921でインデックスiを増分し、現在の速度または移動パラメータを、たとえばスタックに、またはインデックス付き変数としてなど、メモリに記憶し、レンダリングフォーマットを次に軽いプレースホルダーフォーマットとして指定することができる。次いで、コンピューティングデバイスは、決定ブロック920でアニメーションが完了したかどうかを決定することができる。アニメーションが完了していない場合、コンピューティングデバイスは、ブロック908に戻って、時間に応じて次の移動パラメータまたは距離を計算することによって、アニメーションを継続し得る。ブロック912で、コンピューティングデバイスは、ブロック924で指定された現在指定されているフォーマットFiを使用して、次の画像または項目をレンダリングする。より少ない処理で済むフォーマットを指定することによって、コンピューティングデバイスは、指定されたアニメーション速度に適合させながら、最小フレームレートを維持することができる。コンピューティングデバイスは、フレームレートが最小許容フレームレート以上あることを決定した場合、現在のアニメーション速度または移動パラメータが、ブロック922で記憶された現在記憶されている速度Si以下であるかどうかを決定することができる。現在の速度が、現在記憶されている速度Siよりも大きい場合、コンピューティングデバイスは、決定ブロック920においてアニメーションが完了したかどうかを決定することができる。アニメーションが完了していない場合、コンピューティングデバイスは、ブロック908に戻って、時間に応じて次の移動パラメータまたは距離を計算することによって、アニメーションを継続し得る。ブロック908~920の操作は、アニメーションの間、所望の最小フレームレートを維持するために、ブロック924で指定されたさらに軽量のレンダリングフォーマットFiで継続することができる。より軽いフォーマットが指定されるたびに、コンピューティングデバイスは、インデックスiを増分し、同じく、対応するアニメーション速度Siを記憶することができる。たとえば、プレースホルダーフォーマットは、たとえば陰影を除去し、次いで他の照明効果を除去し、次いで画像の詳細を低減し、次いでいくつかの画像要素の代わりにカートゥーンを使用し、次いでいくつかのイメージ要素をドロップするなどして、レンダリングの複雑さを順次低減することができる。したがって、ちらつきの外観を回避するために、最小フレームレートを達成しながら、表示された画像が増加する速度で一貫した品質を維持するように見えることを可能にするために、任意の数のプレースホルダー項目を指定することができる。コンピューティングデバイスは、現在の速度または移動パラメータが現在のレンダリングフォーマットに関連付けられた記憶された速度Si以下であることを決定した場合、ブロック925でインデックスiを減分し、ブロック926で前のレンダリングフォーマットに関連付けられた前に記憶されているアニメーション速度を呼び出し、ブロック928で、次に重いレンダリングフォーマットをレンダリングフォーマットとして指定することができる。次いで、コンピューティングデバイスは、決定ブロック920でアニメーションが完了したかどうかを決定することができる。アニメーションが完了していない場合、コンピューティングデバイスは、ブロック908に戻って、時間に応じて次の移動パラメータまたは距離を計算することによって、アニメーションを継続し得る。ブロック912で、コンピューティングデバイスは、ブロック924で指定された現在指定されているフォーマットFiを使用して、次の画像または項目をレンダリングする。より多くの処理を必要とするレンダリングフォーマットを指定することによって、コンピューティングデバイスは、最小フレームレートを指定されたアニメーション速度で維持しながら、より高い解像度またはより通常の表示画像を生成することができる。ブロック916、922および924での操作は、最小フレームレートを維持するために、増加するアニメーション要求に応答して、さらに軽量のレンダリングフォーマットを順次実装することを可能にし、一方、ブロック918、926、および928の操作は、アニメーション要求が減少するにつれて、増加する重みのレンダリングフォーマットを実装するために、このプロセスを順次元に戻すことを可能にする。したがって、方法900によって、コンピューティングデバイスは、所望の最小フレームレートを維持するために、アプリケーション開発者の仕様に従って、プレースホルダーまたはレンダリングフォーマットを調整することができる。上記の例はリストアプリケーションおよび高速リストスクロールアニメーションについて言及しているが、態様および特許請求の範囲は、そのようなアプリケーションに限定されておらず、任意のアニメーションルーチンによって実施することができる。図9を参照して上記で説明した一般の方法は、たとえば、ウェブページの高速スクロールまたはパン、テキスト文書の高速スクロール、portabledocumentformat文書の高速スクロールまたはパン、PowerPointプレゼンテーションの高速スクロール、および写真画像の高速スクロールまたはパンを含めて、高速に移動する画像および文書項目をレンダリングする任意のコンピューティングデバイスで実施することができる。そのような画像の移動は、上記で説明したように、ユーザ入力に応答することができるが、コンピューティングデバイス上で実行しているゲームアプリケーションなど、アプリケーションの通常の機能の一部とすることもできる。さらに、アニメーションは、図5A~図5C、図8A、および図8Bに示されるように、放物的または対称的な時間分布に従う必要はない。図9に示される方法900と同様の方法を実装する様々な態様は、図10に示されるものなど、矛盾する方法で、処理要求に関して変わるアニメーションのために実装され得る。たとえば、様々な態様は、コンピュータゲーム、またはゲームアプリケーションを実行しているコンピューティングデバイスにおいて実装され得る。図10は、図9に示されるものと同様の態様方法を実装するコンピューティングデバイスが、様々なオブジェクト速度をランダムに呈するアプリケーションについて、時間に応じて、オブジェクト速度または移動パラメータに応答して、どのようにしてレンダリングフォーマットを調整することができるかを示すグラフである。コンピューティングデバイスが最小フレームレートでオブジェクトまたは画像をレンダリングすることが可能な限り、レンダリングは、線952によって示されるように、標準または通常のレンダリングフォーマットを使用して達成することができる。アニメーションおよびまたはバックグラウンドプロセスの要求によって、達成されたフレームレートが、ポイント954で示されるように、最小値を下回ると、コンピューティングデバイスは、現在のオブジェクト速度または移動パラメータを第1の速度値S1として記憶し、線956によって示されるように、第1のレンダリングフォーマットF1でオブジェクトおよび画像のレンダリングを開始することができる。現在のオブジェクト速度または移動パラメータの要求が、ポイント960で示されるように、記憶された値958を下回ると、コンピューティングデバイスは、標準または通常のレンダリングフォーマットを使用して、オブジェクトおよび画像のレンダリングに戻ることができる。アニメーションおよびまたはバックグラウンドプロセスの要求によって、達成されたフレームレートが、ポイント962で示されるように、再度最小値を下回ると、コンピューティングデバイスは、そのオブジェクト速度または移動パラメータ値S1を再度記憶し、第1のレンダリングフォーマットF1を使用して、オブジェクトおよび画像のレンダリングに戻ることができる。アニメーションおよびまたはバックグラウンドプロセスの要求によって、達成されたフレームレートが、ポイント964で示されるように、再度最小値を下回ると、コンピューティングデバイスは、そのオブジェクト速度または移動パラメータ値S2を記憶し、第2のレンダリングフォーマットF2を使用して、オブジェクトおよび画像のレンダリングを開始することができる。現在のオブジェクト速度または移動パラメータの要求が、ポイント970で示されるように、記憶された値S2を下回ると、コンピューティングデバイスは、次に重い第1のレンダリングフォーマットF1を使用して、オブジェクトおよび画像のレンダリングに戻ることができる。アニメーションおよびまたはバックグラウンドプロセスの要求によって、達成されたフレームレートが、ポイント972で示されるように、再度最小値を下回ると、コンピューティングデバイスは、そのオブジェクト速度または移動パラメータ値S2を再度記憶し、第2のレンダリングフォーマットF2を使用して、オブジェクトおよび画像のレンダリングに戻ることができる。アニメーションおよびまたはバックグラウンドプロセスの要求によって、達成されたフレームレートが、ポイント964で示されるように、再度最小値を下回ると、コンピューティングデバイスは、そのオブジェクト速度または移動パラメータ値S2を記憶し、第2のレンダリングフォーマットF2を使用して、オブジェクトおよび画像のレンダリングを開始することができる。アニメーションおよびまたはバックグラウンドプロセスの要求によって、達成されたフレームレートが、ポイント974で示されるように、再度最小値を下回ると、コンピューティングデバイスは、そのオブジェクト速度または移動パラメータ値S3を記憶し、第3のレンダリングフォーマットF3を使用して、オブジェクトおよび画像のレンダリングを開始することができる。アニメーションの要求が、それぞれポイント980、982、および984で示されるように、記憶された速度値S3、S2、およびS1を下回ると、コンピューティングデバイスは、それに応じて、第2のレンダリングフォーマットF2、第1のレンダリングフォーマットF1、および標準または通常のレンダリングフォーマットに戻ることができる。達成されたフレームレートにおける変化は、オブジェクトおよび項目をレンダリングするために利用可能な処理リソースの量、ならびにグラフィックアニメーションの処理要求を低減するバックグラウンドプロセスに一部起因し得ることを諒解されたい。そのようなバックグラウンドプロセスは、アプリケーション開発者が予想するのは非常に困難であり得る。したがって、態様によって、コンピューティングデバイスは、バックグラウンドプロセスがコンピューティングデバイス画像レンダリング機能を制限するときでも、アニメーションのための一貫したフレームレート性能を送出し続けることができる。レンダリングプロセスのためのプレースホルダーが実装された時点で実施されたアニメーション速度または移動パラメータのみを追跡することによって、様々な態様は、バックグラウンド処理を監視したり予測したりする必要なく、アニメーションおよびバックグラウンドプロセスの要求における変化に対応するための単純な機構を提供する。プレースホルダーのレンダリングがリセットされるたびに、所与のプレースホルダーの実装に関連付けられたアニメーション速度または移動パラメータがリセットされ得るので、態様は、不必要に画像レンダリングを低減したり、複雑なアルゴリズムまたはデバイス特定の実装を必要としたりすることなく、バックグラウンドプロセスにおける動的な変化に対応することができる。さらなる態様において、コンピューティングデバイスは、最小フレームレートをサポートしながら、アニメーショングラフィックスのほぼ最適なレンダリングを可能にするプレースホルダーまたはレンダリングフォーマットを選択するように構成され得る。この態様では、コンピューティングデバイスは、画質の最低限の低下でフレームレートの最小値を満たすことを可能にするレンダリングフォーマットを推測または推定することができる。そのような推測または推定は、アニメーションの現在の速度または処理要求、現在のフレームレート性能、およびまたはバックグラウンドプロセス要求に基づき得る。推測または推定されたレンダリングフォーマットがいったん実装されると、コンピューティングデバイスは、それが最小フレームレートを上回るか下回るかを決定するために、達成されたフレームレートを監視することができる。達成されたフレームレートが依然として最小しきい値未満である場合、コンピューティングデバイスは、より軽いレンダリングフォーマットを実装し、達成されたフレームレートを監視し続けることができる。達成されたフレームレートが、たとえばしきい値量だけ最小値を上回る場合、コンピューティングデバイスは、より重いレンダリングフォーマットを実装し、達成されたフレームレートを監視し続けることができる。このようにして、コンピューティングデバイスは、ほぼ最適なレンダリングを達成するために、最小フレームレートと一致してレンダリングフォーマットを連続的に調整することができる。この態様では、アプリケーション開発者は、所望の最小フレームレートを指定し、様々なプレースホルダーまたはレンダリングフォーマットを識別または特徴づけるだけでよい。上述のように、テキストおよび画像オブジェクトのリストに対する態様の上記の例の適用は、例示的な目的のためのみに提供される。態様は、ウェブページテキストおよび画像、ワード処理文書、portabledocumentformat文書、PowerPointプレゼンテーション、テキスト文書、写真画像などのスクロールまたはパンなど、ディスプレイ上でスクロールまたはパンされる任意の表示されたコンテンツまたは画像に適用することもできる。上記の態様は、図11に示されるようなモバイルデバイスおよび図12に示されるようなノートブックコンピュータなど、様々なコンピューティングデバイスのうちの任意のものの上に実装され得る。一般的なモバイルデバイス1100は、図11に示される構成要素を共有する。たとえば、コンピューティングデバイス1100は、内部メモリ1192に結合されたプロセッサ1191およびタッチ面入力デバイス1104またはディスプレイ1102を含むことができる。タッチ面入力デバイス1104は、たとえば抵抗検知タッチスクリーン、容量検知タッチスクリーン、赤外線検知タッチスクリーン、音響圧電検知タッチスクリーンなど、任意のタイプのタッチスクリーンディスプレイ1101とすることができる。様々な態様は、任意の特定のタイプのタッチスクリーンディスプレイ1101またはタッチパッド技術に限定されない。さらに、コンピューティングデバイス1100は、プロセッサ1191に結合されたワイヤレスデータリンクおよびまたはセルラー電話トランシーバ1195に接続される、電磁放射を送信および受信するためのアンテナ1194を有し得る。タッチ面入力デバイス1104を含まないコンピューティングデバイス1100は、通常、キーパッド1196または小型キーボード、およびポインティングデバイスとして働くメニュー選択キーまたはロッカスイッチ1197を含む。プロセッサ1191は、様々な態様を適用することもできる外部タッチパッドまたはタッチ面にプロセッサ1191を接続するための、たとえば汎用シリアルバスまたはFireWireコネクタソケットなどのワイヤードネットワークインターフェース1198にさらに接続され得る。いくつかの実装形態では、タッチ面を、タッチスクリーンディスプレイ1104またはディスプレイ1102の外の電子デバイス1100のエリアに設けることができる。たとえば、キーパッド1196は、埋込み型の容量性タッチセンサを有するタッチ面を含むことができる。他の実施形態では、キーパッド1196が排除されて、タッチスクリーンディスプレイ1104が完全なGUIを設けるようにしてもよい。また別の実装形態では、タッチ面は、ケーブルコネクタ1198に対するケーブルによって、またはプロセッサ1191に結合されたワイヤレストランシーバによってコンピューティングデバイス1100に接続することができる外部タッチパッドでもよい。上記で説明した態様は、たとえば図12に示されるラップトップコンピュータ1200など、様々なコンピューティングデバイス内で実施することもできる。多くのラップトップコンピュータは、コンピュータのポインティングデバイスとして働くタッチパッドタッチ面を含み、およびしたがって、タッチスクリーンディスプレイを備えたモバイルデバイス上で実施されるものと同様のドラッグ、スクロール、およびフリックジェスチャーを受信することができる。ラップトップコンピュータ1200は通常、揮発性メモリ1202と、ディスクドライブ1203のような大容量の不揮発性メモリとに結合されたプロセッサ1201を含む。コンピュータ1200はまた、プロセッサ1201に結合された、フレキシブルディスクドライブ1204およびコンパクトディスクドライブ1205も含み得る。コンピュータデバイス1200はまた、USBもしくはFireWireコネクタソケット、または、プロセッサ1201をネットワークに結合するための他のネットワーク接続回路1206のような、データ接続を確立し外部メモリデバイスを受け入れるための、プロセッサ1201に結合されたいくつかのコネクタポートを含み得る。ノートブック構成において、コンピュータハウジングは、プロセッサ1201にすべて結合されるタッチパッド1207、キーボード1208、およびディスプレイ1209を含む。コンピューティングデバイスの他の構成は、周知であるように、プロセッサに結合されたコンピュータマウスまたはトラックボールを含み得る。コンピューティングデバイスプロセッサ1191、1201は、上記で説明した様々な態様の機能を含む、様々な機能を実行するようにソフトウェア命令によって構成され得る、任意のプログラマブルマイクロプロセッサ、マイクロコンピュータ、または1つもしくは複数の多重プロセッサチップであり得る。いくつかのポータブルコンピューティングデバイス1100では、1つのプロセッサをワイヤレス通信機能専用とし、1つのプロセッサを他のアプリケーションの実行専用とするなど、複数のプロセッサ1191を設けることができる。プロセッサは、通信チップセットの一部として含めることもできる。上記の方法の説明およびプロセスフロー図は、単に説明のための例として提供したものであり、様々な実施形態のステップを提示された順序で実行しなければならないことを要求または暗示するものではない。当業者なら諒解するように、上記の実施形態におけるステップの順番は、任意の順番で実行可能である。その後、次いで、次になどの単語は、ステップの順序を限定するものではなく、これらの単語は、単に、読者に方法の説明を案内するために使用される。さらに、たとえば、冠詞a、anまたはtheなどを用いた単数形での請求要素への言及は、その要素を単数に限定するものとして解釈されるべきではない。本明細書で開示する実施形態に関して説明する、様々な例示的な論理ブロック、モジュール、回路、およびアルゴリズムステップは、電子ハードウェア、コンピュータソフトウェア、またはその両方の組合せとして実装され得る。ハードウェアおよびソフトウェアのこの互換性を明確に示すために、様々な例示的構成要素、ブロック、モジュール、回路、およびステップが、概してそれらの機能に関して上記で説明されている。そのような機能がハードウェアまたはソフトウェアとして実装されるかどうかは、特定のアプリケーションおよび全体的なシステムに課せられた設計制約に依存する。当業者は、各特定のアプリケーションについて様々なやり方で記載された機能を実装することができるが、そのような実装の決定は、本発明の範囲からの逸脱をもたらすものとして解釈されるべきではない。本明細書で開示される態様に関して説明される様々な例示的論理、論理ブロック、モジュール、および回路を実装するために使用されるハードウェアは、汎用プロセッサ、デジタルシグナルプロセッサ、特定用途向け集積回路、フィールドプログラマブルゲートアレイもしくは他のプログラマブル論理デバイス、個別ゲートもしくはトランジスタ論理、個別ハードウェア構成要素、または、本明細書に記載の機能を実行するように設計されたそれらの任意の組合せで実装または実行され得る。汎用プロセッサは、マイクロプロセッサでもよいが、代替として、そのプロセッサは任意の従来のプロセッサ、コントローラ、マイクロコントローラ、またはステートマシンでもよい。プロセッサはまた、コンピューティングデバイスの組合せ、たとえば、DSPとマイクロプロセッサとの組合せ、複数のマイクロプロセッサ、DSPコアと連携する1つまたは複数のマイクロプロセッサ、または任意の他のそのような構成として実装され得る。代替的に、いくつかのステップまたは方法が、所与の機能に固有の回路によって実行され得る。1つまたは複数の例示的な態様では、説明した機能は、ハードウェア、ソフトウェア、ファームウェア、またはそれらの組合せで実装することができる。ソフトウェアで実装する場合、機能は、1つまたは複数の命令もしくはコードとしてコンピュータ可読媒体上に記憶され、または、コンピュータ可読媒体を介して送信され得る。本明細書で開示した方法またはアルゴリズムのステップは、有形の非一時的コンピュータ可読記憶媒体上に常駐し得るプロセッサ実行可能ソフトウェアモジュールにおいて具現化され得る。有形の非一時的コンピュータ可読記憶媒体は、コンピュータによってアクセスされ得る任意の利用可能な媒体であってよい。限定ではなく、例として、そのような非一時的コンピュータ可読媒体は、RAM、ROM、EEPROM、CDROMもしくは他の光ディスクストレージ、磁気ディスクストレージもしくは他の磁気ストレージデバイス、または、命令もしくはデータ構造の形態の所望のプログラムコードを記憶するために使用され、コンピュータによってアクセスされ得る、任意の他の媒体を含み得る。本明細書で使用する場合、ディスクおよびディスクは、コンパクトディスク、レーザディスク、光ディスク、デジタル多用途ディスク、フレキシブルディスク、およびブルーレイディスクを含み、ディスクは、通常、磁気的にデータを再生し、ディスクは、レーザで光学的にデータを再生する。上記の組合せも非一時的コンピュータ可読媒体の範囲内に含めるべきである。さらに、方法またはアルゴリズムの動作は、コンピュータプログラム製品に組み込まれ得る、有形の非一時的機械可読媒体およびまたはコンピュータ可読媒体上のコードおよびまたは命令の1つまたは任意の組合せ、もしくはそのセットとして常駐し得る。開示される実施形態の上記の説明は、当業者が本発明を作成または使用できるようにするために、提供される。これらの実施形態への様々な修正が当業者には容易に明らかになることになり、本明細書に定義する一般原理は、本発明の趣旨および範囲を逸脱することなしに他の実施形態に適用され得る。したがって、本発明は、本明細書に示す実施形態に限定されるものではなく、以下の特許請求の範囲および本明細書で開示する原理および新規の特徴に一致する最大の範囲を与えられるものである。