JAVAでゲーム作成

このエントリーをはてなブックマークに追加
930名前は開発中のものです。:2005/10/14(金) 11:05:25 ID:7/HW/bmD
JavaのRADって8年以上の歴史がないか?
931名前は開発中のものです。:2005/10/14(金) 17:58:22 ID:IcMNZCJV
VBのようなポトペタをRADと呼ぶんだろう、>>929

NetBeansとか試してみたらいいよ。
932名前は開発中のものです。:2005/10/14(金) 18:07:25 ID:7/HW/bmD
JBuilderってSwingくるまえからポトペタだったはずだが
933名前は開発中のものです。:2005/10/14(金) 19:36:28 ID:avp4LEUs
>>927
漏れのところではPythonでプロト作って、
Javaで実装というパターンが多いかな。
あ、ゲームじゃないけどね。
934名前は開発中のものです。:2005/10/14(金) 19:48:14 ID:I+40oghk
>>931,932
きっとEclipseしか知らないんだろう、>>929
935名前は開発中のものです。:2005/10/14(金) 20:17:56 ID:SlJ7Kv4y
Javaで書かれた音声認識エンジン SPHINX-4
http://d.hatena.ne.jp/shibacho/20050911/p2
JavaとCがほぼ同等だってさ
936名前は開発中のものです。:2005/10/14(金) 20:20:39 ID:qC/usI4o
Swingは手書きでもサクサク作れるので実はSwing自体がRADなのです。
937名前は開発中のものです。:2005/10/14(金) 21:49:47 ID:ydWCAyTF
JavaはEclipseがあるから最強。
Visual C++も書いたその場でエラー見つけて表示させられないし。
938名前は開発中のものです。:2005/10/14(金) 22:21:52 ID:7/HW/bmD
.NETなら表示してくれるんじゃないの?
NetBeansも昔から書いたその場でエラー表示してくれてたよ
Eclipseだけの特権ではあるまい


しかしスレ違いが続くな
939名前は開発中のものです。:2005/10/14(金) 22:59:46 ID:RNsnGTSd
>>934
その通りw

で、結局どれが良いのかな?
NetBeansは初心者向けと書いてあったので、やってみるか。
上級者はRAD使わないて事かね?そういうもんか?

まあ、開発環境の話題はゲーム製作と全く無関係ではないと思うよ
940名前は開発中のものです。:2005/10/14(金) 23:11:19 ID:7/HW/bmD
上級者向けとか初心者向けというのは間違いだと思う

GUI生成ツールとしてNetBeansは昔から現在でもJavaの中では最高品
Eclipse+VEとか話にならん

そして肝心のTomcatとかWEBアプリやDB接続等はEclipseいれても
いつもおなじプラグインしかまずつかわんよね

なら最初からGUIエディタとWEBアプリ開発環境が整っていても問題はない
しかもほとんどのEclipse本はそれらのプラグインをセットアップしたところで終わりだ

ゲーム製作においてはなんのIDE使ってもいいとは思うけど、Windows95初期のRPG
とかOSのコンポーネント使ってるのが多かったからそういうのをやろうとしたときは
Swingが強力なNetBeansでいいだろうね

強みとしてはNetBeansのほうが最新のJava環境に対応しやすいということかな
コンパイラにJDKのを使うようにしてるからね
Eclipseの3はかなり遅かったでしょ?

Javaでのゲームは最新のVMに対応してるかどうかはわりと重要

あとはプロファイラが簡単導入できるのでどこが速度のネックなのかをすぐに特定が可能なのも強みかな
941名前は開発中のものです。:2005/10/14(金) 23:59:27 ID:64Q3kCz/
今書店で勉強できる本やWebの情報が一番多いのもJavaでしょ。
初心者が入門用に勉強する言語に一番向いてると思うよ。
942名前は開発中のものです。:2005/10/15(土) 00:04:05 ID:p4Fsszru
ゲーム作る奴にはHSPを勧めるね。
ただしHSPは入門言語としてはとても薦められない。
くそプログラマ育成ツールだと思う。
943名前は開発中のものです。:2005/10/15(土) 08:21:14 ID:wTE7Ugac
>>942
あれはあれでそれなりにいい言語だよ。
ただ、今は他の言語でも充分に環境が良くなっているのでアドバンテージは低下してる。
目的に応じて道具を変えられない人にはすすめたくないってのは確か。

ところで、Javaでゲーム作るときってどんな環境使ってる?
944名前は開発中のものです。:2005/10/15(土) 11:26:31 ID:RjGSFxGd
Eclipse
945名前は開発中のものです。:2005/10/15(土) 17:33:25 ID:Ha6BQmfC
CPadとバッチファイル(コンパイルと実行用)
946名前は開発中のものです。:2005/10/15(土) 17:56:11 ID:YntQAxvk
netbeans
947名前は開発中のものです。:2005/10/15(土) 19:51:18 ID:ouFug0X6
JPanelにVolatileImageっていうのを使って描画してるんですがどうもちらつきが残ってしまいます。どこが怪しいのかアドバイスもらえないでしょうか?
ttp://gamdev.org/up/img/3544.zp
MainPanelのpaintComponent()が描画処理です。
948名前は開発中のものです。:2005/10/15(土) 19:52:06 ID:ouFug0X6
iがぬけてました
ttp://gamdev.org/up/img/3544.zip
949名前は開発中のものです。:2005/10/15(土) 20:03:47 ID:YntQAxvk
まず最初はソースまるなげなんてしないで問題ありそうな箇所だせや

んで、ちらつきあるか?
たんにキャラが小さいのと垂直同期とってないからだけじゃないかな?
ためしに640*480にきえりかえて2倍拡大したキャラを表示してみるとか

あと作業用VolatileImageは最初に作るだけにしておけ

描画のたびに作っていたらもったいない
950名前は開発中のものです。:2005/10/15(土) 20:14:04 ID:ouFug0X6
>>949
d
実行してもらって本当にちらついてるか確かめてほしかったので丸ごとあげました。自分でもちらつきあるかないか微妙だったんで。画像大きくして試してみます。
951名前は開発中のものです。:2005/10/15(土) 21:09:09 ID:ouFug0X6
>>949
拡大してみましたがやっぱりちらつきはないようです。画像の模様のせいでちらついているように見えるだけのようでした。画像を別のにかえたら直りましたorz

ありがとございます。
952名前は開発中のものです。:2005/10/15(土) 21:21:17 ID:RjGSFxGd
836 名前:名前は開発中のものです。 [sage] :2005/09/17(土) 22:59:55 ID:l8JeEDP1
ティアリングは垂直同期取らない限り必ず出るよ

ウインドウモードとフルスクリーン両対応のゲームやってみればわかる
953名前は開発中のものです。:2005/10/15(土) 21:48:56 ID:ouFug0X6
垂直同期ってのはBufferStrategy使えってことですか?
954名前は開発中のものです。:2005/10/15(土) 22:07:52 ID:z0dCDbb+
>>951
いや、ティアリングしてるぞ
955名前は開発中のものです。:2005/10/15(土) 22:47:16 ID:YntQAxvk
>>954
ここでいうちらつきというのはティアリングのことをさしてるわけじゃなくて
キャラクタが小さい上にピクセル単位で交互におくような画像を使ってるから
変に見えるというやつだ

ティアリングはウインドウモードじゃ解決できないだろ
956名前は開発中のものです。:2005/10/15(土) 22:48:43 ID:YntQAxvk
>>953
そういうこと
957名前は開発中のものです。:2005/10/17(月) 23:54:04 ID:QHGuJsTX
Javaでゲーム開発する人は、互換性を考慮して100%PureJavaにしているのでしょうか。
958名前は開発中のものです。:2005/10/18(火) 00:34:01 ID:ccGom+1x
そうでないとJava使う理由がないっぽ

ほんとに互換性があるかどうかはまた別問題だが
959名前は開発中のものです。:2005/10/18(火) 00:35:00 ID:8Yt31AR3
>>957
個人的には、PureJavaというより、
様々なOSで動かすことが出来るように作成している。
クロスプラットホームなネイティブライブラリに、
SDL、OpenGLがあるけど、
こういうライブラリは、ラッパーライブラリ経由で普通に使うことも多いよ。
960957:2005/10/18(火) 00:45:59 ID:bZC650OK
>>958-959
なるほど、ありがとうございます。
ゲーム開発に興味はあるものの、
Servlet&JSPばかりでGUIの経験はVBぐらいしかなく、
クロスプラットホームを保てるJavaで学んでいくべきか、
Windowsと割り切ってVC++、VC#で行くか、悩んでるのですよね・・・。

まあ、どの言語で行くにしてもまずはクラス設計からだと思うので、
言語は追々決めていくことにいたします。
961名前は開発中のものです。:2005/10/18(火) 01:15:15 ID:xwcI4XH7
IDかっこいいな
それより先ず何を作るかだと思うが
3D不要ならPureJavaで良いのでは
962957:2005/10/18(火) 01:38:59 ID:bZC650OK
>>961
確かにカコイイIDだなあ。

3Dは・・・エフェクトとしては使用するかもしれないのですが、
スプライトでカバーできるのかも知れません。
PureJavaも含め、一度検証用(兼勉強用)の簡易ゲームを作ってみることにします。
仕組み作りも大変だとは思いますが、ゲーム本体に着手するよりはずっと楽でしょうし。
963名前は開発中のものです。:2005/10/18(火) 01:41:31 ID:8PxN1Xwv
SDLはJavaでラッパー使ってやるくらいならPureJavaのほうがいいぞ
機能が貧弱でCでよくつかうようなOpenGLとかの連携とか未実装だったはずだが
サウンドにしてもSDLミキサーよりJavaSoundのほうが融通が利く
964名前は開発中のものです。:2005/10/18(火) 04:38:46 ID:8Yt31AR3
>>963
まずは、ここをよく読め。話はそれからだ。
http://sdljava.sourceforge.net/
965名前は開発中のものです。:2005/10/18(火) 13:16:42 ID:8PxN1Xwv
OpenGLサポートされたのか
俺が触ったときはOpenGLプロバイダがごっそり将来実装予定となってたが
ミキサーは標準実装されているけど使い物にならないのは本当
966名前は開発中のものです。:2005/10/20(木) 22:49:55 ID:qzg2nFeP
これは期待大
http://japan.cnet.com/news/com/story/0,2000047668,20089282,00.htm
JBlend[micro]J2ME CLDC
JBlend[embedded]J2ME CDC
で、ザウルスは確かCDCの方だったかな。
967名前は開発中のものです。:2005/10/20(木) 23:51:29 ID:oGtX14sN
MEは若干板違いっぽい・・・
968名前は開発中のものです。:2005/10/21(金) 04:14:32 ID:MjnK+wiF
969名前は開発中のものです。:2005/10/22(土) 01:14:17 ID:Ez07novY
今、PureJavaならどのぐらいのゲームまで実現出来るんだろう。

・WinDepth
・洞窟物語
・東方紅魔郷
・Civilization3
・RainbowSix(初代)
・HalfLife(初代)

と並べてみたとして・・・
970名前は開発中のものです。:2005/10/22(土) 01:16:57 ID:hWuq895n
2Dだったら拡大縮小とアルファブレンド使わなければいける
3DはPureJavaだとソフトウェアレンダリングになってきついとおもわれ
971名前は開発中のものです。:2005/10/22(土) 12:24:45 ID:kARy7Reu
ぶっちゃけ完全自由変形とαブレンドがないとかなり作り辛い。
まあ、αはなくてもいいか。透過色サポートしてれば。
972名前は開発中のものです。:2005/10/22(土) 13:26:53 ID:E5O/Oy+l
>>969
あーこのリストのがJavaで作られてるわけじゃないのかorz
洞窟物語って面白そうだなと思った
973969:2005/10/22(土) 13:40:08 ID:Ez07novY
>>970-971
αブレンドは厳しいですか。
タイルを使えばある程度はカバーできそうですけど、
MSXやPC98の16色時代っぽくなりそうですね。

>>972
違います・・・
誤解させて申し訳ない。
このリストの中でどんなものなら実現できるか、の参考程度にでした。

下3つは商用ですが、グラフィックに限ればCiv3程度は可能なのかな・・・

洞窟物語は個人的に好きなフリーウェア。
プログラム面は独自のソフト音源以外はJavaでも可能なレベルかと思います。
絶妙なゲームバランスとか練り込みとか、センスとか、そういう部分は全く別にして。
974名前は開発中のものです。:2005/10/22(土) 13:47:04 ID:hWuq895n
上4つまでならPureJavaで余裕かと

アルファブレンドは一応Java2Dで用意されてるけど、ゲームで多用する加算合成がないのだ
しかも現在アクセラレーションがきかない

どれだけのレンダリング範囲が必要かわからないけど小さいサイズであればソフトウェアでできる

神威やFinalForceって8bppでレンダリング範囲を狭くしてソフトウェアアルファブレンドしてるけどね
そういうのでいいのならJavaで余裕で可能かと

16bppe/640*480とかだときついね

アクション性が合ってそれなりにいじる場合320*240で作ってそれを640*480に引き伸ばすのと
640*480でそのまま描画するのとどっちが速いかテストするとよろし

アルファブレンドはいらないのであれば後者のほうがすべてアクセラレーションきくから速いね
975名前は開発中のものです。:2005/10/22(土) 16:51:37 ID:GrmBRuwE
TIGERでゲームを作る為のAPI解説本とかないかな。
JAVADOCだけじゃ目的の物を探すのが大変だし、
正しい選択かわからないし。
976名前は開発中のものです。:2005/10/22(土) 17:35:59 ID:hWuq895n
基本的には5.0からゲーム作成で大きく変わったことはないぞ
1.4に比べてね

一番大きい変更点はいままでアクセラレーションが利いてないコードが
きく可能性があるようになった>何もし手ない人は速くなるかも

というのと

JavaSoundが利用しやすくなった

という点だけかと
977名前は開発中のものです。:2005/10/22(土) 18:07:12 ID:wU13YWJL
BufferedImage、VolatileImageのメモリ消費量が、
もう少し改善されると最高なんだけどなぁ...
これは、Mustangに期待かな。
978名前は開発中のものです。:2005/10/22(土) 18:13:16 ID:hWuq895n
VolatileImageは現在のピクセルフォーマットに依存だぞ
BufferedImageだってピクセルフォーマットによって大きく変わる

そういや、5.0でVolatileImage>VolatileImageの転送がやっと使い物になったな
1.4のときは描画先に指定するしか結果的に使い道がなかったからね
979969
>>974
アルファブレンドはとりあえず無しで色々とやってみることにします。
なにせ、技術的な部分を一つ一つ検証していかないといけないと思いますので、
あまり無理しない様にします。
ありがとうございました。