[表示 : 全て 最新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あたりを参照

592 名前:名前は開発中のものです。 [2006/12/02(土) 23:08:50 ID:YSW2q7Ho]
>>591
読み込みよりもダブルバッファのイメージ生成でコケてました。(^^;
Component.createImage APIです。
…トレースを見ていたら、

[Action game start]
Game initializing...
Image create error.
Framework initialize failed. error(-1)
java.security.AccessControlException: access denied (java.lang.RuntimePermission exitVM)
at java.security.AccessControlContext.checkPermission(AccessControlContext.java:264)
at java.security.AccessController.checkPermission(AccessController.java:427)
at java.lang.SecurityManager.checkPermission(SecurityManager.java:532)
at java.lang.SecurityManager.checkExit(SecurityManager.java:744)
at java.lang.Runtime.exit(Runtime.java:88)
at java.lang.System.exit(System.java:868)
at ActionGameApplet.init(Unknown Source)
at sun.applet.AppletPanel.run(AppletPanel.java:378)
at java.lang.Thread.run(Thread.java:595)

とかなっていたので、もっと根本的におかしいのかも知れないです。
(HTMLの書き方とかからしてとか)
嗚呼、スキルの無い悲しみ…orz

593 名前:586 mailto:sage [2006/12/02(土) 23:31:14 ID:g+e0ZUOZ]
IDが変わってるだろうがプロバイダの仕業だから気にしないでくれ

>>588
レス早いねありがと。
javaはVM向けのオプションをいじり倒すとかなり最適化出来るんだがマシン構成やらプログラム側のGCの発生頻度やらその他諸々の癖で結構指定するオプションを見極める必要がある。

んで効果を手軽に確認するのに初期化処理とかリソースの読み込みに掛かった時間が分かるとめあすになるかと思って。


あと思ったんだがJavaVMじゃなくてJavaアプリケーション側の実行時引数って普通-Dオプションで渡さない?swingだけだろうか?


ダブルクリックでjar実行なら最近のGUIOSならJavaVMに関連づけがデフォだからwinやMacOSXならいじる必要ないと思う。

linuxとかCUI混在は知らん。
上で言われてる通りバカなアーカイバがjarをZipとして云々はデフォ設定に直せばおk

winでjar=zipとして解凍って思い込みはIEがHTTPからダウンロードする時MIME-TYPE見てないせいで云々に関係するからOSがバカなだけ。

ド素人ならJarを何も考えずにクリックして見るのが普通と思う。解凍は意図的にする。

長かったな参考になっただろうか

594 名前:名前は開発中のものです。 mailto:sage [2006/12/02(土) 23:49:58 ID:lFDLhCqW]
>>592
System.exitがどっかにかいてあるとか?
あれはアプレットだとセキュリティ違反


>>593
GCはインクリメンタルGCnにするとフルGCが大体消えて快適になる
5.0ならパラレルGCなので大丈夫

-Dはパラメータ用ではない。用途が違う



595 名前:名前は開発中のものです。 mailto:sage [2006/12/02(土) 23:55:17 ID:YSW2q7Ho]
>>593
どうもです。(^^)

>んで効果を手軽に確認するのに初期化処理とかリソースの読み込みに掛かった時間が分かるとめあすになるかと思って。
参考になりました。φ(^^ )メモメモ
ということで時間を見つけて入れてみますね。
エンディングまで行った時にもTotal Play時間も入れておこうかな。

-Dswing.aatext=true パラメータは知らなかったのでググッてみたのですが、
これはテキストにアンチエイリアスがかかるとか紹介されていました。
ビットマップの転送にもアンチエイリアスがかかるのかも知れないのですが、
私も試したらNGでした。ちなみにゲーム中に表示される文字は全て
ビットマップです。

596 名前:名前は開発中のものです。 mailto:sage [2006/12/02(土) 23:58:03 ID:YSW2q7Ho]
>>594
System.exit書いてあります!
アプレットの時はコレが書いてあるだけでNGなんですね。φ(^^ )メモメモ

597 名前:名前は開発中のものです。 mailto:sage [2006/12/03(日) 00:11:31 ID:Weooalfd]
ブラウザでプレイできるようにしてくれ〜

598 名前:名前は開発中のものです。 mailto:sage [2006/12/03(日) 00:19:26 ID:7tbgDbUF]
>>597
すみません〜。スキルがなくて…orz

System.exit止めたらExceptionが消えましたが、Component.createImage(w,h) API
でイメージが生成できないのは解消できずです。orz
newしたJPanel(Component)はヌルポでは無いのに…

599 名前:名前は開発中のものです。 mailto:sage [2006/12/03(日) 00:28:03 ID:JGG55Wof]
>>597
アプレットはずっと動き続けるものだからね
破棄はブラウザ閉じたりページ移動したりユーザーの意思によってのみされるわけだ

>>598
エラーメッセージは?


600 名前:名前は開発中のものです。 mailto:sage [2006/12/03(日) 00:36:40 ID:7tbgDbUF]
>>599
598で述べたJPanelは私のチョンボでした。
アプリケーションのmain関数でインスタンス生成するのと同じように、
アプレットのInitの中でActionGameAppletをインスタンス生成していました。
(インスタンスが二重になってしまっていて、おかしくなっていました)

今はjar内のイメージ(最初にフォントを読み込みます)の読み込みエラーになり始めました。

Image load error. (/images/text_font.png)
java.lang.NullPointerException
at TextScreen.initialize(Unknown Source)
at God.initialize(Unknown Source)
at ActionGameApplet.init(Unknown Source)
at sun.applet.AppletPanel.run(AppletPanel.java:378)
at java.lang.Thread.run(Thread.java:595)

コードはこんな感じです。

 // イメージを読み込みます
 Toolkit toolkit = Toolkit.getDefaultToolkit();
 Image srcImage = null;
 URL url = God.getURL(fileName);
 if(url != null) {
  srcImage = toolkit.getImage(url);
 }
 if(srcImage == null) {
  System.out.printf("Image load error. (%s)\n", fileName);
  return null;
 }

filenameがjar内の/images/text_font.pngにあたります。



601 名前:名前は開発中のものです。 mailto:sage [2006/12/03(日) 00:37:20 ID:JGG55Wof]
しかしアプレットだとVMにたいして細かい制御ができないしパフォーマンスも下がるし制限多いんだが
アプレットにこだわるのはどういうことだろうね

WebStartアプレットならまだましか

602 名前:名前は開発中のものです。 mailto:sage [2006/12/03(日) 00:44:09 ID:JGG55Wof]
>>602
肝心の例外が出てる行はどこ?
ツールキットでのロードってことは読込完了するまでまってる?
画像ロードはImageIO使ったほうが楽だと思うよ
リソースのストリームから呼び出すようにね

あとソースファイルが多いので1つのディレクトリに全部展開するよりは階層構造にしたほうがいい
viとかでは管理できないレベルかと

リファクタリング使えるIDEつかえばドラッグアンドドロップで自動的にクラスの移動ができる
もちろん使われている場所も全部問題なく変更される

ここまでの規模になるとたいしたことなくともIDE必要だと思うよ
antも全部自動生成してくれるし

603 名前:名前は開発中のものです。 mailto:sage [2006/12/03(日) 00:52:36 ID:aNPfAlfu]
>>594
-Dはシステムプロパティの方だった・・・orz

ユーザープロパティはProperties#loadで自分でプロパティファイル毎拾わないといけないんだったな。

>インクリメンタルGC〜
それは言えてる。けどインクリメンタルGCはフルGCのコストとは比べ物にならなくても常に少しのCPUパワー消費が増してるからハードウェアアクセラレーションが効かない現状だと貧弱PCだと辛いかと思ってさ。

あとメモリ使用量とかも調節したいし。


CPUが2つ見えてればサーバーVM使いたいんだけど・・・(°ω°)

>>595
-Dswing.aatextは将来のDeskTopJavaのサポートを強化するためにSE5.0で先行実装された非公開のオプション。アプリケーションレベルでテキストをアンチエイリアスしてくれる。com.sun.java.swing.SwingUtikities2のソースを読むと幸せになれるかもしれない。

だが、知らないなら余り触れない方が良い。


文字はビットマップなのか。それならJava2Dの仕事。SDK5.0の「java2Dのグラフィックスとイメージング-J2SE5.0でのJava2Dの新機能 or Java2Dテクノロジのシステムプロパティ」が参考になるが現段階では充てにならん。SE6〜7辺りに期待。

>>596
ブラウザにプラグインされてるVMを勝手に終了させられたらブラウザは迷惑だと思うw



604 名前:名前は開発中のものです。 mailto:sage [2006/12/03(日) 00:53:47 ID:7tbgDbUF]
>>602
根源は
URL url = God.getURL(fileName);
というところでした。
この関数は、sun.applet.AppletClassLoader.getResource(filename)
としていて、ここでNULLになっているみたいです。
(結果、if(srcImage == null)がnullになるという感じです)

ImageIOというのもあるんですね。ためになります〜。
EclipseとかカッコイイIDEを使いたいというのもあったのですが、
何分勉強する時間が無くて、最初はHello Worldから始めて、
グラフィックをちょっと描いてみる→ここまでに至りました。
この辺、言語や開発の仕方を覚えていく過程としてはかなりいい加減です。
(この言語が本職で無いからどーでもイイヤみたいな感じだったとでも
いいましょうか...(^^ゞ)

605 名前:名前は開発中のものです。 mailto:sage [2006/12/03(日) 00:57:25 ID:JGG55Wof]
>>603
サーバーVMはスループットはよくなるけどレスポンス悪化するのでゲームじゃ今のところ使えない
クラスロード時にコンパイルが出来るなら別だがそういうVMはないはず

それにインクリメンタルGCは5.0でトレインGCからパラレルGCに変更になったので大丈夫だよ
トレインアルゴリズムは非常の遅くて1GHzくらいでも60fps維持は結構きつかった
一応隠しオプションでトレインにかえれるけどだれもつかわないね、あれは


606 名前:名前は開発中のものです。 mailto:sage [2006/12/03(日) 01:01:12 ID:JGG55Wof]
>>604
リソース読むときコードにクラスローダ直書きってこと?

IDEはわからないのであればNetBeansお勧め
セットアップしてすぐに使えることと覚えることが少ないのがぐー
新規にプロジェクト作ったらsrcフォルダにそのままソースをぶっこむだけでおわる

それに補完等があるからIDEは便利だよ
コンパイルしなくても構文にエラーがあればリアルタイムに表示してくれるし

607 名前:名前は開発中のものです。 mailto:sage [2006/12/03(日) 01:06:14 ID:7tbgDbUF]
>>606
>リソース読むときコードにクラスローダ直書きってこと?

いえ、最初にgetClass().getClassLoader().getClass()してます。(^^ゞ
アプレットの時は"sun.applet.AppletClassLoader"で、
アプリケーションの時はお詳しいと思うのでご存知のように、
"sun.misc.Launcher$AppClassLoader"
みたいになりました。

IDEはもう少し時間が取れたら試してみようかな…

608 名前:名前は開発中のものです。 mailto:sage [2006/12/03(日) 01:20:39 ID:aNPfAlfu]
>>605
パラレルアルゴリズムってそんなにパフォーマンス改善されてるのか。

>>サーバーVM〜
そういやこれアクションゲーだったな。
俺ADVエンジンしか作れないからレスポンスいらねw

でもlinuxだとデフォでサーバーVMが起動するからゲームのパフォーマンスさげてるって事か。


ところでswingで書けばアプレットでもアプリケーションでもどっちでも起動できるが>>604がdemoのSwingSet2のソースを理解出来るかどうか。

swingサポートしない古いMSVMはセキュリティの面からも切り捨てでw

#MSVMはJITだけが取り柄だな

609 名前:名前は開発中のものです。 mailto:sage [2006/12/03(日) 01:41:17 ID:JGG55Wof]
>>607
リソース周り少し調べればたぶん解決すると思う
ストリームのほうつかってみたら?

あとファイルをjarの外に出すという方法もあるね
あとでパッチ当てるの楽になるし開発中のときはデバッグに楽かも

まぁリソースは別のjarとかにしておくのが正解か
WebStart等とかんがえるならね

>>608
あとGC自体1.4から5.0で見える範囲でパフォーマンスアップしている

Swingかどうかって関係ないのでは?
awtでもアプレットとアプリは併用可能

フルスクリーン等実装してることから1.4以上が必須なわけだし
あとはOggあたりをループ再生していればいいね

linuxは32bitならサーバークラスマシン検出しないとデフォはクライアントだと思うんだけど
64bitはクライアント版はなし

610 名前:名前は開発中のものです。 mailto:sage [2006/12/03(日) 01:54:36 ID:7tbgDbUF]
>>609
色々と調べたら、アプレットでのjar内のリソースの読み込みは
セキュリティポリシーの問題で難しそうに感じました。
(それで合っているのか分かりませんが...)

本来は提案で言われたとおり、jarを外に出すとかWebStart等が
いいのかと思いますが、流石にそのパワーが無いので、
一旦これで凍結にしようかと思います。
(所詮適当に作ったサンデープログラムプロゲームですしね。www)

----
本来はオフラインで周りに聴ける人とかいれば、色々と相談したい
ものなのですが、残念なことにJavaエンジニアが側に一人も居ないので、
なんかきっかけがあったらまたゴソゴソとトライしてみようかと
思います。

スレの流れを見ていると、上級Javaエンジニアの方が二人程
私の相手して頂いたように見受けられます。
色々とテクニカルなキーワードを教えてもらって、
かなりタメになりました。ありがとうございます!( ´▽`)ノ

>>皆様
クソゲーではありますが、純粋にレトロ風なアクションゲームを
楽しんでいただけると幸いです。(^^)
ttp://perfect-logic.net/SampleAction/



611 名前:名前は開発中のものです。 mailto:sage [2006/12/03(日) 03:06:12 ID:YF8PnGLn]
自分が書いたJar内のリソース読み込みプログラム
アプレットでも大丈夫
/resourceフォルダ以下にこれとリソースを入れておけば良し


package resource;
import java.io.*;
import java.awt.image.BufferedImage;
import javax.imageio.ImageIO;

public class ContentsReader {
  public InputStream getInputStream(String fileName){
    return getClass().getResourceAsStream();
  }
  public BufferedImage getImage(String imageName){
    BufferedImage image;
    try{
      image = ImageIO.read(getInputStream(imageName));
      return image;
    }
    catch(IOException e){
      e.printStackTrace(System.err);
    }
    return null;
  }
}

612 名前:名前は開発中のものです。 mailto:sage [2006/12/03(日) 03:16:48 ID:fVWUDxZS]
確か、Jar関連のプログラミングは、
ClassLoader#getResource
Thread#setContextClassLoader
辺りを使えば大体何とかなったな

613 名前:名前は開発中のものです。 mailto:sage [2006/12/03(日) 12:38:36 ID:YF8PnGLn]
>>611のコードが間違っているが見なかったことにする

614 名前:名前は開発中のものです。 mailto:sage [2006/12/03(日) 12:49:00 ID:SWYB2VRJ]
>>610
楽しんで作ってるうちが一番だと思うよ
だからアプリケーションでのみだが問題ない

仕事で作るとなるとそれはそれは・・・

とりあえずこのスレを1から読んでみることをオススメする

615 名前:名前は開発中のものです。 mailto:sage [2006/12/03(日) 21:46:13 ID:7tbgDbUF]
>>614
斜め読みですがこのスレを一通り見てみました。(^^)
私がコーディングしていて通ったような悩みを他の人も
遭遇していたりして、もっと早くこのスレに来ていればなぁと
思いました。

本職はWin,LinuxのC++/Asm系なので、この言語の高級感
(というかライブラリの充実度)は萌えだったのですが、
仕事となると色々と知らないといけないガイドラインが多そうで
大変なんだろうなぁとシミジミです。

616 名前:名前は開発中のものです。 mailto:sage [2006/12/03(日) 21:55:02 ID:/gdh39Xl]
前スレのほうが中身はあったようなきがしたけどまぁ出来上がってるから関係ないね
あとは音楽でもはいっていれば十分かと

できればジョイパッド対応ってところだけどJNIはいるからめんどくせーかな
まぁC本職なら十分楽だろうけど

Javaはネット周りが楽なのでネトゲの鯖から採用され始めてきて最近はクライアントにもきてるみたい
ネトゲは運用がはいるからパッケージと違って保守性って大事だからね

617 名前:名前は開発中のものです。 mailto:sage [2006/12/03(日) 22:29:48 ID:7tbgDbUF]
>>616
>あとは音楽でもはいっていれば十分かと
そうなんですよねぇ… ちょっとMIDIで作ったのですが、
プログラムや絵よりも難産で当分無理かなぁという状況です。
(外部ファイルで設定できるとはいえ、開発者の作曲のスキルが…orz)

>できればジョイパッド対応(ry
最初Windows上にcygwin入れて、JNIをサンプルで作ってみて、
エントリポイント関数ができたので、さて作ってみるかと思ったのですが、
その直後「JoyToKey」という素晴らしいソフトを見つけてしまったので、
作成意欲がゼロになりました。
(私は"PCで遊ぶゲームはキーボード"で育ったので、自作ゲームは
キーボードでクリアする方が簡単となってしまい、この辺があんま考慮
されてなかったりします。m(_ _)m)

昔、日経Linuxとかで携帯ゲーム開発のコストの記事かなんかを
みたことあるのですが、技術者のスキルに比べて開発費用が激安で
回収が厳しいとか書いてありました。Javaで簡単に作れる時代になった
とはいえ、これで保守/運用とかあると厳しいんだろうなぁと感じました。

618 名前:名前は開発中のものです。 mailto:sage [2006/12/04(月) 00:23:03 ID:TAJliEjW]
キーボードでもいいんだけど、同時入力が出来ない場合が多いからね
しかもこのキーとこのキーが同時に入力できないってのはキーボードによって違う
アクション系では致命的

619 名前:名前は開発中のものです。 mailto:sage [2006/12/04(月) 00:50:11 ID:rOxIjnLZ]
>>618
>キーボードでもいいんだけど、同時入力が出来ない場合が多いからね
>しかもこのキーとこのキーが同時に入力できないってのはキーボードによって違う
φ(.. )メモメモ
これって、キーボード的(ハードウェア的)にですか?
OSのキーボードデバイスドライバ的ですか?('=,VMのイベント的ですか?)
(恐らく後者とは思っていますが...)

自作のゲームはサンプルなので、左右とジャンプしか行わないためか、
幾つかのPCでキーボードプレーしても、このような感覚に出会った事が
なかったです。

とても勉強になります。

620 名前:名前は開発中のものです。 mailto:sage [2006/12/04(月) 02:19:17 ID:oYP8msvX]
ttp://ja.wikipedia.org/wiki/%E3%82%AD%E3%83%BC%E3%83%9C%E3%83%BC%E3%83%89#.E3.83.AD.E3.83.BC.E3.83.AB.E3.82.AA.E3.83.BC.E3.83.90.E3.83.BC



621 名前:名前は開発中のものです。 mailto:sage [2006/12/04(月) 03:05:27 ID:rOxIjnLZ]
あー、ハードウェア的でしたか…(^^;
JoyToKeyのようなソフトウェアはキーイベントをOSに発行するから、
こーいう問題はないのかもなぁ…

622 名前:520 mailto:sage [2006/12/04(月) 04:42:32 ID:8QL/yjCh]
キーボードのタイプにもよるだろうけど左上+スペースが反応しないね。


623 名前:名前は開発中のものです。 mailto:sage [2006/12/04(月) 04:43:21 ID:8QL/yjCh]
そしてミス、漏れはこのスレの520じゃない

624 名前:名前は開発中のものです。 mailto:sage [2006/12/13(水) 12:04:19 ID:nFrd+DMR]
JavaSE6がでたが、単純に高速化してるなー

625 名前:名前は開発中のものです。 mailto:sage [2006/12/13(水) 16:07:46 ID:tbX8caYj]
ニューラルネットワークの学習に使ってるけど
同じことさせて11.701sec→9.815secで速くなってた。
処理の内容はほとんどが浮動小数点演算だけどGUI周りはどうなんだろ?


626 名前:名前は開発中のものです。 mailto:sage [2006/12/13(水) 19:05:49 ID:nFrd+DMR]
GUIもはやいっぽい。
特に今までアクセラレーションがなかったWindows以外の環境でもアクセラレーションきくようになったのは大きいかと。

627 名前:名前は開発中のものです。 mailto:sage [2006/12/14(木) 08:23:31 ID:U6gTfVOR]
windowsだけど1600x1200のタイル描画で普通に60fpsがだせるようになった
5.0で同じことやっても10fpsいかなかったし、
6.0はjavaゲームの本当のスタート地点になるかも

628 名前:名前は開発中のものです。 mailto:sage [2006/12/15(金) 18:08:34 ID:Ihq+GcpE]
まじか
じゃあ俺もこれからアプレットのゲームつくってみよ

629 名前:名前は開発中のものです。 mailto:sage [2006/12/15(金) 23:17:44 ID:e9fBCpQh]
デスクトップ環境の強化ってどういう意味?
Javaアプリケーションが高速ってこと?

630 名前:名前は開発中のものです。 mailto:sage [2006/12/16(土) 16:06:00 ID:p9tzPmLY]
>>627
2Dの事?
今までが遅すぎただけ。アルファブレンド固定なせいもあるけど
しかし、今頃になってようやくって感じだな。

ロジックの速度も上がってるけど、コレクションクラス群はどう?
JavaがC++で劣るのはGCのみ、と言ってる人がいるけど
ロジックのコアとなるCollectionAPIの遅さを考慮してないから話にならん。
STLは、ヘボ設計だけど速度はあるからそれだけ実用に足りるがね。



631 名前:名前は開発中のものです。 mailto:sage [2006/12/17(日) 00:02:03 ID:SYIGKUNN]
>>627が何の描画で早くなったのか知りたいな

今回JREにServerVMが付属してないからJDKのJREほうでやってみたら
ServerVMのほうがコンパイルに時間がかかってかくかくになるくせに
ClientVMと同じ性能しか出てない

これはClientVMがServerVMにスループットでも追いついたということか


632 名前:名前は開発中のものです。 mailto:sage [2006/12/17(日) 14:55:12 ID:iXhkS4tF]
へーマジか

633 名前:名前は開発中のものです。 mailto:sage [2006/12/17(日) 15:17:19 ID:hjNOU8u3]
新しいJava2DレンダリングエンジンとJOGLの統合
journal.mycom.co.jp/news/2005/09/15/021.html
weblogs.java.net/blog/campbell/archive/2005/03/strcrazy_improv_1.html

とか

ClientVMのレジスタ割り当てアルゴリズムが変更された
weblogs.java.net/blog/opinali/archive/2005/11/mustangs_hotspo_1.html

あたりが影響している感じ

634 名前:628 mailto:sage [2006/12/17(日) 15:47:07 ID:EcLAzrob]
速さがよく分からなかった。
パソコン買い替えるか・・・

635 名前:名前は開発中のものです。 [2006/12/17(日) 20:16:45 ID:+LUNIpol]
流れ読まずに質問するが、vjpってどう扱えば良いのだろうか?
さっきS!アプリの開発環境を落として来て動作テストを行なおうとしたら、jadを直接読み込めないんだよ。
焦ったぜ……
このテストさえクリアすればようやく公開だってのに……

636 名前:名前は開発中のものです。 [2006/12/17(日) 20:23:17 ID:+LUNIpol]
おお、ありがとう。
そうか、疑似端末でインストールして動かすのか……
盲点だったぜ。

637 名前:名前は開発中のものです。 mailto:sage [2006/12/17(日) 20:58:57 ID:Lz0Pt1eB]
これはどういう流れなのだ・・・

638 名前:名前は開発中のものです。 mailto:sage [2006/12/17(日) 22:19:40 ID:zMoxVD1I]
俺も新型エミュにはあれ? と思ったよ
何しろexeだったし…
つーかバッドバージョンインフォメーションてなんだよ。1.5だからか?

639 名前:名前は開発中のものです。 mailto:sage [2006/12/17(日) 23:17:36 ID:+LUNIpol]
>>673
ん? 君には見えないのか。
アドバイスをくれたあの人が……

いや、どうやら俺にだけ見えるらしい……忘れてくれ……


ところで、初心に帰ってゲーム制作を1から学び直せるサイトってどこかないだろうか。
出来たものが何故かバグだらけで非常にむかついたんだ。
自分でもぐぐって探してみたんだが、どうにもPC用講座ばかり引っ掛かる……
というかサウンドノベルでバグ出す自分って一体……orz

640 名前:名前は開発中のものです。 mailto:sage [2006/12/17(日) 23:52:05 ID:+BHAw/PJ]
Developing Games in Java
www.amazon.co.jp/dp/1592730051/



641 名前:名前は開発中のものです。 mailto:sage [2006/12/17(日) 23:59:57 ID:Lz0Pt1eB]
>>639
最初から大掛かりなの作ろうとしてないか?

昔のBASIC時代と同じく手軽に作れる小粒のアクション系つくってみたら?

642 名前:名前は開発中のものです。 [2006/12/27(水) 23:40:47 ID:L0eM1Y3J]
>>567
[Action game start] (Start time:略)
Game initializing...
MIDI sequencer device open error...
Framework initialize failed. error(-5)

あら・・・動かない。

643 名前:名前は開発中のものです。 mailto:sage [2006/12/28(木) 00:49:15 ID:0S10EeXq]
>>642

こんばんわ、567の作者です。

初めてみる症状です…
JavaのMidiSystem.getSequencer()にて例外が起きているみたいです。
PCのサウンドシステムにMIDI環境は揃っているでしょうか…?

644 名前:名前は開発中のものです。 mailto:sage [2006/12/29(金) 00:25:15 ID:9nXP6CjO]
サウンドバンクはこのプログラムには入ってるの?
JDKはサウンドバンクの一番小さいやつははいってくるけど、JREには1.4以降はいってないはずだよ
それを読み込むプログラムはどうしてるの?

それがないとすれば動かないのが普通
一部環境(JDK入れた人)では動く、が正解

645 名前:名前は開発中のものです。 mailto:sage [2006/12/29(金) 02:30:52 ID:0wIkKd8m]
>>644

すみません。サウンドバンクという概念自体を理解してないでAPI使っています。(^^ゞ
なので、回答としては「恐らくプログラムには入っていない」ような気がします。

以前、インスコしたばかりのWindows 2000上にJRE5.0を入れて動いたのを
確認したことはあったのですが、もしもJRE1.4以降にそれが入っていないと、

 Sequencer midiSequencer = MidiSystem.getSequencer();
 midiSequencer.open();

みたいなことができないようであれば、JDKもついでにインスコしていた
のかもしれません。
(他の開発環境ではないマシンはネットカフェでJDKが入っていないと
思われるXPマシンで動かしたことがある程度です)

とりあえず642さんに動かして遊んでもらいたいところではあるので、
どうしたらよいもんやら...

646 名前:名前は開発中のものです。 mailto:sage [2006/12/29(金) 10:23:30 ID:M9cmQJF8]
>>645
JDK入ってても現象でてます。

647 名前:名前は開発中のものです。 mailto:sage [2006/12/29(金) 14:03:17 ID:0wIkKd8m]
>>646

こんにちわ。

う〜ん。ちょっと環境の詳細が分からないとちょっと対応が難しそうですね。
(OS、サウンド環境、Java環境、etc...)
こちらで現象が確認できない(同一環境が揃わない)と、どうやって
対処して良いものか...

あと、他の方が作成したMIDIを鳴らすサンプルプログラムとかで、
発声するかとか知りたいところです。
それでも同じような例外が発生するようでればPC(Java)環境、
そうでなければ私のプログラムが問題ということになりますね。
(私がJavaの素人なので後者とは思いますが...)

なんか他の良いMIDIサンプルないですかねぇ。
(MidiSystem.getSequencer().open();してそうなやつ)

648 名前:名前は開発中のものです。 mailto:sage [2006/12/29(金) 14:26:02 ID:M9cmQJF8]
>>647
実行したら死んだ。
Sequencer midiSequencer = MidiSystem.getSequencer();
midiSequencer.open();

javax.sound.midi.MidiUnavailableException: MIDI OUT transmitter not available
at com.sun.media.sound.AbstractMidiDevice.createTransmitter(Unknown Source)
at com.sun.media.sound.AbstractMidiDevice.getTransmitter(Unknown Source)
at javax.sound.midi.MidiSystem.getSequencer(Unknown Source)
at javax.sound.midi.MidiSystem.getSequencer(Unknown Source)
at midi.MidiTest.<init>(MidiTest.java:21)
at midi.MidiTest.main(MidiTest.java:14)

諦めます。

649 名前:名前は開発中のものです。 mailto:sage [2006/12/29(金) 15:15:29 ID:aT7rJMam]
とりあえず僕がBGMの再生用に使ってるクラスはこんな感じ。
ttp://www.vipper.org/vip410441.txt.html
BGMBundleにシーケンス一式溜め込んでおいてランダムに再生するだけの物です。
手元にWindowsとLinuxの両方の環境あるけどどっちでも動いてます。


650 名前:648 mailto:sage [2006/12/29(金) 15:59:11 ID:M9cmQJF8]
>>649
やっぱり
this.sequencer = MidiSystem.getSequencer();
の部分で死ぬ

どうやら俺の環境に問題があるらしい。
何かにデバイス横取りされてるのかな。
Java Media Framework関係は普通に鳴ってる・・・。



651 名前:648 mailto:sage [2006/12/29(金) 18:23:49 ID:M9cmQJF8]
AudioClip play()も問題なし・・・。
こんな現象もあるんだ〜と感心。
今後の参考にします。

652 名前:名前は開発中のものです。 mailto:sage [2006/12/29(金) 18:41:28 ID:0wIkKd8m]
>>648

オアー。環境スか...(´д`;
そのうち環境が整ったらプレーしてみてください。m(_ _)m
(ステージも結構あるので、80'sのアクションゲーム好きでしたら
楽しめると思います)

でわ。

653 名前:名前は開発中のものです。 mailto:sage [2006/12/29(金) 20:26:04 ID:aT7rJMam]
ttp://bugs.sun.com/bugdatabase/view_bug.do;jsessionid=cdd3f2d858bc6fffffffffa08e9d7dbe34c4:YfiG?bug_id=6483856
これかな?
Evaluationの部分を適当に訳してみる:
>指定されたサウンドカード(SoundMAX Digital Audio)はハードウェアMIDIポートを持っていないので
>Javaのソフトウェアシンセサイザーを使うことになります。
>標準ではJavaSE JREはソフトウェアシンセサイザーのサウンドバンクをインストールしませんが、
>しかしサウンドバンクが利用可能でなければシーケンサはソフトウェアシンセを使用しません。
>このためシーケンサは使用可能なアウトプットデバイスを見つけることが出来ないので失敗します。
>したがって新しいJavaSoundDemoのためにRFEの写しとしてCRを閉じて、
>それらのケースを詳細に取り扱うべきです。

最後の一文がよくわからんかったけど
JRE普通にインストールしただけじゃ
Java付属のサウンドバンクが入らないから入れろってことだね。
ただWindows側でソフトウェアシンセって持ってなかったっけ?


654 名前:名前は開発中のものです。 mailto:sage [2006/12/29(金) 23:56:59 ID:J80FO9qV]
>>648
がうごかないっていうのはライブラリの問題だと思う
マルチコアだと動かないとかよくあるから環境を書いたほうがいいと思う

655 名前:名前は開発中のものです。 mailto:sage [2006/12/30(土) 10:34:14 ID:HoTiFon7]
マザー:gigabyte GA-965P-DS3
CPU:intel Pentium D 930 BOX(一個)
サウンド:オンキヨー SE-90PCI
OS:Win2000SP4
JDK:JDK5、JDK6(どっちもダメだった)

関連性があると思われるインストール済みソフトウェア
Audio Deck
JMF1.2

MIDIはWindowsMediaPlayerに関連付けられている状態

656 名前:名前は開発中のものです。 mailto:sage [2006/12/31(日) 10:14:46 ID:1VGXvsjp]
お前らのゲーム音源はMIDIですか、それともAUですか。

657 名前:名前は開発中のものです。 mailto:sage [2006/12/31(日) 21:54:30 ID:p+8prPoH]
BGMはMIDI、効果音はau使ってます。

658 名前:名前は開発中のものです。 mailto:sage [2007/01/01(月) 02:10:42 ID:6EV+wqWa]
BGMはOggVorbis、効果音はWAV
これデフォでしょ

659 名前:名前は開発中のものです。 mailto:sage [2007/01/01(月) 02:43:23 ID:moAKmPyK]
>>655

JMFのコンフリクト
ttp://forum.java.sun.com/thread.jspa?threadID=586287&messageID=3024044

sound.jar(またはjmf.jarも)を
lib\extから(またはclasspathからも)除外。

660 名前:名前は開発中のものです。 [2007/01/04(木) 22:53:24 ID:KxRY1/gx]
サウンドバンクを配布するってのもだるいな・・・。
配布する際は使ってるライブラリも含める?
それともインストールを促す?

含めると、そんなライブラリ持ってるわい!って言う人いるだろうな。
かといって含めずに「動かないんですけど」って問い合わせが来ると対応が大変だし。
なんか良い方法ないかな。



661 名前:名前は開発中のものです。 mailto:sage [2007/01/04(木) 23:04:33 ID:CqSR8cXM]
散々注意書きする

662 名前:名前は開発中のものです。 mailto:sage [2007/01/05(金) 00:53:20 ID:CKZiJJtc]
アプレットなら普通にHTTP経由でダウンロードすればいいだけでは?
アプリなら適当にファイル同梱すればいいし

別にJREにはいってる必要はない


663 名前:名前は開発中のものです。 mailto:sage [2007/01/05(金) 09:23:58 ID:EoheASy3]
>>662
その「適当にファイル同梱」の事を言ってるんジャマイカ。

664 名前:名前は開発中のものです。 mailto:sage [2007/01/05(金) 12:02:21 ID:CgA1l96c]
>>663
再配布可能物なんだから問題ないだろ?
それが問題になるなら画像やサウンドファイルなど他のリソースも問題になるってことだぜ?

665 名前:名前は開発中のものです。 mailto:sage [2007/01/06(土) 10:57:57 ID:51STjwfV]
色々な視覚効果を試行錯誤中なんだが
いい感じのエフェクトはないかね?

ttp://www.durius.com/
ttp://hp.vector.co.jp/authors/VA012735/

666 名前:名前は開発中のものです。 mailto:sage [2007/01/06(土) 15:14:07 ID:r24lOWtw]
エフェクトに対してJavaと何の関係があるのかと
それにゲームによって使い方違うだろ

667 名前:名前は開発中のものです。 [2007/01/06(土) 18:29:48 ID:nMuYdedC]
自分も視覚効果について考えていたけど処理速度の都合上
あんまり無茶するとフレームレートががた落ちになるのがネックだね。
sun.java2d.openglやsun.java2d.d3dのオプションで
OpenGLやD3Dのアクセラレーションが効くのはいいけど
環境や処理によってアクセラレーションが
効いたり効かなかったりするからあんまし過信できないかな。
というかアクセラレーションが効かないだけならいいけど、
D3Dだと拡大縮小が以上に時間かかるバグがあったり、
OpenGLだと色が化けたりでまだ実用には少々難ありっぽい。
(どちらも本家のバグレポートにあった)

とりあえずDirect3D向けの視覚効果テクニックから
軽そうなのだけをJavaに引っ張る予定。

668 名前:名前は開発中のものです。 mailto:sage [2007/01/06(土) 23:14:26 ID:CAKGleIT]
OpenGLによるJava2Dアクセラレーション期待していたらぜんぜん話にならなかった(DirectDrawのほうがまし)から
JOGL使ってOpenGLそのまま使うのが今は一番現実的かな

669 名前:名前は開発中のものです。 mailto:sage [2007/01/06(土) 23:36:13 ID:cnJipY2O]
ttp://www.balmunc.jp/

MMORPGをJavaで作るそうです。
説明によるとサーバーもクライアントもJavaみたいです。
どこまでいけるのやら?

670 名前:名前は開発中のものです。 mailto:sage [2007/01/07(日) 00:06:10 ID:NntNHMAa]
>>669
ブラウザ上で動くオンラインゲームってのは面白そうだな。
Javaのメリットも生かせそうだし、何より金の臭いがプンプンするぜー!!



671 名前:名前は開発中のものです。 mailto:sage [2007/01/07(日) 11:19:46 ID:6B2D6r/d]
ホームページビルダーですか(笑)

アドレス見て.hackを思いだした

672 名前:名前は開発中のものです。 [2007/01/09(火) 03:31:44 ID:EAQZbwWj]
javaじゃ無いけど、SecondLifeのクライアントソースがオープンソースになった
secondlife.com/developers/opensource/getit

673 名前:名前は開発中のものです。 mailto:sage [2007/01/09(火) 21:58:25 ID:HlHNM13x]
>>669
オモシロそうだね。

しかし、いまどき手作りサイトはきつくないか?
せめてCMSを使ってほしい。
xoops, joomla, pukiwikiあたり。




674 名前:名前は開発中のものです。 mailto:sage [2007/01/10(水) 10:31:16 ID:1y6WyCtf]
FrameとSwingの違いってなんです?

675 名前:名前は開発中のものです。 mailto:sage [2007/01/10(水) 13:02:27 ID:CY2D89Rv]
AWTはFrameやDialog等を含む
SwingはJFrameやJDialog等を含む

つまり比べている単位が違う


676 名前:名前は開発中のものです。 mailto:sage [2007/01/10(水) 16:06:33 ID:CUOEf+p3]
XOOPSはバグだらけだしコミュ荒れまくりだしトラブル起きまくりだし半分死んでる

677 名前:名前は開発中のものです。 mailto:sage [2007/01/10(水) 19:51:15 ID:1y6WyCtf]
>>675
ありがとうございます

678 名前:名前は開発中のものです。 mailto:sage [2007/01/10(水) 20:45:36 ID:oWjZFBCd]
>>673
ネットゲームを作ってるけどユーザー登録と認証のデータベースを
一々作らなくてもXOOPSとかのに便乗してしまえばいいことに気がついたよ。
でもXOOPSは荒れてるのか、残念。


679 名前:名前は開発中のものです。 mailto:sage [2007/01/10(水) 23:47:17 ID:ssMCF7LR]
>>669
試みは面白いけど
ブラウザMMOである必要があるかってのが不明だし
見た感じ完全な素人ぽいし、何をやりたいかってのがわからないから微妙だな

680 名前:名前は開発中のものです。 mailto:sage [2007/01/11(木) 00:27:37 ID:mphLe0zy]
>>679
Javaだからブラウザとは限らないと思う。
むしろブラウザでアプレットでも動いて、
WebStartやJavaアプリケーションだったら
他の機能も使えるとかだったら面白いと思う。
ただ募集で人を募ってるにしてはちと情報が足りないよねぇ。




681 名前:名前は開発中のものです。 mailto:sage [2007/01/11(木) 00:56:40 ID:NgTbegp6]
>>669
どこかでみたなって思ってたら BOTNEWSの人のサイトじゃん。

682 名前:名前は開発中のものです。 [2007/01/11(木) 08:07:23 ID:S2vx2eJV]
ラグナロクw

683 名前:名前は開発中のものです。 mailto:sage [2007/01/11(木) 14:53:51 ID:Yd1G/kpu]
.hackを思い出すようなURLだな

684 名前:名前は開発中のものです。 mailto:sage [2007/01/11(木) 21:55:18 ID:5qUJXaj7]
皆様こんばんは。JAVA初心者です。
JAVAゲームを作りたいのですが、どこかのサイトでフロッピーに一括DLできるようなところはありませんでしょうか?
プログラムはもう出来ていて、あとは入力すれば出来るような簡単なゲームで良いんです(テトリスなど)。
皆様ご存知でしたら大変申し訳ないんですが教えてくれませんでしょうか…?

685 名前:名前は開発中のものです。 mailto:sage [2007/01/11(木) 22:02:28 ID:+EVEwFD/]
申し訳ありませんが意味が分かりません。もう少し易しい日本語で書いてください。

686 名前:名前は開発中のものです。 mailto:sage [2007/01/11(木) 22:29:11 ID:XoWa/QNu]
ここ
javagame.main.jp/

687 名前:名前は開発中のものです。 mailto:sage [2007/01/12(金) 03:00:48 ID:STRKeNbN]
そのサイトすごくいいんだけど
もちっと泥臭いJavaに限った情報を集めたサイトが欲しいなー


688 名前:名前は開発中のものです。 mailto:sage [2007/01/12(金) 05:51:25 ID:h6iNVB6D]
どの程度Javaを理解してるかにもよるな。
とりあえずお前さんが書いたソースをどっかにあげてくれ。

689 名前:名前は開発中のものです。 mailto:sage [2007/01/12(金) 18:19:58 ID:+JdArOF0]
Imageのサイズを取得することが出来ないんですが何故でしょうか
image.getWidth(this);でいけますよね?-1が返るんですけど

690 名前:名前は開発中のものです。 mailto:sage [2007/01/12(金) 19:13:52 ID:k6cliGBg]
>>689
Javadocより
> abstract クラス Image は、グラフィカルイメージを表現する
> すべてのクラスのスーパークラスです。
> イメージは、必ずプラットフォーム固有の方法で取得してください。
ベクトルイメージとかもひっくるめてのスーパークラスだから
ピクセルの概念をImageは持ってない。
BufferedImageとVolatileImageはピクセルベースのイメージで
サイズの概念を持ってるからサイズの取得ができるよ。




691 名前:名前は開発中のものです。 mailto:sage [2007/01/12(金) 20:07:18 ID:STRKeNbN]
>>688
ソースは公開してるけど、ここに紹介すれば
そんなサイトを君が作ってくれるの?


692 名前:名前は開発中のものです。 mailto:sage [2007/01/12(金) 20:32:46 ID:h6iNVB6D]
別に作ってもいいよ。
で、どこで公開してるの?






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

前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