2015年12月18日金曜日

Avastar と Second Life New bones

アドベントカレンダー向けに Avastar の話題を、、、と思い Avastar のサイト machinimatrix を見たら、あら、あらあら

Avastar-2 and New Second Life Bones
http://blog.machinimatrix.org/2015/12/17/avastar-2-and-new-second-life-bones/

羽ボーンとか尻尾ボーンとか、指ボーンやら顔の表情を作るボーンが使えるようになった、とのこと。


この新しい bone のポイントは
  • Project Bento ビューワーを使うこと
  • デフォルトアバターには使えない=rigged mesh で作るキャラクターのみ
みたいですね。

Bento ってなぁに?


http://wiki.secondlife.com/wiki/Release_Notes/Second_Life_Project_Bento/5.0.0.309171
Avastar の機能追加で紹介されるということは、なるほど、12月16日に v5.0.0.309171 としてリリースされたんですね。
サーバー側も対応している必要があります。Bento のテストについては以下で紹介されていますね。
http://wiki.secondlife.com/wiki/Project_Bento_Testing
サンプルの .blend ファイルや dae ファイルが提供されていました。

この Project Benro つまり新しいボーンにも対応しているのが Avastar 2.0 ということです。


Avastar について

Avastar は Blender で Second Life 向けの Mesh オブジェクトを作る際の便利な機能をまとめたアドイン製品です。

現在、Avastar は 1.x 系 と 2.x 系の2つのバージョンが平行して提供、メンテナンスされている状況です。

実は私は 1.x 系のみ利用可能な契約なんです。1年以上前ですか、それまで購入したユーザー個別の固定 URL で提供されていた Avastar が Machinimatrix.org へユーザー登録しサインインすることで、Avastar のアップデートを受けられるようになりました。

前から Avastar を購入していたユーザーは Infinite Support (無限サポート)と呼ばれています。 Machinimatrix にログインして、「My Prchases」で Avastart 1.x と Sparkles-Light をダウンロードすることができます。Infinite Support は、一度の購入(支払い)でずっと更新を含むサポートを受けられるものです。

ただし、Infinite Support は 1.x 系のみで、2.x からは年間サブスクリプション契約となりました。
新しい機能追加については、2.x のみで行っていく、とし、1.x の Infinite Support との差別化をしています。

今はもう 2.x しか購入できません。 Infinite Support の 1.x は、昔から Avastar を購入し、利用していたユーザーへの救済策みたいなものでしょうね。

Avastar-1 と Avastar-2 の違い(英語)
http://blog.machinimatrix.org/2015/11/23/avastar-product-support/

と、、、思ったら、2015年のクリスマスプレゼントで、Infinite Support の 1.x ユーザーも Avastar-2.0 への半額アップデートのオファーが。
http://blog.machinimatrix.org/2015/12/15/avastar-christmas-2015-present/


Avastar で何ができるの?

Blender での Rigged Mesh によるキャラクタ作成は Avastar がなくても可能です。ただ、このアドオンと、このアドオンを使ったチュートリアルビデオのおかげで、かなり助かりました。

たとえば、人型ボーンじゃないキャラクターの作り方。この例では人型ボーンを馬のボーンに変更する方法を Avastar 製作者の Gaia さんが紹介しています。
https://youtu.be/0Mh7Yxbbp_4

オブジェクトを分割したときに分割線について、なぜできるか、Avastar でどうすれば分割線を消せるかを解説しています。
https://youtu.be/E9APc-AVp0g

モデリングだけではなく、アニメーションの変換機能ももっています。
https://youtu.be/8vyqutwhoUU

リターゲットを紹介した昨年の記事
http://snumaw.blogspot.jp/2014/12/mmd-sl.html


2015年12月12日土曜日

Advend カレンダ、、曜日間違ってた~(Blender でカスタム法線)

おもいっきり曜日間違ってました今年のアドベンドカレンダ2回目(泣

土曜日だと思っていたら、金曜日(昨日)だったのね、Blender 2.76、、、

ということで、慌てて登録してごめんなさい、の回です。。。

実は、、、記事にしたかったのは、まだ、検証中なの(泣

過去にこの記事投稿しているんです。このブログで。

http://snumaw.blogspot.jp/2015/06/6.html

この中で、Blender 2.74 でカスタム法線(Custom Normals)のサポートが実装されました、これって、今まで Avastar でしかできなかったんですよね、Gaia さんが紹介しています、って内容です。

その Gaia さんが YouTube に投稿してくれたビデオがこちら。

https://youtu.be/LhQUhPH9VbU

それで、私自身、Avastar ばかり使っていたものですから、この Blender 2.74 のカスタム法線の検証ってしてなかったんですよね。そこで今回やってみよう、と思ったら、、、ん?これ、Blender の標準機能じゃない!

よくよくビデオのナレーションを聞くと、これ、Gaia さんが提供している Blender アドオンの Sparkles の機能じゃないですかw(YouTube にもその旨書いてあるし)

http://blog.machinimatrix.org/sparkles/

でも、Blender 2.74 のリリースでは Custom Normals の機能強化がトピックとしてあがっていました。

http://wiki.blender.org/index.php/Dev:JA/Ref/Release_Notes/2.74/Modeling

なお、最新の 2.76 でも、、、

http://wiki.blender.org/index.php/Dev:JA/Ref/Release_Notes/2.76

Displace モディファイアがカスタム法線に対応、、、ってあったりします。

で、、、

やりたかったことは、Avastar で可能なオブジェクト分割した時の分割線にある頂点法線の向きを一緒にしたい、ってことです。

これは、Avastar では Weld Edge Normals オプションで実現可能な、頂点法線の編集です。

たぶん、法線のコピーをすることで、法線の向きをそろえることができそうなのですが、、、

Blender2.74のカスタム法線をいろいろ試している結果投稿の素晴らしいブログ
http://ch.nicovideo.jp/Arasen/blomaga/ar751632

たぶん、このような手順を Python で一気にやるのが Avastar だったり、Sparkles だったりするのでしょうね、、、(ちなみに Maya は標準で、あまり気にせず調整可能とのことです)

と、、、本当に間に合わなくて、ごめんなさい><

2015年12月5日土曜日

なに作る?

仮想世界、、、って言ってましたよね。当初。

Virtual を日本語で「仮想」としちゃったので、ニュアンスが違うんですよね、とウィキペディアさまが教えてくださっていますが、広告代理店が力を入れていた 2007年前後の頃って、リンデンドルという「仮想通貨」による取引が取り上げられて、リンデンドルを米ドルに換えることができるリアルマネートレードが、この仮想世界で、なんか「億万長者」になれる!みたいな胡散臭い話がまかり通っていましたね。

セカンドライフ 億万長者のなり方
http://www.j-cast.com/2007/03/06005990.html

リアルというものが汗水たらして「努力」とか「時間を費やす」といったイメージとするなら、バーチャルでビジネスっていうのはパソコンのボタンを指一本でクリックするとチャリンチャリンとリンデンドルが手に入って、それをリアルなお金に換えて現金ゲット!みたない「楽」なビジネス。。。。

まぁ、いまでも SNS の広告みてたら、アフィリエイトやネットビジネスという名に変わり、似たような胡散臭い話で埋まっていますが、そんなおいしい話は無いわけです。インワールドで売上あげている方やショップは、商品企画、製作・作成、告知、広告、販売、サポート、イベント作り、、、って、本当にリアルでかける同等の時間をかけて、そこにアイディアを投入していますよね。費やす時間とアイディアいう意味ではリアルもバーチャルもないですしね。

今話題沸騰!全米が泣いた!億万長者になれる! そういう胡散臭いやり方で過去に紹介されちゃったわけですよね。

なので、その胡散臭い時期を超えて、長い間、今でも継続して何かを提供し続けている人ってすごいと思うのです。でも、たぶん本人は「なにが?」というと思いますが。

提供するのは、モノだけじゃなくて、たとえば、イベントやダンスクラブ、カフェ、たまり場、、、といった「場」の提供含めてです。

仮想じゃない、現実がそこにあります。 プログラミングされたBOTが動いているわけでなく、明らかにそこにいるのはリアルな人間の意志の結果のアバターです。


大切にしたいのは、そんな会話や情報交換ができる「お友達」だと思います。

考えてみれば、セカンドライフが発端のお友達って十数人いて、もう5年以上とか、8年とか、月日たってます。Google plus や他の SNS でもつながっている、なんてこともありますよね。

良い友達がいれば、長く続けられる、長く続けていると、いろいろなものを作ったり、提供したり、できる、と感じています。

たぶん、次のプラットフォームの SANSAR になったら SANSAR になったでみんなで「お引越し」とかするかもしれませんね。

お友達、作りましょw



2015年12月3日木曜日

MakeHuman が v1.0.2 になっていた

alpha がはずれて、v1.0.2 になっていました、MakeHuman。

http://www.makehuman.org/index.php

人型のMESHを作るときは重宝します、このツール。

しばらくリアルで視力が低下して、このあたりのツールを触っていませんでしたが、ちょっとキャッチアップする意味も含めて検証してみました。

MakeHuman は Second Life 向けに、[ポーズ/アニメーション] で リグプリセットに [second_life.json] と [second_life_bones.json] があり選択できるようになっています。ボーンの数が 26 と 19 のように違います。目とかつま先の扱いですね、このボーンの数の差は。


UI は日本語に変更できます。(この手のツールはあまり日本語に頼らないほうが後々のためなのですけどね。問題があったときに英語で検索しないとだめになりがちなので。。。)

デフォルトのポーズが T ポーズじゃないので、このまま Collada エクスポートしても Second Life へのインポートできないだろうなぁ、、、と思い、やってみましたが、リグ入りだとモデル アップロード時で見事にビューワーが落ちました(泣 Viewer は 公式 3.8.6 です。

MakeHuman で作成したモデルを、一旦 Blender を経由する、となると、Collada 形式とは別に Blender exchange (mhx) 形式の選択肢が増えます。(他のフォーマットでも Blender で読めますが、あえて obj などは選ばないでしょうね)mhx にするメリットは Blender の作業を考えると、かなりありますが、今回はそこは割愛します。

また、MakeHuman のサイトには「Blender Tools」がありますが、モデルだけの Blender ヘのインポートであれば、Blender Tools アドオンが必須ではありません。モデルのインポートだけであればb、Collada であれば何もやらなくても OK、mhx であれば、Blender アドオンの「Import-Export: Import: MakeHuman(.mhx) を有効にしてください。

MakeHuman .mhx import add-on
最終的な目的が Second Life への Rigged Mesh のアップロードなら、MakeHuman では SL用のボーンとウェイトがついた Collada でエクスポートしたほうがいいでしょうね。

ただし、上述のように MakeHuman で作成したモデルは T ポーズではないので、メッシュとボーンの Rest Pose を T ポーズにする必要があります。

また、SLボーンがあるとはいえ、やはり Blender でボーンとウェイトとメッシュの調整をしなければなりません。T Pose と呼ぶ "Rest Pose" の足の位置も違うので、そのあたりの調整なしに SL にインポートすると、アニメーションで歩幅が広いポーズをとることもあります。


 とはいえ、ある程度のウェイト付けもされているのはありがたいですよね。

 Avastarがあればいろいろとできますが、Avastar がなくても Rigged Mesh として人型 Mesh を上記の図のように SL にインポートすることができます。ただし、T Pose 調整などもあるため、MakeHuman で作成した Collada 形式ファイルをそのまま SL にインポートはできないと考えていたほうがよさそうです。これら調整のため Blender などの編集ツール経由となるでしょう。

・ MakeHuman でモデリング
 ・ [ポーズ/アニメーション] - [スケルトン] で Bones:26 となる Second Life用のリグ "second_life.json" を選択します
 ・ [ファイル] - [エクスポート] で [メッシュフォーマット] は Collada (dae) を選択し、[オプション] では、[足を地面につける] で [Z up, face X] を選択し、単位は [メートル]にします

Blender で調整する場合、SL の座標軸としては X 軸が前方です。SL へインポートをうまくやるために、ここでは face X と X 軸を正面(前後)の軸として選んでください

・ Blender で T ポーズ
 ・ インポートで上記エクスポートされた dae ファイルを Blender にインポート

 ・ ボーンを選択、ポーズモードにして T のポーズをとる。若干歩幅も狭くする

 ・ この状態は T の Pose している状態で、"Rest Pose" と呼ぶお休み状態(=デフォルト)ではありません。この T Pose を Rest Pose として設定します

 1) このポーズの状態で、ボディのメッシュ オブジェクトを選び、[モディファイア] で現在の Armature モディファイアを適用します。

 2) 再度、Armature モディファイアを追加し、Object は python (MakeHuman が勝手につけたボーン オブジェクトの名前です)を選択します。

 
3) 腕がおかしくなりますが、それで OK です。


 4) ボーンを選択して Pose モードにして、[Pose] - [Apply] - [Appy Pose As Rest Pose] を選択します。


これで T Pose が Rest Pose として設定されて、ボディのメッシュも T の状態が Rest Pose になりました。

 これで、下準備完了です。

・ セカンドライフ向けに Collada エクスポート
 使用している Blender は 2.76 です。メッシュを選択して、[File] - [Export] - [Collada (Default) .dae]を選び、左サイドバーの Export COLLADA オプションで [Sl+Open Sim Rigged] プリセットを選んで、適当に名前を付けて [Export COLLADA] ボタンを押します。
・ セカンドライフにインポート
上でエクスポートした dae ファイルをアップロードのために読み込んだダイアログが以下になります。MakeHuman が作成したボーンを使った全身義体(笑)なので [ジョイントポジションを含む] はオンにしたほうがいいでしょう。

 上記の手順である程度の Rigged Mesh になりますが、やっぱり、微調整かけないとだめよね。


 まぁ、現実のところ、MakeHuman でフルボディの Rigged Mesh を作ったところで、他のアクセサリや服飾などを用意するのは大変ですから、ヘッドのみパーツにする、、、など、使いどころで検討する余地は大きいと思います。

ただ、3DCG の技術面からみると、このあたりは、非常にベーシックなところでの応用だったり、確認だったりすることが多いので、プラットフォームが変わっても、ツールが変わっても、流用できる知識かなぁ、と感じています。 

リンデンが準備している次の 3DCG のプラットフォームは Maya をツールとして推奨しているようですが、Maya ってお高いんですよね。。。