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

JAVAでゲーム作成

■ このスレッドは過去ログ倉庫に格納されています
0001JAVA初心者・・・04/01/17 22:47ID:eiE+Mw3o
はじめまして!!
今年に入ってからJAVAでゲームを作ってみようと勉強しています。
どなたか宝さがしゲームを作るうえで参考になるゲームとツール知りませんか??
知っていたら教えてください。<(_ _)>ぺこり
019218904/07/13 22:09ID:Ppv9qnfp
>>191
おお、すごいですね。
ただ英語なので少しずつ翻訳しながら読んでみます。。。
0193名前は開発中のものです。04/07/14 02:02ID:u8ckWnIl
Xith3DやAviatrix3Dって、3Dグラフィック機能だけに注目すれば
joglをもとにしたOpenGLラッパーライブラリだと捉えられると思うのですが、
Java3Dと比較するとそれらを採用するメリットはどのあたりにあります?
0194名前は開発中のものです。04/07/16 01:11ID:SKc7EKZg
数ヶ月前位にJAVA始めた(標準API位はそこそこ使えるくらいです)んですが
何年か後でもゲーム作れるようになりたいな等と考えているのですが
まずはGUI(SWINGとか?)あたりから勉強すればよいのでしょうか?
0195名前は開発中のものです。04/07/16 07:47ID:R92f/gQd
>>194
標準なAPIがそこそこ使えるんだったら、GUIを勉強するのもいいんじゃないでしょうか。
0196名前は開発中のものです。04/07/16 09:39ID:8UZgIl4t
>>194
ゲーム作るんだったら、Appletかフルスクリーンの一般的なゲームか携帯アプリの3タイプぐらいに
分かれるけど、流行の携帯アプリなんかはどうでしょう?
0197名前は開発中のものです。04/07/16 10:15ID:P3vfVqR3
正直携帯アプリはオススメできないな
キャリアで3種類に分かれるし
そのキャリアごとでも複数のバージョンに分かれる

なにより大概開発環境は1.3.1を用意しないといけないこと

速度もメモリも制限多すぎて初心者が手を出すのはどうだろう

一般的な普通のゲームつくればいいんじゃない?
javaっていわれないとわからないようなやつが理想
019819404/07/17 01:04ID:Fmqvf01D
こんばんは>>194です。
レス遅くなってすいません。

携帯アプリも楽しそうなんですがいかんとも漏れの携帯JAVA動かないっす_| ̄|○
Jポンだし・・・

何からやっていいかわかんない位の素人なんで
これをやるには何を学ぶってのがいまいちぴんとしてませんが
とりあえず明日は休みなんで最近Java書籍コーナーにならんでる
ゲーム本開発系の本でもいろいろと立ち読みするとこから始めて見ますね

レス下さった皆様ありがdです。
0199名前は開発中のものです。04/07/17 01:22ID:znPg9lBj
そういやどこだったかでjavaの知識あまり無くてもすぐにゲーム作れるライブラリってのみたな
0200名前は開発中のものです。04/07/18 12:27ID:982Rpxpt
JAVA検定2級受けてきた。やばい、落ちるかも。
0201名前は開発中のものです。04/07/19 02:54ID:qRKRiKGC
eclipse使ってしこしこゲーム作ってるんですが、
ひとつ重大な疑問が。
exeファイルを生成するにはどうしたらいいんでしょうか?
元VB派だったので、実行ファイル化する機能がeclipseにも
付いているものとばかり思ってました。
0202名前は開発中のものです。04/07/19 10:44ID:Njk4hhxw
vbできるならそれでjavaw.exeをよぶの作るとかすればよろし

どっちにしろjreが必要なのでインストーラセットにするか
同梱するかが必要だけど、この質問くるということはかなりのjava初心者とみた
java初心者スレの過去ログにこの質問大量に見つかるはずだから見てみるといい


0203名前は開発中のものです。04/07/19 13:23ID:84bjiiMx
exeにしなくてもダブルクリックで起動できるよ。
0204名前は開発中のものです。04/07/20 00:36ID:ZADw7o8l
>>202 >>203
ありがとう。でも考えてみると、Javaって
ゲーム製作に向いていないのかもしれない。(携帯、アプレットを除いて)
どうしよう。他の言語に乗り換えようかな。
0205名前は開発中のものです。04/07/20 00:57ID:OA5Qnkhn
「ゲーム製作に向いているかどうか」を基準にするならツクール系専用ツールを使えばいい。

要はその言語で「作り上げる気があるかどうか」だよ。

実際「向いている」とは思わないが、最近は作りやすくなってるよ。
ゲーム向きな資料は他の言語に比べて探しにくいかも知れないけど、がんがれ。
0206名前は開発中のものです。04/07/20 08:45ID:0/Tm17Iq
言語でゲームに向いてる向いてないってのはあるのか?

HSPやVBのようなものでゲームがたくさん作られていることから
Javaだから特別向いてないってことはない

そもそもダブルクリックレベルの話をしていることから
むしろJavaのほうが取っつきはいいと思うぞ

とりあえずどの辺が向いてないか考える前にやってみることだ
たぶん99%は間違ってる
0207名前は開発中のものです。04/07/20 23:07ID:YNJ+j7r3
でもJavaは配布が面倒そうだね。
JREごと配布して、ユーザには起動用の.batか.exeを叩いてもらうのが使いやすいかなあ。
0208名前は開発中のものです。04/07/21 00:01ID:sjxTaSqB
俺はゲーム以外もexe起動で同梱のjreをよぶようにしてる
一般ユーザーからはネイティブとの違いには気がついてないようだ

batでほとんど足りるんだけど、batを知らない人もいるからね
0209名前は開発中のものです。04/07/23 22:16ID:mbqPJPUB
考え抜いた末、PHPでゲームを作ることにしますた。
021020404/07/28 01:12ID:pigNDSyn
204ですが、いろいろ他の言語もあさってみたけど、
やっぱりJavaでいきます。今eclipseの本かって来ました。がんがります。
0211名前は開発中のものです。04/07/28 02:03ID:H/vRL8q2
javaといわなきゃわからないようなゲームもあるしなんとでもなるさ
言語は問題じゃない
0212名前は開発中のものです。04/07/28 02:04ID:H/vRL8q2
肝心なこと書き忘れた

がんがれ
0213名前は開発中のものです。04/07/28 04:03ID:pxSB7uFP
JAVAでマップパーツをまとめた画像を読み込んで
それをバラバラにして特定のパーツを呼び出すのは
どうすればいいのでしょうか?
0214名前は開発中のものです。04/07/28 04:11ID:pWvKd6xA
>>213
Graphics.drawImage(Image, int, int, int, int, int, int, int, int, ImageObserver)じゃダメなのか?
0215名前は開発中のものです。04/07/28 04:26ID:pxSB7uFP
>>214
public void abc(int x int y){
Graphics.drawImage(Image, 0, 0, 30, 30, 0+30*x, 0+30*y, 30+30*x, 30+30*y, ImageObserver)
}

30*30のパーツだとするとこれでいいのですか?
abc(0,0);
これでImage[0][0]が呼べるのかな。
0216名前は開発中のものです。04/07/28 04:43ID:pWvKd6xA
>>215
いや、そういうことじゃなくてチップ番号と座標を対応させて一枚の画像から必要な部分だけ
その都度スクリーンに描画するようにすれば、読み込んだ画像をバラバラにして管理する
必要はないんじゃないのか?
0217名前は開発中のものです。04/07/28 04:52ID:pxSB7uFP
>>215
そのやり方がよく分かりません。
まだまだ勉強不足のようです。
0218名前は開発中のものです。04/07/28 09:48ID:H/vRL8q2
たしかその一部のイメージの描画はアクセラレーションきかないはずだ
アクション系ならロード時にイメージを新規に作ってそこに描画した方がいいぞ

注意すべきはロードするイメージはVolatileImageではなくて
コンパチブルイメージを使うこと

http://shin.cside.com/product/shingl/index.htm
このライブラリを使ってる人とのやりとりと日記みてわかった
0219名前は開発中のものです。04/08/30 23:48ID:ERs1bP5f
Javaでネットワーク2DRPGを作成しています。
サーバプログラムは参考になるソースを見つけたのでそれを元に作成しています。
クライアントプログラムはいまいち参考になるソースが見つからず、
自己流で作成していましたが、停滞気味です。
クライアントプログラムの作成の参考になるソースや記事等有りましたら、
ご提示いただけると幸いです。
0220名前は開発中のものです。04/08/31 14:25ID:Z2xpHABT
サーバープログラムの参考になるソースどこか教えてください。
0221名前は開発中のものです。04/08/31 19:02ID:eG4/8KZG
>>219
どの部分で行き詰まっているのかかいてもらわんとなんともいえん

>>220
ネットワークの仕組みが分かってるかどうかだよな
まずはTCPベースでいろいろやってみるといいよ
小規模やリアルタイム性が問題にならないのならそのままでもいい

この2者ともまだ言語的にJavaかどうかのレベルではないなー
0222名前は開発中のものです。04/08/31 23:28ID:bWsLtK/e
>>220
全体的な構造は、下記のソースコードを参考にして作成しています。
(エミュレートサーバプログラムです)
ttp://sourceforge.net/projects/l2j/
ttp://sourceforge.net/projects/tupi/

>>221
全体的にこんな構造で作成するといったものが分からず、適当に作成しているため、
特にアーキテクチャと言うものが存在しない状態で、
何とか動いているようだけど、ソースはすでによくわからない状態になっています。
このような状態なので、何か機能を追加するにもなかなか進みません。
ネットワークゲームのクライアント作成に関して、
何か参考になるリソースを教えていただけないでしょうか?
今プログラムは、複数の人がマップを歩けるといった状態です。
0223名前は開発中のものです。04/09/01 00:45ID:JSL7Dn8l
そこまでできているならあとはそのパケットの種類を増やすだけじゃないの?

とにかく機能をプラグイン的に開発で追加できるようにしておいたほうがいい

特に大規模になるRPGならなおさらだが、STGや格闘なんかもこのプラグイン開発が非常に有効だ

だらだら書いたコードは自分の書いたものであっても後からはかなり追いにくくなるしね
0224名前は開発中のものです。04/09/01 00:52ID:jkCSki8i
クライアントの作り方が良く分からないという段階で、
このような大規模(に見える。ソースを見たわけではないので)
サーバのアプリを参考にしてもどうにもならんと思う。

まずは、サーバとクライアントにどのように分けられているかを考えて見ることをお勧めする。

ゲーム作る前に、チャットサーバとチャットクライアントをTCPで作ってみなされ。
それが出来れば、そこに書いているようなプログラムは
ある程度想像できるとおもうが。

要するにチャットでクライアントから送信する文字列の代わりに
クライアントでのキャラクタの操作を送ればいい。
サーバはクライアントから受け取った全ての情報を
全てのクライアントに送り返すだけ。
(ここでは敵キャラとかも居ない前提だから)

まぁ30人ぐらいなら問題なく動くと思うよ。
ちゃんとクリッピングする必要はあるけど。
0225名前は開発中のものです。04/09/01 01:43ID:7oUT+/5j
>>223
ご指摘の通り、だらだらとその場限りのコードを書いているので、
コードが難読化してきました。
プラグインですか。そういう方向性も考えて、
できるだけモジュール化して少しでも読みやすい形に変えていくしかないでしょうか...

>>224
以前、多人数チャットプログラムは作成したことがあります。
チャットとネットワークゲームのギャップは大きいです。
今は全員にブロードキャストしていますが、そのうちAOI (Area of Interest)も考えていきたいと思います。
0226名前は開発中のものです。04/09/01 17:01ID:ISPB1QLl
単発質問スレだろ。
とっとと削除依頼出して来いよ。
0227名前は開発中のものです。04/09/02 07:45ID:Y1Yx8GTH
お前が出してこればいいだろカス
0228名前は開発中のものです。04/09/02 19:10ID:cCoZW+h9
いや、有用です。
jreって同梱して配布してもいいんですか?
0229名前は開発中のものです。04/09/02 19:17ID:u4jYIec6
ライセンスにちゃんとかいてあるだろ
アプリと一緒なら大丈夫と

細かいところはちゃんと自分で読めよ
日本語でかいてあるんだから
0230名前は開発中のものです。04/09/05 18:37ID:JFvG5Cpo
http://www13.org1.com/~taro/typing/frame.html
↑アプレットで作ったタイピングゲーム。
データはたぶんCGIで処理されてランキングを競える。
はまった(σ・∀・)σ
0231名前は開発中のものです。04/09/05 19:08ID:3h4b8ntN
そもそもjreってどうやって添付するの?
0232名前は開発中のものです。04/09/05 19:17ID:GEDEt6J2
jreってのはwinでsunのインストーラしか使ったこと無いやつはわからんだろうが
一定のディレクトリ構成で解凍できていればそれだけで動く

jreのパス/bin/javaw.exeを実行すればそのjreのファイルを使って動いてくれるよ
0233名前は開発中のものです。04/09/06 00:04ID:w3gEzBit
起動するだけならManifest入りのjarじゃ駄目?
jre+exeにするメリットがよくわからない。誰か教えてプリーズ。
0234名前は開発中のものです。04/09/06 00:23ID:Ce27N6UB
>>233
クリックだけで起動できるようにしておけば十分だというのはプログラマ側の意見。
Winユーザは「起動はhogehoge.exeをダブルクリック」とかいうイメージを持っているから、
Win向けならexeも用意しておくのが親切だろうと思う。
0235名前は開発中のものです。04/09/06 00:32ID:mbfLc7Vo
>>234
あるいは、JWS使ってデスクトップにアイコンを置くか、かな。
0236名前は開発中のものです。04/09/06 11:28ID:i7I+EB4B
winユーザなんて低脳は相手にしてないからいいよ
0237名前は開発中のものです。04/09/06 12:20ID:ZBANa6io
FPSを実装する場合、Threadのrun()の中でThread.sleep()使うだけでもいいんでしょうか?
たとえば、sleep(10)とすれば20msごとにrun()(1フレームの処理)が実行されるので50FPSになりますか?

それともrun()の中を無限ループにしてThread.sleep()を使わずif文で

if (System.currentTimeMillis() - temp > 20) {
  temp = System.currentTimeMillis();
1フレームの処理
}

とした方がいいでしょうか?
どんな性能のマシンでも大体50FPSを保つようにしたいと思っているんですが。一般的な
方法はどうやるのでしょう。ヒントお願いします。
0238名前は開発中のものです。04/09/06 18:38ID:+gWz+dMO
>>233
ユーザーにJREが入ってるのを期待するという時点で使いにくい
ネイティブアプリと同じ感覚で使うならコレ

しかも、ユーザーのJREを無理矢理上書きしないことと
稼働確認したバージョンが入っていることで安心感がある

セットアッププログラム使えば簡単にデスクトップにショートカット作ったりできるしな
0239名前は開発中のものです。04/09/06 18:41ID:+gWz+dMO
>>237
タイマ管理ならメインルーチンはなんらかのObject.wait()で待機
そしてTimerTaskのFixedのほうでnotify()
これで一定間隔で綺麗な時間管理が可能

いろんなのをためしたがコレが一番fpsの安定度が高かった
whileなどのループで監視し続けるのは実は安定度がイマイチ
0240名前は開発中のものです。04/09/06 19:47ID:ZBANa6io
>>239
ありがdそれも試してみます
0241名前は開発中のものです。04/09/14 15:41:48ID:9W9CzUmZ
Javaでドラクエ風RPGのスクロール処理実装してみました(けっこうむずいな)。
ソースも入っているのでなんか感想ください。

ttp://gamdev.org/up/img/1230.zip
0242名前は開発中のものです。04/09/14 16:37:46ID:XDf3I/sN
●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●
●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●
●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●
●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●
●●●●●●●●●●●●●●●●きなこ●●●●●●●●●●●●●●●●●
●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●
●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●
●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●
●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●
●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●
これを見た人は確実に【きなこ】です。これをコピペでどこかに1回貼れば回避できます。
これは本当です。やらないときなこ無駄になります
0243名前は開発中のものです。04/09/14 16:46:02ID:mzvwC+OS
きれいで見やすいソースだと思います。
Runnableをインプリメントって昔の手法のようなきがしますが、
ゲームでは普通なんですかね。

ゲーム作ってないJava使いの戯言なので、気にしないでください。

あと、マップデータの保存方法が面白かったです。
これなら、エンコーダ、デコーダが必要ないですね。
こんな発想は私にはありません。

さらにがんばってください。
0244名前は開発中のものです。04/09/14 19:48:38ID:9W9CzUmZ
>>243
ありがとございます。

マップデータは最初アスキーコードでファイルに書き込んでたんですが、最近オブジェクトのシリアライズ機能を知ったので使ってみました。

アニメーション入れるときはRunnableをimplementsするか別にThread拡張したスレッドクラス作るかだと思うんですが新しくスレッドクラス作るの面倒くさかったのでimplementsしちゃいました。本当はアニメーション用のクラス作ったほうがきれいだとは思います。
0245名前は開発中のものです。04/09/14 23:09:03ID:oCIZVQtI
>>241
TimerTask使え
動作が一定にならんぞ
0246名前は開発中のものです。04/09/15 01:11:45ID:x9fcMx2z
>>245
スレッドの代わりにってことですよね。
動作が一定にならないってのはどういう意味でしょうか?
性能が違うマシンで実行すると移動速度が変わるってことですか?
0247名前は開発中のものです。04/09/15 09:04:05ID:x9fcMx2z
上の方に書いてありました。
0248名前は開発中のものです。04/09/18 00:17:02ID:vzZqw4Gl
>>241
すごい。ドラクエっぽいですね!

ブラウザにつなぐだけ、携帯にものってるjavaって
良い言語だねー 自分も色々作れるように調べてみようかな
0249名前は開発中のものです。04/09/19 01:28:27ID:SSes8fIu
>> 239
TimerTask でためしに組んで見たけど、アプレットだと描画が行われない。
アプレットじゃなく普通にフレーム作ってやると動くのだが。
メインスレッドは止めちゃいけないのかな。他にスレッド用意する必要があるとか。

class App extends JApplet {
  public void start() {
    timer = new Timer();
    timer.scheduleAtFixedRate(new WakeTask(this), 0L, 20L);
    run();
  }

  public synchronized void run() {
    while (true) {
      try { this.wait(); } catch (InterruptedException e) {}
      Graphics g = getGraphics();
      g.drawString("hogehoge", 100, 100);
      g.dispose();
    }
  }

  public synchronized void wake() { notify(); }
}

class WakeTask extends TimerTask {
  App app;
  WakeTask(App app) { this.app = app; }
  public synchronized void run() { app.wake(); };
}
025024904/09/19 01:44:48ID:SSes8fIu
自己解決。スレッド作ってそちらで回したらうまくいった。
こーゆーやり方が正しい作法なのかは知らんが。

class App extends Japplet implements Runnable {
  public void start() {
    timer = new Timer();
    timer.scheduleAtFixedRate(new WakeTask(tins), 0L, 20L);
    new Thread(this).start();
  }

  public synchronized void run() {
      ・
      ・
0251名前は開発中のものです。04/09/19 09:06:51ID:goqDjYTZ
start()をオーバライドしちゃだめだろ
0252名前は開発中のものです。04/09/19 10:53:43ID:Aq0Xkjw4
横から失礼。
public class App extends Applet{
      :
  class task extends TimerTask{
    public void run(){
メインの処理;
      repaint();
      :
ではどうなんでしょうか?
0253名前は開発中のものです。04/09/19 10:56:46ID:g0x391w9
よく分かってないのならrunのなかで各種初期化処理やれ
ゲーム自体独立したスレッドでいい
0254名前は開発中のものです。04/09/20 06:02:36ID:W3SKt6/C
TimerTaskを使った絵画ループの書き方としては


TimerTask task = new TimerTask() {
public void run() {
canvas.repaint();
}
};
timer.schedule(task, 0, 1000/fps);

これでいいのかな。
誰が参考になるコードキボンヌ(2D対戦格闘もイケるとか、640x480で30fpsはいけるとか、これ本当?)
0255名前は開発中のものです。04/09/20 13:13:54ID:ioTee/hT
GraphicsConfiguration#createCompatibleImage(width, height, Transparency.BITMASK);
を使用すると恐らくハードウェアアクセラレーションがかかる状態で描画が出来る予感。
OSとJavaVMによりけりだけど。
実はSWTのGCを使うほうが安定して上記とあまり変わらないスピードで描画が出来る罠があったりする。
0256名前は開発中のものです。04/09/20 18:28:35ID:faYuQGQa
>>239
おまいさんが実験したJavaのソース キボンヌ。
0257名前は開発中のものです。04/09/20 19:27:10ID:Y6umYSPO
>>254
640*480-60fpsいけるよ
ただしアルファブレンド拡大縮小回転を使わないという前提
1.4.2ではこれらはアクセラレーション効かないからね

アクセラレーションはいろんな場合に様々な要素で効いている
Windowsならメモリの確保の仕方でDDB、DIB、DirectXを使って実装している。
G400とかMatrox系はDIBやDDBはすんごい早い。
DirectXはRIVA128以降〜最新チップまで比較的安定。

>>255
それであってる
描画先がVolatileImageやフルスクリーン時のバックバッファならDirectXが積極的に使われるっぽい
描画先もコンパチブルイメージだとDDB
通常のBufferdImageはDIBになる

>>256
あの説明で分からないのならやめとけ
0258名前は開発中のものです。04/09/20 19:46:32ID:faYuQGQa
>>257
実装は出来てるよ。
だけど人のソース見るのって楽しいじゃん。
0259名前は開発中のものです。04/09/20 19:54:46ID:Y6umYSPO
ちゃんと動いているのならそれでいいだろ
026024104/09/21 22:03:43ID:og0kzD+1
>>241でドラクエ作ってたものです。
Javaのゲームプログラムを扱ったページを始めたのでよろしければいらしてください。いろいろアドバイスいただければ幸いです。

http://f57.aaacafe.ne.jp/~javagame/index.html
0261名前は開発中のものです。04/09/21 23:17:10ID:BR/zZftm
がんばれ

個人的にはMSVMの新規配布がもはや不可能な現状では
Java2対応にしてスタンドアロンアプリケーションのほうが
いろんなことできて面白いと思うんだが

がんばれ
0262名前は開発中のものです。04/09/21 23:34:31ID:og0kzD+1
>>261
ありがd。
アプリケーションにすると余計な処理が増えて、少しわかりにくくなると思ったんでアプレットから書きました。
一応、Java知っている人向けに書いてるのでJDK入れてあることを前提にしてます。
今後はアプリケーション版も追加していこうと思います。
0263名前は開発中のものです。04/09/22 01:17:04ID:OSkO/iZz
というかアプリケーションの方が大概なめらかで高速
しかもアプレットより簡単だぞ
0264名前は開発中のものです。04/09/22 10:50:38ID:4p3loCSB
>>263

>しかもアプレットより簡単だぞ
そうなんですか?
私のアプリケーションの作り方だと

public class FrameClass extends JFrame {
 public FrameClass() {
  MainPanel panel = new MainPanel();
  getContentPane().add(panel);
 }
}

class MainPanel() extends JPanel {
 public void paintComponents(Graphics g) {
  // アプレットのpaint()と同じ
 }

 // キーボード・マウス処理・スレッド等の実装
}

っていうようにフレームとパネルの2部構成にしてるんですが結構面倒なような。
あとアプレットの方がダウンロードしなくても手軽に見てもらえると思ってます。
完成品はアプリケーションの方がいいのは同意しますが。
0265名前は開発中のものです。04/09/22 16:34:46ID:OSkO/iZz
いやそれだとSwingつかって描画してるだろ
そんな面倒な手続きはいらん
0266名前は開発中のものです。04/09/22 20:33:54ID:xw9EK35l
Swing使いたいんで。というかSwingから入ったのでFrame使ったプログラム知らないです・・・
よく考えた結果アプレットやめてアプリケーションにしました。
0267名前は開発中のものです。04/09/22 20:54:00ID:OSkO/iZz
別にSwingつかってもかまわんよ
RPGみたいなのはうまく使えば便利に管理できるだろう
たとえばウインドウはレイヤー使えば綺麗に重ね合わせされるわけだし

でも重ね合わせの処理とか絶対的な速度はSwingまかせなであぶないので
STGとかアクション系ならフレームの生成くらいしかSwingつかわないんじゃないかな

アプリケーションならおとなしくBufferStrategyつかっとけ
0268名前は開発中のものです。04/09/22 21:22:57ID:YNa9oJMU
参考サイト
http://www5.airnet.ne.jp/sakuraba/java/laboratory/JDK1.4/Graphics/BufferStrategy/BufferStrategy.html
0269名前は開発中のものです。04/09/22 23:38:43ID:xw9EK35l
アドバイスありがとうございます。
勉強させてもらいます。
0270名前は開発中のものです。04/09/24 04:57:16ID:JbcS0+vI
ゲームってゲームの雰囲気に合ったUIがあってこそだと思うんだよ

Swingなんてクソ重いライブラリ呼び出すなんてNO
ゲームに必要な分だけのシンプルなUI widgetを作るのが漏れは好きだ。
0271名前は開発中のものです。04/09/24 12:33:08ID:iDLeFsqJ
>>270
JComponent継承して作れよ

どのみちゲームでやるなら特にアクション系は垂直同期とるだろうし、
バッファリングをSwingにまかせるのはRPGやAVGならありだと思う
0272名前は開発中のものです。04/09/24 23:41:38ID:JbcS0+vI
>>271

漏れはゲームのデザインはユーザインターフェースのデザインでもあると考える。
A列車で行こう4っていうゲーム、ユーザインターフェースがWindows標準の(しかしVBで作ったようなダサい)
ウィンドウシステム使ってた。あれでどれだけゲームの削がれたか。
0273名前は開発中のものです。04/09/25 00:30:14ID:LEmXE2S9
>>272
いや、Swing誤解している

あれまじめにいじればわかるけど、ゲームのインターフェース並のことができるぞ
Swing作ったやつはいかれてると思った
0274名前は開発中のものです。04/09/25 02:21:25ID:GBpB+5WY
>>273

だろうけど、よくよく考えると自分で必要最小限のもの作ったほうがスマート
せっかくJavaのパフォーマンス上がっているのに、Swingなんざ、いろいろ制約あるし重いし。
0275名前は開発中のものです。04/09/25 03:01:16ID:LPiCwWti
重いってコンポーネントが?描画が?
0276名前は開発中のものです。04/09/25 07:51:08ID:Nt5AgBoK
>>275
コンポーネントじゃないかな。起動が重いのは確かだと思うけど。

ただ個人で作るミニゲーム程度なら全然問題ないと思うけど。Swingの重さが目につくレベルのゲームってどのくらいの規模かな?3DMMOとかその次元の話?
というかSwingのコンポーネント(ボタンとかテキストボックス)とか普通のゲームでは使わないじゃん。
0277名前は開発中のものです。04/09/25 09:21:38ID:LEmXE2S9
ボタン、リストボックス、パネル、テキストボックスあたりはMMORPGとかでふつーに使うね
0278名前は開発中のものです。04/09/25 14:32:41ID:VXdMSo9v
作りたいゲーム次第だろ。
しっかり作り込んでまともなゲーム作りたいならSwingは使わないだろうし、
ちょっとしたミニゲーム程度ならわざわざUI自作するのはだるい。
適材適所って奴だな。
0279名前は開発中のものです。04/09/25 16:28:11ID:piik0Rlz
http://appelv053.itbdns.com/game.html

こういうゲームを作ってみました
クリックすると始まります

感想をお聞かせください
0280名前は開発中のものです。04/09/25 17:37:50ID:Nt5AgBoK
わ、早稲田を馬鹿にするなーーーーーー。


で?これ本物の写真なの?
0281名前は開発中のものです。04/09/27 00:04:06ID:aLBna6ae
質問です。
Javaアプリでゲーム作ってますが、どうしても逆コンパイルかけられて
ソースを覗かれるのがいやなのです。
何か良い方法はありませんか?
0282名前は開発中のものです。04/09/27 00:26:23ID:6bIETT3B
Javaで書かない。
0283名前は開発中のものです。04/09/27 00:32:04ID:+O7GVTTF
>>281
JETとかTowerJとかGCJとか。
0284名前は開発中のものです。04/09/27 00:32:55ID:+O7GVTTF
ってマルチだったのか。

……ってのまで見てしまった。
0285名前は開発中のものです。04/09/27 00:38:10ID:yFK54/bd
>>281
難読化ツール使え。
それでも、がんばれば覗けるから、
結論は>>282

商用のものはループ改変までしてくれてすごいよ。
別のソースのように逆コンパイルされる。

まぁ、完璧って言葉はこの業界にはないからね。
0286名前は開発中のものです。04/09/27 00:44:34ID:be/ifB4A
オレも「マルチだったのか」って書いた一人なわけだが。
あちこちで、「マルチだったのか」って書き込みがあって、
なんか笑える。
0287名前は開発中のものです。04/09/27 10:15:54ID:xjw1fHGW
俺もマルチだったのかと書いてしまった
Javaとつくスレすべてにかいてある壮絶なマルチなんだもん
0288名前は開発中のものです。04/09/27 12:00:46ID:fcgkGfZt
http://www.vector.co.jp/download/file/win95/game/ff323005.html
0289名前は開発中のものです。04/09/27 12:09:40ID:IizXWLKV
('A`)?
0290名前は開発中のものです。04/09/27 12:16:48ID:fcgkGfZt
宝さがし
0291名前は開発中のものです。04/09/27 14:23:52ID:xjw1fHGW
いきなりダウンロード直ではウイルスと思われても仕方ないな
こういうのはスルーで
■ このスレッドは過去ログ倉庫に格納されています