[表示 : 全て 最新50 1-99 101- 201- 301- 401- 501- 601- 701- 801- 901- 2chのread.cgiへ]
Update time : 05/09 21:08 / Filesize : 296 KB / Number-of Response : 982
[このスレッドの書き込みを削除する]
[+板 最近立ったスレ&熱いスレ一覧 : +板 最近立ったスレ/記者別一覧] [類似スレッド一覧]


↑キャッシュ検索、類似スレ動作を修正しました、ご迷惑をお掛けしました

Javaでゲーム作成 2本目



1 名前:名前は開発中のものです。 [2005/10/27(木) 09:43:50 ID:dzSvRQXE]
Javaでのゲーム作成について情報交換をするスレです。
ゲーム作成以外の話題はム板(pc8.2ch.net/tech/)、
他言語に関する話題は他スレでお願いします。

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

テンプレは>>1->>10あたりを参照

162 名前:名前は開発中のものです。 mailto:sage [2005/12/20(火) 23:19:12 ID:WpmlUq/X]
ん?流しっぱなのかスタックなのかの指定もこの方法なら簡単なんだけど・・・

163 名前:名前は開発中のものです。 [2005/12/21(水) 00:10:55 ID:38cOblp2]
>>153
たいしたことのないものは、そこら辺にソースが転がってるから、
作る気が起きないんだよね。
かといって、ちょっとレベルや規模を広げると、1人じゃお手上げになるし。


164 名前:名前は開発中のものです。 mailto:sage [2005/12/21(水) 00:12:34 ID:2Odzg4dt]
たとえばぷよぷよとかテトリス、コラムスなんて作るのは簡単

でも、しっかり音出したり演出出したりバランス取りしてちゃんとしたものを作る
という段階まではなかなか難しい

165 名前:名前は開発中のものです。 [2005/12/21(水) 20:44:15 ID:+HySSU2I]
そこそこできたら飽きてしまって次の作りたくなる

166 名前:名前は開発中のものです。 mailto:sage [2005/12/21(水) 21:12:53 ID:2Odzg4dt]
その差が途中で投げ出すやつか、それとも同人屋やソフト屋としてちゃんとやっていけるかどうかの差

167 名前:名前は開発中のものです。 mailto:sage [2005/12/23(金) 20:23:05 ID:3FOPkpSW]
Javaで作ったRPGでソース公開してるサイトありますか?
もしくはセリフの表示のやり方の紹介とか

168 名前:名前は開発中のものです。 mailto:sage [2005/12/23(金) 20:57:04 ID:/tlDw98+]
それ難しくはないだろ

どの変が難しいと思うんだ?


169 名前:名前は開発中のものです。 [2005/12/23(金) 21:11:56 ID:PPOyiaLP]
>>167
テンプレ

170 名前:名前は開発中のものです。 [2005/12/24(土) 11:52:15 ID:iqSdFGcF]
だれかJava3Dでゲーム作ってる人いない?



171 名前:名前は開発中のものです。 mailto:sage [2005/12/24(土) 12:56:39 ID:gnp/5lgI]
1年位前に触ったときJOGLならともかくJava3Dものすごく遅くてお話にならなかったけど
DirectXの実装のほうでね



172 名前:名前は開発中のものです。 mailto:sage [2005/12/24(土) 16:05:43 ID:twljoP+/]
>>168-169 レスサンクス
ドラクエみたいに新しい行が挿入されたら
既に表示されてた行が上にずれて1番上の行が消えるとか

主人公の名前を変えられるゲームにおいて
メッセージ中で表示するときはどうしたらいいかとか

ファイルからセリフを読み込むにはとか

テンプレ見て勉強します

173 名前:名前は開発中のものです。 mailto:sage [2005/12/24(土) 16:31:00 ID:Al8Kj3xL]
>>172
> 既に表示されてた行が上にずれて1番上の行が消えるとか
Clipが神だと分かったあの日の夜

174 名前:名前は開発中のものです。 mailto:sage [2005/12/24(土) 16:37:56 ID:gnp/5lgI]
それ文字列をスクロールさせるのではなくて
BufferedImageで文字列のバッファ用意して毎フレームブリットしたほうが楽


175 名前:名前は開発中のものです。 mailto:sage [2005/12/26(月) 08:43:49 ID:zSwx4yvQ]
>>174
勉強になります
dd

176 名前:名前は開発中のものです。 [2006/01/07(土) 15:15:38 ID:EFX7v943]
Javaでタスクシステムって作れる?

177 名前:名前は開発中のものです。 mailto:sage [2006/01/07(土) 18:00:27 ID:yOZ6b1cq]
オブジェクト指向なんだから普通はポルモルフィズム(多態性)でOK

178 名前:名前は開発中のものです。 [2006/01/15(日) 10:23:57 ID:53jl8YVS]
SWTのImageとGCをつかってスプライトを描画しているんですが、
左右反転、上下反転をする際に、
setTransform(...)
で、trans.scale(-1,1);
などとすると複数のスプライトを描く際に実用に耐えられないくらい重いです。
AWTのdrawImageみたいに、それだけで左右、上下反転できないのでしょうか?
srcX,destXを反転させれば良かったAWTにたいし、
SWTだとwith,height指定なので引数に負数を渡すと実行時エラーになってしまい、それだけではできないようにみえます。
ご存じの方、おられましたら宜しくお願いいたします。

179 名前:名前は開発中のものです。 mailto:sage [2006/01/15(日) 11:12:29 ID:aMKMqoWr]
SWTはEclipse以外では使わないこと
が正しいと思う

PureJavaのほうがまともな実装ってどういうことさ
って場面がよくある


180 名前:名前は開発中のものです。 mailto:sage [2006/01/15(日) 20:09:28 ID:Vrds102b]
SwingでJava2D使おうぜ



181 名前:178 mailto:sage [2006/01/15(日) 22:49:28 ID:53jl8YVS]
>>178,>>179
なるほど、ありがとうございます。
SWTをつかってアニメーションエディタとゲーム自体を一緒に作っていたのですが、
考え直した方が良いみたいですね。


182 名前:名前は開発中のものです。 mailto:sage [2006/01/15(日) 22:52:15 ID:53jl8YVS]
う、間違えました。
>>180
Swingの方がやはりいいんですね。SWT自体は割と扱いやすいとは感じているのですが、
最近は情報も出てこず考え直したりもしています。
SWTを使うと局所的なところでWin32APIなどを呼べるのも魅力なのですが。
思想には反しますけれど。

183 名前:名前は開発中のものです。 mailto:sage [2006/01/16(月) 00:14:43 ID:DTLttG/1]
PureJavaとはいえJava2DってDirectX使われてるの知ってる?
情報量は多いしものによっては速度面でも結構いける

1フレームあたり1000個のスプライトとか余裕


184 名前:名前は開発中のものです。 [2006/01/17(火) 03:10:21 ID:9917DXoA]
JAVAでカードゲームを作ろうと思っているのですが、
某サイトに開発ツールJAVA2 SDK 1.3と書いてあるのですが、
このスレのテンプレには(Ver5.0のJDKとVer1.4.2) しかなく
どれをDLすればいいのか分かりません
どなたか教えてもらえないでしょうか?


185 名前:名前は開発中のものです。 mailto:sage [2006/01/17(火) 06:08:31 ID:Om3jnpEH]
>>184
ハァ?
質問の意味が読めん

186 名前:名前は開発中のものです。 mailto:sage [2006/01/17(火) 06:37:28 ID:1vDzG9rV]
>184-185
エスパーちからを発揮してみると、参考にしようと思ったサイトが
1.3だったので、1.3が良いと思ったのではなかろうかと。
1.4か5.0でやってみたら?ほとんどの場合、動くと思うよ。>184

187 名前:名前は開発中のものです。 [2006/01/17(火) 14:12:13 ID:jNVA85J7]
>>185-186
日本語がおかしくてすみません
参考にしようと思ってるサイトでは1.3と書いていて
1.3を探したけど、1.4か5.0しかなくて困ってます。
それから1.4と5.0の違いが分からなくて
どっちをDLしていいのか分かりません
違いを教えてもらえないでしょうか?
ちなみにiアプリのゲームを作ろうと思ってます

188 名前:名前は開発中のものです。 mailto:sage [2006/01/17(火) 14:22:08 ID:4NyPfQ7d]
ここではJava2SEの話題がメインなので
J2MEの話題はプログラム技術板に専用スレがあったと思うのでそちらのほうがいいかと。

そして動作保障している1.3を使うのが吉。
互換性は細かいタイミングが必要なところではチューニングすればするほど問題が出やすいし。

J2MEといってもiアプリは独自の層があついのでいわゆるJavaという豊富な標準API
を使って開発するという感じはないと思われ。

189 名前:名前は開発中のものです。 [2006/01/17(火) 17:16:07 ID:jNVA85J7]
おお!?
そうなのですか
全然知りませんでした^^:
すみませんでした
そっちに行きます

190 名前:名前は開発中のものです。 mailto:sage [2006/01/18(水) 06:35:27 ID:kAS6/zeP]
すみませんCPad for Javaについて質問です

CPad for Java 2.31
にてAntが使えるというので、以下のページのやり方で設定してみました
ttp://javacafebreak.tripod.com/document/cpad_tips/cpad_ant.html

このページには「CPadで、Antを実行するには、『F6』キーを押すか、メインメニューの『実行』→『Ant』を選択します」
とかかれているのですが、『F6』キーを押しても何も起こらないし、
「メインメニューの『実行』→『Ant』」などというメニュ項目も見当たりません

CPadで、Antを実行して、さらにエラーメッセージをCPad上のメッセージウィンドウで表示させている人たちは
どうやっているんでしょう
(DOS窓でAntの実行を単独実行するやり方はわかっているのですが、それだとCPadのメッセージウィンドウに表示できないので不便なんです)
環境はWindows2000 JDK1.5.0_06 です



191 名前:名前は開発中のものです。 mailto:sage [2006/01/18(水) 10:53:20 ID:c2N1wZsa]
もしかして普通のJavaスレと勘違いしてる?

192 名前:名前は開発中のものです。 [2006/01/23(月) 17:40:02 ID:kW9KAIGh]
サーブレットとかJSPでゲームを作るのは無理ですか?

193 名前:名前は開発中のものです。 mailto:sage [2006/01/23(月) 17:48:15 ID:yJIlIQCh]
WEBアプリのゲームはあるから無理ではないけど
別にたいした仕組みが必要になるわけでもないと思われ

194 名前:名前は開発中のものです。 mailto:sage [2006/01/23(月) 22:17:38 ID:/EcVc25a]
シューティングでインタープリターをつくろうと思ったのですが
文法をどうやって決めればいいのか、どう実行させればいいのか
いまいち想像できません。
敵の出現まではできそうですが、敵の弾の設定(どんな弾を、いつだすか)を
インタープリターでどう表現したらいいのでしょうか?

195 名前:名前は開発中のものです。 mailto:sage [2006/01/23(月) 22:27:55 ID:I0QlWZ4d]
>>192
WEBブラウザで行うCGIゲームライクなものなら当然可能。
というか、漏れ自身が現在進行形で作成中。

196 名前:名前は開発中のものです。 mailto:sage [2006/01/23(月) 22:46:33 ID:tL3TpBsR]
>>194
なんか設計に悩んでるっぽいことはわかった。
その調子でがんばれ。

197 名前:名前は開発中のものです。 mailto:sage [2006/01/23(月) 22:49:50 ID:yJIlIQCh]
>>194
まずは敵のクラス内で処理してみれば?
それを外に出したほうがいいか、ださないほうがいいかは案件しだい

198 名前:名前は開発中のものです。 mailto:sage [2006/01/24(火) 14:41:32 ID:vo2dZIRF]
インタープリターよりも簡単なコードジェネレータの方がいいんじゃない?

199 名前:名前は開発中のものです。 mailto:sage [2006/01/26(木) 15:59:14 ID:Pd3Qgsdn]
格ゲーで斜めジャンプをさせたいんだけど、上キー+右キーでやらせるにはどうしたら良い?

以下制作中のソース。
public void keyPressed(KeyEvent e){
 int K = e.getKeyCode();
 if(K==KeyEvent.VK_UP) {
  st = 8;
  KeyAction();
 }else if(K==KeyEvent.VK_DOWN){
  st = 2;
  KeyAction();
 }else if(K==KeyEvent.VK_RIGHT){
  st = 6;
  KeyAction();
 }else if(K==KeyEvent.VK_LEFT){
  st = 4;
  KeyAction();
 }
 repaint();
}

200 名前:名前は開発中のものです。 mailto:sage [2006/01/26(木) 16:52:43 ID:ITPJnSj3]
>>199
まず根本的なことからなおしましょう

キーのイベントで処理は入れないように

メインループでのみ処理するようにしてください
イベントではフラグの上げ下げのみで



201 名前:199 mailto:sage [2006/01/26(木) 23:31:16 ID:Pd3Qgsdn]
>>200
サンクス。できるようになりました。

202 名前:まほろば ◆BmUbLWewsM mailto:age [2006/01/28(土) 18:36:32 ID:K+4gOIY6]
いやーこのスレは役にたつなー。。
ところで、classファイルからソースコードを盗まれないようにするにはどうしたらいいんでしょ。。


203 名前:名前は開発中のものです。 mailto:sage [2006/01/28(土) 18:42:43 ID:u3ZzJuZS]
正直それはあきらめろ

クラスローダ自作したところで実行中のメモリのぞかれれば意味なし
nproではじくとかやると誰も使うやつはいなくなるぞ

ネイティブバイナリでもコンパイラの癖とあたりつければそれなりに追えるんだし・・・とわりきれ
その分開発効率がいいんだからガンガンものづくりに専念しなさいといいたい

オンラインゲーなら毎日こまめにクラスを再配布していれば大丈夫かと


204 名前:まほろば ◆BmUbLWewsM mailto:age [2006/01/28(土) 21:29:17 ID:K+4gOIY6]
>>203
実行中のメモリのぞかれれば意味なし
そんな事出きるの?ソースは?
やろうと思えばできるとか妄想でつか?

205 名前:名前は開発中のものです。 mailto:sage [2006/01/28(土) 21:37:25 ID:EnQtmKxX]
>>204
メモリ覗くだけならWindows上で実行しちゃえば簡単だろうけど、
手軽に解析って話は俺も聞いたこと無いな。

うちの会社はDashOとかいうバカ高い難読化ツールを買った。
そんな必要無ぇって主張は通らなかった。

206 名前:名前は開発中のものです。 mailto:sage [2006/01/28(土) 22:44:25 ID:PUcSGIMg]
読みやすくしてくれるツールはありませんか。

207 名前:名前は開発中のものです。 mailto:sage [2006/01/28(土) 23:06:37 ID:u3ZzJuZS]
>>204
多少は調べろ
クラスロードした後はざる

208 名前:まほろば ◆BmUbLWewsM [2006/01/28(土) 23:57:58 ID:K+4gOIY6]
>>207

209 名前:名前は開発中のものです。 mailto:sage [2006/01/29(日) 01:11:24 ID:1KG7yFUT]
結局いいスレだったのをコテハンが壊したってことか。

210 名前:名前は開発中のものです。 mailto:sage [2006/01/29(日) 02:35:06 ID:PecoYXTp]
もう大学生は春休みか……
いいご身分だなぁ。



211 名前:名前は開発中のものです。 mailto:sage [2006/01/29(日) 12:34:08 ID:FRX/ORuz]
低脳だから卒業後ニート行きで
さらに良いご身分だな

212 名前:まほろば ◆BmUbLWewsM [2006/01/29(日) 13:24:43 ID:LX0lKjST]
まったくだなww

213 名前:名前は開発中のものです。 [2006/01/29(日) 17:14:26 ID:zbiz4Pm/]
GraphicsクラスのdrawImageで浮動小数点数を使う方法って何かない?
ゲームのキャラクターを表示させるためにはint型では精度が悪いんで。

214 名前:まほろば ◆BmUbLWewsM [2006/01/29(日) 17:28:00 ID:LX0lKjST]
ないよ。javadoc見りゃ分かるじゃん。。

215 名前:名前は開発中のものです。 mailto:sage [2006/01/29(日) 17:45:07 ID:ec+1eYbr]
>>213
そういうときは大きいバッファを持つことで回避する
320*240の画像を0.5単位で扱いたいときは640*480とかね

drawRenderedImageとかtranslateを使う方法もあるが
用途がゲームなら使わないほうがすっきりしていいと思われ


216 名前:名前は開発中のものです。 mailto:sage [2006/01/29(日) 17:57:12 ID:2i9o9yjB]
>>213
Graphics2D でもいいのなら AffineTransform を使えばできる。
デフォルトでは AffineTransform を使用しても補完してくれないので、
補完方法を設定する必要がある。

Graphics2D g2 = (Graphics2D)g;
g2.setRenderingHint(RenderingHints.KEY_INTERPOLATION,
RenderingHints.VALUE_INTERPOLATION_BICUBIC);
g2.drawImage(image, transform, null);

こうすると 0.01 単位でヌルっと動かせるけど、それなりに重くなるし
画質もはっきりしたりぼやけたりするので逆にオススメできない。
キャラ自身の内部座標を小数点で扱うのは自由だけど
画像の描画に関しては座標を int で処理するのが現実的だと思う。

217 名前:名前は開発中のものです。 mailto:sage [2006/01/29(日) 21:48:41 ID:qPM3IQVC]
正男ってjava?

218 名前:名前は開発中のものです。 [2006/02/01(水) 20:44:05 ID:W1eX6IZO]
Javaアプレットでしょ

219 名前:名前は開発中のものです。 [2006/02/05(日) 00:25:12 ID:LCSDYznu]
フルスクリーンモードで質問なんですが

  public static void main(String[] args) {
    GraphicsEnvironment env = GraphicsEnvironment.getLocalGraphicsEnvironment();
    GraphicsDevice device = env.getDefaultScreenDevice();

    JFrame frame = new JFrame(device.getDefaultConfiguration());
    frame.setUndecorated(true);

    device.setFullScreenWindow(frame);

    MyPanel panel = new MyPanel();
    frame.getContentPane().add(panel);
  }

こんな感じでフルスクリーン化するフレームの上にパネルをはりつけてます。
このときフルスクリーン状態にはなるんですが、パネルのpaintComponent()が
呼ばれてないらしく描画されません(画面が真っ白のままでサウンドはなります)

panelのpaintComponent()が呼ばれるにはどう修正すればよいでしょうか。

220 名前:名前は開発中のものです。 mailto:sage [2006/02/05(日) 00:52:34 ID:NFbwVJ0F]
フルスクリーン使ってるならSwingのイベントモデルにはこだわらないのが普通
BufferStrategyってのをしらべてごらん

ようは好きなタイミングで描画が出来るのだ



221 名前:名前は開発中のものです。 [2006/02/05(日) 01:21:52 ID:LCSDYznu]
ありがとうございます。
やっぱそれですか。そうかもと思って実装始めたらできました。
frame.createBufferStrategy(2);
とやってpaintComponent(g)をdraw(g)にかえて
BufferStrategy strategy = window.getBufferStrategy();
Graphics g = strategy.getDrawGraphics();
draw(g);
g.dispose();
でうまく描画できました。

222 名前:219 [2006/02/05(日) 01:30:28 ID:LCSDYznu]
もう一つあるのでアドバイスいただけるとうれしいです。

Window window = device.getFullScreenWindow();
window.add(JPanelオブジェクト);

とやってフルスクリーン上にパネルを置いています。
こうするとパネルがちらついてしまうのですが対策はあるでしょうか。

223 名前:名前は開発中のものです。 mailto:sage [2006/02/05(日) 01:52:48 ID:8ByMu9YS]
まずパネルをおく必要はない
ウインドウ全体を使って描画してるから


224 名前:219 [2006/02/05(日) 09:38:19 ID:LCSDYznu]
コマンド選択パネルみたいに使っているんですが。

フルスクリーン上でスペース押すと右上にパネルが表示されます。
KeyboardListenerを実装してるのでキー入力はそのパネルが奪い
パネルを消すともとのフルスクリーン上にキー入力がいくという感じです。
パネルじゃなくてCanvasでもいいんですがどうもちらつきます・・・

パネルで何も描画しなくてもちらつくということはフルスクリーンにしてる
JFrame上にコンテナは置いちゃだめということでしょうか。

225 名前:名前は開発中のものです。 mailto:sage [2006/02/05(日) 12:29:26 ID:8ByMu9YS]
おいてはいけないということはないが、BufferStrategyはつかえんぞ

226 名前:219 [2006/02/05(日) 13:00:29 ID:LCSDYznu]
そうですか・・・ボタンやらも全部だめだったのでBufferStrategyの描画領域にコンポーネントは配置してもちらついてしまうみたいですね。
あきらめてパネル風のウィンドウを描画することにします。

227 名前:名前は開発中のものです。 mailto:sage [2006/02/05(日) 13:25:23 ID:8ByMu9YS]
ゲーム目的ならコンポーネントの描画は避けるべきだな
すべて自前で描画しないとリフレッシュとかのタイミングがコントロールできん


228 名前:名前は開発中のものです。 mailto:sage [2006/02/05(日) 14:37:09 ID:15xceU0H]
便乗だけど、フルスクリーンで文字の入力はどうすればいいの?
英語だけなら楽勝かもしれないけど、漢字変換とかどうすればいいのかさぱーり。
以前コンポーネント埋め込んだら酷いことになって諦めてた

229 名前:名前は開発中のものです。 [2006/02/05(日) 14:40:46 ID:LCSDYznu]
MMORPGの市販ゲームとかできてるからやり方あるんだろうけど。Javaだとどうなるんだろ。自分も知りたい。

230 名前:名前は開発中のものです。 mailto:sage [2006/02/05(日) 15:23:24 ID:8ByMu9YS]
MMORPGの場合フルスクリーンでもただすべての画面を占有するだけ
といった作りかたしてると思われ

JavaでやろうとするならBufferStrategyをあきらめるほうがいいだろうね
JPanelに画面部分を描画、paintComponentでバックバッファから自前で転送



231 名前:名前は開発中のものです。 mailto:sage [2006/02/05(日) 17:31:23 ID:XoC15JKP]

LWJGLやJOGLで日本語文字を画面に表示するにはどうしたらいいんでしょうか。
LWJGLにAWTGLCanvasっていうのがあって、これを使えばできそうなんですが、
サンプルがなく使い方がいまいち分かりません。

みんなはどうやっているんだろう。

以前Graphics2Dでゲーム作ろうと思ったけど、アルファブレンド処理がソフトウェア描画に
なったので、LWJGLに移ったんですが。

うううーーーん

232 名前:名前は開発中のものです。 mailto:sage [2006/02/05(日) 17:43:24 ID:8ByMu9YS]
基本はDirectDrawだからな
一応オプションでDirect3Dで動作させればアルファブレンドもハードウェアになるが
レンダリング品質の問題とか通常一番使うブリットが遅いとかJava2Dベースでは
通常合成しか出来ないとかが問題になるからな

LWJGLはまったくさわったことがないのでわからん
JOGLはOpenGLそのままだね
俺が触ったときはSDLとのリンクが未実装だったので対象には上がらなかったが

Java3Dは高級すぎてゲーム用途にはまったく使えないという感じだった
速度がまったくでないことやピクセル単位の処理という感じではなかった

ただ、軽く触っただけなのでなんともいえない
2Dゲームならソフトウェアによるアルファブレンドが問題になるほど遅い場面は少ないとは思う

233 名前:名前は開発中のものです。 mailto:sage [2006/02/05(日) 19:35:20 ID:XoC15JKP]

>>232

640x480の画面に32x32のマップをひきつめただけですでに40FPSだったんですよね
Graphics2D。。。

やっぱりC++の方がゲーム開発はいいのかなぁ・・・
開発効率はJavaの方がはるかにいいんですけどね

何かJOGLやLWJGLに近い速度がでるゲーム用ライブラリって
ないんでしょうか



234 名前:名前は開発中のものです。 mailto:sage [2006/02/05(日) 19:44:36 ID:8ByMu9YS]
アルファブレンドでしきつめたらそれくらいにはなりそうだが
通常転送ならそこまで遅くなることはあるまい

使い方がおかしいかと

235 名前:名前は開発中のものです。 mailto:sage [2006/02/05(日) 19:48:54 ID:XoC15JKP]

>>234

アルファブレンドで描画したときです。
正直なきたくなりました。
同様の処理でDirectXの場合は余裕を持たせてもFPS500ぐらいでした。


236 名前:名前は開発中のものです。 mailto:sage [2006/02/05(日) 20:03:06 ID:8ByMu9YS]
デフォはDirectDrawベースだから当たり前
PureJavaベースのゲームなら少し前のコンシューマの2Dベースにしておくべき

アルファブレンドが多い場合は自前のエンジンを使ったほうがいい
Java2Dのアルファブレンドは機能が多すぎて高級すぎる
回転とかも同様

あとメモリアクセスを減らすために解像度を下げるとか
今後を考えてレンダリングエンジンはマルチコアに対応させる

現状を考えると320*240-16bppが2DでJavaでの安定動作の限界だと思うよ
それを2倍拡大して描画するのがベストか

Sunはデスクトップ部分に5.0は力を入れるといいつつ
1.4.2とほとんど変わらなかった前科があるから6にも期待薄だな

237 名前:名前は開発中のものです。 mailto:sage [2006/02/05(日) 20:25:57 ID:15xceU0H]
-serverを指定するだけ多少は速くなるし、メモリ次第かなぁ

238 名前:名前は開発中のものです。 mailto:sage [2006/02/05(日) 21:05:19 ID:8ByMu9YS]
serverはゲームではオススメしない
強度の最適化のために滑らかに動かない


239 名前:名前は開発中のものです。 mailto:sage [2006/03/01(水) 00:33:42 ID:LBMCdldE]
BufferStrategyとpaintComponentを切り替えられるようにすれば
RPGツクールでキーボード名前入力を可能にした感じのゲームも可能なのかな。
でもそんなことしてたらMMORPGなんて作れない気もする。
-serverの件もそうだけど、なんかもどかしい

240 名前:名前は開発中のものです。 mailto:sage [2006/03/01(水) 00:53:30 ID:iPnrcY6D]
一応BufferStrategyはCanvasでも使える
AWTなのであまり込み入った使い方しないように



241 名前:名前は開発中のものです。 mailto:sage [2006/03/01(水) 01:34:48 ID:LBMCdldE]
おお、ホントだ。BufferStrategyは埋め込み可能だったのか。
ゲーム画面上に透明チャット窓とかしようとするのも可能そうだね。
BufferStrategyならAWTとSwingの差分なんてあってないようなものだろうし。
ちょっと希望が湧いてきました。

242 名前:名前は開発中のものです。 mailto:sage [2006/03/01(水) 02:35:02 ID:LBMCdldE]
5.0からAWTにZOrderが追加される。かゆいところに手が届いてら。

243 名前:名前は開発中のものです。 mailto:sage [2006/03/04(土) 19:59:23 ID:+Bxv4duP]
Swingでrepaintをした場合ってイベントキューで処理されるの?
Timerのタイミングできちんと描画スレッドに渡せますか?

244 名前:名前は開発中のものです。 mailto:sage [2006/03/04(土) 23:22:41 ID:EEF7QBKs]
何を言いたいのかわからんがSwingは普通のSUIのイベント処理だぞ

リペイントわたしてもリペイント範囲のaddされるだけ

連続でrepaint複数渡しても1回しかリペイントされないとかよくあること

これはSwingに限ったことではない
Windowシステムは全部そう

だからTimerでrepaintわたしたからすぐに描画されるわけではない

正確なタイミングでやるならAWTイベントでのリペイントは辞めるべき
BufferStrategyを使うのが正しい
これは内部でDirectXとか使われてるイベントモデルではなく、いわゆる直書きだ

245 名前:名前は開発中のものです。 mailto:sage [2006/03/05(日) 13:59:16 ID:R322THrX]
>>244 どうもです。
FPS管理するからrepaintのままでやります。
描画に失敗したら致命的というわけでもありませんし。

246 名前:名前は開発中のものです。 mailto:sage [2006/03/05(日) 14:46:49 ID:o20ilzio]
FPS管理って普通にみんなBufferStrategyでしてると思うぞ
なんか勘違いしてないか?

247 名前:名前は開発中のものです。 mailto:sage [2006/03/05(日) 15:12:44 ID:R322THrX]
いやJComponentもバリバリ使いたいので。

248 名前:名前は開発中のものです。 mailto:sage [2006/03/05(日) 16:46:58 ID:o20ilzio]
Swingコンポーネントベースのゲームってめずらしいな
ダブルバッファリングをライブラリに任せるのは割ときついからな

249 名前:名前は開発中のものです。 mailto:age [2006/03/15(水) 01:15:11 ID:cXOEjtfT]
保守

250 名前:名前は開発中のものです。 mailto:sage [2006/03/18(土) 15:46:10 ID:bpOUjL+k]

良スレですね。


6年ぶりぐらいにJava触って驚いた〜。
趣味の遊びには最適ですね。





251 名前:名前は開発中のものです。 mailto:sage [2006/03/18(土) 23:01:07 ID:ATXsVevn]
exewrapがJavaゲームの必須アイテムになるのかな?
ヒープサイズをjrockitと同じ物理メモリの75%とかに指定したいんだけど
exewrapにはそういう指定は出来ないんだろうか

128m版と256m版の2つ用意したほうがいいかな・・・うーむ

252 名前:名前は開発中のものです。 mailto:sage [2006/03/18(土) 23:25:32 ID:xwepgm3J]
鯖アプリじゃないんだから物理メモリの割合は意味がないぞ
メモリ増えればGCにかかる時間は増えるわけで、ゲームで使用するメモリ量とかちゃんと計算してないの?
それだとGCとかでかたつかないか?

253 名前:名前は開発中のものです。 mailto:sage [2006/03/19(日) 00:20:58 ID:jd/0wDmz]
単位時間に対するGC率が増えるのって操作性に影響でないの?

254 名前:名前は開発中のものです。 mailto:sage [2006/03/19(日) 00:26:14 ID:UecNa0OI]
100秒ごとに1秒とまるGCと1秒ごとに0.01秒とまるGCとどっちがゲーム向きかということだ

それにわりあいでやられたら世代の調整とかおわっとる
GCのアルゴリズムの種類だって調整するのは常識なんだし
アプリごとに最適な値は大きくことなる


255 名前:名前は開発中のものです。 mailto:sage [2006/03/19(日) 00:34:10 ID:jd/0wDmz]
Mapにキャッシュするサイズ+演算用のサイズで考えればいいんだよね?
最適値というのは演算分のヒープサイズがどのくらいのものなの?

256 名前:名前は開発中のものです。 mailto:sage [2006/03/19(日) 00:50:29 ID:UecNa0OI]
GCの頻度とか使用量とかチェックしてないの?
-verbose:gcオプションいれてごらん

もっと詳しく見たいのならプロファイラで見るのが一番だが
まずはGC部分に注力するならこれが見やすいだろうね


257 名前:名前は開発中のものです。 mailto:sage [2006/03/19(日) 00:58:12 ID:jd/0wDmz]
>>256
OK、チャレンジしてみます。

258 名前:名前は開発中のものです。 mailto:sage [2006/03/31(金) 14:22:07 ID:5bd8BEHK]
当方、子供の頃にZ80アセンブラやBASICでゲームプログラムして遊んでいました。
まぁアルゴリズムとかは結構わかります。

今頃になって、再びプログラムを趣味にしてみようと思いJavaを選択しました。
シンタックスやOOPの基本的なことは大丈夫そうです。
Eclipseインストールしてちょっと感激。

で、問題なのはすこしでもDirectDrawとかFPS管理とか、ちょっとでもシステム寄りの
部分になると全然わからないのです。
いくつかソースを読んでみますと、各人でわりと実装が違うようですね。
Java5ではどんな方法がよいのかなど、参考になるものは無いでしょうか。


259 名前:名前は開発中のものです。 mailto:sage [2006/03/32(土) 00:20:26 ID:dul/XEV4]
>>258
そういう人かなりいるよね
ゲームは問題なく作れるけどウインドウアプリになるとmainからはじまらないので
わけがわからない、と

Javaは一応mainから常に始まるしまだ楽なほう
>>1-11あたりはまずよんでみた?

260 名前:名前は開発中のものです。 mailto:sage [2006/03/32(土) 01:27:44 ID:liMA6BYm]
3/32 記念パピコ



261 名前:名前は開発中のものです。 mailto:sage [2006/04/04(火) 13:36:48 ID:oy1ylhQ+]
eclipseってそんなに良いか?【エクリプス】
pc8.2ch.net/test/read.cgi/tech/1099300344/274-
> 280 名前:デフォルトの名無しさん[sage] 投稿日:2006/04/04(火) 09:53:59
> >>276
> ほんとかよ。
> 2Dゲームの背景にタイルを敷き詰める処理を作ってみたが明らかに遅いぞ。
> これと言って変な処理は入れてないが、5fps出ない。
>
透過pngをImageIO.read()で読み込んで
Graphics.drawImage(Image, int, int, ImageObserver)で表示すると確かに重くなるが
上の奴はこれと同じ状況なのだろうか?

262 名前:名前は開発中のものです。 mailto:sage [2006/04/04(火) 13:41:10 ID:h6nMnOJP]
アルファブレンドだと重いけどただの色抜きなら重くはないよ
5.0ではBufferedImageのままなにもしなくてもそれなりにきくようになってるし
5fpsってありえんね

そもそもソフトウェア描画でもVGAで30fpsはでそうだが






[ 続きを読む ] / [ 携帯版 ]

前100 次100 最新50 [ このスレをブックマーク! 携帯に送る ] 2chのread.cgiへ
[+板 最近立ったスレ&熱いスレ一覧 : +板 最近立ったスレ/記者別一覧]( ´∀`)<296KB

read.cgi ver5.27 [feat.BBS2 +1.6] / e.0.2 (02/09/03) / eucaly.net products.
担当:undef