Unityお勉強備忘録

個人的なUnityお勉強備忘録です

day by day モデリング

Virtual Cycling projectのためのモデリング

FUSION 360モデリングしたCADデータをBlenderに持っていけるか、

ためしにやってみたところ、ポリゴン数が多すぎて断念。

 

f:id:q9q9q9q9q:20180922025139p:plain

Fusion360は多彩な形式でダウンロードでき、3Dプリンタ用のデータを制作するのに大変好都合ですが

精度の高さゆえデータも重いということで、リトポロジー(ポリゴンメッシュ再構成)

をしないとVRchatやゲームエンジンではこのままですとロードバイクまるまる動かすには

現実的なCPU/GPU資源では無理そうです。

上の画像はFusion360で出力したステムの.stlファイルをblenderに持っていき、インポートしたものです。

これだけで3000頂点ぐらいありました。

フロントチェーンリングなどより複雑なモデルになりますと

(ギア板一枚で)5000頂点ほどになっていました。

リトポは断念したので、新規にゼロからある程度ラフにモデリングをすることとしました。

資料は揃っているので細かい部分まで作り込むことも可能ですが、

ある程度ゆるくモデリングを進めます。

 

 

f:id:q9q9q9q9q:20180922025156p:plain

動かす前提でモデリングしたロードバイクモデルです。

Fusion360モデリング経験はあったので経験はある程度生きました。

モデリングをしながらblenderの機能も新しく覚えました。

ドライブトレインがまだ手付かずですがこれで~4200頂点程度です。

最終的には5000に収めたいです。

難関はリアディレイラーでしょうね。

これであればゲームモデルでも無理なく動かせ、VRchatに持ち込んで乗り回すのも

無理なくできると思います。

ゲーム内でアセンブリ(組み換え)できるようにしたいですね。

 

装飾性の高いパーツや

現在は入手困難で博物館にしか無いような希少性の高いパーツ、

現実ではレース数が少なく買ってもすぐに売ってしまうことの多い()TTバイクなど

700Cマシンを中心に、いずれは

生産していないスーパーカー自転車、ママチャリ、さらに言えば実用車、

VRchatで小さいアバターの人向けに(いわゆるロリ)三輪車といった

多種多様なバイクモデルを用意して遊べるようにしていきたいです。

まぁ資料集めも含めてぼちぼちやっていきましょう

Unityちゃんトゥーンシェーダーをのじゃおじさんモデル(Mikoko model)に適用して遊んでみる

f:id:q9q9q9q9q:20180911030754p:plain

 

 

Unityちゃんトゥーンシェーダー(UnityChanToonShader)を

バーチャルのじゃろり狐娘元Vtuberおじさんmodel(mikokoモデル)に適用して遊んでみました

 

Unityちゃんトゥーンシェーダー

 

Unity ちゃんトゥーンシェーダーの詳細な説明

 

 

 

 

トゥーンシェーダーとは・・・・

アニメやセル画みたいなCGを出力するシェーダー。

プリキュアのエンディングがわかりやすいかなぁ・・・あんな見た目の

3DCGを出力するためのシェーダープログラムです。

Unityちゃんトゥーンシェーダー(以下UTS)を導入してみました。

f:id:q9q9q9q9q:20180911031745p:plain

 

 導入方法:

Unityをいったん閉じて、新規プロジェクトを開始する。

開始フォルダに、UTSの配布サイトからDLしたZipファイルを解凍し、

上記のフォルダをプロジェクトに指定する。

 

新しいシーンを設定する。

アセットにいろいろなモデルを突っ込んでトゥーンシェーダーの効果を

見てみる。

f:id:q9q9q9q9q:20180911032139p:plain

 (たぶんもっといいチュートリアルがあると思うので、ちゃんとやりたい人は

そっちを見たほうがいいと思いますw)

 Mikokoモデルのmaterialsフォルダからmikokotexを選択し、ShaderにUTSを設定する。

非常に多くのUTSがあるので、適当なものを選んで適用する。

 

【特に重要だと思うパラメーター】

f:id:q9q9q9q9q:20180911032418p:plain

 

 Outlinewidth、つまり外形線ですね。エッジに出てくる線です。

f:id:q9q9q9q9q:20180911030754p:plain

 

 Outlinewidth = 0.08のときです。綺麗に縁取りができているのがわかります。

f:id:q9q9q9q9q:20180911032611p:plain

 Outlinewidthを-1.8にしました。どうでしょう、マイナス(ポリゴンの頂点の内側ということでしょう)にアウトラインが出てきて、線も太くなっているので見た目が崩壊しています。

f:id:q9q9q9q9q:20180911033019p:plain

 

 OutlineColorでカラーも変えれます。また、アウトラインにテクスチャを設定して、

アニメのエンディングであるような(つたわれ)

鉛筆で描いたような線にすることもできるみたいです。

クリスタとかフォトショの鉛筆ブラシで描いたみたいなアレです。 

 

リムライト(RimLightColor)

f:id:q9q9q9q9q:20180911033642p:plain

エッジよりも少しだけ内側にある"膨らみの中央"といいましょうか、

光の集中する部分の色や明るさを定義します。

 

f:id:q9q9q9q9q:20180911034534p:plain

暗さもあいまってエッチな雰囲気に・・

 

 

リムライトを設定するととても雰囲気が良くなっていく気がします。

パラメーターが多いのと、環境光(Global Illumination?)との影響度合いも変えられるみたいなので

ゲームを作るのに飽きた片手間にシェーダー周りも触って遊んでみようと思いましたデュフフ

 

 

 

 

 

 

 

 

 

 

 

 

 

UnityからVRMモデルをFBX形式でエクスポートする時に出るエラーへの対処

Unityようちえん、年少組の私です。

いやまじでUnity触り始めて一週間とかそれぐらいなんですが日々の進捗を

ブログに書き留めて置こうと思い書いてます。

f:id:q9q9q9q9q:20180904001650p:plain





 

 

 

Unityで読み込んだVroid出力の VRMモデルをBlenderとかで触りたいので、

FBX形式にエクスポートしたいが、エラー出てFBX出力できない

 

 

 

f:id:q9q9q9q9q:20180904001647p:plain

この問題に私も直面していましたが、なんとか解決しました(たぶん)

 

 

問題があった組み合わせ (Unity2018 2.3f1+FBX exporter Version**: 1.3.0f1 +UnityVRM ver0.41)

 

問題が起きなかった組み合わせ(Unity 2017 4.9 f1 FBX exporter Version**: 1.3.0f1 UnityVRM ver0.40 )

 

いちおう念の為OSのバージョンも・・

Microsoft Windows [Version 10.0.17134.228]

出力しようとしたVRMファイルは同じです。

 

Blenderにインポートしたあと

 

 

f:id:q9q9q9q9q:20180904001654p:plain

 

髪の位置がおかしい(かなり後方に巨大化してクラゲのように鎮座しておられる)

目がおかしい、眉毛が(ry など、FBX出力したモデルはデータがおかしいみたいです

たぶんVRMスクリプトで制御されていた形状を受け継いでないような予感がします

Vroidで作ったモデルのとおりの見た目でエクスポートできるようになるにはまだ時間がかかりそうですね

では今日はこれで

 

AdvancedAnt+っていうUnityのアセットについて

f:id:q9q9q9q9q:20180830031728p:plain

Unityのアセットストアには無料のものも含めて凄まじい数の

ゲームの素材となるようなアセットが数多く存在する

その中で、現実の自転車と動きを連動させるため

サイクリングゲームをするならまず入れておきたい

Ant+という無線通信プロトコルBluetoothの親戚みたいなものというか

実際BTから大昔に派生した2.4GHz規格なのですが、

これが今でも多くのロードバイクMTBで使われている電波の規格なので

これをUnityに持っていくやつです

Ant+センサーのついた自転車、自転車のスピード、ケイデンス(ペダルの回転数)、パワー(どれだけペダルを漕いでるか)、心拍数など

様々なセンサーがあり、AdvancedAnt+はほとんどのAnt+プロファイルに対応しています

このアセットは65ドルぐらいという価格でした、まぁ自分でゼロから開発するより

手っ取り早いので惜しげもなく払ってしまいました

 

同じく近年劇的に普及してるヘルスケア系の規格として

BLE(Bluetooth Low Energy)も検討したのですが何やら

OS側のネイティブ対応が必要で、ドライバを書いてやったり?ハードルが

数段一気に上る感じでした。

 

Ant+アセットですが、これを使う前に

https://www.thisisant.com/

、Ant+規格の公式

サイトにて開発者登録が必要です(無料)

Ant+はPAN(Private Area Network)という性質のものでして、他の

センサーを積んだ自転車と混信を避けるための"ネットワークキー"

が必要となります

このネットワークキーを入手するため、開発者登録が必要となります

 

demoアプリを走らせたところです

USBドングルを認識ししてスキャンしてるみたいですがセンサーとの相性がいまいちで

値を拾ってこれません

ネットワークキーも突っ込んだはずなんですがなんかエラー出てる

 f:id:q9q9q9q9q:20180830030736p:plain

 

ケイデンスとアニメーション速度を連携させたら見れるものになりそうなので

進展があったらまた書きたいです

バーチャルサイクリングゲーム作りたい

Zwiftみたいなバーチャルサイクリングゲームを作りたい。

zwiftやったことあるけどアバターがあんまりかわいくないのと

月額12ドル?とかちょっとあれだなぁと思って地味にゲーム作る環境もあるっぽいし

始めてみることにしました。

 

プログラミングとかわからないけどまぁ勉強しながらこつこつやっていこうかと

 

インストールは成功、今の所バージョンは2018 2.3f1、パーソナルライセンス。

 

とりあえず今入れたアセットを書き出してみる

ASSET(ゲーム内で使うモデルとか色々なプラグインやパッケージ)

FBX expoter

UnityChan

UnityVRM(VroidやUnityで作ったVRMモデルを読み込むためのアセット)

AdvancedAnt+(有料アセット、60ドル、そのうち解説します)