MyRobot

すこし変な形をしたロボットです。
正四面体(正三角錐)の各頂点に腕が取り付けられています。
右足、左足、前腕、後腕を持っています。
関節を動かしてポーズを変えられます。
ポーズをファイルに保存できます。
ゲーム画面1

目次


開発環境

WindowsXPで開発、動作確認。

  1. C# ( Microsoft Visual C# 2005 Express Edition )
  2. DirectX ( Microsoft DirectX 9.0 SDK (February 2006) )
(無料で使用できる開発環境です。)
DirectX SDK の EmptyProject(July 2004) から作成しました。

動作環境

OS:WindowsXP
.NETとDirectXが必要です。

1.Microsoft .NET Framework

.NET Framework ダウンロード情報から
  1. Microsoft .NET Framework 2.0 再頒布可能パッケージ(32ビット版: x86)
  2. Microsoft .NET Framework 2.0 日本語 Language Pack (32ビット版:x86)
この2つをインストールしてください。

2.DirectX ランタイム

Microsoft DirectX 9.0 ダウンロードから
DirectX End User Runtimes (February 2006) フルダウンロード
(Managed DirectX のランタイムを含んでいます。)
をインストールしてください。

※ 開発環境がインストールされている場合も動作します。


インストール・アンインストール

インストール
フォルダ名に日本語(2バイト文字)を含めないでください。
(Managed DirectXの仕様です。)

アンイストール
フォルダ毎削除してください。


操作方法

ゲーム画面2

起動方法:MyRobot\MyRobot\bin\Releaseフォルダの MyRobot.exe を実行。
Escキーで終了。

・マウス右ボタンドラッグでカメラ(視点)が回転。
・マウスホイールボタン回転で表示される大きさが増減。
・マウスミドル(ホイール)ボタンドラッグで、ライトを表す矢印が表示されライト位置が移動。

ロボットの動かすことの出来るパーツを左クリックすると赤くなり中央に表示されます。
赤くなったパーツはマウスと10キーで回転。
・マウスミドル(ホイール)ボタンドラッグで関節部分を中心に回転。
・X軸回転: 8/2 赤
・Y軸回転: 4/6 緑
・Z軸回転: 1/3 青
・回転座標軸は画面右下に線で表示。
・何も無い画面を左クリックすると選択が解除されます。
・未選択の時にもう一度なにも無い所を左クリックすると描画中心が座標原点になります。

ゲーム画面3


・胴体の上半分をクリックするとロボット全体が10キーで回転。
・胴体の下半分をクリックすると下半分部分が10キー 4/6 で回転。

・F1キー:ヘルプ表示/非表示。
・Hキー:ボタン表示/非表示(Hキーを押すとボタンとヘルプ表示が全て消え、どれかのキーを押すと再表示。)
・Wキー:右足左足反転(歩行アニメーションを作成用)

・[Toggle full screenボタン] フルスクリーンとウィンドウ表示の切り替え。
・[Toggle reference(F3)ボタン] DirectX表示切替。
・[Change Device(F2)ボタン] DirectX表示設定。

・[ポーズ初期化 ボタン] ポーズを初期化。
・[ポーズ保存 ボタン] ポーズをXMLファイルに保存。
・[ポーズ読込 ボタン] ポーズをXMLファイルから読込。

・[モデル読込 ボタン]モデル定義XMLファイルを読込。
・[指パターン切替 ボタン] 選択している腕の指パターンを切替。
・[テクスチャ切替 ボタン] ボディのテクスチャを切替。
・[ポーズアニメ ボタン] ポーズを読み込んだとき、変えたときに元のポーズにアニメーションします。
・[アニメ読込 ボタン]アニメ定義XMLファイルを読込。
・[アニメ チェックボックス]読み込んだアニメを実行。
・[ランダム体操 チェックボックス] 全てのパーツを動かします。(特に意味は無し)
・[交差法立体視 チェックボックス]ロボットを交差法立体視表示。
・[背景色 ボタン]背景色を設定。


モデル定義

モデル
ボディのテクスチャ、各パーツの色、大きさ、ポーズを定義しています。
読み込んだ後は、指定したテクスチャがテクスチャ切替ボタンで選択できます。
モデル定義仕様

アニメ定義

アニメ 相対移動座標

複数のポーズファイルを指定したXMLファイルを読み込んでロボットをアニメーションします。
アニメーション定義ファイル(XML)サンプル

<?xml version="1.0" encoding="utf-8"?>
<!--MyRobotアニメーション定義ファイル-->
<root>
  <モデル定義 file="Model標準MyRobot.xml" />

  <!--ポーズファイル  フレーム数  相対移動座標(x,y,z) or 絶対対移動座標(ax,ay,az) -->
  <AnimePart ポーズファイル="..\xml\a0.xml" フレーム数="30" x="0" y="10" z="0" />
  <AnimePart ポーズファイル="..\xml\a1.xml" フレーム数="30" ax="0" ay="0" az="0" />
</root>

・モデル定義ノード
例:<モデル定義 file="Model標準MyRobot.xml" />
オプション。ノードがある場合は、指定されたモデル定義を読み込み、その後でアニメーションします。
file属性:モデル定義xmlファイルを指定します。

・AnimePartノード
例:<AnimePart ポーズファイル="..\xml\a0.xml" フレーム数="30" x="0" y="10" z="0" />
以下の属性を記入します。

交差法立体視

交差法立体視

右目で左側のロボットを、左目で右側のロボットを見ると立体的に見えます。
10キーで標示調整。(立体的に見えるように調整してください。)
・立体視調整角: 7/9 右側のロボットを回転。
・モデルの間隔: 4/6 左右のロボットの間隔を増減。
・カメラの距離: 1/3 ロボットの標示サイズを増減。

デフォルト フォルダ構成

animeフォルダ:アニメ定義ファイルを格納。
modelフォルダ:モデル定義ファイルを格納。
xmlフォルダ:ポーズファイルを格納。

変更履歴

'2006.04.21 更新 ドキュメント修正
'2006.04.20 更新 機能追加、マウスによるパーツ操作。ボディ2分割
'2006.04.04 更新 デバッグ、アニメ定義、絶対移動座標 追加
'2006.03.31 更新 機能追加
'2006.03.03 更新 テクスチャ、背景色 変更
'2006.03.01 公開


連絡先

不具合、ご意見等ありましたらお知らせください。
webページ:http://www.purple.dti.ne.jp/sslt/
メール:sslt@river.dti.ne.jp