Ja/Source Engine Features: Difference between revisions

From Valve Developer Community
< Ja
Jump to navigation Jump to search
mNo edit summary
mNo edit summary
Line 2: Line 2:
Source Engineの特徴
Source Engineの特徴


[[Image:SourcePic.gif|The Source Engine in action]]
[[Image:SourcePic_01.jpg|thumb|caption|right|400px|The Source Engine in action.]][[Image:SourcePic_02.jpg|thumb|caption|right|400px|The Source Engine in action.]]__NOEDITSECTION__
=レンダラー=
==レンダラー==
* モデルとワールドにおけるバージョン2.0(そしてそれ以下)のシェーダ、バンプマッピング、LOD(レベル・オブ・ディティール)
* モデルとワールドにおけるバージョン2.0(そしてそれ以下)のシェーダ、バンプマッピング、LOD(レベル・オブ・ディティール)
* HLSLを使ったシェーダの作成
* HLSLを使ったシェーダの作成
Line 27: Line 27:




=マテリアルシステム=
==マテリアルシステム==
* 古典的なテクスチャの代わりに、Source Engineではオブジェクトの材質、使用するテクスチャなどを指定するマテリアルセットを定義します。マテリアルはオブジェクトが壊れるときにどのように砕けるか、壊れる時の音、他の表面の上を引きずったときの音、そしてオブジェクトの質量と浮力などを指定します。このシステムは他のテクスチャのみを使用するシステムに比べはるかに柔軟性があります。
* 古典的なテクスチャの代わりに、Source Engineではオブジェクトの材質、使用するテクスチャなどを指定するマテリアルセットを定義します。マテリアルはオブジェクトが壊れるときにどのように砕けるか、壊れる時の音、他の表面の上を引きずったときの音、そしてオブジェクトの質量と浮力などを指定します。このシステムは他のテクスチャのみを使用するシステムに比べはるかに柔軟性があります。
* マテリアルはオブジェクトやNPCとインタラクションを行います。例えば泥や氷の上では乗り物は勢いを失ったり、滑ったりします。
* マテリアルはオブジェクトやNPCとインタラクションを行います。例えば泥や氷の上では乗り物は勢いを失ったり、滑ったりします。


=マルチプレイヤーネットワークコード=
==マルチプレイヤーネットワークコード==
* 世界中の何百万人ものゲーマー、そして時によって検証済
* 世界中の何百万人ものゲーマー、そして時によって検証済
* LANでのマルチプレイヤー、インターネットでのマルチプレイヤー両方のサポート
* LANでのマルチプレイヤー、インターネットでのマルチプレイヤー両方のサポート
Line 39: Line 39:




=高度なキャラクタ=
==高度なキャラクタ==
* 詳細で、もっともらしく感じられるキャラクタ
* 詳細で、もっともらしく感じられるキャラクタ
* リアルな目
* リアルな目
Line 52: Line 52:




=物理=
==物理==
* 現実的なインタラクションを持るより反応的な世界
* 現実的なインタラクションを持るより反応的な世界
* 物理システムから生まれるサウンド&amp;グラフィック
* 物理システムから生まれるサウンド&amp;グラフィック
Line 71: Line 71:




=高度なAI=
==高度なAI==
* I/OシステムによりマップデザイナがAIをコントロール可能
* I/OシステムによりマップデザイナがAIをコントロール可能
* 洗練されたナビゲーション: キャラクタは走行、飛行、ジャンプ、しゃがみ、階段の使用、地下への潜行が可能
* 洗練されたナビゲーション: キャラクタは走行、飛行、ジャンプ、しゃがみ、階段の使用、地下への潜行が可能
Line 80: Line 80:




=サウンド=
==サウンド==
* 5.1サラウンドサウンド、4スピーカーサラウンド
* 5.1サラウンドサウンド、4スピーカーサラウンド
* 高品質3D音空間
* 高品質3D音空間
Line 95: Line 95:




=UI(ユーザインタフェース)=
==UI(ユーザインタフェース)==
* サーバーブラウザ - 全ての活動中のゲームサーバが表示され、プレイヤーはどこに参加するかを選ぶことが可能。プレイヤーはサーバリストのフィルタリングや並べ替えが可能でサーバ選択の表示を早めることができる
* サーバーブラウザ - 全ての活動中のゲームサーバが表示され、プレイヤーはどこに参加するかを選ぶことが可能。プレイヤーはサーバリストのフィルタリングや並べ替えが可能でサーバ選択の表示を早めることができる
* フレンズインスタントメッセンジャー - ゲーム内外でプレイヤーがメッセージ交換を行ったり、友人のゲームに参加することが可能。友人がどのサーバにいるか混乱することなしに、この機能を使うことでゲームに参加できる
* フレンズインスタントメッセンジャー - ゲーム内外でプレイヤーがメッセージ交換を行ったり、友人のゲームに参加することが可能。友人がどのサーバにいるか混乱することなしに、この機能を使うことでゲームに参加できる
* VGUI - ValveのカスタムGUIインタフェースはWindowsのコントロールを真似ていますが、SourceEngineを使ってレンダリングされ、ゲーム内外で統一的なUI表示を実現。VGUIはプラットホーム非依存、ローカライズのためにUnicode対応
* VGUI - ValveのカスタムGUIインタフェースはWindowsのコントロールを真似ていますが、SourceEngineを使ってレンダリングされ、ゲーム内外で統一的なUI表示を実現。VGUIはプラットホーム非依存、ローカライズのためにUnicode対応


=プログラミング=
==プログラミング==
* 全てのコードはVisual Studio 6.0を使ってC/C++で作成。既存のベースクラスから派生させて簡単に、そして素早く新しいエンティティを作成可能。* 状況依存のパフォーマンスモニタリングシステム内蔵
* 全てのコードはVisual Studio 6.0を使ってC/C++で作成。既存のベースクラスから派生させて簡単に、そして素早く新しいエンティティを作成可能。* 状況依存のパフォーマンスモニタリングシステム内蔵
* エンジン内蔵のグラフィックパフォーマンス測定ツール
* エンジン内蔵のグラフィックパフォーマンス測定ツール
Line 108: Line 108:




=ツール=
==ツール==
* Faceposer
=== Faceposer===
** 会話、感情表現の作成に使われた顔表現ツール
* 会話、感情表現の作成に使われた顔表現ツール


* Valve ハンマーエディタ(Hammer Editor)
=== Valve ハンマーエディタ(Hammer Editor)===
** WYSIWYGワールドエディタ
* WYSIWYGワールドエディタ
** ワールドブラシの作成
* ワールドブラシの作成
** 地形(Terrain)エディタ
* 地形(Terrain)エディタ
** 詳細なワールドモデルとAIを持つNPCの配置
* 詳細なワールドモデルとAIを持つNPCの配置
** NPCのナビゲーションポイント/パスの設定
* NPCのナビゲーションポイント/パスの設定
** トリガー、クリップブラシ、ロジックの配置
* トリガー、クリップブラシ、ロジックの配置
** エンティティ間のI/O(インプット・アウトプット)接続によりマップデザイナーがゲーム内のAIをコントロール可能
* エンティティ間のI/O(インプット・アウトプット)接続によりマップデザイナーがゲーム内のAIをコントロール可能


* Half-Lifeモデルビューワー
=== Half-Lifeモデルビューワー===
** モデルの完全なプレビュー環境
* モデルの完全なプレビュー環境
** モデルの任意方向への回転
* モデルの任意方向への回転
** ヒットボックスの設定
* ヒットボックスの設定
** 物理モデルの表示
* 物理モデルの表示
** 法線の表示
* 法線の表示
** ワイヤフレーム、シェード、テクスチャ表示モード
* ワイヤフレーム、シェード、テクスチャ表示モード


* Studiomdl
=== Studiomdl モデルコンパイラー===
** モデルコンパイラー


* Vbsp, Vrad, Vvis, VMPI
** マップコンパイルツール(bsp、ライティング、可視性)
** VMPI - マップコンパイルを複数PCに分散して計算時間を大幅に削減する分散コンパイルツール


* エクスポーター
=== Vbsp, Vrad, Vvis, VMPI===
* マップコンパイルツール(bsp、ライティング、可視性)
* VMPI - マップコンパイルを複数PCに分散して計算時間を大幅に削減する分散コンパイルツール
 
=== エクスポーター===
** XSI、Max、Mayaからの3Dモデルエクスポートのための.smdエクスポーター
** XSI、Max、Mayaからの3Dモデルエクスポートのための.smdエクスポーター


Line 142: Line 142:




=プリントできる情報シート=
==プリントできる情報シート==
[http://www.valvesoftware.com/sourcelicense/SOURCE_InfoSheet_Q!01a.FINAL.pdf PDFダウンロード] (4.6MB)
[http://www.valvesoftware.com/sourcelicense/SOURCE_InfoSheet_Q!01a.FINAL.pdf PDFダウンロード] (4.6MB)


=ライセンシング=
==ライセンシング==
[[Licensing Valve Technology|Source EngineやSteamテクノロジーのライセンスに関してはこちらを参照してください]]。
[[Licensing Valve Technology|Source EngineやSteamテクノロジーのライセンスに関してはこちらを参照してください]]。
{{otherlang:jp}}{{otherlang:jp:en|Source Engine Features}}
{{otherlang:jp}}{{otherlang:jp:en|Source Engine Features}}

Revision as of 18:43, 10 April 2006

Source Engineの特徴

The Source Engine in action.
The Source Engine in action.

レンダラー

  • モデルとワールドにおけるバージョン2.0(そしてそれ以下)のシェーダ、バンプマッピング、LOD(レベル・オブ・ディティール)
  • HLSLを使ったシェーダの作成
  • キューブ・環境マッピング
  • ダイナミックライト、頂点ライティング、ライトマップ、フリッカリングや点滅など多くのライト種類のサポート
  • ハイ・ダイナミック・レンジ(HDR)ライティング
  • 屈折とフレネル効果付きの水
  • スプライトやモデルを発生させることができる高度パーティクルシステム
  • 投影による影により同シーンに多数のキャラクタを出すことが可能
  • 可視性ブロックのためのオクルーダーエンティティ
  • 室内/屋外環境
    • 変形可能な地形(terrain)
    • 3Dスカイボックスが展望を延長し、遠くのオブジェクトへの視差を追加
    • 動的にレンダリングされる有機物(草、木など)
  • サブディビジョンサーフェス、ディフィーズマップ、スペキュラーバンプマップ
  • リアルタイムラジオシティライティング
  • 下記の特殊効果、そしてそれ以上の効果: パーティクル、ビーム、ボリューメトリックスモーク、スパーク、血、そして霧や雨のような環境効果
  • スケーラビリティ
    • Dx6からDx9のハードウェアサポート



マテリアルシステム

  • 古典的なテクスチャの代わりに、Source Engineではオブジェクトの材質、使用するテクスチャなどを指定するマテリアルセットを定義します。マテリアルはオブジェクトが壊れるときにどのように砕けるか、壊れる時の音、他の表面の上を引きずったときの音、そしてオブジェクトの質量と浮力などを指定します。このシステムは他のテクスチャのみを使用するシステムに比べはるかに柔軟性があります。
  • マテリアルはオブジェクトやNPCとインタラクションを行います。例えば泥や氷の上では乗り物は勢いを失ったり、滑ったりします。

マルチプレイヤーネットワークコード

  • 世界中の何百万人ものゲーマー、そして時によって検証済
  • LANでのマルチプレイヤー、インターネットでのマルチプレイヤー両方のサポート
  • 衝突/ヒット判定補間のための予測(Prediction)分析
  • 高レイテンシ、高パケットロスの56k接続向けの最適化


高度なキャラクタ

  • 詳細で、もっともらしく感じられるキャラクタ
  • リアルな目
    • 単純な平行視ではなく、プレイヤー/オブジェクトに焦点を合わせる
    • リアルな目の反射のための適正な目の"膨らみ"
  • 筋肉シミュレーションが優れた感情、会話、ボディランゲージを提供
  • 言語に依存しない会話能力、キャラクタは多くの言語で自然に会話可能
  • アニメーションのための骨格/ボーンシステム
  • レイヤーアニメーションシステムにより、複数の部分を組み合わせて複雑なアニメーションを合成可能


物理

  • 現実的なインタラクションを持るより反応的な世界
  • 物理システムから生まれるサウンド&グラフィック
  • AIキャラクタは物理シミュレーションされたオブジェクトAIとインタラクション可能
  • ロープ/ケーブル、機械、物理制約システム、ラグドール物理
  • マップデザインでコントロール可能
  • 運動力学でアニメーションするボーンフォロワー
  • カスタムの手続き的物理コントローラ
  • 乗り物
    • スリップ、横滑りする車輪
    • それぞれの車輪にスプリングをもったリアルなサスペンション
    • アクセル/減速、旋回時のリアルな傾き
    • 馬力、ギア、最高速、シフトスピード、タイヤ材質、ばね張力/減衰といったパラメータは個々に調整可能
    • マルチプレイヤーでは乗り物に複数プレイヤーが搭乗可能
    • 低コストシミュレーションのホバークラフトサポート



高度なAI

  • I/OシステムによりマップデザイナがAIをコントロール可能
  • 洗練されたナビゲーション: キャラクタは走行、飛行、ジャンプ、しゃがみ、階段の使用、地下への潜行が可能
  • AIは視力、音、匂いなどから物を感知
  • AIリレーションシップにより他のエンティティとの敵/味方関係を判断
  • 戦闘AIによりAIキャラクタチームの共同作戦、前進や後退の判断、援護射撃などが可能


サウンド

  • 5.1サラウンドサウンド、4スピーカーサラウンド
  • 高品質3D音空間
  • カスタムソフトウェアDSP
  • 環境ジオメトリに基づいた自動DSP
  • ADPCM圧縮のデコード
  • 16-bit 44KHz、ステレオWaveデータの全機能
  • MP3デコード(Milesライセンスが必要)
  • 任意のWaveファイルのオーディオストリーミングサポート
  • リアルタイムWaveファイル差込
  • ドップラー効果をエンコードしたWaveの事前作成
  • 距離変数をエンコードしたWaveの事前作成


UI(ユーザインタフェース)

  • サーバーブラウザ - 全ての活動中のゲームサーバが表示され、プレイヤーはどこに参加するかを選ぶことが可能。プレイヤーはサーバリストのフィルタリングや並べ替えが可能でサーバ選択の表示を早めることができる
  • フレンズインスタントメッセンジャー - ゲーム内外でプレイヤーがメッセージ交換を行ったり、友人のゲームに参加することが可能。友人がどのサーバにいるか混乱することなしに、この機能を使うことでゲームに参加できる
  • VGUI - ValveのカスタムGUIインタフェースはWindowsのコントロールを真似ていますが、SourceEngineを使ってレンダリングされ、ゲーム内外で統一的なUI表示を実現。VGUIはプラットホーム非依存、ローカライズのためにUnicode対応

プログラミング

  • 全てのコードはVisual Studio 6.0を使ってC/C++で作成。既存のベースクラスから派生させて簡単に、そして素早く新しいエンティティを作成可能。* 状況依存のパフォーマンスモニタリングシステム内蔵
  • エンジン内蔵のグラフィックパフォーマンス測定ツール
  • モジュール構造のコードデザイン(DLL使用)により、コアコンポーネントの交換によるアップグレード、コード置き換えが容易
  • 全てのDx9シェーダはHLSLで記述


ツール

Faceposer

  • 会話、感情表現の作成に使われた顔表現ツール

Valve ハンマーエディタ(Hammer Editor)

  • WYSIWYGワールドエディタ
  • ワールドブラシの作成
  • 地形(Terrain)エディタ
  • 詳細なワールドモデルとAIを持つNPCの配置
  • NPCのナビゲーションポイント/パスの設定
  • トリガー、クリップブラシ、ロジックの配置
  • エンティティ間のI/O(インプット・アウトプット)接続によりマップデザイナーがゲーム内のAIをコントロール可能

Half-Lifeモデルビューワー

  • モデルの完全なプレビュー環境
  • モデルの任意方向への回転
  • ヒットボックスの設定
  • 物理モデルの表示
  • 法線の表示
  • ワイヤフレーム、シェード、テクスチャ表示モード

Studiomdl モデルコンパイラー

Vbsp, Vrad, Vvis, VMPI

  • マップコンパイルツール(bsp、ライティング、可視性)
  • VMPI - マップコンパイルを複数PCに分散して計算時間を大幅に削減する分散コンパイルツール

エクスポーター

    • XSI、Max、Mayaからの3Dモデルエクスポートのための.smdエクスポーター



プリントできる情報シート

PDFダウンロード (4.6MB)

ライセンシング

Source EngineやSteamテクノロジーのライセンスに関してはこちらを参照してくださいTemplate:Otherlang:jpTemplate:Otherlang:jp:en