2013/02/21 16:22
みなさ~ん「ビットからアトム」してますか~?
どうも、エクストリーム系デザイナーの渡邊です。
前回、紙のデザイナーが3Dロストバージンストーリーをしたためさせていただきました。
⇒ 前回の記事: 3Dプリンターがコンセントにやってきた!
写真をベースに3Dモデルを作って、それをプリンターで出すというところまでお話をさせていただいたのが前回。
さて今回は…
メイン:もうちょい精度をあげた3Dモデルを作りたい!!macで!
サブ:でも3Dソフトとかわかんないから、簡単にどうにかなんないの!?
というお話。
紆余曲折して出力までこぎつけるまでをそのまま書いています。
とりあえずスペックから。
それぞれのソフトについては後ほど語りますのでざーっと紹介。
渡邊の仕様
★twitter: @_wato(たま~に、まともな事いいます。)
★29歳/男
★デザイナーとしてもうすぐ7年目。主にエディトリアルデザインをやってきました。
現在は、紙モノのデザイン、Webデザイン半々くらいの感じです。
3Dのソフトは正直使ったことありません!!
使用ハードウェア
★MacbookPro(OS10.6.8 2.7GHz Intel Core i7 メモリ8GB)
★Replicator 2(3Dプリンター)
★kinect(Xbox 360用)+ 電源アダプタキットが必要です
必要環境
★Xcode <デベロッパー登録が必要
https://developer.apple.com/jp/technologies/tools/
★MacPorts
http://www.macports.org/
3D周りのソフトウェア
★Skanect 0.2(ウィンドウズでは1.1のリリースがありました。)
http://skanect.manctl.com/
★MeshLab <なにかと便利な3Dビューアーソフト 兼 編集ソフト
http://meshlab.sourceforge.net/
★Sculptris <無料でここまでいけるのか!というモデリングソフト。
http://www.pixologic.com/sculptris/
さて、まずは前回の3Dモデルをおさらいと問題点の解決。
なんかディテールも曖昧だし、色がなくなると誰だかわからんし。。
脇からなんかマロニーみたいなの出てるし。。
ちなみに、脇から何かが出ているという問題の原因は、積層させながら出力をしていくというプリンター「Replicator2」の性質上、中空にいきなり出力を始めてしまう事(この場合でいうと青木さんの肘にあたる部分の出力)によって、空中でプラスチックが固まるという現象が発生したものでした。
空中にあるオブジェクトのところまで足場を作ってその上に出力をする必要がありました。この件に関しては、「Replicator2」の出力データを作るためのソフト「MakerWare」の出力オプションで、あとから取りはずしが出来る足場を自動で作成するという設定をすることができ、無事に出力出来ました。
オフィシャルの解説動画の6分30秒あたりから出力時のオプションについての説明があります。
The MakerBot Replicator 2 – MakerBot MakerWare
http://www.youtube.com/watch?feature=player_embedded&v=YLpWWXOmzw4
MakerWareの「M(Make It)ボタン」を押したあとの画面です。
[Raft]
餃子の羽のような感じで、周りに補強材を敷いてからその上に出力をしてくれる。
[Supports]
空中に浮いている部分を出力する際に足場のようにラフにプラスチックを積み上げていってその上から出力をしてくれる。ちなみに、足場はパキパキと手で取れます。
最近は3Dスキャナというものも手の届く範囲のお値段で買えるようになりました。
PARTY主催の「OMOTE3D」のプロジェクトでも3Dスキャナーを使っていました。
ただ、今回は安価に攻めるという裏テーマもありましたので、3Dスキャナの代わりに「KINECT」を使う事にしました。
「KINECT」については下記の記事も参考に。
⇒ サストコ:「デザインを肴に…」カヤックさんと一緒に「Kinect Night」
この件に関しては僕はC言語の知識がゼロなので。。
正直、四苦八苦しました。
自分でもなんでインストールできたのか怪しいです。笑
色々なホームページを参照しながらコンソールをイジイジしたら行けました。詳しくはそういう参考サイトなどを読んでいただければと思います。以下にあげておきます。
Mac、Win対応!そもそも「KINECT」が何なのかというとこから書いてあります!今でこそ、オープンな使用が認められた存在の「KINECT」になりましたが、もとをただせば勝手にハックをしはじめたハッカーたちの功績が大きいのですね。と、いうあらまし的なことも書いてあります。
その他ネットで調べるには「kinect」「mac」で検索すると色々な記事が出てきます。
参考にしたURLなどはこちら。(その他にもいっぱい見すぎて忘れました)
http://d.hatena.ne.jp/karaage/20120816/1345129728
http://kikukawayuya.com/2011/11/mac-and-kinect-on-openframeworks/
さぁ、インストールは出来ました。
SKANECT
http://skanect.manctl.com/
「KINECT」をつないだ状態で、「SKANECT」を起動。
ドライバが無事にインストールができていれば起動します。
インストールが上手く行っていないとデバイスを見つけられません、といって終了してしまいます。
起動したら、STARTボタンをプッシュ!
早速スキャンしてみましょー。
試しに青木さんを深夜のオフィスでスキャンしてみました。
おぉ!一瞬にして青木編集長が仮想空間に再現されました!
キャプチャを取得しながらでもぐりぐりリアルタイムに動かせる!
ものの1分でこれだけの情報が取れました!
「KINECT」は赤外線を照射して、ものとの距離を測るセンサーが入っています。なので、青木さんに正面から照射した場合、赤外線が遮られる部分つまり背中側の陰になる部分のデータが取れないのですね。つまり、ぐるっと青木さんの周りをカメラをもって回るようにスキャンを取れば360°青木さんのキャプチャデータが取れるというものです。
ただ、現在このスキャン方法についてはなかなかコツが要るようでなかなか上手くいっていません。
頭の後頭部に回り込もうとしたときに、「KINECT」が自分の位置をロストしてしまい、ポイントデータに欠損が生まれてしまうようです…。
おそらく、スキャンするときに背景にある壁の角や柱などの目印を頼りにカメラが自分の位置補完してキャプチャをマッピングしてくれてるのかなと思います。なので、だだっぴろく近くに目標物がない場所、ガラスが多い場所、太陽の陽が入る場所(赤外線との干渉)、平板な壁が続く場所などでは失敗しやすいように思えます。
ちなみに、メガネなど透明部分や、反射するものもスキャンできません。
「SKANECT」を使ってキャプチャ後に、「MeshLab」を使って出力したい部分を抽出。
★MeshLab
http://meshlab.sourceforge.net/
背景の壁とか床などの不要なポイントを消します。
ここで、問題が発覚。
「SKANECT」のMac版(2012年2月現在バージョンは0.2)は、XYZ軸上のポイントと、RGBカメラから取得した色データをリンクさせてポイントのデータを生成してくれるソフトです。
取得できるデータはPoint Cloudという、XYZの空間にポイントを打ったものです。3Dプリンターで出力するためには、ポリゴンデータ、Triangle Meshの状態にしなくてはならないという事が発覚。
⇒ ポリゴンメッシュとは_Wikipedia
XYZ空間上にある、無数の点を、線でつないで閉じた形を作る必要があります。そこで、SKANECTで取得できたPoint Cloudデータを、3D出力用のTriangle Meshに変換できないかということを調べました。「MeshLab」でフィルタをかけて生成する方法を見つけました。
動画の4分あたりから具体的な変換方法が解説されてます。
3Shape Point cloud to Mesh
http://www.youtube.com/watch?v=QTfFyh7jrXI
以下やり方メモ。
メニュー >
Filters >
Nomals,Curvatures and Orientation >
Compute Nomals for point sets
メニュー >
Filters >
Remeshing, Siplification and Reconstruction >
Suface Reconstuction: Poisson
無事に阿部ちゃんのメッシュが生成されました。
欠損している部分は「Mesh Lab」で補ってメッシュ生成を自動でしてくれているので、ディテールがすこし甘くなりますね。そして背中から首にかけての部分がが亀の甲羅みたいになってるしwwww
ちょっと整えたいな〜、と思い手軽にモデリングが出来るアプリを探し、粘土をこねこねするような感覚で使えるモデリングソフトを見つけました。
Sculptris
http://www.pixologic.com/sculptris/
Sculptris – Female Head Part I
https://www.youtube.com/watch?v=KrViiOLTWTM
こんな感じで感覚的に3Dモデリングが出来るソフトです。
引っ込ましたり、出っ張らせたりして調整したものがこちら。
だいぶ背中すっきり。
毎回この瞬間がドキドキしながらも楽しい瞬間です。
無事に出てこい阿部ちゃん。
ばばーん。
はい、若干ホラー入ってます。
顔面の前にエクトプラズムでもぶちまけたようなおどろおどろしい箇所があります。実はこれが前半部分で解説した足場[Supports]です。僕はバリって呼んでますけど。そして、そのバリを脱がせたものがこちら。
阿部ちゃん完成動画
https://vine.co/v/bnH6jw52AWi
顔のディテールをスキャンするのがなかなか難しいところですね。二宮金次郎像かと思いましたが。なかなかかわいいです。僕は背中からのアングルが、あぁ、バーベキュー番長の阿部ちゃんだなぁと一番感じられるポイントでした。ちなみに、出力のクオリティはMedeiumです。
さーて次は何を出力しようかなー。また面白いものが出来たらシェアしようと思います。
Win用の「Skanect1.1」を使えばメッシュ直取りがリアルタイムに可能のようです。編集機能もなかなか充実しているようです。
Skanect Teaser
http://www.youtube.com/watch?feature=player_embedded&v=nbcnRgVNsZk
☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆
CONCENTロゴを3D出力してみました。
https://vine.co/v/b1hbt7L61n6
を短めに書こうと思っています。
BLENDERを使ってイラストレータのデータを読み込んで、押し出して…という感じです。
GigazineさんもReplicator2でロゴを出力しているみたいです。
GigazineさんはgoogleSketchUpを使ってましたね。
実際の作り方も詳しくのっていますので、興味のある方はぜひ!普段平面のものが立体になるワクワク感がお手軽に楽しめるのでオススメです。
3Dプリンターでロゴを作るため
自分でゼロからデータを作ってみた一部始終
http://gigazine.net/news/20121207-3d-printer-logo-diy/
ちなみに、記事にある通りでハイクオリティで出力するとGigazineさんと同じような理由で失敗します。部屋の気温を高くするにしても、熱帯レベルやサウナでやらなきゃだめなのかなぁ…と思ってますが。