カテゴリー別アーカイブ: ブレンダーBlender

(1)3Dアプリ製作Unity作業の注意点、C#、Blenderブレンダーとの連携について|(1)アイフォンアプリ製作に役立つユーチューブ動画、iOSストーリーボードUIViewControllerなど

(1)アイフォンアプリ製作に役立つユーチューブ動画、iOSストーリーボードUIViewControllerなど

**

3Dアプリ製作Unity作業の注意点、C#、Blenderブレンダーとの連携について

現在、アイフォンアプリ、アンドロイドアプリ用のスマートフォンゲームアプリを製作中です。
7月に作業に取りかかりました。はじめてのUnityですので、いろいろと覚えることがありすぎて大変です。
 特に、Unityは3Dオブジェクトファイル、例えばブレンダーのファイルやFBXファイルを扱えることから、3Dポリゴンオブジェクトを作成できる3Dソフトとの連携が可能です。
 つまり、3Dソフトブレンダー、MAYA、LIGHTWAVEなどで作成した3DポリゴンをUnityで表示させてゲームとして楽しむことができます。
 
 しかし、覚えること、設定、パラメータなどが多くて忘れがちです。そこで、約1ヶ月経過したこともあり、ここで、最初に躓いたところをメモしていきます。
 
・C#、JAVASCRIPTについて
JAVASCRIPTとC#は、ほぼ構成が似ているので、ホームページや関連書籍を参考にできます。
また、JAVASCRIPTとC#の変換ウェブサービス(無料)もあります。

・C#について

#include,#importを記述しなくても同じプロジェクト内のスクリプトは利用可能。
MonoBehaviourを継承しないクラスも作成できます。ただし、Unity独自のコマンドは利用できません。
using System.Collections.Generic; でstdのListが利用できます。
MonoBehaviourを継承するスクリプトはAddComponentが必要です。
[c]
public MyDialog dialog;
//dialog=new MyDialog();//not work
dialog=gameObject.AddComponent<MyDialog>();//MyDialog.cs
[/c]

GUI系のオブジェクトの扱いは、座標がスクリーン座標となります。3D空間ではありませんので、はじめは、あれ?になりますが、ああそうなのかそういうことねとなります。

Inspectorにパブリック変数を表示させたくないときは
[HideInInspector]
を記述します。すでに変数を与えてある場合や外部から変数をあてる必要がないときに使用します。

・ブレンダーとUnityの連携、オブジェクトの挿入

ブレンダーで作成したオブジェクトの大きさを1くらいとすると、Unityで表示させるときは、スケールを約30ー50倍くらいに拡大する必要があります。カメラ位置0, 10, -13の場合で、Projection:Perspectiveです。
また、横面にするためには、Y軸で90度、正面を見せるためにY軸180度回転させる必要があります。

UVをブレンダーで設定し、テクスチャを設定後、FBXに出力し、Unityにインポートするとき画像のリンクが解除されます(パスが不明となるため)ので、再度Unityで画像を設定する必要があります。画像を設定するだけです。UnityでUVを設定し直すようなことはありません。まあ、Unityにはポリゴンを作成する機能がないので、Unity自体でUVを作ることはできないので当たり前と言えば当たり前ですが。

出力のときは不要なカメラ、オブジェクトが挿入されないように、出力の時に、設定をします。

テクスチャは、オブジェクトで異なる設定で使いたい場合は、重複のテクスチャ、サーフェース名は使用しないこと。特に、名称なしやデフォルトは避けるようにしてください。重複のサーフェース名を使用すると同じ色になったり、想定した色と異なります。後の修正作業が面倒です。

・Unityに3Dオブジェクトを表示させて思ったこと

意外に画面がきれいに表示されて折らず、ブロックひずみになっていると思いました。

・今後のUnityの作業

ブレンダーでボーンを設定し、アニメーションを設定した後に、Unityにインポートしてアニメーションさせる
アニメーションをプログラムで制御する

参考リンク

http://wiki.unity3d.com/index.php/CSharpMessenger_Extended以前のリンク先が変わっていました。

アイフォンアプリ製作に役立つユーチューブ動画、ストーリーボードUIViewControllerなど

アイフォンアプリで、テーブルのリストを選択して、ストーリボードの遷移を学習できます。
短いもので30分、長いもので1時間程度の学習時間になります。動画を見ながら、X-CODEでアプリを作りながら作業できるようにすれば理解も早いと思います。大きなディスプレイかマルチディスプレイの環境があるとよいです。

 英語ですが、コードの入力からわかるので動画の通りに進めば、アプリが完成します。
いくつかの書籍を買ってユーチューブの内容を比較をすると、書籍の内容は、動画の説明の5分から10分程度にあたり、ユーチューブの動画の内容の濃さに驚きます。著者の実力を攻めているのではなくて、文字と静止ベースと出版界の事情の限界なのでしょう。
文字や画像が多くなると著者の負担が大きく、ページ数が増えれば書籍の金額高くなり、売れなくなるわけです。内容が濃ければ濃いほど読者は理解が深まりますが、実際はページ数が多くなり、本が重く検索できず、金額が高いという残念な結果になるのでしょう。
 書籍、紙による教育、指導、教示の限界というものでしょうか。
動画も実際の講義やセミナーに比べて、緊張感や情報量、その場の雰囲気などに劣りますが、それでも十分学習できる内容でした。

(1)テーブルビューで項目を削除したときに、エラーとなる場合の例です。

ViewController.m
[c]
-(void)tableView:(UITableView *)tableView commitEditingStyle:(UITableViewCellEditingStyle)editingStyle forRowAtIndexPath:(NSIndexPath *)indexPath{
if (editingStyle==UITableViewCellEditingStyleDelete) {
Contact *delegatedContact=[self.contacts objectAtIndex:indexPath.row];
NSManagedObjectContext *moc=self.delegate.managedObjectContext;
[moc deleteObject:delegatedContact];
NSError *error;
if (![moc save:&error]) {
NSLog(@"error");
}

//もしこの状態で項目を削除したときにエラーがでたら [self loadData]の機能が足らないことになります。
[self loadData];//これがないと項目を削除したときにエラーがとなります。
[self.tableView deleteRowsAtIndexPaths:@[indexPath] withRowAnimation:UITableViewRowAnimationFade];

}
}
[/c]

関数
[c]
-(void)loadData{
NSManagedObjectContext *moc=self.delegate.managedObjectContext;
NSFetchRequest *fr=[[NSFetchRequest alloc]initWithEntityName:@"Contact"];
NSError *error;
self.contacts=[moc executeFetchRequest:fr error:&error];

}
[/c]

(2)UITableViewCell *cellのエラーが多い、forIndexPath:indexPathを削除する

2012年くらいのXC0DEのユーチューブ動画や書籍には、forIndexPath:indexPathが記載されていません。新しいバージョンのXCODEではforIndexPath:indexPathが追加されていて、エラーになることがあります。
[c]

– (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath
{
static NSString *CellIdentifier = @"Cell";
//アプリ実行をして不明なエラーの時は、forIndexPath:indexPathを削除する
UITableViewCell *cell = [tableView dequeueReusableCellWithIdentifier:CellIdentifier];
//UITableViewCell *cell = [tableView dequeueReusableCellWithIdentifier:CellIdentifier forIndexPath:indexPath];

if (cell==nil) {
cell=[[UITableViewCell alloc]initWithStyle:UITableViewCellStyleSubtitle reuseIdentifier:CellIdentifier];
}
// Configure the cell..
return cell;
}

[/c]

・その他、エラーの対処

this class is not key value coding-compliant for the key cancelButtonPressed.’
これは、A画面からB画面に遷移するとき、遷移先のB画面にあるcancelButtonPressedの設定が間違っているために発生したエラーです。
A画面でボタンをタップしたときに、強制終了するので、A画面での問題かと思いましたが、A画面からB画面に移動する直前でエラーとなりました。

対処:
cancelButtonPressedが間違ってい設定されていた(画面上でびっくりマークが表示されている)部分を削除しました。

原因:
紐付けを行って、取り消しをコード上でしてもXlib上ではまだゴミが残っていたみたいです。そのため、びっくりマークが表示されていました。
慣れていないと何がどうなっているのかわからないエラーでした。

使い回しのできるメソッド、deleteData:(NSString*)deleteQueryで効率よく見やすく処理している記載方法

[c]
-(void)tableView:(UITableView *)tableView commitEditingStyle:(UITableViewCellEditingStyle)editingStyle forRowAtIndexPath:(NSIndexPath *)indexPath{
if (editingStyle==UITableViewCellEditingStyleDelete) {
Person *p=[arrayOfPerson objectAtIndex:indexPath.row];

[self deleteData:[NSString stringWithFormat:@"DELETE from PERSONS where NAMA is ‘%s’",[p.name UTF8String]]];

[arrayOfPerson removeObjectAtIndex:indexPath.row];
[tableView deleteRowsAtIndexPaths:[NSArray arrayWithObject:indexPath] withRowAnimation:UITableViewRowAnimationFade];
}
}
-(void)deleteData:(NSString*)deleteQuery{
char *error;
if (sqlite3_exec(personDB, [deleteQuery UTF8String], NULL, NULL, &error)) {
NSLog(@"OK");
}
}
[/c]

iOS Development: Storyboards and UITableViews (Part 1 of 2)

評価:星4つ
ストーリーボード、UITableViewのコード説明、リストの項目の追加、削除、変更までが説明されていて、非常に役に立つ講座です。アイフォン関連の初心者向け書籍に書いてある以上のことが学べます。一般に売られている書籍の内容の3倍以上の内容の濃さがあります。書籍の内容は、導入部だけで、そこから学ぶことは非常に少ないのです。実際は、そこからどうやって、発展させていくのかと言うことなのですが、実際のアプリ製作の約立つ内容にまでは踏み込まれていません。書籍では、単に、画面にリストを表示させておしまいというのが多い中で、この動画はリストに表示させて追加、削除まで説明されています。

iOS Development: Storyboards and UITableViews (Part 2 of 2)


iOS Development: Core Data

評価:星3つ
50分と1時間7分のところで、うまく動作しないところがありました。コンパイルエラーがなくて、リストを削除するとエラー、動作停止になります。
今の実力では直せません。
コメントにも同様の記載があるので、他の人も戸惑っているところがあるみたいです。
他の動画を見ながら、修正したいと思います。

・Xcode 4.6 Tutorial – UITableView with Search Bar (Part 1)

画像1
評価:星3つ
UITableViewのコードが説明されており、検索についても説明。なお、私が実際にアプリを作ると検索が上手く動作しませんでした。リストを選択したり、リストを検索する方法が学習できます。
どこが悪かったのかを後日検討したいと思います。

Xcode 4.6 Tutorial – UITableView with Search Bar (Part 2)

ブレンダーでシマウマをつくろう、3Dローポリモデリング、BlenderでUVマップ、UnWrapの使い方、動物編、Unityでインポート

ブレンダーでシマウマのモデリングとUVマップ

3Dローポリモデリング、BlenderでUVマップ、UnWrapの使い方、動物編
そして、FBXで出力してUNITYにインポートします。
シマウマの作成は、バックに写真を配置してその上をトレースします。
写真を配置しなくても形状を理解しやすい場合は、特にバックにシマウマの写真を配置する必要はないでしょう。でも実際に配置してトレースをするとより、シマウマの形状を理解してポリゴンを作成できると思います。

UnWrap Uキー

blenderのショートカットキーについての記事

ブレンダーにはUnwrapがあるので、アジの開き画像が作成できます。
きれいなUVマップを作るには、まとまり単位、パーツ単位でアジの開きを作成します。

・ポイントは、切り取り線をわかりやすいエッジに追加すること

ポリゴンのアジの開きにしたいエッジを選択します。
今回は動物を側面から見た状態でアジの開きにしたいので、背中の中心、顔、お腹の中心を通るラインエッジを選択します。つまり、動物を上から見た状態で腹ばいに両足を地面に広げたみたいな感じです。

また、複雑な形状である耳にあたるエッジを選択します。すると、耳やしっぽの部分を分離してUVを作成してくれるので、ペイントが楽になります。

UVがイメージ通りでなかったりしたらリセットします。

以下の画像はミラーによるポリゴン形成です。
画像
zebra1

zebra2

これにより、UVになったときのごちゃごちゃしたラインが解消されると思います。
UVも簡単にできるブレンダーはすばらしい。ライトウェーブの苦労はなんだったのか(LWを使っていたのは5年以上も前の話です)。

UV
画像
zebura3_uv

ちなみに、UnWrap Uキーして、UVビューを表示させても、ポリゴンを選択しないとUVは表示されません。意外にこのことを忘れて、UVが作成できなかったと慌ててしまいます。

とりあえず、テクスチャを貼った状態 シマウマの写真をそのまま貼り付けた状態なので、微調整なしの状態です。

zebra4_tex

UnityにFBX出力して表示したもの
FBXで読み込んでテクスチャをインポートしてカメラで表示させた状態です。
シマウマのたてがみのところが、法線の向きが反対になってたのをブレンダーで修正しました。画像は修正前の状態です。
こうやって見ると、ブレンダーとユニティーの相性は良いですね。ほぼそのままの状態で何もせずに読み込みができました。
unity

ローポリゴン3Dモデリング中、Blenderでキリン、ぞう、ガゼル、シマウマ。

ローポリゴン3Dモデリング中、Blenderでキリン、ぞう、ガゼル、シマウマ。

過去のブレンダー記事ブレンダーのショートカットキーの操作メモ

Unityで表示させるとどうなるか実験中。
できるだけ、アプリケーションが消費するメモリを減らすことで、描画処理の負担を減らし、快適な再生スピードを保てるようにします。
そのためには、3Dポリゴンデータを小さくするために、ローポリモデルで作成します。

 ローポリゴンの定義は、各種様々で、一概にポリゴン数位くらいからならローポリゴンと言うことはないそうな。
 すかすか状態のポリゴン配置ならローポリゴンではないかと思います。できるだけ少ないポリゴンで組み立ててアニメーションをしても破綻しないレベルになれば良いです。
 そうすると、すべてがつながったポリゴンというのは難しくて、ある程度パーツに分けた方がよいのかもしれません。つまり、関節部分、本体部分、曲がる部分、稼働する部分は別オブジェクトにするなど。でもそうするとアーマチャアでポリゴンを動かせなくなのは困りますね。
 Unityではアーマチャアで動かせるみたいなので。
 
ブレンダーは、アーマチャア、ボーンを他のファイルから読み込むことができます。
つまり、アーマチャアを何度も同じ構成で作り直す必要がなく、以前作ったファイルから流用できると言うことです。

 かつて私はWin版Lightwaveを使用してきて、マック版を買うかどうか迷ってました。でも購入しても使わなくなるとお金の無駄です。
 が、無料のブレンダーなら、Win、Mac、Linuxといろいろなプラフォームで使用できるので、ブレンダーを使用することに決めました。しかも、機能は、モデリングだけについて言わせてもらうとLightwave3Dver9.0を遙かに凌いでいます。無料なのに有料版よりも機能が上です。
最初の一月はブレンダー特有のキー操作とショートカット、オブジェクトに対する概念みたいな操作感に困惑すると思いますが、慣れてくるとブレンダーの高機能にびっくりして、たくさんの学ぶべきことに圧倒されます。

画像blender

31画像
【送料無料】ねんどろいど マクロスF(フロンティア) シェリル・ノーム(ホビー)
在庫あり
店舗名:ハピネット・オンライン
32画像
【仮面ライダーフォーゼ】フォーゼモジュールチェンジシリーズEXFMCS04 仮面ライダーメテオ【キャラクターセール☆仮面ライダー】
在庫あり
店舗名:トイセルタウン
33画像
銀魂 フィギュア GEM シリーズ 神楽 【予約7月】 代引き不可
在庫あり
店舗名:天天ストア 楽天市場店
34画像
オーキッドシード クイーンズブレイド 美しき闘士たち アレイン フィギュア【1月予約】
在庫あり
店舗名:でじたみん 楽天市場店
35画像
ヤマトガールズコレクション 宇宙戦艦ヤマト2199 岬百合亜 (艦内服Ver.) 1/8 完成品フィギュア[メガハウス]《10月予約》
在庫あり
店舗名:あみあみ
36画像
アルター 1/8 ソードアート・オンライン 桐ヶ谷直葉 フィギュア【11月予約】
在庫あり
店舗名:でじたみん 楽天市場店

ブレンダーモデリングバッググラウンドに画像を配置する手順Blemder

ブレンダーモデリング,バッググラウンドに画像を配置する手順
AddメニューからEmptyでAxisを選択します。
そして、Emptyオブジェクトのオブジェクトデータ、右側のメニューを選択して、Imageを選択して、バックに置きたい画像を選択します。

他の設定、AddTree

31画像
K18YG アガット(agate) 流行の華奢なデザイン♪ ダイヤモンド 計0.4ct リング <9号/#9> 18金イエローゴールド 【指輪】【中古 ジュエリー】【新品 仕上げ済み】【RCP】【fsp2124】
在庫無し
店舗名:ジュエリーとーたる 楽天市場店
32画像
イエローゴールドリング
在庫あり
店舗名:ジュエリーツツミ
33画像
今だけ!早い者勝ちの大特価!!【Tiffany & Co./ティファニー】750 K18YG スクエア リング イエローゴールド【レディース】【通販ならではのお値打ちお買い得商品・ベクトル☆古着】【中古】130614
在庫無し
店舗名:ブランド古着の買取販売ベクトル
34画像
【送料無料】【K10/K18】 クラシカル一粒ダイヤモンドリング*リップル【楽ギフ_包装】【楽ギフ_名入れ】 【指輪】
在庫あり
店舗名:Coffret a Bijoux
35画像
【送料無料】ピンキーリング クローバー フラワー 天然ダイヤモンドリング 0.06ct ピンキーリング 小指 指輪 【楽ギフ_包装】【楽ギフ_名入れ】
在庫あり
店舗名:エターナルジェム
36画像
K18ゴールド ピンキーリング【Mista】華やかな指先に シンプル ピンキー リング !◆K18ゴールド アクセサリー◆ (イエロー/ホワイト/ピンク)|0号/1号/2号/3号/4号/5号| メール便 送料無料 | プレゼント | レディース/女性用 |記念日/誕生日【 楽ギフ_包装】
在庫あり
店舗名:アクセサリー通販 ポルカ&ポルコ

Blender 2.67 でのAdd Tree設定は、ユーザー設定で、Add Curve:Saplingをチェックする

Blender 2.67 でのAdd Tree設定は、ユーザー設定で、Add Curve:Saplingをチェックする

Blenderの古いバージョンではAdd、カーブを選択で、AddTreeが表示されるようですが、
ブレンダーの2.67は標準でAdd Treeが表示されません。

2.67 でのAdd Tree設定は、ユーザー設定で、Add Curve:Saplingをチェックする
みたいです。

Add Tree 樹木生成ジェネレータ

設定したらSaveSettingを忘れずに。

樹木作成後は、メッシュにするのを忘れずに、他のソフトで使えるように。

でも使わないかな。
Blender 2.6 Tree Tutorial

Blender 2.6x Tropical Terrain – 02 – Bush, regular tree

Blender 2.6x Tutorial, Sapling tree Generator and Particle Leafs (Owncollection)

31画像
アンティーク風 ナチュレフレーム(C/A4サイズ)|木製フォトフレーム【10P24Jun13】
在庫あり
店舗名:メルシープレゼント 「雑貨屋」
32画像
篠原風鈴本舗 江戸風鈴 特選小丸ガラス風鈴 5匹金魚
在庫あり
店舗名:えどコレ(江戸川区名産品)
33画像
シンプルヒューマン 【KT1013】 アップライト バッグホルダー ポリ袋ストッカー 【SIMPLEHUMAN/ストッカー/ポリ袋/節約/エコ/アメリカ/ごみ箱】
在庫あり
店舗名:YOUR SHOP 楽天市場店
34画像
アンティークホワイトハイショーケースAJC1079
在庫あり
店舗名:フランドル&ユーロマーケット
35画像
Natti 北欧風ハウス 蚊やり
在庫あり
店舗名:雑貨のお店セレクト・ペンギン
36画像
バカラ(Baccarat) ギンコ フラワーベース「無料ラッピング可」
在庫無し
店舗名:マークショップ 楽天市場店

(1)BlenderからUnityへアニメーションオブジェクトのインポート手順

(1)Blenderでオブジェクト、ボーン、アーマチャア、アニメーションの設定

次回は
(2)Unityへインポート

(1)Blenderでオブジェクト、ボーン、アーマチャア、アニメーションの設定
BlenderからUnityでアニメーションをさせようとしたときに、オブジェクトにアニメーション(移動程度)をさせて、Unityでアニメーションが可能かどうか試したらできませんでした。
つまり、アーマチャア、ボーンによるアニメーションでなければ、UnityへBlenderのアニメーションを再現することはできないみたいです。これができると便利かと思いました。そこで、ボーンを使ってオブジェクトをそうさせれば良いと思いました。
例えば、箱の上蓋にボーンを仕込み、ボーンを回転させて、ふたが開くアニメーションを設定できます。
これなら、Blenderで設定して、Unityで、アニメーションをさせることができるのではないでしょうか。

(1−1)オブジェクト、ボーン、アーマチャアの設定
テスト用としてキューブとボーン1本の簡単オブジェクトを作成します。
まず、オブジェクトモードにて、Addからキューブを作成
つぎに、AmatureからSingleBoneを選んで、ボーンを作成します。
エディットモードで、ボーンの大きさを調整します。ボーンのXrayを設定すると便利です。
オブジェクトモードに戻り、子供にするキューブを選択し、
右クリックでキューブを選択し、シフトキーを押しながら右クリックでボーンを選択します。
子供、親の順番です。
そして、CTRとPキーを同時に押します。
プルダウンが表示されて、Boneを選択します。
次にポースモードになって、ボーンを選択して、動かすと、ボーンと一緒にキューブも動きます。

これで、ボーンを制御してキューブを動かすことができました。

bone1.png画像

(1−2)アニメーションの作成
次にアニメーションを作成します。
2つ作成します。
単純に、回転と移動です。
Move,Rotateとアニメーションの名称を決めます。他の名称でも構いません。
この二つがUnityにインポートしたときに表示されていれば、とりあえずデータとして作成完了でしょう。
ドープシートのアニメーションを選択します。
まず、Rotateです。
これは数値のところを設定します。
0度から90度に設定します。
0度、初期状態で、数値のところで右クリックしてキーを挿入します。

画像

次に90度にして、同じように右クリックしてキーを挿入します。

画像

次に、Moveです。
これも、先ほどの角度のところと同じようにします。

これで、2つのアニメーションの設定ができました。

次はユニティで読み込みとアニメーションです。

Blenderブレンダーの今日の失敗、カメラをターゲットに注視する方法でもうまくいかず、

Blenderブレンダーの今日の失敗、カメラをターゲットに注視する方法でもうまくいかず、

Blenderブレンダーのショートカットキー

無料3DソフトBlenderブレンダーにはいろいろと便利な機能がそろっています。
その機能を使って、カメラをターゲットに向かせようと考えました。

カメラをオブジェクトの方を常に向かせておきたいときがあります。
例えば、オブジェクトの側面をレンダリングしたいとき、何も設定しない状態では、カメラを移動し、そして、カメラをオブジェクトの向きに回転させる必要があります。
数回程度なら、この手順は手間ではありません。
しかし、作業毎に毎回、頻繁にこの手順が発生すると、非常に面倒です。

そこで、カメラにターゲットを常に向くように設定できれば、カメラを移動するだけで、カメラが自動でオブジェクトの方向を向くようにすることができます。

そこで、オブジェクトコンストレイントの”Damped Track”を使ってみました。Blenderブレンダーには、このようにカメラやオブジェクト、ボーンに対していくつかの設定を追加することができます。それによっていろいろな動きや制御を行うことができます。

前後方向に対しては、常に、オブジェクトの方向をカメラがとらえてくれます。
しかし、横方向に対しては、カメラが投影方向に対してローリングしてしまいます。

この部分を何とか修正して、 カメラがターゲットに注視するように簡単にしたいと考えています。
でも、いまのところ、方法が見当たりませんでした。

手順
Add->EmptyからPlainAxisを選択します。Shit+aです。
これが、十字形状の空のオブジェクトになります。これがターゲットの変わりです。名称をtargetにします。
00。png
空のターゲット
一応ここで、オブジェクトも作成しておきます。すでにオブジェクトが画面に存在する場合は、特に作成する必要はありません。

同様に、Shift+a、Meshでcubeキューブを作成.

そして、カメラを選択して、オブジェクトコンストレイントの”Damped Track”を設定します。
01。png
設定
Targetを”target”に設定し、Toを ーZにして、オブジェクトの方にカメラのレンズが向くようにします。
02。png
ターゲット設定

動かすと、カメラがターゲットオブジェクト(エンプティオブジェクト)の方を向くようになります。ただし、ほんの少し、カメラがローリングしてしまいます。これを何とかしたい。
06、07.png
かめらがぞう

07

カメラがローリングする図
08。png
ローリングするカメラ

ちなみに、Blenderブレンダーのカメラビューからだとオブジェクトを見ながらカメラのアングルを調整できます。
その際は、nキーを押して、設定ウィンドウを表示させ、Lock Camera to Viewをチェックします。
そして、カメラビュー0ゼロキーを押して、カメラビューに移動し、ぐりぐり動かします。
05.png
カメラ設定
Blenderブレンダーをもうちょっと触って試してみようと思います。

I think I want to set camera which keep an object turned toward in Blener. So I put an empty object in view of Blender and set it “Damped Track” of object constraits.
To do how to set way, camera keeps the object turned toward.
But if I move the camera anywhere, camera may rotate ownself. So I must adjust camera angle any time in Blender.

Blenderブレンダーの今日の失敗、collision単体は、Blender Gameを使用しなくては動作しない

Blenderブレンダーの今日の失敗、collision単体は、Blender Gameを使用しなくては動作しない

cloth,soft bodyは、アニメーションを実行させると、物理演算処理を実行してくれます。
でも物理演算の衝突判定はblender GameでPキーを押さないと実行してくれません。
モードによって処理できない場合があるので、なぜ物理演算処理をしてくれないのかと悩んでしまいました。

Functions cloth and soft body will do physical animation by animation on Blender render mode. But by only collision animation is be on Blender Game mode.

カメラビューの変更  

Changing Camera view

カメラビューの切り替えは、
Ctr+0ゼロ

アニメーション中にカメラを切り替えて、レンダリングアニメーションを作成するとき
マーカーを設定し、Mキーを押します。
Ctr+Bを押します。
これで、アニメーション中に別のカメラに切り替わります。
もし、間違ったカメラにしていたら、マーカーの位置で、正しいカメラを選択して、
Ctr+0を押します。

ドープシートとNLAエディターの使い方  

Using Dope sheet and NLA Editor

ブレンダーを使いにくいと思わせる機能に、その機能の多さがあります。
ブレンダーは、無料の3Dソフトです。しかも、高機能です。でも残念なのが、後発のソフトであるために、キーの設定や操作が独自路線を貫いています。
キーの操作を覚えるのに時間が必要です。今のところ、約2週間でやっと覚えてきました。

今回は、アニメーションを作成するときに便利なNLAエディターの使い方を覚えました。
数ヶ月先にまたチェックするときのために、メモしておきます。

なにをするのかというとアクションを再利用することができる。これがポイントです。
簡単に言えば、Flashでループアニメを作成、登録しておいて、後で、利用できるという感じでしょうか。

例えば、歩行アニメーションを作成したとします。このとき、歩行アニメーションのオブジェクトは、同じ位置で足踏みをするような動作とします。

画像

このアニメーションをアクションActionとして登録します。
そして、NLAエディターでこのアクションを呼び出します。
次に、またドープシートに戻って、今度は、A,B間の移動アニメーションを作成します。
このとき、歩行アニメーションを設定する必要はありません。単に、オブジェクトが、A,B間を移動するキーを設定するだけです。
そして、このアニメーションを別のアクションActionとして登録します。

そして、このアクションをNLAエディタで呼び出します。

画像

すると、二つのアクションが重なり合って、移動しながら歩行アニメーションを実行してくれるのです。

画像

こういったアニメーションをいくつも登録しておくことで、まさに、アニメーションの再利用が可能になります。

ここで、疑問が出てきます。
では、足をきちんとそろえるときは、別のアクションにするのでしょうか?
歩くアクションと、足をそろえるアクションとを組み合わせるのかまた、試してみようと思います。

ブレンダーのキー設定ショートカットキー一覧

Blenderブレンダーの今日の失敗、IK、Shift+IはChainLengthを0から1以上へ(Poseモード)

Blenderブレンダーの今日の失敗、IK、Shift+IはChainLengthを0から1以上へ(Poseモード)

Shift+IはChainLengthを0から1以上へ(Poseモード)  

Poseモードでボーンを選択し(子供を先に1、次に親を選択2,これで子供の方を向く)IK、Shift+IはChainLengthを0から1以上へすること。

ChainLengthを忘れてしまうと、オフセットにしてても、隣接状態になります。
仮に、親側が他のボーンの子供であっても、強制的に、子供側のボーンに接近します。

注意すること、いきづまったらChainLengthを0から1以上へすることをチェックです。
画像
ChainLength0の場合

ChainLengthが1以上の場合

Blenderブレンダーの今日の失敗、ボーンの親子関係とIKは、親子が先、ミラーコピーの仕方

Blenderブレンダーの今日の失敗、ボーンの親子関係とIKは、親子が先、ミラーコピーの仕方

脚のボーンで、ユーチューブのチュートリアルのように上手く動作しなくて悩んでいました。
実は、ボーンの親子設定を先にして、後にIKを設定しないとならないようです。
この順番を逆にしていたので、うまくせっていできなかったみたい。
I understood, I should have set up bone parent before IK.

また、同じ、アーマチャアに、異なるオブジェクトを設定できます。
つまり、一つのアーマチャアで複数のボーンを動かせます。

00.png
ボーン

ミラーコピーの仕方  

ShiftーCでカーソルを原点に、ピリオド、るのキー
Shift-d、S、X、−1
で鏡面コピーです。

ブレンダーで歩行アニメーションを設定しようとしましたが、難しいです。うまく歩いているように見えません。
つまんないんですね。歩くからなんでしょうか。それよりももっと簡単でシンプルなアニメーションを作ろうと思います。

It was difficult to set up walk animation for me. I think that if I set up walk animation, I am not interesting this. So I will set up another animation.

ショートカットキー