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

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

JavaFx 開発チュートリアル 〜2: 入力イベントを操る(前振りのみ)〜

前回「Hello JavaFx」をやりました。
なので、今回は入力に対する処理を実装してみようと思います。

前回のソースから ソースはここからダウンロードできます。
ダウンロードはここ

 

javaの書き方とか、わからんちゃ」という人は下の記事を参考にしてみてください。

http://takunoji.minim.ne.jp/wp/2018/05/02/java-hello-world-はじめのプログラム-〜-step1-1〜/

練習用のプログラムもダウンロード出来る様になっています。(eclipse)

 

javaソース↓

public class Lesson1 extends Application {

/**

* はじめのプログラムは「Hello World」<br/>

* どの言語でもやるのです。<br/>

* 主な用途としては、プログラムの疎通確認をやります。<br/>

* ※プログラムの実行環境を作成した後にプログラムが走るか確認<br/>

*

@param args: プログラム引数

*/

public static void main(String args) {

launch(args);

}

/**

* Lesson1. JavaFxでのはじめの一歩<br/>

* Getting started JavaFx on Tutorial<br/>

* この文章がさ記載されている部分をJavaDocコメントと言います。<br/>

*

@see https://docs.oracle.com/javafx/2/get_started/hello_world.htm

@author Takunoji

*/

public class Lesson1 extends Application {

/**

* はじめのプログラムは「Hello World」<br/>

* どの言語でもやるのです。<br/>

* 主な用途としては、プログラムの疎通確認をやります。<br/>

* ※プログラムの実行環境を作成した後にプログラムが走るか確認<br/>

*

@param args: プログラム引数

*/

public static void main(String args) {

launch(args);

}

 

/**

* プログラミング学習の基本は「写経」です。<br/>

* 意味はわからなくても「とりあえず」自分でコードを描いてください。<br/>

* インポートするのはjavafx.XXXを選択します。(IDEを使用している場合)

*/

public void start(Stage primaryStage) {

primaryStage.setTitle("Hello World");

 

Button btn = new Button();

btn.setText("Say Hello World!");

btn.setOnAction(new EventHandler<ActionEvent>() {

@Override

public void handle(ActionEvent event) {

System.out.println("Hello World");

}

});

 

StackPane root = new StackPane();

root.getChildren().add(btn);

primaryStage.setScene(new Scene(root, 300, 200));

primaryStage.show();

}

}
※「描いて」→「書いて」

前回は、とりあえずで写経をしたので内容についてふれませんでした。
今回は、内容からいきます。

1.毎度おなじみ「メインメソッド」です。
public static void main(String[] args) {
       ...処理
}
Javaを起動するときは必ずこれが動きます。※サーバーとかは別の場所で起動します。
初めて、Javaを学ぶ人は、頭ごなしに覚えてしまっても無駄になりません。
筆者は今でも覚えております。→昔、呪文のように唱えて覚えました(笑)

ちなみに、処理内で実行している「launch(args)」は親クラスのメソッドです。
【追申】
子供クラス名 extends 親クラス名 {
    private データ型 フィールド変数;
    private String fieldClassName:
    public static final String CONSTANT_NAME;
    private void methodName (String parameter) {
          プライベートメソッドの処理
   }
  public 返却値 メソッド名(データ型 引数名) {
          パブリックメソッドの処理
  }
}
・メソッド = 関数 = 何かの処理を行う(記載する)もの
・プライベートメソッドは、クラスの外から呼ぶことができない
・パブリックメソッドはクラスの外から呼ぶことができる
・CONSTANT = 定数(この値で変わることがない)

2.startメソッド
親クラス(javafx.application.Applicationを継承している)のメソッドをオーバーライドしている
オーバーライドすると、親クラスからこクラスの「startメソッド」を起動することができる
なので、フレームワークを使用するときによく「〜をオーバーライドして〜」なんて会話がある。詳細に関しては、後々に...
そして、ボタンを作成し、ボタンを押下したときに処理が走る
「アクション」をセットしています。
btn.setOnAction()の部分です。そして左の処理は、下のように書き換えが可能です。
btn.setOnAction(keyEvent -> { Systme.out.println("Hello World"); };
今、流行りなのか、常識なのかわかりませんが、ラムダ式というやつですね。

そして、今回は、このsetOnActionのバリエーションをやろうと思ったのですが、
ここまでにしときましょう(笑)

あ、ちなみに次回は、以下のような画面が表示されるものを作ろうと思います。
テキストエリアに文字を入力してそれに対するイベント処理を行う。。。

f:id:Takunoji:20180430170627p:plain

こんな感じです。コンソールに入力した文字が表示されています。

でわでわ。。。

関連ページ一覧

JavaFXでハローワールド〜OpenCVまで

  1. Java 初めてでも大丈夫〜ステップアッププログラミングのススメ〜
  2. ステップアッププログラミング〜Java FxでHelloWorld解説〜
  3. Java StepUpPrograming〜JavaFX で四則計算〜
  4. Java StepUpPrograming〜JavaFXで画面切り替えを作る1〜
  5. Java StepUpPrograming〜JavaFXで画面切り替え2ボタン作成〜
  6. Java StepUpPrograming〜JavaFXで画面切り替え3アクション〜
  7. Java StepUpPrograming〜JavaFXで画面切り替え4Pane切り替え〜
  8. Java StepUpPrograming〜JavaFXで画面切り替え5WebEngine〜

Eclipse セットアップ

  1. Java Install Eclipse〜開発ツールのインストール〜
  2. TensorFlow C++環境〜EclipseCDTをインストール〜
  3. Setup OpenGL with JavaJOGLを使う準備 for Eclipse
  4. Eclipse Meven 開発手順〜プロジェクトの作成〜
  5. Java OpenCV 環境セットアップ(on Mac)
  6. Eclipse SceneBuilderを追加する
  7. JavaFX SceneBuilder EclipseSceneBuilder連携~
 

PS VITA PCと接続

<PSP VITAへの接続>
ここのサイトから、VITAへの接続アプリ(コンテンツアシスト)をダウンロードする。

f:id:Takunoji:20180428102040p:plain

起動してインストール

f:id:Takunoji:20180428102220p:plain

f:id:Takunoji:20180428102233p:plain

f:id:Takunoji:20180428102244p:plain

インストールすると以下のようなアイコンができます。

f:id:Takunoji:20180428102342p:plain このアイコンをクリックすると右上には f:id:Takunoji:20180428102610p:plain

が表示されます。
この状態で、VITAからPCへ接続すると以下のようなダイアログが出るので「はい」

f:id:Takunoji:20180428102807p:plain

これでパソコンとVITAの接続ができます。

JavaFx 開発チュートリアル 〜1: Hello JavaFx〜

前回、JavaMeの開発環境の構築を試みましたが、敢え無く断念(今日のところは)
そして、並行して進めたいのがJavaFxを使用する事です。

JavaFxはJavaSE(JDKをダウンロードしたらついてます。)に梱包されています。
そして、画面を作って起動できる(JavaMeで起動すればラズパイなどでも起動可能)
使用するものは「JavaFX Embedded SDK」になるようですが。。。
詳細はこちらのサイトにあります。
JavaFXPorts

とりあえず、デプロイする方法が違うという認識です。

そして、JavaFxを始めるのには、JDK1.8以上のものをダウンロードしてくれば
それでOKという事です。


開発ツールのインストール方法は下を参照してください
Java 開発ツールのインストール – PGボックス

 

でわでわ、コーディングと行きますか?

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

docs.oracle.com

ついでなので、Javaの勉強を始めようと思っている人にも
Javaをある程度学習した人にオススメしています。
初めてやる人は、画面上に色々と表示してみましょう。
ある程度学習した人は、次のステップに行きましょう。
→ある程度とは、プログラムの基礎文法を理解して、List, Mapなどの扱いができる程度

まずは、毎度おなじみ「写経」です。
読む→書く→動かす→理解する→新しいことをやる。。。
とループする感じです。

作成した、コードは以下になります。ダウンロードはここ

package zst.prac.tutorial;

 

import javafx.event.EventHandler;

 

import javafx.application.Application;

import javafx.event.ActionEvent;

import javafx.scene.Scene;

import javafx.scene.control.Button;

import javafx.scene.layout.StackPane;

import javafx.stage.Stage;

 

/**

* Lesson1. JavaFxでのはじめの一歩<br/>

* Getting started JavaFx on Tutorial<br/>

* この文章がさ記載されている部分をJavaDocコメントと言います。<br/>

*

* @see https://docs.oracle.com/javafx/2/get_started/hello_world.htm

* @author Takunoji

*/

public class Lesson1 extends Application {

/**

* はじめのプログラムは「Hello World」<br/>

* どの言語でもやるのです。<br/>

* 主な用途としては、プログラムの疎通確認をやります。<br/>

* ※プログラムの実行環境を作成した後にプログラムが走るか確認<br/>

*

* @param args: プログラム引数

*/

public static void main(String args) {

launch(args);

}

 

/**

* プログラミング学習の基本は「写経」です。<br/>

* 意味はわからなくても「とりあえず」自分でコードを描いてください。<br/>

* インポートするのはjavafx.XXXを選択します。(IDEを使用している場合)

*/

public void start(Stage primaryStage) {

primaryStage.setTitle("Hello World");

 

Button btn = new Button();

btn.setText("Say Hello World!");

btn.setOnAction(new EventHandler<ActionEvent>() {

@Override

public void handle(ActionEvent event) {

System.out.println("Hello World");

}

});

 

StackPane root = new StackPane();

root.getChildren().add(btn);

primaryStage.setScene(new Scene(root, 300, 200));

primaryStage.show();

}

}

いつものようにタブが消えているので上のリンクからダウンロードしてください
実行結果は、以下になります。

f:id:Takunoji:20180421215646p:plain

ボタンを押下した後、コンソールに出力されるのでEclipseの方を
みてみてください。

f:id:Takunoji:20180421215658p:plain

初めての人は細かいことは置いておき。。。以下の3つ覚えてください。
1. プログラムは必ず上から下に流れる
2. Javaの場合は、必ず「mainメソッドが動く」
3. メインメソッドは以下のように書く(丸暗記でも良い)
  ※こう書かなければメインメソッドではありません。(笑)
public static void main(String
args) {
     プログラムの処理
}

ある程度理解している人は、クラスの繋がりを理解しましょう。
Javaの文法を理解している程度の人

今回作成したクラスは、「Lesson1」です。
このクラスは、javafx.application.Applicationクラスを継承しています。
そして、親クラスのメソッド「startメソッド」をオーバーライドしています。
とりあえず、赤字の単語を覚えてください。


写経したら、プログラムの内容を書き換えて動かしてみてください。
ファイルが元に戻せなくなったら上記のリンクからダウンロードすれば良いです。

でわでわ、今日のとろころはここでおしまいです。

 

関連ページ一覧

Eclipse セットアップ

  1. Java Install Eclipse〜開発ツールのインストール〜
  2. TensorFlow C++環境〜EclipseCDTをインストール〜
  3. Setup OpenGL with JavaJOGLを使う準備 for Eclipse
  4. Eclipse Meven 開発手順〜プロジェクトの作成〜
  5. Java OpenCV 環境セットアップ(on Mac)
  6. Eclipse SceneBuilderを追加する
  7. JavaFX SceneBuilder EclipseSceneBuilder連携~

Java Basic

  1. Java Basic Level 1 Hello Java
  2. Java Basic Level2 Arithmetic Calculate
  3. Java Basic Level3 About String class
  4. Java Basic Level 4Boolean
  5. Java Basic Level 5If Statement
  6. Java Basic Summary from Level1 to 5
  7. Java Basic Level 6 Traning of If statement
  8. Java Basic Level8 How to use for statement
  9. Java Basic Level 8.5 Array
  10. Java Basic Level 9Training of for statement
  11. Java Basic Level 10 While statement 
  12. Java Basic Swing〜オブジェクト指向〜
  13. Java Basic Swing Level 2〜オブジェクト指向2
  14. サンプル実装〜コンソールゲーム〜
  15. Java Basic インターフェース・抽象クラスの作り方
  16. Java Basic クラスとは〜Step2_1
  17. Java Basic JUnit 〜テストスイートの作り方〜

Java Discord

  1. IntelliJ IDEA Discord Botを作る〜Gradle環境のセットアップ〜
  2. Java Discord セットアップ〜Hello Discord
  3.  Java Discord ピンポン〜Discordプログラム〜
  4. Java Discord Listener実装〜コマンドを好きなだけ追加しよう〜

IntelliJ IDEA

  1. IntelliJ IDEA 環境構築 〜インストールと起動〜
  2. IntelliJ IDEA GitGitリポジトリからクローン〜
  3. IntelliJ IDEA 使い方〜Git接続 Java起動 etc
  4. IntelliJ IDEA Jarファイルを作る
  5. IntelliJ IDEA 使い方〜Maven Projectの作成〜
  6. IntelliJ IDEA 使い方〜Mavenでライブラリを追加する〜
  7. IntelliJ IDEA 使い方〜Javaのコンパイルレベル設定〜
  8. IntelliJ IDEA Gradleセットアップ〜コマンド入力部の表示〜
  9. IntelliJ IDEA Discord Botを作る〜Gradle環境のセットアップ〜

 

JavaMeを使う 真・開発環境構築 失敗〜Net Beans編〜

これも失敗しました。-> Macの場合(JDKの問題)
Javaのバージョンを1.8でやるようにすれば大丈夫みたいです。
JDKが新しいから何も調べずにインストールすると後で面倒くさい…

ちょいと反省…


下のものをダウンロード、インストールします。
<インストール>
1. Net Beansインストール:https://netbeans.org/downloads/
2. Net Beans用のSDK        :  Java ME SDK Downloads

NetBeansは簡単にインストールできると思うので省略します。

f:id:Takunoji:20180421144158p:plain

Net Beans起動

f:id:Takunoji:20180421144525p:plain ← このアイコン(Mac)

f:id:Takunoji:20180421144459p:plain

実際に起動して、プロジェクトを作成するときに以下のような画面が出ました。

f:id:Takunoji:20180421145200p:plain

JavaMe関連がダウンロードできるのか?
アツいものを感じます!!

f:id:Takunoji:20180421145306p:plain

インストール!

f:id:Takunoji:20180421145534p:plain

途中「自己責任で〜」とダイヤろぐが出ますが気にせず続行
Net Beansの再起動して再度開きます。

f:id:Takunoji:20180421150703p:plain

Javaのバージョンを1.8以上にしているとNetBeans8.2では動きませんでした。
ちょいと注意した方が良いかも?
Javaバージョンの切り替え方法(Mac)

ここのサイトを参考にしてやりました。

qiita.com

でもコマンドの入力をミスってしまい。。。
lsコマンドとか使用不能になりました。
やる前に以下のコマンドでPATHの値を保存しておくと良いと思います。
一応危険なので注意してやるようにしてください、後が面倒臭いです。

でも、結局は「Net Beans」でプロジェクトの作成ができませんでした。
つくづく、縁がないのなぁ「Net Beans」

JavaMeを使う開発環境構築〜失敗:環境構築出来ませんでした〜

失敗の原因は
EclipseでJavaMeをやるときは別の方法でやる必要がある
事に気がつきました。次回やります。
参考サイト:

j2megroup.blogspot.jp



今度は、フルJava(全部Java)でのアプリケーション開発に着手しようと思います。
以下から「JavaMe SDK」をダウンロードして使用する算段です。

<注意>
オラクルへのユーザー登録が必要になります。

今回使用するのは、OpenCv, JavaFx, Java3D(JOGL)を使用する予定です。
早い話が、Javaでゲームを作ろうという事です。 

Java ME SDK :いろんなプラットホームでの説明が書いてます。

下のリンクはEclipseようです。
上のリンクだとEclipse4.7(Oxygen)では出来ませんでした。

docs.oracle.com
<2018/04/21 追記>

開発環境の構築として必要な作業は以下になります。
1.Java Me SDKのインストール(今回はEclipseでのセットアップです)

今までに、「Unreak Engine」「Unity」「Blender」と実際に触ってみました。
で、3DモデルはBlenderを使用することにしたのですが、Blenderゲームエンジンも使ってみたところUnityと変わらない感じだったので、Javaでやったらどうだろう?
となりました。

ポイントとしては、単体で動かせるので、ケータイやPC、ラズパイにもインストール可能であるということです。JVMさえ動けばどこでも動くのがJavaです。

というわけで、上記のSDKをダウンロードしてEclipse
ウィンドウ > 新規ソフトウェアのインストールを開きます。

f:id:Takunoji:20180420215004p:plain

f:id:Takunoji:20180420215142p:plain

SDKを指定してやれば、インストールができます。
インストール後は、以下のように表示されます。

f:id:Takunoji:20180420215449p:plain

簡単ですが、こんな感じです。 -> 2018/04/20

しかし、セットアップはまだ終わりませんでした。

www.eclipse.org

上記のサイトからモバイル用、Java Card用とあるようですが今回は、モバイル用をインストールします。
始めのようにダウンロードした、ファイルをプラグインとしてインストールします。

f:id:Takunoji:20180421104616p:plain

ヘルプ > 新規インストールで開きます。

f:id:Takunoji:20180421104726p:plain

インストールしたら再起動が走ります。
ここまでで、JavaMe SDK, Mobile Toolsのインストールを行ったので
Eclipseの再起動は、2回行っています。

そして、Eclipseのパッケージエクスプローラより
新規 > Java Me Project を開き

f:id:Takunoji:20180421105844p:plain

このようにプロジェクトが作成できます。

そして、参考にするサイトを「Using the Oracle Java ME SDK Software with Eclipse
に変更して、Eclipseの設定を行います。
1. JavaMeパースペクティブを開く

2. 「Preference」「設定」を開く(SDKインストール後)、何もしなくて良さそうです。

f:id:Takunoji:20180421131725p:plain

3. Java Me Projectの作成
・プロジェクトを作成する

f:id:Takunoji:20180421133029p:plain

・プロジェクト名の設定(下の方にConfigurationが設定されていることを確認)

f:id:Takunoji:20180421133115p:plain

・次へを押下して、以下の画面が表示されます。
※参考サイトには何も書いてなかったけど自分はチェックを入れました。

f:id:Takunoji:20180421133723p:plain

・同様に次の画面

f:id:Takunoji:20180421133812p:plain

そして完了ボタン押下!!

f:id:Takunoji:20180421133922p:plain

ぐわー!!痛恨の一撃!!!
どうやら手順が足りないようだ、結構飛ばしたしな。。。
<やったこと>
EclipseへJavaMe SDKのインストール
・Mobile Tools for Java Extentionのインストール
>>> ここを飛ばした。。。
・Installing Java Card Emurator
>>>>>>>> 
Eclipseの設定
というわけで、Java Cardインストールをやります。

Java Card Downloads

そして「Java Card SDK」をインストール...
色々やってたらちゃんと出来ませんでした。

最終奥義出します。→再セットアップ(Eclipseアンインストール)
NetBeans 使ってみようかな?

詳細は、以下のサイトで和訳してやると分かりやすいです。

docs.oracle.com

紆余曲折の結果今回は、失敗してしまいました。

https://docs.oracle.com/javame/config/cldc/rel/3.3/win/gs/html/getstart_win32/setup_eclipseenv.htm
今日はここまでにします。

Blender Game Engine 〜まとめ〜

前回は、BGEでのゲームコントロールの作成方法をやりました。
正確には、右ボタンを押下した時にオブジェクトを動かす。というものでしたが
前回やった工程を増やして、上下左右のボタンに対応した動きを設定すると以下のようになりました。
f:id:Takunoji:20180418211119p:plain

試した部分は「Physics」と「Liner〜」「Loc」「Rot」の部分を試しました。
回転したり移動したりとちょっと面白かったです。
ポイントとしては「Loc」の値を設定して移動する時にはオブジェクトの向きを基準に
移動するというところです。その部分は実際にいじってみるのが一番良いと思います。

f:id:Takunoji:20180418212110p:plain ← 右端のパネル
ロジックエディタの右端(Actuator)
f:id:Takunoji:20180418212100p:plainf:id:Takunoji:20180418212051p:plain
それぞれの値を調節してやれば、キャラクターの操作はできそうです。

大雑把にアクションの作成方法を学習しました。


 

Blender Game Engine 〜キューブを動かす〜

前回は、チュートリアル動画のはじめの部分をやってみました。
今回はその続きをやります。
参考動画はこちら

youtu.be

前回は、キューブを上に持ち上げて、重力をかけるとこまでやりました。

f:id:Takunoji:20180416211549p:plain

上記の画面で(重力をかける設定をしてます。)「P」ボタンを押下

f:id:Takunoji:20180416212322p:plain

と、ここまでが前回。

ここからキューブの向きを変えて落とします。

f:id:Takunoji:20180417202547p:plain    f:id:Takunoji:20180417202603p:plain

まぁ何も起こりませんなぁ(笑)  ※動画より引用
自然な動きを与えるには、「コリジョンバウンド」を設定するようです。

f:id:Takunoji:20180417203156p:plain f:id:Takunoji:20180417203146p:plain f:id:Takunoji:20180417203132p:plain        f:id:Takunoji:20180417203450p:plain

チェックを入れるだけですね。。。
落下した後に地面の上に止まりました。(刺さっていません)

そして、ここからが本番
画面を上下の二つに分割します。新しいビューを使用するためです。

f:id:Takunoji:20180417203846p:plain

f:id:Takunoji:20180417204015p:plain

Open The Game Logic Editor

f:id:Takunoji:20180417204115p:plain

開いたロジックエディタの一番左から、センサーを追加します。
センサーというのは、コントローラーの事と今は思っておきましょう。

f:id:Takunoji:20180417210336p:plain

そして「Controller」はすっ飛ばして、「Actuator」の変更を行います。

ついでに飛ばした「Controller」は右です。

f:id:Takunoji:20180417210929p:plain  f:id:Takunoji:20180417211021p:plain

そして、今回はキーボードでコントロールしてキューブを動かしたいので
Actuator -> Motionを選択します。

f:id:Takunoji:20180417211208p:plain

余談ですが、選択しているキューブに重力設定をしていないと2行くらいしかない
※重力設定が「Static」の状態

f:id:Takunoji:20180417211643p:plain

重力設定を「Static」から「RigidBody」に変更します。

f:id:Takunoji:20180417211901p:plain

ちょっと分かりづらいですが、プロパティが増えています。

Key: の「Right Arrow」と表示されている部分をクリックしたら「PressKey」と

f:id:Takunoji:20180417212119p:plain 表示されるので使用するキーを押下する
今回は、「右→」Right Arrowを選択しました。
そして、一番右のプロパティを以下のように変更します。

f:id:Takunoji:20180417212620p:plain Yの値を「3.0」に設定する

f:id:Takunoji:20180417212709p:plain

そして、ゲームを実行します。「P」ボタンを押下します。

f:id:Takunoji:20180417212943p:plain f:id:Takunoji:20180417213133p:plain

右にしか移動しないのでキューブがおっこちます(笑)

今日はここまでにします。

JavaFx Game 開発メモ〜モバイル用〜

Net Beans8.2(2018/04/22最新)はMacではうまく動かないJava10とか使用不能
なので7.2を使用するJDK10.XXが使用不能なのでJDKを8に戻す

https://netbeans.org/downloads/7.2/?pagelang=pt_BR


Java Me開発環境構築の残り

docs.oracle.com

java 3D チュートリアル

Java 3D Tutorial

 

OpenCv in Java Download

stackoverflow.com

 

OpenCv Document

https://docs.opencv.org/java/2.4.2/


JavaFxサンプル
 

2d Game

jaxenter.com

 

JavaiPhoneアプリいける?

www.slideshare.net

 

JavaMe(J2ME)チュートリアル

mobile-apps-dev.blogspot.jp

Blender Game Engine 〜他のゲームエンジンとの比較(感想)〜

紆余曲折を経て Blenderに戻ってきました。
OpenCvによる機械学習も進めたいのですが。。。
まずは「動くもの」を作るのを優先したく、ちょいと保留です。

経緯として以下のような状況です。
1. ゲームを作りたいのでどの言語(もしくはツール)を使用して開発するか検討
 「UnrealEngine」→ほぼプログラミングがいらない感じで、プラグインを作るにも
          時間がかかりそうなので却下(使用しないことにしました。)
          ※プログラミングをメインにしないなら最高だと思います。

          ただし、GPUのスペックがある程度高くないと使用できない

 「Swift」     →Xcodeを使用してiPhoneアプリの作成ができる、3Dモデルや
          各部品(イメージファイルなど)をAsetとして読み込み使用できる
          ※プログラミングの習得難度は低い、C++,Python等アクセス可

 「Unity」    →3Dモデルの作成など簡単なことはUnityのみでOK, C#を使用
           iPhoneなどの入力キーボードを使用するときは対象の言語
          (Swiftなど)での修正作業が必要になる
 「Blender」  →3Dモデルを作成するのに使用する他のゲームエンジンでも
          作成した3Dモデルを使用できる

Blender Game Engine」
Pythonを使用できる、作成したゲームをコンパイルツールでiPhone用に起動ファイルを出力できる
これを使えばBlenderのみの実装でiPhoneアプリも行けるのではないだろうか?
と思っている

www.youtube.com

というわけで、BelderGameEngineの使い方を勉強します。

参考にするのは、以下の動画です。

www.youtube.com

初めに、レンダーを切り替えるようです。

 

f:id:Takunoji:20180416210809p:plain

 

f:id:Takunoji:20180416210826p:plain

右側のパネルにある「Start」ボタンを押下するとゲームが起動します。

f:id:Takunoji:20180416210911p:plain

ゲームを起動するとマウスが見えなくなってしまうので「esc」ボタンでゲームを終了します。
とりあえず、地面(のようなもの)を作成します
Plane(板)を選択して広げます。初期表示されているキューブは上に持ち上げます。

f:id:Takunoji:20180416211320p:plain

f:id:Takunoji:20180416211429p:plain 「S」押下してマウスで広げます。

f:id:Takunoji:20180416211549p:plain

そして、キューブを選択した状態で以下のように「Physics」を選択します。f:id:Takunoji:20180416212253p:plain

f:id:Takunoji:20180416212130p:plain

そして「RgidBody」を選択

f:id:Takunoji:20180416212237p:plain

そしてゲームを再生

f:id:Takunoji:20180416212322p:plain

空中にあった、キューブが地面(?)に落下します。

今日はここまでにします。
次回は、キューブを動かしてみます。