饂飩コーディング

iOSアプリやら、Unityやら、Cocos2dやらごにょごにょ書いております

Blender→Unity Object import の向き

f:id:appdeappuappu:20140620094223p:plain
↑大きな画像はUnity、小さい画像3つはBlender

BlenderモデリングしてUnityに持っていく場合、両アプリケーションでは軸が異なっておりそのまま持っていくと、あれ?という感じになってしまう。右手と左手の鏡像関係ににている。


そこで自分の場合は画像の様にそれぞれのアプリケーションで軸を仮に表示させておいて、猿の顔がBlenderで奥向きならUnityでは手前向き!ということにしました。ここで保存してUnityで取り込む。


自分なりの方法
以下の様に方向をそれぞれのアプリケーションでだいたい同じになるよう画面をグリグリ回す
Unity f:id:appdeappuappu:20140620094956p:plain
Blender f:id:appdeappuappu:20140620094846p:plain

後は、猿の顔の場合、Unityで顔を手前に表示させたいのならBlenderで奥向きにする(z軸方向に顔を向ける)。


↓自分の場合しばらく悩んだ
後、Blender側でのGlobalとLocalでRotationとScaleが一致してない場合がかなり重要で一致させないままUnityに取り込むとScriptからAnimaitonさせた時に思いもよらない方向に動いたりするので必ずUnityに持っていく時はCtrl+A(Blender Object Mode → Object Menue →Apply→Rotation & Scale)をしてGlobalとLocalを一致させておきましょう。

UV Unwrap時のワーニングnon-uniform scaleの対処方法

f:id:appdeappuappu:20140619233121p:plain
Object modeで操作した場合、scaleが確定されていない?らしくてUV Unwrapする時にワーニングが表示されUV展開の比率が意図してない割合になっていることがあります。

解決方法はObjectのScaleを確定させてあげるだけ。

Object Modeで該当のObjectを選択してMesh menuからApplyを選択してScaleを確定する
Ctrol+AでもOK
f:id:appdeappuappu:20140619233523p:plain

BlenderモデルがUnityで透明?面が無くなっている場合の対応

f:id:appdeappuappu:20140619225413p:plain
左の青い箱は奥側面が透明になって向こう側の方眼が見えています。
一方右側の黄色い箱は突き抜けていません。←Blenderでは黄色になると思って作成しました。

なんで青のパターンになるんだろうとしばらく悩み、何度かモデリングし直したりしたんですが、うまくいったりいかなかったり。でぐぐったらここにたどり着きました。

↓StackOverFlowにも質問があったみたい
http://blender.stackexchange.com/questions/1489/messed-up-blender-models-when-exporting-to-unity3d

Faceの表裏(法線の方向でわかる)が自分が思っていなかった面に向いている場合、Unityではその面を表示しないらしい。解決方法としてはBlender側で面の表裏を整えてあげるとOK!
方法1Control+N でrecalculate Outsideして法線面をすべて外側を向く様に処理を施す。
f:id:appdeappuappu:20140619230700p:plain

方法2透明になった面をEditModeで法線面を表示させて該当の面を探し出して、Mesh menu →Normal→Flip Normalsする。
法線は下の様に、normalの面選択ボタンっぽいアイコンをクリックするとでてきます
f:id:appdeappuappu:20140619231143p:plain

法線面の方向を示す青い線を注意深くみるとわかった。




さらにコチラの情報を参考にさせていただき、法線面が逆になっていたことが確認でき、対応できました
http://cgnoteblender.blogspot.jp/2011/04/blender-256-normal.html



追記
この件しらべていて今更ながら分かったんですが、今使ってるUnity Version4.5はBlender Version2.7のファイルそのままAssetとしてImportできて使える。いままで.fbxでExportして使ってました。


Blender 3DCG モデリング・マスター

Blender 3DCG モデリング・マスター

Unity でパチンコ台を作ってみたその1

f:id:appdeappuappu:20140617104400p:plain
↓実行結果 ただ玉が出てスタートチャッカーにはいってデジタルが回るってだけです
http://nrtkb.sakura.ne.jp/forblog/unityFolder/PachinkoSWeb.html

Textureちゃんとしたの作って
リーチアクション作って
大当たり処理つくって
釘ちゃんとして
とかやってたら、使ってくれる人いるかな?


作成手順概略
1、枠の作成 Cube + 曲線部分
2、スタートチャッカー、玉吸い込み口(下部)作成
3、釘配置、玉作製、液晶枠作製
4、出目部分作製
5、保留ランプ作製
6、スタートチャッカーと絵柄のスタート停止コーディング

ざっと、こういう流れで作製しましたが、
今後の機能追加は実装自体はらくそうです。


演出をどうやって作ろうか頭が痛い。

Transparent CutOut使ってみる!

f:id:appdeappuappu:20140611174554p:plain
実行結果はこちら↓
http://nrtkb.sakura.ne.jp/forblog/unityFolder/transparentcutoffT.html

Photoshopかなにかで下の様に、グラデーションのマスクをかけます。
f:id:appdeappuappu:20140611174623p:plain

上で作成した画像ファイルをTextureとしてUnityにAssetにして、Materialを作る時にUnlit Transparent CutOutを選択します。
f:id:appdeappuappu:20140611174753p:plain

あとはAlpha CutOffの値をいじるとAlphaの値を境に表示するかしないかをやってくれるので
使い道ありそうですね。

Animationで上記の値を操作できるので楽チンです。
f:id:appdeappuappu:20140611175124p:plain





コチラを参考にさせていただきました
http://d.hatena.ne.jp/nakamura001/20130208/1360346901

Depth Maskをつかってみる

f:id:appdeappuappu:20140611091857p:plain
やっぱりパチンコのデジタル画面みたいなのを実装する場合は
マスク領域を確保したいのでググっていたらDepth Maskなる物があるという事で使ってみました。
実行結果↓
http://nrtkb.sakura.ne.jp/forblog/unityFolder/depthd.html


画面描写の順番をコントロールする事で実現している?って程度しか理解できちませんが、色んな場面で使えそうです。


参考とさせていただきました。
http://unitygeek.hatenablog.com/entry/2013/04/01/164040
http://wiki.unity3d.com/index.php?title=DepthMask
https://www.youtube.com/watch?v=Lz94SDbpvNc

スロット的な物を実装! 前回とは違ったやり方 Animation Texture編

f:id:appdeappuappu:20140610184414p:plain
まずは実行結果↓
http://nrtkb.sakura.ne.jp/forblog/unityFolder/slotPachinkoSample.html





前回は↓コチラのエントリーで、Cameraを複数台使ったバージョンでしたが、やはり処理にコストがかかる事がネックでしたので今回はAnimation Textureでやってみました。
http://appdeappuappu.hateblo.jp/entry/2014/05/20/093253


こちらは、結構簡単で貼付けたtextureのTilingとOffsetをアニメーションでコントロールしていくだけ。