2009年04月26日
SLアバターの読込み
リンデン社が提供しているAvatar Meshを利用してBlenderでポーズやアニメーションを
やってみたいと思います。忘れないうちにメモってみます。
SL用のアバターメッシュファイルをここからダウンロードします。
「Seconf Fife Avatar Mesh」
ダウンロードした「Avatar_mesh.zip」を解凍します。
解凍したフォルダーの中で「SL Avatar」に移動します。
男性用(Male)と女性用(Female)がありますが好みで使い分けしてください。
ここで使用するファイルは
拡張子が「.obj」と「.cr2」です。
「.obj」がアバターのメッシュファイル
「.cr2」がPoser用のファイルですが、ボーン(骨格でいいかな^^;)として読み込みます。
「.cr2」は直接Blender で読み込みできませんので、専用のpythonスクリプトで読み込みます。
まずは、アバターメッシュファイルを読み込みします。
Blender2.48では、直接メッシュファイルを読み込めます。
Blenderを起動します。xキーでキューブオブジェクトを消します。
File→Import→Wavefront(.obj)...を選択
ファイルを指定します。
ここでは女性用の「SL_Female.boj」を選択しました。
「Import a Wavefront OBJ」ボタンを押して読み込みます。
ダイヤログが出ますので、「Import」ボタンを押します
メッシュデータが読み込まれますが、スケールが小さいので読込直後は確認しづらいです。
テンキーの「+」を何回か押すか、マウスホイールで拡大します。
テンキーの「1」を押して正面に向けてみました。
次は、ボーンの読み込みをメモします。
やってみたいと思います。忘れないうちにメモってみます。
SL用のアバターメッシュファイルをここからダウンロードします。
「Seconf Fife Avatar Mesh」
ダウンロードした「Avatar_mesh.zip」を解凍します。
解凍したフォルダーの中で「SL Avatar」に移動します。
男性用(Male)と女性用(Female)がありますが好みで使い分けしてください。
ここで使用するファイルは
拡張子が「.obj」と「.cr2」です。
「.obj」がアバターのメッシュファイル
「.cr2」がPoser用のファイルですが、ボーン(骨格でいいかな^^;)として読み込みます。
「.cr2」は直接Blender で読み込みできませんので、専用のpythonスクリプトで読み込みます。
まずは、アバターメッシュファイルを読み込みします。
Blender2.48では、直接メッシュファイルを読み込めます。
Blenderを起動します。xキーでキューブオブジェクトを消します。
File→Import→Wavefront(.obj)...を選択
ファイルを指定します。
ここでは女性用の「SL_Female.boj」を選択しました。
「Import a Wavefront OBJ」ボタンを押して読み込みます。
ダイヤログが出ますので、「Import」ボタンを押します
メッシュデータが読み込まれますが、スケールが小さいので読込直後は確認しづらいです。
テンキーの「+」を何回か押すか、マウスホイールで拡大します。
テンキーの「1」を押して正面に向けてみました。
次は、ボーンの読み込みをメモします。
2009年04月26日
サンプルプログラムの実行
日本語版APIの解説の中で、モジュール MeshでExampleのプログラムが
提示してあります。
このサンプルプログラムを実行したいと思います。
最新版対応のため、サンプルプログラム自体は英語版を使用しました。
Blender はあらかじめPythonスクリプトが実行できる状態にセットアップします。
The Blender Python API Referenceの中の「Mesh」のサブモジュールを参照します。
Example:
サンプルプログラム・・・・・・
サンプルプログラムをcopyします。
Blender のテキストエディタ領域にペーストします。
マウス右クリックで「Paste」を選択します。
Altキー + pキー でスクリプトを実行してみます。
うまく 動作しないようです^^;
標準出力ウィンドーを見ると
1行目の「from Blender import *」でインデントエラーになってるようです。
Pythonではインデントは重要になります。
行のはじめの空白は1つのプログラムブロックとして認識されます。
ここでは、プログラムブロックとして記述するところではないので
エラーとなります。
for文やif文などで条件にあったスクリプトブロックを記述するときなどに
行の先頭から空白(例:TABは使わずスペース4つ)をいれてスクリプト
を記述します。
また、#に続く文はコメントと扱われ、スクリプトの実行の際は無視されます。
サンプルプログラムの先頭の空白を取り除きます。
Altキー + pキー でスクリプトを実行してみます。
標準出力ウィンドーを見るとエラーは無いようです。
左の画面上でマウスをクリックすると、四角すいを上から
みたオブジェクトが現れます。
テンキーで方向を変えて見られます。
提示してあります。
このサンプルプログラムを実行したいと思います。
最新版対応のため、サンプルプログラム自体は英語版を使用しました。
Blender はあらかじめPythonスクリプトが実行できる状態にセットアップします。
The Blender Python API Referenceの中の「Mesh」のサブモジュールを参照します。
Example:
サンプルプログラム・・・・・・
サンプルプログラムをcopyします。
Blender のテキストエディタ領域にペーストします。
マウス右クリックで「Paste」を選択します。
Altキー + pキー でスクリプトを実行してみます。
うまく 動作しないようです^^;
標準出力ウィンドーを見ると
1行目の「from Blender import *」でインデントエラーになってるようです。
Pythonではインデントは重要になります。
行のはじめの空白は1つのプログラムブロックとして認識されます。
ここでは、プログラムブロックとして記述するところではないので
エラーとなります。
for文やif文などで条件にあったスクリプトブロックを記述するときなどに
行の先頭から空白(例:TABは使わずスペース4つ)をいれてスクリプト
を記述します。
また、#に続く文はコメントと扱われ、スクリプトの実行の際は無視されます。
サンプルプログラムの先頭の空白を取り除きます。
Altキー + pキー でスクリプトを実行してみます。
標準出力ウィンドーを見るとエラーは無いようです。
左の画面上でマウスをクリックすると、四角すいを上から
みたオブジェクトが現れます。
テンキーで方向を変えて見られます。
2009年04月19日
設定環境を調べてみる。
BlenderでPythonスクリプトを勉強してみたいと思います^^;
簡単なスクリプトととして、Blenderの設定環境を調べるプログラム
を作ってみました^^
BlenderのAPIとしてはトップモジュールの「Blender」の中の、
Get関数(Blenderの設定を取得します)を使用してみます
Get関数の引数を見ると Blenderのバージョン取得やホームディレクトリ、
後でスクリプトを作成したときの格納場所としてのスクリプト用ディレクトリ
などがあります。
これらを標準出力に表示してみます。
初めてのPythonスクリプトを参考にBlenderをセットアップします。
まずは、使用しているBlenderのバージョンを調べます。
必要なBlender APIを読み込みます。
ここでは トップモジュールの「Blender」を読み込みます。
import Blender
次にprint文の中でGet関数を呼んで表示します。
print ”Blender Version:”,Blender.Get("version")
まとめると
結果は
続いて、Blinder のホームディレクトリの表示です。
Get関数の引数を変えるだけです^^
print ”Blender Home Dir:”,Blender.Get("homedir")
まとめると
結果は
*インストールした条件でディレクトリーは異なります。
最後に スクリプトのディレクトリーです。
こちらもGet関数の引数を変えるだけです^^
print ”Blender Scripts Dir:”,Blender.Get("scriptsdir")
まとめると
結果は
*インストールした条件でディレクトリーは異なります。
Blender でキューブのオブジェクトをスクリプトで作成するつもりでしたが
日本語版APIの解説の中で、モジュール MeshでExampleのプログラムが
提示してありましたので、次はこのExampleを実行させて見たいと思います。
簡単なスクリプトととして、Blenderの設定環境を調べるプログラム
を作ってみました^^
BlenderのAPIとしてはトップモジュールの「Blender」の中の、
Get関数(Blenderの設定を取得します)を使用してみます
Get関数の引数を見ると Blenderのバージョン取得やホームディレクトリ、
後でスクリプトを作成したときの格納場所としてのスクリプト用ディレクトリ
などがあります。
これらを標準出力に表示してみます。
初めてのPythonスクリプトを参考にBlenderをセットアップします。
まずは、使用しているBlenderのバージョンを調べます。
必要なBlender APIを読み込みます。
ここでは トップモジュールの「Blender」を読み込みます。
import Blender
次にprint文の中でGet関数を呼んで表示します。
print ”Blender Version:”,Blender.Get("version")
まとめると
結果は
続いて、Blinder のホームディレクトリの表示です。
Get関数の引数を変えるだけです^^
print ”Blender Home Dir:”,Blender.Get("homedir")
まとめると
結果は
*インストールした条件でディレクトリーは異なります。
最後に スクリプトのディレクトリーです。
こちらもGet関数の引数を変えるだけです^^
print ”Blender Scripts Dir:”,Blender.Get("scriptsdir")
まとめると
結果は
*インストールした条件でディレクトリーは異なります。
Blender でキューブのオブジェクトをスクリプトで作成するつもりでしたが
日本語版APIの解説の中で、モジュール MeshでExampleのプログラムが
提示してありましたので、次はこのExampleを実行させて見たいと思います。
2009年04月13日
Gimpで四角枠で囲む方法
ブログで操作手順などの説明でGimpの画像の一部分を四角の枠で
囲んだりしますが、その四角枠の囲みの簡単な方法がわかりましたのでメモします。
囲む対象(ここでは”この文章を囲んでみる”という文章)を矩形選択します。
ツールボックスの最上部の一番左の点線の四角のアイコン(赤枠)を
クリックして、マウスで囲む対象を選択します。
選択した上でマウス右クリックしてプルダウンメニューから
編集→選択範囲の境界線を描画 を選択します。
設定ウインドウが開きますので、線の幅を選択します。
線の色はツールボックスの描画色となります。
選択状態を解除するには、選択枠 外をマウス 左クリックで解除します。
囲んだりしますが、その四角枠の囲みの簡単な方法がわかりましたのでメモします。
囲む対象(ここでは”この文章を囲んでみる”という文章)を矩形選択します。
ツールボックスの最上部の一番左の点線の四角のアイコン(赤枠)を
クリックして、マウスで囲む対象を選択します。
選択した上でマウス右クリックしてプルダウンメニューから
編集→選択範囲の境界線を描画 を選択します。
設定ウインドウが開きますので、線の幅を選択します。
線の色はツールボックスの描画色となります。
選択状態を解除するには、選択枠 外をマウス 左クリックで解除します。
2009年04月12日
GIMPで画面を保存する方法^^
ブログを作成していると、どうしても画面を保存して貼り付けることが
あります。
GIMPでそのやり方をメモしてみます。
サンプルの画面はディスプレーいっぱいにSLを広げたものです。
Windows での話で申し訳ないのですが
キーボードのPrtScrnキーを押して、画面をクリップボードに保存します。
(MACでもできると思いますが現物ありませんのでどなたか教えていただけませんか^^;)
Gimpを起動します^^
編集→クリップボードから生成→画像 を選択します。
クリップボードの画像が取り込まれます。
必要な所だけ切り取りします。
ツールボックスの最上段左側の点線のボックスをクリックします。
そして、切り取りたい部分をマウスで範囲指定します。
編集→切り取りを選択します。
編集→クリップボードから生成→画像 を選択します。
新しいウインドウで切り取った画像が貼り付けられます。
後は、jpgなどで保存するとできあがりです^^
あります。
GIMPでそのやり方をメモしてみます。
サンプルの画面はディスプレーいっぱいにSLを広げたものです。
Windows での話で申し訳ないのですが
キーボードのPrtScrnキーを押して、画面をクリップボードに保存します。
(MACでもできると思いますが現物ありませんのでどなたか教えていただけませんか^^;)
Gimpを起動します^^
編集→クリップボードから生成→画像 を選択します。
クリップボードの画像が取り込まれます。
必要な所だけ切り取りします。
ツールボックスの最上段左側の点線のボックスをクリックします。
そして、切り取りたい部分をマウスで範囲指定します。
編集→切り取りを選択します。
編集→クリップボードから生成→画像 を選択します。
新しいウインドウで切り取った画像が貼り付けられます。
後は、jpgなどで保存するとできあがりです^^
2009年04月12日
すてきなエンジェル
B@Rブランドの素敵なエンジェル服です^^
胸飾りとか、羽もすごく素敵です^^
幻想的ですごくきれいな「JAPAN TEMPURA ISLAND」で撮影してみました
エンジェルドレスは「 B@R Diamond Angel 」です。
B@RへのLM
http://slurl.com/secondlife/Bare%20Rose/145/11/30
JAPAN TEMPURA ISLANDへのLM
http://slurl.com/secondlife/tempura%20island/125/41/32
JAPAN TEMPURA ISLANDのブログ
http://japan-tempura.blogspot.com/
胸飾りとか、羽もすごく素敵です^^
幻想的ですごくきれいな「JAPAN TEMPURA ISLAND」で撮影してみました
エンジェルドレスは「 B@R Diamond Angel 」です。
B@RへのLM
http://slurl.com/secondlife/Bare%20Rose/145/11/30
JAPAN TEMPURA ISLANDへのLM
http://slurl.com/secondlife/tempura%20island/125/41/32
JAPAN TEMPURA ISLANDのブログ
http://japan-tempura.blogspot.com/
2009年04月11日
初めてのPythonスクリプト
BlenderではPython(パイソン)スクリプトを使って、操作の自動化や新しい機能の追加などができるように
なっています。
Pythonはプログラム言語として、インタプリタ形式で実行できるスクリプト言語です。
詳しくは、下記のページを参照してみてください。
・本家(英語です)
・日本Pythonユーザ会(PyJUG)
(オンライン ドキュメントなどが置いてあります)
blenderで使用できるPyhonモジュール(Blender Python API)のリンク集
・英語版(最新Ver2.46)
・日本語版(Ver2.43)
参考書
Python書はアマゾンで検索すると20冊以上(まだまだ 増えそう^^)ヒットします。
どれを購入するか迷ったのですけど、たまたま 書店で置いてありました
「速効!Pythonプログラミング(秀和システム)」を購入しました。ご参考に^^;
では、早速 blender上でPythonスクリプトの動作方法をメモってみます。
blenderを起動して、表示されるキューブを消しましょう。
xキーで消去します。
画面を2分割します。
Split Areaをマウス左クリックで選択すると縦の境界線が出ますので真ん中あたりでマウス
左クリックで確定させます。
右の画面の格子状のアイコンをクリックしてメニューから「Text Editor」を選択します。
Text Editorの画面内でマウス右クリックして表示されるメニューから「New」を選択します。
赤いカーソルが最上段に出ますのでスクリプトを記述します。
ここでは、標準出力ウインドウに文章を出力してみます。
次のような文を記述してみてください
「”」と「”」の間の文章は任意でかまいません。その内容が出力されます。
print ("Welcome to the world of blender! ")
即時 実行は Altキー + pキーで 行います。
標準出力ウィンドウに先ほどの文章が出力されると思います。
次はBlender Python APIを使ってキューブを表示したいと思います。
なっています。
Pythonはプログラム言語として、インタプリタ形式で実行できるスクリプト言語です。
詳しくは、下記のページを参照してみてください。
・本家(英語です)
・日本Pythonユーザ会(PyJUG)
(オンライン ドキュメントなどが置いてあります)
blenderで使用できるPyhonモジュール(Blender Python API)のリンク集
・英語版(最新Ver2.46)
・日本語版(Ver2.43)
参考書
Python書はアマゾンで検索すると20冊以上(まだまだ 増えそう^^)ヒットします。
どれを購入するか迷ったのですけど、たまたま 書店で置いてありました
「速効!Pythonプログラミング(秀和システム)」を購入しました。ご参考に^^;
では、早速 blender上でPythonスクリプトの動作方法をメモってみます。
blenderを起動して、表示されるキューブを消しましょう。
xキーで消去します。
画面を2分割します。
Split Areaをマウス左クリックで選択すると縦の境界線が出ますので真ん中あたりでマウス
左クリックで確定させます。
右の画面の格子状のアイコンをクリックしてメニューから「Text Editor」を選択します。
Text Editorの画面内でマウス右クリックして表示されるメニューから「New」を選択します。
赤いカーソルが最上段に出ますのでスクリプトを記述します。
ここでは、標準出力ウインドウに文章を出力してみます。
次のような文を記述してみてください
「”」と「”」の間の文章は任意でかまいません。その内容が出力されます。
print ("Welcome to the world of blender! ")
即時 実行は Altキー + pキーで 行います。
標準出力ウィンドウに先ほどの文章が出力されると思います。
次はBlender Python APIを使ってキューブを表示したいと思います。