戻る
私らしいアプローチを出すためにあくまで自作アルゴリズムの優劣を唱え
「三次元入力インターフェースに新しい方式を」と提案をしつつ
それとは全然関係無く六角大王を使いつづける自分、と言うページにしたい
ここにあるデーターは売買しない限り自由に使用して構いません
でも何かに使ったならみせて欲しいです、それだけ
六角大王フリー版でね
六角大王で開いたら「表示>ビューモード」で見やすくなります
回したり近づいたりパースを増減したり面だけ表示にしたりして
色々楽しんで頂けると嬉しいです。六角大王はフリーウェアです。
線画でないものは六角大王SUPER他でも開くことが出来ます
RokMillはrok形式を見るためのJavaアプレットです、以下JavaONでクリック
マイクロソフトのJavaが使えない人は
こちらでSUNのを入れられます.
2004あけましておめでとう 49k
2003あけましておめでとう 171k
2002あけましておめでとう 56k chii1.rok- filesize 27k
yup03.rok filesize 35k tomoyo02.rok filesize 30k
shirley01.rok filesize 40k saki01.rok filesize 40k
vg2.rok filesize 50k wv.rok filesize 30k
brest02.rok filesize 50k lvs_book2.rok filesize 200k
moyou1.rok filesize 200k sakurahead3.rok filesize 300k
cross.rok filesize 50k
データー、ちょっとつらめのものもありますが一応ありのままの自分、右下に行くほど古く
成長済みデーター
6ks.
.
.
ただのバトン.
.六畳
6ks.
.
.
.
.
.
成長中データー
Keynote_モデルのポーズのつけ方参考
.
.
.
.
.
.
.
.
.
.
.
.
.
.
古衣装1.
.
.
.古胸1.
.
.
.
.
.
せーらー2.
せーらー1.
.
くつ1.
ぱんつ.
.
.
.
.
.
まほろ3.
まほろ2.
.
.
.
.
.
.
.
.
とびばこ.
らふ
.
.
.
.
.
.胸1.
.
.
.
.
.
.
.
.
. .
. 旧さくら. 最初に書いたものなのに2.
超らふらふ
らふらふ.
.
.
....
ironox..
六角SUPER2&POVレンダリング
プログラムとか
旧ポリライト001 ポリライト ver2.2
六角SUPERのPOV出力にてレイヤーに三角ポリゴンが一枚だけ存在した場合
それをライトに変換します、色は色、反射率が明るさです、六S支援ツール
六角SUPERでPOV-RAYする人必須っぽいんだけど、あんまり有名じゃないツール…
3しか持ってないので4での動作報告をお待ちしています
addweb004
インターネットエクスプローラの右クリックに以下の機能を選んで追加できる
URLとして開く
選択範囲やリンクを右クリックし「URLとして開く」で開く事が可能で
ついでにime.nuなど有名な一次ジャンプリンク先を消してくれる「urlget」
WebArchiveで検索
今みているページを右クリック、またはリンクを右クリックして
WayBackMachineからwebarchive内を検索できる「webarchive」
文章とか
編集視差による自動立体化アルゴリズムについて
六角大王の自動立体化について
タイトルに戻ってみる
フリー素材作りました
前後反転とかが必要なときは六角大王支援ツールでやると良いです
っつうかないと困ります 六角大王 and VRMLに勝手にリンク
作りかけ跳び箱
机、結構上手く出来てると思いますがどう?
椅子正式公開、机と並べても大丈夫、机前後反転しました
俺の知ってる六角大王裏技一覧
- 真上から中心に点打っちゃ駄目だよ〜NEW
- 真ん中に打てたつもりで非常に近いに点が出来ちゃった状態になって
それを掴むと内部的におかしくなるらしく本来中心から動かない中心点が
左右に動いちゃって左右非対称データーになっちゃいます、駄目
- 表示モードで編集
- ビューモードで全て選択を選ぶ>加工で拡大縮小などを選ぶ>画面上でダブルクリック
それ以後はポイントの移動、線の分割などがビューモードでも出来るようになる
込み入ったラインを分割する際や込み入った点の移動をする際に役立ちます
- 視点の吸着グリッドを無くす
- ロケーターをドラッグして外へ2個分移動、一周回った状態にする
左右に一回転させると左右吸着が消え、吸着作業平面が作業点を含むXY平面になり
上下に一回転させると上下吸着が消え、吸着作業平面が作業点を含むXZ平面になります
- 面を三角化(教えてもらった)
- 稜線を選択を使い四角面を選択した状態でアンドゥ―すると面が三角化されます
左右をまたがっていた面が左右非対称になるけどポイント的には左右対称のママなので平気みたいです、Nifのログで発見
- 未確定点の回転と引き伸ばし
- 向きや方向を変えておくことが出来ます、裏技と言うよりはチョイテク?
- クリップボードを幾つも持つ
- 六角大王でコピーしたものをその辺のフォルダーに「スクラップ」として貼りつけられます
ダブルクリックすると開くことが出来ます、実はWin機能。利用価値は謎、ファイルといっしょ?
- マニュアル読んでおけよ〜
- SHIFT押しながら振り向きを押したりとかのちょっとした技がのってたりする
addweb004 更新
addweb004
インターネットエクスプローラの右クリックに以下の機能を選んで追加できる
URLとして開く
選択範囲やリンクを右クリックし「URLとして開く」で開く事が可能で
ついでにime.nuなど有名な一次ジャンプリンク先を消してくれる「urlget」
WebArchiveで検索
今みているページを右クリック、またはリンクを右クリックして
WayBackMachineからwebarchive内を検索できる「webarchive」
002>004改編点
アンインストール用レジストリを追加した
「ページを表示できません。」や「ページが見つかりません」や
「このページの表示が認められていません」などの状態(IEの404,403,401,500ページ)でも
webarchiveへアドレスを送って検索できるようになった
webarchiveにてページ内で再び「webarchiveで検索」を選んだ際に
検索ルートページに戻るように変更した
XPの自動選択範囲の拡張で起こりがちな頭に半角スペースが入る" http://"を
"http://"に置き換えてくれるようになった
レンズ歪みアプリ公開
DistortionEffect
許可が下りましたんで仮公開、かなり仮のプログラムなんでいろんな仕様があります
入力ファイル、出力ファイル:BMPのみです、2値と24Bitカラーに対応してます
視点までの距離:焦点距離をドット数で入れます
中心座標ピクセル:カメラの注目点を入力します
焦点距離はmm換算についてとりあえず触れておきます
カメラのフィルムは36*24mmの3:2の構造をしています
例えば1280*960の画像にレンズ歪みを書ける場合、焦点距離をd(mm)として
4:3は3:2より横が少し詰まっているので「横をトリミングした」として縦を基準に
960ドットと24mmが対応してる、と計算します、よって
L:960=d:24
この比よりLを求めます
たとえば焦点距離50mmの場合は、L:960=50:24よりL=2000が求まります
焦点距離はアプリケーションの値や目測から判断してください
縦の絵でもカメラを縦にした(2:3)として処理したり
強く横をトリミングしたとして処理したりと色々ありえるでしょうし
16:9みたいなシネスコ絵の場合なら縦をトリミングしたとして横36を基準にして
L:1600=d:36なんて感じで計算したりします
中心座標は歪みの中心座標を指定します、大抵は画面の中央でいいはずですが
画像が特殊なトリミングをしたような画像の場合はずらす必要があります
(例えば上に余白があって手前に人が居てレンズ歪みをかけて切り出したような絵とか)
要望として今のところクリップボードへの対応
(これにより絵描きソフトと連携しやすくなると思います)
入力BMP,クリップボードからのWH取得による自動中央点計算、および
焦点距離のmm換算の自動化?(これは多様なので出来ないかも
画面方向と、縦、横どちらを基準にするかを入力させてmm換算って方法もあるかな?)
後は自動クリッピング出力(黒の部分を無く出力する)などを考えています
とりあえず今の仕様(出力BMPを選択するとボックスクリア、リターンで終了)は
修正して欲しい、と連絡してありますんで…
牧野氏に
こうやってクリッピングしないと何が歪みなのか分からん、といわれた
テレビの枠みたいに見えちゃって駄目だって、とりあえず出力機能要望に足しておきました
で、これ、リアルタイムでかけられるようになれば随分と3Dの世界が変わると思うんですよね
3D酔いって、カメラを横に振ったときに視界の外側の物体がVの字に移動するのが原因だと思うんですよ
本来横に振ってるんだからほぼ平行に移動するはずなんですが、広角だと右上〜中央付近〜左上と
物体が尖った3D空間を行って戻ってくる、って言う動作をしてしまうんですよね
これで3D酔いを起こしてしまうんではないかと思っているんですが、どうでしょうか?
というわけでリアルタイム描画にこの式を取り入れてくれるようにお願いしたい…
レンズ歪みのお話
レンズ歪みは3D空間の点を半径Lの球に投影して、それを注目中心から
切り開いたときに得られる映像、になってます、これが一般的なレンズの
等距離投影レンズ歪みです、歪みの強さは注目点0からの仰角で決まります
なので実は奥行き情報というのは一切必要なく、この図のように
普通にレンダリングした点pvから、距離Lさえ求められれば簡単な三角関数で
レンズ歪みがかかっていたらどうだったか、の点plを求めることが出来るのです
画像流用のため上とは記号が変わってますが、点P(x、y)の点Oからの距離が
L2(上ではD)、レンズ歪みの展開された座標点P2(x’、y’)の斜め距離がL3(上ではrd)
この図からわかるように、このL2:L3は三角関数を用いた比で表すことができ
L3=SQR(x’^2+y’^2)なので
θ=(L3/2πL)*2π=L3/L (rad)
L2=Ltanθより
x:x’=y:y’=L2:L3=Ltan(SQR(x^2+y^2)/L):SQR(x’^2+y’^2)よって
x=x’*Ltan(SQR(x’^2+y’2)/L)/SQR(x’^2+y’^2)
y=y’*Ltan(SQR(x’^2+y’2)/L)/SQR(x’^2+y’^2)
とx’y’からx yを求めることが出来るようになります、なぜx’からxなのかというと
フィルタを作るときは先画像のアドレスから元の絵の場所を拾うようにしたほうが
色々と都合が良いから、なのですね、これによってアンチエリアスをかける事も可能です
で、これを画像の端から端までスキャンし、出来上がった画像は
2Dのフィルタであるのにもかかわらず、実際にレンズで3D空間を写した際に
歪むものと同じもの、であるというのが分かっていただけたでしょうか?
で、正確にこのLが出るソフト(アニメーションマスターのような35mmフィルム相当の焦点距離値がある)
じゃなく、たとえばここにLが良く分からない画像(手書きとか、六角Superとか)の出力画像があった場合
目測でLを指定してやる必要があります、その際はカメラに詳しい人なら分かるらしいのですが
(自分はあまり詳しくないのでよく分かりません、受け売りです)
目、および一般的なレンズが焦点距離50mm付近、広角だと〜35mm、望遠だと85〜mmだそうです
その辺を目安に絵柄から
想像して入力することになります、この場合かなり広角なので試しに25mm、35mmとして
横:縦がわずかに3:2より横が詰まってるので、縦を基準にして36*24mmフィルムとの比で
24:793=35:1156って事でL=1156と24:793=25:826って事でL=826の
二種類を試して見ましょうか…
こんな感じですね、左が35、右が25と仮定した歪みです…25の方が自然かな?
この辺は感です、3Dソフトによってはちゃんとフォーカルディスタンスという値で
何ミリと教えてくれるのもありますし、六角Superだってもちろん決まった値があるはずなんですが
正確にわからない以上、絵づらの広角度から想像して、自然になるようあわせるしかありません
まぁそんな感じでパースちゃん、どうだったでしょうか?
絵にレンズゆがみをかけるツールを開発してもらいました
たとえばこんな感じで
これを
こうする
パラソルの柄、建物の影に注目、あと顔にも多少かかってますよね
私レンズ歪み大好きで、アニメーターさん絵描きさんとかの下書きのお手伝いになればと作り始めた
(というか赤Marlさんに掛け合って例によってアルゴリズムとか全部渡してプログラム化してもらった)
(私にプログラム技術があればいいんですが、無いのでアルゴリズム渡しばかりになってしまいますね…)
わけなんですが、思ったとおり、というか思った以上に出来が良くて正直驚き
これを3Dソフトの出力につかっても、広角のレンズ歪みによって物の巨大感なんかを出せる
いいアプリケーションになると思うんですが、いかがでしょうか?
手書きの絵でも直線定規を使ったパース絵からレンズゆがみ絵を算出できるわけですし…
ちなみにこれは焦点距離(フォーカルディスタンス)35mmということでかけてます、レンズ歪み
今は仮版なのでWinの関数電卓とこのページを渡り歩いて
入力してますが、自動化してもらえないかな…
アンチエリアシングは無しだそうです、赤丸さんは6000とかの高解像度で出すので必要ないとか…
まぁそれはそれで大丈夫かな、絵描きさんが使うときでも高解像度で使うでしょうし
でもアルゴリズム的にはアンチエリアスも可能ですよ
3D特有の広角時の尖ったパースが不自然で仕方がないと思っていたのもこれで一気に解消ですよ!
ちなみにRokmillにも同じようにお願いしてアルゴリズム入れてもらってて
簡易表示ですが、3d空間にリアルタイムでレンズ歪みがかかるようにしてもらってます
あと自分の逆光サンプルアプリにもカメラ>等距離射影&正射影レンズという項目がありますよ…
と、喜び勇んでバラ氏に見せたら
絵描きは感覚で描けなきゃ駄目だ、絵を描きたい人間が機械に頼ってどうする
とか言われちゃいました、しょぼーん
直線パースを描く時に定規を使うように、曲線パースを使うときの道具としてみて欲しかったのに〜
ぱーすちゃん元絵
40mm焦点レンズだったら
35mm焦点レンズだったら
…便利じゃねえ?
バラ氏もなんかこれを見たら、表現としてはアリかも、とか言いました
ただ正確すぎて空気の表現には向いてないかもしれないとか
あけましておめでとうございます
2004あけましておめでとう 49k
ウテナのチュチュです、線画のほうが見栄えがするなぁ
立体ちゃんと作るのって手間がかかるわりに見栄えするようにするのが難しくて
線画のほうが色々といい感じですよ
プログラムとか
ポリライト ver2.2なのですが
六角Super2、3の出力にしか対応して無いと思われます
Super4でのPov-ray出力がどうなってるのか3ユーザーの自分には分からないんで
どなたか、povファイルの対応の協力をお願いしたいです
でも使ってる人いないかなぁ…ポリライト…
六角Superと六角ユーザーなら必須なソフト
六角Superの対称六角出力をちゃんとした六角大王形式にするソフト
s2rを紹介してなかったなぁと思いまして、紹介、多分有名ですが
最近使い始めた人とかもいるかとおもって…
s2rのダウンロードはこちら
六角スーパーにおける六角フリー版形式出力の仕様で対称編集しているのに
両側に展開してしまうのを真ん中で張り合わせてくれます
これを利用することでスーパーとフリーを自由に行き来することが可能です
これ、非公開なのかもしれないですが…
(最初に下さった方はメールで下さって、作者へバグレポしたらこのアドレス教えてくれました)
余りに必須っぽいアプリケーションなので紹介させていただきました
ギャッコーアプリが出ました
http://member.nifty.ne.jp/escargot/
マーブルクレイ逆光対応版が出ました、公開してから導入までの早さが
このアルゴリズムの単純さ、コストの低さを物語っていると思います
多画面入力については要望多ければ対応するとのこと
元アプリの表示関係の部分をいじることに掛かるコストが大きいそうで
元々多画面入力があるアプリケーションであればこれも導入可能と思われます
反応ありました、少しだけ
星さんという方がいらっしゃって
実は私はサイトを一度も(は言い過ぎかな、ほぼ一度も)見たことが無いのですが…
こんなことをおっしゃっていた、と某氏よりメールを頂きました
>この方法論で「調整」はしやすいが、「作成」はしにくい事が予想されて
>調整用のいち機能として搭載されていたら、便利に使えるかもしれんけど、
>この方法論に特化したモデラーでの作成作業は困難を極めるだろうなぁと。
>(中略)
>もし、特化したツールを作るなら、
>時間軸に分けるんではなくて、はじめから2アングル(2画面)での作業をする方が
>・・・まぁ色物ツール臭さバリバリですが、2回の動作に分けるよりは
>ユーザーの精神的負担が少ないような予感がする。
勝手に引用すみません、ただ非常に良い例だと思ったので…
これ、今のアルゴリズムでもできるんですよね…説明書いてないだけで
ある画面から線画の入力、カメラ移動中は2dレイヤとして表示しておいて別画面で入力して初めて座標確定
ある画面から線画の入力、別画面から線画の入力によって初めて3d座標の確定
同じ視差立体化アルゴリズムから可能な「入力方式」です
実は今回「移動方式」にこだわっているのは既存のアプリケーションへの移植度の高さを
最も重要視しようと思ったためでした
一応六角大王上位互換、というのは伊達ではないので入力方式へこのアルゴリズムを適用すれば
非左右対称の空間にも、対称の空間にも同様に、線画の入力が可能です
左右対称空間で行えば六角大王と見分けの付かない入力方式になります(アルゴリズムは違いますが)
今現在移動アルゴリズムに限って必死にプレゼンテーションしてるのはプログラム能力不足を
他人の3dアプリ製作者に移動方式として追加してもらうことで補おうと考えているからです
入力アルゴリズムから立ち上げるということは、アプリそのものを作ることに繋がって
私の手に負えなくなってしまう、0からあるモデリングソフトを作る事になってしまう
それにそのソフトは特殊すぎる入力方式ゆえに今のユーザーでは誰もついて来れないのではないか
そう言う観点からの「移動方式」のプレゼンテーションになりました
なにせ自分の移動方式だけでは「入力」しづらいですから…なんせ普通のアプリが使いづらくて
入力時には六角大王を使ってるくらいなのでもちろん既存の入力方式には不満を持っていますから
その点は抜かりなく、このアルゴリズムは考えてあります
六角大王上位互換を歌っているのは伊達ではないのです
なので入力方式としてのこのアルゴリズム(視差を用いた入力方式)を用いて
0からアプリを作ってやろうという奇特な方がいらっしゃるなら、是非ご連絡を
そのほうが私としても嬉しいです、なぜならその時初めてフリー版六角大王から
完全に開放されることができるからです
というかプログラム能力があればこの入力方式のサンプルアプリを作りたいくらいですよ
ただいまの私にできる範囲での粘りが「誰かに移植して貰うためのプレゼンアプリ製作」が
関の山だったのでこんな状態になってるだけです…不甲斐ない
編集視差による自動立体化と六角大王の自動立体化について
今回特許申請をおえてコアな話を書いても平気になったので
新式アルゴリズムについてのテキストをまとめてみようと思います
http://atariya.dojin.com/rok/rrk/
六角大王の自動立体化についても触れているので、読んでいただきたいと思います
なんか最近再びtomatoに移行しようかと思えてきた、容量が…
3DAceを知ってちょっとびっくりしたのはこの文章を書いていたからでした
自動立体化について触れているのは自分だけかと思っていたので…
このアルゴリズム、既存の3Dアプリケーションに追加するに当たって必要な改造は
「過去の編集視線を保存する」「現在の編集視線との間での自動立体化を行う」だけです
3dアプリケーションをお作りの方、興味ありましたら是非ご連絡ください
というか、そう言うの興味ない人から見てもどう見えるのか興味あるので
読んで感想あったら是非お願いいたします
いまいち肩と体の位置関係が分からない、あと首と頭のつながりも、体の厚みも
理解できてないのを作ろうとするから余計わけ分からなくなるんだな…と思いつつ
バラシが変だといわなくなるところまで修正、自分では分かってないという良くない状態
こういうのはちゃんと理解するべきだなぁと思いました
ついでにT字にポーズ換え、AMのスマートスキンという機能がボーンのXYZ軸でなく
ワールド座標のXYZに掛かるという無茶な仕様なので仕方なく…ますます無茶なポーズで
余計おかしい部分が分かりにくい…ああ、まだ腰周りと足直さないと…
微妙な修正して六角Super2形式にしたりとか
下消してもも上げしても大丈夫に多少調整した
と思ったけどあんまりひじとか手首とか気になったので修正
線計算精度で向こうの線が透けるのどうにかして欲しい、手のひらから爪が見える
六角Super3形式の骨格入りですが
思ったようには動いてくれません、最近ファイルをアップしてないので
中間報告的に、アップしてみます
遅れましたが2003年あけましておめでとう
試しに腕をどかして見たら全然バランスが悪く、全体を見渡しバランスをとる大切な作業と
モデリング作業の近寄った状態でぽちぽち点を修正する工程という二つの作業は中々
同居しがたい二面を備えているようで、その辺も考えなくてはなぁと思いました
それは多分2d絵をマシン上だけで描くときも同じような状態になるような気がします
今のところは結局手軽に全体把握できるアナログメディアの利点という事になるのでしょうか
ぽりらいと 六角SUPER 3 対応
判明したスペース混じりパスが開けないバグや空のレイヤーの問題を修正しました
誰も突っ込まないので誰も使ってなさそうです…六角SUPER3に対応
六角スーパーのpov-ray出力にライトを配置、ついでにレイヤー毎に分割します
あるレイヤーに三角ポリゴンが一枚だけ置いてある場合、色をそのままに
光沢を明るさに変換した点光源にします
これを利用することで点光源を自由に配置、povにてレンダリングすることができます
関係ないけど右クリック拡張の修正
ちょっとだけなのですが…自分でつかってて不便だと思った部分直しました
/だけから始まる選択範囲でもhttp://に変更するようにとか、他その程度
久々にデーター更新
また関係ないけど右クリック拡張追加
選択範囲をURLとして開くツールを作りました
その際にhtp:// ttp:// tp:// p:// ://などでもhttp://に補完します
無くてもとりあえずhttp://付けますが頭がftp://とかの時はそのまま開きます
テキストでアドレスが書いてあるだけでリンクが貼ってないとき役立ちます
直リンク対策やIEの文節選択のせいで頭が全部選べない時も補完があるので大丈夫
ついでにhttp://ime.nu/やhttp://pinktower.com/を外す機能も付けました
リンク自体の右クリックでも呼び出せるので邪魔なjumpアドレス対策にも使えます
リンクの右クリックを取り出す方法が分かったのでついでに
前回のwebarchive.org検索をリンクの右クリックからできるようにしました
これでリンク先のページが閉鎖してて、しかもプロバイダートップに飛んじゃう時など
前のページのリンク部分から右クリック>webarchiveで検索、でOKです
divx3MP43相互変換ベータ
たまにdivX3のなかにヘッダの大文字小文字を間違えてる奴が居るので
どっちでも開けるようにしました、そのせいで2度落としても場合によっては負可逆です
DIV3DIV3から変換してMP43mp43にした場合、もう一度落としても元に戻りません
正しいヘッダ(DIV3div3)に直るだけなので、まぁ平気だと思いますが
オリジナルと違っちゃうのが困るとアレなので、ベータとしました
動作的にはなんら問題ないばかりか、たまに編集ソフトで開けないdivx3ファイル
これに落とすと開けるようになると思います、何度かあたりました、そういうの
あけましておめでとう
全然関係ないけどmp4divxcnv.zip
mpeg4v3とDivX ver3を交互に変換するですよ、ソース付き
アイコンにAVIを落とすと変換します、必要に迫られてActiveBasicで製作
DivXを入れてないけどMediaPlayer7は入れてる、またはその逆の人
見れないムービーがあったら落とせば見れるようになります
Mpeg4でムービー配布するときに便利かも
見る時だってmsmpeg4の方が表示の設定で色味とか明るさとかいじれるので
DivXよりは再生フィルターの分良い気がします、DivXとMsMPEG43って
6バイト書き換えるだけで相互変換できるので、作ったですよ
msmpeg4を見るときはMediaPlayer7のMPG4DS32.AXを取り出して
システム上書きするか素直にMediaPlayer7を入れるかすれば大丈夫
細かいことはhttp://www.moemoe.gr.jp/~anipeg/mpeg4.htmlを見れば一発です
ここのページ誰も見ていないと思っていたけど
全くではないみたいなので、ちょっとだけやる気を出して前にあった奴
pollight001.zip
ぽりらいと、何も変わってないけどドキュメント書きました、ソース付き
それなりに使い物になるものなので、そこそこ人が分かるように
ちなみに六角大王Super2のPOV-Ray出力でライトを配置するツールです
六S2つかっててROX-TRACEは遅いけどPOVはよく分からないという人でも平気
なんで自由にライト置けないの?とか思ったことがある人向け
あー最近更新してなかったんですけど、メールもらったりしました
実際誰も見ていないと思っていたのでちょっとびっくりです
ちよちゃんはなんでとぶのん?
最終更新っぽいポリライトD&D対応
ネタ的には三角頂点に光源を置いて
短辺方向へ短辺の長さの直径もったライトを向けるスポット君とか
三角置いた部分の法線方向にオブジェクトを配置するポリシーンとか
あるけどあるだけで、それなりに
どうして六角の斜め編集が便利かという説明〜
今度はこれで最後にしようと思うくらい詳しく書いたつもりです
「フリー版至上主義者が何か難しい事言ってる」と思われても仕方ないのですが
理解されづらいことは重々承知ですのでどうか、読んで欲しいです
多分誰もが一度は、上みたいな事をやったと思うんです
ずっと昔、最初に3Dソフトに触れて斜めから編集したときに
あれ?どうしてここに行かないの?と思いませんでしたでしょうか
そして多分説明書やチュートリアル、書籍や掲示板などで
「座標を固定して動かすんですよ」とか「斜めからうごかしちゃダメよ」とか見て
ああ、斜め画面から直接編集って使えないんだなぁと思った事があると思うのです
「二次元で動かしただけだもの三次元でその位置に来るはずがない」
多分ちょっと考えた末にそうやって納得しませんでしたでしょうか?
実際には出来るソフトが今のところ一つだけあるんです
と云うわけでたとえば上のような状態で点が空間に存在しますよね?
で、それをグリッドのすみに移動したいという場合
こんな感じでまず片側を移動してそれの対称になっている点も移動させると
(他ソフトの場合二度目の移動でも反対側の点が動いてしまいますが六角ではズレません)
見事このように意図していた位置に移動している
二次元上で見た絵を二次元上で編集するだけで三次元的に修正可能
これがフリー六角大王の自動立体化インターフェースです
で、これが実際にどんな場面で便利かっていうと
たとえばモデルをくるくる動かしていてある角度から
「あ〜何かおかしいなぁ」と思う場合がモデルの修正ではよく起こります
(今回は分かりやすいようにどこから見てもおかしいですけど本来は微妙な差です)
六角大王の場合はその気が付いた角度からおかしい部分を修正してあげるだけで
こんな風に直せてしまいます
おかしいと思った角度でおかしいと思った部分を修正するだけで直せる
と云うのが一番大切な「二次元感覚的に扱える」という部分です
この部分は絵を描く人ならばすでにもっている感覚なので新たに会得する必要がありません
他のアプリケーションはこの部分の負担を使用者の技術に依存させてしまうのです
実際には三面図+斜めなどで斜めを見たまま正面、横で
移動するでしょうがこんな風に修正をする必要が出てきます
変だと感じた角度の変だと感じた点そのものではなくて
別の表示画面で編集しつつ修正部分をxy平面、yz平面、xz平面に分解して
直したいと思った方向とは一旦別の位置へ、正面と横などの画面から
xyのみ、yzのみ、xzのみの移動に固定して
頭の中で二次元>三次元>二次元と変換して修正する必要が出てきます
また視線に水平に移動するような方法だと斜め視点からxyz同時に動かせるものの
同時に動いてしまうがために結局意図しない位置に飛んでいってしまいます
その場合は今見ている視点から奥か手前への移動を必要とします
この奥への移動はnfmodelerには付いていて左右対称に限れば
この方法は比較的優れていますが非対称の際に他の角度から確認を必要とする点で
やはり不向きです、無論六角大王だけに限れば左右対称のみなのでどっちもどっちですが
結局斜め視点は確認用となり移動は完全に正面、横、上のみになるわけです
でもその感覚は今まで絵を描く場合には必要なかった部分で新たに会得する必要があり
多くのユーザーは多分この感覚を会得するまで時間がかかったり
何度修正しても斜めからしか見えない不具合に目をつぶってしまったりしてるはずです
つまり六角大王だと発見から修正>修正の2ステップで修正確認できるものが
その他のソフトだと移動>予測修正>移動>予測修正>確認と5ステップ必要で
また三面図や斜め視点からの軸固定移動だと予測修正>予測修正で良いのですが
二次元の画面を見ながら三次元の移動を考えないといけないうえに
実際におかしいと思った角度から直に修正できるわけではないなど
その辺が二次元上での感覚的な移動とは別の感覚を磨く必要性が出てきます
修正は何度もするわけでましてや二次元>三次元変換を予想(感覚)で修正する分
斜め表示だけからの情報のみで行える二次元のみの編集より手間がかかるわけです
今回のような上の絵ならどこから見てもおかしいのである程度の予測しやすいですが
ある角度から見たときにどうもおかしい、などという場合では特に
他の二画面を編集しながらのプレビュー画面程度にしか
斜め視点の画面を使うことが出来ない多くのアプリケーションでは
結局操作に対する熟練を必要とされてしまいます
しかし六角であればくるくる回して見つけたおかしな部分を
その角度でおかしくなくなるように修正するだけで済みます
これは大きな違いだとは思いませんでしょうか?
さらにこれとまんが機能をあわせて使うことで
二次元画像何枚かを用意すれば三次元の立体を生成できるのです
つまり複数角度の絵を用意して
そのうち一枚を使ってまんが機能で立体化した後
出来た立体を別の用意した絵の角度にあわせて傾けて
違う部分を修正し足りない部分を書き足していくことで
より完全に立体化できる、と云う訳なんですね
私はここが一番大切な部分に感じています
(この部分の説明の絵を後で入れます)
この部分、かなり便利なはずなのに誰も触れていないです
私がよく何枚かの角度の違うキャプチャ絵を用意して立体化するのは
こういう理由からです
と云うわけで二次元上の移動だけで点の移動修正が出来る六角大王に馴れてしまうと
他の(と云うか普通の)インターフェースに違和感を感じるわけですが
この移動方法は全然説明されてないしあまつさえ良くあるチュートリアルなどでは
「斜めから動かすな!」とか書いてあるなどしてますます使われません
この機能が便利である理由を知ってる人は非常に少ないと思います
多くの場合斜め編集は使えない、使わないものだと
理解されているというのが残念ですが現実のようです
まぁ斜めから編集を使わなくてもモデリングは出来ますし
皆そうやっているのでしょうから斜めからの移動アルゴリズム以前に
斜め編集そのものの必要性を説く必要があるのかも知れません
ポリゴンライト変換マイナーチェンジ、ファイルネーム聞くようにしたです
ROK-JavaViewer
そしてこれがパソコンだ
あ〜結局N88WinBASICでちょろっと組んだ
シーケンシャルファイルでのテキスト操作が面倒で遅いです、HSP
六S2の吐いたPOVファイルでレイヤーに一枚しかない
三角ポリゴンをライトに変換します、でも異常に作りかけ
test.povをtestx.povへ変換します、決め打ち、ファイル無いと止まります
あと三角のどこの頂点がライトになるかは不定、困るときは三角を小さくして
三角の中心にしようかとも思ったけどそれもそれで困るような気もする
色は色、明るさは光沢で0〜100を0〜1へ変換
あとはレイヤー毎にオブジェクト名を付けて配置しておきます
ついでにレイヤー毎に"ファイル名.レイヤー番号"に切り分けます
これでPOVいじったりするときに多少楽になるかも知れません
HSPへ移植して前みたいにD&D対応にしたりしたいけどどうだろう
ちょっとしたTIPS?光る部分を別レイヤーにして作って置いて
object { RokuLayer2 translate <0,0,0> }
の部分を
light_source {
<0, 0, 0>
color rgb <1,1,1>
looks_like { RokuLayer2 }
}
とかにするとレイヤー2が光るようになるので
電球とか作るときに楽で面白いかも知れません
でも相変わらずtest.povをtestx.povにする事しかできないです
転載とか恥ずかしいから私の身元が分からないようにして下さい…著作放棄
ちなみにPOVの画像出力、α値は保存されているので
背景付きの絵の背景部分を差し替えたり書き加えたり出来ます〜
出力時のコマンドライン部分(?iniボタン)+FN +UAとか入れておきましょう
出力された絵をフォトショなどで読んでチャンネルαの部分を選んで
「選択範囲に変換」すれば背景だけに絵を描いたり丸々消したり出来ます
あとは
look_at <-0.0000,50.0000,0.0000>
の後ろに
focal_point < 0, 50, 0>(上と一緒)
aperture 1.4
blur_samples 20
とか入れると近くのものがピンぼけるとか
他ではエリアライトが影をぼかすので便利です
普通の光は面積があるのにレンダのものは無いので
その辺ごまかすのに手軽に使えます
POVの空間の点0は六S2のグリッドの底の中心で一辺100です
ので上のカメラは四角の中心の0,50,0を見てるです
ちなみに六角では四角の真ん中が0、一辺2なので六角からインポートした時
オブジェクトは上に50ずらして50倍して読むと同じになりますよ
畳とか柱がこれでグリッド32にしないと折角家の単位にあわせてるのに
使いづらいですからね、一畳とか
+QRって入れておくとラジオシティーになって回り込みとかも
かなりいい感じに出るようになりますですよ、特に暗い絵の時
でもなぜかMegaPOVだとラジオシティー出来ないです、何故?
完成〜?
これを作ってる最中にうっかりrokファイルに6ks形式で上書きしました
っつうか「*.rok」を読み込んでセーブするときには普通"*.rok.6ks"か"*.6ks"で
保存しませんか?閉じた際に「保存されてません、しますか?」とかでたら
うっかりはいって答えることがあるくらい分かって欲しいです
そのくせ.rokって拡張子で中が6ksフォーマットのファイルは読めないし
と云うわけでこのデーターは消えました、残念
POVってる最中の不幸でした
6ksファイル
レイヤーとか使ってるので2じゃないと辛いかも?
相変わらず脚直し、足を曲げても伸ばしてもあまりおかしくないように
さくらデッサン人形はいつ完成するのか…
色々ごまかしっぽい適当スギなのでデータ無し
というか階段以外は全て今までの使い回しだし…
さくらちゃんの手を意識して頑張ってみるけどまだまだ
手のひら〜親指は結構気に入っているんですけど指が
ポリゴン数少ないまま四本指繋ぐ方法あれば教えて欲しいです〜
足りないパーツである星のロッドを急ごしらえ、ちょっと手抜きです
色々突っ込みどころがあるので修正予定ではあるのですが…
ゲーム購入記念超ローポリドリエル
普通のゲームやるのドラキュラX以来かな、面白いや
なんか新しいアニメーションマスターで下のデータを読むだけで
こんな感じになるんだって、ちょっとびっくりだよ
少々手直ししたつもり、今後もファイル名そのままで上書き調整すると思うです
あまり考えずに適当に作る、そう言う方が簡単に作れるので
赤べことかの適当に作ったののほうが何かうけが良かったりするのでこれもそうかもなー
あ〜でもそれでも2時間くらい?そんなにはかかってないかも
ゆうぴーお面型作りながらいじったりして、何かうまくつかめないです夕姫
髪の毛とか描き足してしてみたら夕姫なのでびびった
でもどことなくフェイっぽい、色?
と思って今見直したらそれほど夕姫っぽくなかった
お面作るはずなのに何か六角ってる自分、何故に?
多少修正して六角でも見れなくもなくなった夕姫胸、本当はもっと大きいらしい
サブディビジョンサーフェイスとか言う技術で一発でなめらかな胸になります
RS2で読み込んでこんな感じ
と云うかすでに六角と六s2を開きっぱなしで編集セーブするたびに読み直して曲面化
面の流れを気にしないで大丈夫、分割じわが出来ないです流れが滞ってても
その代わりやせるのが辛いけど、ものぐさい時用、適当な形作りには向いてそう?
六角データとしては出来が悪いので面の方向とかは見ちゃイヤ
礼野神となんとなく、ランガ、30分くらいで、夕姫を植えるために作っただけなのでかなり
例のネコフライトの所のよく放り投げて遊んでいたバーチャル貞子さん
作り直した足と靴
やっと肩が上がるようになったです、腕は少々手抜き、首はかなり手抜き
そして後ろ姿、主に足と脚と腰を修正、頭は前のまま
足はかなり足らしくしましたのでこれにあわせてまた上履きを修正せねば
こうなってくると裸足も欲しいです、夕姫用に
そう言えばアップしてなかったので載せてみた。*2
プロジェクト動き出しました
このインターフェースがアプリケーションとして日の目を見れるかもしれません
レイトレの逆で自動立体化なので「逆光」にしときます
旧二視点型が「鳳雛」ならこの収束トレース型は「臥竜」です
実際このアルゴリズムは「何処がスゴイのかさっぱり分からない」筈です
既存点の移動に関してはユーザーには何も考えさせない自信があります
待てサンプルプログラム
収束トレース型自動立体化アルゴリズム「逆光」
このアプリケーションの存在意義
三次元空間に思い通りの物体を作りたい、と思った事はありませんか?
いわゆる3Dのモデリングソフトというものがありますが
それらは「CAD」から派生したために三面図のように
物体を三次元空間に対して座標分解して入力する必要があります
この場合設計図を用意して製作に取り掛かるような
緻密なモデリング作業においてはこのような分解型のインターフェースで
ポイントを配置していくことで製作を行うことが出来ますが
決まった形で無い、ラフスケッチのような作業を空間で行いたい場合
新たにアイデアを思いつくそのたびにポイントを三次元座標になおすような
論理分解を必要とする作業は直感的に行いづらく
自由視点から物体を移動できるタイプのインターフェースの場合でも
移動そのものは「XY」「YZ」「XZ」などに分解する必要があり
どちらの場合も空間に気軽に物体を生成、配置していくことが出来ません
私の知る空間ラフスケッチソフトに「六角大王」がありますが
それは「生成」においてのみ感覚的で「配置」に対してはあまり感覚的ではありませんでした
六角大王には「鏡像視点における自動立体化」という入力インターフェースが存在し、
(普通は左右対称のメリットは半分の製作で崩れずに物体を作ることが出来る事なのですが)
左右対称の点同士を2D上から編集することで3Dの任意編集を行える機能を持っていました
しかしこの「鏡像自動立体化」は本来「左右対称」とは切り離して考えるべきもので
その点において六角大王には左右対象の「デメリット」が存在しました
たとえば「修正」だけに焦点を当てた場合「左右対称の部分が見えないと編集できない」事は
制約であるのと同時に論理的思考(左右対象点を認識する必要性)を強いる
大きな足かせであると私は考えます
また「配置」における左右対称も同様に足かせだと感じるユーザーが多かった筈です
だからといって他のソフトは前述の通り「分解型」のインターフェースを取るために
ユーザーが2D>3Dの変換を頭で行うことについて何の疑問も抱いていません
今のところは「修正、配置における自動立体化を満たすソフトは無い」と言うしかありません
特に今の3Dソフトは「2Dのまま」3Dを動かせることの利点に対して無頓着です
今回「2D」による自動立体化を取り入れるにあたり六角大王とは別のアルゴリズムで、
つまりは理論的思考を強いない収束型の自動立体化アルゴリズムを持つことで
六角大王でさえ持っていなかった新たな「使いやすさ」を手に入れることになると考えます
今回「修正」「配置」に特化した3Dインターフェースを提示することで
六角大王とは別の2D型インターフェースを担う、というのが
多くの3Dソフトの中における「逆光」の存在価値になると考えます
対象
主に六角大王を使用しているユーザー
このインターフェースが「六角大王」の持ち合わせていない部分に特化しているため
六角大王で作ったものを編集する作業には最も適していると思われます
「前から描いて横から修正」を行っていたユーザー
六角大王SUPERの「左右対象側を隠す」機能を便利だと感じたユーザー
この場合「前」と「横」以外の視点からでも同様の編集が行えるので
一番メリットを感じるユーザー層であると考えられる
斜めから物を動かした際に「思った位置に移動しない」と感じたユーザー
六角大王で非常に近づいて編集するとポイントが上手く動かせないと感じたユーザー
収束トレース型のアルゴリズム(逆光)を使っているので
修正するたびにそのユーザーが「来て欲しい」と思っていた位置に収束していきます
この場合そのユーザーが「便利だ」と感じることは無いと思われます
このようなユーザーには「普通」に感じられるはずです
というわけで作ってみた。初服、ローポリ赤べこ
上はRoXでちょっとレンダって見た絵
アーカイブに適当だけどテクスチャ入れといたからその気になればそれなりに
牧野氏みたいにひょこひょこ服作っていけるといいかも・・・服もいいね
彼がさくらのコスチュームを大量につくっていたので触発されて作りました
微妙にHumanModelを意識しているかもしれないけどグループ化がしてないので
直す必要あり、その辺後で直すかも
こりゃすげぇ
メールにて情報あり、早速作った上のアニメGIF
これがまた簡単に六角モデルを動かせます
これが上用のデータファイル、桜ボディ重版必須
表示画面は左クリックで回り込み、右クリック上下で距離移動、左右で回転です
まず最初にサンプルデーターを開いて堪能しましょう、メイドさん歩く!
そしたらモーションを適当な名前と「拡張子(必須)」つけてセーブしましょう
で、新たにひとがたの六角データを開きます、たとえばさくらですね
六角データーのグループ毎にナンバーが振られてるので
それらを頭、腰、尻などそれぞれの部位に割り当てていきます。
無いパーツはグループ化し忘れなのでモデルデータに戻ってグループ化しましょう
そしたら間接を入れていきます、間接ポイント表示にして付け根に移動するだけ
左右あるのは勝手に入るので見やすい手前を入れればOKです、楽ですね
で一通り入れ終えたら「標準ポーズ」をつけます、棒立ちですね
棒立ちにする前に動かしたりすると変な動きで笑えますけどまぁそれは置いておいて
関節を回す際に旨く動かなかった場合はまずは元の位置に戻してから
改めて関節入れなおすことがコツです、でないと離れてしまって戻らなくなります
まぁ一旦動かす前にセーブして置けば平気ですけど拡張子入れないとセーブできないので注意
ちょっとの時間で適当に作ったけどそれだけでも結構面白い、これはいいですね
リンクしてもらったりとか
ふり素さんとか
ぽりごん綾波さんとか
ちゃんとリンクして無くてスマン、後日何とか
手とさくら頭修正版が上の方にあります
手気持ちわる、オレの手みたい
おう、逆立のアルゴリズムがやっとこ数式化したぜ
何か長くたってしまいましたがやっとこ解けました
でも検算してないので不安、6行1次の連立方程式解くプログラムとかってないかなぁ?
っつうわけでこのアルゴリズムの核の部分の数式を公開
逆立自動立体化式
あるポイント編集において
過去に編集を終えた際に持っていた視点から投影点へのベクトル
(点投影の場合は視点>作業点、平行投影の場合は視点>注目中心点)
これをVectorVとし、その投影点(A)を通る直線を求める
そして現在編集中の視点から投影点へのベクトル
(点投影の場合は視点>作業点、平行投影の場合は視点>注目中心点)
これをVectorWとし、その投影点(B)を通る直線を求める
この二本の直線上にて互いに最も近い点をP、Qとする
点Pが最も過去において正しかった点であり、点Qが現在において最も正しい点である
(この辺がアバウト編集を可能にする例の移動を司るわけですな)
まず直線上の任意点をベクトルの倍数で表す式より
P(xyz)=A(xyz)+kV(xyz) No1
Q(xyz)=B(xyz)+lW(xyz) No2
となるわけです、で、
二点の距離が最小になる状態(逆立の投影半径移動とずれを最も小さくする)より
VectorPQ=(Qx−Px,Qy−Py,Qz−Pz)が
VectorV、VectorWに互いに直行するときに最も小さくなります
よって
VectorPQ・VectorV=0 No3
VectorPQ・VectorW=0 No4
こいつらを展開すると
No1を展開
1: VyPx-VyAx = VxPy-VxAy
2: VzPy-VzAy = VyPz-VyAz
No2を展開
3: WyQx-WyBx = WxQy-WxBy
4: WzQy-WzBy = WyQz-WyBz
No3,4を展開
5: VxQx-VxPx+VyQy-VyPy+VzQz-VzPz = 0
6: WxQx-WxPx+WyQy-WyPy+WzQz-WzPz = 0
求めたいものはPx,Py,Pz,Qx,Qy,Qzの六つなのでこいつら毎に整式していくと・・・
出ます
そしてそれらから一般解の
P,Qは求められた(ハズ)なので
そのP、Qがおのおの見事に逆立自動立体化先の3次元座標になっています
そして実運用に使う際
今の視点をCn(x,y,z)、注目点Cno(x,y,z)
先ほどの視点をCb(x,y,z)、注目点Cbo(x,y,z)としたばあい
あるポイントP(n)を画面上で動かすと
A(x,y,z)にはP(x,y,z)を代入
先ほど編集を終えた視点が平行投影だった場合は
V(x,y,z)はCbo−Cb
先ほど編集を終えた視点が点投影だった場合は
V(x,y,z)はP(n)−Cb
そして
B(x,y,z)は今の投影平面を移動させた二次元座標(x,y)を
絶対座標から見た場合のQ(x,y,z)を代入
同様に今の編集視点が平行投影だった場合は
W(x,y,z)はCno−Cn
編集視点が点投影だった場合は
W(x,y,z)はQ(n)−Cn
を代入し、上の一般解より求められた座標をP,Qのうち
Q側を使うことで逆立半径+接線タイプの自動立体化
P側を使うことで逆立半径タイプの自動立体化座標が出てきます
これによりある視点からの視角の先に存在するポイントを
位置移動し、先ほどの視角を最も崩さない点を新たな点にするため
視点移動>修正を繰り返すうちだんだん正しい位置に収束するという
特殊なポイント修正アルゴリズムになります
ぷは〜
っつうワケです、これが逆立アルゴリズムですさ
アニキャラ輪郭は左右は使うけど上下って使われないことが多いから
試しに縦のみの決まるラインで繋いだもの、これもさくら
前のは全方位カバーするため斜めの決まるラインを求めたけど
今回はとにかく縦方向の輪郭線の線画を集めてそのまま制作
縦方向の輪の押し出しだけで作る、ってのはお面の作り方と一緒
欠点は筒状のものしか作れない事と目とかは無理っぽいこと
でも結局頭は髪の毛で塞ぐし目はデカールだしこれでいいと思う
ただ鼻とか顎とかの出っ張った所にうそを付いたので
三角とか出来ているけど愛嬌
輪郭が大丈夫だとシェーディングであっさりごまかせるから
ローポリにまとめるにはこっちの方がいいのかもね
多分シェーディングやテクスチャー貼るだけで
かなりごまかされるはず、その辺は随時試してみたい
っつうかテクスチャーっていまだに作れないよ
あ〜載せとく、しかも勝手にリンクまでする。
やばかったら消す
こういうのをちゃらっと作ってしまえるのが良いな
多分一番正しい六角の使い方な気がする
どう?
髪の毛テクスチャー貼り方わかんないから今のまま
私以上に忙しい人なんていくらでもいるのに
それを理由にするのは気が引けますが
ちょっと更新滞っています
とりあえず今視差と立体認識についての論文を友人にお願いして
取り寄せている最中ですが、それが理由になるわけでもない気もします
忙しさは8月中程まで続きそうですが
ここを更新するくらいの空きはあるはずなので更新していきたいです
上に貼ってあるさくら、結構前からですが耳がついてます
作りかけですし、ちょっと納得いってないので書いてなかったんですが
この分だと手をつくって髪の毛乗せて完成するのはいつのことやら
手はこだわる部分だからまた進まないでしょうし
そもそも最もこだわってた体のラインが満足しているので
進むスピードは遅そうです
後イス、なおしたいです、実は跳び箱も作りかけのがあったりして
ランドセルとかも作りたかったんですけどまだですし
でも気長に作っていきたい気分を待って作ると思います
で
今までのアルゴリズムはオレンジ君に任せることにしました
何やら企画が進むらしいのでここでアルゴリズムを公開することは止めて欲しいとか
っつう分けでじゃぁ新しく何かないかなぁとか考えていたら
今度は別な方向から攻める理論を思いついてしまったので
今度はそっちのお話に移ることにします
いままで六角大王を意識するあまり作業平面の話や二視点の話に終始していたけど
その辺の操作感は六角大王を知っているか
自動立体化の理屈を体か頭で覚えていないとダメだったわけで
このアルゴリズムがユーザーに感覚的ではないものを強いる部分だったわけですが
逆に全てを感覚的に行なうにはどうすればいいか?という方向と
投影のアルゴリズムを考えていた際に気づいたある法則をもとに
全く別のアルゴリズムを考えていこうということになった
っつうかオレのような使い方をしている人なら全て感覚でOK
まぁ好き勝手に考えをめぐらすことにする
っつうワケで新アルゴリズムは「逆立」です
最初は逆六かなぁと思ったんだけど全然六じゃなくなったので
3D空間を2D認識する際の人間のアルゴリズムについて
三次元と言う空間を二次元に表示した状態で、ある三次元の位置を指し示す場合
人間はどうやってその場所を認識しているのだろうか?
例えば箱が1つあったとして、その隅を指し示した場合
こんな感じで目と指先と箱の隅が一直線上に並んだ状態になっています
これは三次元空間を二次元平面に投影する際に行なった投影変換の
ちょうど逆の道筋をたどっていけば必ずその場所につく、と言うことなんです
いま、たとえばこの立方体に「耳」をつけたい、と思いました
じゃぁ耳を書いてみましょう
多分この人の見ている空間はこんな感じなので、耳を足すと
こんな感じではないでしょうか?
するとここに書いた耳のポイントがどうなるかと言いますと
このような形で
「眼の位置を中心として二次元で書いた耳の重心方向を法線とする半径rの球」
(点投影の場合は距離lの平面)に耳の絵が貼りついた状態になります
で、ここからが面白いところで
一旦カメラを移動すると今までのカメラの位置を中心に放射球状の
オブジェクトの移動空間が生成されます
で、この耳、まずは耳そのものの位置を移動させると
このような形で位置と大きさが変化します
ポイントを移動させた場合もポイントごとに球の半径が変化するので
こんな感じでポイントが移動します(今動かしたのは耳の角のポイント)
実際にユーザーがこの空間を意識することはありません
何故なら球上を移動していても2D表示のため
普通に移動しているようにしか感じないからです
で、ポイント移動を行なって今見ている位置で正しい2D表示になったら
またカメラを移動させておかしいな、と思った部分で同じ事を繰り返します
このように移動>編集>移動>編集を繰り返していく内に
オブジェクトが「意図していた位置」に精度を増して近づいていく、と言うのが
提唱する「逆投影型立体化アルゴリズム(逆立)」
っつうワケです
このアルゴリズム最大の利点は六角大王にすらなかった
いろんな角度で適当にいじっている内にどんどん正しくなっていく
という部分にあります
先ほどの耳もカメラを移動させると
こんな感じで位置がずれているので、大まかに耳を移動させた後
こんな感じで今見ている位置から直します、んでまたカメラの位置を移動させると
微妙にずれてたりとかするんでまた移動、修正します
そんなことを繰り返している内にどんどん意図した位置に収まっていくわけです
この「適当にいじるのを繰り返すとどんどん正しくなる」は
このアルゴリズム最大の特徴(いい意味で感覚的、悪い意味でアバウト)で
新たにモデリングする際は3アクション必要なため
「知っている六角使い」の2アクションにはかないませんが
すでに存在するポイントを修正する際に2アクション(移動>修正)で
これは六角の3アクション(移動>修正修正)(論理分解>移動修正)はもとより
今までのソフト(論理分解>修正修正)といった考える必要があったソフトには
絶対に負けない「既存ポイント修正を感覚的に行なえる」方式です
私が六角で不満に感じていたのは自動立体化を理解していないと
効率の良いモデリングが出来ないことで
これはそのまま今まで提唱していた「二視点による自動立体化」にも当てはまります
六角大王を意識しすぎるあまりあのアルゴリズムには
ユーザに唯一且つ最大の理論的思考を強いる部分が存在しましたが
今回あのアルゴリズムを破棄するに当たってもう一度原点から悩んだ挙句
レイトレの方式から逆立体化できるんじゃないか?
っつうことで今回のアルゴリズムを思いつくに至りました
とりあえずもう少しちゃんと文章他の形にしますけど
今度は完全オリジナルなので著作権は放棄しませんが
「アルゴリズムの普及を阻害しない限り使用は自由」と明記しておきます
つまりは金銭の授受が行なわれない限りフリーとして使って結構です
まぁ今の状態の書き方ではまだ良くわかんないと思うのでもう少しちゃんとします
小遣い稼ぎが終ったらの話になると思いますが
重くないじゃん
マシンがP120からK62300になったら
編集さえヤバかったさくら頭が普通に回せるようになっていた
ので
根気の結果
顔、面多すぎ
オレは見栄える輪郭線の集合体は必ず見栄える物体になると思っているので
とにかく下の描き方に出てきたとおり延々と輪郭を書き足して
それらを繋いだ結果がコレ
耳より後ろのキマル輪郭が良くわかんないのでダルイ線運びになっていそう
体のほうは分割するとかなりいいラインになるので結構気に入っているけど
頭はちょっと重過ぎ
分割するとこの形になるものを目指すべきだと思った
案外下の例用に早めに割り始めた奴くらいのほうがいいのかもしれない
ちょっと気になる六角ツール
六角大王>SATURN BASIC形式コンバータ
アスキー開発のため「MSX−BASIC」に酷似しているらしく
このコンバーターの発見で非常に気になる存在になるかもしれない
でもサターンだし無理か、誰か試せ
どうやら繋がったポリゴンで1つのオブジェクト化したりする機能もあるらしいぞ
私の六角での顔の書き方
顔、マルチで失敗して以来鬼門だったんですが一応気分転換を兼ねて
まず真横から顔のラインを描きます、この辺は良くあるページといっしょ
ちょっと違うとすれば線を繋ぐことをあんまり考えないことくらい
で、出来たそれを見栄えがしそうな角度に傾けます
そうしたらまず消えてる輪郭を書き足して、それが反対側ではどこにあるか
そんなことを考えながら書き足します
私は結構目から描き始めたりするほうなのでこんな感じで描いていって
とりあえずこの辺で一旦振り向かせて見ます、結構間違えてそうなので
おお、出来てる。いきなり感動です、こんな感じで勝手に立体になってます
そうしたら又別の角度から足りない輪郭をたしていきます
向こうの耳とかを描くときは輪郭線(赤く選択した部分)が逆側の輪郭っぽく
つまりこの場合目などは無視して顔が左奥向こうを向いているように見えるような
そんな感じで見ておくと大体の場所が分かりやすいです
赤い部分をじっと見ているとそっぽを向いた輪郭に見えてきませんか?
本当は向こうにある耳くらい把握しているべきなんでしょうが
私は立体把握が弱い自分をこの方法で何とかしています
で、足りない輪郭を足す作業を繰り返していく内に
上にあるような線画の絵っぽくなってきます
今まではそこで止めていましたが試しに面貼りに持っていきます
いままで輪郭を作っていたポイント同士を結んでいきます
足りないポイントはALTキーで足しながら結んでいきます
ここでは少な目の線だけどいきなり面を貼ってみます
後は根気で繋いでいくだけ、編集はできるだけ斜めからおこなうようにするくらい
斜め以外から点を打つと0平面に持っていかれてしまうので
斜め以外の場合は今まで置いてあったポイントを一旦むずんでから
ALTで分割して移動したりとかしてなんとかします
向こう側が分かりにくくなったら表示を線のみにしたり
こっち側を掴んで反対のどこが光るかで何とかします
繰り返す内にここにあるさくらの顔くらいにはなります
まぁ試しに線画を描く位はやってみると面白いよ
描いたものが勝手に立体化されるのは感動します、本当に
いや、俺模様好きなんですよ、渦とか螺旋とかレース模様とか
六角でそう言うのかいていることもあるんです
何故か六角こう言う模様描いてると落ちやすいです
大体落ちるまで書いて止めるんですけど
珍しくいい感じでまとまったので記念に
イチの腕です
こんな感じで斜めから見てキマル位置を選んでポイントおいていきます
こうやって作ってるので「延長」の御世話になることは基本的にないようです
御面の休憩の合間に作りなおしたもの、もう少し煮詰めてさくらの腕と交換予定
恥ずかしながらサークルでお面と言う立体物を手がけているわけですが
六角大王を使うことでプラスになった気がします
立体だからでしょうかね?どっちも
六角さくらちまちまいじってるんですがすでに言わないと分からない世界
一応書いておくと恥ずかしながら骨格を意識し始めたというか
あんまりだめですけど自分なりにラインにこだわっています、足の裏とか
靴下皺は偶然ですがでもお気に入りです
イチの腕が駄目なのは見逃してください、そのうち直ったのにさしかわるです
流れが掴めなくて今は只の8角柱をいじっただけみたいになってます
それはつまりセンガらしくないです、決まる部分がない状態
決まるラインで物体を構成すべき、折角六角なのだから
あとはこれを六角スーパーとかメタセコイアに持っていって(使用期限切れそう)
分割してやるといい感じになります、全て滑らか線(角180)でお願いします
おかげでVRML1.0でオブジェクトのロード位置を
エディターでいじったりするようになりました
ってかなんでそんな遠くとかカメラの裏とかにロードしますか?
もうちょっと出力位置というかカメラ位置というか考えてください
なぜか逆さだしスーパー
Transform {
translation 0 -20 -62
rotation 0 0 1 3.141592654
}
を最初のSeparatorの直後に突っ込んで置けば大丈夫です
gzipも忘れずに
p.s.
メタセコの場合は
Transform {
translation 0 -1.3 8
rotation 0 1 0 3.141592654
}
translationが読みこむ位置、x,y,zですね
rotationが x,y,z,radで読みこみ軸
モデルによって違うでしょうけど意味がわかっていれば調節可能ですよ
編集メニューに良く見ると「延長」なる見なれない単語があって
はじめて使って見ました、延長
どういうときに使えるのかを即座に理解できず、その後死にたい気分に
これあれば楽なこともいろいろあったね、まぁ線画には関係ないけどさ
?ある!あるある!これで線画を薄い面化して普通のビュアーで見れるジャン
たぶん
あ、下で西村さんの絵を借りてTipsやってた奴ですがこんな感じに
少ない線で立体を、と言う感じでラフな感じを出したかったんですが
込み入ってくるとどうにも線はくっつくわで大変に
関係無いところに一回線を引いてビューモード編集Tips使って
ポイント増やしながら気に入った位置に置いていくと何とかなります
オレ自身がなんともなってない部分はどうにもならないですが
そもそも見えない部分を想像して書かないと回せるのに回せない物になるです
弱い自分再確認、でもなんとなくだけど少しづつ何かを掴め
景気付け六角TIPS「いきなり渦巻きが!?」
ひそかに作成中の新六角アルゴリズムに関係無くも無いTIPS
まず、書きたい角度に直線を引いて、それが点に見える位置に移動して
それらに直行するように上下に傍線を引っ張っておく
それを頼りにおもむろに描きはじめる
ほら、ちゃんと渦巻きに!!!ホントだって
これで新六角のアルゴリズムのちょっとした実験になります
弱めの六角TIPS「未確定オブジェクトの回転
反対側がどんな風になっているか良く分からない
立体把握弱めのオレらしいものをひとつ
たとえば耳、良く分からないときはとりあえず書いて、コピー、ペーストする
で、加工>引き伸ばしでぐにゃぐにゃ変形していると
(一旦放しちゃうと引き伸ばし位置が変わっちゃうので気をつける)
だんだんオブジェクトが角度を変えているように見えてくるので
(立体把握が弱ければ平行投影を回転に見るくらいどうって事ナイ)
これだ!と言う角度が付いたら気になるなら板っぽいのを修正して
ちょっと縮小してそれらしいとこまで移動
これで弱い僕でも安心!!ヨワ!!
頬ラインとかもこれでなんとかそれっぽい所までもって来れます
弱くない人には無用のTIPSでした
下絵とボックスのパースがずれてる辺りで弱いことを察してください
ちなみに耳ももう少し下でした
そんな時は表示モードで編集tips(下)で修正しましょう
下絵は西村さんのページのcolumnより借用させて頂きました
立体把握弱めな私でも形が意識しやすく助かります、それでも弱いけど
以下、編集中
っちゅうか今まだログ切り出しただけジャン???
ちゃんと分かりやすく切り分けつつ
オレ程度のマワルセンガ描き方をとかも書いておくよ
とかいいながらほったらかしです、見苦しいものも多いけどその辺御勘弁
多くは表示系についてと最初に奮起した「駄目だろそのインターフェースじゃ!」
という勢いのある若い文章です、でも言ってることは今でも正しいと思っていますよ
線の太さは四角形で十分だそうですので
多分最後になる六角大王の表示アルゴリズムについて
魚眼編+パース編
魚眼が「空間の距離は全く考えず、全て角度で考える」世界なので
視角で物事を考えるわけですが、それを又「空間を変形させる」方向で考えると
全ての点を視点から距離rの位置に移動させても見た目は同じ、となります
(これは点投影が投影平面に動かしても同じなのといっしょで
最終的にはこの方法で投影平面より後ろのものは投影平面まで移動させます)
よってそれらを平行投影すれば、結果的に魚眼の式と同じになるわけです
さらにそれは、一旦パース空間変形を加えたものと同じカメラ位置であれば
結果が同じなばかりでなく、仰角180度以上を考えないで済ますことができるので
回りこみ補正の為に一旦空間パースをかけた平面にもう一度魚眼をかけると
任意の点を魚眼投影した際の移動量の式は
投影平面から視点までの距離をl、魚眼半径をrとしたとき
θvは視線と点のなす角で、θv=Atn(l/SQR(X2+Y2))
θrは点のx、yヘ分解する回転角で θr=Atn(y/x)になるので
Dx=(r−(l/Cosθv))SinθvCosθr
Dy=(r−(l/Cosθv))SinθvSinθr
より
Nx=x+(r−(l/Cos(Atn(l/SQR(X2+Y2)))))Sin(Atn(l/SQR(X2+Y2)))Cos(Atn(y/x))
Ny=y+(r−(l/Cos(Atn(l/SQR(X2+Y2)))))Sin(Atn(l/SQR(X2+Y2)))Sin(Atn(y/x))
※x、yは点投影時の任意の点座標、つまりパース変形後のx、y座標
で表されることが分かります
つまり空間パース式の結果にこの式を加えることで
魚眼の点座標の式は求まるわけですが
今度は魚眼空間では直線は曲線になっているわけで
投影平面時に点A(Xa,Ya)、B(Xb,Yb)を結ぶ直線は
原点0を中心に角度Atn((Yb−Ya)/(Xb−Xa))傾いた
長辺径rでA,Bを角180度未満に含む楕円の円弧A-Bで表されます
この楕円を描く式も求められそうですが
求めたとしても実際のプログラムでは使えなさそうなので
(傾いだ楕円を書くAPIが無いので)求めません、多分
結局楕円ではなくn角形で計算してしまうと思われます
その際は二次元の状態の変化量の大きさで線分を分割するか
三次元の状態で線分をn分割(近い線分ほど多く割る)しておくことで
解決することになりそうです
また、六角大王のようにパースを変化させても
0平面での長さが変化しないためには
lが変化した際に距離Lもいっしょに変化させる必要があり
lがa増えたとき、新しいLnは
Ln=((l+a)/l)(L+l)−(l+a)
の関係で移動しています
ちなみにLを動かしてもlは変わりません
結果、この式を使うことで
空間パースの式は
Xp=Xl/(L+l+Z)
Yp=Yl/(L+l+Z)
Zp=Zl/(L+l+Z)
Rp=RCos(ATN(SQR(X2+Y2)/(L+l+Z)))l/(L+l+Z)
ということになります
以上
なんか線画だけじゃなくちゃんとポリゴンしたかったけど
とりあえず作り途中の絵
空間パース変形について
3次元の空間を平行投影すると、近くのものでもどんなに遠くのものでも
同じ大きさで映ります
いわゆる一般的な投影は点投影で、投影物と視点を結んで投影平面との交点を
二次元の映像にするわけなんですが
点ごとに投影しなおさなくてはならないし
また平行投影と点投影で別のアルゴリズムを使わなくてはならないわけで
そいつはあんまりに頭良さそうじゃないんでどうにかなんないかと思いきや
遠くにあるものは小さくする
っちゅううそ臭い解決方向で解決すると色々便利であることが判明
仰角Xθ、Yθで3次元空間を歪ませ、全て平行投影するという解決方法になりました
投影平面の原点からの距離をL、投影平面から視点の距離をlとする
ある点の投影原点からの平面距離をZ、平面座標をX,Y
点の大きさをR、点と視線のなす相対角をθpとすると
Xp=X(L+l)/(L+l+Z)
Yp=Y(L+l)/(L+l+Z)
Zp=Z(L+l)/(L+l+Z)
Rp=RCosθp(L+l)/(L+l+Z)
*オレンジ君に渡したVB版六角では入れ忘れたョ
と結構あっさりした式になります
Zpは3次元の空間を2次元に投影している限り意味が無いものですが
無いと4次元の人に突っ込みを入れられてしまいます
ちなみにここで求められるX,Y,Zと絶対座標系でのx、y、zの関係は
つまりはXθYθ回転させた座標空間で単純に回転公式を突っ込んだ
X= xcosyθ+(ysinxθ+zcosxθ)sinyθ
Y= ycosxθ− zsinxθ
Z=−xsinyθ+(ysinxθ+zcosxθ)cosyθ
です、はい
zθはなぜ使わないかっつうと自分が回れば済むからですョ
θpは(視点―支点)と(視点―任意点)のなす角ですが
コレの求め方忘れました。求む代数幾何教科書
あとわかんないのとして
中心(x1,y1)半径r1の円と中心(x2,y2)半径r2の円の
共通接線の内、外側二つ(つまり交差しない二つ)を求める方法
コレが分かると太さの概念が入れられます
それと魚眼?
多分楕円の円弧の一部分を使って2点を結ぶんだと思うんだけど・・・
もう少し魚眼を理解すれば分かるのかも
futami@atariya.dojin.com
二見 レオ