2014年 1月

Java 8 での算術オーバーフロー

Java

Java 8 では算術オーバーフローを検出可能となるよっておはなしです。

Math クラスに算術オーバーフローを検出できるメソッドが追加されました。

ちょっとしたサンプルプログラムをのせておきます。

実行結果は次の通りになります。

-2147483648
2147483647
java.lang.ArithmeticException: integer overflow
at java.lang.Math.addExact(Math.java:790)
at jp.yucchi.exact.Exact.main(Exact.java:14)
java.lang.ArithmeticException: integer overflow
at java.lang.Math.subtractExact(Math.java:829)
at jp.yucchi.exact.Exact.main(Exact.java:20)

この他にも Java 8 で追加された便利なものがありますので興味のある方は API ドキュメントに目を通してみるといいですよ!

Hatena タグ:

JavaFX 3D Game GT Negative 6 創ってみた。

JavaFX

お正月休みに久しぶりにグランツーリスモやってみたら、もの凄く難しくてストレスたまった。

頭にきたので自分で人生2作目のゲームを創ることにした。

もちろん、JavaFX でね!

ついでに 3D ゲームにしちゃえ!(なんちゃってだけどね。

目標はシンプルで誰でもそれなりに楽しめるゲーム。しかもお手軽に創れる範囲でとしました。

そう、古の白黒ゲームのようにシンプルで優しいゲーム。

出来上がったのはこちら(動画)になります。(ちょっとファイルサイズが大きいです。ごめんね!)

自動車のモデルも作ろうかと思ったのですが面倒なのとお正月休みといえど、いろいろお仕事があるので・・・

メタセコ素材!様のモデルデータ(車とタイヤ)を使わせていただきました。

素敵なモデルデータをありがとうございました。(^_^)

この動画をご覧になって気付かれた方もいらっしゃると思うのですが、

タイヤバリア、と車のナンバープレートがちらついてます。

これ何でこうなるのか解らない! (>_<。)

えっ、ゲーム下手くそだって・・・

それは禁句です。

もの凄く傷つきますのでそってしておいてあげてください。

それとず~~~っと気になってるこのメソッドって何に使うんだろう?

setDepthTest(DepthTest.ENABLE);

これ使うといったい何が幸せになれるんだろう?

まだまだ解らないことだらけだ。

とりあえず今回のゲーム作成においての収穫はフロントタイヤをスピードに合わせて回転させながら、ステアリング操作によって舵角も付けることができたことかな。

ちょっとしたミスでなんでできないのだろうと悩んだことは秘密にしておきます。(ヲヒ

この不完全でシンプルなプログラムで遊んでみたいという人のために Dropbox に置いておきます。

Java 8 build 121 で創りましたので実行環境あるかたはどうぞ!

Dropbox 障害発生からまだ復活してないようなので Google ドライブにおいときます。

https://drive.google.com/folderview?id=0B2xIvGdIzGbAX1lvcTJSTXhPcU0&usp=sharing

MyApp ディレクトリ内にある GT Negative 6 ディレクトリをダウンロード後、

その中にある 3D_Race.jar ファイルをダブルクリックでゲーム開始します。

PC の性能が低いとゆっくりとしたゲームになるかもしれませんがお楽しみいただけると幸いです。

なんでもありのルール無用のゲームです!!!(基本的なルールの実装が面倒くさかったわけではありません。絶対に・・・)

最後にこのシンプルで不完全なゲームを創ってみて、高いお金払ってゲーム買って上手く操作できずにストレスためるより

自分で創った欠陥だらけのゲームのほうが楽しめた。

今年はいい年になるな。きっと!

JavaFX 最高!

Hatena タグ: