Havok編
その1 Havokを使うためのライセンスを確認だ!
ゲーム内で衝突は絶対に必要です。この時「自前で衝突を検知する」というのと「既存のライブラリに検知してもらう」という2つの選択肢があると思います。もちろん自作は理想ですが、複雑な物理現象を高速かつ安定的に記述するのは骨です。しっかりとした物を作ろうと思うと、やはり既存のライブラリを使いたくなるわけです。
物理エンジン自体は世の中に沢山転がっているようですが、有名所としてはPhysXとHavokがあります。PhysXはNVIDIAが提供していて、NVIDIA系のグラボがあるとハードウェアアクセラレーションが働いて高速に物理演算を行ってくれます。一方Havokは安定性が売りのエンジンです。双方とも本当に色々な商用ゲームで使用されていますので、そのロゴなどをご覧になっている方も多いかと思います。
さて、ではPhysXとHavok、どちらを選択すべきか?これは、正直どちらでも良いのかなと思います。双方とも十分なパフォーマンスがあります。PhysXについては最近国内でも書籍が出るようになりました。「なら!マルペケはHavokだ!なぜなら誰も本を出していないから(笑)。」という腹黒い理由でHavokを使ってみることにしました。ニッチを攻めるのがマルペケの基本姿勢です。
実はHavokは物理演算だけでなく色々なライブラリを提供しています。嬉しいことに、「物理演算」「アニメーション」「Behavior」については無償提供されています(Try Havok)。しかし、PhysXにしろHavokにしろ、非常に大切なのがその使用における「ライセンス」です。ここを間違うと大変です。無償提供とは言えその適用範囲はライセンス条項でしっかりと定義されています。そこで、本章ではHavokを使うためのライセンスについて見てみます。
@ 使用のポイント
無償提供されるHavokライブラリのライセンス原文は、Try Havokサイトの下にあるユーザ情報を埋めた後に見ることができます。そのため、そのライセンス原文サイトを直接リンクできません。そこで原文のコピーと全訳したものをここに示しておきます。ライセンス条文自体が隠される理由はないので多分大丈夫だろうなぁ〜と思うのですが、怒られたらやめます(^-^;。訳は私が適当にしたものなので正しくない可能性があります。使用の際は原文を尊重して下さい。
さて、Try Havokのライセンスを見ると、色々な項目に注意する必要があるのが分かります。ポイントを列挙してます:
・ ライセンス下で使用できるのは「Havok Phisics」「Havok Animation」「Havok Behavior」
・ トレードマーク、トレード名、著作権表記もしくは他の所有権表記をソフトウェアもしくは文章から除いてはいけない(2章)
・ 非商用、非独占、非譲渡、内部使用の限定的なライセンスを供与(3章)
・ エンドユーザに対して非営利目的でコンパイル済み実行形式のソフトウェアアプリケーションもしくはゲームをWindows PCプラットフォーム上で公的にデモンストレート及び配布する場合は許可(3-2-1)
・ 商用目的のPCゲームをWindows PCプラットフォームだけでエンドユーザが10USドル(もしくはゲーム起動時にそれと同様の貨幣価値)以下の料金でレンタルもしくはそれ同等の価値とし て公的にデモンストレート及び販売する場合は許可(3-2-2)
・ 商用目的のPCゲームを、(aa)Havok単独の自由裁量権、Havok優先的に書かれた承認、(bb)www.havok.com/PCgamedistributionでHavokから保証された無料のPCゲーム配布ライセンスとして分離実行する事を条件として、Windows PCプラットフォーム上で10USドルを越えるレンタル料金で商用販売する意図でデモンストレートした場合は許可(3-2-3)
・ 商用及び非商用目的のデモコード、または研究目的として、いかなる方法でもソフトウェアのコンポーネントとして再配布されない事を条件に配布する場合は許可(3-2-5)
・ デモンストレーションコードの公開は許可。本作コードの公開は部外秘(3-2-6)
・ 開発したゲームのパッケージング上、ゲームのクレジットスクリーンにHavokのロゴ(Havokによってライセンシーに供給される)を含める事(6-1)
・ 開発したゲームのマニュアルのクレジット欄、クレジットスクリーン上もしくは"about"ボックスに以下の著作権とクレジット注記を含める事:"Licensee Developed Game title" uses HavokR. Copyright 1999-2008 Havok.com Inc. (and its Licensors). All Rights Reserved. See www.havok.com for details."(6-2)
・ ライセンスの譲渡は禁止(12章)
ざっくり言うと、
「Try HavokはすべてWindows PC用のゲームに適用可で、フリーソフトならば使用OK、商用ならば10ドル以下で売る分にはOK。デモコードの配布はOK、でも本コードは公開しちゃだめで、コンパイル済みの実行ファイルにのみ組み込みOK。」
「タイトルにHavokのロゴを入れること。マニュアルとクレジットに『Licensee
Developed Game title" uses HavokR. Copyright 1999-2008 Havok.com
Inc. (and its Licensors). All Rights Reserved. See www.havok.com for details.』という文章を入れること」
という事です。
マルペケとしてはでもコードの公開がOKであるのが助かります。これによりサイト内で実装方法を紹介でき、サンプルプログラムを配布できます。ただしSDKの再配布はできませんので、実装を試してみたい方は各人でDLしてくることになります。
では、次章からさっそくHavokを使って楽しい物理現象を再現してみましょう。