【文献】
中西葵, 外2名,”Android SDK 逆引きハンドブック 初版”,株式会社シーアンドアール研究所,2011年 5月 6日,第1版,p.171-176,327-346
【文献】
武部健一,”iPadプログラミング最初の一歩 高速動作と大画面を生かす!パーティクルによる電光掲示板アプリを作る”,日経ソフトウエア,日本,日経BP社,2010年 7月24日,第13巻, 第9号,p.44-49
【文献】
落合健太郎,”パーティクルを使った画面遷移の演出テクニック”,web creators,日本,(株)エムディエヌコーポレーション,2008年 6月 1日,第78巻,p.154-155
(58)【調査した分野】(Int.Cl.,DB名)
ユーザによる画面上でのタッチ操作の検出時に、前記タッチ操作によるタッチ方式とタッチ位置に基づいて、前記視覚効果基本制御パラメータ及び前記3D変換パラメータを更新し、更新された前記3D変換パラメータ及び前記視覚効果基本制御パラメータに基づいて前記動的壁紙における前記背景と前記粒子を再びレンダリングするステップは、
前記ユーザによる画面上でのスライド操作の検出時に、前記前記スライド操作によるスライド位置に基づいて、前記3D変換パラメータを更新し、更新された前記3D変換パラメータに基づいて前記背景と前記粒子を再びレンダリングし、前記スライド操作によるスライド位置に基づいて前記背景と前記粒子のビューポイントを変更するステップを含む
ことを特徴とする請求項2に記載の生成方法。
ユーザによる画面上でのタッチ操作の検出時に、前記タッチ操作によるタッチ方式とタッチ位置に基づいて、前記視覚効果基本制御パラメータ及び前記3D変換パラメータを更新し、更新された前記3D変換パラメータ及び前記視覚効果基本制御パラメータに基づいて前記動的壁紙における前記背景と前記粒子を再びレンダリングするステップは、
前記ユーザによる画面上でのタップ操作の検出時に、前記視覚効果基本制御パラメータを更新し、更新された前記視覚効果基本制御パラメータに基づいて前記粒子を再びレンダリングし、粒子の現在の位置と、前記タップ操作によるタップ位置との相対関係に応じて、現在の画面における各粒子の位置を変化させ、前記タップ位置を中心とする特定半径エリア内の粒子を、前記タップ位置を中心として外側に向けて運動させ、前記特定半径エリア外の粒子を元の軌道で運動させるステップを含む
ことを特徴とする請求項2に記載の生成方法。
前記ユーザによる画面上でのタップ操作の検出時に、前記視覚効果基本制御パラメータを更新し、更新された前記視覚効果基本制御パラメータに基づいて前記粒子を再びレンダリングするステップは、
ユーザが画面をタップ操作したかどうかを検出し、ユーザが画面をタップ操作した場合、タップパラメータを取得してタップマークをクリアするステップと、
タップマークをクリアした後、またはユーザによる画面上でのタップ操作が検出されなかった場合、前記粒子の放出量に応じて、新たな粒子を生成する必要があるかどうかを判断し、新たな粒子を生成する必要がある場合、新たな粒子を生成するステップと、
全ての粒子が更新されたかどうかを判断し、全ての粒子の更新が完了された場合、ユーザが画面をタップ操作したかどうかを再び検出し、全ての粒子の更新が完了していない場合、前記粒子の位置更新時間に基づいて粒子を更新し、前記タップパラメータに基づいて前記タップ位置を中心とする特定半径エリア内にある前記粒子を確定し、対応する視覚効果基本制御パラメータを更新し、更新された前記視覚効果基本制御パラメータに基づいて、前記タップ位置を中心とする特定半径エリア内にある粒子を、前記タップ位置を中心として外側に向けて運動させるステップと、
動的壁紙において粒子が前記消失奥行きエリアに位置しているかどうかを判断し、位置している場合、前記消失奥行きエリア内に位置する粒子を削除し、全ての粒子が更新されたかどうかを再び判断し、全ての粒子が更新されていない場合、全ての粒子が更新されたかどうかを直接的に再び判断するステップと
を含むことを特徴とする請求項5に記載の生成方法。
【発明の概要】
【発明が解決しようとする課題】
【0003】
本発明は、特殊な動的インタラクティブ効果を持つ動的壁紙を生成することができる、動的壁紙の生成方法及び生成装置を提供する。
【課題を解決するための手段】
【0004】
本発明に係る動的壁紙の生成方法は、
視覚効果基本制御パラメータを初期化し、3D変換パラメータを設定するステップと、
3D変換パラメータ及び視覚効果基本制御パラメータに基づいて背景と粒子をレンダリングして、動的壁紙を生成するステップと、
ユーザによる画面上でのタッチ操作の検出時に、タッチ操作によるタッチ方式とタッチ位置に基づいて、視覚効果基本制御パラメータ及び3D変換パラメータを更新し、更新された3D変換パラメータ及び視覚効果基本制御パラメータに基づいて動的壁紙における背景と粒子を再びレンダリングするステップとを含む。
【0005】
ここで、前記視覚効果基本制御パラメータは、出現奥行きエリア、粒子属性、及び消失奥行きエリアを含む。
前記粒子属性は、粒子のサイズ、粒子の放出速度、粒子の放出量、粒子の運動方向、粒子の位置更新時間、粒子のライフサイクル、及び粒子の外観属性を含む。
前記3D変換パラメータは、モデル変換パラメータ、ビュー変換パラメータ、射影変換パラメータ、及びビューポート変換パラメータを含む。
【0006】
さらに、前記3D変換パラメータ及び前記視覚効果基本制御パラメータに基づいて背景と粒子をレンダリングするステップは、
前記3D変換パラメータに基づいて前記背景を3D変換して、3D背景を取得し、取得された3D背景を表示するステップと、
前記視覚効果基本制御パラメータと前記3D変換パラメータに基づいて、前記粒子の放出速度、及び粒子の放出量に応じて、前記3D背景において、前記出現奥行きエリアから、運動方向と初期速度を有する粒子をレンダリングし、前記粒子の位置更新時間及び前記粒子の外観属性に基づいて前記粒子の位置と外観を更新し、前記消失奥行きエリアで前記粒子を消失させ、前記粒子が消失した後、前記出現奥行きエリアから、再び前記粒子に新たなラウンドの3D奥行き運動を行わせるステップとを含む。
【0007】
ここで、ユーザによる画面上でのタッチ操作の検出時に、前記タッチ操作によるタッチ方式とタッチ位置に基づいて、前記視覚効果基本制御パラメータ及び前記3D変換パラメータを更新し、更新された前記3D変換パラメータ及び前記視覚効果基本制御パラメータに基づいて前記動的壁紙における前記背景と前記粒子を再びレンダリングするステップは、
前記ユーザによる画面上でのスライド操作の検出時に、前記前記スライド操作によるスライド位置に基づいて、前記3D変換パラメータを更新し、更新された前記3D変換パラメータに基づいて前記背景と前記粒子を再びレンダリングし、前記スライド操作によるスライド位置に基づいて前記背景と前記粒子のビューポイントを変更するステップを含む。
【0008】
ここで、ユーザによる画面上でのタッチ操作の検出時に、前記タッチ操作によるタッチ方式とタッチ位置に基づいて、前記視覚効果基本制御パラメータ及び前記3D変換パラメータを更新し、更新された前記3D変換パラメータ及び前記視覚効果基本制御パラメータに基づいて前記動的壁紙における前記背景と前記粒子を再びレンダリングするステップは、
前記ユーザによる画面上でのタップ操作の検出時に、前記視覚効果基本制御パラメータを更新し、更新された前記視覚効果基本制御パラメータに基づいて前記粒子を再びレンダリングし、粒子の現在の位置と、前記タップ操作によるタップ位置との相対関係に応じて、現在の画面における各粒子の位置を変化させ、前記タップ位置を中心とする特定半径エリア内の粒子を、前記タップ位置を中心として外側に向けて運動させ、前記特定半径エリア外の粒子を元の軌道で運動させるステップを含む。
【0009】
ここで、前記ユーザによる画面上でのタップ操作の検出時に、前記視覚効果基本制御パラメータを更新し、更新された前記視覚効果基本制御パラメータに基づいて前記粒子を再びレンダリングするステップは、
ユーザが画面をタップ操作したかどうかを検出し、ユーザが画面をタップ操作した場合、タップパラメータを取得してタップマークをクリアするステップと、
タップマークがクリアされた後、またはユーザによる画面上でのタップ操作が検出されなかった場合、前記粒子の放出量に応じて、新たな粒子を生成する必要があるかどうかを判断し、新たな粒子を生成する必要がある場合、新たな粒子を生成するステップと、
全ての粒子が更新されたかどうかを判断し、全ての粒子の更新が完了された場合、ユーザが画面をタップ操作したかどうかを再び検出し、全ての粒子の更新が完了していない場合、前記粒子の位置更新時間に基づいて粒子を更新し、前記タップパラメータに基づいて前記タップ位置を中心とする特定半径エリア内にある前記粒子を確定し、対応する視覚効果基本制御パラメータを更新し、更新された前記視覚効果基本制御パラメータに基づいて、前記タップ位置を中心とする特定半径エリアにある粒子を、前記タップ位置を中心として外側に向けて運動させるステップと、
動的壁紙において粒子が前記消失奥行きエリアに位置しているかどうかを判断し、位置している場合、前記消失奥行きエリアに位置する粒子を削除し、全ての粒子が更新されたかどうかを再び判断し、全ての粒子が更新されていない場合、全ての粒子が更新されたかどうかを直接的に再び判断するステップとを含む。
【0010】
本発明に係る動的壁紙の生成装置は、
視覚効果基本制御パラメータを初期化し、3D変換パラメータを設定することに用いられる初期化モジュールと、
3D変換パラメータ及び視覚効果基本制御パラメータに基づいて背景と粒子をレンダリングして、動的壁紙を生成することに用いられるレンダリングモジュールと、
ユーザによる画面上でのタッチ操作の検出時に、前記タッチ操作によるタッチ方式とタッチ位置に基づいて、視覚効果基本制御パラメータ及び3D変換パラメータを更新し、更新された3D変換パラメータ及び視覚効果基本制御パラメータに基づいて動的壁紙における背景と粒子を再びレンダリングすることに用いられるインタラクティブモジュールとを備える。
【0011】
ここで、前記レンダリングモジュールは、
前記3D変換パラメータに基づいて前記背景を3D変換して、3D背景を取得し、取得された3D背景を表示し、
前記視覚効果基本制御パラメータと前記3D変換パラメータに基づいて、前記粒子の放出速度、及び粒子の放出量に応じて、前記3D背景において、前記出現奥行きエリアから、運動方向と初期速度を有する粒子をレンダリングし、前記粒子の位置更新時間及び前記粒子の外観属性に基づいて前記粒子の位置と外観を更新し、前記消失奥行きエリアで前記粒子を消失させ、前記粒子が消失した後、前記出現奥行きエリアから、再び前記粒子に新たなラウンドの3D奥行き運動を行わせることに用いられる。
【0012】
ここで、前記インタラクティブモジュールは、
前記ユーザによる画面上でのスライド操作の検出時に、前記スライド操作によるスライド位置に基づいて、前記3D変換パラメータを更新し、更新された前記3D変換パラメータに基づいて前記背景と前記粒子を再びレンダリングし、前記スライド操作によるスライド位置に基づいて前記背景と前記粒子のビューポイントを変更し、
前記ユーザによる画面上でのタップ操作の検出時に、前記視覚効果基本制御パラメータを更新し、更新された前記視覚効果基本制御パラメータに基づいて前記粒子を再びレンダリングし、粒子の現在の位置と、前記タップ操作によるタップ位置との相対関係に応じて、現在の画面における各粒子の位置を変化させ、前記タップ位置を中心とする特定半径エリア内の粒子を、前記タップ位置を中心として外側に向けて移動させ、前記特定半径エリア外にある粒子を元の軌道で運動させることに用いられる。
【0013】
本発明の有益な効果は以下の通りである。
ユーザによる画面上でのタッチ操作の検出時に、タッチ操作に応じて更新された3D変換パラメータ及び視覚効果基本制御パラメータに基づいて、動的壁紙における背景と粒子を再びレンダリングすることにより、特殊な動的インタラクティブ効果を持つ動的壁紙の生成方法及び生成装置が提供される。本発明により生成された動的壁紙は、直感的な3D奥行き運動粒子効果を人々に与えることができ、且つ、インタラクティブな楽しみを人々に提供することができる。本発明に係る動的壁紙は、従来の静的壁紙及び動的壁紙に比べて、視覚効果、インタラクティブ効果等のユーザ体験の点においてユニークな特徴を持つ。
【発明を実施するための形態】
【0015】
本発明に係る各種の実施形態において、本発明は、特殊な動的インタラクティブ効果を持つ動的壁紙を生成する生成方法及び生成装置、特に、3D奥行き粒子による特殊効果を有する動的壁紙の生成方法及び生成装置を提供する。具体的には、初期状態において壁紙の背景のみを表示し、その後、3D空間における特定の出現奥行きエリアにおいて、所定の放出速度及び所定の放出量の上限に応じて、特定の運動方向と初期速度を持つ粒子要素を連続的に生成し、時間の経過に伴って、これらの粒子要素の位置、外観などの属性を連続的に更新し、これにより、3D奥行き運動を実現する。粒子が特定エリアの境界にまで移動した場合、この粒子はその境界において消失し、その後、この粒子は、出現奥行きエリアから、新たなラウンドの3D奥行き運動を再開する。インタラクションにおいては、ユーザが画面を左右にスライドした場合、壁紙の全体(背景と粒子)のビューポイントがそれに応じて変化する。ユーザが画面をタップした場合、タップ位置を中心とする特定半径エリア内における各粒子の位置が、粒子の現在の位置とタップ位置との相対関係に応じて変化し、これにより、タップ後に粒子の位置擾乱が行われる。なお、この半径エリア外にある粒子は、今回のタップイベントの影響を受けない。今回のタップイベントに対応する処理が終了した後、各粒子は、処理後の位置、外観等の属性に応じて、引き続き上記3D奥行き運動を行う。本発明に係る実施形態の技術的スキームによって生成される動的壁紙は、3D粒子の特殊効果を持ち、且つユーザインタラクションをサポートする。
【0016】
以降では、図面及び実施形態を参照して、本発明をさらに詳しく説明する。なお、ここで説明される具体的な実施形態は、単に本発明を説明するために用いられるものに過ぎず、本発明を限定するものではない。
【0017】
方法の実施形態
本発明の一実施形態によれば、動的壁紙の生成方法が提供される。
図1は、本発明の一実施形態に係る動的壁紙の生成方法のフローチャートである。
図1に示すように、本発明の一実施形態に係る動的壁紙の生成方法は、下記の処理を含む。
【0018】
ステップ101において、視覚効果基本制御パラメータを初期化し、そして3D変換パラメータを設定する。
【0019】
ここで、視覚効果基本制御パラメータは、具体的に、出現奥行きエリア、粒子属性、及び消失奥行きエリアを含む。ここで、粒子属性は、具体的に、粒子のサイズ、粒子の放出速度、粒子の放出量、粒子の運動方向、粒子の位置更新時間、粒子のライフサイクル、及び粒子の外観属性を含む。
【0020】
3D変換パラメータは、具体的に、モデル変換パラメータ、ビュー変換パラメータ、射影変換パラメータ、及びビューポート変換パラメータを含む。
【0021】
ステップ102において、3D変換パラメータ及び視覚効果基本制御パラメータに基づいて背景と粒子をレンダリングして、動的壁紙を生成する。
【0022】
具体的には、ステップ102は、
3D変換パラメータに基づいて背景を3D変換して、3D背景を取得し、取得された3D背景を表示するステップと、
視覚効果基本制御パラメータと3D変換パラメータに基づいて、粒子の放出速度、及び粒子の放出量に応じて、3D背景において、出現奥行きエリアから、運動方向と初期速度を有する粒子をレンダリングし、粒子の位置更新時間及び粒子の外観属性に基づいて粒子の位置と外観を更新し、消失奥行きエリアで粒子を消失させて、粒子の3D奥行き運動を実現し、粒子が消失した後、出現奥行きエリアから、粒子が再び新たなラウンドの3D奥行き運動を行うステップとを含む。
【0023】
ステップ103において、ユーザが画面にタッチした場合、タッチ方式とタッチ位置に基づいて、視覚効果基本制御パラメータ及び3D変換パラメータを更新し、更新された3D変換パラメータ及び視覚効果基本制御パラメータに基づいて動的壁紙における背景と粒子を再びレンダリングする。
【0024】
具体的には、ステップ103では、ユーザが画面をスライドさせた場合、スライド位置に基づいて、3D変換パラメータを更新し、更新された3D変換パラメータに基づいて背景と粒子を再びレンダリングし、スライド位置に基づいて背景と粒子のビューポイントを変更する。
【0025】
ユーザが画面をタップした場合、視覚効果基本制御パラメータを更新し、更新された視覚効果基本制御パラメータに基づいて粒子を再びレンダリングし、粒子の現在の位置とタップ位置との相対関係に応じて、現在の画面における各粒子の位置を変化させ、タップ位置を中心とする特定半径エリア内にある粒子を、タップ位置を中心として外側に向けて運動させ、特定半径エリア外にある粒子を元の軌道で運動させる。
【0026】
ユーザが画面をタップした場合、具体的に下記の処理を含む。
【0027】
ステップ1において、ユーザが画面をタップしたかどうかを判断し、ユーザが画面をタップしたと判断した場合、タップパラメータを取得してタップマークをクリアし、ステップ2を実行する。ユーザが画面をタップしていないと判断した場合、直接ステップ2を実行する。
【0028】
ステップ2において、粒子の放出量に応じて新たな粒子を生成する必要があるかどうかを判断し、新たな粒子を生成する必要がある場合、新たな粒子を生成して、ステップ3を実行する。新たな粒子を生成する必要がない場合、直接ステップ3を実行する。
【0029】
ステップ3において、全ての粒子が更新されたかどうかを判断し、全ての粒子の更新が完了された場合、ステップ1を実行する。全ての粒子の更新が完了していない場合、粒子の位置更新時間に基づいて粒子を更新し、前記タップパラメータに基づいてタップ位置を中心とする特定半径エリア内にある粒子を確定し、対応する視覚効果基本制御パラメータを更新する。そして、更新された視覚効果基本制御パラメータに基づいて、タップ位置を中心とする特定半径エリア内にある粒子を、タップ位置を中心として外側に向けて運動させて、ステップ4を実行する。
【0030】
ステップ4において、動的壁紙において粒子が消失奥行きエリアに位置しているかどうかを判断し、位置している場合、消失奥行きエリア内に位置する粒子を削除して、ステップ3を実行する。粒子が消失奥行きエリアに位置していない場合、直接ステップ3を実行する。
【0031】
以降では、図面を参照して、本発明の実施形態に係る技術的スキームを詳しく説明する。
【0032】
図2は、本発明の一実施形態に係る動的壁紙の生成方法における詳細な処理を示すのフローチャートである。
図2に示すように、この生成方法は、具体的に、下記の処理を含む。
【0033】
ステップS0において、視覚効果基本制御パラメータを初期化し、そして3D変換パラメータを設定する。即ち、アルゴリズム関連パラメータを初期化する。ここで、視覚効果基本制御パラメータは3D変換に関連しないいくつかのパラメータであり、例えば、出現奥行きエリア、粒子属性、及び消失奥行きエリアである。ここで、粒子属性は具体的に、粒子のサイズ、粒子の放出速度、粒子の運動方向、粒子の位置更新時間、粒子のライフサイクル、及び粒子の外観属性を含む。
【0034】
ステップS1において、3D変換を行う。このステップにおいて3D表示に関連するパラメータであるモデル変換パラメータ、ビュー変換パラメータ、射影変換パラメータ、ビューポート変換パラメータ等の各種のパラメータを更新し、そして現在の視覚効果基本制御パラメータ及び3D変換パラメータに基づいて3D変換を行う。このようにしてこれらのモデルパラメータを更新することによって壁紙の全体的な表示効果を変更することができる。
図2に示すように、ユーザにより画面がスライドされて(ステップS6)、変換パラメータが更新され(ステップS7)、これにより3D変換パラメータ(D0)が更新される。これらのパラメータが入力パラメータとしてステップS1に転送され、さらにステップS1の3D変換が行われることによって、全体的なビューポイントの変化によるユーザインタラクティブ効果が実現される。
【0035】
ステップS2において、背景をレンダリングする。このステップでは選択された背景ピクチャーをレンダリングする。このステップでは、粒子要素を表示することができるようにするために、奥行きZ方向における背景の座標を全ての粒子の座標の後ろ側にする必要がある。
【0036】
ステップS3において、粒子をレンダリングする。このステップでは、現在生成された全ての粒子要素をレンダリングする。特定の時点では、特定数の粒子が異なる位置属性及び外観属性を有しており、これらの属性の更新の制御がS8、S9、S10、S11等のステップによって行われる。ステップS3では、現在の時点における各粒子の属性値と関連する全体パラメータのみによってレンダリングが行われればよい。
【0037】
ステップS4において、中止を判断する。このステップでは、次のラウンドのレンダリングサイクルを行うか、または、動作を中止するかを判断する。ユーザが別の壁紙を設定した場合や、システムがシャットダウンされた場合、ステップS5に進み、それ以外の場合、ステップS1に戻って次のラウンドのレンダリングサイクルを続ける。
【0038】
ステップS5において、プログラム終了後のリソース解放等の終了動作を完了する。
【0039】
ステップS0、S1、S2、S3、S4、S5は、本発明の一実施形態に係る動的壁紙の生成におけるメインプロセスである。以降では、引き続き、インタラクティブプロセスと粒子更新サブプロセスについて説明する。
【0040】
ステップS6、ステップS7は、ユーザが画面をスライドさせた場合のインタラクティブプロセスである。ユーザが画面を左右にスライドさせた場合、3D変換パラメータ(D0)を更新し、更新された3D変換パラメータをメインプロセスのステップS1によってレンダリングリンクに反映させる。このようにして、各シーンにおける背景及び粒子要素のビューポイントを変更する。
図3aは本発明の一実施形態に係る動的壁紙の初期背景を示す図であり、
図3bは本発明の一実施形態に係る動的壁紙がユーザよりタッチ操作される前の様子を示す図であり、
図3cは本発明の実施形態に係る動的壁紙がユーザよりタッチ操作された後の様子を示す図である。
図3b、
図3cに示すように、画面がスライドされると、ビューポイントの並進効果が生じる。
図3cに示すシーンにおけるビューポイントは、
図3bに対して右方向への並進が発生している。
【0041】
図2に示すように、ステップS8、ステップS9は、タップ操作のインタラクティブプロセスである。
【0042】
ステップS8において、ユーザが画面をタップする。
【0043】
ステップS9において、粒子の属性を更新する。
【0044】
ステップS10、ステップS11は、時間的に変化する粒子更新プロセスである。
【0045】
ステップS10において、タイミングモジュールが時間を計測する。
【0046】
ステップS11において、タイミングモジュールの計時結果に基づいて更新時間に達したかどうかを判断する。更新時間に達した場合、ステップS9を実行し、更新時間に達していない場合、ステップS10に戻る。
【0047】
ステップS8、ステップS9は、タップ操作のインタラクティブプロセスであり、ステップS10、ステップS11は、時間的に変化する粒子更新プロセスであり、これらの2本の分岐プロセスで更新されたパラメータがステップS9、即ち、粒子属性更新プロセスに入力される。ステップS9は、粒子の動的効果を実現するコア部分であり、このステップにおいて全ての粒子の属性の変更及びライフサイクルが制御される。ここで、ステップS8は、ユーザによる画面へのタップ操作に対するインタラクティブプロセスであり、その目的は、画面がタップ操作された後にタップポイントに近いエリアの粒子位置等の属性を擾乱して、インタラクティブ効果を達成することにある。ステップS8でのタップ操作の後の座標値及び関連マークは入力パラメータとしてステップS9に提供される。ステップS10、S11は、主に時間パラメータの更新を実現するために行われ、更新後の時間パラメータはステップS9に入力される。
【0048】
以降では、粒子の動的効果を実現するコアステップS9について詳しく説明する。
図4は本発明の一実施形態に係る粒子属性の更新を示すフローチャートである。
図4に示すように、ステップS9は、下記の処理を含む。
【0049】
ステップS90において、画面へのタップ操作が行われたかどうかを検出し、タップ操作が検出された場合、ステップS91に進み、タップ操作が検出されなかった場合、ステップS92に進む。
【0050】
ステップS91において、画面へのタップ操作が検出された場合、タップパラメータを取得し、タップマークをクリアして次回の繰り返しの読み取りを防止する。
【0051】
ステップS92において、新たな粒子を生成する必要があるかどうかを判断し、新たな粒子を生成する必要がある場合、ステップS93に進み、生成する必要がない場合、ステップS94に進む。動的壁紙の動作が開始される際、そのときのシーンにおいては粒子がなく、時間の経過に伴って粒子が一定の放出速度で連続的に生成される。
図3a、
図3bに示すように、
図3aは動作が開始されてから間もなくの粒子状態であり、このときの粒子の数は比較的少ない。一方、
図3bは、粒子の数が比較的安定した後の、粒子の数が比較的に多いシーンを表している。なお、粒子の数が比較的安定したとしても、各シーンにおける粒子の数は動的に変化する。粒子が削除エリアにまで移動すると、その粒子は削除されるが(ステップS98、ステップS99を参照)、この場合にも、ステップS92の判断によって粒子の総数の安定を維持する必要がある。
【0052】
ステップS93において、現在の粒子の数及び放出速度に応じて適切な数の粒子を生成する。
【0053】
ステップS94において、全ての粒子の更新が完了されたかどうかを判断し、全ての粒子の更新が完了された場合、ステップS90を実行し、全ての粒子の更新が完了していない場合、ステップS95を実行する。
【0054】
ステップS95において、現在の時間及び現在の更新粒子の属性値に基づいて粒子の属性を更新する。このステップは、上記ステップS10、S11で与えられた入力パラメータのために行なわれる。
【0055】
ステップS96において、ステップS91の記録に基づいて現在の粒子がタップによる影響エリア内に位置するかどうかを判断し、現在の粒子がタップによる影響エリア内に位置している場合、ステップS97に進み、影響エリア内に位置していない場合、ステップS98に進む。
【0056】
ステップS97において、現在の粒子位置(S95で更新された位置)及びステップS91で記録されたタップ位置に基づいて擾乱を実行する。このステップは、上記ステップS8で与えられた入力パラメータのために行なわれる。
図5は本発明の一実施形態に係る擾乱を示す図である。
図5に示すように、画面がタップ操作された場合、現在のタップポイントO(このポイントは、画面上の2D座標を3D空間にマッピングすることによって得ることができる)に近いポイントA0、B0、C0、D0はそれぞれOを中心としてA1、B1、C1、D1に向けて外側に拡散する。
【0057】
ステップS98において、現在の粒子が削除エリアに位置するかどうかを判断し、現在の粒子が削除エリアに位置する場合ステップS99に進む。位置していない場合、ステップS94に進み、ほかの粒子を引き続き更新する。
【0058】
削除エリアを定義する方法は、柔軟であり、1つの定義方法では、奥行き方向における粒子のZ座標が特定の数値を超えると、粒子が削除エリアに位置すると判定される。
【0059】
ステップS99において、削除エリアに位置する粒子を削除し、同時に粒子の総数を更新する。その後、ステップS94に進んで他の粒子を引き続き更新する。
【0060】
本発明の一実施形態に係る技術的スキームによれば、ユーザによる画面上でのタッチ操作の検出時に、タッチ操作に応じて更新された3D変換パラメータ及び視覚効果基本制御パラメータに基づいて動的壁紙における背景と粒子を再びレンダリングすることで、特殊な動的インタラクティブ効果を持つ動的壁紙を提供することができる。本実施形態により生成された動的壁紙は、直感的な3D奥行き運動粒子効果を人々に与えることができ、且つ、インタラクティブな楽しみを人々に提供することができる。本実施形態に係る動的壁紙は、従来の静的壁紙及び動的壁紙に比べて、視覚効果、インタラクティブ効果等のユーザ体験を大幅に向上させることができる。
【0061】
装置の実施形態
本発明の実施形態によれば、動的壁紙の生成装置が提供される。
図6は本発明の一実施形態に係る動的壁紙の生成装置の構成を示す図である。
図6に示すように、本発明の実施形態に係る動的壁紙の生成装置は、初期化モジュール60、レンダリングモジュール62、及びインタラクティブモジュール64を備える。以降では、本発明の実施形態に係る各モジュールを詳しく説明する。
【0062】
初期化モジュール60は、視覚効果基本制御パラメータを初期化し、そして3D変換パラメータを設定することに用いられる。
【0063】
ここで、視覚効果基本制御パラメータは、具体的に、出現奥行きエリア、粒子属性、及び消失奥行きエリアを含む。粒子属性は、具体的に、粒子のサイズ、粒子の放出速度、粒子の放出量、粒子の運動方向、粒子の位置更新時間、粒子のライフサイクル、及び粒子の外観属性を含む。
【0064】
3D変換パラメータは、具体的に、モデル変換パラメータ、ビュー変換パラメータ、射影変換パラメータ、及びビューポート変換パラメータを含む。
【0065】
レンダリングモジュール62は、3D変換パラメータ及び視覚効果基本制御パラメータに基づいて背景と粒子をレンダリングして動的壁紙を生成することに用いられる。
【0066】
レンダリングモジュール62は、具体的に、3D変換パラメータに基づいて背景を3D変換して、3D背景を取得し、取得された3D背景を表示し、
視覚効果基本制御パラメータと3D変換パラメータに基づいて、粒子の放出速度、及び粒子の放出量に応じて、前記3D背景において、出現奥行きエリアから、一定の運動方向と一定の初期速度を有する粒子をレンダリングし、粒子の位置更新時間及び粒子の外観属性に基づいて粒子の位置と外観を更新し、消失奥行きエリアで粒子を消失させ、粒子が消失した後、出現奥行きエリアから、再び粒子に新たなラウンドの3D奥行き運動を行わせることに用いられる。
【0067】
インタラクティブモジュール64は、ユーザによる画面上でのタッチ操作の検出時に、タッチ操作によるタッチ方式とタッチ位置に基づいて、視覚効果基本制御パラメータ及び3D変換パラメータを更新し、更新された3D変換パラメータ及び視覚効果基本制御パラメータに基づいて動的壁紙の背景と粒子を再びレンダリングすることに用いられる。
【0068】
インタラクティブモジュール64は、具体的に、ユーザによる画面上でのスライド操作の検出時に、スライド操作によるスライド位置に基づいて、3D変換パラメータを更新し、更新された3D変換パラメータに基づいて背景と粒子を再びレンダリングし、スライド操作によるスライド位置に基づいて背景と粒子のビューポイントを変更することに用いられる。また、インタラクティブモジュール64は、ユーザによる画面上でのタップ操作の検出時に、視覚効果基本制御パラメータを更新し、更新された視覚効果基本制御パラメータに基づいて粒子を再びレンダリングし、現在の粒子の位置と、タップ操作によるタップ位置との相対関係に応じて、現在の画面における各粒子の位置を変化させ、タップ位置を中心とする特定半径エリア内にある粒子を、ユーザのタップ位置を中心として外側に向けて運動させ、特定半径エリア外にある粒子を元の軌道で運動させることに用いられる。
【0069】
ユーザが画面をタップしたとき、インタラクティブモジュール64は、具体的に下記の処理を実行する。
【0070】
ステップ1において、ユーザが画面をタップしたかどうかを判断する。ユーザが画面をタップした場合、タップパラメータを取得し、タップマークをクリアして、ステップ2を実行する。ユーザがタップしていない場合、直接ステップ2を実行する。
【0071】
ステップ2において、粒子の放出量に応じて新たな粒子を生成する必要があるかどうかを判断し、新たな粒子を生成する必要がある場合、新たな粒子を生成してステップ3を実行する。新たな粒子を生成する必要がない場合、直接ステップ3を実行する。
【0072】
ステップ3において、全ての粒子が更新されたかどうかを判断し、全ての粒子の更新が完了された場合、ステップ1を実行する。全ての粒子の更新が完了していない場合、粒子の位置更新時間に基づいて粒子を更新し、タップパラメータに基づいてユーザのタップ位置を中心とする特定半径エリア内にある粒子を確定し、対応する視覚効果基本制御パラメータを更新し、更新された視覚効果基本制御パラメータに基づいて、タップ位置を中心とする特定半径エリア内にある粒子を、タップ位置を中心として外側に向けて運動させて、ステップ4を実行する。
【0073】
ステップ4において、動的壁紙において、粒子が消失奥行きエリアに位置しているかどうかを判断し、位置している場合、消失奥行きエリア内に位置する粒子を削除してステップ3を実行する。粒子が消失奥行きエリアに位置していない場合、直接ステップ3を実行する。
【0074】
以降では図面を参照して、本発明の実施形態に係る技術的スキームを詳しく説明する。
【0075】
図2に示すように、本実施形態は、具体的に、下記の処理を含む。
【0076】
ステップS0において、初期化モジュール60は、視覚効果基本制御パラメータを初期化し、そして3D変換パラメータを設定する。即ち、アルゴリズム関連パラメータを初期化する。ここで、視覚効果基本制御パラメータが3D変換に関連しないいくつかのパラメータであり、例えば、出現奥行きエリア、粒子属性、及び消失奥行きエリアである。粒子属性は、具体的に、粒子のサイズ、粒子の放出速度、粒子の放出量、粒子の運動方向、粒子の位置更新時間、粒子のライフサイクル、及び粒子の外観属性を含む。
【0077】
ステップS1において、レンダリングモジュール62は3D変換を行う。このステップにおいて3D表示に関連するパラメータであるモデル変換パラメータ、ビュー変換パラメータ、射影変換パラメータ、ビューポート変換パラメータ等の各種のパラメータを更新し、そして現在の視覚効果基本制御パラメータ及び3D変換パラメータに基づいて3D変換を行う。このようにしてこれらのモデルパラメータを更新することによって壁紙の全体的な表示効果を変更することができる。
図2に示すように、ユーザにより画面がスライドされて(ステップS6)、変換パラメータが更新され(ステップS7)、これにより3D変換パラメータ(D0)が更新される。これらのパラメータが入力パラメータとしてステップS1に転送され、さらにステップS1の3D変換により全体的なビューポイントの変化によるユーザインタラクティブ効果が実現される。
【0078】
ステップS2において、レンダリングモジュール62は背景をレンダリングする。このステップでは、選択された背景ピクチャーをレンダリングする。このステップでは、粒子要素を表示することができるようにするために、奥行きZ方向における背景の座標を、全ての粒子の座標の後ろ側にする必要がある。
【0079】
ステップS3において、レンダリングモジュール62は粒子をレンダリングする。このステップでは、現在生成された全ての粒子要素をレンダリングする。特定の時点では、特定数の粒子が異なる位置属性及び外観属性を有しており、これらの属性の更新の制御がS8、S9、S10、S11等のステップによって行われる。ステップS3は、現在の時点における各粒子の属性値と関連する全体パラメータのみによってレンダリングが行われればよい。
【0080】
ステップS4において、中止を判断する。このステップでは、次のラウンドのレンダリングサイクルを行うか、または、動作を中止するかを判断する。ユーザが別の壁紙を設定した場合や、システムがシャットダウンされた場合、ステップS5に進み、それ以外の場合、ステップS1に戻って次のラウンドのレンダリングサイクルを続ける。
【0081】
ステップS5において、プログラム終了後のリソース解放等の終了動作を完了する。
【0082】
ステップS0、S1、S2、S3、S4、S5は、本発明の一実施形態に係る動的壁紙の生成におけるメインプロセスである。以降では、引き続きインタラクティブプロセスと粒子更新サブプロセスについて説明する。
【0083】
ステップS6、ステップS7は、ユーザが画面をスライドさせたバ場合のインタラクティブプロセスである。ユーザが画面を左右にスライドさせた場合、3D変換パラメータ(D0)を更新し、更新された3D変換パラメータをメインプロセスのステップS1によってレンダリングリンクに反映させる。このようにして、各シーンにおける背景及び粒子要素のビューポイントを変更させる。
図3b、
図3cに示すように、画面がスライドされると、ビューポイントの並進効果が生じる。
図3cに示すシーンにおけるビューポイントは、
図3bに対して右方向への並進が発生している。
【0084】
図2に示すように、ステップS8、ステップS9は、タップ操作のインタラクティブプロセスである。
【0085】
ステップS8において、ユーザが画面をタップする。
【0086】
ステップS9において、粒子の属性を更新する。
【0087】
ステップS10、ステップS11は、時間的に変化する粒子更新プロセスである。
【0088】
ステップS10において、タイミングモジュールが時間を計測する。
【0089】
ステップS11において、タイミングモジュールの計時結果に基づいて更新時間に達したかどうかを判断する。更新時間に達した場合、ステップS9を実行し、更新時間に達していない場合、ステップS10に戻る。
【0090】
ステップS8、ステップS9は、タップ操作のインタラクティブプロセスであり、ステップS10、ステップS11は、時間的に変化する粒子更新プロセスであり、これらの2本の分岐プロセスで更新されたパラメータがステップS9、即ち、粒子属性更新プロセスに入力される。ステップS9は、粒子の動的効果を実現するコア部分であり、このステップにおいて全ての粒子の属性の変更及びライフサイクルが制御される。ここで、ステップS8は、ユーザによる画面へのタップ操作に対するインタラクティブプロセスであり、その目的は画面がタップ操作された後に、タップポイントに近いエリアの粒子位置等の属性を擾乱して、インタラクティブ効果を達成することにある。ステップS8でのタップ操作の後の座標値及び関連マークは、入力パラメータとしてステップS9に提供される。ステップS10、S11は、主に時間パラメータの更新を実現するために行われ、更新後の時間パラメータはステップS9に入力される。
【0091】
以降では、粒子の動的効果を実現するコアステップS9を詳しく説明する。
図4に示すように、ステップS9は、下記の処理を含む。
【0092】
ステップS90において、画面へのタップ操作が行なわれたかどうかを検出し、タップ操作が検出された場合、ステップS91に進み、タップ操作が検出されなかった場合、ステップS92に進む。
【0093】
ステップS91において、次回の重複的な読み取りを防ぐために、画面がタップ操作された場合に、タップパラメータを取得してタップマークをクリアする。
【0094】
ステップS92において、新たな粒子を生成する必要があるかどうかを判断し、新たな粒子を生成する必要がある場合、ステップS93に進み、生成する必要がない場合、ステップS94に進む。動的壁紙の動作が開始される際、そのときのシーンにおいては粒子がなく、時間の経過に伴って粒子が一定の放出速度で連続的に生成される。
図3a、
図3bに示すように、
図3aは動作が開始されてから間もなくの粒子状態であり、このときの粒子の数は比較的少ない。一方、
図3bは粒子の数が比較的安定した後の、粒子の数が比較的に多いシーンを表している。なお、粒子の数が比較的安定したとしても、各シーンにおける粒子数は動的に変化する。粒子が削除エリアにまで移動すると、その粒子は削除されるが(ステップS98、ステップS99を参照)、この場合にも、ステップS92の判断によって粒子の総数の安定を維持する必要がある。
【0095】
ステップS93において、現在の粒子数及び放出速度に応じて適切な数の粒子を生成する。
【0096】
ステップS94において、全ての粒子の更新が完了されたかどうかを判断し、全ての粒子の更新が完了された場合、ステップS90を実行し、全ての粒子の更新が完了していない場合、ステップS95を実行する。
【0097】
ステップS95において、現在の時間及び現在の更新粒子の属性値に基づいて粒子の属性を更新する。このステップは、上記ステップS10、S11で与えられた入力パラメータのために行なわれる。
【0098】
ステップS96において、ステップS91の記録に基づいて現在の粒子がタップによる影響エリア内に位置するかどうかを判断し、現在の粒子がタップによる影響エリア内に位置している場合ステップS97に進み、影響エリア内に位置していない場合ステップS98に進む。
【0099】
ステップS97において、現在の粒子位置(S95で更新された位置)及びステップS91で記録されたタップ位置に基づいて擾乱を実行する。このステップは、上記ステップS8で与えられた入力パラメータのために行なわれる。
図5は本発明の一実施形態に係る擾乱を示す図であり、
図5に示すように、画面がタップ操作された場合、現在のタップポイントO(このポイントは、画面上の2D座標を3D空間にマッピングすることによって得ることができる)に近いポイントA0、B0、C0、D0は、それぞれOを中心としてA1、B1、C1、D1に向けて外側に拡散する。
【0100】
ステップS98において、現在の粒子が削除エリアに位置するかどうかを判断し、現在の粒子が削除エリアに位置する場合ステップS99に進み、位置していない場合、ステップS94に進んでほかの粒子を引き続き更新する。削除エリアを定義する方法は、柔軟であり、1つの定義方法では、奥行き方向における粒子のZ座標が特定数値を超えると、粒子が削除エリアに位置すると判定される。
【0101】
ステップS99において、削除エリアに位置する粒子を削除し、同時に粒子の総数を更新する。その後、ステップS94に進んで他の粒子を更新する。
【0102】
本発明の実施形態に係る技術的スキームによれば、ユーザによる画面上でのタッチ操作の検出時に、タッチ操作に応じて更新された3D変換パラメータ及び視覚効果基本制御パラメータに基づいて動的壁紙における背景と粒子を再びレンダリングすることで、特殊な動的インタラクティブ効果を持つ動的壁紙を提供することができる。本実施形態によって生成された動的壁紙は、直感的な3D奥行き運動粒子効果を人々に与えることができ、且つ、インタラクティブな楽しみ人々に提供することができる。本実施形態に係る動的壁紙は、従来の静的壁紙及び動的壁紙に比べて、視覚効果、インタラクティブ効果等のユーザ体験の点においてユニークな特徴を持つ。
【0103】
例示の目的で、本発明の好ましい実施形態を開示したものの、当業者は、様々な改善、追加、代替も可能であると理解すべきである。したがって、本発明の範囲は、上記実施形態に限定されない。