Takunojiのプログラミング・プレイグラウンド(遊び場)

Javaプログラミングを基本にして、ゲーム作成に必要なことの調査結果、やったら面白そうなことなどを記載します。プログラミングのススメ的なことも記載します。プログラミングで楽しく遊ぶために色々と記載して行きます。

Blender Python Basic and Script〜基本とスクリプト〜

前回、サンプルゲームをダウンロードして中身を見て見ました。

takunoji.hatenablog.com

そして、続きをやろうと思っていたのですが、一時中断します。
「ブレンダーの基本操作などやらないとゲームも作れない」事に気がつきました。
もちろん、プログラムに作成作業をさせる上でも。。。キホンっすね(笑)

そして、blenderのインストールに触れていないと思うので、簡単に触れておきます。
以下のサイトにアクセスします。

www.blender.org

ダウンロードして、インンストーラーをクリック。
これだけでいけます。

でわでわ、まずブレンダーをひらくのですがコマンドライン、もしくはターミナルから起動します。

自分の使用しているPCはMacなのでWindowsの例を示すことができませんが、以下の通りです。
1. Windowsボタンと「r」ボタンを押下します。 →「ファイルを指定して実行」
2. 入力する部分に「cmd」と入力して「Enter」を押下→コマンドプロンプトが開く
3. エクスプローラー(フォルダ)を開きC:¥Program Files¥Blenderの起動ファイルを指定して実行(exeファイルの場所)

例:コマンドプロンプトに以下を入力してエンターキーを押す

C:¥ProgramFiles¥Blender¥blender.exe

ちなみにMacで起動する場合は、ターミナルを起動して、以下のコマンドを入力します。
/Applications/Blender.app/Content/Mac/blender」:インストールした場所で変わりますが、多くの場合Applicationsの下にインストールされているので上記のコマンドで起動することができます。
ちなみに自分の場合は、フォルダごとインストールしたので以下のようになります。

/Applications/blender-2.79-macOS-10.6/blender.app/Contents/MacOS/blender

そして、画面上部より、「Default」をクリックしてメニューを開きます。

f:id:Takunoji:20180312203333p:plain
「Scripting」をクリックします。

f:id:Takunoji:20180312203500p:plain

スクリプトがやりやすくなりました。
そして、Pythonのキホン→プログラムをやるときに必ずやるものです。
"Hello Wold"をコンソールに表示する→俗に言うハローワールドってやつです。
早速書いて起動して見ましょう。
※「>」はコマンド入力を記載していることを示します。
>print("Hello World")
これだけです。

f:id:Takunoji:20180312203901p:plain

 

それでは、次に行きます。
画面上に、ある「Cube」を動かしてみようと思います。
ここで、注意が一つあります。細かい理由は考えずにとりあえずコマンドを入力して
スクリプトが動くことを確認してください。
>py.context.object.location = (1,0,0)
>py.context.object.location = (0,1,0)
>py.context.object.location = (0,0,1)
>py.context.object.location = (1,1,0)
>py.context.object.location = (0,0,0)

ここで、ちょっと整理します。
「bpy.context.object」は画面に表示されているオブジェクトを示します。

f:id:Takunoji:20180312205112p:plain

画面上にはオブジェクトが一つしかないので「bpy.context.object」は限定されます。
ではここで、オブジェクトを追加してみようとお思います。

>bpy.ops.mesh.primitive_circle_add()

f:id:Takunoji:20180312205716p:plain

ちょっとわかりづらいですね。
>py.ops.mesh.primitive_cone_add()

f:id:Takunoji:20180312205905p:plain

そして、現在画面上にオブジェクトが3つあります。
ちょっと移動してオブジェクトがよく見えるようにします。

f:id:Takunoji:20180312210150p:plain
初めのスクリプトを実行して見ます。
>py.context.object.location = (0,0,0)

f:id:Takunoji:20180312210317p:plain

円が移動しました。
次に円錐を選択します。

f:id:Takunoji:20180312210448p:plain

そして同じスクリプトを実行します。

f:id:Takunoji:20180312210609p:plain

同様に立方体「Cube」を選択してスクリプトを実行する

f:id:Takunoji:20180312210654p:plain

どうやら選択中のオブジェクトを移動するスクリプトのようです。
今日はここまでにします。