Blender Python CubeでCubeを作る

前回は、シンプルにCubeを作成いたしました。

今回はプログラムっぽく...手で作成したくない様なCubeを作成します。

f:id:Takunoji:20170617214413p:plain

上記のスクリプトを起動するとエラーになります。ちょいと修正すれば動きます。
起動すると以下の様な感じで作成されます。

f:id:Takunoji:20170617214528p:plain

テスト的によくわからないけどサンプルコードを書いて見ると仕組みがわかって良い

今回のコードは以下です。

import bpy

for k in range(5):
for j in range(5):
for i in range(5):
bpy.ops.mesh.primitive_cube_add(
radius=0.25, location=(i,j,k))

本当はインデントがあったのですが。。。

まぁそれはさておき、今回筆者はBleander Pythonを初めて使用しました。
ソースを見る限り「どうやら3次元ループでCubeを作成する様だ」と予想がつきます。
ぶっちゃけて「location=」の部分は意味がわかっておりませんでしたが
起動して見て「あぁ」って感じです。

結果としては 5 x 5 x 5でCubeを並べただけですが、中々にアーティスティック🌟
サンプルコードを作った人はデザインもできるのでしょうな(笑)

余計なお世話かもしれませんが、一応。。。
「i=0, j=0, k=0」→「i=1, j=0, k=0」→「i=2, j=0, k=0」....
「i=0, j=1, k=0」→「i=1, j=1, k=0」→「i=2, j=1, k=0」....
「i=0, j=1, k=1」→「i=1, j=1, k=1」→「i=2, j=1, k=1」....
とlocationの値を更新しながCubeを作成し、最終的に画像の様なオブジェクトが作成されます。

Blender Python オブジェクトの作成

前回は、BlenderでPythonを起動しました。

今回は実際にコードを書きます。
前回も書きましたが、コンソールからBlenderを起動してください。
筆者は、ここで大分ハマりました(笑)
早速コードプリミティブ型の立方体「キューブ」を作成します。がエラー。。。

f:id:Takunoji:20170617211548p:plain

コンソールを見ると

f:id:Takunoji:20170617211638p:plain

「ああ、スペルミスね」となりますが、ここでコンソールが見れないと
ハマりました。。。修正して実行するとCubeが作成されます。

f:id:Takunoji:20170617211948p:plain

上記の様な感じです。

BlenderでPythonスクリプト

前回までBlenderを普通に使うの方法を勉強しました。
ここ最近は、Unreal Engineをセットアップ〜チュートリアルを行いました。

ある程度UE(UnrealEngine)の使い方を覚えると、まぁ作りたくなります。

だがしかし、筆者は絵が描けません、勉強する気もありません(笑)

絵が描けなくても3Dオブジェクトは作成することができる。
これを実証するため、このブログを書いております。
※本当はUE用の画面コンポーネント作成です(笑)

では早速、Blenderを起動します。
ここで注意、画面を起動するときにコンソールから起動します。
Pythonスクリプトを起動したときにコンソール出力するスクリプトの起動結果が見れないからです。

f:id:Takunoji:20170617205106p:plain

こんなコマンドで起動します。起動したら画面を増やします。
画面の右上f:id:Takunoji:20170617205818p:plainをドラッグして画面を増やします。

f:id:Takunoji:20170617205629p:plain

f:id:Takunoji:20170617205922p:plain

上記のメニューから「Pythonsコンソール」「テキストエディター」を選択します。

f:id:Takunoji:20170617210057p:plain

テキストの新規作成

f:id:Takunoji:20170617210258p:plain


そして、どのプログラムでもやるアレ⭐️
print("Hello Blender")

f:id:Takunoji:20170617210406p:plain

Blender Python事始めでした。
次回は、オブジェクトの作成をやります。

Urenal Engine with QtCreator ~その3:ビルド設定~できませんでした。

前回、はWindowsKitのインストールと環境変数の設定を行いました。
※不要な場合もあり

Guide to use QtCreator for Unreal Engine 4 !
「3./ Create a file BUILD_DLL.bat and copy this into :」の部分から始めます。

バッチファイルを作成します。(BUILD_DLL.bat )
処理内容は以下の通り。
「UnrealBuildTool.exe YourProjectEditor Win64 Development "�%\YourProject.uproject" -rocket」

※上記の緑色部分を使用するエディタに変更するようだが
  「QtCreator」でよいのだろうか?
初めに作成した。「pro, priファイル」がプロジェクトフォルダにあれば以下のように
Qtプロジェクトを開くことができるようです。
※自動生成したファイルが読み込まれています。

f:id:Takunoji:20170611182921p:plain

そして、QtCreatorの設定です。
まず、ワーキングディレクトリをプロジェクトルートへ変更します。

初めに、Qtで作成したワーキングディレクトリにUnrealEngineプロジェクト
配置しないといけないようです。

...では、QtCreatorでのビルドは一時中断にします。申し訳ない。。。
その代わりに、VusialStudioでは問題なくビルドできたのでそちらで作業をします。

【手順】

1.UnrealEngineでクラスを作成する前に、VusialStudioをインストールしておく
VisualStudio 2017 Comunitty GitのインストールOK Qtのインストールの失敗 - Takunojiの日記 を参照ください

2.以下のようにビルドをかける

f:id:Takunoji:20170611202955p:plain

3.UnrealEditorからアクセスしてみる

f:id:Takunoji:20170611203620p:plain

f:id:Takunoji:20170611203703p:plain

うーん、なんの問題もなく。。。QtCreatorはLinuxで開発するときにしようかな?

Unreal Engine with QtCreator ~QtCreator セットアップ その2~

前回は、不足しているライブラリ?(Windows Kit)をインストールしました。
インストールの結果、以下のようなフォルダが作成されました。

パスは、前回のパスと同じ場所になるはずです。
INCLUDEPATH += "C:\Program Files (x86)\Windows Kits\8.1\include\shared"

こんな感じです。
f:id:Takunoji:20170611170603p:plain

結局のところは、C:\Program Files (x86)\Windows Kits\8.1\
のフォルダに「shared」「um」「winrt」とフォルダがある状況です。

指定するパスも「includes」以下のフォルダに緑色の部分がインストールされていることを確認します。「shared」↓

f:id:Takunoji:20170611171155p:plain

「um」↓

f:id:Takunoji:20170611171243p:plain

「winrt」↓

f:id:Takunoji:20170611174904p:plain

そして、Guide to use QtCreator for Unreal Engine 4 !の続きです。
4.「includes.pri」を作成したところまででしたので
「1./ Add your C:\Program Files\Unreal Engine\4.2\Engine\Binaries\Win64」の部分から
つまるところ、環境変数「Path」に上記のパスを追加してね☆
という事なので。。。
環境変数を追加します。環境変数をクリック

f:id:Takunoji:20170611173409p:plain

「Path」を指定して、「編集」

f:id:Takunoji:20170611173426p:plain

新規ボタンを押してから上記のパスを追加します。

f:id:Takunoji:20170611173501p:plain

古いほうの場合、環境変数Pathの一番後ろに「;」セミコロンをつけて上記のパスを追記します。画像がなくて申し訳ない。。。
そのあとに、コマンドプロンプトを起動して
「echo %Path%」と入力して、上記のパスが存在することを確認して下さい。

長々と書きましたが「UnrealBuildTool.exe」があるときは環境変数の追加は要らないようで。。。

f:id:Takunoji:20170611175010p:plain

...と長くなったので今回はここまでにします。

今回は、Windows Kitのインストール確認とビルドのための環境変数設定(不要な場合も)
を行いました。
次回は、これの続きをやります。

Unreal Engine4 ゲーム作成~プロジェクト作成~

前回は、インストールに手間取っていたのを解決(ってほどでもないが。。。)
したので、今回からはゲーム作成に着手したいと思います。

起動したエディターに「C++」タブがあるのでとりあえず開く

f:id:Takunoji:20170606201707p:plain

そして参考にするサイトは以下になります。

Unreal Engine | 1 - 基本プロジェクト設定

1.プロジェクトの作成、以下の赤線枠をクリック

f:id:Takunoji:20170606204129p:plain

「スターターコンテンツ有り」を選択→右下にある「プロジェクト作成」
をクリック。。。

おー、チュートリアル開始!!各画面の部品の説明をしてくれました。

f:id:Takunoji:20170606210716p:plain

参考サイトでは、「Actor」の実装について記載していますので、そのようにやります。
まずは、模倣から入ります。

1.C++クラスを作成します。

使用するIDE(開発ツール)を設定します。Visual Studioを使う人もいるでしょうが。。。
以前インストールしたQtCreatorを使用します。
※手こずったんで使う機会がありイイネをつけたい☆

だが、ここのチュートリアルだと「.pro」ファイルが出力されていないと
Qtできないみたい。。。
とりあえずは、Visual StudioのCommunity(フリー)でやるか?

いや、QtCreatorでやりたいので今日はここまで。。。

 

Unreal Engine with QtCreator ~QtCreatorのセットアップ~

前回は、UnrealEngine~VisualStudioで作成したプロジェクト(出力したフォルダ)
を確認しました。以下のような構成です。

f:id:Takunoji:20170610125256p:plain

そして、参考にするサイトはこちら:uide to use QtCreator for Unreal Engine 4 !

いつも通りに、全部英語なので。。。頑張って読みます(笑)

【なんでQtを使用するのか?】
・起動が早い、リファクタリングツールがたくさんある、ショートカットキーで
 メソッドへの画面スイッチができる(F2~F4などで)
という事らしいが、筆者の場合は、QtCreatorのインストールに苦労したからであります。(笑)→「QtCreator 動かない 解決☆ - Takunojiの日記

【手順】
1.まずは、UnrealEngine~VisualStatioでプロジェクトを作成します。
  ※前回の記事で作成済みです。
2.各設定ファイルを作成します。
  参考にするサイトに記載してありますが、以下のような記載があります。

f:id:Takunoji:20170611105838p:plain

まとめると、「プロジェクト名.pro」と「defines.pri」「includes.pri」を作ってね☆
となる。
そしてここで注意が必要になります。
includes.priの最後の部分
 INCLUDEPATH += "C:\Program Files (x86)\Windows Kits\8.1\include\shared"
 INCLUDEPATH += "C:\Program Files (x86)\Windows Kits\8.1\include\um"
 INCLUDEPATH += "C:\Program Files (x86)\Windows Kits\8.1\include\winrt"
上記のコードは、ウィンドウズキットをインクルードする部分なので
上記のパスに必要なファイルがそろってないといけません。

Windows Kit」ってなに?と思った筆者は調べました。

Windows SDK for Windows 8.1 – Windows アプリ開発 ←ここからダウンロード

f:id:Takunoji:20170611111606p:plain

こいつをインストールしてやるときに確認してください

赤線部分のパスが「includes.pri」の最後の部分
C:\Program Files (x86)\Windows Kits\8.1\」と同じになっている事
※インストール時に8.1以下のフォルダを作成します。

f:id:Takunoji:20170611112049p:plain

結構重い。。。

f:id:Takunoji:20170611112027p:plain

そんなわけで、今回はここまで☆
次回は、実際にUnrealEngine~VisualStatioで作成したプロジェクトを
QtCreatorでビルド(起動ファイルの作成処理)→アプリの起動を行いたいと思います。