青柳 臣一 ブログ(趣味系)

スポンサーサイト

上記の広告は1ヶ月以上更新のないブログに表示されています。
新しい記事を書く事で広告が消せます。

[アイマス] パジャマを着ると髪型変更

今日の 18時から配信が始まったダウンロードコンテンツ (DLC) のパジャマを着るとキャラによっては髪型が変わるそうですね。
いつかは来ると思ってたけど、パジャマで来るとは思わなかったなぁw

どう考えたって髪型変えれるはずですもんね。
いや、髪型どころかすべて変えられるはず。

  • 春香は衣装を変えると頭のリボンも変わったりする。伊織なんかもそう。
  • 伊織にカジュアルを着せると腕にうさちゃんがくっついてる。
  • ミズギだとたくさん乳揺れするけど、厚手の服だとしない。乳揺れパラメータなんていう専用パラメータがあるなんて考えるより、単に頂点ウエイトかなにかで制御してるだけと考えた方が自然 (Blender で言う SoftBody ですね)。伊織の腕にくっつくうさちゃんの揺れも同じように制御してると思われる。
  • 未確認だけど、スクールミズギだと肌がちょっと小麦色になって、グラビアミズギだと白くなるらしい。
  • などなど

どう考えても 「服を着替える」 んじゃなくて 「モデルごと入れ替えてる」 としか思えない。
そもそも、裸に服を着せてるとものすごく微妙な調整をしないと服を突き抜けて肌が見えちゃったりするし、服に隠れて見えない頂点まで処理しなくちゃいけなくなるからパフォーマンスにも影響する。
そういった観点から考えても 「服も含めて体全体が一体化したモデルがあって、それを選択して表示してる」 と考えた方が自然。

だからキャラを別人にしちゃうことだってできるはず。
もちろんそんなことをしたら音声データと合わなくなるし、作品世界を壊すことになりかねないからやるとは思わないけど。
けど、ドラマだったらアリかも。
うまくやればゲストを出すこともできるかもしれないし、他にもあずささんの幼少時代とか大人になった亜美真美とかを出すなんてこともできるかも。
ただ、ボーンのデータをどうしてるかによってはサイズ変更はできないかもしれない。
ボーンのサイズが変わるとモーションに影響が出るはずだし。

問題はそんなことをするコストかな?
アイドラが 1話 500ゲイツ (750円くらい) として、仮に 1万人が購入してもたった 750万円。
個人的には 1万人も購入者がいるとは思えない。
うーん、予算的にはきびしそうだ。

そういや、「DLC は 1年間で 3億ほど売り上げた」 というニュースが流れて話題になったことがあったけど、考えてみりゃ 「たった 3億」 だもんなぁ。
DLC 作んのにどれくらいのコストがかかるのか知らないから何とも言えないけど、毎月のように衣装やらアクセサリーやらドラマやらを作成してたわけだし、他にも Xbox Live の使用料とかも必要なんだろうし、ドラマなんかだと声優さんへのギャラとか、そういや宣伝の Web ラジオ (ショピマショ) なんかもそれなりのコストはかかるんだろうし、そんなこんなを考えたら 「3億円/年の売り上げでほんとに利益でてるの?」 と思えちゃうくらいだもんなぁ。

スポンサーサイト

[3DCG] ちょっ、ウマウマしすぎwww

セバスチャンPさんの修正版がすでに来てて、これまたすごい進化だし。
さすがだなぁ。
さらに、まさか、sukehiroPさんのりっちゃんウマウマまで来てるとはw
普段はセバスチャンPさんのブログも sukehiroPさんのブログも巡回コースなんですが、昨日からたまたま見てませんでした。

sukehiroPさんのブログ 「うまうま~
しかも、アイマス系 3D ウマウマをまとめてくれてるしwww

そういや、友Pさんのところの 「PolyM@sterPまとめ?」 でもすでに紹介してくれてます。
うれしいですね。
つか、友Pさん捕捉早すぎw
昨夜、何気に友Pさんのブログを読み返したら (もちろん、友Pさんのブログも巡回コースw で、同じ Blender を使ってるってことでなんとなく読み返そうとしたんです)、もう追加されてましたw

[3DCG] ニコニコでのコメントのまとめと対応

昨日、ニコニコで公開した春香ですが、まぁ、公開したら気にはなるだろうとは思ってましたが、気にはなるどころじゃありませんでした。
まるで我が娘を人前にさらしてその評価を待ってるような、もう気になって気になって仕方ありませんwww
んで、リアル娘だとどんな評価が返ってきてもそう簡単に直すなんてことはできませんが、春香はいくらでも直すことができます。
というわけで、せっかくなので今までにもらったコメントを軽くまとめ。

総論としては、正直軽く凹んでますw
けど、凹んでても仕方ないので、以下個別に検討。

■ 再生数、コメント数
公開から 1日くらいの現時点で再生数 1900、コメント数 120 くらい。
何のネタもない動画としてはそれなりに見てもらえた方?
もともと 「作ってみました」 「描いてみました」 系の動画は比較的見てもらえるってことなんだろうけど。
サムネもいい感じのところを選べたと自分では思ってるんだけど、どうなんだろ?

■ タグ
「ゲーム」 「アイドルマスター」 「PolyM@ster」 は自分で入れといたもの。
「Blender」 「春香」 は結構早い段階で誰かが追加してくれたみたい。
他にもいくつかタグがついてるけど、それらは後述。
ここで特筆すべきは 「すもい」 タグかなw
てか、笑い事じゃなく、ついちゃったかぁ orz という感じなんだけど。
はたしてすもいからすわいいに進化することができるのか?w

■ トゥーンレンダリング
いくつか 「トゥーンレンダリングにしたら?」 というコメントが。
ええと、すでにトゥーンだったりするんだよねぇ。
確かにまだ調整はあまいけど Blender のトゥーンは日本のアニメ的 (セル画的とでも言えばいいのかな?) とはちょっと雰囲気が違うんだよなぁ。
マテリアルの質感は落ちるけど、グラデーションは微妙に残ってて立体感はあるというか。。。
たいして 3ds Max や XSI なんかはかなりいい感じのセル調になるみたい。
六角大王は 3ds Max や XSI なんかを使ってる人からもいいと言われるくらいのセル調レンダリングができるみたいだし。さすが国産だな。
と、他のソフトを羨んでても仕方ないのでもうちょっと調整してみるか。
友Pさんは結構いい感じにできてるんだから何とかはなるはず。

■ 「こえええええ」
冒頭部分にけっこうな数の 「怖い」 というコメントが。
これはやっぱりモデルが怖いということなんだろうか?
前半は両手を拡げて直立してるっていう不思議なポーズで、しかも微動だにしないまま回転するという、ありえないような映像だからそれが怖さを助長してるってのもあるのかな?
このポーズはモデリングをしてる人にはもっとも多用されてるポーズだろうし、微動だにしないのも動きじゃなくてモデルを見てほしいからわざわざそうしたんだけど。
最初に 「~現代天海概論~」 なんてコメントがあるのもそんなところなのかな?
このコメントの意味が最初はわかんなかったけど、これって人体解剖図とかそういうのにありそうな感じってことだよね?

■ 「ダッチワイフ」
いくつかダッチワイフというコメントが。
タグにも 「ダッチ製造計画」 なんてのが入ってるし orz
これはどういうことなんだろ。
やっぱり、トゥーンレンダリングのとこに書いたように、質感はちょっと落ちてるけど妙に立体感がある感じが、リアルともアニメとも違う感じでドールっぽく感じるとかそういうことなんだろうか?
だとしたら、セル調にできればこう言われることもなくなるのかな?

けど、実はこう言われたことがけっこうおもしろかったり。
なんかモデリングしてる最中から 「アイマスの模倣」 を目指すんじゃなくて 「アイマスを題材にした別の何か」 を目指してみてもおもしろいんじゃないか、なんてことを考えたりしちゃってるんだよね。
具体的にはちょっとリアルに振ってみるとか、反対にプラスチックみたいな質感にしてまるでフィギュアが動いているかのようにしてみるとかね。
きっと 「そんなのアイマスじゃない」 とか 「アイマスでやる必要がない」 とか言われたりするんだろうけど、そういうのもおもしろいんじゃないかと。
まぁ、もうしばらくは模倣路線でいくつもりだけど。

■ 「鼻が変」
もう、これが今回の主題といってもいいくらいw
自分でも気づいてた、けど、気にしてなかった、というところ。
まず、何がおこっているのか?
私の春香はけっこうちゃんとした鼻になってます。
ちゃんとしたってのも変な表現ですが、リアルに近いというか、それなりに幅があるんですね。
コメントに 「円錐?」 といったものもありますが、そんなことはなくてちゃんと鼻の形をしています。
で、これにライトがあたると暗い部分ができます。
さらに顔に影も落ちます。
ライトの位置が斜め前方ちょい上になってるので、鼻の下側と横側の結構広い範囲が暗い部分になりますし、かつ影も落ちることになります。
これがトゥーンレンダリングによって色調が均一化されます。
上述したように今の設定だと完全に 2色化されるわけじゃないですが、それでもかなり均一化されています。
結果、鼻の暗い部分と顔に落ちた影の部分がほとんど同じ色になり、コメントで言われているように 「鼻が変」 となるんだと思います。
なので、「鼻が」 というよりは 「鼻の暗い部分と顔に落ちた影の部分がごちゃまぜになって鼻のような何かに見えている」 という状況だと思います。
で、自分ではなんで気にしてなかったかと言うと、メッシュの状態を知っているのでこの画像を見ても脳内で 「このあたりは鼻の暗い部分で、このあたりが顔に落ちた鼻の影の部分」 と認識しちゃってたんだと思います。
ほんと、実は最初の頃はちょっと気になったんだけど、いつの頃からかまったく気にならなくなってたんですよね。
「気にしないようにした」 とかじゃなくて、ほんとに気にならなくなってた。
やっぱり人に見てもらうといろいろと気づくことがあるなぁ。
あと、「鼻が高すぎる」 というコメントもありますが、アイマスの春香と比べても高すぎるというほど高いわけではないようです (ちょっと高いような気は確かにしますが)。

じゃ、どうすればいいのか。
アニメ調のキャラの場合、正面から見た場合は鼻なんてなんにもなくてもいいくらいです。あってもちょっと影があるくらい。
斜めから見た場合もエッジなしで影がある程度でも可。アイマスの場合はちょっと斜めから見たくらいじゃエッジは見えない。エッジが見えるのはけっこう深い角度になってから。
けど、横から見るとけっこう高くて形のいい鼻になってる。
トゥーンレンダリングしたときにこういう結果になるためには、実は鼻に幅なんていりません。
というか、余計な影を出さないように幅のない板を貼り付けといた方がいいくらいです。板を顔に立てとくと言ったらいいのかな。
ただ、本当に板にしちゃうと顔を上や下から見た時にも何もなくなっちゃいますし、顔との繋ぎ目のところに余計なエッジが出たりしちゃいそうなのである程度は幅をつけます。

で、実際アイマスではどうなってるか?
↓はドランクPさんの 「アイドルマスター 千早 弩UP 蒼い鳥」 からコピーさせてもらった、千早が下を向いたときと上を向いたときのショットです (斜めのも形がわかりやすかったので入れました)。

千早アップ 

上から見た方はエッジが途中までしか出てませんが、下から見た方はかなりはっきり鼻の形がわかります。
かなりとがった形をしていて幅は最小限に抑えているという感じです。
小鼻と呼ばれるような部分がぜんぜんないという感じでしょうか。
このような形をしている鼻はアイマスに限った話ではなく、トゥーンレンダリングを前提としたキャラの場合は多かれ少なかれこんな感じになっていると思います。
ちょうどコメントでもアノマロさんの 「初音ミク・PV化計画 vol.2-初音ミクを今度はゼロから作り直してみた」 が紹介されていましたが、これの 1:12 のあたりを見ると鼻がかなり細いのがよくわかると思います。
これをトゥーンレンダリングすると 3:44 からのようにかわいらしい鼻 (というか影だけど) になります。

ちなみに、ニコニコにある 3D 関係の動画はほとんどすべて見てるといってもいいくらいなので、紹介してもらったアノマロさんの動画も公開直後くらいに見てたりします。
アノマロさんやキオさんのブログは巡回コースに入ってたりしますし。
で、いろいろ見ていたおかげでトゥーンレンダリング系のキャラの場合、鼻はこんな感じの形にしておいた方がいいみたい、とはうすうすは思ってたんですね。

では、何で春香はそういう形にしなかったのか?
まぁ、単に上でも書いたように 「ちょっとリアルにしてもいいかな?」 という気持ちもあったのでそこまで変形させなかったっていうだけです。
で、これまた上で書いたように、そのうち気にならなくなっちゃったので直そうとも思わなかったと。

んで、「小鼻は無い方がそれらしくなるよ」 というコメントをもらっています。
もうね、なんというか、そのものずばりですよね。
このコメントを見た瞬間にティンときました。「あぁ、そうか、鼻はこんな形じゃダメなんだ」 と。

■ 「眼もがんばれ」
顔のパーツはどれもそうだけど、特に眼はほんのちょっと変えただけでも結構印象が変わったりするから、地道にがんばるしかないんだろうなぁ。

■ 「頭でかい」 「手短い」 「足長い」
この辺は服を着ると印象が変わったりするだろうからちょっと保留。
頭はちょっとでかいかとは思ってたんだけど。
手はウマウマのポーズだと頭の前に手を持ってくるから短く感じるってのもあると思う。
アイマスキャラはほんとに頭でかいんだよな。

■ 「関節破綻」
はい、破綻してますw
ちなみに 「手が細い」 ってのも手首、ひじ、肩のひねりのために細くなっちゃってたり、特にひじなんてパイプがひしゃげたみたいになってたりします。
このあたりもがんばるしかないなぁ。

■ 「赤い布をとれ」
えーと、レイヤオフにすれば簡単に取れますが、上はまだしも、下をとると削除対象になると思われますwww

■ 「乳をゆらさんかい!」
Blender 初めて SoftBody で髪の毛を揺らすのと乳を揺らすのは真っ先に試したのさ。
けど、設定が微妙すぎてぜんぜんうまくいかないのさ。
水風船みたいに揺らすのなら簡単だけど、ぜんぜん 「らしくない」 のさ。
ボーンを入れて揺らすのは手間がかかるのさ。
SoftBody でうまく揺らすことができるんだったら、教えてもらいたいくらいなのさ。
というわけで、今のところ乳揺れは保留中www

■ いきなりウマウマ
無音で歩く、立ち止まる、いきなりウマウマ、という構成にしてみたんですが、ここに意外と多くの反応が。
タグにまで 「いきなりウマウマ」 なんて入ってるしw
これは結構意外で、タイトルにも 「ウマウマ」 と書いておいたし、ウプ主コメントにも 「課題曲?もやってみました」 と書いておいたので、きっと見る人は 「どっかでウマウマが始まるんだろうな」 と思ってるだろうから驚くことはないだろうと思ってたんだよね。
ということは、みんなタイトルとかウプ主コメントなんてろくに見てないってことか。
まぁ、確かに考えてみたら自分でもそんなに気にしないもんなぁ。

■ その他
上記以外にもいろいろと。
「きもい」 とかってコメントと並んで 「なかなかいい」 なんてコメントがあったりするのがおもしろいところ。
たまに見て、凹みつつ精進することにしようっとw

と、いろんなこと考えながら、かつ、マテリアルの設定を試したりしながら書いてたらえらく長文になっちゃったけど、現時点までのまとめ。
あれ?タイトルに反して対応策をほとんど書いてないような気がしないでもないなw

[3DCG] 手首のひねりと肩の変形

ちょっと前に 2ch で紹介されていたページ
Tutorial: Advanced rigging

いやぁ、すばらしい。
今までいろいろとググっては見てきたと思ってたけど、なんでこんなにいいところを見つけられなかったんだろう。
まだよく読んでないし、試してもいないけど、以下記録。

■ 手首のひねり
Bones that twist
前腕にひねり用のボーンを入れて、そいつでひねる (ように頂点ウエイトを設定する)。
で、そのボーンは IK Solver で前腕の動きに追随させる。
track to はジンバルロック付近で妙なことになるからダメよ、と。

うーむ、やっぱりそうか。
まったく同じことを以前に試したんだけどなぁ。
ただ、そのときは copy location とか copy rotation とかを使おうとしたような気がする。
そうすると肝心のひねりがうまく制御できなくてあきらめたんだっけかな。
IK Solver を使えばよかったとは。
今度やってみよ。

■ 肩の変形
表情の Shape Key を作ってるときに 「Shape Key って Armature をドライバにすることもできるんだから、変形して困る関節部分は Shape Key で整形してしまえばいいのでは?」 なんて思ってた。
けど、そんなやり方は邪道なのかなぁ、なんて思ってたんだけど、、、

An advanced solution for shoulders
ちょっと本題とはずれるけど、最初のほうにある肩のメッシュの写真、これ参考になるなぁ。
リアルな人間の筋肉の流れと同じような感じにしてあるんだな。
それで、

  • 腕を上げたとき肩がつぶれないように
  • 腕を下ろしたときわきの下がつぶれないように
  • 腕を前に出したとき付け根のところがつぶれないように
  • 腕を後ろに回したとき付け根のところがつぶれないように

なんてことが画像付きであげられてます。
ということは、こんだけきれいなメッシュで、しかも上腕にもひねり用のボーンが入っていても左側の画像のようにつぶれちゃうということなんだな。
で、つぶれないようにする方法は A new alternative: Using Ipo driven shape keys instead of complicated constraints で紹介されているように Shape Key を使ってボーンが曲がったときに頂点の位置を調整するというものです。
ただ、このページでは Python スクリプトを使ったドライバにしています。
というのはわかるんだけど、これ、なにやってるんだろ?うーむ

ちょっと考えてみた。
腕を X 軸に 30度、Z 軸に 60度回してるとする。
Shape Key のドライバにはどれか 1つの値しか渡せないみたいだし、Z 軸の角度をパラメータとした場合は 60度が渡されることになる。
けど、オイラー角による表現だと回転される順番によって結果が変わる (だったと思う)。
逆に言うと、順番が違うと同じ結果にするためにはそれぞれの回転量が変わってくる可能性がある。
ということは、腕は同じ方向を向いてるのにボーンを回転させる順番によっては Z 軸は 60度にならない。
これは Shape Key のパラメータにするにはちょっと都合が悪い。
そこで、Python スクリプトで親ボーンからの相対角を求めなおして同じ向きなら同じ角度が変えるようにする (正規化してるとでも言えばいいのかな?)。
...という感じなのかな?

で、mypose 関数が X, Z を求める関数で、これには上腕の 2つ目のボーン (ひねり用に追加したボーン) を引数にする。それで主に肩の変形を調整する。
roll_angle 関数が Y (ひねり) を求める関数で、こちらにはもともとの上腕のボーンを引数にする。それでひじをひねったときの上腕の変形を調整する。
ちなみに、2つ目のボーンの方が上腕の肩に近い方の頂点担当、もともとの上腕のボーンの方が上腕のひじに近い方の頂点を担当。
...ということ?

あと、最後のところに腕を上げた時に肩もちょっと上がらないと不自然。
そこで、肩のボーンに influence をとても小さくした track to constraint を 2つ入れて、それぞれ上腕のボーンと真横方向に固定したボーンをターゲットにする。
こうすると腕を上げた時に肩のボーンがちょっと上がるわけか。
なるほどなぁ。

と、上記の解釈であってるのかどうかイマイチ自信ないけど今度試してみよう。

[3DCG] 春香 (と俺) ニコニコデビュー

ニコニコで公開してみた。

きっと、きびしいコメントが付くんだろうなぁ。
と言うか、つくといいなぁ。
見向きもされなかったら悲しすぎるw
セバスチャンPさんのところで皆さんも 書かれて ましたが、毎日のように見ているせいか自分ではバランスがいいんだか悪いんだか、かわいいんだかかわいくないんだかさっぱりわかんなくなってくるんですよね。

んで、結局、モデリングに 1ヵ月、モーションに 10日間くらいという感じです。
空いた時間にちょっとづつ進めるって感じだったから作業時間はそんなに多くはないと思うけど、それでも思った以上に大変だった。

ほんとはもうちょっとちゃんとした動画を作ってみたいと思ってたんだけど、そんなことしたらいつ出来上がるかわかんないことになりそうだったので、途中で予定変更して簡単なモーションで済ますことにw
が、ちっとも簡単じゃなかったww

3D な人の間でも流行ってるようだったのでw ウマウマしてみたけど、これだけでも大変なことにw
手を上げたら肩とひじがあきらかにゆがんでる。
うーむ、ボーンを入れた時にはここまでゆがんでなかったように思うんだけど、気付かなかっただけかな。
直そうかとも思ったんだけど、どうも頂点ウエイトを調整するくらいじゃなんともならず、メッシュの流れを結構見直す必要がありそう。
なので、このまま公開しちゃって後で考えなおすことにした。

他にも手のひら・指がえらく不格好だとか、実は指のボーンがおかしくて曲げると指の長さがあわなくなっちゃうw とか、腰のボーンを繋ぐのを忘れていてうかつに移動すると上半身と下半身がずれちゃうww とか、いろいろとおかしいところが盛りだくさんだったりする。
このあたりも直していかないとなぁ。

そういや、P名どうしよう。

[えりりん?] エゴエゴアタクシ

アーケードの太鼓の達人 11 に入ってる新曲らしいですが、「これ、歌ってるのえりりん (中村繪里子さん) じゃね?」 と言われてるようです。
んで、某所で聞いてみましたが、確かにそう聞こえるなぁ。
なかなか強烈な歌詞だけど、けっこう気に入っちゃった。
太鼓の達人用に作られた曲はあまり CD 化されないと聞きましたが、これ、えりりんだとしたらぜひ CD 化して欲しいな。

[3DCG] キオ式ミク XAML 化計画

宇宙仮面さんのところに 「初音ミク XAML化計画」 なんていうエントリが。
(上記はまとめっぽいところへのリンクです。これ以前にも試行錯誤の様子がエントリされています)

意味があるのかどうかは横に置いておいてw、なかなかおもしろい試みですね。
WPF の XAML は 3D もサポートしてますから、コンバートさえできればそれなりに持って行けるみたいですね。
結局、六角大王で dxf にして、ZAM3D で XAML にしたってことかな?

そういや、キオ式ミクはサブディビジョンサーフェス (六角での名前がわかんないけど、Blender の Subsurf) を使ってたと思うんだけど、それはどうしたんだろ?
どうせ XAML はスキニングとかサポートしてないから、六角上でポーズとらせてそれを出力した方がいいかも。
そのときにサブディビジョンサーフェスも実体化 (Blender でいう Apply。六角でできるのかどうかは知らない) しちゃうと。
面数が Level 1 でも 4倍、Level 2 だと 16倍くらいになるけど。

ちなみに、WPF で (コードで) スキニングしちまおうってのは以前に川西さんが記事にしてました。
WPFでスキニング
まぁ、スキニングってのは関連づいているボーンの位置に応じてウエイトを考慮しつつ座標を動かしてやるだけ、なのでロジック自体は難しくないんですが。
けど、本気でやろうとすると、頂点のウエイト情報とか、どのポーンと関連づいているのかとか、そもそもボーンの情報をどうやって持たすのかとか、考えなくちゃいけないことはいろいろありそうです。

[えりりん] まいこのウインク (cv: 中村繪里子) が4月公開?

Windows Live Messenger には まいこ っていうキャラがありますが、4月にウインクが出るらしいです。
で、その声をえりりん (中村繪里子さん) が担当しているらしいです。
いやぁ、すばらしい。
ほんと、GJ です>Live の中の人

ただ問題は、そんなウインク、いったい誰に送信すればいいのかということwww
ウインクって自分宛てに送れたっけ?w

あと、Live の中の人によるとこれとは別の企画も 4月に公表できるかも、ということみたいです。
こちらも楽しみ。

# ちなみに上記情報は 2ch 某スレがソースですが、信憑性はかなり高いと思われます。

[アイマス] 人気ゲーム 「アイドルマスター」 のアイドルがメッセンジャーに登場!

http://messenger.live.jp/emoji/idolmaster/
Windows Live Messenger とアイドルマスターのコラボ企画みたいです。
メッセンジャー用の絵文字、アイコン、壁紙がダウンロードできます。
ちなみに、Xbox360 のアイコンなんかはゲイツ、、、じゃなくて、マイクロソフトポイントが必要ですが、こちらは当然無料ですww

あと、「簡単インストール」 でインストールすると勝手にアイコンがアイマスのものに変えられてしまうので、アイマス好きを公表していない人は気をつけた方がよろしいかとw

来週くらいからは Live や MSN なんかで↓みたいなバナーが貼られて宣伝するみたいです。

window

[3DCG?] 革新的な 3D ゲームエンジン...ってバカだろw(もちろんいい意味で

新しい3Dゲームエンジン、その名も Microsoft Excel !?
で知りました。

Microsoft Excel: Revolutionary 3D Game Engine?
英文で 5ページありますが、途中に貼られてる画像を見るだけでもなんとなくわかるんじゃないかと思います。

簡単に紹介すると、まず 1ページ目
これがすごい!
"Figure 1: Essence of the 3D engine" (3D エンジンの本質) といったタイトルがついた画像がありますが、まさにこれが 3D エンジンになっています。
シート上に赤丸で数値が書かれていますが、それぞれをざっと説明すると

  1. 投影する際のパラメータです。スクリーンの幅、高さとか。
  2. 各頂点の座標です。
  3. 4×4 の変換行列です。3×3 の回転部分は下の 4 の回転角から求められます。
  4. 回転角です。
  5. 2 と 3 から求めたワールド座標系での各頂点の座標です。
  6. 5 から求めたパースをつけて透視投影した各頂点の座標です。
  7. 6 から求めたスクリーン座標系での各頂点の座標です。
  8. 各辺の両端の頂点の指定と、その頂点たちの座標 (7 のスクリーン座標系の座標) です。

ということだと思います (間違ってたらごめんなさい。なにせ 3D 初心者なので)
4 のところの回転角を変更するとあとは単なるシート上の計算式なので Excel が 3→5→6→7 と再計算してくれて、結果となる 8 が求まります。

いやぁ、、、まぁ、、、確かに言われてみりゃ、そりゃそうなんですが、、、なんというか、、、
その発想はなかったわ
としか言いようがないなwww

続いて 2ページ目
Excel-native Cell Graphics (ECG) が紹介されています。
そのまんまですが、「Excel がネイティブに持ってるセルグラフィックス」 ですね。
2ページ目の画像を見ればわかるとおり 「セルを小さくして、罫線消して、色を塗ればピクセルになるんじゃね?」 ということですw
んで、 3ページ目 ではこの ECG を使って立方体がクルクルするデモが紹介されています。
同じく 3ページ目にある "our example Excel engine files" というリンクからデモファイルが落とせます。
これに入っている ECG_demo_without_grids.xls がそれです。
このファイルを Excel で開き、マクロを有効にし、ECG_Demo マクロを実行してやれば立方体がクルクル回ります。
Excel 2007 でもちゃんと動きました。
この立方体の座標計算は 1ページ目で紹介されていた 3D エンジン (つか、単なる Background という名前のシートだけどw) で行われています。
マクロがやっているのは 4 の回転角のところの角度を書き換えることだけです。
あとは 8 のところの座標を使って線を引いています。

ところで、この 「セルをピクセルに見立てる」 という方法はぜんぜん新しいものじゃありません。
この手法を使ったものはいろいろあるとは思いますが、私が一番印象に残っているのはやはり パッセルマン です。
はじめて見たときは、度肝を抜かれたというか、笑ったというか...敵キャラの動きやサウンドまで再現してるんですから。
ほんと、思わず 「なんで Excel でやる必要があるんだよ!」 と言っちゃいましたよ。
で、作者さんのこの言葉を見て激しく納得するわけです。。。「Excelで動かすことに意義がある!」
wwwww

ちなみに、ずいぶん久しぶりにパッセルマンを起動 (起動と言うのかな?w) してみましたが、Excel 2007 でもちゃんと動きました。

と、話が横にそれました。
さらに 4ページ ですごいことになりますw
4ページ目では Office-level Graphics Abstraction Layer (OGAL) なるものが紹介されています。
4ページ目の冒頭には

もし、リサイズ可能なピクセルや可変アクセプト比といった ECG の拡張機能が必要ないのであれば、別の Excel レンダリングサブシステム -Office-level Graphics Abstraction Layer - を選択することができる。

なんて書いてありますw
最初はなんのことやらわからなかったんですが、これはすごい!
3ページ目のデモファイルに入っている OGAL_demo.xls で動きますから、ぜひ一度動かしてみてください。
Excel に読み込んで、マクロを有効にして、OGAL_demo マクロを実行すれば動くはずです。
まぁ、面倒なときは 4ページ目にある YouTube の動画を見てもらえばそのまんまですが。

いやぁ、本気で最初はどうやってるのかわかんなかったです。
Excel にオートシェープってありますよね?丸とか四角とか書くやつ。あれの三角形を使って三角ポリゴンを描画してるんです。
だからシート上のどこへでも描画できるんですね。
しかも、3D エンジンも強化されています。
Background シートを見てもらえばわかりますが、辺ではなく三角ポリゴンを指定するようになっていて、ライトの向きと環境光のパワーも指定できるようです。
で、法線の向きと面の色も計算するようになっていて、さらに z 値でソートして z 値の深い順に三角ポリゴンを描画することによって陰面処理も行っています。

いやぁ、まじでこれはすごいわ。
つか、バカだろ (もちろん、いい意味でw
なにをやっているかがわかったとき、鳥肌がたっちゃいましたよw
ほんと、世の中にはすごい人がいるなぁwww

最後にいちおう書いときますが、技術的な内容はものすごくちゃんとしたものですが、ECG とか OGAL とかってそれらしい名前をつけたりしているのは著者さんの (半分) ジョークでしょう。
たぶん、マイクロソフトの人に 「OGAL について解説して」 とか言っても 「はぁ?」 と言われると思うのでご注意をwww

[アイマス] Radio For You! 公開録音

もう 1週間たっちゃったけど、2月 23日 「アイドルマスター Radio For You! 公開録音」 に行ってきた。
内容は放送を聞けばわかるので略。
とりあえずものすごくおもしろかったとだけ書いておく。
公開は 3月 5日らしいので楽しみ。

FC2Ad

上記広告は1ヶ月以上更新のないブログに表示されています。新しい記事を書くことで広告を消せます。