トップページgamedev
987コメント388KB

Javaでゲーム作成 2本目

レス数が950を超えています。1000を超えると書き込みができなくなります。
0001名前は開発中のものです。2005/10/27(木) 09:43:50ID:dzSvRQXE
Javaでのゲーム作成について情報交換をするスレです。
ゲーム作成以外の話題はム板(http://pc8.2ch.net/tech/)、
他言語に関する話題は他スレでお願いします。

前スレ
JAVAでゲーム作成
http://pc8.2ch.net/test/read.cgi/gamedev/1074347252/

テンプレは>>1->>10あたりを参照
0937名前は開発中のものです。2007/06/06(水) 21:53:54ID:O774Z098
NetBeansの使い方知らないやつが多いだけじゃね?

去年のJavaのIDE TOPはNetBeansが選ばれてる時点で流れに乗れない人たちと思われ。
あとEclipseはプラグイン入れるだけでページ数稼げる。これポイント。
0938名前は開発中のものです。2007/06/06(水) 23:20:53ID:WeNeu8ST
>>935
マニフェストファイルは作ってます
必要なライブラリはありません
大学がeclipseなのでそれを使ってます-`)
0939名前は開発中のものです。2007/06/06(水) 23:58:27ID:IfzalnNn
考えられるのは、
・マニフェストファイルがおかしい
・実行環境に問題がある
・そういうプログラムである
くらいか

マニフェストファイルをEclipseに生成させるようにしてJARを作成してみたら?
それで上手くいくようなら自作マニフェストファイルがおかしいって事になる
0940名前は開発中のものです。2007/06/07(木) 13:02:37ID:vuPLnRCS
NetBeansのほうがお勧めというが、
プラグインを入れなくても、
リファクタリングとか、補完とかの機能がEclipseのほうが使いやすい。
必要としない人も多いから何とも言えないが。

まぁ、次期NetBenasで解消されるようだけど。
Swingが速くなったおかげで、重さも解消されたし。

最初からNetBeansを使ってるひとは、Eclipseのほうが便利な部分を知らなくて使っていくだろうし、
逆もそうだとおもうんだよね。

まぁ、初心者にはNetBeansが良いと思う。
0941名前は開発中のものです。2007/06/07(木) 13:04:07ID:vuPLnRCS
う、下げ忘れた。ごめんなさい。

>>934
まずは、コマンドプロンプトで
java -jar ***.jar
で起動させてみて。
0942名前は開発中のものです。2007/06/07(木) 16:59:15ID:5Qk7KRIL
>>940
JBuilderとかになれてるとEclipseのほうが使いにくいのだ
EclipseはCTRL+スペースばかりに機能が統合されていてすばやく撃ち込む場合使いにくいのだよ
NetBeansも最近CTRL+スペースに集中してきて悪化している

ユニットテストとかライブラリとかはNetBeansのほうが使いやすいね

EclipseでまともにGUI開発できないってのはまぁ致命的といえば致命的だが
ゲームだとせいぜいコントロールパネルくらいだからどうでもいいか

あ、ゲームだと問題となるのが最新のJDKが推奨されるけど、
Eclipseは最新のJDKが使えない可能性が高いのが問題となりやすいかも
0943名前は開発中のものです。2007/06/07(木) 18:06:19ID:vuPLnRCS
>>942
なるほど。
JBuilderはほんとの初期しか使ってないから評価できないけど、
forループとかでイテレータ使うテンプレートが無かったのは覚えてる。
あと、sysoutとかで補完とかそういった細かい所は好みの問題だし、
慣れだからね。

確かにユニットテストはNetBeansのほうが良い。
Eclipseはわかってる人からすれば、なんてことはないけど
知らない人に説明するの面倒。
プロファイラも同じなんだよね。
Eclipseのプロファイラの重さはかなり致命的。TPTPとかもうね・・・・。

GUI開発に関しては、VEが一応ある。Matisse(NetBeansのGUIエディタ)も動く・・・・・・有料だけど。
コレが無料ならいいのだけどねぇ・・・・。
ただ、Matisseはソースは出力物であって、編集できない形だから俺はいまいち。
その点VEは編集しても頑張って再現してくれる。失敗も多いけどね。

俺の印象だと、
Eclipse 巨大な整理されていない道具箱
NetBeans 必要な道具だけが綺麗に整理されている道具箱

ある程度使えばどっちも生産性に差は無いと思う。
とくにゲーム制作に関しては。
0944名前は開発中のものです。2007/06/07(木) 18:47:03ID:5Loz1nuS
>>941
java -jar ***.jarで起動させました
するとエラーが表示されました
eclipseには何も表示されなかったのに何故…
どうやらファイル入出力が拙いようでした

いろいろ弄って何とか解決できました
皆さんありがとうございました
0945名前は開発中のものです。2007/06/07(木) 20:32:04ID:wcTYYNm5
ん?Eclipseでも実行させたらエラーちゃんとでてるよな?
0946名前は開発中のものです。2007/06/07(木) 20:53:24ID:vuPLnRCS
Jarにまとめる前に実行するだろうから
やっぱり、コンソールに出力されるはずだがなぁ・・・・。

自動的にコンソールが前面に出てくる設定になってないとか。
0947名前は開発中のものです。2007/06/08(金) 07:45:07ID:dU1vbfjk
>>943
>俺の印象だと、
>Eclipse 巨大な整理されていない道具箱
>NetBeans 必要な道具だけが綺麗に整理されている道具箱
激しく同意
しかし、最近NetBeansの勢いが増してきた気がする
6.0楽しみだ

Eclipseは最新の技術への対応が遅くなってきて無いか?
ただで使わせてもらってるのにえらそうに言うのもなんだが

ただ、個人的にはEclipseの方が好き
なぜなら、日本語のドキュメントが多いからw
09489432007/06/08(金) 11:19:22ID:uRAOQaxB
ちょっと補足。
>Eclipse 巨大な整理されていない道具箱
>NetBeans 必要な道具だけが綺麗に整理されている道具箱
NetBeansは必要な道具が無かった場合、かなり苦労を強いられる。(出来ないことはない)
Eclipseはほとんどの場合箱のなかを探し出せばそれを実現する道具(プラグイン)を誰かが作ってる。

俺もEclipseの方がすき。

長いこと使ってきて愛着があるってのもあるし、使えるプラグインが多いことも私にとっては重要。
Amaterasのプラグインとか無いとやっていけない。
それにNetBeansのとにかく簡単に!という流れに乗ってか、Callisto
という、
コレさえあれば大抵大丈夫っていうプラグインセットも出てきたから
NetBeansの勢いに負けずに頑張って欲しいなぁ。


Eclipseで一番危惧しているのはJavaが疎かになるんじゃないかなってこと。
PHPやC++、Rubyへの対応がニュースの目玉になるぐらいだから・・・。

ゲーム関係ないなw
0949名前は開発中のものです。2007/06/08(金) 11:43:53ID:0pRpBrj+
NetBeans、この1年でのRuby対応すごすぎ

Ruby対応は今IDEでもっとも旬なものじゃないかな
0950名前は開発中のものです。2007/06/08(金) 14:37:30ID:S8TOMltZ
>>928
遅くなったけどありがとうございます。

>>スプライト100個出したら100個のスレッドがたちあがるってことかな?
そうです。

結論としてはオブジェクトごとにTimerTask持つやり方でいいってことでしょうか?
0951名前は開発中のものです。2007/06/08(金) 14:43:00ID:0pRpBrj+
皮肉をこめたあの文章でダメだと思わないのならやめたほうがいい

マルチスレッドでやるにしろスレッドプールと排他制御を理解してからね
タスク間での通信とか大丈夫に見えない

別スレッドでやるにしろ手軽なものじゃないよ
何も考えない場合依存性がないエフェクト関連でしかつかえん
0952名前は開発中のものです。2007/06/08(金) 16:42:07ID:S8TOMltZ
キャラクターのアニメーションに使うだけなので他のオブジェクトと依存性はないかと・・・
0953名前は開発中のものです。2007/06/08(金) 16:47:14ID:0pRpBrj+
で、スレッドが増えることによる弊害は考えないの?
各スレッドごとにスタックもつわけだし、綺麗なアニメーションも出来ないよ
0954名前は開発中のものです。2007/06/08(金) 18:43:35ID:f1IK12WV
fillPolygonなんかで多角形を一色に塗る方法は分かったのですが、
ゲームなんかでよくあるように画像をはめ込むことはできませんでしょうか?
0955名前は開発中のものです。2007/06/08(金) 18:46:08ID:0pRpBrj+
矩形ならJava2Dですぐ出来るんじゃね?

多角形が必要ならJOGL使ったほうがよさげ
0956名前は開発中のものです。2007/06/08(金) 19:29:42ID:pznBE7uN
javaのゲームプログラミングを勉強したいんですけど、何かお勧めの本はありますか?
0957名前は開発中のものです。2007/06/08(金) 20:40:58ID:f1IK12WV
>>955
ありがとうございました。ド素人なんでググるところから始めてみます。
0958名前は開発中のものです。2007/06/08(金) 21:08:19ID:rLAdfwxn
>>956
ゲームじゃないプログラミングの経験はあるの?
ないならしばらくゲームを作るのは忘れて一般のJavaの入門書買って勉強した方がいい
ゲーム作りながら0から学ぼうとするのはかえって遠回りになるよ
0959名前は開発中のものです。2007/06/08(金) 21:56:13ID:JbwzLCuD
>>948
一人称を統一してくれ。
0960名前は開発中のものです。2007/06/08(金) 22:31:58ID:S8TOMltZ
>>953
それを>>927で聞きたかったんです。
やっぱりオブジェクトが増えると効率悪くなりますかね。
今のところ数十個ならちゃんと表示されてるんですが。
一般的にキャラクターのアニメーションとかエフェクトとかでもスレッドプールというのを使うんでしょうか?
0961名前は開発中のものです。2007/06/08(金) 23:06:41ID:pPM/oaLv
>>958
普通のプログラミングも始めたばかりです
0962名前は開発中のものです。2007/06/08(金) 23:42:07ID:0pRpBrj+
>>960
スレッドが増えるとメモリなどの効率が悪くなるし、排他制御での効率の問題も出やすい
マルチコアが普及してもこの数年じゃせいぜい同時に動けるのは4スレッド程度
ならば4スレッドつくっておいて毎フレームなげる
100個のオブジェクトがあった場合最初に4つなげて空きができるまで残りの96個は待っている状態になる

ただ、本当に並列動作が意図的にほしいのでないのならマルチスレッドはバグの原因になるから使わないほうがいい
TimerTaskが便利そうに見えるというのならそれはフレーム管理を理解していないだけ
書籍なども読んだりしてまずシングルスレッドで行うようにしよう

バックグラウンドで動かしたいスレッドなんて音楽や効果音などでたくさんあるんだし、必要になってから勉強しよう
並列処理を理解せずにTimerTaskを使うのは危険すぎる
0963名前は開発中のものです。2007/06/09(土) 01:08:05ID:vu3KtdAq
>>960
いわゆる擬似タスクを使えばいいのでは?
スレッドは同期処理とかなにかと面倒。
0964名前は開発中のものです。2007/06/09(土) 07:49:01ID:EZVk7j6P
疑似タスクとかフレーム管理とかJavaの本でお目にかかったことないんですがC++関係のゲームプログラミング本に書いてあるのでしょうか。
何かよい資料があれば紹介していただきたいんですが。
0965名前は開発中のものです。2007/06/09(土) 08:32:30ID:vu3KtdAq
擬似タスクやフレーム管理はJAVAとはまったく関係のないゲームプログラム独特の話。

ウェブならここ。ただしCやアセンブラの時代の話なので概念だけ見るとよい。
ttp://www.hh.iij4u.or.jp/~peto/index.shtml

と思ったら閉鎖してたので以下で見てみて。
ttp://web.archive.org/web/*/http://www.hh.iij4u.or.jp/~peto/index.shtml

ここもよいかも。
ttp://homepage3.nifty.com/moha/

本ならこれ。C++で書かれてて結構新しい本なのでメモリまわりを工夫すれば参考になるんじゃないかな。
「シューティングゲーム プログラミング 松浦 健一郎 司 ゆき」
amazonで検索してくれ。

あと、以下は解説はないけど豊富なソースがある。
D言語で書かれてるので一番参考になるかもしれない(windows系のやつ)。
タスクはActorというクラスで管理している。
ttp://www.asahi-net.or.jp/~cs8k-cyu/
0966名前は開発中のものです。2007/06/09(土) 08:59:52ID:bbYOCeLH
場合によってはデザパタ本よんだほうがいいかもしれん
0967名前は開発中のものです。2007/06/09(土) 15:23:47ID:EZVk7j6P
>>965
JavaであるといいんですがやっぱりC++のほうがゲームプログラミングは充実してますね。
ありがとうございます。読んでみます。
0968名前は開発中のものです。2007/06/09(土) 17:55:28ID:O4qCppAQ
別にObject指向わかっていればたいしたことはないと思うし、そういうゲームの基礎的な部分ってのは
みんなアセンブラやC,BASIC時代で終えてきた人ばかりだしね

今のほうが基礎的なこととか情報の入手に困る時代
Cでもサンプル少なすぎってわけさ
0969名前は開発中のものです。2007/06/09(土) 19:01:59ID:Z0TKLmia
タスクシステム使った事ないけどワークメモリと関数ポインタもった構造体のリストを時間ベースで管理するってかんじ?
OOと合うの?普通に並列化したほうがいい気がする。
0970名前は開発中のものです。2007/06/09(土) 19:45:16ID:zoMf1LX5
SFCの聖剣伝説のようなARPGを作るにあたって、MVCを考慮したシステム設計で悩んでいます。
ARPGを作成する上で参考になりそうなクラス図一覧やシーケンス図が記載されているような
参考書はあるのでしょうか?
JAVAで無い場合はそれ以外の言語でもいいのでよろしくです。
0971名前は開発中のものです。2007/06/09(土) 22:47:46ID:O4qCppAQ
普通に作れば?
どこがひっかかるの?
0972名前は開発中のものです。2007/06/10(日) 18:04:49ID:x8dp2pdS
このスレの少し前でも話題になってるようなのですが
15歳からはじめる〜の本の応用編PDFのパスワード誰か知りませんか?
出版社のサポートに問い合わせても何の返事も来なくて・・・
0973名前は開発中のものです。2007/06/10(日) 18:16:16ID:/a81qKx+
>>972
あれの葉書の締め切りとかってもう終わってる?
今から葉書出しても遅いかにゃ?
0974名前は開発中のものです。2007/06/10(日) 20:35:19ID:StHZ6Btk
>>813見ると送ってももらえなさそうだね
0975名前は開発中のものです。2007/06/10(日) 23:14:46ID:/a81qKx+
>>974
本当だ
葉書見たら、無料で送付してくれる期間も過ぎてたわ
0976名前は開発中のものです。2007/06/12(火) 22:48:39ID:54Piwy01
graphic関係で質問
BufferStrategyてJPanelで使えないの?
今、JFrameでWindow作って、その上にJPanel乗せて、JPanelにゲーム画面を描画しようと考えているのだが、間違ってるのか?
直接JFrameに描くほうが正しいのか?
それとも何か解決法があるのか?
すまんが、よろしこ
0977名前は開発中のものです。2007/06/13(水) 00:22:14ID:xt1HCEaa
ドキュメントちゃんとよんだ?
1行目に書いてあると思うけど。
0978名前は開発中のものです。2007/06/13(水) 00:48:27ID:DenGxzXk
>>977
もちろん読んでる(BufferStrategyのことだよね)
そこで、WindowsとCanvas上の〜〜〜とあるのはわかるのだが、JPanelやそのほかのコンポーネントでも描画すること多いから、普通に考えるとJPanel上でも使用する方法があるのでは無いかと思って質問した
結論としてはやっぱり、無理なの?
とすると、JFrame上にべた書きか

0979名前は開発中のものです。2007/06/13(水) 00:54:59ID:xt1HCEaa
ようはライトウエイトコンポーネントじゃないんだよ
WindowとCanvasってのことはね
JComponentなんてかいてないでしょ?
0980名前は開発中のものです。2007/06/22(金) 02:15:12ID:26NocAGI
ゲーム作ってみたいがどれダウンロードすればいいか分からない
0981名前は開発中のものです。2007/06/22(金) 10:24:46ID:GQikK9pU
開発環境込みでダウンロードしたいなら
http://java.sun.com/javase/ja/6/netbeans.html

昔ながらのエディタでいろいろいじるなら
http://www.javadrive.jp/install/jdk/index.html
コレ参考にしたらよいよ。
0982名前は開発中のものです。2007/06/23(土) 02:16:15ID:7dvBJduy
>>980
みな、次スレ立てるのが嫌で980踏まないようにしていたのに、こんなど素人が踏むとは…
お前さんスレ立てしたことあるかにゃ?
無いなら985か990に立ててもらうしかないな

>>981
開発環境としては、eclipseの方が情報豊富だから、初心者にお勧めじゃないかな
0983名前は開発中のものです。2007/06/23(土) 09:47:37ID:bWvtpOgZ
インストーラの指示に従うだけでおわるNetBeansのほうが楽、というか環境に対応する速度がやはり速いね
VistaとかJDK6とか
0984名前は開発中のものです。2007/06/23(土) 11:17:05ID:WgjC+sQH
NetBeansって名前が変わる前は使ってたが、まともになった?
0985名前は開発中のものです。2007/06/23(土) 11:22:43ID:nS7OODIS
それなりにまともだけど、あともう一歩って感じかな。6.0に期待。
0986名前は開発中のものです。2007/06/23(土) 11:54:20ID:bWvtpOgZ
ふぉるてか
懐かしいな
あのころはNetBeans3ベースだから今とはもはや別物だよ
0987名前は開発中のものです。2007/06/23(土) 12:41:37ID:qIz7htbl
>>982
情報だけならEclipseだけど、前提知識が必要になるので
初心者にはお勧めできない。

NetBeansはGUIエディタ(Matisse)がEclipseのVEより優れている
初心者でちょっとやってみようとして挫折する部分がすくない。
あと、ゲーム以外でもJavaでやるようなことに対して、
新規に導入しなきゃいけないプラグインがあまりない。
つーか、逆に言うとプラグインで使えるものは少ない。

EoDっていうならばやっぱりNetBeansになるとおもう。
レス数が950を超えています。1000を超えると書き込みができなくなります。