From BlenderWiki

Jump to: navigation, search

Blender 2.76: ゲームエンジン

カメラレンズのシフト

Blender のカメラが建築画像のような消失点が二つある画像の生成や、プロジェクターのオフセットへのマッチなどが可能になるレンズシフトに対応しました。従来の BGE での、これらのパラメーターに頼る用途は、最終手段として投影行列の設定を自分で行う必要がありました。

現在、Blender のカメラレンズシフトに完全対応(縦と横方向)し、Blender のビューポート内で見える物がゲーム内でも見えるようになります(D1379)。これは特に、ディジタルプロジェクターのオフセットをゲームのカメラで模倣する必要のある、ビデオプロジェクションのプロジェクトに重要です。

D. Felinto 氏、D. Poirier-Quinot 氏、B. F.G. Katz 氏による BlenderVR プロジェクション (LIMSI-CNRS)

物理エンジンの変更

  • UI の修正:Velocity(速度)の範囲制限が生の Blender 単位ではなく、Blender の Scene(シーン)パネルで設定した実際の単位で表示されるように。(23aa425cd9097)

2D Filter(2Dフィルター)

  • 2D Filter(2Dフィルター)が整数値(Integer)の Uniform プロパティに対応しました。(D1370)

Python API changes

新しい bge.app python サブモジュール

新しいモジュール(bge.app)が追加され、実行中に不変のアプリケーション値にアクセスできるように。これは bpy.app サブモジュール同様の機能を提供しますが、こちらは BGE 用です。

bge.app には以下のアトリビュートがあります。

  • version: Blender/BGE のバージョン。3つの整数値のタプル。例:(2, 75, 1)
  • version_string: Blender/BGE のバージョンの文字列形式。例:"2.75 (sub 1)"
  • version_char: Blender/BGE のバージョン文字(マイナーリリース用)。
  • has_texture_ffmpeg: BGE が FFmpeg 対応でビルドされており、bge.texture.ImageFFmpeg と bge.texture.VideoFFmpeg が使用可能な時に True。
  • has_joystick: BGE がジョイスティック対応でビルドされている場合に True。
  • has_physics: BGE が物理演算対応でビルドされている場合に True。


KX_BlenderMaterial(スペキュラ、ディフューズ…)

マテリアル設定を Python から編集可能です。以下は KX_BlenderMaterial の新しいアトリビュートです。

  • alpha (float)
  • hardness (float)
  • emit (float)
  • specularIntensity (float)
  • diffuseIntensity (float)
  • specularColor (mathutils Color)
  • diffuseColor (mathutils Color)

サンプルファイルはこちら:D1298-materialsettings.blend.

(コミットt 145ab8c49efe0de188a55f4c682dd5fcf916f105 も見てください)

bge.logic.get/setAnimRecordFrame

getAnimRecordFrame() は、アニメーションの記録に使用する、現在のフレーム番号を取得できます。"Record animation(アニメーションを記録)" 機能をONにすると、この番号は Blender により自動的に増加します。

setAnimRecordFrame(framenr) は、このフレーム番号を上書きしたい時に設定できます(コミット ba5807c2710939D1449をご覧ください)。

サンプルはこちら:D1449-animrecordframe.blend

これらの機能により、すでに "Record animation(アニメーションを記録)" 機能によって格納されたデータに加え、他のデータも F カーブに記録できます。

KX_GameObject.getActionName()

getActionName(layer=0) は、指定のレイヤーで再生されている現在のアクションを取得します。現在どのアクションが再生中かを知ることができます。サンプルファイル:getActionName.blend (コミット 23f54076db6d241af2a8f9404ab5f5b8072a4db0 をご覧ください)


Alpha to coverage レンダーモードの追加

Alpha-to-coverage.png
Alpha-to-coverage-UI.png

ピクセルのアルファ値を、どれだけ多くのサンプルがこのピクセルによって影響を受けるかを決める、"coverage 値" に変換します。Alpha-to-Coverage の使用により、アルファマスクのふちがアンチエイリアシングされ、葉っぱや樹木、草むらの描画時の結果がスムーズになります。

使用するには Material(マテリアル)プロパティ内の▼Game Settings(ゲーム設定)パネルに行き、Alpha Blend(アルファ混合)モードを "Alpha Anti-Aliasing(アルファアンチエイリアシング)" に設定します。 (コミット 749f346ce077f9616a47c03cac03f8537274efc4 もご覧ください)


Game Publishing アドオン

Game engine publishing.png

このアドオンがベータを抜け、若干の UI の変更のため、プラットフォームの "publish" オプションと、Asset Paths の選択が各リストウィジェットの中に移動しました。

また、内部的に小さな変更もいくつか行われ、"lib" フォルダーの問題(プラットフォームリストへのビルドのダウンロードまたは手動による追加中に無くなる)が修正され、様々なコードがクリーンアップされました。


互換性の問題