(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2024-08-23
(45)【発行日】2024-09-02
(54)【発明の名称】仮想ゴルフシミュレーション装置及び仮想ゴルフシミュレーション方法
(51)【国際特許分類】
A63B 71/06 20060101AFI20240826BHJP
【FI】
A63B71/06 M
A63B71/06 U
(21)【出願番号】P 2023515191
(86)(22)【出願日】2021-08-17
(86)【国際出願番号】 KR2021010864
(87)【国際公開番号】W WO2022071659
(87)【国際公開日】2022-04-07
【審査請求日】2023-05-12
(31)【優先権主張番号】10-2020-0127079
(32)【優先日】2020-09-29
(33)【優先権主張国・地域又は機関】KR
(73)【特許権者】
【識別番号】315019182
【氏名又は名称】ゴルフゾン カンパニー リミテッド
【住所又は居所原語表記】735, YEONGDONG-DAERO, GANGNAM-GU, SEOUL, REPUBLIC OF KOREA
(74)【代理人】
【識別番号】100091683
【氏名又は名称】▲吉▼川 俊雄
(74)【代理人】
【識別番号】100179316
【氏名又は名称】市川 寛奈
(72)【発明者】
【氏名】リ,キョン-ヨン
(72)【発明者】
【氏名】ソン,ボン-ホ
(72)【発明者】
【氏名】チェ,ジン-ヒョン
【審査官】槙 俊秋
(56)【参考文献】
【文献】国際公開第2020/109974(WO,A1)
【文献】韓国公開特許第10-2013-0068613(KR,A)
【文献】韓国公開特許第10-2011-0042640(KR,A)
(58)【調査した分野】(Int.Cl.,DB名)
A63B 69/00-69/40
A63B 71/00-71/16
(57)【特許請求の範囲】
【請求項1】
仮想のゴルフコース上でのボールの移動をシミュレーションする仮想ゴルフシミュレーション装置であって、
前記仮想のゴルフコースで地形の硬い程度を示す硬度値を保存するデータ保存部と、
使用者のゴルフショットに対するショットデータ及び前記硬度値に基づいて仮想のゴルフコース上でボールの移動軌跡をシミュレーションする映像処理部と、を含
み、
前記映像処理部は、
現在バウンスのために衝突するときの値と次のバウンスのために跳ねるときの値とに関連した比としてのバウンス減衰率のクランプ範囲を前記硬度値に基づいて調整し、調整されたクランプ範囲内での前記バウンス減衰率に基づいてアウトスピードを算出することにより、前記ボールの移動軌跡をシミュレーションする、仮想ゴルフシミュレーション装置。
【請求項2】
仮想のゴルフコース上でのボールの移動をシミュレーションする仮想ゴルフシミュレーション装置であって、
前記仮想のゴルフコースで地形の硬い程度を示す硬度値を保存するデータ保存部と、
使用者のゴルフショットに対するショットデータ及び前記硬度値に基づいて仮想のゴルフコース上でボールの移動軌跡をシミュレーションする映像処理部と、を含
み、
前記映像処理部は、
現在バウンスのために衝突するときの値と次のバウンスのために跳ねるときの値とに関連した比としてのバウンス減衰率を前記硬度値に基づいて決定し、前記バウンス減衰率に基づいてスピードダンピング値を算出して次のバウンスでのアウトスピードの算出に適用し、前記アウトスピードに基づいて次のバウンスのためのベクターを算出し、前記ベクターにおけるz方向値を補正することにより、前記ボールの移動軌跡をシミュレーションする、仮想ゴルフシミュレーション装置。
【請求項3】
前記映像処理部は、
複数の硬度値を表示するインターフェースを介して硬度値が選択されると、選択された硬度値及び前記ショットデータに基づいて前記ボールの移動軌跡をシミュレーションする、請求項1
又は2に記載の仮想ゴルフシミュレーション装置。
【請求項4】
前記映像処理部は、
前記硬度値に基づいて前記ボールの最後のバウンスでのアウトスピードを補正し、補正されたアウトスピードに基づいてローリング距離を算出することで、前記ボールの移動軌跡をシミュレーションする、請求項1
又は2に記載の仮想ゴルフシミュレーション装置。
【請求項5】
前記映像処理部は、
前記硬度値に基づいて次のバウンスでの高さ及び距離を補正すること
により、前記ボールの移動軌跡をシミュレーションする、請求項1
又は2に記載の仮想ゴルフシミュレーション装置。
【請求項6】
前記映像処理部は、
前記ゴルフショットに用いられたゴルフボール情報、前記ショットデータ、及び前記硬度値に基づいて前記ボールの移動軌跡をシミュレーションする、請求項1
又は2に記載の仮想ゴルフシミュレーション装置。
【請求項7】
前記映像処理部は、
前記使用者がゴルフショットを行う時点の天気、季節、温度、湿度、及び時間のうちの少なくとも一つ、前記ショットデータ、及び前記硬度値に基づいて前記ボールの移動軌跡をシミュレーションする、請求項1
又は2に記載の仮想ゴルフシミュレーション装置。
【請求項8】
仮想ゴルフシミュレーション装置が、仮想のゴルフコース上でのボールの移動をシミュレーションする仮想ゴルフシミュレーション方法であって、
前記仮想のゴルフコースで地形の硬い程度を示す硬度値を保存する段階と、
使用者のゴルフショットに対するショットデータ及び前記硬度値に基づいて仮想のゴルフコース上でボールの移動軌跡をシミュレーションする段階と、を含
み、
前記ボールの移動軌跡をシミュレーションする段階は、
現在バウンスのために衝突するときの値と次のバウンスのために跳ねるときの値とに関連した比としてのバウンス減衰率のクランプ範囲を前記硬度値に基づいて調整し、調整されたクランプ範囲内での前記バウンス減衰率に基づいてアウトスピードを算出することにより、前記ボールの移動軌跡をシミュレーションする段階を含む、仮想ゴルフシミュレーション方法。
【請求項9】
仮想ゴルフシミュレーション装置が、仮想のゴルフコース上でのボールの移動をシミュレーションする仮想ゴルフシミュレーション方法であって、
前記仮想のゴルフコースで地形の硬い程度を示す硬度値を保存する段階と、
使用者のゴルフショットに対するショットデータ及び前記硬度値に基づいて仮想のゴルフコース上でボールの移動軌跡をシミュレーションする段階と、を含
み、
前記ボールの移動軌跡をシミュレーションする段階は、
現在バウンスのために衝突するときの値と次のバウンスのために跳ねるときの値とに関連した比としてのバウンス減衰率を前記硬度値に基づいて決定し、前記バウンス減衰率に基づいてスピードダンピング値を算出して次のバウンスでのアウトスピードの算出に適用し、前記アウトスピードに基づいて次のバウンスのためのベクターを算出し、前記ベクターにおけるz方向値を補正することにより、前記ボールの移動軌跡をシミュレーションする段階を含む、仮想ゴルフシミュレーション方法。
【請求項10】
前記ボールの移動軌跡をシミュレーションする段階は、
前記硬度値に基づいて次のバウンスでの高さ及び距離を補正すること
により、前記ボールの移動軌跡をシミュレーションする段階を含む、請求項
8又は9に記載の仮想ゴルフシミュレーション方法。
【発明の詳細な説明】
【技術分野】
【0001】
本明細書で開示する実施例は仮想ゴルフシミュレーション装置及び仮想ゴルフシミュレーション方法に関するものであり、より詳しくは、仮想のゴルフコースで地形の硬い程度を示す硬度値に基づいて仮想ゴルフシミュレーションを遂行する装置及び方法に関するものである。
【背景技術】
【0002】
最近になってスクリーンゴルフ場に対する人気が高くなっている。ゴルフ場の利用よりは価格が安く、場所、時間などの制約なしに楽しむことができるスクリーンゴルフ場が使用者の生活圏内に生じるのに伴い、誰でも容易にゴルフシミュレーションゲームを楽しむことができるようになった。
【0003】
多様なスクリーンゴルフ企業等が生じるのに伴い、スクリーンゴルフゲームを楽しむ使用者の期待値が高くなっており、使用者はもっと現実感ある環境でゴルフラウンディングを楽しみたがる。
【0004】
一方、実際にゴルフコースでゴルフをプレイするとき、競技結果に影響を及ぼす要素が多様である。例えば、プレーヤーのゴルフショット能力も影響があるが、プレーヤーが競技を行うときの天気、または地形などのような環境も大きな影響を及ぼす。
【0005】
ただ、現在提案されているスクリーンゴルフシステムでは、地形の状態を反映して仮想のゴルフシミュレーションを提供するのに限界がある。その結果、使用者に現実感あるゴルフゲームを提供することが難しい。
【0006】
これに関連して、先行技術文献である韓国登録特許第10-2009-0070857号公報ではスクリーンゴルフシステムについて記載しているが、上述したように環境も考慮して現実感あるゴルフゲームを提供する技術に対して提案していない。
【0007】
したがって、上述した問題点を解決するための技術が必要になった。
【0008】
一方、前述した背景技術は発明者が本発明の導出のために保有しているか本発明の導出過程で習得した技術情報であり、必ずしも本発明の出願前に一般の公衆に公開された公知技術であるとは言えない。
【先行技術文献】
【特許文献】
【0009】
【文献】韓国登録特許第10-2009-0070857号公報
【発明の概要】
【発明が解決しようとする課題】
【0010】
本明細書で開示する実施例は、仮想ゴルフシミュレーション装置及び仮想ゴルフシミュレーション方法を提示することに目的がある。
【0011】
また、本明細書で開示する実施例は、仮想のゴルフコースで地形の硬い程度を示す硬度値によってボールの移動軌跡をシミュレーションする仮想ゴルフシミュレーション装置及び方法を提示することに目的がある。
【0012】
また、本明細書で開示する実施例は、バウンス、ローリングなどをより現実感あるように具現することができる仮想ゴルフシミュレーション装置及び仮想ゴルフシミュレーション方法を提示することに目的がある。
【課題を解決するための手段】
【0013】
上述した技術的課題を達成するための技術的手段として本明細書に開示する実施例は、仮想のゴルフコースで地形の硬い程度を示す硬度値に基づいて仮想ゴルフシミュレーションを遂行する装置及び方法に関する。
【発明の効果】
【0014】
前述した課題解決手段のうちの一つによれば、仮想ゴルフシミュレーション装置及び仮想ゴルフシミュレーション方法を提示することができる。
【0015】
前述した課題解決手段のうちの一つによれば、仮想のゴルフコースで地形の硬い程度を示す硬度値によってボールの移動軌跡をシミュレーションする仮想ゴルフシミュレーション装置及び方法を提示することができる。
【0016】
前述した課題解決手段のうちの一つによれば、バウンス、ローリングなどをより現実感あるように具現することができる仮想ゴルフシミュレーション装置及び仮想ゴルフシミュレーション方法を提示することができる。したがって、実際のゴルフコースのように飛距離を具現することで、ゴルフゲームに対する使用者の没入感を極大化させることができる。
【0017】
開示する実施例で得られる効果は以上で言及した効果に制限されず、言及しなかった他の効果は下記の記載で開示する実施例が属する技術分野で通常の知識を有する者に明らかに理解可能であろう。
【図面の簡単な説明】
【0018】
【
図1】本明細書で開示する一実施例による仮想ゴルフシミュレーション装置を具現するスクリーンゴルフシステムを示す図である。
【
図2】本明細書で開示する一実施例による仮想ゴルフシミュレーション装置の構成を示すブロック図である。
【
図3】本明細書で開示する一実施例による仮想ゴルフシミュレーション装置を説明するための例示図である。
【
図4】本明細書で開示する一実施例による仮想ゴルフシミュレーション装置を説明するための例示図である。
【
図5】本明細書で開示する一実施例による仮想ゴルフシミュレーション装置を説明するための例示図である。
【
図6】本明細書で開示する一実施例による仮想ゴルフシミュレーション装置を説明するための例示図である。
【
図7】本明細書で開示する一実施例による仮想ゴルフシミュレーション装置を説明するための例示図である。
【
図8】本明細書で開示する一実施例による仮想ゴルフシミュレーション装置を説明するための例示図である。
【
図9】本明細書で開示する一実施例による仮想ゴルフシミュレーション装置を説明するための例示図である。
【
図10】本明細書で開示する一実施例による仮想ゴルフシミュレーション装置を説明するための例示図である。
【
図11】本明細書で開示する一実施例による仮想ゴルフシミュレーション方法を説明するためのフローチャートである。
【
図12】本明細書に開示した一実施例による仮想ゴルフシミュレーション方法を説明するための例示図である。
【発明を実施するための形態】
【0019】
上述した技術的課題を達成するための技術的手段として、本明細書で開示する一実施例によれば、仮想のゴルフコース上でのボールの移動をシミュレーションする仮想ゴルフシミュレーション装置であって、前記仮想のゴルフコースで地形の硬い程度を示す硬度値を保存するデータ保存部と、使用者のゴルフショットに対するショットデータ及び前記硬度値に基づいて仮想のゴルフコース上でボールの移動軌跡をシミュレーションする映像処理部とを含むことができる。
【0020】
また、上述した技術的課題を達成するための技術的手段として、本明細書で開示する一実施例によれば、仮想ゴルフシミュレーション装置が、仮想のゴルフコース上でのボールの移動をシミュレーションする仮想ゴルフシミュレーション方法であって、前記仮想のゴルフコースで地形の硬い程度を示す硬度値を保存する段階と、使用者のゴルフショットに対するショットデータ及び前記硬度値に基づいて仮想のゴルフコース上でボールの移動軌跡をシミュレーションする段階とを含むことができる。
【0021】
以下では添付図面に基づいて多様な実施例を詳細に説明する。以下で説明する実施例は様々な相異なる形態に変形されて実施されることもできる。実施例の特徴をより明確に説明するために、以下の実施例が属する技術分野で通常の知識を有する者に広く知られている事項についての詳細な説明は省略する。そして、図面で実施例の説明に関係ない部分は省略し、明細書全般にわたって類似の部分に対しては類似の図面符号を付けた。
【0022】
明細書全般で、ある構成が他の構成と連結されていると言うとき、これは直接的に連結されている場合だけではなく、その中間に他の構成を挟んで連結されている場合も含む。また、ある構成が他の構成を含むというとき、特に反対の記載がない限り、さらに他の構成を除くものではなくて他の構成をさらに含むこともできることを意味する。
【0023】
以下、添付図面に基づいて実施例を詳細に説明する。
【0024】
図1は本明細書で開示する一実施例による仮想ゴルフシミュレーション装置を具現するスクリーンゴルフシステムを示す図であり、
図2は仮想ゴルフシミュレーション装置の構成を示すブロック図であり、
図3~
図10は本明細書で開示する一実施例による仮想ゴルフシミュレーション装置を説明するための例示図である。
【0025】
図1に示すように、本明細書で開示する一実施例によるスクリーンゴルフシステム100は、使用者UがゴルフボールGを打撃することができる打席10と、使用者U、ゴルフボールG及びゴルフクラブの動きのうちの少なくとも一つを感知するセンシング装置20と、前面に備えられるスクリーン30に所定の映像を出力する映像出力装置40と、仮想ゴルフシミュレーションに必要なすべてのデータの保存及び処理などを遂行する仮想ゴルフシミュレーション装置200とを含む。
【0026】
本明細書で開示する実施例による仮想ゴルフシミュレーション装置200は、仮想ゴルフシミュレーションに必要なすべてのデータを保存し、仮想のゴルフコースの映像、ゴルフボールの移動映像などのすべての仮想ゴルフシミュレーション関連映像を処理するように構成される。そして、仮想ゴルフシミュレーション装置200が処理した映像はスクリーン30に表示される。
【0027】
したがって、使用者Uが打席10でゴルフボールGをスクリーン30に向けて打撃すると、センシング装置20がこれをセンシングして仮想ゴルフシミュレーション装置200に伝達し、仮想ゴルフシミュレーション装置200は、使用者U、ゴルフボールG及びゴルフクラブの動きのうちの少なくとも一つに基づいて仮想のゴルフコース上での仮想のボールの移動軌跡をシミュレーションすることができる。すなわち、仮想ゴルフシミュレーション装置200が実際ゴルフボールの移動特性を考慮して仮想ゴルフコース上でのボールの移動映像などのゴルフシミュレーション映像情報を構成し、これをプロジエクターなどによって具現される映像出力装置40を介してスクリーン30に投射することで、シミュレーションによるゴルフ競技が進行できるようにする。
【0028】
追加として、仮想ゴルフシミュレーション装置200は仮想ゴルフシミュレーションのための複雑な操作を全部処理することができるように動作する。例えば、仮想ゴルフシミュレーション装置200は、操作命令を獲得することにより、仮想ゴルフシミュレーションのために使用者をログインさせるか、またはシミュレーション環境を操作することができる。したがって、仮想ゴルフシミュレーション装置200は、例えば硬度値などの環境データについての設定などを使用者から受けることができる。
【0029】
一方、一実施例によるセンシング装置20は、打席10においてゴルフボールGが置かれる一定の領域であって、ゴルフクラブによって打撃される領域、すなわち打撃領域を監視しながら、前記打撃領域でゴルフボールGがゴルフクラブによって打撃されるときのイメージを取得し、そのイメージから使用者Uの動き、ゴルフボールGの動き及びゴルフクラブの動きのうちの少なくとも一つをセンシングする装置である。
【0030】
センシング装置20は打撃領域を撮影するビジョンセンサー(Vision Sensor)のようなイメージング装置(Imaging Device)によって構成されることができる。これに関連して、
図1にはセンシング装置20がスクリーンゴルフシステムの壁面に設置されたものとして示されているが、その他にも、センシング装置20はスクリーンゴルフシステムの天井に設置されたセンサー及びスクリーンゴルフシステムの側面壁に設置されたセンサーによって具現されるか、または仮想ゴルフシミュレーション装置200上に具現されることができる。例えば、センシング装置20が2個のビジョンセンサーによって具現されれば、前記二つのビジョンセンサーが打撃領域でオーバーラッピングして監視することができる。これは一例であり、必ずしもこれに限定されず、二つ以上のビジョンセンサーが設置される場合も含み、ビジョンセンサーの設置位置も天井や壁面だけでなく、スクリーンゴルフシステムのブース(Booth)内の任意の位置に設置されるすべての場合を含むことができる。
【0031】
センシング装置20は、使用者、ゴルフボール及びゴルフクラブのうちの少なくとも一つの動きを感知することにより、ゴルフボールの移動に対する運動パラメーターなどのセンシング情報を算出して仮想ゴルフシミュレーション装置200に伝達し、仮想ゴルフシミュレーション装置200はセンシング情報からショットデータを算出することができる。
【0032】
本明細書で開示する一実施例による仮想ゴルフシミュレーション装置200はスクリーンゴルフシステム100に適用されるものを説明しているが、必ずしもスクリーンゴルフシステム100に限定して適用されず、仮想のゴルフコースをシミュレーションして映像化し、よって仮想のボールが動く映像をシミュレーションするすべての形態のシステムや装置に適用可能である。
【0033】
一方、
図2に示すように、仮想ゴルフシミュレーション装置200は、制御部210、データ保存部220、映像出力部230、及び映像処理部240を含むことができる。
【0034】
制御部210は仮想ゴルフシミュレーション装置200の全般的な動作を制御し、CPUなどのようなプロセッサを含むことができる。
【0035】
例えば、制御部210はデータ保存部220に保存されたプログラムを実行させるか、データ保存部220に保存されたファイルを読み取るか、または新しいファイルをデータ保存部220に保存することもできる。
【0036】
一方、データ保存部220には、ファイル、アプリケーション及びプログラムなどのような種々のデータが組み込まれるか保存されることができる。例えば、データ保存部220には仮想ゴルフシミュレーション方法を遂行するためのプログラムが組み込まれることができ、よって制御部210はデータ保存部220に保存されたプログラムを実行させて仮想ゴルフシミュレーション方法を遂行することができる。
【0037】
データ保存部220は仮想ゴルフシミュレーションの映像の具現などに必要なすべてのデータを保存し、例えばゴルフ場を映像化して具現した仮想ゴルフコースについてのデータなどを保存することができる。
【0038】
例えば、データ保存部220は、仮想のゴルフコースで地形の硬い程度を示す「硬度値」を保存することができる。ここで、「硬度値」は堅いほど大きくなることができ、堅いほどその値が小さくなることができる。
【0039】
このために、データ保存部220は、ネットワークを介してサーバー(図示せず)から仮想ゴルフコースについてのさまざまなデータなどを受けて一時保存するように構成されることもできる。
【0040】
また、データ保存部220は、センシング装置20からゴルフボールの移動についての運動パラメーターなどのセンシング情報を受けて一時保存するように構成されることができる。
【0041】
一方、映像出力部230は、映像処理部240で処理されたシミュレーション映像を映像出力装置40を介してスクリーン30に投射することで、使用者が映像を見るようにすることができる。
【0042】
ここで、映像処理部240は、データ保存部220に保存された仮想ゴルフコースについてのデータを用いて仮想ゴルフコースの映像を具現するように情報処理を遂行し、使用者が打撃したゴルフボールGの仮想のゴルフコースでの移動軌跡をシミュレーションして映像として具現することができる。
【0043】
一実施例によれば、映像処理部240は、環境データによるゴルフコースの環境を映像化して提供することができる。
【0044】
ここで、「環境データ」は仮想のゴルフコースでゴルフボールの移動をシミュレーションした結果に影響を及ぼす要素であるが、使用者のゴルフショットによって算出することができない値を意味する。すなわち、環境データは使用者がゴルフショットを行った仮想のゴルフコースの環境を示す値であり、例えば、仮想のゴルフコースの地形データ及び地形の他のデータから構成される。ここで、「地形データ」は、地形の硬い程度を示す硬度値、地形の傾斜を示す傾斜値、地形の芝草などの状態によってグリーンでの速度を示すグリーン速度値などを含むことができ、「地形の他のデータ」は、例えば季節、天気、温度、湿度、風速、風向などを含むことができる。
【0045】
仮想ゴルフシミュレーション装置200は、使用者に多様な環境を支援するために、環境データを多様に設定することができる。
【0046】
ここで、環境データは予め設定されていることができる。例えば、硬度値は地形ごとに予め設定されている値があり得る。しかし、環境データは使用者または管理者の入力を受けて設定することができ、このために、映像処理部240はインターフェース部(図示せず)をさらに含むことができる。
【0047】
これに関連して、
図3に示すように、インターフェース部(図示せず)は、使用者または管理者に、例えば、「グリーン速度」、「コンシード」、「グリーン硬度」、「パッティング格子」などの環境データを入力することができるインターフェース300を提供することができ、前記インターフェース300を介して入力された値によって環境データを設定することができる。
【0048】
このために、例えば、インターフェース部(図示せず)は、数回のクリックのみで「グリーン速度」を設定することができ、よって使用者はカーソルー310またはタッチなどの操作のみで早く容易に「グリーン速度」の程度を設定し、それによってゴルフプレイを進めることができる。
【0049】
同様に、インターフェース部(図示せず)は、複数の硬度値を表示するインターフェースを介して硬度値を選択することができる。例えば、「グリーン硬度」に対して基本に設定されていた「普通」を使用者が「堅い」に設定すると、「堅い」に対応する硬度値によってバウンス距離、ローリング距離が変更されるように映像処理部240が処理することができる。
【0050】
また、硬度値は、使用者がゴルフショットを行う時点の天気、季節、温度、湿度、及び時間のうちの少なくとも一つに基づいて変更することができる。例えば、冬季と夏季に硬度値を異に設定することができる。
【0051】
また、硬度値は使用者のゴルフショットに用いられたゴルフボール情報によって変更することができる。「ゴルフボール情報」は、製造会社、ブランド、当該ゴルフボールのスペックについての情報を含む。したがって、同じ地形であっても使用者が使用するゴルフボールのブランドによって硬度値を異に設定することができる。例えば、堅い地形に対する硬度値を所定の値に設定しても、硬度や弾性が相対的に低いブランドのゴルフボールでゴルフショットを行うことを感知すると、硬度値は普通の地形と同じ硬度値を有するように調整することができる。
【0052】
他の実施例によれば、映像処理部240は仮想のゴルフコースでのボールの移動軌跡を演算することができる。ここで、「移動軌跡」は使用者がゴルフボールを打撃することによる仮想のゴルフコースでのボールの移動をシミュレーションした結果を示すものである。移動軌跡は仮想のゴルフコースでボールが移動する様子として表示されるか、仮想のゴルフコースでボールが移動した軌跡が線で連結されて表示されるか、または飛距離値を示すテキスト、イメージ、音声または映像としても表示されることができる。
【0053】
このような映像処理部240は、キャリー処理部241、バウンス処理部242、及びローリング処理部243を含むことができる。
【0054】
すなわち、飛距離は、キャリー、バウンス、及びローリングから構成される。一実施例によれば、仮想のゴルフコースでボールが空中に飛んでから最初に着地するまでを「キャリー」と、地に最初に着地した後に跳ねて移動するまでを「バウンス」と、及びバウンスの後、ボールが地表面で転がって最終的に停止するまでを「ローリング」という。
【0055】
したがって、映像処理部240は、使用者のショット以後のボールの飛距離を処理し、このために、キャリー処理部241、バウンス処理部242、及びローリング処理部243のそれぞれでの処理結果を用いることができる。
【0056】
例えば、映像処理部240は、キャリー処理部241、バウンス処理部242、及びローリング処理部243のそれぞれで処理したキャリー距離、バウンス距離、及びローリング距離に基づいて仮想のゴルフコースでボールが移動する様子を処理することができる。
一方、キャリー処理部241は、仮想のゴルフコースでのボールのキャリー距離を演算することができる。
【0057】
一実施例によれば、キャリー処理部241は複数の因子をシミュレーションすることで、キャリー距離をシミュレーションすることができる。
【0058】
ここで、「因子」は仮想のゴルフコースでボールの移動をシミュレーションした結果に影響を及ぼす要素であり、一実施例によれば、ショットデータ及び環境データから構成されることができる。
【0059】
ショットデータはキャリー処理241がセンシング情報から算出することができ、ショットデータとして、ボールスピード、方向角、発射角、バックスピン、サイドスピンなどがあり得る。
【0060】
キャリー処理部241は、ショットデータをシミュレーションしてキャリー距離を算出することができ、仮想のゴルフコースでの環境データも一緒にシミュレーションしてキャリー距離を算出することができる。
【0061】
したがって、キャリー処理部241は環境データによるゴルフコースの環境を映像化して提供するとともに、使用者のゴルフショットによるキャリー距離をシミュレーションするとき、環境データ及びショットデータを一緒にシミュレーションすることができる。そして、キャリー処理部241はシミュレーションしたキャリー距離を映像化し、映像出力部230を介してスクリーン40に投射することができる。
【0062】
一方、バウンス処理部242は、仮想のゴルフコースでのボールバウンス距離を演算することができる。
【0063】
すなわち、バウンス処理部242は、仮想のゴルフコースでボールが跳ねて移動する距離であるバウンス距離を演算することができ、跳ねる様子も映像化して映像出力部230を介してスクリーン40に投射することができる。
【0064】
一実施例によれば、バウンス処理部242は、地形の硬度値及びショットデータに基づいてボールの移動軌跡をシミュレーションすることができる。
【0065】
例えば、ショットデータによって、移動したボールが最初に地面に衝突するときの移動ベクターを獲得すると、バウンス処理部242は前記移動ベクター及び硬度値を用いてボールの移動軌跡をシミュレーションすることができる。
【0066】
他の実施例によれば、バウンス処理部242は、ボールのキャリー以後に地面に衝突したときの地形硬度値及びショットデータに基づいてボールの移動軌跡をシミュレーションすることができる。
【0067】
例えば、ショットデータによって、移動したボールが最初に地面に衝突するときの移動ベクターを獲得すると、バウンス処理部242は、ボールが衝突した地の硬度値及び前記移動ベクターを用いてボールの移動軌跡をシミュレーションすることができる。
【0068】
したがって、例えば、バウンス処理部242は、ボールのキャリー以後にボールがグリーン境界内に衝突するとき、グリーンの硬度値によって、前記ボールに適用されたショットデータによる移動ベクターを演算してボールの移動軌跡をシミュレーションすることができる。
【0069】
一方、一実施例によれば、バウンス処理部242は、仮想のゴルフコースで複数のバウンスを処理することができる。
【0070】
ここで、「バウンス」は、ボールが地に衝突するときから跳ね上がって次に地に衝突するまでを意味する。したがって、例えば、仮想のゴルフコースでボールが一度のみ跳ねるものではなく複数回跳ねることができ、よってバウンス処理部242は複数のバウンスを処理することができる。例えば、バウンス処理部242は、バウンスごとのバウンス距離を算出することができ、バウンスによるボールの移動軌跡をバウンスごとに処理することができる。
【0071】
このために、バウンス処理部242は次のバウンスのためのベクター値を算出することができる。
【0072】
一実施例によれば、バウンス処理部242は、硬度値に基づいてアウトスピードを補正することができる。
【0073】
ここで、「アウトスピード」は現在のバウンスで跳ねたボールが地面に衝突した直後のスピードであり、例えば次のバウンスのためにボールが地面に衝突したときのスピードであり得る。次のバウンスでのベクター値はアウトスピードに基づいて決定することができる。
【0074】
例えば、バウンス処理部242は、最後のバウンス(ボールがローリングする直前のバウンス)でのアウトスピードを補正することができる。すなわち、硬度値が「普通」から「堅い」に変更されたと判断すると、最後のバウンスでのアウトスピード、すなわちx軸方向のベクター値及びy軸方向のベクター値のそれぞれを1.1倍することができる。このように、最後のバウンスでのアウトスピードを高めるように補正すると、ローリング処理部243でローリングスピードを増加させ、それによってローリング距離を増加させることができる。
【0075】
さらに他の実施例によれば、バウンス処理部242は、弾性値によってバウンスの際の移動方向ベクターのz軸値が変更されると、前記ベクターのx軸値及びy軸値を変更することができる。
【0076】
例えば、バウンス処理部242は、現在のバウンスでのz軸値が変更されると、x軸値及びy軸値を倍加させることができ、または次のバウンスでのz軸値が変更されると、次のバウンスのための移動ベクターでのx軸値及びy軸値を増加させることができる。
【0077】
これに関連して、
図4の(a)に示すように、バウンスの際の移動方向ベクター410はx軸値、y軸値、及びz軸値のそれぞれに分解することができる。弾性値によってz軸値が変更されると、x軸値及びy軸値も一緒に増加させることで、
図4の(b)に示すように、移動方向ベクター420を増加させることができる。
【0078】
一方、他の実施例によれば、バウンス処理部242は、硬度値に基づいてクランプ(clamp)範囲を調整し、調整されたクランプ範囲に基づいてアウトスピードを算出することができる。
【0079】
すなわち、アウトスピード算出の際に用いられるバウンス減衰率には最大制限値及び最小制限値が設定されているので、最大制限値及び最小制限値の間でのみバウンス減衰率を決定することができる。バウンス処理部242は、例えば、硬度値が変更されたと判断すると、最大制限値を変更して次のバウンスでの高さ及び距離を増加させることができる。ここで、「バウンス減衰率」は現在バウンスのために衝突するときの値と、次のバウンスのために跳ねるときの値とに関連した比を意味する。
【0080】
これに関連して、
図5に示すように、現在バウンスのために衝突するときの値510と次のバウンスのために跳ねるとき値520とに関連した比としてのバウンス減衰率は最大制限値及び最小制限値の間で決定される。最大制限値を増加させることで、バウンス減衰率はクランプ範囲の調整前より大きくなることもできる。
【0081】
例えば、バウンス処理部242は、グリーン地形でのバウンスの際に最大許容値である最大制限値として現在設定された値を増加させることができる。例えば、バウンス処理部242は、最大制限値として現在設定された値が0.75であれば、0.15を追加して0.9に最大制限値を調整することができる。よってボールが最大にバウンスすることができる高さをもっと高く許容することができる。
【0082】
したがって、例えば、バウンス処理部242は、最小制限値及び最大制限値を設定することで、ボールのバウンスの際、最小制限値と最大制限値との間の高さにボールが跳ねるように具現することができる。したがって、例えば、バウンス処理部242は、ボールのバウンスの際、ボールのバウンス減衰率が最小制限値より小さければ、最小制限値としてボールのバウンス減衰率を設定することができ、ボールのバウンスの際のボールのバウンス減衰率が最小制限値と最大制限値との間の値として算出されれば、当該値をボールのバウンス減衰率に設定することができ、ボールのバウンスの際のボールのバウンス減衰率が最大制限値より大きければ、最大制限値としてボールのバウンス減衰率を設定することができる。
【0083】
このようなバウンス減衰率はスピードダンピング値に影響を与えることができる。これについては後でより詳細に説明する。
【0084】
一方、他の実施例によれば、バウンス処理部242は、硬度値に基づいて次のバウンスベクターのz軸値を補正することができる。
【0085】
このために、バウンス処理部242は、バウンスごとに弾性値を更新することができる。
【0086】
ここで、弾性値は後述するスピードダンピング値に影響を与える因子であり、弾性値を更新することによってアウトスピードが変更される。すなわち、アウトスピードは現在のバウンスから次のバウンスに移るとき、運動量保存の法則によって減るしかない。例えば、バウンス処理部242が弾性値を増加させることによって、アウトスピードが減る程度が減少することができる。
【0087】
弾性値を更新するとき、例えば、バウンス処理部242は、最初バウンスの際、すなわち最初衝突の際に弾性値を倍加させることができる。例えば、弾性値として設定された値を1.25倍させて弾性値を更新することができる。
【0088】
また、弾性値を更新するとき、例えば、バウンス処理部242は、バウンスごとに衝突時の弾性値を倍加させることができる。例えば、弾性値として設定された値を1.5倍させて弾性値を更新することができる。
【0089】
これにより、最初のバウンスを含めてすべてのバウンスを強化させることができる。
【0090】
一方、バウンス処理部242は弾性係数を調整することができる。
【0091】
ここで、弾性係数は後述するスピードダンピング値に影響を与える因子であり、弾性係数を更新することによってアウトスピードが変更される。
【0092】
例えば、バウンス処理部242は、ボールがグリーンに衝突するとき、衝突地形がグリーンではない場合より弾性係数を減少させることができ、バウンス処理部242は、例えば、0.7倍だけ弾性係数を変更することができる。よって、グリーンに衝突するとき、バウンス処理部242は弾性係数を減少させることができる。
【0093】
一方、バウンス処理部242は、バウンス減衰率、弾性値、及び弾性係数のうちの少なくとも一つに基づいてスピードダンピング値を算出することができる。
【0094】
すなわち、バウンス処理部242は、硬度値に基づいてバウンス減衰率を決定することができる。すなわち、後述する数式3によって、バウンス減衰率に基づいてスピードダンピング値を算出することができる。そして、バウンス処理部242は、決定されたスピードダンピング値によって、例えば数式2によってアウトスピードを調整し、アウトスピードによって算出した後、バウンスベクターのz値を補正することで、ボールの移動軌跡をシミュレーションすることができる。
【0095】
バウンス処理部242は、現在移動方向スカラー値及びアウト方向スカラー値を算出することができる。
【0096】
すなわち、バウンス処理部242は、衝突する地形のノーマルベクターに対する現在移動方向ベクターのスカラー積によって現在方向スカラー値を獲得することができる。ここで、現在移動方向ベクターは現在のバウンスでボールが地面に衝突した直後のベクターを意味する。
【0097】
また、バウンス処理部242は、衝突する地形のノーマルベクターに対するアウト方向ベクターのスカラー積によってアウト方向スカラー値を獲得することができる。ここで、アウト方向は現在バウンス以後の次のバウンスのためにボールが地面と衝突した直後のベクターを意味する。
【0098】
まず、バウンス処理部242は数式1によってバウンス減衰率(r)を求めることができる。
【0099】
【0100】
ここで、Aは現在方向に対応するスカラー値であり、Bはアウト方向に対応するスカラー値である。
【0101】
追加として、バウンス減衰率は硬度値に基づいて調整することができる。ここで、硬度値によって調整されたバウンス減衰率(r)は、現在ボールの移動ベクターの長さが所定の値を超えるかによって再び算出することができる。
【0102】
その後、バウンス処理部242は、数式2によって次のバウンス時点の前進速度を示すアウトスピード(out_speed)を求めることができる。
【0103】
【0104】
ここで、spd_dampはスピードダンピング値であり、次の数式3によって求めることができる。
【0105】
【0106】
ここで、rはバウンス減衰率、eは弾性値、elascity_factorは弾性係数を示す。
【0107】
上述した数式3によって算出されたスピードダンピング値(spd_damp)は、例えば、所定の範囲内の値であれば、当該値をそのままスピードダンピング値として設定して数式2に使い、所定の範囲を外れて所定の範囲以下であると所定の範囲の最小値、所定範囲を外れると所定の範囲の最大値に設定して数式2に使うことができる。
【0108】
したがって、数式2で示すように、アウトスピード(out_speed)は既存のアウトスピード(out_speed)にスピードダンピング値(spd_damp)を掛けることで調整することができる。
【0109】
このように算出されたアウトスピードによって、バウンス処理部242は、次のバウンスでのベクター値を算出することができ、前記ベクター値のうちのz方向の値を算出することができる。よって、z方向の値を増加させることができる。
【0110】
硬度値によって、バウンス処理部242は、次のバウンスでのベクター値のうちのz方向値を補正することができ、よって現実感あるボール移動軌跡をシミュレーションすることができる。
【0111】
すなわち、
図6に示すように、算出されたアウトスピードによって、バウンス処理部242は、
図6の(a)のように、次のバウンスでのベクター610を算出し、それによってz方向値620を算出し、算出されたz方向値620を増加させたz方向値621によって、
図6の(b)に示すように、増加したベクター611を算出することで、実際ゴルフコースでのバウンスのようにバウンスを具現することができる。
【0112】
一方、ローリング処理部243は、仮想のゴルフコースでのローリング距離を演算することができる。
【0113】
一実施例によれば、ローリング処理部243は、最後のバウンスの後、仮想のゴルフコースでボールが転がって行く距離であるローリング距離を演算することができ、床でボールが転がって行く形状も映像化し、映像出力部230を介してスクリーン40に投射することができる。
【0114】
ローリング処理部243は、バウンス処理部242によって算出されたアウトスピードに基づいてローリング距離を算出することができる。
【0115】
したがって、硬度値に基づいてバウンス処理部242によってアウトスピードが調整されて算出されると、ローリング処理部243は、調整されたアウトスピードによってローリング距離を変更することができる。
【0116】
例えば、ローリング処理部243は、アウトスピードによってボールの移動速度を決定し、地形の傾斜、グリーン速度などを一緒に考慮してローリング距離を決定することができる。よって、例えば、地形の硬度が硬い場合、ローリング距離を増加させることができる。
【0117】
上述したように、キャリー、バウンス及びローリングによるボールの飛距離を演算し、これを映像化して映像出力部230を介してスクリーン40に投射することで、映像処理部240は使用者のゴルフショットに仮想のゴルフコースでのボール移動をシミュレーションして提供することができる。
【0118】
これに関連して、
図7~
図10は仮想ゴルフシミュレーション装置を説明するための図であり、仮想ゴルフシミュレーションされた映像がスクリーン上に表示された形状を示すものである。
【0119】
図7に示すように、使用者がゴルフショットを行う位置で目標地点を見たときのシミュレーション映像をスクリーン30上に表示することができる。
【0120】
そして、使用者のゴルフショットを行うのに伴い、ショットデータ及び硬度値に基づいて仮想ゴルフシミュレーション装置100は仮想のゴルフコース上でボールの移動軌跡をシミュレーションすることができる。
【0121】
図8で、グリーンの硬度が「普通」であるとき、ボール800が最終に到着する形状をスクリーン30を介して示し、それによる飛距離810も使用者に提供することができる。
【0122】
一方、グリーンの硬度が「堅い」であるとき、
図9はボールが移動する形状を示し、
図10はボールが最終に到着する形状をスクリーン30を介して示すものである。
図7に示すように、同じ開始点で同じショットデータ(ボールスピード、ヘッドスピード、バックスピンなど)に基づいてシミュレーションしても、
図8のボール800の位置及び飛距離810と比較したとき、硬度が変われば、ボール1000が到着する位置も変わり、それによる飛距離1010も変わることが分かる。
【0123】
一方、
図11は一実施例による仮想ゴルフシミュレーション方法を説明するためのフローチャートである。
図11に示す仮想ゴルフシミュレーション方法は、
図1~
図10で説明した仮想ゴルフシミュレーション装置100で時系列的に処理する段階を含む。したがって、以下で省略した内容と言っても、
図1~
図10に示した仮想ゴルフシミュレーション装置100について以上で記述した内容は
図11及び
図12に示す実施例による仮想ゴルフシミュレーション方法にも用いることができる。
【0124】
仮想ゴルフシミュレーション装置100は、硬度値を保存することができる(S1110)。
【0125】
ここで、仮想ゴルフシミュレーション装置100は、複数の硬度値を表示するインターフェースを介して硬度値の選択を受けることができ、選択された硬度値を設定することができる。
【0126】
そして、使用者のゴルフショットを感知すると(S1120)、仮想ゴルフシミュレーション装置100は、ボール衝突の際の硬度値を獲得することができる(S1130)。
すなわち、仮想ゴルフシミュレーション装置100は、ボールのキャリー以後に地面に最初に衝突するときの地形の硬度値を獲得することができる。
【0127】
ここで、例えば、仮想ゴルフシミュレーション装置100は、ゴルフボール情報に基づいて硬度値を調整するか、または、例えば使用者がゴルフショットを行う時点での天気、季節、温度、湿度、及び時間のうちの少なくとも一つに基づいて硬度値を調整することができる。
【0128】
そして、仮想ゴルフシミュレーション装置100は、硬度値及びショットデータに基づいてボールの移動軌跡をシミュレーションすることができる(S1140)。
【0129】
一実施例によれば、仮想ゴルフシミュレーション装置100は、硬度値に基づいて前記ボールの最後のバウンスでのアウトスピードを補正し、補正されたアウトスピードに基づいてローリング距離を算出することができる。
【0130】
他の一実施例によれば、仮想ゴルフシミュレーション装置100は、弾性値によってバウンスベクターのz方向値が変更されると、前記バウンスベクターのx方向値及びy方向値を変更することができる。
【0131】
他の一実施例によれば、仮想ゴルフシミュレーション装置100は、硬度値に基づいてバウンス減衰率のクランプ範囲を調整し、調整されたクランプ範囲でのバウンス減衰率に基づいてアウトスピードを算出することで、ボールの移動軌跡をシミュレーションすることができる。
【0132】
他の一実施例によれば、仮想ゴルフシミュレーション装置100は、硬度値に基づいて次のバウンスのためのベクターにおけるz方向値を補正することで、ボールの移動軌跡をシミュレーションすることができる。
【0133】
他の一実施例によれば、仮想ゴルフシミュレーション装置100は、硬度値に基づいてバウンス減衰率を決定し、前記バウンス減衰率に基づいてスピードダンピング値を算出して次のバウンスでのアウトスピードに適用し、前記アウトスピードに基づいて次のバウンスでのベクターを算出し、前記ベクターにおけるz方向値を補正することで、前記ボールの移動軌跡をシミュレーションすることができる。
【0134】
他の一実施例によれば、仮想ゴルフシミュレーション装置100は、硬度値に基づいて次のバウンスでの高さ及び距離を補正することで、ボールの移動軌跡をシミュレーションすることができる。
【0135】
地形の硬度が堅くなるのに伴い、地形の弾力が大きくなり、よってボールが跳ねる力が大きくなってボールが跳ねる高さが上昇し、よって地面に衝突するときの角度が大きくなるしかない。衝突角度が大きくなることによってアウトスピードが減少し、これによりx軸またはy軸への力が減少し、最後のバウンスでのx軸またはy軸への力が減少し、よってローリング距離も減少する問題点がある。
【0136】
これに関連して、
図12の(a)~(c)のそれぞれは、キャリーによってボールが地面に最初に衝突してからバウンスされる形状を示す図である。
図10の(a)はグリーン硬度が「普通」であるとき、
図12の(b)及び(c)はグリーン硬度が「堅い」であるとき、ボールがバウンスされる高さ及び距離を示す図である。
【0137】
図12の(a)に示すように、グリーンの硬度が「普通」であるとき、矢印の方向にボールがバウンスされてバウンス距離1210だけ移動することができる。
【0138】
一方、グリーンの硬度が「堅い」であるにもかかわらずアウトスピードを増加させなかったとき、
図12の(b)に示すように、バウンス距離1220だけボールがバウンスされて移動するが、アウトスピードを増加させながらボールがバウンスされるようにする本明細書に開示した仮想ゴルフシミュレーション方法によれば、
図12の(c)に示すように、バウンス距離1220より遠くボールが移動してバウンス距離1230だけ移動するようになり、最後のバウンスでのアウトスピードも
図12の(b)より大きくなるので、ローリング距離も長くなることができる。
【0139】
実際にゴルフショットを行ったとき、グリーン硬度が高ければ、バウンス高さが高くなってバウンス距離またはローリング距離が長くなることが自然なことであるので、上述したようにボール移動軌跡をシミュレーションすれば、衝突角度が大きくなるのに伴ってローリング距離が減少する問題点を解決することができる。したがって、より現実感ある仮想ゴルフシミュレーション映像を提供することができる。
【0140】
前述した仮想ゴルフシミュレーション方法は、コンピュータによって実行可能な命令語及びデータを記憶する、コンピュータ可読の媒体の形態にも具現されることができる。ここで、命令語及びデータはプログラムコードの形態として記憶されることができ、プロセッサによって実行されたとき、所定のプログラムモジュールを生成して所定の動作を実行することができる。また、コンピュータ可読の媒体はコンピュータによってアクセス可能な任意の可用媒体であってもよく、揮発性及び非揮発性媒体、分離型及び非分離型媒体のいずれも含む。また、コンピュータ可読の媒体はコンピュータ記録媒体であってもよい。コンピュータ記録媒体はコンピュータ可読の命令語、データ構造、プログラムモジュール又はその他のデータのような情報の記憶のための任意の方法又は技術によって具現された揮発性及び非揮発性、分離型及び非分離型媒体のいずれも含むことができる。例えば、コンピュータ記録媒体は、HDD及びSSDなどのマグネチック記憶媒体、CD、DVD及びブルーレイディスクなどの光学的記録媒体、又はネットワークを介して接近可能なサーバーに含まれるメモリであってもよい。
【0141】
前述した仮想ゴルフシミュレーション方法はコンピュータによって実行可能な命令語を含むコンピュータプログラム(又はコンピュータプログラム商品)で具現されることもできる。コンピュータプログラムはプロセッサによって処理されるプログラミング可能な機械命令語を含み、高レベルプログラミング言語(High-level Programming Language)、オブジェクト指向プログラミング言語(Object-oriented Programming Language)、アセンブリー言語又は機械言語などで具現されることができる。また、コンピュータプログラムは類型のコンピュータ判読可能記録媒体(例えば、メモリ、ハードディスク、磁気/光学媒体又はSSD(Solid-State Drive)など)に記録できる。
【0142】
前述した仮想ゴルフシミュレーション方法は上述したようなコンピュータプログラムがコンピューティング装置によって実行されることによって具現されることができる。コンピューティング装置は、プロセッサと、メモリと、記憶装置と、メモリ及び高速拡張ポートに接続している高速インターフェースと、低速バスと記憶装置に接続している低速インターフェースの少なくとも一部を含むことができる。このような成分のそれぞれは多様なバスを用いて互いに接続されており、共通マザーボードに搭載されるか他の適切な方式で装着されることができる。
【0143】
ここで、プロセッサはコンピューティング装置内で命令語を処理することができる。このような命令語としては、例えば高速インターフェースに接続されたディスプレイのように外部入力及び出力装置上にGUI(Graphic User Interface)を提供するためのグラフィック情報を表示するためにメモリ又は記憶装置に記憶された命令語を有することができる。他の実施例として、多数のプロセッサ及び/又は多数のバスが適切に多数のメモリ及びメモリ形態と一緒に用いられることができる。また、プロセッサは独立的な多数のアナログ及び/又はデジタルプロセッサを含むチップからなるチップセットトで具現されることができる。
【0144】
また、メモリはコンピューティング装置内に情報を記憶する。一例として、メモリは揮発性メモリユニット又はそれらの集合で構成されることができる。他の例として、メモリは不揮発性メモリユニット又はそれらの集合で構成されることができる。また、メモリは、例えば磁気又は光ディスクのような他の形態のコンピュータ可読の媒体であってもよい。
【0145】
そして、記憶装置はコンピューティング装置に大容量の記憶空間を提供することができる。記憶装置はコンピュータ可読の媒体であるかこのような媒体を含む構成であってもよく、例えばSAN(Storage Area Network)内の装置又は他の構成も含むことができ、フロッピーディスク装置、ハードディスク装置、光ディスク装置、又はテープ装置、フラッシュメモリー、それと類似した他の半導体メモリ装置又は装置アレイであってもよい。
【0146】
以上の実施例で使われる「~部」という用語はソフトウェア又はFPGA(field programmable gate array)又はASICのようなハードウェア構成要素を意味し、「~部」はある役割をする。しかし、「~部」はソフトウェア又はハードウェアに限定される意味ではない。「~部」はアドレス可能な記憶媒体にあるように構成されることもでき、一つ又はそれ以上のプロセッサを再生させるように構成されることもできる。よって、一例として、「~部」はソフトウェア構成要素、オブジェクト指向ソフトウェア構成要素、クラス構成要素及びタスク構成要素のような構成要素と、プロセス、関数、属性、プロシージャ、サブルーチン、プログラム特許コードのセグメント、ドライバー、ファームウエア、マイクロコード、回路、データ、データベース、データ構造、テーブル、アレイ、及び変数を含む。
【0147】
構成要素及び「~部」内で提供される機能はより小さな数の構成要素及び「~部」と結合するか追加的な構成要素及び「~部」から分離されることができる。
【0148】
それだけでなく、構成要素及び「~部」はデバイス又は保安マルチメディアカード内の一つ又はそれ以上のCPUを再生させるように具現されることもできる。上述した実施例は例示のためのものであり、上述した実施例が属する技術分野の通常の知識を有する者は上述した実施例が有する技術的思想又は必須な特徴を変更しなくて他の具体的な形態に易しく変形可能であることを理解することができるであろう。したがって、上述した実施例は全ての面で例示的なもので、限定的なものではないことを理解しなければならない。例えば、単一型として説明されている各構成要素は分散されて実施されることもでき、同様に分散されたものとして説明されている構成要素も結合された形態に実施されることができる。
【0149】
本明細書によって保護を受けようとする範囲は前記詳細な説明よりは後述する特許請求範囲によって決定され、特許請求範囲の意味及び範囲とその均等な概念から導出される全ての変更又は変形の形態を含むものに解釈されなければならない。