てんぺるのぶろぐ

IT関連のこと、体験談、備忘録など。文系エンジニア、もがきます。

JavaFXを学ぶ-その1

せっかくJavaを勉強するなら簡単なゲームアプリみたいなものを作りたいと思い、JavaFXを触ってみることにしました。

 しかしJavaFXについて右も左もわからない。

そこでまずは、とにかく勉強になりそうなウェブサイトを色々訪問してみました。

◆目次◆

いきなり成果物

色々調べた結果(調べた過程は後述)さっそくFFシリーズから、「チョコボ」をゲストに、簡単なアニメーションなどを作成してみました。チョコボのドットはミニドット絵メーカーで自作しました。

以下ソースコードです。 

JavaFx study

実行するとこんな感じ

f:id:temper-u:20171025014445p:plain

色々ごちゃごちゃしていてカオスですが、

とにかくCanvas内がすごいことになってます。

 

円形に動くチョコボの描画がどうやっても消えないんですよね。

真っ黒な残像みたいになっちゃう。(怖い)

clearも使って試行錯誤。中途半端に消えてうまくいきませんね。

結局どうすればいいんだろう。次回の課題ですかね~。

※2017/10/27追記

clearの記述をhandleの一番先頭に持ってきたらうまくいきました。しかしなぜうまくいくのかはよく分からないです。

JavaFxについてわかったことまとめ

  • シーングラフについて(rootノード、leafノード等)
  • 基本的な文法(Applicationクラスの拡張→startメソッドのオーバーライド→Stage→rootノードの作成→Sceneの作成→各ノードの作成と親ノードへのセット→、、→.show()による描画)
  • AnimationaTimerによるゲームループ(不明点も多い)
  • Transition系のあれこれ(今回はFill,Translate)

 

参考にしたサイト

主に以下の3つです。

docs.oracle.com

gamedevelopment.tutsplus.com

krr.blog.shinobi.jp

やっぱりOracleのサイトがいろいろ載ってる&わかりやすかったです。とくに根本的なシーングラフの構造の理解に役立ちました。

 

果たしてアプリが作れるようになるのでしょうか。

道のりは長そうです。