1114mailへの返信

chikaさまへ
11月14日付けメールへの返信です。
スクリプトお疲れ様です。
Blender2.5xでは単位系が組み込まれているので、2.4xの時よりもわかりやすくなったのかもしれません。2.4x系ではグリッドの設定で1が1に対応しているというような感じだったと思いますけど、ズームとかすると、表示グリッドは自動で変わるのでちょっと悩みますよね。
ちなみに、2.4x系でDXFを取り込むととんでもなく大きなものが入ってくるようになります。

カメラの設定は、アングルで35ミリ標準を20ミリとかにしたら広角になります。
カメラを3D窓で選択してボタンパネルのEditing(編集)を選ぶとその中にレンズの設定があります。
ズームというか、画面をひくには単にカメラを移動すればOKです。BlenderはShadeのようにカメラのズームやアングルの調整用のGUIは無いですから直接カメラの設定パネルとカメラそのものを動かします。

ああ・・・そうか、カメラ移動用のUI作れば便利そうですね。4分割が面内で移動させていくのは結構めんどくさいですものね。ちなみに複数のカメラを置いてカメラの切換えは、まず、見ている3DVIEWを0(ゼロ)キーカメラ画面にして、次に別のアクティブにしたいカメラを選択してCtrl+0(ゼロ)でカメラ画面が切り替わっていきます。キー打ちのアニメーションにも対応していますのでFカーブ画面でもあとで調整したりもできます。カメラの切換えが面倒な時は複数のカメラをいくつかのフレームに設定してフレームを切換えながらモデリングするとカメラの切換えが楽になります。
ま、画面そのものをグルグル廻しながらモデリングする方が一般的だと思うので、カメラの切換えなんかは、シーン設定する時に見え方の確認とかの段階で使うかなって感じで思ってください。
ま、2.5xだと分割別画面で調整用に画面を開いておけるのであまり意味無いかもしれないけど・・・カメラ設定パネルにUIパネルを追加する方向で考えればいいのかもしれませんね。
思わずいいヒント頂きました。ちょっと頼んでみよっと。移動距離のMinMaxをどうするか、が、問題かな・・・何となくイメージできてきた。
ありがとうございます。

『1114mailへの返信』へのコメント

  1. 名前:chika 投稿日:2010/11/17(水) 10:57:51 ID:c889fefa8 返信

     やぎPさん、Python-scipt、調べていくうち
    だいぶ要領が解ってきました。
    球メッシュを呼び出し、
    指定位置にセットの方法など
    カメラの引きはカメラのロケーションを変更すれば良いですね
    カメラにはロケーションと向きのプロパティはありますが
    「lookAt」がないですね。始点のターゲットです
     
    解らないのがスクリプトでマテリアルの作り方
    DOCに書いてない
    実際に操作して手動で作れってことでしょうか
    頂点にカラーセットしていくには球の場合たくさん頂点がある
    それをFor文でセットしてゆくのでは原始的だ
    メッシュのマテリアルのプロパティに設定したマテリアルを
    代入するのが、偉い。
     ガラス状のマテリアルを設定したいです。
    beadsです。
    beadsで絵を描き「スーラ」の点描みたいな絵を描くことを
    目指しています。
    上記なこと、参考になるサイトを知りませんか
     さておき
     
    博多弁で「BlenderでGUIができるのをしっとうや」
    「やぎP」Buttonを作って・・何がでるか
     
    MeshもNMeshもfaceの頂点の数は4個までですね。
    ポリゴンの3角形分割がC#に移植がうまく、できましたので
    多角形のポリゴンメッシュ作成を近く公開します
    急ぎ、乱筆、でわ。

  2. 名前:ヤギP 投稿日:2010/11/17(水) 14:07:37 ID:b8a06d836 返信

    Blender2.4xまでのメッシュは三角と四角です。多角形ポリゴンは受け付けません。2.5xでのB-Meshからは変更されていますが、現在開発途中ですのでメッシュ系は触らないように古い方で対応させています。
     
    カメラの視点のターゲットですが、一般的には3DVIEW内でカメラを回転などして視野を確定します。DOFを付けた場合はフォーカス距離が必要ですが、それ以外は視野内を全て映し出すので、視野の変更で特に問題ありません。
    実際の現場では、Empty(カメラ用)とカメラを関係付けてEmptyを移動させるとカメラのターゲットが変わるように作ります。オブジェクトがひとつの場合はオブジェクトにロックさせることもできます。
    コンストレイトから設定します。
     
    マテリアルの設定ですか?
    スクリプトからの設定ですよね
    http://www.geocities.co.jp/SiliconValley-Cupertino/2019/blender/PythonDocJpn/frames.html
    とか、
    http://tanakaakio.slmame.com/e482850.html
    がご参考になりますでしょうか。
    私たちの場合は既によく使う設定のマテリアルはライブラリ化してあるので、Append/Linkでマテリアルやテクスチャは取り込んで利用しています。UVの展開系ではスクリプトを使いますけど、マテリアルではあまりスクリプト使ったことないのでわかりません。ごめんなさい。
    現在マテリアル/テクスチャのノードの拡張とVSEの拡張でスクリプトの勉強中です。

  3. 名前:ヤギP 投稿日:2010/11/17(水) 15:33:14 ID:b8a06d836 返信

    あ、忘れていました。
    Blender2.4xではガラスの設定はA(アルファ)値とray-transpのIOR等の設定値とray-mirrorの設定値、translucencyの設定値、amb(アンビエント・環境の影響)の設定値で設定します。もちろんカラー(col,Spe,Mir)もですね。
    ガラスの種類によって、テクスチャでバンプマップ入れたりノーマルマップ入れたり、テクスチャのマップします。
    半透明ガラスはSSS使わないときれいにならないのでSSSを設定してください。プリセットもあるので、プリセットを利用すると便利です。

  4. 名前:chika 投稿日:2010/11/18(木) 12:04:48 ID:d435bd7d9 返信

     やぎPさん
    マテリアルの情報ありがとうございました
    そして、Blenderの世界がとても、広いのを知りました

    Blenderのスクリプト「wLineCube.py」をメールしました
    今回は2本の線を結んでBoxを作るものです
    頭の中にあるリリース予定は
     ・ K_Dooa():かまちドア
     ・ line2wall():線に対し厚みを与え壁を作ります
     ・ pathLine2wall():連続線に対し厚みを与え壁を作ります
    です
    なかなか、建築から逃れません
    上記スクリプトですが実行の後、出来るメッシュは
    形が解り難いので、レンダリングして確認してください
    スケールは1/100です

  5. 名前:chika 投稿日:2010/11/20(土) 10:17:07 ID:3eb841288 返信

     やぎPさん
    k_dooa.py(かまちドア)をメールしました
    確認ください
    平面座標系で作っているので平面に寝ていますので
    起す必要あり
    早足で、スクリプトを作りましたが
    外部変形と同等な気軽にプログラムできて
    いろんな形状を作れて、楽しいですね
    これから、建築から離れて
    メタボールで「アバター」をスクリプトで作ってみようと想います
    TVでやってました、福岡は「ゲーム産業」で雇用促進を狙っているようです
    Blenderで「シリアスゲーム」を作りたい
    http://macma-lab.heteml.jp/sgp_official_website/main/

  6. 名前:ヤギP 投稿日:2010/11/22(月) 14:55:52 ID:7db8c07a9 返信

    k_dooa.py拝見させて頂きました。
    えっと框の4辺についてオブジェクトが分かれているんですね。
    もし、ドアとして作成される場合は、最終的に框のオブジェクトに内包される面は作成されないでもいいのではないかと思います。
    また、框のオブジェクトはひとつにまとめられた方がいいと思いました。
    私が利用する建具類のデータでは、縦框が勝っているタイプとコーナー部分で斜めに接続されているものとがあります。縦框が勝っているタイプは、マテリアルを貼る都合、そのようにしてあります。微小ですが横材は面落ちしています。この部分は同一面でノーマルマップで面を落としたように見せる方がレンダリング計算は速くなります。
    斜めでくっつけているものは、テストモデル用でマテリアル無しで利用するタイプです。モデルはリンク先を変更すれば全部一度に変更できるので、テスト用モデルは軽量のモデルデータを利用します。
    ああ、それから、枠の内法寸法を指示して作成できると便利そうですね。

  7. 名前:chika 投稿日:2010/11/22(月) 20:23:58 ID:94384c376 返信

     どうも
    グループ化ですか
    一般的にCADなどではレイヤをあらかじめ作って
    その中に図形を入れることにより
    グループ化するですが
    BlenderPythonDocに「group」の記述がありますが
    やりかた、が解りません
     それと
    タテ勝ちと斜め突合せ
    博多駅へ散歩して調べたのですが
    「木建」は斜め突合せが多い
    ADなどの「金建」は「タテ勝ち」が多い
    ようです。設計者の意向によるでしょうか
     パラメーターにmd(作成モード)を付けて2本立てで作ります
    平面座標系から立面座標系に合わせて修正します
     PS.「bld_Pobj.blend」をメールしました
    アバター(P星人)をBLDに用意されているプリミティで作ろうと想い
    一式作り方をテストしたものです。

  8. 名前:ヤギP 投稿日:2010/11/23(火) 09:08:29 ID:2bfd4542f 返信

    グループにするのではなくて、単一のオブジェクトにするということです。今は、EDITモードに入らずにオブジェクトを作られているので、それぞれなにかを作るごとにオブジェクトの数が増えますよね。なので、EDITモードに入った状態でデータを作れば、オブジェクトはひとつの中でいろいろな形状が組み合わせていけるんです。
    Blenderのグループという意味は、ちょっと違っています。この説明も簡単ではないので今はやめておきます。実際の使い方では、私の場合で言えば、今回の建具をたとえると建具の縦框の左の頂点郡をA、縦框の右Bとして、横框の上部をC、下部をDとして、グループモードで各縦寸法横寸法を調整して使います。グループにしておくとスクリプトやモディファイヤから利用するときに便利になります。ちなみに上記の場合、Cの頂点郡は、AとBの頂点郡の上部と重複しています。このようにグループは頂点を重複しながら選択できます。
    そのほか、パーティクルのインスタンス用にグループしたり、アニメーション用に使ったりします。
    基準モデルを作成して、それを呼びだしてパラメトリック変形させて使うという方が建築モデル的には汎用性があるのかもしれません。

    bld_Pobj.blendとbeadeAction.blend見させていただきました。
    えっとbeadeAction.blendについて、球をあのようにアニメーションさせる手法は、あの軌道でキーを打つ、と、最初に初速度をあたえて、後はBlederに計算させる。こちらの方は既に重力が設定されているので、その他の空気の摩擦や設置面の反発に関する摩擦やめり込みの計算をさせるとかなり実際の減衰を作りながら跳ねますけど・・・
    bld_Pobj.blendは、基本形状の作成スクリプトですね。
    えっとどちらもそうなんですけどスクリプトリンクしないでいいと思いました。

     
    それから
    木製建具・・・
    留めですか・・・びっくり!
    普通木製建具は縦がちです。留めにすると現場で削り合わせできませんから。留めの木製建具は店舗とかで意匠としてつくることはあっても、ちゃんと建具として使うものでは、まずやらないと思います。
    金属製建具もサッシュ類は組み立てと内部の水処理の関係で縦を勝たすと思います。
    デザインとして留めにしているものも何度かつくりましたが、組み立てサッシュでは無くて枠と一体成型の開きサッシュ等でした。設置後の丁番調整以外の調整がむつかしいので、だいぶ逃げの寸法取った・・・枠が歪んだ時点で終わっちゃうから・・・枠は必ずといっていいほど歪むし・・・

  9. 名前:chika 投稿日:2010/11/23(火) 11:22:31 ID:d94fbb8ab 返信

     ありがとう、ございます
    自分でも、なんとなく、いけないこと・・・と、想うのは
    モデリングは、ソフトの仕様を無視して
    すべて、プログラムで作ってしまえという姿勢
    Shadeのときは、CGは初心者だったので
    使い方を熱心に覚えました。jw-cadでも同じです
    blenderでもいちからソフトで形を作って、特徴を理解して
    スクリプトに取り組むべきですね
    いかんせん・・・blenderは高機能すぎて、
    覚えるには時間が足りない
    やぎPさんの力を借りて、早く、習得したいと想います
    それで、よろしくお願いします。
    スクリプトでDOCを紐解くと、また、ITなどで
    解らないblender特有の「キーワード」がたくさんあります
    「armature」など、覚えきれないぐらい、たくさんあります
    当面、困っているのがアニメで行き着いたところに
    「A Happy Xmas」・・の旗、周りに、星のきらめきが散らばる
    スクリプトの3Dtextでこのキーワードの取得の方法
    いろいろ、やっても「Text」しかでない・・・できない
    うーん、あらかじめ作っておいて、タイミングで表示ONするか
    これも、解らん。・・・情けない・・・つまらん奴の私でした。
     
    建具のほうはDraw(GUI入力フォーム)をつけて
    実現しますね

  10. 名前:chika 投稿日:2010/11/23(火) 13:18:22 ID:d94fbb8ab 返信

     やぎPさん、上記の追伸で質問です
    今から、「入力Form」の作成での確認
    ラジオボタンは2つの項目で
     ・ 竪枠通し
     ・ コーナー突付
    デフォルトで「竪枠通し」にチェック
     ・ 片開き
     ・ 両開き
    デフォルトで「片開き」にチェック
    数値の入力項目
     ・ w(ドア幅)デフォルトで「900」(1,800)
     ・ h(ドア高)デフォルトで「2000」
     ・ tw(竪枠幅)デフォルトで「90」
     ・ yh(横枠高)デフォルトで「120」
    で、いいですか
     
    ついでにガラスのマテリの設定も同時にしたい
     ・ 透明・型(曇)・鏡面ガラス
    特に透明のマテリアルは「ハロー」などパラメがたくさんありそうで
    ソースができたらチェックお願いします。