トップページgamedev
984コメント340KB

JAVAでゲーム作成

レス数が950を超えています。1000を超えると書き込みができなくなります。
0001JAVA初心者・・・04/01/17 22:47ID:eiE+Mw3o
はじめまして!!
今年に入ってからJAVAでゲームを作ってみようと勉強しています。
どなたか宝さがしゲームを作るうえで参考になるゲームとツール知りませんか??
知っていたら教えてください。<(_ _)>ぺこり
0907名前は開発中のものです。2005/10/13(木) 00:24:21ID:W8tL621R
場違いはおまいだ
ばちがいというよりバカチンだな
0908名前は開発中のものです。2005/10/13(木) 00:30:28ID:wGF8Lzjx
>>905
俺も>>906に同意。
みたところ>>905はプログラム初心者だと思うんだが
ゲーム作るのにいきなりJAVA勉強しだすってのは
なんか違う気がする。
とりあえずここではなくてスレ立てる前に質問スレを読むべきかと。
0909名前は開発中のものです。2005/10/13(木) 00:34:48ID:M3ScEagT
このスレの名前を言ってみろ
0910名前は開発中のものです。2005/10/13(木) 00:37:10ID:5vxaNiGa
確かにそうだな
>>905は、まずはHSPぐらいからはじめた方がいいかもね
0911名前は開発中のものです。2005/10/13(木) 00:47:23ID:yA298Qwd
ゲーム向けと思われるようなフレームワークもHSPの数倍は揃ってると思うけどな。
問題はこの方面の日本語ドキュメントがすごく少ない事で。
0912名前は開発中のものです。2005/10/13(木) 00:48:26ID:wGF8Lzjx
>>909
JAVAでゲーム作成。
え、でもJAVAがゲームつくるには最適だぜVBなんて糞!って
そんなスレじゃないよね?JAVAでゲーム作ろうぜスレだよね?

え、漏れスレ違いだったのかずっと(´・ω・`)
0913名前は開発中のものです。2005/10/13(木) 00:57:12ID:x7e6Nety
HSPはWindowsAPI on BASICだからJavaよりは融通が聞くよ
6.0からは3Dにも力を入れるらしいから、Javaを捨てる機はないけどね
0914名前は開発中のものです。2005/10/13(木) 01:38:35ID:YlI0WJBy
>>905
JAVAは、現在ではサーバーサイドのソフトウェア開発の為の言語ですので
ゲームには不向きです。
0915名前は開発中のものです。2005/10/13(木) 01:48:21ID:M3ScEagT
とりあえず絵を表示するのはらくだから
Javaは初心者には敷居は低いと思うけどな

無料だし

>>914
フルスクリーン可能とかDirectXやOpenGL使って描画されるとかしらんのだろうか
0916名前は開発中のものです。2005/10/13(木) 02:52:18ID:wGF8Lzjx
いやさすがに釣りだろ
0917名前は開発中のものです。2005/10/13(木) 21:08:27ID:7fkZuJzg
なんか
 Javaを使ってすばらしいゲームが作れる、
 Javaはゲームを作るのに十分なパフォーマンスがある
ってことと、
 Javaは初心者がゲームを作るのにお薦めできる言語
 Javaは習得しやすい言語
を、
ごちゃ混ぜにして話しているやつがいるなぁ。

Javaを知っている人間がゲームを作るのにはいいのだろうけど、
初心者がゲームを作るためにJavaを覚えるのは効率悪いと思うがなぁ。

将来プログラマ(ゲームではない)になりたいのなら話は別だが。

ゲームを作るってことが主目的ならもっといい言語は別にあると思うが。 
0918名前は開発中のものです。2005/10/13(木) 21:32:24ID:sZ94hCLx
>>907
ワラタ
見事なつっこみだ
0919名前は開発中のものです。2005/10/13(木) 21:57:35ID:5JImUKNA
Javaが習得しやすい言語じゃなかったら
どんな言語が習得しやすいんだろう
0920名前は開発中のものです。2005/10/13(木) 22:13:35ID:M3ScEagT
どうでもいいが、このスレは言語を探すスレではなくてJavaを使ってゲームを作成するスレだぞ

0921名前は開発中のものです。2005/10/13(木) 22:17:34ID:T+KG7Ted
うむ。
他言語で作成したいヤシはその言語専用のスレへ池ということで。
0922名前は開発中のものです。2005/10/13(木) 22:46:23ID:sZ94hCLx
JavaはつぶしがきくけどHSPはつぶしがきかないような気がする。就職にそなえるならゲーム作れてそれ以外にも役にたつJavaを覚えたほうが一石二鳥じゃないかな。HSPは履歴書に書けないらしいしね。
0923名前は開発中のものです。2005/10/13(木) 23:11:45ID:SSZFTLJU
ゲ業界以外の就職は板違いだがな
ゲ業界は java でもダメよw
0924名前は開発中のものです。2005/10/13(木) 23:24:30ID:M3ScEagT
別にどこに就職してもいいが、Javaでゲーム開発する話以外は該当するスレで
0925名前は開発中のものです。2005/10/14(金) 01:03:37ID:y/Uzr0db
とりあえず言語関連ですぐに就職の話を出すのはやめたほうが良いと思う。
スポーツする人がみんなプロを目指すわけじゃないのと同じなんだから。
0926名前は開発中のものです。2005/10/14(金) 01:23:02ID:64Q3kCz/
C++を勉強する前段階に、Javaを勉強するのはいいと思うよ。
プログラミングしたことがないのに、C++をやろうとすると多分挫折する。
0927名前は開発中のものです。2005/10/14(金) 02:07:12ID:F7eh9aJl
自分以外でも多いと思うけど
ゲームやある程度規模の大きなプログラムの場合
まず先にJavaでプロトタイプを作る事が多々ある

速度なんか度外視でバグを出さずに動く事を実証したり
クラス設計やデータ構造を練る事がことが主眼
で、この完成したプロトタイプをC++へ移植する段取りだと開発効率が凄く良い

で、このプロトタイプの動作性能で全く問題ないって事が判明して
面倒になって移植を中止する場合も多いよ

だからとりあえずJavaを極めて、それで満足できなかったら他に移ったらいいかも
0928名前は開発中のものです。2005/10/14(金) 06:37:39ID:5TseUKhy
>>926
挫折はせんがWinAPIでGUI作るとノイローゼになる。
JavaはRADにも対応し始めてきたからアプリも行けるようになったね。
0929名前は開発中のものです。2005/10/14(金) 06:46:12ID:RNsnGTSd
>>927
へー。参考になるな。

>>928
俺はC#やってJava勉強し始めたけど、色々似てるから楽かも。
RAD対応が遅れててなんかなーて感じだが、、。

C#のwebサービスやサーバーサイドJavaをゲーム開発環境構築に役立てたいナーと
漠然と思ってるんだが、トライしてる人いる?

ゲームアプリそのものはC++でいいじゃんと思ってる。
0930名前は開発中のものです。2005/10/14(金) 11:05:25ID:7/HW/bmD
JavaのRADって8年以上の歴史がないか?
0931名前は開発中のものです。2005/10/14(金) 17:58:22ID:IcMNZCJV
VBのようなポトペタをRADと呼ぶんだろう、>>929

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


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

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

まあ、開発環境の話題はゲーム製作と全く無関係ではないと思うよ
0940名前は開発中のものです。2005/10/14(金) 23:11:19ID: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に対応してるかどうかはわりと重要

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

というのと

JavaSoundが利用しやすくなった

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

そういや、5.0でVolatileImage>VolatileImageの転送がやっと使い物になったな
1.4のときは描画先に指定するしか結果的に使い道がなかったからね
09799692005/10/23(日) 07:13:18ID:O1xklrGm
>>974
アルファブレンドはとりあえず無しで色々とやってみることにします。
なにせ、技術的な部分を一つ一つ検証していかないといけないと思いますので、
あまり無理しない様にします。
ありがとうございました。
09809752005/10/24(月) 00:19:52ID:NzL2kJ+E
>>976
なるほど、ありがと。
JavaSound絡みを中心にJavDoc調べてみる。
0981名前は開発中のものです。2005/10/24(月) 00:22:51ID:4c5ADkRh
あとはVM自体の高速化ってのが恩恵はあるか
ガベージコレクトの速度は速くなってるし
インクリメンタルGCの実態が並列GCに変更された
0982名前は開発中のものです。2005/10/24(月) 00:49:22ID:ehxIaxpr
Java3Dは今後どうなるんでしょうか?
LookingGlass関連で重要になると思うけど。
私の古いパソコンでは動かなかったので、やる気をなくしたんだけど。
0983名前は開発中のものです。2005/10/24(月) 01:51:04ID:4c5ADkRh
Java3D動いたけど、現行ゲーム目的のものじゃないというのが素直な意見
遅くて使い物にならなかったし

JOGLのほうがOpenGLラッパなのでそのまま使えるか

個人的にはクロスプラットフォームなゲームは2Dしかやらないとおもうんで
JavaSE6のOpenGLサポートによるアクセラレート具合で決まるとおもってます

ただ、マルチコアが今後普及すると面白いくらいにソフトウェアレンダリングが
威力を発揮しますよ
0984名前は開発中のものです。2005/10/24(月) 08:40:23ID:5YftV50R
ふむふむ
仮想化技術でも性能が上がると言う話も有りますね
レス数が950を超えています。1000を超えると書き込みができなくなります。