Javaでゲーム作成 2本目
レス数が950を超えています。1000を超えると書き込みができなくなります。
0001名前は開発中のものです。
2005/10/27(木) 09:43:50ID:dzSvRQXEゲーム作成以外の話題はム板(http://pc8.2ch.net/tech/)、
他言語に関する話題は他スレでお願いします。
前スレ
JAVAでゲーム作成
http://pc8.2ch.net/test/read.cgi/gamedev/1074347252/
テンプレは>>1->>10あたりを参照
0002名前は開発中のものです。
2005/10/27(木) 09:45:06ID:dzSvRQXEJavaでゲーム作る話してるキチガイがいるよ(藁
ttp://pc8.2ch.net/test/read.cgi/gamedev/1013953851/
JAVAアプリでゲーム
ttp://pc8.2ch.net/test/read.cgi/gamedev/1033926010/
【JAVA】2Dアクションゲームを作る【初級】
ttp://pc8.2ch.net/test/read.cgi/gamedev/1094602659/
Javaテクノロジ
ttp://jp.sun.com/java/
ttp://java.sun.com/j2se/1.5.0/ja/download.html (Ver5.0のJDK入手はここから)
ttp://java.sun.com/j2se/1.4.2/ja/download.html (Ver1.4.2)
EclipseWiki (開発環境Eclipseについて)
ttp://eclipsewiki.net/eclipse/
Javaでゲーム作りますが何か?
ttp://javagame.main.jp/
0003名前は開発中のものです。
2005/10/27(木) 09:46:29ID:dzSvRQXEJAVA シューティング作成委員会
ttp://pc8.2ch.net/test/read.cgi/tech/1062310183/
【徹底討論】Java3Dの可能性について考える
ttp://pc8.2ch.net/test/read.cgi/tech/1033703640/
[立方体] JAVA3D [直方体]
ttp://pc8.2ch.net/test/read.cgi/tech/1092155318/
【質問】Java3D【相談】
ttp://pc8.2ch.net/test/read.cgi/tech/1120101050/
JavaでVCバリのゲーム開発可能?
ttp://pc8.2ch.net/test/read.cgi/tech/1068370977/
【Java】EZアプリ勉強しつつ作っていく
ttp://hobby7.2ch.net/test/read.cgi/appli/1075443374/
0004名前は開発中のものです。
2005/10/27(木) 11:27:47ID:ZZ7nMv5G1乙
0005名前は開発中のものです。
2005/10/27(木) 16:01:39ID:7S6We+lNこれだけだとアレなんでPureJavaでゲームを開発する場合チェックすべきもの。
・描画の基本となるJava2D全般
・音楽のすべてはJavaSound
・描画のベースとなるGraphicsConfigurationとかJFrameとかBufferStrategy
・画像ロードにImageI/O
・入力のKeyEventやらListenerまわり
・時間管理にTimer方面
・ゲームに限らないが便利なコレクション関係。特にJ2SE5.0からは面白いものが追加されてるのでチェック
・J2SE5.0以上なら高速で高機能な排他制御にLock方面
・ハイスコアやリプレイ保存、データ読み込みなどにストリームのI/O方面。XMLも5.0からはXPathが標準ライブラリに入ったので便利
0006ooo
2005/10/27(木) 16:30:12ID:Wsa915hKああああああああああああああああああああああああああああああああああ
0007名前は開発中のものです。
2005/10/27(木) 16:38:06ID:MMxzgP3lhttp://processing.org/
でゲーム作りを始めてみましたが、面白いですよ。
JAVAについては何も知りませんでしたけど、簡単に作れました。
(Processing is an open source programming languageとか云ってますが、実体はJAVAなので問題無いですよね?)
ただ、BETAだとEclipseから利用する方法が分からなかったので、
あえてALPHAを使っています。
あと、音周りが工夫しないとダメですね。
SpringTower : Built with Processing
http://akimasa.s96.xrea.com/game/SpringTower/index.html
僕が作ったのはこんなモンですが、
ABA Games
http://www.asahi-net.or.jp/~cs8k-cyu/
(のProce55ingの項)
がとても参考になりました。
製作者側もお手軽で、遊ぶ側もお手軽で、アマチュアには良いんじゃないですかね。
0008名前は開発中のものです。
2005/10/27(木) 18:31:56ID:7S6We+lNたしか出来上がるものはjavaのクラスファイルだが、言語そのものは違う
という微妙なラインだな
でもBASIC感覚ならProce55ingよりもっとわかりやすいライブラリが前スレで見た気がする
0009名前は開発中のものです。
2005/10/27(木) 19:33:52ID:Ng3zF12FJOGL(OpenGL) https://jogl.dev.java.net/
JSR-231 beta 01 https://jogl.dev.java.net/servlets/ProjectDocumentList?folderID=4295&expandFolder=4295&folderID=2771
Lightweight Java Game Library(OpenGL, OpenAL) http://www.lwjgl.org/
sdljava(SDL) http://sdljava.sourceforge.net/
0010名前は開発中のものです。
2005/10/27(木) 22:35:20ID:w+M8OxUUProce55ingはJava Appletの一部を隠蔽しているだけだから
言語も同じと考えていいかと。
EclipseでPAppletを継承して作っているとなおさら。
0011名前は開発中のものです。
2005/10/27(木) 23:10:51ID:7S6We+lNまだベータだったような気もする
それくらいだったらstatic importを前提とした
http://shin.cside.com/product/shingl3/index.htm
のほうが楽だね
まだstatic importで使える命令は少ないけど、
ページフリッピングとイメージ描画、BGM、SE、入力がBASICと同じように使えるし、
Proce55ingの時間管理のように最初にフレームレート指定するだけで全自動
だらだらと
PUTSPRITE( image, x, y, w, h);
FILL( x, y, w, h, color) ;
とかBASICと同じように可能
J2SE5.0の新機能を割り切って使ったというのは面白い
0012名前は開発中のものです。
2005/10/31(月) 23:39:48ID:u6e5CoZ+ある画像image1を90度回転させてimage2に保存するにはどうしたらよいでしょうか?
0013名前は開発中のものです。
2005/10/31(月) 23:56:08ID:imBdURi1基本的な考え方としては、新しい BufferedImage を作成して
そこから createGraphics()で Graphics2D コンテクストを取得する。
そこにオリジナル画像を AffineTransform で90度回転して描画、
んでファイル書き出し。
0014名前は開発中のものです。
2005/11/01(火) 00:30:00ID:9pR/2Iza0015名前は開発中のものです。
2005/11/02(水) 22:39:55ID:l4YhQp0J0016名前は開発中のものです。
2005/11/02(水) 23:48:22ID:DUZczgaE業務系ではなくゲームの場合、少ない知識の組み合わせで目的の結果を得る想像力は大事だと思う。
0017名前は開発中のものです。
2005/11/03(木) 02:58:58ID:urWJhpS30018名前は開発中のものです。
2005/11/03(木) 06:40:04ID:9Sm6/yeXJavaを覚え始めた頃、
Toolkit.getImage → PixelGrabber → MemoryImageSource
の流れはあまり簡単には思えなかった。catch しなきゃならない例外もあるしね。
WindowsでもDIB関係に戸惑ったし、ロジックはわかってるのに肝心な入出力
がらみのライブラリが未修得でイライラすることが良くある。
0019名前は開発中のものです。
2005/11/03(木) 13:46:35ID:urWJhpS3素でDIBつかうよりインテリジェントにラッピングしてくれる
0020名前は開発中のものです。
2005/11/03(木) 14:05:31ID:WOWA/OPZjavaで人工知能(チャットでよくある人口無能みたいなやつで入力
した単語に返答してくれるみたいな」)っぽいのつくれますか?
せっかく高校で習っているので勉強だけじゃなくてなにか役立てたいのですが・・・・
0021名前は開発中のものです。
2005/11/03(木) 14:09:06ID:urWJhpS30022名前は開発中のものです。
2005/11/03(木) 14:16:55ID:WOWA/OPZレスさんくすです。
ALは2次元配列までしか理解していませんが頑張って見ます
0023名前は開発中のものです。
2005/11/03(木) 14:51:49ID:yzYzVhNJ0024名前は開発中のものです。
2005/11/03(木) 15:25:40ID:rL8Q+mgG0025名前は開発中のものです。
2005/11/03(木) 15:30:20ID:rL8Q+mgG人工知能と人口無能じゃ大違いだが、とりあえず
Javaだから作れる、とか作れない、とかはない。
自然言語処理等の勉強をすれば色々な言語で作れる。
0026名前は開発中のものです。
2005/11/03(木) 17:22:53ID:MCCIxjg4ttp://javagame.main.jp/index.html#minigame
にJavaで作ったサンプル例がある。
でもテキスト扱うのはPerlとかRubyの方が簡単だろうな。Javaだと無駄に難しそう。
0027名前は開発中のものです。
2005/11/03(木) 17:27:23ID:urWJhpS30028名前は開発中のものです。
2005/11/03(木) 17:27:41ID:mPH84WWPMyJxtaのソースの一部にEliza(人工無脳っぽいプログラム)
の機能があったと思う
Ruby向けだけど
ttp://book.mycom.co.jp/book/4-8399-1729-9/4-8399-1729-9.shtml
人工無脳ではないけどJava向け
ttp://www.amazon.co.jp/exec/obidos/ASIN/4339023876/249-1065135-4693961
0029名前は開発中のものです。
2005/11/03(木) 17:56:04ID:MCCIxjg4正規表現の使い方がJavaだと面倒くさい
0030名前は開発中のものです。
2005/11/03(木) 19:20:15ID:urWJhpS30031名前は開発中のものです。
2005/11/04(金) 22:15:45ID:Kyfrg/8g0032名前は開発中のものです。
2005/11/04(金) 22:28:24ID:SFh7BoY4ちょっと大きなプログラムになるとデバッグ時間が指数関数的に増えるし
半年も経つと自分で書いたソースでも完全意味不明に見えるのは困るな
0033名前は開発中のものです。
2005/11/04(金) 22:52:05ID:qJSgT1NL業務アプリみたいな巨大な物をメンテナンスすると死にそうになる。
最近のPerlは知らんが。
0034名前は開発中のものです。
2005/11/04(金) 23:16:25ID:BPGzYPZFなんだの、いろいろ出しすぎw
0035名前は開発中のものです。
2005/11/04(金) 23:20:17ID:ukNdIpNn得意不得意はそれぞれあるし、目標とするものが違うからな。
0036名前は開発中のものです。
2005/11/05(土) 08:59:55ID:nyk5I5ZLJavaは最先端の実験言語みたいだな。大学の研究でよく使われるからかも。
0037名前は開発中のものです。
2005/11/05(土) 13:00:36ID:3XtwtUcI大学の研究でよく使われるのもあるけど、
Apacheを筆頭に無数のオープンソース開発者がいるからだと思うぞ。
0038名前は開発中のものです。
2005/11/05(土) 14:22:37ID:bFW/1MqR問題はこのスレに関係があるライブラリはなさそうなことくらいか
まぁApache XML-RPCは目的によっては使えるか
0039名前は開発中のものです。
2005/11/05(土) 15:12:24ID:JuIHCGWgシミュレーションとかちまちましたデータ中心ならXMLデータバイディングとか
かなり使えそうとか思うけど。
自分の場合はついついインタプリタ仕込む癖がある。
0040名前は開発中のものです。
2005/11/05(土) 15:14:53ID:bFW/1MqRゲームつくろうって人間は自前で実装が多いと思われ
なんせ、ばらす必要はなくてたとえばList<Element>でもっていけば、
Beansとちがって仕様変更に強かったり、例外処理がしやすかったりする
0041名前は開発中のものです。
2005/11/07(月) 02:44:21ID:vwx0ALlqWikiはPerlで作ったのをコピーしてるからそうなっているんだと思うけど
これが、Perl文化かと思ったよ
0042名前は開発中のものです。
2005/11/15(火) 23:05:03ID:P0cI9ezkそれをJavaで再生したらどえらいことになったりする?
Wavのがディスク食うだけでいいから安定するのかな?
0043名前は開発中のものです。
2005/11/15(火) 23:12:48ID:ShfCvdFQ0044名前は開発中のものです。
2005/11/15(火) 23:19:48ID:P0cI9ezk0045名前は開発中のものです。
2005/11/15(火) 23:33:03ID:Wrh6FbhN>>11のを見る限りCPU使用率は1GHzで1,2%ってところでは?
0046名前は開発中のものです。
2005/11/17(木) 20:29:55ID:8R2XVZPEdevice.setFullScreenWindow(null);
System.exit(0);
とやって終わらせると画面真っ黒になって操作不能になることが
あるのですが、なる理由がわかりません。
あと、フルスクリーンにするときそこで処理が止まってctlALTDelで終わるしかない
ときもあるのですがどうすればよいのですか?
1_4_2です。
0047名前は開発中のものです。
2005/11/17(木) 20:35:02ID:2shdXMro問題はないはずだけど
ベータのときはnullわたしたやつはダメだったけどね
今は大丈夫だったと思ったけど
あとはチップとビデオドライバによるかも
安定してDirectX動いてる?
0048名前は開発中のものです。
2005/11/17(木) 21:44:27ID:8R2XVZPEPC初心者板逝きですか?
0049名前は開発中のものです。
2005/11/17(木) 23:38:12ID:2shdXMroこれをコメント化してみたら?
あとは他のJavaのフルスクリーンのゲーム試してみるとかどうかな
005046
2005/11/18(金) 20:45:39ID:Jjzsx+o7とりあえず動くのでよしとすることにしました。
ですが背景を付けてみると
ぱちぱちしてとても目に悪いことこの上ないという状況になりました。
これがちらつきというのでしょうか?
BufferStrategyは使っているのですがどうすれば改善するのでしょうか?
0051名前は開発中のものです。
2005/11/18(金) 21:13:51ID:bdg3zZZwちらつくことはないと思うんだが、他のアプリでもちらついてるの?
0052名前は開発中のものです。
2005/11/18(金) 21:16:43ID:yEqWeMq10053名前は開発中のものです。
2005/11/18(金) 21:24:56ID:bdg3zZZwウインドウモードはフリッピングのフラグが降りてブリットのフラグがたってるはずだろ
005446
2005/11/18(金) 22:02:38ID:Jjzsx+o7他にはコマンドプロンプトしか動かしてません。
ちらつくときとちらつかないときがあるのですが
背景を付けると100%ちらつくこの状況。
フルスクリーンを諦めるしかないのか
0055名前は開発中のものです。
2005/11/18(金) 22:16:33ID:bdg3zZZw005646
2005/11/19(土) 06:56:25ID:59ba+Epeもの(Java)、百本ゲームのゲームは問題なく動きます。
0057名前は開発中のものです。
2005/11/19(土) 13:09:03ID:BsSsGwkc005846
2005/11/19(土) 13:40:21ID:59ba+Epe渡していたことが発覚。
正直すみませんでした。
ちらつきは直りましたが、それ以前の操作不能になること
がある時があるのはわからない。
これもどこか自分のが悪いのだろうか。
0059名前は開発中のものです。
2005/11/20(日) 02:35:57ID:PktMjKAY一言アドバイス
発覚したってことは他も可能性アリ
煮詰まってそうだけど、連レスしてないで
とりあえずもちつけ
で、もっかいソースとにらめっこしてみようぜ!
0060名前は開発中のものです。
2005/11/26(土) 22:10:42ID:wK3zX5BN馴らしたSEの人が設計してくれるならコードは手伝うよ
0061名前は開発中のものです。
2005/11/26(土) 22:25:05ID:sU6iOuYIツクールにしてもダンテのようにフラグだけでいいのか、スクリプトでいいのか
スクリプトなら次期バージョンで標準実装だとか
出だしはコードと設計は同一者でひっぱっていくくらいじゃないと
オープンソースなプロジェクトは成功しないと思われ
SEだ、プログラマだといったすみわけはいらない
まず、>>60がJavaでスタンドアロンのゲームを作れるかどうかという点がポイントになる
0062名前は開発中のものです。
2005/11/26(土) 22:53:12ID:wK3zX5BNすまん。実は業務系でSwingは勉強中なんだ。
0063名前は開発中のものです。
2005/11/26(土) 22:56:43ID:sU6iOuYI業務系でJavaさわってるならまず言語の基本は問題ないとして
Java2Dを筆頭にフルスクリーンとか時間管理、JavaSoundあたりが触れるようになるといいね
0064名前は開発中のものです。
2005/11/26(土) 22:56:47ID:WkbR04YYAffineTransform form = new AffineTransform();
draw(){
form.rotate(x*Math.PI/180,画像の幅/2,画像の高さ/2);
画像イメージの描画オブジェクト.drawRenderedImage(画像イメージ,form);
描画先の描画オブジェクト.drawImage(画像イメージ,null,gx,gy);
}
というふうにすると、背景が透明なでただ↓と描かれている画像を使うと背景が黒くなり矢印が見えなくなります。
また、横長い画像をつかって見ると画像の中心に
画像の高さを直径に丸くなって回転をし
その丸以外の部分が白くなってしまうんです。
ただ画像をその場で回転させて
表示させたいんですがどうすればいいんでしょうか?
0065名前は開発中のものです。
2005/11/26(土) 23:04:49ID:wK3zX5BN最初はCっぽくなるかも知れないけどやってみる。
0066名前は開発中のものです。
2005/11/26(土) 23:11:28ID:sU6iOuYIもちつけ
なんか日本語が分かりにくいぞ
まずGraphics2Dのrotateメソッドを使ってみて描画してもおかしいかチェック
それに画像イメージってやつをを上書きしてしまってるように見える
0067名前は開発中のものです。
2005/11/26(土) 23:29:16ID:PhHUEMA7Flash やツクールみたいのはゲームどうこうより、
アプリとしての設計の方が100倍重要だと思うけどなー
エンドユーザ的意見としては、時間制御 UI は Flash じゃなくて
AfteEffects を参考にして欲しいと願う。
Shape エディタがあったら超便利なのにと思う事は多々あるので
正直これはかなり興味ある。
そのうち Sun が出すんじゃねーかとか思ってたけど全然だし。
このへんは現状だと SVG (Illustrator -> Batik) とかになるんだろうけど
こっち方面は面倒すぎて手が出せん。
0068名前は開発中のものです。
2005/11/27(日) 00:07:17ID:XSFMA6v60069名前は開発中のものです。
2005/11/27(日) 00:25:55ID:H8JPzJcwJava基本機能だけのベースとしてはかなりいい材料と思う。
http://www.brackeen.com/javagamebook/
0070名前は開発中のものです。
2005/11/27(日) 01:11:36ID:bXtTt1i7すごいね。いい勉強になりそう。
TimerとGraphics2Dでアニメくらいは出きるからちょこちょこ学んでみるよ。
0071名前は開発中のものです。
2005/11/27(日) 01:13:57ID:laCqt6jfそれは多分作ってほしいと思うもの違いがあるのかも。
オレが想像したのは、エンジンはメタなインターフェイスを提供して
ゲーム的なエッセンスはエンドユーザが作るって形のものだから。
んで実際の所、描画の最適化とか絶対に必要になるけど、
それがゲームに限った話かと言われると微妙な気がするのよ。
むかーし似たようなモン作ろうとしたけど (作りかけたま放置)
必要としたゲーム的な知識ってタイマーの使い方くらいだった。
>>70
とりあえずガンガレ!
0072名前は開発中のものです。
2005/11/27(日) 01:16:07ID:XSFMA6v6スレッドプールとか5.0で標準で実装されてるのもあるし注意な
とくにJavaSoundのストリームと偽ったところはなめてる感じ
0073名前は開発中のものです。
2005/12/05(月) 22:23:20ID:DrFNVWzVそのImageのなにも描いてない部分を透過させるにはどうしたらよいのですか?
0074名前は開発中のものです。
2005/12/05(月) 23:52:46ID:YnmMxKVzBufferedImage(int, int, int)で
3番目の引数にBufferedImage.TYPE_4BYTE_ABGR指定で透明になるかな?
0075名前は開発中のものです。
2005/12/06(火) 12:56:55ID:m90gA8zy0076名前は開発中のものです。
2005/12/06(火) 18:51:26ID:vSoUCqBNうまくいきました。ありがとうございます。
しかしcIearRectするとダメなようです。
画像を回転させるために仮Imageを作って
それに画像を描画してそのImageを回転させる
という風に考えていたのですが他の方法を考えます。
0077名前は開発中のものです。
2005/12/06(火) 19:04:14ID:m90gA8zy0078名前は開発中のものです。
2005/12/06(火) 19:42:22ID:vSoUCqBNtmp.lotate(chara,characenter.x,characenter.y);
g.drawImage(chara,null,charagx,charagy);
てな感じにやってたんですけど、なぜか全く回転しなかったので
仮画像を作ってそれを回転させるという風にしました。
0079名前は開発中のものです。
2005/12/06(火) 20:43:53ID:m90gA8zyすでに描画されてるのはどうしようもない
0080名前は開発中のものです。
2005/12/06(火) 20:51:15ID:57K4+g+RGraphics2Dオブジェクトに描画でできんのかな
0081名前は開発中のものです。
2005/12/07(水) 00:29:46ID:R+Rh6YVG皆様から頂いた助言を活かすことができません。
少し、具体例を用いて説明して頂けいませんか?
0082名前は開発中のものです。
2005/12/07(水) 00:59:31ID:xiUT9nsP2・描画先を回転させます
3・ロードした画像を描画します
0083名前は開発中のものです。
2005/12/07(水) 01:56:14ID:SEfUp1TO指定された絵を完成させるゲームをイメージしてみるとか。
0084名前は開発中のものです。
2005/12/07(水) 06:51:27ID:R+Rh6YVGつまり、描画先を回転させて
そこに描画して、回転させた分
逆回転させて他はもと通り、と解釈して実行し
成功致しました。ありがとうございます。
しかし、これは斜めになったとき
四角の余白が黒くなってしまいます。
これの解決方法はどうすればよいのでしょう?
背景を再び描画も考えましたが
回転させたものが塗り潰されてしまいます。
0085名前は開発中のものです。
2005/12/07(水) 09:35:30ID:hZztkAcv先に塗り潰すという発想がでてこんのだ。
0086名前は開発中のものです。
2005/12/07(水) 19:03:18ID:R+Rh6YVG______
|■/ \■|
↑回転した画像
て感じにうえの部分に黒い部分ができてしまうんです。
さて、どうしたものか?
0087名前は開発中のものです。
2005/12/07(水) 19:17:03ID:ruXn40F60088名前は開発中のものです。
2005/12/08(木) 14:23:17ID:wcnvECNEg.rotate(time*PI/,characenter.x,characenter.y);
g.drawImage(chara,null,gx,gy);
g.rotate(-time*PI/,characenter.x,characenter.y);
time++;
これでいいんですよね?
0089名前は開発中のものです。
2005/12/08(木) 15:51:44ID:Voeburfjprotected BufferedImage image = 知らん;
protected Point2D center = 知らん;
protected AffineTransform rot = new AffineTransform();
protected double rpf = 0.1; //回転の量
protected void paintComponent(Graphics g) {
Graphics2D g2 = (Graphics2D)g;
// ... ここで背景描画する
// rpfの量だけ回転させて描画
rot.rotate(rpf, center.getX(), center.getY());
g2.drawImage(image, rot, null);
}
2D じゃない方の Graphics の使い方はわすれた。
0090名前は開発中のものです。
2005/12/08(木) 16:27:30ID:+Z+rNNsb背景黒く塗ってるっぽいから黒くなるのは正しい動作だとみたが?
009188
2005/12/08(木) 20:08:36ID:wcnvECNE>>89
すみません。このコードの前に
int time=1;
double PI = Math.PI;
ってあって
time*PI/は
time*PI/180の間違いです。
そしてそのコードを実行した結果
見事指定した座標を中心にぐるぐると
私がしたいのはその場を動かずに回ることだったのですが。
というかこれでも黒い部分でてきました。すみません。
>>90
g.setColor(Color.GREEN);
って事前にやってたんです。
0092名前は開発中のものです。
2005/12/08(木) 20:58:51ID:+Z+rNNsb該当部分のソースを最小限にしてコンパイルできるものを出したほうがいいんじゃね?
0093名前は開発中のものです。
2005/12/08(木) 21:03:25ID:HtN2IVyaプロジェクト > games > games-middleware > genuts
ttp://www.genuts.com/
Genuts Cheese Indigestion Puzzle
オモシロスwww
0094名前は開発中のものです。
2005/12/09(金) 01:58:21ID:DR3+EYk2XML? properties?
0095名前は開発中のものです。
2005/12/09(金) 02:29:57ID:HsQzl6B+0096名前は開発中のものです。
2005/12/09(金) 12:27:40ID:wi5fEo9o修正もこまめに入ると思うし、文字だけじゃなくてたのパラメータも必要になると思うから
XMLが汎用性では一番かと
0097名前は開発中のものです。
2005/12/09(金) 17:53:50ID:3zLl7jhnttp://fivedots.coe.psu.ac.th/~ad/jg/ch1/index.html
0098名前は開発中のものです。
2005/12/09(金) 23:37:39ID:6Nnex+8J0099名前は開発中のものです。
2005/12/09(金) 23:40:17ID:HsQzl6B+0100名前は開発中のものです。
2005/12/10(土) 00:04:18ID:KuqpST++内部ではElementでつかうのがいい
010197
2005/12/10(土) 21:23:28ID:h8wANggUttp://fivedots.coe.psu.ac.th/~ad/jg/ch04/index.html
Graphics2Dは知らないお^^;
0102名前は開発中のものです。
2005/12/10(土) 22:25:02ID:KuqpST++ただ、普段以上にメモリ使用量は把握していかないと駄目
GCがかなり増えるから
速度が必要な場合あらかじめ回転させておくとかが必要になるね
アクセラレーションきかないから
0103名前は開発中のものです。
2005/12/10(土) 22:27:15ID:MpQxaKQL0104名前は開発中のものです。
2005/12/10(土) 22:35:58ID:KuqpST++Java2Dって高級すぎるAPIなんでどれがアクセラレーションきいて、どれがきかないのか
チェックするのが大事
基本的に速度は1.4.2と5.0でかわってないよ
アクセラレーションがきけば秒間にスプライトが万単位で描画できるはずだが
やることをかえるとこれが一気に1/100以下に下がったりする
0105名前は開発中のものです。
2005/12/10(土) 23:04:18ID:MpQxaKQL昔ながらのアナログ手法にしとくか
0106名前は開発中のものです。
2005/12/11(日) 01:01:17ID:xyghd8DO60fpsで128*128の回転スプライトが1000個は無理だと思う
010794
2005/12/11(日) 12:16:09ID:hWRTdhf0>>100
XMLの方が柔軟性があって良いということですね。
propertiesは簡単な設定の保存程度にしておいた方が良いのかもしれませんね。
ありがとうございます。
0108名前は開発中のものです。
2005/12/11(日) 14:37:45ID:ohNVp0t4400MHz、64MB、VRAM8Mでどこまで出来るかがポイントだな。
まあ回転なんてギャラガとか作ろうと思わなければ使わないけど。
0109名前は開発中のものです。
2005/12/11(日) 15:20:14ID:xyghd8DOVRAM8MってことはTNTとかあのあたりかな
ならアクセラレーションの速度も問題にならない
メインメモリ64Mが一番のネックかと
GCの調整はプロファイラとにらめっこになるね
ヒープサイズ自体を24M以下に抑えてももVM方面で厳しい
1.4.2のほうがメモリ消費は少ないからそっちのほうがオススメか
Pen3/1GHz+統合ビデオでテストしてみたけど
上で上がってた2DSTGは60fpsでサクサク動いた
0110名前は開発中のものです。
2005/12/11(日) 17:02:52ID:5bLTV7mU遅レスだが、これいいよ
ttp://www.oreilly.com/catalog/java2d/
0111名前は開発中のものです。
2005/12/11(日) 17:06:21ID:xyghd8DO0112名前は開発中のものです。
2005/12/11(日) 17:43:34ID:FJ8u3O2A0113110
2005/12/11(日) 18:11:19ID:45Ys85hPBufferedImageの細かい解説とか画像処理関連のことがら
についておさえて書かれているところがおすすめ
>>1999年ってやけに古いけど大丈夫なのか・・・
Graphics2Dの基本についてはそんな変わってないはず。
5.0以降どうなったかは知らんが。
あーでも画像ファイル読み込みでImageIO使う解説とかはなかったような。。
ま、そのあたりはWebの情報その他で補うとして、Java2D本体の包括的な
解説書としてはこれけっこういいと思う。
>>日本語訳がないんじゃさすがにここで質問する初心者にはすすめれんが
これについては「がんばって読めや」といいたいが、それもなあ。。。
画像処理とかについては書いてないけど、
Graphics2Dでのprimitiveの描画ひととおり+基本的な変換(Affine変換とか)だけなら、
ttp://www.iamas.ac.jp/~furu/book/motion/
とかもいいかも。
でも、これらとかは本なんか見んでもWebに情報ころがってるな。
0114名前は開発中のものです。
2005/12/11(日) 19:59:25ID:xyghd8DOGraphics程度の低レベルAPIでもいいからどれがアクセラレーションきくかどうか、
速度的なものやメモリ使用量把握だからねぇ
ところでGraphics2Dでそろそろ加算合成実装して欲しいんだがすばらしく放置だよな
そもそも基本についてはSunのマニュアルで代替分かると思う
0115名前は開発中のものです。
2005/12/11(日) 20:35:51ID:CGEh3W0j透明、半透明が使えないので、事実上まともなゲーム制作には使えない。。。
createCompatibleVolatileImageメソッドでTransparency引数が
指定できるが、定義だけでまだ実装されてない。。。
つまり、BufferedImageを使うしかない。これへの描画メソッドに
アクセラレーションが効いてるのはない。。。
0116名前は開発中のものです。
2005/12/11(日) 20:40:29ID:xyghd8DO5.0からつかえるようになったけど?
0117名前は開発中のものです。
2005/12/11(日) 20:43:08ID:ohNVp0t40118名前は開発中のものです。
2005/12/11(日) 20:45:55ID:xyghd8DO0119名前は開発中のものです。
2005/12/11(日) 20:48:17ID:xyghd8DOあるスレッショルドを超えると内部でVolatileImageにして転送してくれる
この設定値を0にするのがまず基本
5.0からはこの動作範囲が広いようだ
つまり、最適化されてないアプリだと高速化する可能性あり
1.4.2までにチューニングしてると速度向上は一切なし
5.0で画像周りの速度が速くなったというやつは大概設定ミス
0120名前は開発中のものです。
2005/12/11(日) 21:36:17ID:CGEh3W0j使えない。5.0でも使えない。
どの環境(OS)で使えたのか教えてくだされ。
0121名前は開発中のものです。
2005/12/11(日) 21:40:12ID:CGEh3W0jこの設定値を0にするのがまず基本、とは?
設定値とは何を指してるのか?
具体的に教えてくだされ
0122名前は開発中のものです。
2005/12/11(日) 21:56:41ID:xyghd8DO1.4.2まではムリ
5.0から追加されてるメソッド使うからね
Windowsで確認済み
スレッショルド指定はSunのドキュメントにも書いてある
これをメインクラスのstatic初期化にいれておけ
System.setProperty("sun.java2d.accthreshold","0");
標準出力に出るので、それを設定してあるアプリかどうかはすぐに分かる
ちなみに0とは描画回数が0という意味
画像をBufferedImageにロードした段階でVRAMにも転送することを現す
1なら最初に描画しようとしたときにまずVRAMへ転送、そしてVRAM>VRAMを処理する
この辺はすべてSunの日本語資料にある
0123名前は開発中のものです。
2005/12/11(日) 22:10:48ID:CGEh3W0j自分もWindowsXpなのだけど、VolatileImage を使うと
アルファ値0のピクセルが真っ白になってしまう。。。
列挙された全GraphicDeviceの全GraphicConfigurationから得る
VolatileImageのTransparencyタイプが、全てOpaqueになってる。。。
本当にWindowsでValatileImageの透明機能が使えたのですか?
0124名前は開発中のものです。
2005/12/11(日) 22:44:05ID:xyghd8DO0125名前は開発中のものです。
2005/12/11(日) 22:51:58ID:CGEh3W0jGraphicEnvironment ge = GraphicsEnvironment.getLocalGraphicsEnvironment();
GraphicsDevice gd = ge.getDefaultScreenDevice();
GraphicsConfiguration gc = gd.getDefaultConfiguration();
VolatileImage image = createCompatibleVolatileImage(640, 480, Transparency.TRANSLUCENT);
これで得る image は、半透明でないのです。。。
gd、gc を列挙させて、その全てから得るimageも半透明でないです。。。
0126名前は開発中のものです。
2005/12/12(月) 00:52:54ID:5lGPHviOBITMASKでの透過ならいける
0127名前は開発中のものです。
2005/12/12(月) 00:53:29ID:5lGPHviO0128名前は開発中のものです。
2005/12/12(月) 01:05:16ID:5lGPHviOたぶんロードのところミスってると思うよ
0129名前は開発中のものです。
2005/12/12(月) 01:12:31ID:5lGPHviOImageIOでロードしたアルファつき画像をそのまま128個描画
8fps
ちゃんと設定したVolatileImageとBufferedImageが同じで
50fps
となった
アルファつきならVolatileImageにおく必要はないね
0130名前は開発中のものです。
2005/12/12(月) 01:17:38ID:4tfiFb5fとしておけば普通にBufferedImageでOKってこと?
0131名前は開発中のものです。
2005/12/12(月) 01:26:16ID:5lGPHviO単なる透過を描画した場合
フルスクリーンモードならTRANSLUCENTでもBITMASKでも
スプライト2048個描画で60fps維持
スプライトサイズは64*64で
画面モードは640*480にしたときの場合ね
オンボードビデオでこれなのでnVIDIAとかATIとかのそれなりのつめば余裕で超えるかと
通常モードはDirectDrawのラッパだと考えればどれが速いかとか分かりやすいと思う
0132名前は開発中のものです。
2005/12/12(月) 01:28:24ID:5lGPHviOほとんどの場合はそういうこと
あくまでも描画先をVolatileImageで描画元はBufferedImageで
VRAMにおくかどうかはインテリジェントに任せるというのがJavaらしいかな
VRAMにおく優先順位とかもあるので頻繁に描画しないやつはそれを抑えておくといい
この方法ならVRAM容量が多ければ加速しやすいとかそういう感じ
昔AGP登場時の思想にあったやつね
0133名前は開発中のものです。
2005/12/12(月) 16:21:39ID:xzlsw/bc行数は400以上&対戦ゲーム&Swingというのが条件です。
既存のゲームでなるべく参考資料が沢山あるものが良いのですが・・・
アイデアゲームは自分のスキルや時間的制約から作る自信が無いですorz
0134名前は開発中のものです。
2005/12/12(月) 16:57:06ID:5lGPHviOSwingを使えという時点でたぶんそんなレベルじゃない気がする
マルバツゲームとかもっと単純なの
最低自分が何を作りたいかだけはきめてください
0135名前は開発中のものです。
2005/12/12(月) 17:05:04ID:6Xf+w43Jその条件なら特に苦にならんだろう
テンプレあたりに行って資料が多そうなの探せばいんじゃね?
0136名前は開発中のものです。
2005/12/13(火) 07:26:14ID:lGjUBPOJ12月末までという期限付きなので力量に合わないのに手を出したら怖いなと。
そのためそこそこボリュームがあって簡単に作れるゲームをきいてみたいと思ったわけです。
ちなみにブロック崩しモドキ(ボールをブロックに当てたら壊れる)や
シューティングモドキ(たまを発射させ物に当たったら壊せる)ぐらいは作った事ありますが、
昨日調べた結果によるとリアルタイムで進行させるものは対戦にするのは難しいとか。
それよりターン製のゲームの方が比較的楽でイイヨって書いてありました。。
>>135
つらつらとネットサーフィンしてみましたが400行足らずでも結構うまく作れるものですね、
どんだけのゲーム作れば良いのかと何か不安になってきましたorz
0137名前は開発中のものです。
2005/12/13(火) 12:23:28ID:SA14+LJ/12月末ではあと2週間ですか
STGだと1面だけ開発するのも難しそうだ
0138名前は開発中のものです。
2005/12/13(火) 14:25:19ID:ULQaYiRMとりあえずとっとと着手しろって
ブロック崩しに対戦要素混ぜるとかでいいじゃん。
上下にバー作るとか。
ちょっと工夫するなら、画面半分に分けて上下にバー作って、
1P側の操作で左の下側バーと右の上側バーが同時に動き、
2P側の操作だとその逆。勝利条件をちょっと考えれば
これで十分対戦になるじゃんよ?
0139名前は開発中のものです。
2005/12/13(火) 18:22:53ID:lGjUBPOJなんにせよ選ぶのは程ほどにし、
皆さんの意見を参考にしつつ今から寝ずに頑張ってきます。
他のレポートもあるのでつきっきりになるわけにはいきませんがorz
Thank you.
0140名前は開発中のものです。
2005/12/13(火) 18:25:21ID:SA14+LJ/0141名前は開発中のものです。
2005/12/13(火) 23:40:37ID:/KZUefCpJNIとJavaCommunicationAPI、どっちが良いのでしょうか?
前者は高級な機能を使えるけど環境依存、
後者は低級な所からくみ上げる必要があるけど、WinとSunで動く、
という感じなのでしょうか?
0142名前は開発中のものです。
2005/12/13(火) 23:43:17ID:msXDQ5ajhttps://jinput.dev.java.net/はどう?
0143名前は開発中のものです。
2005/12/13(火) 23:48:38ID:Ngny3SWu対戦要素を考えるならボンブリスとかか、俺ならそこらへん狙う。と遅レス。
0144名前は開発中のものです。
2005/12/14(水) 00:08:34ID:8d4z5wIBコミュニティ開発のAPIですか。
まだライセンスを確認してないけど、
頒布の問題が発生しなければいいかもですね。
0145名前は開発中のものです。
2005/12/14(水) 00:52:23ID:P5dHJreb0146名前は開発中のものです。
2005/12/18(日) 01:18:18ID:ART67WNv640x480の16bitでいいかなと思うのですが、Win高級機以外でも32bitって使えますか?
0147名前は開発中のものです。
2005/12/18(日) 01:43:27ID:9q2jSVUjそしてWinでも32bpp出せない環境はある
0148名前は開発中のものです。
2005/12/18(日) 01:59:42ID:ART67WNvWin以外では無視されるといことでしょうか?
では16bpp(bit per pixel?)にしておけば不具合が起きることもなさそうです。
BIT_DEPTH_MULTIというのもあるのですがこれは使えますか?
スクリーン版JISAutoDetectみたいなものなのかとJavaDocを見て思ったのですが
これといった情報がネットにありませんでした。
0149名前は開発中のものです。
2005/12/18(日) 02:03:11ID:9q2jSVUjLinuxでやったときは画面サイズ変更が不可能だったし、ウインドウモードとフルスクリーンモードと作ったよ
内部描画と出力描画を分けるとかが吉かも
速度大幅に低下するけど
あと使用可能な画面をリストアップして処理するのが一番だね
0150名前は開発中のものです。
2005/12/18(日) 02:14:24ID:ART67WNvここをもう少し詳しく教えていただけないでしょうか?
device.getDisplayModes();で最高値のモードを探す感じですか?
0151名前は開発中のものです。
2005/12/18(日) 13:02:30ID:9q2jSVUj0152名前は開発中のものです。
2005/12/19(月) 20:35:40ID:o8rpM/SYタクティクスオウガみたいなSLGのシステム作るのに
おまいらだったらどれくらいかかるもんですか?
0153名前は開発中のものです。
2005/12/19(月) 20:49:21ID:Xlt1mg4V自分がまず完成できるものを選ぶ
のが普通では?
最初から風呂敷広げて崩壊していくのを何度見たことか
たいしたことのないものであってもちゃんと快適動作してバグもないように完成させる、
というのはそれなりに大変なもの
0154名前は開発中のものです。
2005/12/19(月) 22:23:05ID:GbGeAi3tデバッグがあまりに手間でウィンドウモードに変えたくなってきました。
public Graphics2D getGraphics()
のようにして、
スクリーンマネージャが
getFullScreenWindowからえたWindowから、
BufferStrategyを返して、
それから、Graphics2Dを返して描画するようにしているんですが、
ここから楽にウィンドウモードに切り替えるすべはありますか?
0155名前は開発中のものです。
2005/12/19(月) 22:52:44ID:Xlt1mg4V0156名前は開発中のものです。
2005/12/19(月) 23:30:01ID:vG/cR0LRなるほど、これならMVCになる。この感動は衝撃的だった。
おわり。
0157名前は開発中のものです。
2005/12/20(火) 00:07:37ID:pKpEoU3U0158名前は開発中のものです。
2005/12/20(火) 00:29:32ID:WpmlUq/XStrutsの例のfowerdが頭に浮かんだ。そんだけ。
メインルーチンの戻り値がまさかシーンだったとは・・・みたいな。
0159名前は開発中のものです。
2005/12/20(火) 02:15:06ID:FfJ0Icl6AVGとかきまったものでしかつかえんよね
0160名前は開発中のものです。
2005/12/20(火) 23:06:36ID:WpmlUq/X0161名前は開発中のものです。
2005/12/20(火) 23:12:27ID:FfJ0Icl60162名前は開発中のものです。
2005/12/20(火) 23:19:12ID:WpmlUq/X0163名前は開発中のものです。
2005/12/21(水) 00:10:55ID:38cOblp2たいしたことのないものは、そこら辺にソースが転がってるから、
作る気が起きないんだよね。
かといって、ちょっとレベルや規模を広げると、1人じゃお手上げになるし。
0164名前は開発中のものです。
2005/12/21(水) 00:12:34ID:2Odzg4dtでも、しっかり音出したり演出出したりバランス取りしてちゃんとしたものを作る
という段階まではなかなか難しい
0165名前は開発中のものです。
2005/12/21(水) 20:44:15ID:+HySSU2I0166名前は開発中のものです。
2005/12/21(水) 21:12:53ID:2Odzg4dt0167名前は開発中のものです。
2005/12/23(金) 20:23:05ID:3FOPkpSWもしくはセリフの表示のやり方の紹介とか
0168名前は開発中のものです。
2005/12/23(金) 20:57:04ID:/tlDw98+どの変が難しいと思うんだ?
0169名前は開発中のものです。
2005/12/23(金) 21:11:56ID:PPOyiaLPテンプレ
0170名前は開発中のものです。
2005/12/24(土) 11:52:15ID:iqSdFGcF0171名前は開発中のものです。
2005/12/24(土) 12:56:39ID:gnp/5lgIDirectXの実装のほうでね
0172名前は開発中のものです。
2005/12/24(土) 16:05:43ID:twljoP+/ドラクエみたいに新しい行が挿入されたら
既に表示されてた行が上にずれて1番上の行が消えるとか
主人公の名前を変えられるゲームにおいて
メッセージ中で表示するときはどうしたらいいかとか
ファイルからセリフを読み込むにはとか
テンプレ見て勉強します
0173名前は開発中のものです。
2005/12/24(土) 16:31:00ID:Al8Kj3xL> 既に表示されてた行が上にずれて1番上の行が消えるとか
Clipが神だと分かったあの日の夜
0174名前は開発中のものです。
2005/12/24(土) 16:37:56ID:gnp/5lgIBufferedImageで文字列のバッファ用意して毎フレームブリットしたほうが楽
0175名前は開発中のものです。
2005/12/26(月) 08:43:49ID:zSwx4yvQ勉強になります
dd
0176名前は開発中のものです。
2006/01/07(土) 15:15:38ID:EFX7v9430177名前は開発中のものです。
2006/01/07(土) 18:00:27ID:yOZ6b1cq0178名前は開発中のものです。
2006/01/15(日) 10:23:57ID:53jl8YVS左右反転、上下反転をする際に、
setTransform(...)
で、trans.scale(-1,1);
などとすると複数のスプライトを描く際に実用に耐えられないくらい重いです。
AWTのdrawImageみたいに、それだけで左右、上下反転できないのでしょうか?
srcX,destXを反転させれば良かったAWTにたいし、
SWTだとwith,height指定なので引数に負数を渡すと実行時エラーになってしまい、それだけではできないようにみえます。
ご存じの方、おられましたら宜しくお願いいたします。
0179名前は開発中のものです。
2006/01/15(日) 11:12:29ID:aMKMqoWrが正しいと思う
PureJavaのほうがまともな実装ってどういうことさ
って場面がよくある
0180名前は開発中のものです。
2006/01/15(日) 20:09:28ID:Vrds102b0181178
2006/01/15(日) 22:49:28ID:53jl8YVSなるほど、ありがとうございます。
SWTをつかってアニメーションエディタとゲーム自体を一緒に作っていたのですが、
考え直した方が良いみたいですね。
0182名前は開発中のものです。
2006/01/15(日) 22:52:15ID:53jl8YVS>>180
Swingの方がやはりいいんですね。SWT自体は割と扱いやすいとは感じているのですが、
最近は情報も出てこず考え直したりもしています。
SWTを使うと局所的なところでWin32APIなどを呼べるのも魅力なのですが。
思想には反しますけれど。
0183名前は開発中のものです。
2006/01/16(月) 00:14:43ID:DTLttG/1情報量は多いしものによっては速度面でも結構いける
1フレームあたり1000個のスプライトとか余裕
0184名前は開発中のものです。
2006/01/17(火) 03:10:21ID:9917DXoA某サイトに開発ツールJAVA2 SDK 1.3と書いてあるのですが、
このスレのテンプレには(Ver5.0のJDKとVer1.4.2) しかなく
どれをDLすればいいのか分かりません
どなたか教えてもらえないでしょうか?
0185名前は開発中のものです。
2006/01/17(火) 06:08:31ID:Om3jnpEHハァ?
質問の意味が読めん
0186名前は開発中のものです。
2006/01/17(火) 06:37:28ID:1vDzG9rVエスパーちからを発揮してみると、参考にしようと思ったサイトが
1.3だったので、1.3が良いと思ったのではなかろうかと。
1.4か5.0でやってみたら?ほとんどの場合、動くと思うよ。>184
0187名前は開発中のものです。
2006/01/17(火) 14:12:13ID:jNVA85J7日本語がおかしくてすみません
参考にしようと思ってるサイトでは1.3と書いていて
1.3を探したけど、1.4か5.0しかなくて困ってます。
それから1.4と5.0の違いが分からなくて
どっちをDLしていいのか分かりません
違いを教えてもらえないでしょうか?
ちなみにiアプリのゲームを作ろうと思ってます
0188名前は開発中のものです。
2006/01/17(火) 14:22:08ID:4NyPfQ7dJ2MEの話題はプログラム技術板に専用スレがあったと思うのでそちらのほうがいいかと。
そして動作保障している1.3を使うのが吉。
互換性は細かいタイミングが必要なところではチューニングすればするほど問題が出やすいし。
J2MEといってもiアプリは独自の層があついのでいわゆるJavaという豊富な標準API
を使って開発するという感じはないと思われ。
0189名前は開発中のものです。
2006/01/17(火) 17:16:07ID:jNVA85J7そうなのですか
全然知りませんでした^^:
すみませんでした
そっちに行きます
0190名前は開発中のものです。
2006/01/18(水) 06:35:27ID:kAS6/zePCPad 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 です
0191名前は開発中のものです。
2006/01/18(水) 10:53:20ID:c2N1wZsa0192名前は開発中のものです。
2006/01/23(月) 17:40:02ID:kW9KAIGh0193名前は開発中のものです。
2006/01/23(月) 17:48:15ID:yJIlIQCh別にたいした仕組みが必要になるわけでもないと思われ
0194名前は開発中のものです。
2006/01/23(月) 22:17:38ID:/EcVc25a文法をどうやって決めればいいのか、どう実行させればいいのか
いまいち想像できません。
敵の出現まではできそうですが、敵の弾の設定(どんな弾を、いつだすか)を
インタープリターでどう表現したらいいのでしょうか?
0195名前は開発中のものです。
2006/01/23(月) 22:27:55ID:I0QlWZ4dWEBブラウザで行うCGIゲームライクなものなら当然可能。
というか、漏れ自身が現在進行形で作成中。
0196名前は開発中のものです。
2006/01/23(月) 22:46:33ID:tL3TpBsRなんか設計に悩んでるっぽいことはわかった。
その調子でがんばれ。
0197名前は開発中のものです。
2006/01/23(月) 22:49:50ID:yJIlIQChまずは敵のクラス内で処理してみれば?
それを外に出したほうがいいか、ださないほうがいいかは案件しだい
0198名前は開発中のものです。
2006/01/24(火) 14:41:32ID:vo2dZIRF0199名前は開発中のものです。
2006/01/26(木) 15:59:14ID: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();
}
0200名前は開発中のものです。
2006/01/26(木) 16:52:43ID:ITPJnSj3まず根本的なことからなおしましょう
キーのイベントで処理は入れないように
メインループでのみ処理するようにしてください
イベントではフラグの上げ下げのみで
0202まほろば ◆BmUbLWewsM
2006/01/28(土) 18:36:32ID:K+4gOIY6ところで、classファイルからソースコードを盗まれないようにするにはどうしたらいいんでしょ。。
0203名前は開発中のものです。
2006/01/28(土) 18:42:43ID:u3ZzJuZSクラスローダ自作したところで実行中のメモリのぞかれれば意味なし
nproではじくとかやると誰も使うやつはいなくなるぞ
ネイティブバイナリでもコンパイラの癖とあたりつければそれなりに追えるんだし・・・とわりきれ
その分開発効率がいいんだからガンガンものづくりに専念しなさいといいたい
オンラインゲーなら毎日こまめにクラスを再配布していれば大丈夫かと
0204まほろば ◆BmUbLWewsM
2006/01/28(土) 21:29:17ID:K+4gOIY6実行中のメモリのぞかれれば意味なし
そんな事出きるの?ソースは?
やろうと思えばできるとか妄想でつか?
0205名前は開発中のものです。
2006/01/28(土) 21:37:25ID:EnQtmKxXメモリ覗くだけならWindows上で実行しちゃえば簡単だろうけど、
手軽に解析って話は俺も聞いたこと無いな。
うちの会社はDashOとかいうバカ高い難読化ツールを買った。
そんな必要無ぇって主張は通らなかった。
0206名前は開発中のものです。
2006/01/28(土) 22:44:25ID:PUcSGIMg0207名前は開発中のものです。
2006/01/28(土) 23:06:37ID:u3ZzJuZS多少は調べろ
クラスロードした後はざる
0208まほろば ◆BmUbLWewsM
2006/01/28(土) 23:57:58ID:K+4gOIY60209名前は開発中のものです。
2006/01/29(日) 01:11:24ID:1KG7yFUT0210名前は開発中のものです。
2006/01/29(日) 02:35:06ID:PecoYXTpいいご身分だなぁ。
0211名前は開発中のものです。
2006/01/29(日) 12:34:08ID:FRX/ORuzさらに良いご身分だな
0212まほろば ◆BmUbLWewsM
2006/01/29(日) 13:24:43ID:LX0lKjST0213名前は開発中のものです。
2006/01/29(日) 17:14:26ID:zbiz4Pm/ゲームのキャラクターを表示させるためにはint型では精度が悪いんで。
0214まほろば ◆BmUbLWewsM
2006/01/29(日) 17:28:00ID:LX0lKjST0215名前は開発中のものです。
2006/01/29(日) 17:45:07ID:ec+1eYbrそういうときは大きいバッファを持つことで回避する
320*240の画像を0.5単位で扱いたいときは640*480とかね
drawRenderedImageとかtranslateを使う方法もあるが
用途がゲームなら使わないほうがすっきりしていいと思われ
0216名前は開発中のものです。
2006/01/29(日) 17:57:12ID:2i9o9yjBGraphics2D でもいいのなら AffineTransform を使えばできる。
デフォルトでは AffineTransform を使用しても補完してくれないので、
補完方法を設定する必要がある。
Graphics2D g2 = (Graphics2D)g;
g2.setRenderingHint(RenderingHints.KEY_INTERPOLATION,
RenderingHints.VALUE_INTERPOLATION_BICUBIC);
g2.drawImage(image, transform, null);
こうすると 0.01 単位でヌルっと動かせるけど、それなりに重くなるし
画質もはっきりしたりぼやけたりするので逆にオススメできない。
キャラ自身の内部座標を小数点で扱うのは自由だけど
画像の描画に関しては座標を int で処理するのが現実的だと思う。
0217名前は開発中のものです。
2006/01/29(日) 21:48:41ID:qPM3IQVC0218名前は開発中のものです。
2006/02/01(水) 20:44:05ID:W1eX6IZO0219名前は開発中のものです。
2006/02/05(日) 00:25:12ID:LCSDYznupublic 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()が呼ばれるにはどう修正すればよいでしょうか。
0220名前は開発中のものです。
2006/02/05(日) 00:52:34ID:NFbwVJ0FBufferStrategyってのをしらべてごらん
ようは好きなタイミングで描画が出来るのだ
0221名前は開発中のものです。
2006/02/05(日) 01:21:52ID:LCSDYznuやっぱそれですか。そうかもと思って実装始めたらできました。
frame.createBufferStrategy(2);
とやってpaintComponent(g)をdraw(g)にかえて
BufferStrategy strategy = window.getBufferStrategy();
Graphics g = strategy.getDrawGraphics();
draw(g);
g.dispose();
でうまく描画できました。
0222219
2006/02/05(日) 01:30:28ID:LCSDYznuWindow window = device.getFullScreenWindow();
window.add(JPanelオブジェクト);
とやってフルスクリーン上にパネルを置いています。
こうするとパネルがちらついてしまうのですが対策はあるでしょうか。
0223名前は開発中のものです。
2006/02/05(日) 01:52:48ID:8ByMu9YSウインドウ全体を使って描画してるから
0224219
2006/02/05(日) 09:38:19ID:LCSDYznuフルスクリーン上でスペース押すと右上にパネルが表示されます。
KeyboardListenerを実装してるのでキー入力はそのパネルが奪い
パネルを消すともとのフルスクリーン上にキー入力がいくという感じです。
パネルじゃなくてCanvasでもいいんですがどうもちらつきます・・・
パネルで何も描画しなくてもちらつくということはフルスクリーンにしてる
JFrame上にコンテナは置いちゃだめということでしょうか。
0225名前は開発中のものです。
2006/02/05(日) 12:29:26ID:8ByMu9YS0226219
2006/02/05(日) 13:00:29ID:LCSDYznuあきらめてパネル風のウィンドウを描画することにします。
0227名前は開発中のものです。
2006/02/05(日) 13:25:23ID:8ByMu9YSすべて自前で描画しないとリフレッシュとかのタイミングがコントロールできん
0228名前は開発中のものです。
2006/02/05(日) 14:37:09ID:15xceU0H英語だけなら楽勝かもしれないけど、漢字変換とかどうすればいいのかさぱーり。
以前コンポーネント埋め込んだら酷いことになって諦めてた
0229名前は開発中のものです。
2006/02/05(日) 14:40:46ID:LCSDYznu0230名前は開発中のものです。
2006/02/05(日) 15:23:24ID:8ByMu9YSといった作りかたしてると思われ
JavaでやろうとするならBufferStrategyをあきらめるほうがいいだろうね
JPanelに画面部分を描画、paintComponentでバックバッファから自前で転送
0231名前は開発中のものです。
2006/02/05(日) 17:31:23ID:XoC15JKPLWJGLやJOGLで日本語文字を画面に表示するにはどうしたらいいんでしょうか。
LWJGLにAWTGLCanvasっていうのがあって、これを使えばできそうなんですが、
サンプルがなく使い方がいまいち分かりません。
みんなはどうやっているんだろう。
以前Graphics2Dでゲーム作ろうと思ったけど、アルファブレンド処理がソフトウェア描画に
なったので、LWJGLに移ったんですが。
うううーーーん
0232名前は開発中のものです。
2006/02/05(日) 17:43:24ID:8ByMu9YS一応オプションでDirect3Dで動作させればアルファブレンドもハードウェアになるが
レンダリング品質の問題とか通常一番使うブリットが遅いとかJava2Dベースでは
通常合成しか出来ないとかが問題になるからな
LWJGLはまったくさわったことがないのでわからん
JOGLはOpenGLそのままだね
俺が触ったときはSDLとのリンクが未実装だったので対象には上がらなかったが
Java3Dは高級すぎてゲーム用途にはまったく使えないという感じだった
速度がまったくでないことやピクセル単位の処理という感じではなかった
ただ、軽く触っただけなのでなんともいえない
2Dゲームならソフトウェアによるアルファブレンドが問題になるほど遅い場面は少ないとは思う
0233名前は開発中のものです。
2006/02/05(日) 19:35:20ID:XoC15JKP>>232
640x480の画面に32x32のマップをひきつめただけですでに40FPSだったんですよね
Graphics2D。。。
やっぱりC++の方がゲーム開発はいいのかなぁ・・・
開発効率はJavaの方がはるかにいいんですけどね
何かJOGLやLWJGLに近い速度がでるゲーム用ライブラリって
ないんでしょうか
0234名前は開発中のものです。
2006/02/05(日) 19:44:36ID:8ByMu9YS通常転送ならそこまで遅くなることはあるまい
使い方がおかしいかと
0235名前は開発中のものです。
2006/02/05(日) 19:48:54ID:XoC15JKP>>234
アルファブレンドで描画したときです。
正直なきたくなりました。
同様の処理でDirectXの場合は余裕を持たせてもFPS500ぐらいでした。
0236名前は開発中のものです。
2006/02/05(日) 20:03:06ID:8ByMu9YSPureJavaベースのゲームなら少し前のコンシューマの2Dベースにしておくべき
アルファブレンドが多い場合は自前のエンジンを使ったほうがいい
Java2Dのアルファブレンドは機能が多すぎて高級すぎる
回転とかも同様
あとメモリアクセスを減らすために解像度を下げるとか
今後を考えてレンダリングエンジンはマルチコアに対応させる
現状を考えると320*240-16bppが2DでJavaでの安定動作の限界だと思うよ
それを2倍拡大して描画するのがベストか
Sunはデスクトップ部分に5.0は力を入れるといいつつ
1.4.2とほとんど変わらなかった前科があるから6にも期待薄だな
0237名前は開発中のものです。
2006/02/05(日) 20:25:57ID:15xceU0H0238名前は開発中のものです。
2006/02/05(日) 21:05:19ID:8ByMu9YS強度の最適化のために滑らかに動かない
0239名前は開発中のものです。
2006/03/01(水) 00:33:42ID:LBMCdldERPGツクールでキーボード名前入力を可能にした感じのゲームも可能なのかな。
でもそんなことしてたらMMORPGなんて作れない気もする。
-serverの件もそうだけど、なんかもどかしい
0240名前は開発中のものです。
2006/03/01(水) 00:53:30ID:iPnrcY6DAWTなのであまり込み入った使い方しないように
0241名前は開発中のものです。
2006/03/01(水) 01:34:48ID:LBMCdldEゲーム画面上に透明チャット窓とかしようとするのも可能そうだね。
BufferStrategyならAWTとSwingの差分なんてあってないようなものだろうし。
ちょっと希望が湧いてきました。
0242名前は開発中のものです。
2006/03/01(水) 02:35:02ID:LBMCdldE0243名前は開発中のものです。
2006/03/04(土) 19:59:23ID:+Bxv4duPTimerのタイミングできちんと描画スレッドに渡せますか?
0244名前は開発中のものです。
2006/03/04(土) 23:22:41ID:EEF7QBKsリペイントわたしてもリペイント範囲のaddされるだけ
連続でrepaint複数渡しても1回しかリペイントされないとかよくあること
これはSwingに限ったことではない
Windowシステムは全部そう
だからTimerでrepaintわたしたからすぐに描画されるわけではない
正確なタイミングでやるならAWTイベントでのリペイントは辞めるべき
BufferStrategyを使うのが正しい
これは内部でDirectXとか使われてるイベントモデルではなく、いわゆる直書きだ
0245名前は開発中のものです。
2006/03/05(日) 13:59:16ID:R322THrXFPS管理するからrepaintのままでやります。
描画に失敗したら致命的というわけでもありませんし。
0246名前は開発中のものです。
2006/03/05(日) 14:46:49ID:o20ilzioなんか勘違いしてないか?
0247名前は開発中のものです。
2006/03/05(日) 15:12:44ID:R322THrX0248名前は開発中のものです。
2006/03/05(日) 16:46:58ID:o20ilzioダブルバッファリングをライブラリに任せるのは割ときついからな
0249名前は開発中のものです。
2006/03/15(水) 01:15:11ID:cXOEjtfT0250名前は開発中のものです。
2006/03/18(土) 15:46:10ID:bpOUjL+k良スレですね。
6年ぶりぐらいにJava触って驚いた〜。
趣味の遊びには最適ですね。
0251名前は開発中のものです。
2006/03/18(土) 23:01:07ID:ATXsVevnヒープサイズをjrockitと同じ物理メモリの75%とかに指定したいんだけど
exewrapにはそういう指定は出来ないんだろうか
128m版と256m版の2つ用意したほうがいいかな・・・うーむ
0252名前は開発中のものです。
2006/03/18(土) 23:25:32ID:xwepgm3Jメモリ増えればGCにかかる時間は増えるわけで、ゲームで使用するメモリ量とかちゃんと計算してないの?
それだとGCとかでかたつかないか?
0253名前は開発中のものです。
2006/03/19(日) 00:20:58ID:jd/0wDmz0254名前は開発中のものです。
2006/03/19(日) 00:26:14ID:UecNa0OIそれにわりあいでやられたら世代の調整とかおわっとる
GCのアルゴリズムの種類だって調整するのは常識なんだし
アプリごとに最適な値は大きくことなる
0255名前は開発中のものです。
2006/03/19(日) 00:34:10ID:jd/0wDmz最適値というのは演算分のヒープサイズがどのくらいのものなの?
0256名前は開発中のものです。
2006/03/19(日) 00:50:29ID:UecNa0OI-verbose:gcオプションいれてごらん
もっと詳しく見たいのならプロファイラで見るのが一番だが
まずはGC部分に注力するならこれが見やすいだろうね
0257名前は開発中のものです。
2006/03/19(日) 00:58:12ID:jd/0wDmzOK、チャレンジしてみます。
0258名前は開発中のものです。
2006/03/31(金) 14:22:07ID:5bd8BEHKまぁアルゴリズムとかは結構わかります。
今頃になって、再びプログラムを趣味にしてみようと思いJavaを選択しました。
シンタックスやOOPの基本的なことは大丈夫そうです。
Eclipseインストールしてちょっと感激。
で、問題なのはすこしでもDirectDrawとかFPS管理とか、ちょっとでもシステム寄りの
部分になると全然わからないのです。
いくつかソースを読んでみますと、各人でわりと実装が違うようですね。
Java5ではどんな方法がよいのかなど、参考になるものは無いでしょうか。
0259名前は開発中のものです。
2006/03/32(土) 00:20:26ID:dul/XEV4そういう人かなりいるよね
ゲームは問題なく作れるけどウインドウアプリになるとmainからはじまらないので
わけがわからない、と
Javaは一応mainから常に始まるしまだ楽なほう
>>1-11あたりはまずよんでみた?
0260名前は開発中のものです。
2006/03/32(土) 01:27:44ID:liMA6BYm0261名前は開発中のものです。
2006/04/04(火) 13:36:48ID:oy1ylhQ+http://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)で表示すると確かに重くなるが
上の奴はこれと同じ状況なのだろうか?
0262名前は開発中のものです。
2006/04/04(火) 13:41:10ID:h6nMnOJP5.0ではBufferedImageのままなにもしなくてもそれなりにきくようになってるし
5fpsってありえんね
そもそもソフトウェア描画でもVGAで30fpsはでそうだが
0263名前は開発中のものです。
2006/04/06(木) 12:59:32ID:kzyZx0iOサンプルではちゃんと表示されるんですが、画像を自作のものと入れ替えるとIO.connectionexception
ってのがでるんです。サンプルと同じGIFでサイズも同じにしてあるんですが。自作画像の方に問題が
あるんでしょうか。
0264名前は開発中のものです。
2006/04/06(木) 14:20:33ID:mP0GEHd4動かないのが実機かPC上かを明記してもらえるとありがたい
サンプルがどんな処理を行うアプリケーションなのかも関係してくる
情報が少なすぎるのでエスパー回答してみるが、
・ファイルが壊れている
終端コードが無かったり、BMPなのに拡張子だけGIFにしたとか
試しにネット上に転がってる別のGIFファイルでテストしてみては?
・ファイル名の指定が間違っている
サンプルと同じファイル名にしてテストしてみては?
大文字小文字、全角半角の違いがないか気をつけて
・容量がオーバーしている
同じサイズというのはピクセル数のことだと思いますが、
バイト数が上限を超えていないか確認してください。
0265名前は開発中のものです。
2006/04/06(木) 17:15:27ID:kzyZx0iOサンプルは簡単なもので、画面にタイトルを表示するだけのものです。十枚ある画像を取り込んで
そのうちの一つを画面に表示するものです。
ファイルが壊れている>壊れているかは私に判断できないんですが、自作の画像はwindowsのペイ
ントで書いて、0という名前で(サンプルで表示されるのが0.gif)形式をGIFにしています。
容量がオーバー>サンプルは色付きですが、自作のものは白と黒のみなのでサイズは小さいです。
いろいろ試してみたんですが、サイズの違う画像の時に一回エラーがでずにちゃんと表示されて、
その画像の大きさをいろいろ変えたんてみても上手く表示されました。やはり元の画像が悪いので
しょうか
0266名前は開発中のものです。
2006/04/06(木) 17:20:56ID:kzyZx0iOエラーが出たままなんです。
0267263
2006/04/08(土) 17:16:17ID:+i1+4exUお騒がせしました。264さんありがとうございます。
0268名前は開発中のものです。
2006/04/08(土) 21:22:15ID:MsUK1t+Nビルドしてないとか
0269名前は開発中のものです。
2006/04/09(日) 20:57:47ID:S2mcpQ+Rメモリが不足してたのかな?
0270263
2006/04/09(日) 23:11:53ID:TOyrHTNi一枚ずつ入れ替えていったらエラーがでなくなりました。言われてみれば一回電源切った
あとかも
0271名前は開発中のものです。
2006/04/10(月) 02:20:42ID:tKGbAe46わかんないならもうレスしなくていいよ
0272名前は開発中のものです。
2006/04/15(土) 01:23:46ID:sf5nUDiwアップローダにアップしては?
http://gamdev.org/up/upload.php
短いソースならこのスレに書き込んでもいいだろうし。
0273名前は開発中のものです。
2006/04/15(土) 10:51:05ID:0dEqMUag書き込みがあるとわくわくする
0274名前は開発中のものです。
2006/04/15(土) 11:44:35ID:HLCHM0AlこのスレはJavaアプリのこと?アプレットのこと?
サーバ側の話?J2MEのこと? なんでもあり?
それよりなにより、漏れは女とJavaTea飲みたい。
0275名前は開発中のものです。
2006/04/15(土) 16:50:42ID:hisjoupK基本はJavaアプリだろうね
アプレットは社内用リッチクライアント用途ではかなりいいけど
アプリと違って起動時のパラメータとかチューニングが限界がある
アプリによってメモリやGC等の設定は細かくかえるのが普通だから
ゲーム用ではさほど・・
フルスクリーンとかファイルアクセスとか限界もあるしね
手軽に配布ということでフラッシュ程度でいいのならフラッシュで作ればいいし
JavaでやりたいのならWebStartにしたほうがまし
JRE同梱してアプリにしたほうがいいよ
0276名前は開発中のものです。
2006/04/15(土) 18:40:50ID:nQHtm5rD速度的には全然遜色ないな。
アプレットでも結構作れる事は作れるけど、開発環境などその他諸々の点で
フラッシュの方が断然上。
アプレットでゲームを作るメリットは何もないよ。
0277名前は開発中のものです。
2006/04/15(土) 18:57:48ID:AcPPvKEl0278名前は開発中のものです。
2006/04/15(土) 19:10:16ID:Vc+Xe/9jだったらActionScript3.0がパブリッシュ(コンパイルの意)出来る環境があれば
あとはAPIリファレンスを手に入れるだけで何とかなりそう
0279名前は開発中のものです。
2006/04/15(土) 21:04:45ID:hisjoupK配布を考えればの間違いでは?
開発環境はアプレットのほうがどこをどう考えても上
アクションスクリプトきっついよ
0280名前は開発中のものです。
2006/04/15(土) 22:36:11ID:lpccgP2zASの開発しづらさを知ってて言ってるのか?
マジキツイっての、アプレットと作り比べてみろよ。
0281名前は開発中のものです。
2006/04/21(金) 18:53:51ID:7zcsjMK6Flashは覚えても応用範囲が狭そう
0282名前は開発中のものです。
2006/04/26(水) 22:50:39ID:h83t4bfk俺はC→AS→Javaだったよ
ASだけは遊びで覚えたんだけど、OO開発の基礎は自然と身についた
MovieClipの仕様がいいんだろうな
0283名前は開発中のものです。
2006/04/29(土) 05:29:13ID:e8m8pSlvここじゃ晒さないんですか?
0284名前は開発中のものです。
2006/05/01(月) 20:40:07ID:nUaQGh3S有料のはDLsite.com等で販売中。
0285名前は開発中のものです。
2006/05/07(日) 00:14:23ID:W2WiM6Ar以前j2re1.4.1_02でフルスクリーンとウィンドウモードを切り替えるものを作ったのですが
1.5.0_06では解像度の変更が正しくうごかないという事に当たりました。
手順は
1)フルスクリーンにする
GraphicsEnvironment ge = GraphicsEnvironment.getLocalGraphicsEnvironment();
device = ge.getDefaultScreenDevice();
DisplayMode fullscreen = new DisplayMode(640, 480, 32, DisplayMode.REFRESH_RATE_UNKNOWN);
device.setFullScreenWindow(fullscreen);
2)排他を解除しウィンドウモードにする
GraphicsEnvironment ge = GraphicsEnvironment.getLocalGraphicsEnvironment();
device = ge.getDefaultScreenDevice();
device.setFullScreenWindow(null);
この後で1)を行った場合、1.4.1_02ではフルスクリーンで解像度が変わったのですが
1.5.0_06ではフルスクリーンにはなるが解像度が変わらないということになりました。
何かご存知の方がいらっしゃったらお願いします。
0286285
2006/05/07(日) 00:27:33ID:W2WiM6Ar1)では決まったフレームをフルスクリーン指定してます。
device.setFullScreenWindow(frame);
0287名前は開発中のものです。
2006/05/07(日) 02:17:45ID:5a9PuC3kところで意味が分かりにくいのだが
1>2>1ってこと?
0288285
2006/05/07(日) 02:57:40ID:W2WiM6Ar>元々フルスクリーンと行き来するとリークが発生するから起動時に選択させるほうがいい
ありがとうございます、その方向で考えてみます。
>1>2>1ってこと?
そうです。
0289名前は開発中のものです。
2006/05/07(日) 11:37:59ID:5a9PuC3k0290285
2006/05/07(日) 14:11:36ID:W2WiM6Arj2re1.4.1_02では、繰り返し切り替えたときにちゃんと解像度も一緒に変わったのですが
1.5.0_06ではフルスクリーンにはなりましたが、二度目以降のフルスクリーン切り替えで
解像度が変わりませんでした。(一回目はちゃんと解像度が変わるようです。)
もしうまく切り替わったのでしたらソース、上げていただけませんでしょうか?
0291名前は開発中のものです。
2006/05/07(日) 14:15:43ID:5a9PuC3kGraphicsEnvironment ge = GraphicsEnvironment.getLocalGraphicsEnvironment();
GraphicsDevice device = ge.getDefaultScreenDevice();
GraphicsConfiguration gc = device.getDefaultConfiguration();
DisplayMode mode = new DisplayMode(640, 480, 32, DisplayMode.REFRESH_RATE_UNKNOWN);
JFrame frame = new JFrame(gc);
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
device.setFullScreenWindow(frame);
device.setDisplayMode(mode);
Thread.sleep(1000);
device.setFullScreenWindow(null);
Thread.sleep(1000);
device.setFullScreenWindow(frame);
device.setDisplayMode(mode);
0292名前は開発中のものです。
2006/05/07(日) 14:17:41ID:5a9PuC3k色深度が違う場合テクスチャキャッシュとか全部作り直してね
異なる色深度で転送を行うとすごく遅くなる
0293285
2006/05/07(日) 14:20:50ID:W2WiM6Ar確認してみます。
0294285
2006/05/07(日) 15:30:17ID:W2WiM6Ar先ほどのソースありがとうございました。
フレームの非表示をフルスクリーンとウィンドウ毎にきりかえりため
毎度フレームをdisposeし、再作成していたが原因でした。
ところで、上記ソースのやり方でフルスクリーンのときにだけ
frame.setUndecorated(true);
を有効にしたいとおもい、いくつか試しているのですがうまくいっていません。
作成していたソースを載せておきますので、再度も一度だけご指摘いただけますでしょか?
0295285
2006/05/07(日) 15:33:08ID:W2WiM6ArGraphicsEnvironment ge = GraphicsEnvironment.getLocalGraphicsEnvironment();
GraphicsDevice device = ge.getDefaultScreenDevice();
GraphicsConfiguration gc = device.getDefaultConfiguration();
DisplayMode mode = new DisplayMode(800, 600, 32, DisplayMode.REFRESH_RATE_UNKNOWN);
JFrame frame = new JFrame(gc);
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
System.out.println("初期表示");
frame.setSize(800, 600);
frame.setResizable(false);
frame.setLocationRelativeTo(null);//中央配置
frame.setVisible(true);
Thread.sleep(10000);
System.out.println("フルスクリーンへ");
//frame.setUndecorated(true);//フレームの非表示
device.setFullScreenWindow(frame);
device.setDisplayMode(mode);
Thread.sleep(10000);
System.out.println("ウィンドウモードへ");
device.setFullScreenWindow(null);
0296名前は開発中のものです。
2006/05/07(日) 16:01:17ID:5a9PuC3k>フレームが表示されていない時にだけ呼び出すことができます。
マニュアルどおりだと思うんだが
タイトルバーの表示、非表示はフレームが表示されているときは駄目
一度非表示にする必要があるよ
0297名前は開発中のものです。
2006/05/07(日) 16:03:32ID:5a9PuC3kGraphicsDevice device = ge.getDefaultScreenDevice();
GraphicsConfiguration gc = device.getDefaultConfiguration();
DisplayMode mode = new DisplayMode(640, 480, 32, DisplayMode.REFRESH_RATE_UNKNOWN);
JFrame frame = new JFrame(gc);
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
frame.setUndecorated(true);
device.setFullScreenWindow(frame);
device.setDisplayMode(mode);
for(int i=0; i<10 ;i++){
Thread.sleep(1000/2);
//ウインドウモード
frame.setVisible(false);
frame.dispose();
frame.setUndecorated(false);
device.setFullScreenWindow(null);
frame.setVisible(true);
Thread.sleep(1000/2);
//フルスクリーンモード
frame.setVisible(false);
frame.dispose();
frame.setUndecorated(true);
device.setFullScreenWindow(frame);
}
0298名前は開発中のものです。
2006/05/07(日) 16:06:27ID:5a9PuC3k0299285
2006/05/07(日) 17:03:17ID:W2WiM6ArsetVisible(false); の後でdisposeが必要なのですね、
わからずに数ヶ月引っかかっていました。
297でいただいたサンプルなのですが、最後のフルスクリーンの状態で
解像度が640, 480ではなく元に戻っていませんでしょうか?
これを何とかできないかなと
//フルスクリーンモード
frame.setVisible(false);
frame.dispose();
frame.setUndecorated(true);
device.setFullScreenWindow(frame);
device.setDisplayMode(mode);
としてみたのですが、今度はウィンドウモードの解像度が戻らなくなってしまいました。
これが一番最初の質問と同じ状態のようです。
0300名前は開発中のものです。
2006/05/07(日) 17:32:54ID:5a9PuC3k//ウインドウモード
device.setFullScreenWindow(null);
frame.setVisible(false);
frame.dispose();
frame.setUndecorated(false);
// device.setFullScreenWindow(null);
frame.setVisible(true);
としてごらん
0301285
2006/05/07(日) 18:08:49ID:W2WiM6Ar切り替え動くようになりました。
動くようになったので調子に乗って切り替え100回とか試してみたら
java.lang.OutOfMemoryError
がでてきました。最初におっしゃってたように、あまり頻繁に切り替えるもんじゃないって事なんですね。
0302名前は開発中のものです。
2006/05/09(火) 15:25:13ID:ii7Fciy7インスタンス生成よりstaticの方が軽い、速いかな?
0303名前は開発中のものです。
2006/05/09(火) 16:50:48ID:BdqQPpYt0304名前は開発中のものです。
2006/05/09(火) 17:54:55ID:oSIIzbHZ世代別GCとの相性を考えるとこれ
0305名前は開発中のものです。
2006/05/09(火) 22:27:04ID:p8kDUjWo実装するにあたって、static変数が必要なデザインパターンもあったんじゃね。
0306名前は開発中のものです。
2006/05/09(火) 23:23:28ID:j9harUZKそういう覚え方はよくないよ。勉強しなおしたほうがいい。
0307名前は開発中のものです。
2006/05/16(火) 11:01:52ID:oJeJmTzF次のコマンドが出るじゃん それでキャンセルで現在のウィンドウが消えて
前のコマンドに参照が戻るよね
あれってそれぞれにバッファ用意してやるしかないかな?
たとえば道具→使う→誰に なら
道具を表示するバッファ
道具、使うを表示するバッファ
道具、使う、誰にを表示するバッファ
みたいに
0308名前は開発中のものです。
2006/05/16(火) 11:35:56ID:pNczDPI9ひたすら上書き
ウインドウが消えたらアクティブになったウインドウの描画
それだけだよ
0309名前は開発中のものです。
2006/05/16(火) 11:37:03ID:pNczDPI9それぞれウインドウ内のみの描画管理
画面全体の描画でそれらを適切に呼び出す
0310名前は開発中のものです。
2006/05/20(土) 04:48:56ID:i7QcIrxX遅くなったけどサンクス
なんとなく分かってきた
キャラやアイテムのリスト作るのが面倒臭いな・・・
存在してるキャラ、所持してるアイテムを調べてリストにして
多ければウィンドウをスクロールさせなきゃならぬ
面倒だけどがんばるか・・
0311名前は開発中のものです。
2006/05/20(土) 09:04:00ID:R0av8b56わからなければ先にUMLでもなんでもいいけど処理の手順を書いたほうがいい
0312名前は開発中のものです。
2006/05/21(日) 05:45:05ID:BQPLtheIきちんと順序立ててやってみるよ・・
0313名前は開発中のものです。
2006/05/22(月) 04:54:34ID:rAUj867u変更や拡張に強く、ネットワーク越しの同期の取りやすいデータモデルをとか考え出すとはまり込む。
0314507
2006/05/22(月) 19:16:41ID:KUql4eEYとりあえず簡単なゲームを作りたいと思っているのですがどれ位勉強すればいいですか?
0315名前は開発中のものです。
2006/05/22(月) 19:27:29ID:bgWiXtf3そういう本最近多いし
0316名前は開発中のものです。
2006/05/23(火) 14:28:37ID:qGRGm1GF激重かな
0317名前は開発中のものです。
2006/05/23(火) 15:24:24ID:5zoiL+RSどういう風に分岐させたいんだ?
0318名前は開発中のものです。
2006/05/23(火) 15:30:17ID:nyPWq5Mq0319名前は開発中のものです。
2006/05/23(火) 22:43:16ID:qGRGm1GFたとえばさ、魔法クラスがあって、そのメソッドに魔法No.をわたして
そのメソッド内で渡されたNo.によってswitchで分岐させるとか
話がswitchになっちゃったけどswitchは数しかつかえないんだよね、たしか
それ以外で識別したいならif elseしかないと思って
あと、変数は少ないけどメソッドがたくさんあるクラスのインスタンスを
100個くらいつくるとメモリがやばかったりするかな?
0320名前は開発中のものです。
2006/05/23(火) 22:51:29ID:wlFUtSp+{
0321320はミス
2006/05/23(火) 22:57:01ID:wlFUtSp+public abstract void perform();
}
みたいにして、個別の魔法はこれを継承するようにするとJavaらしくなるよね
実際にゲームを完成させる気ならこんなことしないだろうけど
メソッドはたくさんあっても問題なし
0322名前は開発中のものです。
2006/05/23(火) 23:14:15ID:qo1KKw1q制御とデータをわけるという考え方は
Cとか構造化言語までのものだ
0323名前は開発中のものです。
2006/05/23(火) 23:18:59ID:qo1KKw1qいや、ゲームでも普通はそういうプログラムを書く
それと識別させたいのならenumを使え
switchもつかえるし
0324名前は開発中のものです。
2006/05/23(火) 23:34:50ID:qGRGm1GFおかげで設計ができてきた
enumすか・・あまり馴染みがないから学ぶよ
ところで>>321の4,5行目が素でわからない
アフォですまぬ
教えてもらっていい?
0325名前は開発中のものです。
2006/05/24(水) 00:05:11ID:qo1KKw1qそのへんしらべてみるとわかるよ
0326名前は開発中のものです。
2006/05/24(水) 00:29:52ID:0rz/nhQ6いろいろサンクス
0327名前は開発中のものです。
2006/05/27(土) 11:28:27ID:MsTUcez+Integerの要素をStringでキャスト、変換したり
Stringの要素をIntegerでキャスト、変換したら
エラー出るかな 面倒くさいんでInteger、Stringで統一してるんだが
勉強すればわかることだけどもしよければレスちょうだい
0328名前は開発中のものです。
2006/05/27(土) 11:38:38ID:EufEKVafclass (名前)
{
public String getString();
public Integer getInteger();
}
みたいなクラスを作る
対応してないんだったら、String用のVectorとInteger用のVectorを別にする
0329名前は開発中のものです。
2006/05/27(土) 11:49:40ID:ryxQUfnbかならず数字を含む文字列ということであれば格納前に返還すればいいだけの話だが
この情報だけではどうしたいのかがわからない
あとゲームということは多少パフォーマンス気にすることも多いのだろうから
Swing部分使わないのならVectorよりはArrayListで
シングルスレッドならパフォーマンスはまずかわらんけどな
0330名前は開発中のものです。
2006/05/27(土) 13:09:54ID:MsTUcez+ArrayListの方がパフォーマンスいいのか・・・
大分Vector使ってコード組んじゃったから、今度からはそうしよう
RPGだからスレッドはマップのキャラ動かすのとアニメーションくらいしか使わないと思う
Vectorの指定された要素がIntegerかStringかで
変換、キャストしたのちifで分岐させて処理を分けたいと思ったんだけど
やっぱり元々のVectorを別にした方がわかりやすかった 対応してないし
話変わるけど、コマンドの実装が面倒だ・・
移動コマンド、アイテムコマンド、魔法コマンド、使用対象コマンド・・
それぞれにクラス作ってそのクラスのキーイベント処理メソッドを
現在のコマンドモードによって呼び分けなきゃならん
いい方法ないかな
0331名前は開発中のものです。
2006/05/27(土) 13:39:56ID:8ehQx4Iaそれならフレームワークの設計自体からやりなおしたほうがいいぞ
0332名前は開発中のものです。
2006/05/27(土) 13:57:59ID:MsTUcez+とりあえず組んでみようとは思ったがマジで勉強が足りんらしい
チラ裏スマソでした
0333名前は開発中のものです。
2006/05/27(土) 14:12:56ID:8ehQx4Iaそしてゲームのループ内でそのフラグを読み取る
これでおけ
0334名前は開発中のものです。
2006/05/27(土) 14:23:34ID:MsTUcez+時間差があるかもと思ってkeyTypedメソッドから
直接各コマンドクラスのメソッドを現在のコマンドモードで分岐させて呼んでた
ドラクエみたいなのを再現しようと思ってるんだがゲーム作りって難しいな
俺のゲーム作りが終わるまでJavaが生き残ってるといいんだけど・・
ここの住人はレベル高いね スレ汚しスマソでした
0335名前は開発中のものです。
2006/05/27(土) 14:52:54ID:8ehQx4Iaというか、普通のゲームはイベントで処理するところはほとんどないから
それを隠すためのフレームワークというかそんなもの
まず言語的にJavaがどうのこうのというよりゲームプログラミングに対しての
技術がちょっと足りないかなぁという感じがする
10~20年前だったらゲーム作りとかいろんな本で毎月雑誌に載ってたんだけどな
いまじゃ残ってるプログラム雑誌がなくなってるし、ユーザーが求めるものが
高すぎてギャップで苦しんでる人が多いのはつらい時代だな
とにかくメインループで取得して状態に応じてswitchで戦闘時なのか移動時なのか
キャンプコマンド中なのか分離するようにかけばおけ
0336名前は開発中のものです。
2006/05/27(土) 17:41:03ID:MsTUcez+一から設計見直すよ
マジで参考になった、ありがとう
0337名前は開発中のものです。
2006/05/28(日) 16:35:03ID:su6FTHmr0338名前は開発中のものです。
2006/05/28(日) 17:06:46ID:oT4lybEG自前で実装するかJOGLとかで3Dで描画するしかない
>>11とかのライブラリに単純な合成がある模様
0339名前は開発中のものです。
2006/05/28(日) 22:35:07ID:L8EQs44Vifをバイナリツリーみたいな構造にすれば
log2(100)の回数の比較だけで済むんじゃないか?
0340名前は開発中のものです。
2006/05/30(火) 19:56:51ID:AkbGbw5fレイヤー可能でそれを実現できたらコンパクトになるなと思ったのですが
0341名前は開発中のものです。
2006/05/30(火) 21:02:41ID:bnvMLnBd効率がいい場合と効率が悪い場合があるっしょ
0342名前は開発中のものです。
2006/05/30(火) 22:16:22ID:AC7eOzy5ポリモフィズムで解決という結論がとっくに出ていると思うのだが
0343名前は開発中のものです。
2006/05/31(水) 19:31:13ID:kqayNospこれが便利ってのがあったら教えてください。
0344名前は開発中のものです。
2006/05/31(水) 22:06:19ID:H+lYwXraOggVorbisさえ再生できればだいたいこまらん
0345名前は開発中のものです。
2006/06/01(木) 20:01:54ID:oy8AdH4mまぁ皆も半月くらいでライブラリは作って、オーサリング環境作るのに挫折するんだろうけどね。
0346名前は開発中のものです。
2006/06/01(木) 23:16:05ID:mTuQuIix生産性もFlashはスクリプトがおわっとるからまけないだろ
0347名前は開発中のものです。
2006/06/01(木) 23:24:39ID:IyLxQihX0348名前は開発中のものです。
2006/06/02(金) 02:24:25ID:IlXUhKKR・MIDIや圧縮音声を再生する
・BGMと映像を確実に同期させる
・表示サイズを変更するとそこそこのクオリティで拡縮表示する
あたりが大変そうだ
0349名前は開発中のものです。
2006/06/02(金) 07:57:55ID:OCsBTCKI・BGMとの同期はそうつくればいいだけ。
・拡大縮小時にアンチエイリアスをかけるかどうかの設定が可能。アルゴリズムも設定可能。
別に大変じゃないし
0350名前は開発中のものです。
2006/06/02(金) 21:25:12ID:cNNwG7w6あれはComposite、Prototype、Flywightなどの
パターンの組み合わせがかなり洗練されててしかも使いやすい。
なんかFlash8.5からはさらに高度なAPIを持つらしいし
実装の研究をする教材としてはかなり好奇心がくすぐられる。
0351名前は開発中のものです。
2006/06/05(月) 07:16:50ID:voSd2aR70352名前は開発中のものです。
2006/06/05(月) 10:04:02ID:EcpAwWeSadobeとの合併で技術者向けのAPIも良くなってくと思う
でもFlashの対抗馬である事に関して、Sunは殆ど興味ないみたいだな
5年前のJavaに今の速度があればいい勝負になってたかもしれんのに
>>351
うん
0353名前は開発中のものです。
2006/06/06(火) 01:13:29ID:wO6xzgzA余裕
>>352
Flashの代替はのぞんでないだろ
今はアプリと鯖メインでは?
ただJAX-WSとかGroupLayout標準装備があるんで
企業向けではアプレットやWEBStartが今でも多少使われているのが
今後さらに加速するかも
0354名前は開発中のものです。
2006/06/06(火) 23:16:48ID:/CfzneHUWebで公開して気軽に遊んでもらえるし
0355名前は開発中のものです。
2006/06/06(火) 23:20:22ID:wO6xzgzA1.2以上だと別途セットアップが必要
1.2時代のJREなら今のブロードバンド時代なら問題は少ないのだが
5.0のサイズはすげぇ
1.4がかわいく見えるくらい
0356名前は開発中のものです。
2006/06/07(水) 21:23:04ID:IghNSOPkメーカー製パソコンとかって入ってないの?
0357名前は開発中のものです。
2006/06/07(水) 21:41:53ID:4a3JF+Q30358名前は開発中のものです。
2006/06/07(水) 23:03:47ID:k1IxK3O2バージョンは買ったときのマシンでばらばらだしそれを期待するのはちときつい
ゲームなら新しいバージョンになればどんどんよくなってるのが敏感にわかる
0359名前は開発中のものです。
2006/06/14(水) 15:09:12ID:LwkvhD3fJavaWebStartも良くない?
あれ対応のゲーム出てくると使う側としては楽チンなんだが。見ないね。
0360名前は開発中のものです。
2006/06/14(水) 17:48:02ID:Kbfca28q0361名前は開発中のものです。
2006/06/14(水) 18:00:49ID:gnk1ZbZr0362名前は開発中のものです。
2006/06/14(水) 18:55:46ID:oiUcwSTz3じかん位かな?
0363名前は開発中のものです。
2006/06/14(水) 20:43:32ID:E7n+afyq0364名前は開発中のものです。
2006/06/14(水) 21:01:18ID:KYL0jDeYJava Web Startってサーバー側にmime-typeの追加が必要だから、
レンタル鯖じゃ動かない可能性あり。
MIME-TYPE:application/x-java-jnlp-file
0365名前は開発中のものです。
2006/06/15(木) 13:30:54ID:tNRE7/uOそこは連鎖場屋の中の人にMIME-TYPEの使いを頼めばなんとかなる予感。
0366名前は開発中のものです。
2006/06/16(金) 00:52:38ID:yygRlJ/S0367名前は開発中のものです。
2006/06/17(土) 12:40:34ID:msfIS4LLApacheのActiveMQとかで低負荷のCGI代わりに使いたい
0368名前は開発中のものです。
2006/06/17(土) 13:13:35ID:Z2AWkk9k月1,2万かかるよ
0369名前は開発中のものです。
2006/06/17(土) 13:31:48ID:msfIS4LLdiceやtalkなどシンプルな機能をメッセージングできれば
使い方を決めるのは利用者側みたいなのイメージしてたんだが
0370名前は開発中のものです。
2006/06/17(土) 14:46:45ID:Z2AWkk9k0371名前は開発中のものです。
2006/06/17(土) 17:29:15ID:cZqcM90l設計だけが楽しいみたいな状態に陥ってしまったw
0372名前は開発中のものです。
2006/06/17(土) 18:48:38ID:Z2AWkk9kDIはたぶん便利になる
俺も次のゲーム開発ではDIで開発するつもり
0373名前は開発中のものです。
2006/06/17(土) 23:46:12ID:2TpnxAFo0374名前は開発中のものです。
2006/06/17(土) 23:58:20ID:kRFswYuv<resource id="hoge" path="rsrc/hoge.jpg" gen="org.hoge.SPIImageLoader"/>
んで
ImageLoader il = new ImageLoader(conf_path);
BufferedImage img = (BufferedImage)il.getImage(id);
これが基本形。こっからどうするかは腕次第。
0375名前は開発中のものです。
2006/06/19(月) 21:46:48ID:Zb7E8WNxぐぐって見た限りではそれらしきところが見当たりませんでした。
これらは割りと基本的なものだと思っていたのですが、Javaにはない機能なのでしょうか?
0376名前は開発中のものです。
2006/06/20(火) 00:23:13ID:z0sECMlC0377名前は開発中のものです。
2006/06/24(土) 21:54:42ID:pcuzjDvS2スピーカーなら2スピーカー分のFloatControlが必要になるよね?
0378名前は開発中のものです。
2006/06/24(土) 22:08:59ID:pcuzjDvS0379名前は開発中のものです。
2006/06/25(日) 14:38:34ID:fAOFmqJMループの開始時のgetTickPosition()が-2000とかなって余計な雑音が入る。
setLoopStartPoint(0)と設定しても効果なし。
現在はisRunning()でsleepはさむ方法でループさせているが気持ち悪い。
何かよい解決方法があれば教えてください。
0380名前は開発中のものです。
2006/06/25(日) 16:59:01ID:B6He1TJyそうではなくMIDIファイルから単に流すだけならループ関係はどうしようもないよ
音源ドライバとか昔の8bit16bit時代ならいくらでも情報は手に入るから
そのへんさがすしかないかな
0381名前は開発中のものです。
2006/06/25(日) 20:25:58ID:US/w5wC7ogg対応かつ簡単なエフェクトが掛けられるAudioClipが登場してほすぃ
標準で。
0382名前は開発中のものです。
2006/06/25(日) 20:36:42ID:AQjDLDTE0383名前は開発中のものです。
2006/06/25(日) 20:42:16ID:US/w5wC70384名前は開発中のものです。
2006/06/25(日) 21:37:23ID:AQjDLDTEあんなバッファサイズ最大制限が小さくオンメモリ必須なClipは
実装上の問題で音楽にも効果音にも使えないし
あとJava2DよりJavaSoundのほうが敷居は低いと思うよ
5.0以上ならだいぶ使いやすくなったJavaSoundにたいしていまだにアクセラレーションの聞く範囲がせまく
アルファブレンドもほとんど使えないJava2Dよりはね
0385名前は開発中のものです。
2006/06/25(日) 21:43:50ID:US/w5wC70386名前は開発中のものです。
2006/06/25(日) 22:12:46ID:AQjDLDTEゲーム用と出ないのならさほど意識することはないのだろうが、
ソフトウェア転送になると目も当てられない
ム板ならともかくこの板ゲーム製作板だしね
0387名前は開発中のものです。
2006/06/26(月) 20:32:48ID:MgtqB2cgそもそも敷居の意味がわかってないようだな
0388名前は開発中のものです。
2006/06/26(月) 23:48:06ID:6e6dhTU9JavaSoundは非常にシンプル。DirectSoundやってたならすぐにわかるだろうさ。
ようは2Dの知識がない人がJava2Dを扱うのが大変と感じるか
Soundの知識がない人がJavaSoundを扱うのが大変と感じるかの違い。
まったく知識がない場合どちらも難しいだろうが、Java2Dのほうが範囲が広すぎて難しいと思われ。
JavaSoundのほうが難しいと感じるのならあなたは2Dの知識はそれなりにあって
Soundのほうが苦手ということだろう。
0389名前は開発中のものです。
2006/06/27(火) 00:34:52ID:VajeLVWc0390名前は開発中のものです。
2006/06/27(火) 00:54:30ID:RNb1/qTwjava 音楽 の検索結果のうち 日本語のページ 約 2,310,000 件中 1 - 10 件目 (0.03 秒)
java イメージ の検索結果のうち 日本語のページ 約 1,780,000 件中 1 - 10 件目 (0.09 秒)
java サウンド の検索結果のうち 日本語のページ 約 710,000 件中 1 - 10 件目 (0.11 秒)
"java.awt.image" の検索結果のうち 日本語のページ 約 38,500 件中 1 - 10 件目 (0.02 秒)
"javax.sound" の検索結果のうち 日本語のページ 約 11,400 件中 1 - 10 件目 (0.02 秒)
これで十分だろ、以降馬鹿レス禁止。
0391名前は開発中のものです。
2006/06/27(火) 10:22:35ID:GJGczP/sあとJava2Dはピクセル単位での処理だけじゃないから割と面倒だよ
0392名前は開発中のものです。
2006/07/09(日) 17:44:21ID:O0aQTArOJavaSoundに触れていた本は0冊だったw
Javaでゲームなんて作ってんじゃねーよって感じなのだろうか
0393名前は開発中のものです。
2006/07/10(月) 14:41:59ID:7etPnpyvJavaのMIDIデバイスは古いバージョンのままで、多くのファイルが
正常に演奏できない。音が変になる。
OSのMIDIデバイスを取得して、その出力ポートに切り替えるメソッドは
どうやら中身が実装されておらず、事実上切り替えられない。
Waveは正常に演奏できるけど、そのショートカットであるAudioClipは、
短い曲だと何故かloopでしか演奏できない。さらに幾つインスタンスを作っても、
同じファイルデータだと勝手に一つのWaveハンドルに一本化してしまう様で、
同じWaveを複数同時に演奏できない。
陳腐な批評になるが、SUNのAPIは設計は最高なんだけど実装が・・・・
0394名前は開発中のものです。
2006/07/10(月) 21:24:37ID:ykWXL1Xcゲーム本じゃないけど
これの最後の章あたり、ちょこっとSound APIに触れてた
ま、これだけのために買うのはもったいないが・・・
ttp://www.oreilly.co.jp/books/4873112788/toc.html
あと俺の知ってるのは
JavaWorld 2001年10月号、2004年5月号
Cmagagine 2002年8月号と9月号
にちょろっと載ってた
javax.sound.sampledパッケージ使って
複数の音声を同時に再生とかやってた
0395名前は開発中のものです。
2006/07/12(水) 00:08:04ID:ndOxEXf9Java 5.0あたりでは多くのMIDI問題は修正されているんじゃないの?
0396名前は開発中のものです。
2006/07/12(水) 00:31:43ID:6aHYcbBnAudioClipはまともな実装にしてほしいのは同意
結局自分でソースライン書くしかないからね
せめてバッファ長とか指定できねーのかな
それでもDirectSoundくらべてかなり楽なのはいいけどね
JavaSoundは本読むより実際にいじってみるほうが早いよ
難しくはないし、5.0以降でかなり楽になってる
ただ、JavaSoundDemoが5.0で動かないとかがあふぉすぎ
0397名前は開発中のものです。
2006/07/21(金) 19:29:07ID:rgZqd6WVサウンドバンクのせいじゃね?
つhttp://www.new-arrow.com/~pc/game/soundbank/soundbank.html
0398名前は開発中のものです。
2006/08/05(土) 23:05:31ID:Uq7IRr/qjogl-demosのJGaersで35fps位しか出ないんだけど…うちのオンボードのビデオが弱すぎ?
Javaのバージョンは、1.6.0-beta2と1.5.0_07
JOGLのバージョンは、JSR-231 beta 05 - June 8
OS: WindowsXP Professional SP2
INIT GL IS: com.sun.opengl.impl.GLImpl
GL_VENDOR: Intel
GL_RENDERER: Intel 915G
GL_VERSION: 1.4.0 - Build 4.14.10.4363
0399名前は開発中のものです。
2006/08/06(日) 01:44:54ID:kmAOB+5B昔見たような気がしたけど
0400名前は開発中のものです。
2006/08/06(日) 02:36:29ID:A5aINFFLjwsのdemoにあるGaresはGLCanvas(AWT)使用の物です。
JRefractを起動してGaersを呼び出すか、
jogl-demos.jarを落としてJGaersを実行するかすれば、
fps表示有りのGaers(GLJPanel swing使用)が起動します。
0401名前は開発中のものです。
2006/08/06(日) 16:06:10ID:kmAOB+5BJOGLなんて久しく触れてなかったから忘れてたよ
結果からいうとTransparentのチェックいれるとCPUパワー使い切って描画サイズ大きくすると
35fps前後まで下がるけど、これはずすとサイズに関係なく40fpsでCPU使用率は低い
自動リフレッシュはMAXが40fpsなのかな
ウインドウを動かすとfpsが上がって滑らかになるところを考えるとたぶん余力はある・・・のか
描画をすべておぺnGLでやってる場合はアクセラレーションがきいていると考えてよさそうだ
ソース読んでないけど
0402名前は開発中のものです。
2006/08/06(日) 17:49:22ID:A5aINFFLうちの環境(>>398)だと初期の描画サイズで35fps…
Transparentのチェックに関係なく、大きくしたらそれだけfpsが下がる。
やっぱオンボードビデオが貧弱かw
GLCanvasの方使っときます。
0403名前は開発中のものです。
2006/08/06(日) 19:47:19ID:kmAOB+5B確か今は新機能としてあったはず
あとCPU使用率もみたほうがいい
OpenGLもJ2SE5.0のOpenGLアクセラレーションのようにまともに実装されてないのかもね
あっちは描画もおかしくなるから最悪だけど、nVidiaとATI以外はOpenGLが動く環境であっても
はねられるというすばらしい実装
結局Win32環境でDirectXアクセラレーション使うしかまともな回答がない
オンボードでも845GあたりからOpenGLはまともに動くようになってきたのにねぇ
0404名前は開発中のものです。
2006/08/06(日) 20:21:45ID:A5aINFFLCPU使用率はPentium4 3GHz(HTオン)で論理CPU一つがほぼ100%に…
GLCanvas使うと殆どCPU使わない
0405名前は開発中のものです。
2006/08/07(月) 11:33:48ID:LXzNSWyzやっぱりグラフィック描画はJava2D使ったほうがいいのかな?
今のところpaintCompornent使って描いてて
そこまで不満はないんだが
0406名前は開発中のものです。
2006/08/08(火) 00:49:52ID:NGJuOaT60407名前は開発中のものです。
2006/08/08(火) 19:44:58ID:OxD/WpxuGraphics2Dを使わないで描画してるって意味
0408名前は開発中のものです。
2006/08/09(水) 01:40:46ID:jTOF7SJjBufferStrategyではなくて?
0409名前は開発中のものです。
2006/10/05(木) 02:14:46ID:6n2qO2alfor文を使うときに何か制限はありませんか?
キャンバスクラスでfor を使うとエラーが出てきてしまって困っています。
0410名前は開発中のものです。
2006/10/05(木) 02:23:59ID:nS6lvpApまずエラーは何なのか、どこでおきてるのか
あとCanvasはいまはほとんどつかわん
0411名前は開発中のものです。
2006/10/05(木) 02:26:18ID:UlwDPe/+0412名前は開発中のものです。
2006/10/05(木) 14:34:39ID:6n2qO2al15パズルを作ろうとしているんですが・・・
型の開始が不正と言われるんです・・・。
0413名前は開発中のものです。
2006/10/05(木) 17:15:27ID:JxBA5zKzCanvasクラスじゃなくてもエラーになって当たり前
メソッドの中に書け
0414名前は開発中のものです。
2006/10/05(木) 23:15:13ID:6n2qO2alint型ではだめなのでしょうか?
0415名前は開発中のものです。
2006/10/05(木) 23:37:11ID:3erpkvWT0416名前は開発中のものです。
2006/10/05(木) 23:38:34ID:UlwDPe/+クラスの内側を見た瞬間全てを理解した。
まずJavaの入門サイトを回ろう。質問はその後。OK?
0417名前は開発中のものです。
2006/10/05(木) 23:50:20ID:6n2qO2al0418名前は開発中のものです。
2006/10/06(金) 00:37:07ID:n8QeDfZXなにかオススメの参考書を教えてください。よろしくお願いします
0419名前は開発中のものです。
2006/10/06(金) 03:47:35ID:RxJHFhg50420名前は開発中のものです。
2006/10/06(金) 08:35:03ID:79ZjkJYk0421名前は開発中のものです。
2006/10/06(金) 17:15:07ID:NF0Fi7f7これから一から作りたいのでそれに見合う参考書を教えていただけませんか?
できればゴルフかビリヤードのサンプルが載っている参考書がいいのですが・・・
よろしくお願いします
0422名前は開発中のものです。
2006/10/06(金) 17:22:32ID:VIIycFpgシステムがわかってるならそのまま作るだけだと思うが
0423421
2006/10/06(金) 22:59:44ID:Mdom56kEゲームを作るのは初めてなのでこんな感じにしたいっていうのはあるのですが
技術がないので、自分のイメージに感じが似てるゴルフかビリヤードのサンプル見ながら、
少しづつ作ろうかなと思って質問しました。
0424名前は開発中のものです。
2006/10/06(金) 23:08:13ID:DivPy0FShttp://javagame.main.jp/
このへんで一通り勉強すれば
ゲームなんて基本はどれも大体一緒だよ
はじめから目当てのものを作ろうと思わない方がいい
0425名前は開発中のものです。
2006/10/07(土) 01:11:11ID:BYxdR2eOまずはループ処理や入力まわり、描画、サウンドなどを一通り勉強しよう
Javaに限った話じゃないがね、これらの機能を使った最低限の動く単純なゲームを作るといい
0426名前は開発中のものです。
2006/10/07(土) 01:17:47ID:BYxdR2eOゲーム開発初心者なのに最初からでかいゲーム作ろうとするやつ多いよな
規模が大きくなってもメモリ節約しなくてもインタプリタで余裕でさばけるマシンが手に入るようになったのはいいが
サンプルプログラムとかも下手に大きくなりがちで役に立たないという感じ
昔は雑誌でコードがのるくらいだからあまり大きいのはのりにくいし、把握がしやすかった
1画面プログラムとかはテク満載で逆に覚えるのには向かなかったがね
ベーマガとかM・ファンとかOh!シリーズとかほんの10年前は毎月雑誌で
数十本のゲームのコードが入手できたってのはよい時代だったのかな
いまじゃハードとか違法関係ばかりで真っ当なソフト雑誌が残ってねぇ
危険すぎ
0427名前は開発中のものです。
2006/10/07(土) 01:50:40ID:xRS6QFs/白黒だし検索できないしコピペできないリンクもない
0428名前は開発中のものです。
2006/10/07(土) 01:54:11ID:BYxdR2eOネットでまとまった資料やたくさんのコードはでてこねーし
ようはゲーム開発の基礎ってすでに20年位前からある基礎なわけで
いまさらネットでまとめようと思う人はまずいない
0429名前は開発中のものです。
2006/10/08(日) 00:52:26ID:S1BiNozn0430名前は開発中のものです。
2006/10/08(日) 01:36:32ID:+r9TQj6u0431名前は開発中のものです。
2006/10/08(日) 03:06:24ID:CumxyfUXリアルタイムなものでもつかえそう?
MMORPGみたいのものはどうなんかな?
0432名前は開発中のものです。
2006/10/08(日) 12:24:12ID:+r9TQj6uUDP使いまくらないといけない用途には使えないね
人数や設計しだいではMMORPGでも使えるかと
RMIは引数をシリアライズしてリモートのメソッドを起動、戻り値をシリアライズすることができる
もちろんコードはクライアントのコードとまったく同じでいける点が違う
その特定のメソッドが実行される場所がサーバーってだけ
オンラインゲームってローカルで計算される部分は少なく、入力を鯖に送って
結果を表示するだけのシステムだから設計だけしっかりしていればそんなに難しくはないかと
0433名前は開発中のものです。
2006/10/08(日) 17:25:06ID:S1BiNoznただホストをプレイヤーのどちらかが行うとなると性善説ゲームになるけどね。
0434名前は開発中のものです。
2006/10/08(日) 23:44:58ID:vqXTr2PxAjaxなブラウザゲームを作成している人はおらんかね。。。
0435名前は開発中のものです。
2006/10/09(月) 02:01:24ID:1PRT+gpJ必要となるオンラインゲームに使う様なものじゃない。
重すぎる。
0436名前は開発中のものです。
2006/10/09(月) 03:22:04ID:+490gA4h0437名前は開発中のものです。
2006/10/09(月) 18:17:01ID:wlsw1WDR0438名前は開発中のものです。
2006/10/10(火) 11:31:47ID:aHfYBwCV0439名前は開発中のものです。
2006/10/10(火) 13:08:42ID:COB1kkz5RMIは自前でプロトコル作るよりは重いけどWEBサービスに比べたらめちゃくちゃ早い
開発の容易さはRMIのほうが上
0440名前は開発中のものです。
2006/10/10(火) 19:14:44ID:Z6Vg5wVI0441名前は開発中のものです。
2006/10/10(火) 19:44:19ID:Z6Vg5wVIランダム性のあるゲームを公正に運用することって可能?
0442名前は開発中のものです。
2006/10/10(火) 20:52:02ID:Fmr3/ROI0443名前は開発中のものです。
2006/10/10(火) 21:10:32ID:Z6Vg5wVI1.互いに乱数のハッシュを送りあう
2.乱数の実体とあるならば追加のコマンドを送りあう
3.実体とハッシュを照合する
4.互いの実体を合算したものを元に処理を進める
多少重そうだけどこれなら実際に通信があるのは1と2の送受信でよい。
でもまあランキング戦とかには使えないよなぁ。
0444初歩的なことでスマン
2006/10/12(木) 20:16:43ID:iUCUCn7d3d絡みのDemoプログラムが無いっぽい。
ググってみたけど付いてきてるはずなんだけどなー
j2sdk下にはwireframeのサンプルプログラムしかないし
それとも他に入れるべきソフトがあるのかしら
少なくともjava3d-1_4_0_01-windows-i586.exeには入ってないですか?
0445名前は開発中のものです。
2006/10/12(木) 23:35:22ID:LKwsUKW6java3dは抽象度たかすぎ。
0446名前は開発中のものです。
2006/10/13(金) 02:39:03ID:zPaEQQ160447名前は開発中のものです。
2006/10/13(金) 03:55:03ID:S+VaDlj1あとでなくぞ
JOGLにしとけ
0448444
2006/10/13(金) 16:45:36ID:vmtvD3zzそうします。ありがd
0449440
2006/10/13(金) 20:32:45ID:/GHVYosk0450名前は開発中のものです。
2006/10/13(金) 20:33:34ID:/GHVYosk0451名前は開発中のものです。
2006/10/13(金) 22:17:57ID:GU1W4jxT0452名前は開発中のものです。
2006/10/14(土) 00:08:50ID:NtWi6K2Uttp://61.215.215.33/news.php?url=/weekly/kaito/097/kaito_097.shtml
0453名前は開発中のものです。
2006/10/14(土) 02:31:13ID:MGTxKfzz0454名前は開発中のものです。
2006/10/14(土) 02:52:06ID:ZM4ZxtnsJOGL, JOAL, JInput と一通り用意されていたりする。
が、JInputの使い勝手と品質は、アレゲです(約1年前試用)。
0455名前は開発中のものです。
2006/10/14(土) 03:02:31ID:MGTxKfzz基本的なヒューマンインターフェースデバイスは標準にしないと意味ないのに
0456名前は開発中のものです。
2006/10/14(土) 06:59:51ID:nYtGilm6入力デバイスがアレなのは、Win以外がアレだからでしょ
0457名前は開発中のものです。
2006/10/14(土) 07:22:45ID:1AUmoz7r1.4.2と比べて何が変わったのやらという感じ。
0458名前は開発中のものです。
2006/10/14(土) 07:48:07ID:nYtGilm6RuneScapeとかいうのは4.5億も売り上げがあるのか
そういやTibiaってのもグラはしょぼいが潤ってたらしいしな
0459名前は開発中のものです。
2006/10/14(土) 10:21:48ID:MGTxKfzzVMが一部環境用にアクセラレーションとして使ってるだけで標準実装とはちがうはずだが
0460名前は開発中のものです。
2006/10/14(土) 11:53:22ID:r+tdu3ZMJInputを使おうとするとArrayIndexOutOfBoundsExceptionが出るのは自分だけだろうか…
0461名前は開発中のものです。
2006/10/14(土) 15:16:14ID:MGTxKfzz0462名前は開発中のものです。
2006/10/17(火) 23:44:15ID:46k9HZL6BufferStrategyと日本語入力を組み合わせるならこれしかないと思うんだが。。。
Swingベースに切り替えようかな、Java6からJOGLがPanel化されるんでしょ。
0463名前は開発中のものです。
2006/10/18(水) 13:58:55ID:YpbpZhIPPanelのは速度が遅いはずだが改善されたんか
0464名前は開発中のものです。
2006/10/19(木) 00:32:10ID:nGTITlbS自前描画している日本語入力対応エディタのソースを見てみると良いかもしれない。
0465名前は開発中のものです。
2006/10/27(金) 07:07:03ID:Yr57x8PW結局STGとかだとLinkedListで十分なんだと分かっただけだった。
0466名前は開発中のものです。
2006/10/27(金) 07:15:14ID:xDAg32vR0467名前は開発中のものです。
2006/10/27(金) 07:28:53ID:Yr57x8PWでも並行APIはiteratorによるremoveにたいして適正の在るのがなくて辞め。
0468名前は開発中のものです。
2006/10/27(金) 08:40:24ID:xDAg32vRttp://www.cyberstep.com/recruit/story_1.html
0469名前は開発中のものです。
2006/10/27(金) 08:51:15ID:phd+j6pmマルチプラットホーム化が容易とうたってる割にGetAmpedRもC21もWindowsのみ対応なんだな‥‥
0470名前は開発中のものです。
2006/10/27(金) 12:18:12ID:v3In4esC超連射みたいにソフトレンダなら明らかに効果があるがそれはシステム構築を楽しむためくらいしか・・・
0471名前は開発中のものです。
2006/10/27(金) 23:11:57ID:Yr57x8PW0472名前は開発中のものです。
2006/10/30(月) 15:12:29ID:VjSo8VCQ0473名前は開発中のものです。
2006/10/30(月) 15:57:55ID:Sn/Y/O/E0474名前は開発中のものです。
2006/10/30(月) 18:47:16ID:Gg9zo7Zmびっくりするくらいオブジェクト指向もくそもねぇ
それだけに触ったことある人ならそのまま使える
0475名前は開発中のものです。
2006/10/30(月) 21:46:59ID:AwvN98hHフルGCの発生回数を特定シーンごとに0に押さえるみたいな方法って不可能?
0476名前は開発中のものです。
2006/10/30(月) 23:24:45ID:Gg9zo7Zmゲーム用途なら基本はGraphicsだけで収まる範囲にすること
アクセラレーションがきくタイプは負荷はたいしたことない
あとフルGCやりたくないなら使用メモリを把握した上でコンカレントGCに変更することや
シーンがはっきりと分けれていたりするなら切り替え時にFullGC入れてみるとか
0477名前は開発中のものです。
2006/11/08(水) 22:10:52ID:nrOch+QrこれJavaでできてんの!?すごい
0478名前は開発中のものです。
2006/11/08(水) 22:17:38ID:/VhjzjqXあちらの人は固定フレームレートにこだわらないからねぇ
まずはパッドを標準ライブラリで使えるようにしないとね
表示もだ大事だけど入力がないとどうしようもない
0479名前は開発中のものです。
2006/11/09(木) 01:22:54ID:C3JWOVJ7chrome作ったところが2005年ごろ作ったみたい。
ページ開いたらBGMが流れるので注意。
http://www.specforcethegame.com/en/main.php
かなり品質の高いFPSゲームだと思う。
0480名前は開発中のものです。
2006/11/09(木) 02:09:01ID:yu7HeJLHttp://www.hikakuserver.com/
普通のレン鯖でメモリ8GBも載ってるのがあるなんて
さっきまで知らなかった・・・(´・ω・`)
人柱キボン
0481名前は開発中のものです。
2006/11/11(土) 11:19:53ID:C9CXGr4Fttp://www.imilabs.com
ttp://www.agency9.com
ttp://www.mycgiserver.com/~movegaga/cosmictrip.html
ttp://www.chromethegame.com
ttp://www.hockeychallenge.se
ttp://home.halden.net/tombr/squareheads/squareheads.html
GroundFX
ttp://www.javagaming.org/forums/index.php?PHPSESSID=a66e7a361ddd1ea4a78a07a6d446a573&topic=4832.msg44039
ttp://www.oddlabs.com
ttp://www.ch-ee-ky.com/gr/index.html
ttp://www.jpct.net/paradroidz
ttp://www.jmonkeyengine.com
ttp://www.datadino.com/games/mightybubbles/
ホッケーのゲーム
ttp://www.wurmonline.com
ttp://www.gutenachtkopf.de
ttp://www.crystalsquid.com
ttp://www.runescape.com
ttp://www.puzzlepirates.com
0482名前は開発中のものです。
2006/11/11(土) 11:45:18ID:C9CXGr4Fこのうち、開発に役立ちそうなのは多分
http://www.imilabs.com
http://www.agency9.com
http://www.javagaming.org/forums/index.php
http://www.jmonkeyengine.com
http://www.gutenachtkopf.de
しかし、面白そうなゲームが山のようにあるな
0483名前は開発中のものです。
2006/11/11(土) 13:07:20ID:HZB9qJCGAudioSystemやMidiSystemを上手くラップしたいんだけど、AudioClipじゃ物足りない印象
0484名前は開発中のものです。
2006/11/11(土) 13:35:38ID:bJZMO9onJavaSoundカワイソス
0485名前は開発中のものです。
2006/11/11(土) 13:41:41ID:HZB9qJCG0486名前は開発中のものです。
2006/11/11(土) 18:45:04ID:oHATF8vtJavaSoundがでてくるなら問題はないのに
0487名前は開発中のものです。
2006/11/12(日) 03:04:56ID:FcOUrdTFあちらさんはアセンブラかましたりとか平気でやるからな。
日本人でJavaでFPSを作ってる人っていないの?
0488名前は開発中のものです。
2006/11/12(日) 06:49:35ID:1OH5pVw5Javaでどうやってアセンブリ言語を使うのだ
0489名前は開発中のものです。
2006/11/12(日) 07:28:17ID:0f+TtNLb0490名前は開発中のものです。
2006/11/12(日) 08:23:03ID:+OD3pyxMない人だろう。
各種Docで知識は豊富だけど、ただ読んで覚えてるだけ。
ゲームの開発経験はないだろう。
Java実行コードのスピードは、部分部分で比較するとC++と大差なく
見えるけど、全体のアプリとして組み立てると、その漏れてた部分の遅さが
積み重なれて顕著となり、システム系ならば許容できるけど
シビアなタイムが必要となるゲームじゃとても使えなくなる
上の洋ゲーも間違いなくそのコアにJNIをふんだんに使ってるよ。
そうなると、それはJavaであってもJavaの範囲外ってことだ
0491名前は開発中のものです。
2006/11/12(日) 08:26:03ID:+OD3pyxMってのは、その知識をもとに小規模なテストアプリを作成して
その結果で判断する事も含まれてる
0492名前は開発中のものです。
2006/11/12(日) 10:16:17ID:5sSMIo0rhttp://61.215.215.33/news.php?url=/weekly/kaito/097/kaito_097.shtml
こんな記事あったよ。日本のゲーム業界でJava使ってるとこってあるの?教えて業界人。
0493名前は開発中のものです。
2006/11/12(日) 10:38:02ID:wvoDMNwqjavaのPrduct系ゲーム開発経験者ですか?
それとも勘でいっている?
当方、確かに経験ないので今いちわからないんだけど
コード量が増えるとメモリリークが増えるから
PureJavaじゃ使いもににならないといいたいの?
0494名前は開発中のものです。
2006/11/12(日) 16:48:08ID:sIeJXGuaおまえは何を言ってるんだ?
0495名前は開発中のものです。
2006/11/12(日) 21:12:28ID:RoytZnjF> ここにいる人だけど、その多くは、Javaで本格的にゲームを作った事が
> ない人だろう。
で、おまいはJavaで本格的にゲームを作成したことがあるのか?
>その漏れてた部分の遅さが
>積み重なれて顕著となり、システム系ならば許容できるけど
>シビアなタイムが必要となるゲームじゃとても使えなくなる
VMのGC処理が良く問題になるだけであって、コード本体の実行スピードには問題ない
> 上の洋ゲーも間違いなくそのコアにJNIをふんだんに使ってるよ。
間違いなくとか勝手に推測で断定されても、完全な間違いなんだが。
RuneScapeはPureJavaで作成されている。
その他のゲームで利用されているJNIも、
OpenGLやDirectInputを直接呼び出すだけの利用。
デタラメも大概にしてくれ。
0496名前は開発中の者です。
2006/11/12(日) 21:43:38ID:BPHT/7vmそういうのがないと、素人には3Dゲームなんて、とても作れない。
0497名前は開発中のものです。
2006/11/13(月) 00:19:13ID:i1RxyPEdJavaSound理解してないやつ乙
0498名前は開発中のものです。
2006/11/13(月) 01:47:03ID:xomXll6Q0499名前は開発中のものです。
2006/11/13(月) 19:04:22ID:jHwlfoAHそれをほしいといわれても困る
0500名前は開発中のものです。
2006/11/13(月) 23:23:32ID:YBTvT9dR1.メタセコ
2.ブレンダ
3.Xファイル
Xのローダ書いとけば一番無難?
自分、右手系でPG書いてるから変換が面倒くさそうだけど。
みんなはどんな感じ?
0501名前は開発中のものです。
2006/11/14(火) 06:53:06ID:t9hh4M26それより良いインタフェースはないかと聞いてるだけでは?
0502名前は開発中のものです。
2006/11/14(火) 06:56:22ID:t9hh4M260503名前は開発中のものです。
2006/11/14(火) 09:51:06ID:v38jtkOO本人ですか
0504名前は開発中のものです。
2006/11/14(火) 17:34:18ID:wMYc2bpW描画ってどうしてる?
0505名前は開発中のものです。
2006/11/14(火) 19:15:20ID:KGaPDyoTフルスクリーン時は垂直同期取るのに対してウインドウモードは取らないという点に注意してね
0506名前は開発中のものです。
2006/11/14(火) 23:35:47ID:N+Lhd8Zl画像を半透明にしたりパレットデータを換えるときどうしてますか?
できればリアルタイムで処理させたいのですが
いい方法が見つかりません。RGBImageFilterではImageを得るまでが面倒で動作も不安定でした。
PNG形式のbyte列を直で変更して毎フレームImageに変換も遅そう
助けてください
0507名前は開発中のものです。
2006/11/14(火) 23:48:08ID:t9hh4M26普通にわかるが?
0508名前は開発中のものです。
2006/11/15(水) 00:19:12ID:kbx8RzUWなぜAudioClipと比較したインターフェースにこだわる?Lineとかいってほしいということか?
>AudioSystemやMidiSystemを上手くラップしたいんだけど、AudioClipじゃ物足りない印象
JavaSound理解しているならまったく問題ないし、そこでなぜAudioClipが出てくるか不明。
同じインターフェースにこだわりたいのならともかく音量調整も出来ないようでは使い道なし。
〜System系は5.0から大幅に使いやすくなったので迷うようなことはないと思うのだが。
普通に自分で好きなインターフェースで作りなさいとしかいえない。
0509名前は開発中のものです。
2006/11/15(水) 00:21:40ID:kbx8RzUWJava2Dは使ってみた?通常合成なら大丈夫。
ハードウェアアクセラレーションはきかないからXGAで常時60fps維持したいとかだと厳しいけど。
0510名前は開発中のものです。
2006/11/15(水) 00:21:42ID:VX1VJ6O90511名前は開発中のものです。
2006/11/15(水) 00:39:05ID:kbx8RzUW0512名前は開発中のものです。
2006/11/15(水) 00:45:16ID:VX1VJ6O9無いなら無いってだけなのに何引っ張ってんだか
0513名前は開発中のものです。
2006/11/15(水) 01:38:20ID:VX1VJ6O9まあ非Winを切り捨てても何の問題もないが。
0514名前は開発中のものです。
2006/11/15(水) 07:10:33ID:EhAiNbITそれってGraphics2Dのことですか?
時間ができたら調べてみます。
0515名前は開発中のものです。
2006/11/15(水) 13:57:28ID:zHfv0gGDだからこそあの質問が意味不明なのだ。
1行目と2行目と一致しない。
>>513
JavaSE5.0も現実的にアクセラレーションきかない。
openGLモードだと描画がバグバグだし、
Direct3Dモードだと描画方法によってレンダリング品質が変わるため使えない。
>>514
それだけじゃないけどね。
http://java.sun.com/j2se/1.5.0/ja/docs/ja/guide/2d/index.html
0516514
2006/11/15(水) 23:56:59ID:EhAiNbITバッファストラテジというのを導入してみたんですが、といってもほとんどコピペで理解してないんですが
Graphics2D.drawImage(Image,AffineTransform,Observer)でキャラを拡大したらGraphicsのdrawImageで描いた
ブロックの画像に縦縞ができてしまったんですが、どうすればいいでしょうか?必要ならできるだけ答えます
みなさんはバッファストラテジをどう使ってるのか教えていただけると助かります。
0517名前は開発中のものです。
2006/11/16(木) 00:11:55ID:RzG/81ybとはいえ、アクセラレーションが利く描画じゃないようなのでその影響があるとは考えにくい。
コードと環境と加工前の画像と加工後の画像をアップしてもらえばわかるかも。
Graphics::drawImageでの拡大だとどんなかんじ?
0518名前は開発中のものです。
2006/11/16(木) 00:37:17ID:A0r/2s0Y>だからこそあの質問が意味不明なのだ。
>1行目と2行目と一致しない。
お前日本語学校からやり直した方がいいぞw
0520名前は開発中のものです。
2006/11/16(木) 10:21:23ID:HdufXzqBネットで対戦だから一人じゃバランスもとれず適当、せっかく作ったから遊んでください。
ttp://cattaka.myhome.cx/applet/bakutan.html
0521名前は開発中のものです。
2006/11/16(木) 12:59:05ID:GPsbxADWそもそもWindowsなのか、フルスクリーンモードなのかウインドウモードなのか
ビデオチップやドライバ等
ところでGraphics::drawImageによる拡大は問題なさそうなの?それが先決か。
0522名前は開発中のものです。
2006/11/16(木) 13:01:06ID:GPsbxADW具体的な対応取らない荒しはかえれ
最近ずっとJava関係荒らしてるのお前だろ
0523名前は開発中のものです。
2006/11/16(木) 23:02:33ID:A0r/2s0Yデザインパターンを知らないのか
日本語を知らないのかどれだい?
0524514
2006/11/17(金) 18:00:42ID:7Zpg5IH1OS:Win98
ウィンドウモード
Graphics::drawImageでは縞はでませんでした。
バッファストラテジはそんなに効果があるんですか?
今一速くない気がします…
0525名前は開発中のものです。
2006/11/17(金) 18:50:02ID:gSEH6ifA速度に関してはソフトウェア描画になる部分とアクセラレーションがきく描画と分かれる。
拡大縮小やαブレンドはソフトウェア描画になる。
Graphics::drawImageによる拡大描画は大丈夫なのか・・・。
画像のロードの仕方とかにも結構左右されるっぽいけど、そのへんどうなってるかな。
あと256色モードとか16bitカラーモードが原因になる可能性もある。
転送元imageはBufferedImage使ってると思うけど、そのカラーモードはフレームとあわせてある?
抜き色があるかとか細かいこともある。
フレームレート命のアクションゲームならできるだけアクセラレーションがきく描画を選択したほうがいいよ。
あとは画面サイズが大きすぎないこと。
まとめると
・画像のロードの仕方
・デスクトップの色数
・実際に問題の出るコードと画像
0526514
2006/11/17(金) 19:08:46ID:Lt0Wj0UY画面は24bitでした。転送元imageというのがいまいち分かりません…
今まで携帯でしか作って無かったので、、、
あとこういうゲームに特化してJAVAの解説してるとことか無いですかね?
人に見せられるもんじゃないですけどソースアップしました。
ttp://park21.wakwak.com/~kuri/src.zip
0527名前は開発中のものです。
2006/11/17(金) 21:47:35ID:6OJGRcli通常paintイベントに対して処理は行わない。
repaint呼び出すところを自前のメソッドを呼び出すようにかえて、
paintメソッド名をそれにあわせて書き換えよう。
キー入力をビットに割り当てているのを見ると、他の言語でゲーム自体は作ったことあったのかなとおもた。
Skeruというクラスがわからないのでなんともいえないな。
画像のロードはImageIOを使うと柔軟にロードできるよ。わざわざバイト配列をロードするとか必要ない。
その際に画像バッファは現在のビデオの解像度と合わせると高速に転送が出来るけど、それはまた後の機会に。
これってフレームのサイズ固定で描画しているようだけれども、タイトルバーの高さとかふちの大きさは
同じWindowsでもバージョンや環境によって大きく異なるからしないほうがいい。
pack()やsetVisible()したあとにインセットを取得して本来ほしいサイズにそれを足して処理する。
0528514
2006/11/17(金) 23:51:15ID:83DvLp/Bお返事ありがとうございます。
>repaint呼び出すところを自前のメソッドを呼び出すようにかえて、
>paintメソッド名をそれにあわせて書き換えよう。
playに変えました。
>キー入力をビットに割り当てているのを見ると、他の言語でゲーム自体は作ったことあったのかなとおもた。
まあ、ボチボチですが
>Skeruというクラスがわからないのでなんともいえないな。
これはいらないクラスです。うっかりしてました。
画像とか変更したソースとかさっきのURLにアップしておきます。
>画像のロードはImageIOを使うと柔軟にロードできるよ。わざわざバイト配列をロードするとか必要ない。
>その際に画像バッファは現在のビデオの解像度と合わせると高速に転送が出来るけど、それはまた後の機会に。
やってみましたけど、こんなんでいいんですかね。
>これってフレームのサイズ固定で描画しているようだけれども、タイトルバーの高さとかふちの大きさは
>同じWindowsでもバージョンや環境によって大きく異なるからしないほうがいい。
>pack()やsetVisible()したあとにインセットを取得して本来ほしいサイズにそれを足して処理する。
やってみました。
0529名前は開発中のものです。
2006/11/18(土) 00:24:13ID:3XstkAv5>やってみました。
これ、取得した後にそのサイズを足してsetSizeするってことね。
320*240とかを描画サイズにしたい場合それプラス余白部分。
もちろん、描画する際の起点もその分ずらす。
あとは時間管理だろうか。
sleepは固定でのウエイトが入る。つまりメインループの処理時間の差があった場合に考慮されていない。
普段は10msで動いていたとしたら1ループは30msだろうけど、これが5msだったり15msだったりすると・・・。
したがってがくがくするのを防ぐためには一定の速度でまわす必要がある。
30msでループさせるなら処理に5msかかったら25ms停止、処理に15msかかったら15ms停止というようにね。
だいたいでいいのなら一番簡単なのはjava.util.Timerを使う。TimerTaskとあわせてね。
メインループのほうをwait()で停止させて、TimerTaskからnotify()で起こすといい。
あとこのスレと前スレを一度全部見ておいたほうがいい。
0530514
2006/11/18(土) 16:22:37ID:09nqBb7gサクっとでいいんで説明してもらえたら助かります。
あとJAVA2Dなら画像のパレット替えやフィルタリングもできるんですよね?
0531名前は開発中のものです。
2006/11/18(土) 16:36:52ID:qC5zAejNhttp://www.javainthebox.net/laboratory/utils/Timer/Timer.html
ほかにも櫻庭さんのサイトはJava関係の重要なのが多いから関係のありそうなところ見といたほうがいい。
描画に関してはアクションゲームで60fpsを目指すのなら複雑なことはしないほうがいいよ。
あらかじめ使用するパレットがわかっているなら画像ロード後にそれらのImageを生成したほうがいい。
あくまでもいわゆる画像をスタンプのように貼り付ける場合はやいから。
RPGとかで30fpsくらいでいいのならいろいろと出来ると思うよ。
Java2Dを詳しく書いた書籍ってあったかな・・・。まずはJava2Dのマニュアルをよんでみよう。
少なくともJDKのJava2Dサンプルくらいはすぐできるから。
0532514
2006/11/18(土) 17:44:49ID:Zk4f2vJNありがとうございます。
Timerは分かってきたんですが、上にある
>メインループのほうをwait()で停止させて、TimerTaskからnotify()で起こすといい。
の書き方が分かりません…。
あと、キャラクター・エフェクト・特殊ブロックなどの処理部分を一つのクラスにまとめて中で
switch文分岐して処理させようかなーと思ってるんですが、こういうやり方だと遅くなったりするんでしょうか?
座標や状態変数なんかはメインループのある方のクラスに持たせれば、敵にくっついてく敵とかが作れそうですよね。
一応JAVAなのでポリモーフィズムも考えたんですが、数が数なだけに多すぎるので辞めたんですが
画像も予め用意したらその分メモリ食われて遅くなるってこともありますよね?
いかんせんJAVAでのメモリの使われ方が良く分かって無いのでどこかで損してる気がします…
0533名前は開発中のものです。
2006/11/18(土) 19:54:34ID:ZKUyfd27APIドキュメントよんでごらん。ざっくりというとwaitはスレッドを停止させてnotifyで起こすという感じ。
マルチスレッド使ってるのでこの辺基本を抑えないと大変なことになる。
参考
ttp://www.nextindex.net/java/thread/waitnotify.html
switchだろうが複雑な分岐だろうがCPUだけが処理するようなものは速度的に問題にはならない。
ネックになるとすれば16bitCPU時代くらいでJavaSEとは関係ない。
最初はざっくり作ってリファクタリングをゆっくりやるといいよ。IDE使えば手軽に見通しよくなるし。
オブジェクト指向等も徐々に勉強していきながらでいい。
0534514
2006/11/18(土) 22:14:54ID:Bis6pJQAwait()とnotify()意味は半分ぐらい分かったのですが、いまいち調べても
欲しいサンプルが見つかりません…。色々試してはいるんですがなかなか
動いてくれません。ヘタレで悪いんですがゲームで使う時のwait、notify
のコードをちょろっと書いて貰えないでしょうか?
ただ分岐は多くてもいいというのはホッとしました。丁寧なレスありがとうございます。
助かります(^^;。
0535名前は開発中のものです。
2006/11/18(土) 23:55:20ID:ZKUyfd270536514
2006/11/19(日) 10:56:55ID:1IKPzYYcどうやったらTimerTaskで周期的にnotifyできるのかとかSynchronizedを付けるべきところとか
探し方が悪いのかも知れないんですが
0537名前は開発中のものです。
2006/11/19(日) 13:54:05ID:dZdtxI9wpublic class Hoge extends Thread{
private boolean processStop = false;
private WakeTask wakeTask = new WakeTask();
public void start(){
super.start();
new Timer().scheduleAtFixedRate(wakeTask, 0, WAKE_TIME);
}
public synchronized void run(){
while(true){
game();
try{
wait();
}
catch(InterruptedException e){
e.printStackTrace(System.err);
break;
}
}
}
private synchronized void awake(){
if(!processStop) notify();
}
private class WakeTask extends TimerTask{
public void run(){
awake();
}
}
}
0538名前は開発中のものです。
2006/11/19(日) 20:11:00ID:8MYA5LfBttp://www.y-adagio.com/public/standards/tr_javalang2/jTOC.doc.html
0539520
2006/11/19(日) 23:41:03ID:yvfHZIx2何がしたいんだよ俺・・・・orz
0540名前は開発中のものです。
2006/11/20(月) 00:56:56ID:mU6Ad/cqちなみに自分は今までCで数値シミュレーションを生業としてきてGUI関係はよくわかっていません。
勉強できるサイトがあるとうれしいです。
よろしくお願いいたします。
以上
0541名前は開発中のものです。
2006/11/20(月) 01:19:17ID:8PZEbpO9普通のゲームってソフトとかクライアントとかをダウンロードするじゃない?
JAVAゲームの場合、ブラウザから直接開始するけど、
読み込み時間みたいのがかなりかかるんじゃないのかな?
音楽もいちいちMP3をダウンロードすることになるの?
0542名前は開発中のものです。
2006/11/20(月) 01:42:07ID:HqvpBzdYシミュレーションが、物理シミュレーションかシミュレーションゲームか不明
GUIプログラミングは簡単なので立ち読みか普通のサイト見れば良いのでは
http://www.javadrive.jp/
http://www.hellohiro.com/
0543名前は開発中のものです。
2006/11/20(月) 15:21:51ID:107nEDGgJavaのプログラムってのはアプレットだけじゃないよ。
通常のアプリケーション等もあるし、一度ダウンロードしたらアプレットはキャッシュからとってくることも出来るし
WebStartはバージョン等が変わってなければすべてキャッシュファイルからとってくる。
そもそもC等で作ったアプリだって同じだぞ。ネット経由でダウンロードするように作ってあるなら。
バックグラウンドスレッドでガンガン落としていけばあまり問題はなさそうだが。
0544名前は開発中のものです。
2006/11/26(日) 21:31:48ID:vp/Awfnk無限にステージが生成されるマリオっぽいゲーム「Infinite Mario Bros」
http://gigazine.net/index.php?/news/comments/20061126_infinite_mario/
0545名前は開発中のものです。
2006/11/26(日) 23:34:43ID:o/jL46vwWurm Online の中の人が製作しているみたい?
ソース付きだし勉強になりそうだ。
0546名前は開発中のものです。
2006/11/27(月) 18:13:24ID:QR83lXnt0547名前は開発中のものです。
2006/11/27(月) 18:15:01ID:IAG3BIQ81.1時代の互換性のためだけの遺産だから
0548名前は開発中のものです。
2006/11/27(月) 18:52:38ID:QR83lXntVolatileImageでピクセル操作とかできますか?
0549名前は開発中のものです。
2006/11/27(月) 21:03:56ID:OAwnVtrwVRAM直書きはメインメモリ直書きに比べて非常に遅いので出来てもやらないほうがいいのは常識。
メモリ上のImageを扱うなら1.2以降はBufferedImageを使う。最初にピクセルフォーマットをきめて
配列で扱えること、出来上がった画像を何度もコピーする場合アクセラレーションが自動的に適用される。
0550名前は開発中のものです。
2006/11/27(月) 21:56:18ID:L4SNxotkいや、実際にはMemoryImageSourceが一番素直な「フレームバッファ」
で使いやすい。BufferedImageは、メモリ上の配列と直接関連付けられ
ないのが致命的(ピクセル列に見立てたint配列を操作すれば直ちに
対応するImageに反映されるという意味での「Buffered」でなければ、
Rasterなどという扱いにくい邪魔者が出てくるだけでまったく意味が
ない。まだMemoryImageSourceの方がまし)。
0551名前は開発中のものです。
2006/11/27(月) 23:13:58ID:OAwnVtrwBufferedImageでそういう指定するのが一番だと思うし、ピクセルフォーマット合わせる場合
GraphicsConfiguration使うだろ?
問題あるのか?short配列アクセスとか簡単に出来るから便利だと思うんだが。
0552名前は開発中のものです。
2006/11/28(火) 22:11:57ID:WdzF4q7Zそれすごいな
pure javaだけでここまでできるの?
0553名前は開発中のものです。
2006/11/28(火) 22:46:49ID:jI1vxm7H2Dなら余裕
あとは根気等
ただグラフィックなどあからさまなパクリはいかんね
0554名前は開発中のものです。
2006/11/28(火) 22:52:55ID:dIaLfStB署名なしで動くアプレットだから当然、pure javaです。
携帯で普通にドラクエが動いている世の中だからな。
出来るかどうかはプログラマの腕次第だと思うよ。
0555名前は開発中のものです。
2006/11/29(水) 08:24:09ID:SF7yfmPu>問題あるのか?short配列アクセスとか簡単に出来るから便利だと思うんだが。
いや、だからその配列の内容は一度変換・コピーしないとImageとして表示できないんだよ。
自分でRGBを数値として処理する配列を取ると、一度それをMemoryImageSourcre/BufferedImageを介して変換しないと描画可能なImageが得られない。
そして、そうしたRGB配列のImage化には一発でできて余計な機能がないMemoryImageSourceの方が使いやすい。
Win32のDIB/DIBSectionのような機能(直接描画可能なフレームバッファを配列として取得できるImage)があれば楽だし、変換や不要な配列の二重確保が入らない分性能上も有利なはずなんだけどね。
BufferedImage(あるいは各種変換機能を削除して単純化したMemoryImageクラスでも新設して)でピクセル列の配列を直接公開してくれれば良いのだけど。
あと、int配列から作ったMemoryImageSourceで速度的な問題って感じたことないぞ。
Pen3+845GEのマシンで100以上のキャラクタ描いてもまったく問題にならなかった(100FPS以上)。
0556名前は開発中のものです。
2006/11/29(水) 12:28:42ID:E1GsFmbfラスター使うから同じじゃね?
0557名前は開発中のものです。
2006/11/29(水) 13:28:43ID:SF7yfmPuラスターは邪魔だよな……。
BufferedImageのような各種変換機能付きImageを作るなら、まず単純なフレームバッファ用意してその上位版という位置づけにして欲しかった。
BufferedImageも内部には直接画面に転送する32ビット配列(Win版は32ビットDIBSection+独自のアルファ処理?)持っているんだろうし。
0558名前は開発中のものです。
2006/11/29(水) 13:56:50ID:E1GsFmbfMemoryImageSourcreは任意のピクセルフォーマットで扱うとき大変じゃない?
0559名前は開発中のものです。
2006/11/29(水) 16:21:44ID:SF7yfmPuいや、BufferedImageはWinではDIBSectionじゃないの。
一応「バッファ」もっているし、アルファ処理対応だから。
ラスター要求されたときのためにもメモリ上にフレームバッファが必要なはず。
そういえば、もう何年もWin32APIにしろJavaにしろフルカラー32ビットフレームバッファ(DIB/DIBSection/MemoryImageSource)の速度的な不満は感じたことないな。
ピクセル単位の処理はフルカラー32ビットで行うのが一番楽(1ピクセル1DWORD)だし描画時の性能も十分。
0560名前は開発中のものです。
2006/11/29(水) 22:03:00ID:r/0kDPlo0561名前は開発中のものです。
2006/11/29(水) 22:06:29ID:r/0kDPloIntelCore等最新のCPU使っていてもVGAクラスになると処理速度が間に合わない。
2次キャッシュのサイズ等を考慮してぎりぎりといったところか。
QVGAなら32bitカラーはぎりぎりいけるかな。
PentiumM1GHz/Pentium42GHzクラスのマシンを動作対象にしようとすると
QVGA-16bppくらいしか選択肢はない。
0562名前は開発中のものです。
2006/11/30(木) 17:09:31ID:TUwNRJc1そんな馬鹿な。2Dの画像転送速度で比較すると
BitBlt(WinGDI) > TransparentBlt(WinGDI) > AlphaBlend(WinGDI)
>> copyArea(Java2D) >> drawImage(Java2D)
なのですが。確かに小さい画面サイズならそれだけ差はなくなるけど
まともなゲームの画面サイズにすると、その遅さが浮き彫りに
0563名前は開発中のものです。
2006/11/30(木) 17:14:30ID:TUwNRJc1失礼。フレームバッファの単語を読み飛ばしてました
0564名前は開発中のものです。
2006/11/30(木) 18:04:42ID:NwbsHHlf通常の矩形転送以外はアクセラレーションきかねぇんだよな
しかも頻繁にGCがおきやがる
JOGLアクセラレーションに期待
5.0だとDirect3Dモードはひどいし、OpenGLモードはもっとひどいし
0565名前は開発中のものです。
2006/12/01(金) 10:00:02ID:A/U7d6+m0566名前は開発中のものです。
2006/12/01(金) 10:14:43ID:LDltEBVYどんな画像ファイル形式でも使えますよ
0567名前は開発中のものです。
2006/12/01(金) 11:37:19ID:LC+/aYM5未だにアプレットの作り方すらよーわからんです。(^^ゞ
ttp://perfect-logic.net/SampleAction/
0568名前は開発中のものです。
2006/12/01(金) 17:10:48ID:IDdYaP0u某ゲームを彷彿させて萌えましたw
ところでシステムがアーケードっぽいのはなぜなんでしょう?
0569名前は開発中のものです。
2006/12/01(金) 17:16:25ID:LC+/aYM5アーケードっぽいのは私がアーケードゲーム好きだったので、なんとなくそれっぽくしただけなんです。(^^ゞ
0570名前は開発中のものです。
2006/12/01(金) 23:36:55ID:o1acqxN9ちょっ
これで素人とは言わせないぞ
どこのプロだ?
0571名前は開発中のものです。
2006/12/02(土) 00:01:56ID:WxTjtQSmこんばんわ。
ホントにJavaでものを作って公開するのは初めてですよ〜。
一度くらい仕事でJavaってみたいです。(^-^)
ちなみにゲーム歴は結構長いです。インベーダー時代からやってます♪
0572名前は開発中のものです。
2006/12/02(土) 05:50:16ID:8WxMFuvR中堅ソフトメーカーの社員で、30代半ばから40台。
開発現場から管理職に昇進したものの、なんか以前より暇でムズムズしてる人。
最近のゲームは、はっきりいってぬるぽ杉て殺意すら覚えている。
乗り越える壁があってこそ面白いゲームと考えてる。
マーケティングにその事をこぼした際今時流行らないと一蹴され、このゲームを
作り始める直接のきっかけになった。
なんてね。
0573名前は開発中のものです。
2006/12/02(土) 09:32:54ID:wBc7JJHR36〜40の割には顔文字やら音符やらずいぶん軽いな
そんなもんなのかね
0574名前は開発中のものです。
2006/12/02(土) 10:03:44ID:YSW2q7Ho>乗り越える壁があってこそ面白いゲームと考えてる
は当たっているかもしれません。
後は…ちょっと違うかな。(^^;
最近のゲームは普通にやりますし、プログラム技術も見てますよ〜。
(素晴らしいの一言です。とても一人では作れるわけ無いですね)
このゲームを作ったきっかけは、昔ナムコの某塔を登るゲームの
二作目(ただ飛ぶだけのヤツ)にガッカリして、自分ならこう作る
かなぁとずっと思ってて、Javaでなんかグラフィックをいじる
ソフトを作ってみるかと思ったキッカケがあったときに
それを実行移した感じですね。
年々仕事がハードになるので、息抜きに作った感じです。(^^;
0575名前は開発中のものです。
2006/12/02(土) 10:09:23ID:OMk/eHpK0576名前は開発中のものです。
2006/12/02(土) 10:37:29ID:TVj7JnE/URL見てスルーしてたが結構凄いじゃん
0577名前は開発中のものです。
2006/12/02(土) 11:10:40ID:YSW2q7Hoありがとうございます〜。
周りにJavaのグラフィックやゲームフレームワークについて
お話できる人がいない上に、プレーしてもらえるゲーマーが
殆どいない状況だったので、ここに晒してみた感じです。w
0578名前は開発中のものです。
2006/12/02(土) 13:20:11ID:A/80wyG1単純でもDEMOがあるのがすばらしいな
結構DEMO作るの面倒なんだよな
0579名前は開発中のものです。
2006/12/02(土) 16:34:43ID:Q74I213y初期化時の画面のこだわりは恐ろしいものがありますな。
ゲーム自体もかなり作りこんであるので、ちとびっくりしました。
>>574
「飛ぶだけのやつ」はシリーズでいうと3作目ではないかと。
2作目は「塔を降りる」やつではないかと。
スレ違い失礼。
0580名前は開発中のものです。
2006/12/02(土) 16:49:36ID:YSW2q7HoDEMOがあるとなんか昔のアーケードっぽくていいかな?
と思いました。(^^)
あと、最初の方の面は宝の出し方が故意にノーヒントにしてあるので、
デモプレーで分かるようにしてみました。
>>579
感想ありがとうございます♪
二作目はイシターでしたね。三作目が正解です。www
書き込んだ後に思い出して反省していました。(^^ゞ
0581名前は開発中のものです。
2006/12/02(土) 17:06:52ID:w9uTYl/6JAVAなのにブラウザから直接はじめられないの?
0582名前は開発中のものです。
2006/12/02(土) 17:12:22ID:YSW2q7HoJavaの素人なのでアプレットの作り方とか知らないんです。
エントリポイントが違うくらいの違いであれば作ることができそうですが、
ちゃんと作る気力が無くて...orz
0583名前は開発中のものです。
2006/12/02(土) 17:46:49ID:w9uTYl/6普通に作りこんであるだけに起動が面倒なのは惜しい。
0584名前は開発中のものです。
2006/12/02(土) 17:50:35ID:YSW2q7Ho今度勉強してみようかな。
0585名前は開発中のものです。
2006/12/02(土) 20:54:16ID:A5BBW3gRつゲームのパネル化&AppletとFrameへの貼り付け
0586名前は開発中のものです。
2006/12/02(土) 21:53:27ID:NlWQrbtL>>567
起動〜リソースの読み込み〜タイトル画面移行に掛かった時間を標準出力に吐いてくれたらうれしい
0587名前は開発中のものです。
2006/12/02(土) 22:03:33ID:g+e0ZUOZ連投スマン
これってAWT?
-Dswing.aatext=true
でアンチエイリアスが効いてないような気がするんだけど・・・
0588名前は開発中のものです。
2006/12/02(土) 22:23:32ID:YSW2q7Hoアプレットにも対応してみようかと、mainのクラス(ActionGame extends JFrame)
とは別にAppletのクラス(ActionGameApplet extends JApplet)を作って、
appletviewer使って実験してみたのですが、私のスキルが足りなくて、
途中で画像の読み込みとか(?)でヌルポになってしまいました…
(トレースは表示されましたが、時間が無くて具体的にどの辺りかが
あんまり分かっていません。あと内部でJPanel(JFrameに貼りついている
MainScreen)を作っているのですが、
これがアプレットに貼り付かないみたいで別ウィンドウが出て
しまいました...)
なものでアプレット化は当分無理そうです。ごめんなさい〜。m(_ _)m
>>586
これ位は私でもできるような気がしますが、必要な理由に興味が
あります。何故でしょう?(^^ゞ
開発環境はbash, vi, antで開発していたので、
シェルで普通にパラメータを指定して起動みたいな感じで、
ダブルクリックとかあまりやっていませんでした。
(Windows XPとかだと、jar=ZIPファイルで中を展開ってイメージが
あったもんで...)
0589名前は開発中のものです。
2006/12/02(土) 22:53:32ID:m+FwCpVx場合があるから、Windows向けに下記のランチャーソフトをお勧め
ttp://launch4j.sourceforge.net/
ttp://www.ne.jp/asahi/web/ryo/exewrap/
0590名前は開発中のものです。
2006/12/02(土) 23:02:38ID:lFDLhCqWあふぉなアーカイバは無視しておけ
0591名前は開発中のものです。
2006/12/02(土) 23:04:51ID:lFDLhCqW画像読込部分はりソース読み込みならおかしくなるとは思えないけどどういうコード使ってるの?
0592名前は開発中のものです。
2006/12/02(土) 23:08:50ID:YSW2q7Ho読み込みよりもダブルバッファのイメージ生成でコケてました。(^^;
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
0593586
2006/12/02(土) 23:31:14ID:g+e0ZUOZ>>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を何も考えずにクリックして見るのが普通と思う。解凍は意図的にする。
長かったな参考になっただろうか
0594名前は開発中のものです。
2006/12/02(土) 23:49:58ID:lFDLhCqWSystem.exitがどっかにかいてあるとか?
あれはアプレットだとセキュリティ違反
>>593
GCはインクリメンタルGCnにするとフルGCが大体消えて快適になる
5.0ならパラレルGCなので大丈夫
-Dはパラメータ用ではない。用途が違う
0595名前は開発中のものです。
2006/12/02(土) 23:55:17ID:YSW2q7Hoどうもです。(^^)
>んで効果を手軽に確認するのに初期化処理とかリソースの読み込みに掛かった時間が分かるとめあすになるかと思って。
参考になりました。φ(^^ )メモメモ
ということで時間を見つけて入れてみますね。
エンディングまで行った時にもTotal Play時間も入れておこうかな。
-Dswing.aatext=true パラメータは知らなかったのでググッてみたのですが、
これはテキストにアンチエイリアスがかかるとか紹介されていました。
ビットマップの転送にもアンチエイリアスがかかるのかも知れないのですが、
私も試したらNGでした。ちなみにゲーム中に表示される文字は全て
ビットマップです。
0596名前は開発中のものです。
2006/12/02(土) 23:58:03ID:YSW2q7HoSystem.exit書いてあります!
アプレットの時はコレが書いてあるだけでNGなんですね。φ(^^ )メモメモ
0597名前は開発中のものです。
2006/12/03(日) 00:11:31ID:Weooalfd0598名前は開発中のものです。
2006/12/03(日) 00:19:26ID:7tbgDbUFすみません〜。スキルがなくて…orz
System.exit止めたらExceptionが消えましたが、Component.createImage(w,h) API
でイメージが生成できないのは解消できずです。orz
newしたJPanel(Component)はヌルポでは無いのに…
0599名前は開発中のものです。
2006/12/03(日) 00:28:03ID:JGG55Wofアプレットはずっと動き続けるものだからね
破棄はブラウザ閉じたりページ移動したりユーザーの意思によってのみされるわけだ
>>598
エラーメッセージは?
0600名前は開発中のものです。
2006/12/03(日) 00:36:40ID:7tbgDbUF598で述べた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にあたります。
0601名前は開発中のものです。
2006/12/03(日) 00:37:20ID:JGG55Wofアプレットにこだわるのはどういうことだろうね
WebStartアプレットならまだましか
0602名前は開発中のものです。
2006/12/03(日) 00:44:09ID:JGG55Wof肝心の例外が出てる行はどこ?
ツールキットでのロードってことは読込完了するまでまってる?
画像ロードはImageIO使ったほうが楽だと思うよ
リソースのストリームから呼び出すようにね
あとソースファイルが多いので1つのディレクトリに全部展開するよりは階層構造にしたほうがいい
viとかでは管理できないレベルかと
リファクタリング使えるIDEつかえばドラッグアンドドロップで自動的にクラスの移動ができる
もちろん使われている場所も全部問題なく変更される
ここまでの規模になるとたいしたことなくともIDE必要だと思うよ
antも全部自動生成してくれるし
0603名前は開発中のものです。
2006/12/03(日) 00:52:36ID:aNPfAlfu-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
0604名前は開発中のものです。
2006/12/03(日) 00:53:47ID:7tbgDbUF根源は
URL url = God.getURL(fileName);
というところでした。
この関数は、sun.applet.AppletClassLoader.getResource(filename)
としていて、ここでNULLになっているみたいです。
(結果、if(srcImage == null)がnullになるという感じです)
ImageIOというのもあるんですね。ためになります〜。
EclipseとかカッコイイIDEを使いたいというのもあったのですが、
何分勉強する時間が無くて、最初はHello Worldから始めて、
グラフィックをちょっと描いてみる→ここまでに至りました。
この辺、言語や開発の仕方を覚えていく過程としてはかなりいい加減です。
(この言語が本職で無いからどーでもイイヤみたいな感じだったとでも
いいましょうか...(^^ゞ)
0605名前は開発中のものです。
2006/12/03(日) 00:57:25ID:JGG55WofサーバーVMはスループットはよくなるけどレスポンス悪化するのでゲームじゃ今のところ使えない
クラスロード時にコンパイルが出来るなら別だがそういうVMはないはず
それにインクリメンタルGCは5.0でトレインGCからパラレルGCに変更になったので大丈夫だよ
トレインアルゴリズムは非常の遅くて1GHzくらいでも60fps維持は結構きつかった
一応隠しオプションでトレインにかえれるけどだれもつかわないね、あれは
0606名前は開発中のものです。
2006/12/03(日) 01:01:12ID:JGG55Wofリソース読むときコードにクラスローダ直書きってこと?
IDEはわからないのであればNetBeansお勧め
セットアップしてすぐに使えることと覚えることが少ないのがぐー
新規にプロジェクト作ったらsrcフォルダにそのままソースをぶっこむだけでおわる
それに補完等があるからIDEは便利だよ
コンパイルしなくても構文にエラーがあればリアルタイムに表示してくれるし
0607名前は開発中のものです。
2006/12/03(日) 01:06:14ID:7tbgDbUF>リソース読むときコードにクラスローダ直書きってこと?
いえ、最初にgetClass().getClassLoader().getClass()してます。(^^ゞ
アプレットの時は"sun.applet.AppletClassLoader"で、
アプリケーションの時はお詳しいと思うのでご存知のように、
"sun.misc.Launcher$AppClassLoader"
みたいになりました。
IDEはもう少し時間が取れたら試してみようかな…
0608名前は開発中のものです。
2006/12/03(日) 01:20:39ID:aNPfAlfuパラレルアルゴリズムってそんなにパフォーマンス改善されてるのか。
>>サーバーVM〜
そういやこれアクションゲーだったな。
俺ADVエンジンしか作れないからレスポンスいらねw
でもlinuxだとデフォでサーバーVMが起動するからゲームのパフォーマンスさげてるって事か。
ところでswingで書けばアプレットでもアプリケーションでもどっちでも起動できるが>>604がdemoのSwingSet2のソースを理解出来るかどうか。
swingサポートしない古いMSVMはセキュリティの面からも切り捨てでw
#MSVMはJITだけが取り柄だな
0609名前は開発中のものです。
2006/12/03(日) 01:41:17ID:JGG55Wofリソース周り少し調べればたぶん解決すると思う
ストリームのほうつかってみたら?
あとファイルをjarの外に出すという方法もあるね
あとでパッチ当てるの楽になるし開発中のときはデバッグに楽かも
まぁリソースは別のjarとかにしておくのが正解か
WebStart等とかんがえるならね
>>608
あとGC自体1.4から5.0で見える範囲でパフォーマンスアップしている
Swingかどうかって関係ないのでは?
awtでもアプレットとアプリは併用可能
フルスクリーン等実装してることから1.4以上が必須なわけだし
あとはOggあたりをループ再生していればいいね
linuxは32bitならサーバークラスマシン検出しないとデフォはクライアントだと思うんだけど
64bitはクライアント版はなし
0610名前は開発中のものです。
2006/12/03(日) 01:54:36ID:7tbgDbUF色々と調べたら、アプレットでのjar内のリソースの読み込みは
セキュリティポリシーの問題で難しそうに感じました。
(それで合っているのか分かりませんが...)
本来は提案で言われたとおり、jarを外に出すとかWebStart等が
いいのかと思いますが、流石にそのパワーが無いので、
一旦これで凍結にしようかと思います。
(所詮適当に作ったサンデープログラムプロゲームですしね。www)
----
本来はオフラインで周りに聴ける人とかいれば、色々と相談したい
ものなのですが、残念なことにJavaエンジニアが側に一人も居ないので、
なんかきっかけがあったらまたゴソゴソとトライしてみようかと
思います。
スレの流れを見ていると、上級Javaエンジニアの方が二人程
私の相手して頂いたように見受けられます。
色々とテクニカルなキーワードを教えてもらって、
かなりタメになりました。ありがとうございます!( ´▽`)ノ
>>皆様
クソゲーではありますが、純粋にレトロ風なアクションゲームを
楽しんでいただけると幸いです。(^^)
ttp://perfect-logic.net/SampleAction/
0611名前は開発中のものです。
2006/12/03(日) 03:06:12ID:YF8PnGLnアプレットでも大丈夫
/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;
}
}
0612名前は開発中のものです。
2006/12/03(日) 03:16:48ID:fVWUDxZSClassLoader#getResource
Thread#setContextClassLoader
辺りを使えば大体何とかなったな
0613名前は開発中のものです。
2006/12/03(日) 12:38:36ID:YF8PnGLn0614名前は開発中のものです。
2006/12/03(日) 12:49:00ID:SWYB2VRJ楽しんで作ってるうちが一番だと思うよ
だからアプリケーションでのみだが問題ない
仕事で作るとなるとそれはそれは・・・
とりあえずこのスレを1から読んでみることをオススメする
0615名前は開発中のものです。
2006/12/03(日) 21:46:13ID:7tbgDbUF斜め読みですがこのスレを一通り見てみました。(^^)
私がコーディングしていて通ったような悩みを他の人も
遭遇していたりして、もっと早くこのスレに来ていればなぁと
思いました。
本職はWin,LinuxのC++/Asm系なので、この言語の高級感
(というかライブラリの充実度)は萌えだったのですが、
仕事となると色々と知らないといけないガイドラインが多そうで
大変なんだろうなぁとシミジミです。
0616名前は開発中のものです。
2006/12/03(日) 21:55:02ID:/gdh39Xlあとは音楽でもはいっていれば十分かと
できればジョイパッド対応ってところだけどJNIはいるからめんどくせーかな
まぁC本職なら十分楽だろうけど
Javaはネット周りが楽なのでネトゲの鯖から採用され始めてきて最近はクライアントにもきてるみたい
ネトゲは運用がはいるからパッケージと違って保守性って大事だからね
0617名前は開発中のものです。
2006/12/03(日) 22:29:48ID:7tbgDbUF>あとは音楽でもはいっていれば十分かと
そうなんですよねぇ… ちょっとMIDIで作ったのですが、
プログラムや絵よりも難産で当分無理かなぁという状況です。
(外部ファイルで設定できるとはいえ、開発者の作曲のスキルが…orz)
>できればジョイパッド対応(ry
最初Windows上にcygwin入れて、JNIをサンプルで作ってみて、
エントリポイント関数ができたので、さて作ってみるかと思ったのですが、
その直後「JoyToKey」という素晴らしいソフトを見つけてしまったので、
作成意欲がゼロになりました。
(私は"PCで遊ぶゲームはキーボード"で育ったので、自作ゲームは
キーボードでクリアする方が簡単となってしまい、この辺があんま考慮
されてなかったりします。m(_ _)m)
昔、日経Linuxとかで携帯ゲーム開発のコストの記事かなんかを
みたことあるのですが、技術者のスキルに比べて開発費用が激安で
回収が厳しいとか書いてありました。Javaで簡単に作れる時代になった
とはいえ、これで保守/運用とかあると厳しいんだろうなぁと感じました。
0618名前は開発中のものです。
2006/12/04(月) 00:23:03ID:TAJliEjWしかもこのキーとこのキーが同時に入力できないってのはキーボードによって違う
アクション系では致命的
0619名前は開発中のものです。
2006/12/04(月) 00:50:11ID:rOxIjnLZ>キーボードでもいいんだけど、同時入力が出来ない場合が多いからね
>しかもこのキーとこのキーが同時に入力できないってのはキーボードによって違う
φ(.. )メモメモ
これって、キーボード的(ハードウェア的)にですか?
OSのキーボードデバイスドライバ的ですか?('=,VMのイベント的ですか?)
(恐らく後者とは思っていますが...)
自作のゲームはサンプルなので、左右とジャンプしか行わないためか、
幾つかのPCでキーボードプレーしても、このような感覚に出会った事が
なかったです。
とても勉強になります。
0620名前は開発中のものです。
2006/12/04(月) 02:19:17ID:oYP8msvX0621名前は開発中のものです。
2006/12/04(月) 03:05:27ID:rOxIjnLZJoyToKeyのようなソフトウェアはキーイベントをOSに発行するから、
こーいう問題はないのかもなぁ…
0622520
2006/12/04(月) 04:42:32ID:8QL/yjCh0623名前は開発中のものです。
2006/12/04(月) 04:43:21ID:8QL/yjCh0624名前は開発中のものです。
2006/12/13(水) 12:04:19ID:nFrd+DMR0625名前は開発中のものです。
2006/12/13(水) 16:07:46ID:tbX8caYj同じことさせて11.701sec→9.815secで速くなってた。
処理の内容はほとんどが浮動小数点演算だけどGUI周りはどうなんだろ?
0626名前は開発中のものです。
2006/12/13(水) 19:05:49ID:nFrd+DMR特に今までアクセラレーションがなかったWindows以外の環境でもアクセラレーションきくようになったのは大きいかと。
0627名前は開発中のものです。
2006/12/14(木) 08:23:31ID:U6gTfVOR5.0で同じことやっても10fpsいかなかったし、
6.0はjavaゲームの本当のスタート地点になるかも
0628名前は開発中のものです。
2006/12/15(金) 18:08:34ID:Ihq+GcpEじゃあ俺もこれからアプレットのゲームつくってみよ
0629名前は開発中のものです。
2006/12/15(金) 23:17:44ID:e9fBCpQhJavaアプリケーションが高速ってこと?
0630名前は開発中のものです。
2006/12/16(土) 16:06:00ID:p9tzPmLY2Dの事?
今までが遅すぎただけ。アルファブレンド固定なせいもあるけど
しかし、今頃になってようやくって感じだな。
ロジックの速度も上がってるけど、コレクションクラス群はどう?
JavaがC++で劣るのはGCのみ、と言ってる人がいるけど
ロジックのコアとなるCollectionAPIの遅さを考慮してないから話にならん。
STLは、ヘボ設計だけど速度はあるからそれだけ実用に足りるがね。
0631名前は開発中のものです。
2006/12/17(日) 00:02:03ID:SYIGKUNN今回JREにServerVMが付属してないからJDKのJREほうでやってみたら
ServerVMのほうがコンパイルに時間がかかってかくかくになるくせに
ClientVMと同じ性能しか出てない
これはClientVMがServerVMにスループットでも追いついたということか
0632名前は開発中のものです。
2006/12/17(日) 14:55:12ID:iXhkS4tF0633名前は開発中のものです。
2006/12/17(日) 15:17:19ID:hjNOU8u3http://journal.mycom.co.jp/news/2005/09/15/021.html
http://weblogs.java.net/blog/campbell/archive/2005/03/strcrazy_improv_1.html
とか
ClientVMのレジスタ割り当てアルゴリズムが変更された
http://weblogs.java.net/blog/opinali/archive/2005/11/mustangs_hotspo_1.html
あたりが影響している感じ
0634628
2006/12/17(日) 15:47:07ID:EcLAzrobパソコン買い替えるか・・・
0635名前は開発中のものです。
2006/12/17(日) 20:16:45ID:+LUNIpolさっきS!アプリの開発環境を落として来て動作テストを行なおうとしたら、jadを直接読み込めないんだよ。
焦ったぜ……
このテストさえクリアすればようやく公開だってのに……
0636名前は開発中のものです。
2006/12/17(日) 20:23:17ID:+LUNIpolそうか、疑似端末でインストールして動かすのか……
盲点だったぜ。
0637名前は開発中のものです。
2006/12/17(日) 20:58:57ID:Lz0Pt1eB0638名前は開発中のものです。
2006/12/17(日) 22:19:40ID:zMoxVD1I何しろexeだったし…
つーかバッドバージョンインフォメーションてなんだよ。1.5だからか?
0639名前は開発中のものです。
2006/12/17(日) 23:17:36ID:+LUNIpolん? 君には見えないのか。
アドバイスをくれたあの人が……
いや、どうやら俺にだけ見えるらしい……忘れてくれ……
ところで、初心に帰ってゲーム制作を1から学び直せるサイトってどこかないだろうか。
出来たものが何故かバグだらけで非常にむかついたんだ。
自分でもぐぐって探してみたんだが、どうにもPC用講座ばかり引っ掛かる……
というかサウンドノベルでバグ出す自分って一体……orz
0640名前は開発中のものです。
2006/12/17(日) 23:52:05ID:+BHAw/PJhttp://www.amazon.co.jp/dp/1592730051/
0641名前は開発中のものです。
2006/12/17(日) 23:59:57ID:Lz0Pt1eB最初から大掛かりなの作ろうとしてないか?
昔のBASIC時代と同じく手軽に作れる小粒のアクション系つくってみたら?
0642名前は開発中のものです。
2006/12/27(水) 23:40:47ID:L0eM1Y3J[Action game start] (Start time:略)
Game initializing...
MIDI sequencer device open error...
Framework initialize failed. error(-5)
あら・・・動かない。
0643名前は開発中のものです。
2006/12/28(木) 00:49:15ID:0S10EeXqこんばんわ、567の作者です。
初めてみる症状です…
JavaのMidiSystem.getSequencer()にて例外が起きているみたいです。
PCのサウンドシステムにMIDI環境は揃っているでしょうか…?
0644名前は開発中のものです。
2006/12/29(金) 00:25:15ID:9nXP6CjOJDKはサウンドバンクの一番小さいやつははいってくるけど、JREには1.4以降はいってないはずだよ
それを読み込むプログラムはどうしてるの?
それがないとすれば動かないのが普通
一部環境(JDK入れた人)では動く、が正解
0645名前は開発中のものです。
2006/12/29(金) 02:30:52ID:0wIkKd8mすみません。サウンドバンクという概念自体を理解してないでAPI使っています。(^^ゞ
なので、回答としては「恐らくプログラムには入っていない」ような気がします。
以前、インスコしたばかりのWindows 2000上にJRE5.0を入れて動いたのを
確認したことはあったのですが、もしもJRE1.4以降にそれが入っていないと、
Sequencer midiSequencer = MidiSystem.getSequencer();
midiSequencer.open();
みたいなことができないようであれば、JDKもついでにインスコしていた
のかもしれません。
(他の開発環境ではないマシンはネットカフェでJDKが入っていないと
思われるXPマシンで動かしたことがある程度です)
とりあえず642さんに動かして遊んでもらいたいところではあるので、
どうしたらよいもんやら...
0646名前は開発中のものです。
2006/12/29(金) 10:23:30ID:M9cmQJF8JDK入ってても現象でてます。
0647名前は開発中のものです。
2006/12/29(金) 14:03:17ID:0wIkKd8mこんにちわ。
う〜ん。ちょっと環境の詳細が分からないとちょっと対応が難しそうですね。
(OS、サウンド環境、Java環境、etc...)
こちらで現象が確認できない(同一環境が揃わない)と、どうやって
対処して良いものか...
あと、他の方が作成したMIDIを鳴らすサンプルプログラムとかで、
発声するかとか知りたいところです。
それでも同じような例外が発生するようでればPC(Java)環境、
そうでなければ私のプログラムが問題ということになりますね。
(私がJavaの素人なので後者とは思いますが...)
なんか他の良いMIDIサンプルないですかねぇ。
(MidiSystem.getSequencer().open();してそうなやつ)
0648名前は開発中のものです。
2006/12/29(金) 14:26:02ID:M9cmQJF8実行したら死んだ。
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)
諦めます。
0649名前は開発中のものです。
2006/12/29(金) 15:15:29ID:aT7rJMamttp://www.vipper.org/vip410441.txt.html
BGMBundleにシーケンス一式溜め込んでおいてランダムに再生するだけの物です。
手元にWindowsとLinuxの両方の環境あるけどどっちでも動いてます。
0650648
2006/12/29(金) 15:59:11ID:M9cmQJF8やっぱり
this.sequencer = MidiSystem.getSequencer();
の部分で死ぬ
どうやら俺の環境に問題があるらしい。
何かにデバイス横取りされてるのかな。
Java Media Framework関係は普通に鳴ってる・・・。
0651648
2006/12/29(金) 18:23:49ID:M9cmQJF8こんな現象もあるんだ〜と感心。
今後の参考にします。
0652名前は開発中のものです。
2006/12/29(金) 18:41:28ID:0wIkKd8mオアー。環境スか...(´д`;
そのうち環境が整ったらプレーしてみてください。m(_ _)m
(ステージも結構あるので、80'sのアクションゲーム好きでしたら
楽しめると思います)
でわ。
0653名前は開発中のものです。
2006/12/29(金) 20:26:04ID:aT7rJMamこれかな?
Evaluationの部分を適当に訳してみる:
>指定されたサウンドカード(SoundMAX Digital Audio)はハードウェアMIDIポートを持っていないので
>Javaのソフトウェアシンセサイザーを使うことになります。
>標準ではJavaSE JREはソフトウェアシンセサイザーのサウンドバンクをインストールしませんが、
>しかしサウンドバンクが利用可能でなければシーケンサはソフトウェアシンセを使用しません。
>このためシーケンサは使用可能なアウトプットデバイスを見つけることが出来ないので失敗します。
>したがって新しいJavaSoundDemoのためにRFEの写しとしてCRを閉じて、
>それらのケースを詳細に取り扱うべきです。
最後の一文がよくわからんかったけど
JRE普通にインストールしただけじゃ
Java付属のサウンドバンクが入らないから入れろってことだね。
ただWindows側でソフトウェアシンセって持ってなかったっけ?
0654名前は開発中のものです。
2006/12/29(金) 23:56:59ID:J80FO9qVがうごかないっていうのはライブラリの問題だと思う
マルチコアだと動かないとかよくあるから環境を書いたほうがいいと思う
0655名前は開発中のものです。
2006/12/30(土) 10:34:14ID:HoTiFon7CPU:intel Pentium D 930 BOX(一個)
サウンド:オンキヨー SE-90PCI
OS:Win2000SP4
JDK:JDK5、JDK6(どっちもダメだった)
関連性があると思われるインストール済みソフトウェア
Audio Deck
JMF1.2
MIDIはWindowsMediaPlayerに関連付けられている状態
0656名前は開発中のものです。
2006/12/31(日) 10:14:46ID:1VGXvsjp0657名前は開発中のものです。
2006/12/31(日) 21:54:30ID:p+8prPoH0658名前は開発中のものです。
2007/01/01(月) 02:10:42ID:6EV+wqWaこれデフォでしょ
0659名前は開発中のものです。
2007/01/01(月) 02:43:23ID:moAKmPyKJMFのコンフリクト
ttp://forum.java.sun.com/thread.jspa?threadID=586287&messageID=3024044
sound.jar(またはjmf.jarも)を
lib\extから(またはclasspathからも)除外。
0660名前は開発中のものです。
2007/01/04(木) 22:53:24ID:KxRY1/gx配布する際は使ってるライブラリも含める?
それともインストールを促す?
含めると、そんなライブラリ持ってるわい!って言う人いるだろうな。
かといって含めずに「動かないんですけど」って問い合わせが来ると対応が大変だし。
なんか良い方法ないかな。
0661名前は開発中のものです。
2007/01/04(木) 23:04:33ID:CqSR8cXM0662名前は開発中のものです。
2007/01/05(金) 00:53:20ID:CKZiJJtcアプリなら適当にファイル同梱すればいいし
別にJREにはいってる必要はない
0663名前は開発中のものです。
2007/01/05(金) 09:23:58ID:EoheASy3その「適当にファイル同梱」の事を言ってるんジャマイカ。
0664名前は開発中のものです。
2007/01/05(金) 12:02:21ID:CgA1l96c再配布可能物なんだから問題ないだろ?
それが問題になるなら画像やサウンドファイルなど他のリソースも問題になるってことだぜ?
0665名前は開発中のものです。
2007/01/06(土) 10:57:57ID:51STjwfVいい感じのエフェクトはないかね?
ttp://www.durius.com/
ttp://hp.vector.co.jp/authors/VA012735/
0666名前は開発中のものです。
2007/01/06(土) 15:14:07ID:r24lOWtwそれにゲームによって使い方違うだろ
0667名前は開発中のものです。
2007/01/06(土) 18:29:48ID:nMuYdedCあんまり無茶するとフレームレートががた落ちになるのがネックだね。
sun.java2d.openglやsun.java2d.d3dのオプションで
OpenGLやD3Dのアクセラレーションが効くのはいいけど
環境や処理によってアクセラレーションが
効いたり効かなかったりするからあんまし過信できないかな。
というかアクセラレーションが効かないだけならいいけど、
D3Dだと拡大縮小が以上に時間かかるバグがあったり、
OpenGLだと色が化けたりでまだ実用には少々難ありっぽい。
(どちらも本家のバグレポートにあった)
とりあえずDirect3D向けの視覚効果テクニックから
軽そうなのだけをJavaに引っ張る予定。
0668名前は開発中のものです。
2007/01/06(土) 23:14:26ID:CAKGleITJOGL使ってOpenGLそのまま使うのが今は一番現実的かな
0669名前は開発中のものです。
2007/01/06(土) 23:36:13ID:cnJipY2OMMORPGをJavaで作るそうです。
説明によるとサーバーもクライアントもJavaみたいです。
どこまでいけるのやら?
0670名前は開発中のものです。
2007/01/07(日) 00:06:10ID:NntNHMAaブラウザ上で動くオンラインゲームってのは面白そうだな。
Javaのメリットも生かせそうだし、何より金の臭いがプンプンするぜー!!
0671名前は開発中のものです。
2007/01/07(日) 11:19:46ID:6B2D6r/dアドレス見て.hackを思いだした
0672名前は開発中のものです。
2007/01/09(火) 03:31:44ID:EAQZbwWjhttp://secondlife.com/developers/opensource/getit
0673名前は開発中のものです。
2007/01/09(火) 21:58:25ID:HlHNM13xオモシロそうだね。
しかし、いまどき手作りサイトはきつくないか?
せめてCMSを使ってほしい。
xoops, joomla, pukiwikiあたり。
0674名前は開発中のものです。
2007/01/10(水) 10:31:16ID:1y6WyCtf0675名前は開発中のものです。
2007/01/10(水) 13:02:27ID:CY2D89RvSwingはJFrameやJDialog等を含む
つまり比べている単位が違う
0676名前は開発中のものです。
2007/01/10(水) 16:06:33ID:CUOEf+p30677名前は開発中のものです。
2007/01/10(水) 19:51:15ID:1y6WyCtfありがとうございます
0678名前は開発中のものです。
2007/01/10(水) 20:45:36ID:oWjZFBCdネットゲームを作ってるけどユーザー登録と認証のデータベースを
一々作らなくてもXOOPSとかのに便乗してしまえばいいことに気がついたよ。
でもXOOPSは荒れてるのか、残念。
0679名前は開発中のものです。
2007/01/10(水) 23:47:17ID:ssMCF7LR試みは面白いけど
ブラウザMMOである必要があるかってのが不明だし
見た感じ完全な素人ぽいし、何をやりたいかってのがわからないから微妙だな
0680名前は開発中のものです。
2007/01/11(木) 00:27:37ID:mphLe0zyJavaだからブラウザとは限らないと思う。
むしろブラウザでアプレットでも動いて、
WebStartやJavaアプリケーションだったら
他の機能も使えるとかだったら面白いと思う。
ただ募集で人を募ってるにしてはちと情報が足りないよねぇ。
0681名前は開発中のものです。
2007/01/11(木) 00:56:40ID:NgTbegp6どこかでみたなって思ってたら BOTNEWSの人のサイトじゃん。
0682名前は開発中のものです。
2007/01/11(木) 08:07:23ID:S2vx2eJV0683名前は開発中のものです。
2007/01/11(木) 14:53:51ID:Yd1G/kpu0684名前は開発中のものです。
2007/01/11(木) 21:55:18ID:5qUJXaj7JAVAゲームを作りたいのですが、どこかのサイトでフロッピーに一括DLできるようなところはありませんでしょうか?
プログラムはもう出来ていて、あとは入力すれば出来るような簡単なゲームで良いんです(テトリスなど)。
皆様ご存知でしたら大変申し訳ないんですが教えてくれませんでしょうか…?
0685名前は開発中のものです。
2007/01/11(木) 22:02:28ID:+EVEwFD/0686名前は開発中のものです。
2007/01/11(木) 22:29:11ID:XoWa/QNuhttp://javagame.main.jp/
0687名前は開発中のものです。
2007/01/12(金) 03:00:48ID:STRKeNbNもちっと泥臭いJavaに限った情報を集めたサイトが欲しいなー
0688名前は開発中のものです。
2007/01/12(金) 05:51:25ID:h6iNVB6Dとりあえずお前さんが書いたソースをどっかにあげてくれ。
0689名前は開発中のものです。
2007/01/12(金) 18:19:58ID:+JdArOF0image.getWidth(this);でいけますよね?-1が返るんですけど
0690名前は開発中のものです。
2007/01/12(金) 19:13:52ID:k6cliGBgJavadocより
> abstract クラス Image は、グラフィカルイメージを表現する
> すべてのクラスのスーパークラスです。
> イメージは、必ずプラットフォーム固有の方法で取得してください。
ベクトルイメージとかもひっくるめてのスーパークラスだから
ピクセルの概念をImageは持ってない。
BufferedImageとVolatileImageはピクセルベースのイメージで
サイズの概念を持ってるからサイズの取得ができるよ。
0691名前は開発中のものです。
2007/01/12(金) 20:07:18ID:STRKeNbNソースは公開してるけど、ここに紹介すれば
そんなサイトを君が作ってくれるの?
0692名前は開発中のものです。
2007/01/12(金) 20:32:46ID:h6iNVB6Dで、どこで公開してるの?
0693名前は開発中のものです。
2007/01/12(金) 22:41:44ID:hpZMXN0Iおもったんだけど、この理屈で言うんだったら、
ネトゲーのクライアントはアプレットでつくるより
Flex(ActionScript)で作ったほうがよくないか?
開発環境無料だし。
JREをインストールさせるより90%以上普及している
Flash使ったほうがよいかと。
(サーバサイドはJAVAでいいと思うが)
てかそういうゲーム誰か知らない?
0694名前は開発中のものです。
2007/01/12(金) 22:46:22ID:k6cliGBgJREをインストールさせることが面倒なのは同意だが、
サーバーとクライアントで別々の環境にすると
今度は通信プロトコルの統一が面倒なのよねぇ。
0695名前は開発中のものです。
2007/01/12(金) 22:51:00ID:STRKeNbN実名でやってるから2chに晒すつもりはない
とりあえずGraphics2Dの最適な描画について
まとめたドキュメントが日本語で読みたい
この方法は高速で、この方法は低速ですというのを
使ってるJDKのバージョンに合わせて知る方法があればすごく助かると思う
例えば画像の描画だけの場合でも描画面積のみ考えればいいのか、
そこでImageの描画回数はどのくらい影響するのかとか
src->dest間の色深度の違いでどのくらい影響があるのかとか
そういうのは試してみないとわからんし
結局は個人の常識とかノウハウに埋もれてたりする
みんながみんなの開発日記やソースを読める訳でもないから勿体無い
0696名前は開発中のものです。
2007/01/12(金) 23:55:12ID:4K5O+ZToFlashで作る場合、試行錯誤で作り上げていくの難しいからまずはJavaででも問題はないと思う
それにほとんどのMMOhaアプリケーションセットアップ型だし、ランタイムのみってのはメリットはあるだろう
WebStartつかえば差分パッチとか入れることも出来るし、キャッシュさせることも出来る
UDPTCP直接バリバリつかうようなアプリだとFlashきつくね?
HTTPだけ使うようなのならいいと思うが、ターゲット考えれば暗号化とかのいたちごっこ打破も目的に入ってると思うし
0697名前は開発中のものです。
2007/01/13(土) 00:04:09ID:wpmqZDm60698名前は開発中のものです。
2007/01/13(土) 01:06:04ID:En3FXRLQそういうのはいいだしっぺがやるもんだと思うぞ。
自分のノウハウをまとめたサイトをどこかで立ち上げて、その後、皆に協力を依頼するなりしてみたら?
いくらなんでも自分は何もせず、他人に頼りきりってのは虫が良すぎだろう。
こんなのが欲しい、あんなのが欲しいと言ってるだけではどうにもならないんじゃ無いかな。
まず自分が動こうぜ。
0699名前は開発中のものです。
2007/01/13(土) 01:21:57ID:dd/POorYいまだとJOGLでアクセラレーション前提のほうがよさげ
0700名前は開発中のものです。
2007/01/13(土) 01:58:25ID:2t7E5/JSそういうのを言いだしっぺ厨って言うんだよ
顔が見えないからといって人をクレクレ厨呼ばわりするような君の為には
javadocもドキュメントもフレームワークも永遠に書かないと心に決めた
というか実際そういう需要ってあんの?
0701名前は開発中のものです。
2007/01/13(土) 02:40:35ID:En3FXRLQまとめサイトが欲しいって言ってるだけじゃん。
欲しいものがあるのに何故自分から行動を起こさない?
まず何か行動を起こそうぜ。
俺の為に書くんじゃないよ。
自分の為、みんなの為に書くんだよ。
自分が培ってきたノウハウを他人に見せるってのはそういう事。
ここの連中、お前の質問に答えてくれてたよな。
俺じゃ無く、そいつらの為に書く気は無いか?
それとも最初から自分のノウハウをまとめたサイトなんぞ作る気は無くて、何かと言い訳して逃げたいだけか?
サイトを作るか?それとも作らないのか?どっちだ?
0702名前は開発中のものです。
2007/01/13(土) 02:42:11ID:Xgompw9t0703名前は開発中のものです。
2007/01/13(土) 02:46:35ID:En3FXRLQ実際にサイトを運営してるのか?
よければ詳しく事情を聞きたいんだが。
0704名前は開発中のものです。
2007/01/13(土) 02:49:01ID:2t7E5/JSなんか自己啓発セミナーみたいだぞ
もうちょっとトーンダウンしろよ
0705名前は開発中のものです。
2007/01/13(土) 02:51:13ID:En3FXRLQで?
結局、サイトを作るのか?それとも作らないのか?どっちなんだ?
0706名前は開発中のものです。
2007/01/13(土) 02:59:43ID:2t7E5/JS自分は自分でやってる事沢山あるし
でも例えば gamedev.org の Java コーナーにみんな書く気があったら
自分も何かしら書きたいけどね
ただ重要なのはそういう雰囲気であって、やる気だけで上手くいく問題とは思わないよ
0707名前は開発中のものです。
2007/01/13(土) 03:22:10ID:2t7E5/JSそういうサイトになってたのね。てっきり個人サイトかと思ってた
じゃあ何か書けるよう準備しとくよ
0708名前は開発中のものです。
2007/01/13(土) 04:25:06ID:En3FXRLQ>重要なのはそういう雰囲気であって、やる気だけで上手くいく問題とは思わないよ
これは同意。やる気だけでは上手くいかない。
でもその雰囲気ってのは待ってたら自然発生するのか?
するかもしれんが、それまでずっと待つのか?
そういう雰囲気になるよう自分で行動したほうが早いと俺は思うね。
0709名前は開発中のものです。
2007/01/13(土) 08:27:49ID:ChZPL/q10710名前は開発中のものです。
2007/01/13(土) 12:59:31ID:ISA4z7moあそこは個人サイトっぽい
Wikiだけどページ凍結されてるから他の人は更新できないし
0711名前は開発中のものです。
2007/01/13(土) 17:39:42ID:2t7E5/JS日本で恐しくマイナーな言語のwiki立ちあげた事あったけど
利用者が一人もいなかったのでやめた事あんだよ
どんなプロジェクトでも需要の母数がなければ本人のやる気とともに消滅する
やる意味が薄いと思ったらやらないで他の事をやるだけ
>>710
よく読んだらそうだったすまん
でやっぱgamedev.orgかなと思ったらgamdev.orgなのか
0712名前は開発中のものです。
2007/01/13(土) 20:16:38ID:VT89Y6hX0713名前は開発中のものです。
2007/01/13(土) 21:09:30ID:Q4fcHXOQ人並みに凹んだら良いと思うよ
0714名前は開発中のものです。
2007/01/13(土) 23:51:18ID:VjT/WPc+クラスファイルを配布しても直接実行できないですよね?
0715名前は開発中のものです。
2007/01/14(日) 00:35:21ID:pYfYvHXx細かい設定がほしいならバッチファイルとかexe作るとかもあるけど
0716名前は開発中のものです。
2007/01/14(日) 01:36:37ID:W7oRzD5Wアプレット or WebStart or Jarにする。
0717名前は開発中のものです。
2007/01/14(日) 04:14:21ID:sLzS5csAとりあえずココ
自己実行型JARファイル
http://javagame.main.jp/index.php?%BC%AB%B8%CA%BC%C2%B9%D4%B7%BFJAR%A5%D5%A5%A1%A5%A4%A5%EB
0718名前は開発中のものです。
2007/01/14(日) 13:53:59ID:cRcMzltBJarなんていいものがあったのか
ありがとうございます
0719名前は開発中のものです。
2007/01/14(日) 14:57:42ID:xwM7+CqCそういうことね
メインクラス指定してするだけでおけ
ライブラリを使うのであればその指定もしておくといい
NetBeansだと自動的にライブラリへのパス設定とかその辺全部やってくれるよ
0720名前は開発中のものです。
2007/01/14(日) 15:33:08ID:GWjU6DST移行できない理由があってすごく悔しい
で、とりあえず今小さな描画テストのフレームワークを作ってるんだけど
スコア算出って基本的には
スコアA = fps値
スコアB = fpsの実測値 / 設定された目標のfps
スコアC = 指定秒内に描画した回数
くらいでいいのかな
0721名前は開発中のものです。
2007/01/14(日) 15:53:41ID:xwM7+CqC0722名前は開発中のものです。
2007/01/15(月) 14:26:02ID:oOqpuHvfを用意しないといけないんでしょうか?
0723名前は開発中のものです。
2007/01/15(月) 16:58:49ID:/py25nqCmime指定するだけでおけ
0724名前は開発中のものです。
2007/01/15(月) 18:10:46ID:JsWTQE8Vとりあえず本家の文章
ttp://sdc.sun.co.jp/java/docs/products/javawebstart/ja/docs/developersguide_ja.html
ttp://java.sun.com/j2se/1.5.0/ja/docs/ja/guide/javaws/developersguide/syntax.html
0725名前は開発中のものです。
2007/01/16(火) 20:40:33ID:+dkH4MDjhttp://gamdev.org/up/img/8643.zip
何か意見とかくれるとうれしいです
特にフレーム周りの初期化について
この辺で失敗してるとテスト環境と呼べなくなるので
>>721
レスサンクス。スコアはオプションにしました
0726名前は開発中のものです。
2007/01/16(火) 21:01:12ID:dN71f/93これはバグとしてあがってたと思う
5.0のときはまったく使い物にならなかったけど、アクセラレーションは一応聞いているようだ
ただ、これとJOGL組み合わせるとフリーズしたりするのが癌だな
ところでエッチな画像がはいってるといわないと周りの目がある家庭だと大変なことになるぞ
フルスクリーン切り替えが多いのであんまり切り替えないようにしたほうがいいかな
あとウインドウモード時にウインドウサイズを変更できないほうがいいか
0727名前は開発中のものです。
2007/01/16(火) 22:32:01ID:B9km73hgだけどOpenGLは環境によって色化けしたし、
D3Dはsun.java2d.ddscaletoとsun.java2d.translaccelと同時に使わないと
逆に速度が落ちる上のに、
WebStartではd3dしか使えないという訳のわからない仕様なのよねぇ。
0728名前は開発中のものです。
2007/01/16(火) 22:32:51ID:I2Iys4yOこういうエラーがでるけど何これ?
こちらの環境はver.1.5です、1.6でないとだめ?
Exception in thread "main" java.lang.UnsupportedClassVersionError: Bad version n
umber in .class file
at java.lang.ClassLoader.defineClass1(Native Method)
at java.lang.ClassLoader.defineClass(Unknown Source)
at java.security.SecureClassLoader.defineClass(Unknown Source)
at java.net.URLClassLoader.defineClass(Unknown Source)
at java.net.URLClassLoader.access$100(Unknown Source)
at java.net.URLClassLoader$1.run(Unknown Source)
at java.security.AccessController.doPrivileged(Native Method)
at java.net.URLClassLoader.findClass(Unknown Source)
at java.lang.ClassLoader.loadClass(Unknown Source)
at sun.misc.Launcher$AppClassLoader.loadClass(Unknown Source)
at java.lang.ClassLoader.loadClass(Unknown Source)
at java.lang.ClassLoader.loadClassInternal(Unknown Source)
0729名前は開発中のものです。
2007/01/16(火) 22:35:50ID:+dkH4MDjOpenGLで描画が乱れるというのは気付きませんでした。ビデオカードによるのかな…
jogl との組合せは考えてなかったですがちょっと試してみます
でも jogl はデモしか触った事ないんで時間がかかりそうかも
あのエッチ画像はフリー画像で真っ先に思いついただけなんで変えときます。やっぱダメかな
フルスクリーン/ウィンドウモードは了解です
>>728
多分JRE 1.6 じゃないからだと思います…
注意書き忘れてました
レポありがとうございました
0730名前は開発中のものです。
2007/01/16(火) 22:45:50ID:+dkH4MDjその辺は本当に悩みどころです…
VM 起動オプションによる描画法の設定もテスト側には面倒なんで
まとめて試す方法を考えときます
0731名前は開発中のものです。
2007/01/18(木) 20:03:05ID:cuqRge9/いっぱい文章が書いてあるにも関わらず、何をしたいのかさっぱり分からない(´・ω・`)
0732名前は開発中のものです。
2007/01/19(金) 19:41:29ID:zUXwDm/l1.5だとコンパイルすら通らん〜
0733名前は開発中のものです。
2007/01/19(金) 19:54:37ID:vmLWqdf70734名前は開発中のものです。
2007/01/19(金) 20:01:43ID:jvhMK1qT0735名前は開発中のものです。
2007/01/19(金) 23:14:22ID:MHBKmwADttp://homepage1.nifty.com/open-prog/java/tip103.html
その他参考になるサイト
ttp://homepage1.nifty.com/open-prog/java/index.html
ttp://www012.upp.so-net.ne.jp/flab/3d/
ttp://nis-lab.is.s.u-tokyo.ac.jp/~nis/CG/cgtxt/index.htm
ttp://chiyo.sfc.keio.ac.jp/cgsoft/Release/Textbook/index.html
ttp://www.asahi-net.or.jp/~qb3k-kwsk/3dcg/know/know.html
ttp://www.imel1.kuis.kyoto-u.ac.jp/members/kameda/lecture/le4cg/html/html.html
ttp://www.interq.or.jp/piano/ishizaka/oldpg/3d0.htm
ttp://fabrice.bellard.free.fr/TinyGL/
OpenGLを使うのなら、NeheかOpenGLスレへ
0736名前は開発中のものです。
2007/01/20(土) 05:56:04ID:miZanmCM乙
0737名前は開発中のものです。
2007/01/20(土) 11:08:59ID:1LaVUZaW0738名前は開発中のものです。
2007/01/24(水) 18:19:41ID:abB7yEBV具体的には、プレイヤークラス と 職業、職業毎のスキルの関係について悩んでいます。
戦士→剣士→騎士 のように転職可能なシステムを作りたいのですが、
騎士になっても戦士のスキルを使う事が可能というシステムにする場合、
スキルもオブジェクトとして持たせるべきなのでしょうか?
プレイヤーオブジェクトに 職業オブジェクトを持たせる
その職業オブジェクトが持っているスキルリストの中から習得したものを
名前を引数としてFactoryパターンのクラスに渡しスキルオブジェクトを作成
という形を取ろうと思うのですが、この形は非効率的だったり美しくなかったりしますか?
動くには動くのですが、確信が持てません
詳しい方が居ましたらご教授お願いします 説明分かりづらいですかね?
0739名前は開発中のものです。
2007/01/24(水) 18:51:58ID:ds9ziEzRでいいんじゃね?
0740名前は開発中のものです。
2007/01/24(水) 18:57:34ID:abB7yEBV戻り値でその技の設定値を受け取るという形でしょうか?
プレイヤー→Skills.getSkills("飛び蹴り")
プレイヤー←"飛び蹴り"の設定値
0742名前は開発中のものです。
2007/01/24(水) 19:34:45ID:Z8dMdSBn0743名前は開発中のものです。
2007/01/24(水) 20:21:05ID:OcoQZH/9ドラクエ転職とかジョブチェンジなら人につければいい(直接オブジェクトにしないで習得フラグだけとかね)けど、例の様な継承系なら職につけてもいいよな
戦士:A,B
騎士:A,B,C,D
て上級は下級の全スキル含むようにすればいいし
ちゅうわけでシステムしだいでしょ
0744名前は開発中のものです。
2007/01/25(木) 18:55:38ID:pxDlcTzW例
enum Skill { SWORD, GUARD, ....... }
class Player {
EnumSet<Skill> skills;
}
スキル毎にレベルがあるとかいうなら、
class Player {
EnumMap<Skill, int> skills;
}
でレベルを表現。
スキル毎に経験値やらレベルやら使用回数やら細かいデータがつくなら、スキル毎にオブジェクトを作った方がいいと思う。
その場合でも、factoryを使う必要性はないような気がする。職業オブジェクトが直接 new していいんじゃない?
0745名前は開発中のものです。
2007/01/25(木) 23:13:37ID:vy4zHB8Rそれを考えるのが正しいのだし、解法は何通りもあるわけで
マニュアルがないとゲーム開発が出来ないわけじゃないだろ?
そもそもJavaと何の関係もない
0746名前は開発中のものです。
2007/01/26(金) 01:34:06ID:N/LVhBmnシナリオファイルから読み込んだ際に管理クラスがオブジェクトを作成して
必要な時はそれを使うようにしてる。
0747名前は開発中のものです。
2007/01/26(金) 10:47:13ID:pkjLw+pgゲームにおけるデータ構造・クラス設計・パターン
http://pc10.2ch.net/test/read.cgi/gamedev/1155209226/
0748名前は開発中のものです。
2007/01/27(土) 23:16:36ID:G5nenmLn無意味な誘導に見える
0749名前は開発中のものです。
2007/01/27(土) 23:53:20ID:hFlZJXQyだが、そうではないだろ
0750名前は開発中のものです。
2007/01/28(日) 00:07:53ID:2uWkx2df0751738
2007/01/28(日) 03:47:32ID:rcpB4oX3EnumMapで実現する事が可能でした。
しかし、dojaなので使う事は出来ませんでした。
ただ、EnumMapを知らなかったので、列挙型についてあれこれと調べる内に知識が付きました。
大変感謝しています。
結局、上手いやり方が見つかるまで、
各職業毎にインナークラスでスキルを持ち、
習得時にインナークラスを作成してPlayerクラスのVectorに突っ込んでやる事にしました。
747さんのスレは、非常に参考になりそうなのですが、
レベルが高過ぎてちょっと参加出来なさそうです。
いえ、何もこのスレが自分みたいにレベル低いかというとそういうわけじゃないのですが
いつか参考に出来るレベルになった時に閲覧したいと思います。
今後は設計に関しての話題は自粛したいと思います。
なんだかすいませんでした。
0752738
2007/01/28(日) 03:54:34ID:rcpB4oX3return (Skills)Class.forName("skills."+jobName+"$skill"+No).newInstance();
}
try~catch文は省略していますが
この様にして内部クラスをオブジェクトとして得ました。
例としてSoldierクラスの内部クラスです。
public static class skill1 extends Soldier{
public skill1(){
skillName="剣士1";
}
}
JVMがstaticに関してどのタイミングでメソッドをロード?するのかは
分かりませんが 上述の通り、「上手いやり方」が見つかるまでこれで行こうと思います
初心者なのに、dojaはきついなぁ…
String.splitもStringTokenizerも無いので自分で作ってます…
0753名前は開発中のものです。
2007/01/28(日) 12:06:30ID:caDqapimそういうスレがあるはずだから
また、容量が少なかったり速度が出なかったりするような環境の場合、
本来あるべきアルゴリズムを端折ることが多いから勉強にはむかんね
0754名前は開発中のものです。
2007/01/28(日) 20:06:02ID:ItnxVFSkSkill を扱いたいのか Skills を扱いたいのかよくわからんが
int でナンバー振ってサブクラスがガチガチに定義するんなら
Skill の配列かリストで済むんじゃないのか
public abstract class AbstractJob implements Job {
protected Skill[] skills;
// ジョブのスキルを返す
public Skill getSkill(int no) {
return skills[no];
}
}
というかリフレクションの使いどころを完全に間違えてる
あれはいざという時に使う伝家の宝刀みたいなものだ
0755名前は開発中のものです。
2007/01/28(日) 23:07:22ID:caDqapimdojaとかいってることからしてそういう目的ではないだろうしな
RPG用フレームワーク作るんです!とかいうのならなおさら
基本的にメソッド先で生成したオブジェクトを返すって使い方はしないよ
自前で登録してコンテナへ登録、もしくはコンテナが自動的に生成のどちらかかと
そしてコンテナからインスタンスを取得する。場合にっては使いまわしたり
0756738
2007/01/29(月) 00:36:23ID:X8Jeor0Aお二方とも有難うございます
稚拙なコードを晒すのは恥ずかしいですが、本当に勉強になります。
生成時にコンテナに追加という形でやってみたいと思います。
754さんの意見も大変参考になります。感謝しています。
0757名前は開発中のものです。
2007/02/17(土) 08:06:32ID:L15CXcqa古い記事だけど起動が遅いのは今も変わらないよな
ttp://www2.plala.or.jp/Cool/okite/red02.html
■Flashで動作する3Dエンジン「Papervision3D」
ActionScriptに浮気したくなる今日この頃
ttp://gigazine.net/index.php?/news/comments/20070212_papervision3d/
0758名前は開発中のものです。
2007/02/17(土) 15:10:04ID:5v908nqHアプレットがすさまじかったのは原因はネスケで使ってたシマンテックJITの出来の悪さだろ
あれ起動中にネイティブに全部変換してる
おかげで1.3から標準でHOTSPOTVM搭載されるようになってVMのサイズが何倍にも膨れ上がったわりに
起動時間は何分の一にもなった
その後VMの起動速度はゆるやかに改善されていくことになるがJavaSE6は起動が急にはやくなったのは確か
適当なWEBに置くコンテンツとしてはFlashなりなんなりでいいだろう
ただ、規模がある程度大きくなり本格的なアプリとなれば別
0759名前は開発中のものです。
2007/02/24(土) 22:19:26ID:/rYZcxU7http://edony.tuxfamily.net/~grad/arkanae.tuxfamily.org/en/index.html
ソースコードもあり
こんなのがあったとは知らなかった
0760名前は開発中のものです。
2007/02/25(日) 00:29:28ID:PImIuZ8Lプログラミングを行う観点で見れば、
「開発環境死亡・ライブラリ設計死亡・Flash9でもJITの性能しょぼい」
と選択肢にも挙がらないぞ。
アニメーション作成ツールとして見れば素晴らしいが、
残念ながらアプリ開発には使い物にならない。
0761名前は開発中のものです。
2007/02/25(日) 12:31:39ID:6L67UnbH0762名前は開発中のものです。
2007/02/25(日) 19:01:35ID:LGf8AXIi「使い物にならない」のがFLASHなのか、おまいのプログラム開発力なのか、世の中の「FLASHアプリケーション」でも見ながらもう一度考えてみるんだなw
0763名前は開発中のものです。
2007/02/25(日) 21:47:35ID:o7vkhh81出来ることできないことがあってFlashはまだまだ制限は多い
アプリの種類によってはFlashでもいいこともあるが、開発コストとかそういうのもみてからな
0764名前は開発中のものです。
2007/02/26(月) 03:01:50ID:3IqZBjOxPhysics For Games Programmers
http://www.amazon.co.jp/exec/obidos/ASIN/159059472X/
0765名前は開発中のものです。
2007/02/26(月) 21:37:19ID:g0XTbe0A0766名前は開発中のものです。
2007/02/26(月) 22:47:55ID:YymhnNULttp://www.apress.com/book/supplementDownload.html?bID=418&sID=2642
0767名前は開発中のものです。
2007/02/27(火) 17:21:30ID:ZjZJQFQd初心者なのですが、こういう感じのはFlashで作った方が簡単なのですか?
0768名前は開発中のものです。
2007/02/27(火) 17:56:16ID:B4ufeums0769名前は開発中のものです。
2007/02/27(火) 18:54:43ID:ZjZJQFQd本屋行ってJavaの参考書を見てきます。
0770名前は開発中のものです。
2007/02/27(火) 19:00:07ID:B4ufeums比較的新しい書籍でもなぜか10年前のJavaの環境用につくっていたりするし
>>11のところにあるライブラリやゲーム、過去の日記がわりと参考になる
0771名前は開発中のものです。
2007/02/27(火) 19:02:10ID:OwhxanSJもちろん java で覚えた事は他の言語でも役に立つけど。
つまり初心者が目的の作品を完成させるまで、
という意味では flash の方が簡単。
プログラミングそのものに興味があるなら java
それらしいものを作りたいだけなら flash でいいとおもう
0772名前は開発中のものです。
2007/02/27(火) 19:10:29ID:IkeFh1JT保守性考えたらjavaだよな。
javaゲームはハードウェアアクセラレータ効かんとバリバリの3Dとか無理だが。
0773名前は開発中のものです。
2007/02/27(火) 19:12:53ID:B4ufeumsだが、flashは開発環境がお粗末なのでお世辞にも初心者が作りやすいとはいえないのが癌
JavaSE6ならJavaスクリプト+Javaのライブラリという使い方も出来るがIDEのお世話になることも出来ないので
ある程度の規模になるときつい
0774名前は開発中のものです。
2007/02/27(火) 19:50:28ID:3CmlaFoIそれを避けるためのオマジナイが多いとか聞いたけどこれは本当?
あとは>>771に同意。
0775名前は開発中のものです。
2007/02/27(火) 20:47:13ID:IkeFh1JTバザールモデルの基本・・・
とか言ってみる。
結局間接的にOSSなライセンスされてんだし。
0776名前は開発中のものです。
2007/02/27(火) 21:20:09ID:1qONjX2aずいぶん長い間いじってる割に画面が小さくて見づらい、flashの方が簡単に作れるんじゃないの?音もかなり悪いし
0777名前は開発中のものです。
2007/03/01(木) 11:25:25ID:Q/MrFJlJけっこうゲームらしくみえる
0778名前は開発中のものです。
2007/03/01(木) 12:14:46ID:ycm+eBTUむしろFlashのほうが制限が大きすぎる
0779名前は開発中のものです。
2007/03/01(木) 21:03:18ID:8CEVVUMCアプレットからの利用では制限があったような気がする。
ひょっとしてJava1.1辺りでも波形を生成して発音可能?
0780名前は開発中のものです。
2007/03/01(木) 21:26:44ID:J8EC7Q4JAS2で3000行以上のコーディングが必要なもの書いてみろ。
開発環境は酷い、ランタイムエラーを吐かないで正直死ねるぞ。
0781名前は開発中のものです。
2007/03/01(木) 21:28:47ID:BnQANlH3それでもアポロ登場まではアプレット比較前提だが
0782名前は開発中のものです。
2007/03/01(木) 22:56:33ID:J3C3KVJNJavaSoundは1.3以上
>>781
ゲーム用途ならWebStartのほうがいいんじゃね?
0783名前は開発中のものです。
2007/03/02(金) 04:04:27ID:Isc+NXUT開発者がwebstartに対して無知だから使いこなせてないんじゃね?
鯖丸ごと立てるかホスティングしちゃう他国と違ってレンタルスペース主体の日本じゃwebstart置けないしね。
クリック一つで必要なもん全部落としてキャッシュして後は差分だけネット越し・・・他はスタンドアローンと同じってのは使う側から見れば楽で良い。
同じ事はMEのAMSで出来るけどあっちは実装依存ヒドスw
0784名前は開発中のものです。
2007/03/02(金) 12:01:55ID:AlxNYkg40785名前は開発中のものです。
2007/03/02(金) 22:28:33ID:e7ng/jU40786名前は開発中のものです。
2007/03/03(土) 00:52:32ID:LWiJuDbd0787名前は開発中のものです。
2007/03/03(土) 07:49:54ID:94HMLa1l0788名前は開発中のものです。
2007/03/03(土) 09:09:45ID:Lb6a9eHr0789名前は開発中のものです。
2007/03/03(土) 09:10:53ID:vVu9iFKK0790名前は開発中のものです。
2007/03/03(土) 12:49:41ID:e8MDKGEx0791名前は開発中のものです。
2007/03/03(土) 14:05:57ID:YkFSkvir0792名前は開発中のものです。
2007/03/03(土) 14:54:27ID:S2NfJpKC0793名前は開発中のものです。
2007/03/03(土) 16:27:50ID:cZ+W9Vw8更にJava Web Startもインストールしないと動かないんですね。
ttp://sdc.sun.co.jp/java/docs/products/javawebstart/ja/download-windows_ja.html
helloサンプルがダウンロードになるので、混乱してしまった。
今のところJava Web StartはWindows版だけ?
0794名前は開発中のものです。
2007/03/03(土) 17:03:50ID:nfMBIjTB0795名前は開発中のものです。
2007/03/03(土) 17:31:56ID:cZ+W9Vw8夢のJava Web Startのデモが動いた〜
ttp://java.sun.com/products/javawebstart/demos.html
もう少しアクションするゲームが見たかったなあ
なぜか日本語サイト行くと動かないです。
0796名前は開発中のものです。
2007/03/03(土) 17:40:52ID:6WDz0MUgjdkだけだった?
0797名前は開発中のものです。
2007/03/03(土) 17:51:56ID:lyCQr1W4ttp://www.java.com/ja/download/faq/java_webstart.xml
>Java Web Start ソフトウェアの入手
>Java Web Start ソフトウェアは、Java Runtime Environment (JRE) のコンポーネントで、JRE と一緒にインストールされます。
0798名前は開発中のものです。
2007/03/03(土) 18:13:05ID:xt9rX0Kwブラウザ閉じればまたダウンロードが入ってしまう
あとは署名関係が5.0から柔軟になったのでライブラリが使いやすくなったというのは大きい
0799名前は開発中のものです。
2007/03/03(土) 21:37:25ID:4m5N8dVe0800名前は開発中のものです。
2007/03/03(土) 23:59:20ID:sBNSOExJだったと思うのだけど...
0801名前は開発中のものです。
2007/03/04(日) 00:33:57ID:u4tLbN0aブラウザのディスクキャッシュがある
>>800
sunがハードウェアアクセラレータ利かす前にcocoaと統合してOpenGL使っちゃったから描画周りが違ってたり、5.0の途中までしか出てない。
0802名前は開発中のものです。
2007/03/04(日) 01:51:19ID:KQd1C5T20803名前は開発中のものです。
2007/03/05(月) 22:47:43ID:b9ULYpEbhttp://fivedots.coe.psu.ac.th/~ad/
http://fivedots.coe.psu.ac.th/~ad/jg/
http://fivedots.coe.psu.ac.th/~ad/jg2/
0804名前は開発中のものです。
2007/03/06(火) 14:55:45ID:VaqQcumjPro Java 6 3D Game Development(発売予定)
Killer Game Programming in Java
0805名前は開発中のものです。
2007/03/07(水) 04:01:52ID:uOMRHvf+同じ Java5 SDK、同じ DirectX8(笑) を入れたはずなのに
2k で普通にサクサク動く画面が me ではものすごく重くて意外。
ウィンドウモードでのゲームを作りたくて、
あらかじめ BufferedImage から int[] を取得しておいて
そいつに描画して JFrame に貼り付ける、という処理を
wait() と Timer、notify() を組み合わせる常套手段で回してるんだけど
このどこかで 9x系 = 本質的に 16bit てのが足かせになってるのかな。。。
タイマの精度か、synchronized のコストか。。。
今まで C++ で書いてた時は、ここまでの差は見た事なかったんで
ちょとショックですた。。。
0806名前は開発中のものです。
2007/03/07(水) 11:55:36ID:zPOySlRdソフトウェア描画は60fpsやるなら320*240くらいが限界だね
0807名前は開発中のものです。
2007/03/08(木) 06:19:38ID:K32nYRwNdirectX9以降のカード+ドライバだとdx8の対応がいい加減になって来てる。
まあ、javaが5.0ならハードウェアはあんま期待出来んが・・・
0808名前は開発中のものです。
2007/03/09(金) 02:15:59ID:De8bQ7Op色深度は両方とも32bit。
カードは6年前のDX8全盛期のもの。
だからおいらなかなかDX9に手出しにくいのですよ。
そんなわけで今プロファイラ勉強中。楽しくて萌え。いや萌えとかないけど。
0809名前は開発中のものです。
2007/03/09(金) 02:36:59ID:uJO/ivat組み方によっては差が出るだろうね
プロファイルとればどこが遅いのかすぐにわかるはず
勉強することもないのでは?
IDEが一発で円グラフや棒グラフでビジュアル化してくれるし
0810名前は開発中のものです。
2007/03/09(金) 04:25:06ID:dk7DCFktこりゃベンチマークでマシン側の2Dと3D性能調べた方が良いね。javaの問題じゃなさそう。FF11がDX8世代だからちょうど良いと思うよ?
後はまあ、メモリの転送速度とか?java自身は十年前でも徹底的に叩きあげればそれなりに出たからね。
下手するとDX8末期に出た
イリュージョンのエロゲすら危ういかもしれんし・・javaで演算量を馬鹿みたいに増やしたベンチ組むと顔出すかも。
5.0だと初めから性能が大方バランス良く出てるから叩き甲斐の無いイケナイ子になってしまって残念。
6.0なんてそりゃあもう・・・再コンパイルなしであの速度はビビった。調教師いらねぇ。
けどサポートがxp sp2以降なんだよね。
vistのドライバが出そろってから乗り換えようと思ってる奴には正式サポートはなしですか?
0811名前は開発中のものです。
2007/03/09(金) 10:54:20ID:pyER6LIF6.0っつーのはJava SE 6のことか?
どうでもいいことかもしれんが、Java SE 6のサポートはWindows2000以降
(厳密にはWindows2000以降とは書かれてないが面倒なので他バージョンは省略)。
XP SP2以降でなければならないとはどこにも書かれていない。
ていうかすでにSunは6.0といった名称は使っていない。Java SE 6。
こういうことは調べてから書いてくれよな。
そういう俺はWindows2000ユーザー。
サポートがXP SP2以降とか書いてあったので焦ったぜ。
0812名前は開発中のものです。
2007/03/09(金) 12:18:07ID:e7LFbbBG動くがsp2移行にしろインストール続けるか?って聞かれた。
システム要件の所にはサービスパックの事までは書いてないはずだし。
書いてあるのは98,MEはサポート外ってだけ
0813名前は開発中のものです。
2007/03/09(金) 21:59:28ID:9+hAo8dr> Javaのゲームの本たくさんあるけど、比較的まともなのは14歳からとかいうやつだけだったような
そう、15歳からはじめる Javaゲームプログラミングとかいう題名の本、結構良いよね。
とにかく、読みやすいし、アクションゲームの基礎をきっちり学べる。
画像、MIDI,、wav、地形スクロール、タイマー とか。
ただし、この本を買うのは恥ずかしい。
あと、はがきを送ると、オマケPDFがもらえるとあるのだが、まったく返事なかった。
サポート宛にメール送っても返事も返さない出版社である。
0814名前は開発中のものです。
2007/03/09(金) 23:51:00ID:QfQeHSSr0815名前は開発中のものです。
2007/03/10(土) 08:06:06ID:5n5eAt2115歳からはじめるjava〜は当たりだった。
pdfはこれか
ttp://www.rutles.net/books/134.html
だれかこれ読んだ事ない?
ttp://www.amazon.co.jp/Javaゲームプログラミング-アルゴリズムとフレームワーク-長久-勝/dp/4797318422/ref=pd_sim_b_3/250-1688549-7177063
0816名前は開発中のものです。
2007/03/10(土) 09:32:39ID:4+e7EI8M0817名前は開発中のものです。
2007/03/10(土) 11:21:26ID:+DX9YtFE古いJavaで動くように書かれてるんだよね。
新しいJavaを使いたかった俺としては少し物足りなかった。
0818名前は開発中のものです。
2007/03/10(土) 12:10:01ID:xgekqMwwエロゲでも作る?
>>817
1.4.2,5.0,6と全部別モンだから新しいっても書く方はバージョン毎に出せるよね。
何処ぞのeclipse本の様に
0819名前は開発中のものです。
2007/03/10(土) 12:30:12ID:/HVMBhqBどの本について?
>>818
最新版対応とかかかれていて1.1時代のコードの本大量にあるから困る
音を出すにはauファイルにコンバートしましょうとかみると泣けてくる
なんで10年前のままなんじゃぁと
0820名前は開発中のものです。
2007/03/16(金) 02:12:26ID:xob5GmNSやさしいJava第二版なんて5.0対応とか言って触れてる言語仕様は前版(1.4.2)のままで5.0仕様には一切触れずにコードもなく加筆しただけだった気ガス・・・
ただ単にこの本のサンプルコードがそのまま5.0のコンパイラ通るだけ。
当たり前だのくryと言いたい所だが小一時間・・・
0821名前は開発中のものです。
2007/03/21(水) 20:05:26ID:PxlWoCAm[Javaでゲーム作りますが何か?]ttp://javagame.main.jp/
を見ながらコーディングしています。
[ボールを動かす]http://javagame.main.jp/index.php?%A5%DC%A1%BC%A5%EB%A4%F2%C6%B0%A4%AB%A4%B9
で挙動が理解できないことがあります。
サンプルどおりうつと、おもったどおりなんですが、クラス構成を変更すると、移動元のボールが削除されず、棒状態で描画されてしまいます。
ソースをミテモ理由が分からなかったのでコメントをもらえないでしょうか?
・変更後クラス構成
Sample.class
MoveBall.class
MainPanel.class
・実装
Sample -> main()があり、main()内ではMoveBallインスタンス、MoveBall.work()呼び出し の2つ
MoveBall -> サンプルとほぼ同じ、main()内のインスタンス化を削除、main()内の処理をwork()に変更
MainPanel -> サンプルと同じ
・環境
JDK1.5.0_11
Window Vista
0822名前は開発中のものです。
2007/03/21(水) 20:14:18ID:p5zCnQO1ソースあっぷしてもらわんと
0823821
2007/03/21(水) 21:52:26ID:PxlWoCAm自己解決しますた。
>>822スマソ、おっしゃるとおりでした。クラス構造はまったく関係ない箇所でした。
何がおこったのか簡単に書いておきます。
MainPanel(JPanelのサブクラス)内に、コンポーネントを描画するメソッドとしてpaintComponent()があるのですが、その中で
paintComponent(Grahics g) {
super.paintComponent(g);
//以下青いボールの描写が続く
}
と書く箇所で、以下のミスをしていました。
super.paintComponents(g);
本来JComponent.paintComponent()を呼び出すのを、Container.paintComponents()を呼び出してしまったのが原因でした。
#JComponent.paintComponent()とContainer.paintComponents()の違いは良く分からず
ttp://java.sun.com/j2se/1.5.0/ja/docs/ja/api/javax/swing/JPanel.html
0824名前は開発中のものです。
2007/03/21(水) 22:02:54ID:p5zCnQO1普通にfillしたらええ
0825821
2007/03/21(水) 23:10:05ID:PxlWoCAmしかし現状ではなぜ必要/不必要なのか、分かりません。
Java Tutorialに引き篭もってきます。λ............
ttp://java.sun.com/docs/books/tutorial/ui/index.html
0826名前は開発中のものです。
2007/03/22(木) 00:48:34ID://UyzQId0827名前は開発中のものです。
2007/03/29(木) 03:53:53ID:V9bhDi93自分で調べてもこれ以上わからなかったので、お力を貸して頂けないでしょうか?
単純に、Sun のチュートリアルのとおりに排他的にフルスクリーン化しました。
↓のようにゲームループを作って、アクティブレンダリングを行い、
もちろん bufferStrategy を使ってページフリッピングを行っています。
↓のを1秒間に実行できる回数が、ウィンドウモードに比べて
フルスクリーンだと激減します。(→800x600x32xUNKNOWN)
do {
update();
Graphics2D g = (Graphics2D)bs.getDrawGraphics();
rendering(g);
g.dispose();
if(!bs.contentsLost()) bs.show();
}
これが、αを使ったりすると、ウィンドウモードでは 40fps 出るのに対してフルスクリーンでは 3fps。
明らかにお前のやり方間違ってるということですよね。
rendering(g) をコメントアウトしたときでも、ウィンドウモードは 1000fps、
フルスクリーンで 60fps でした。この60という数字を見るとふと505さんの発言に関係している気がしたんですが、
調べてもわかりませんでした。ここを見れば?でも結構ですんで、よろしくお願いします。
0828名前は開発中のものです。
2007/03/29(木) 09:34:49ID:DOhi2zRK0829名前は開発中のものです。
2007/03/29(木) 16:17:47ID:TdF2VMR1あとJava2Dのアルファブレンドはソフトウェア描画なのでネイティブなVRAMにバッファが置かれると大幅に遅くなる
そもそもフルスクリーン時で、というか高FPS時にイベントベースでの描画はつかうものではないぞと
0830名前は開発中のものです。
2007/03/29(木) 17:47:03ID:QM1oZ8YSそれを使ってて描画速度を上げる為のものじゃないってイメージだったけど
それで合ってるって事かな?
0831827
2007/03/29(木) 18:09:59ID:V9bhDi93800x600 のウィンドウを作ってます。フルスクリーンでは 800x600x32 にしました。
ウィンドウの初期化時にフラグでフルスクリーンとウィンドウモードを場合分けしてます。
要するに描画ルーチンはウィンドウモードでもフルスクリーンでも
同じゲームループ(上に描いたやつ)を使ってます。
αを使ったら激遅になるのはわかってますが、αを使ったときに
フルスクリーンでここまで遅いというのが納得いかなかっただけです。
このやり方ってイベントベースっていうんですかね…。
フルスクリーンにすると処理範囲も狭くなるし、排他的に画面全体を使うとなると
う〜む、どう考えてもフルスクリーンの方が速いはずではないんですかね…。
一応、大枠はここのやり方を真似てるつもりです。
ttp://fivedots.coe.psu.ac.th/~ad/jg/ch03/index.html
0832名前は開発中のものです。
2007/03/29(木) 20:38:15ID:TdF2VMR1あってない
0833名前は開発中のものです。
2007/03/29(木) 20:42:13ID:TdF2VMR1フルスクリーン時描画してるのはVRAM
ウインドウ時描画しているのはメモリ内ビットマップ
あわせるのならまずメモリ内のバッファで描画をしてそれをVRAMへ転送とする
描画の仕方が大幅に違うのだから速度も大幅に違うのは当たり前
イベントベースってのはみまちがいだったようだ
updateというメソッドがあったのでな
0834名前は開発中のものです。
2007/03/30(金) 10:14:03ID:CxiJR9tXRPGを作っていて、
マップと自キャラを表示するところまでは
作ったのですが、NPCを表示させる
いい方法が思いつきません。
背景画像のように、固定ならいいのですが、
動き回るNPCをうまく表示できません。
効率のいい表示方法があれば教えてください。
いまは、
1.背景描画
2.自キャラ描画
3.表示範囲内にいるNPCを探し、描画
今は、この3の処理が無駄な動きになっている
気がします。
0835名前は開発中のものです。
2007/03/30(金) 14:54:44ID:QwdAmNT9とりあえず MVC でやってみると単純になるよ。
1. モデルを次の時間に進める (キャラ座標の計算など)
2. ビューがモデルの内容をまとめて描画 (キャラの座標は 1. で計算済み)
あと表示範囲内の判定はJVMも勝手にやってくれるので、必要になったら実装でいい。
0836名前は開発中のものです。
2007/03/31(土) 14:47:41ID:aOuaJNjw画面に表示されないから無駄かもしれないけど、マップのキャラクターが多くなってもそんなに重くはないんじゃ・・・
0837名前は開発中のものです。
2007/03/31(土) 15:21:06ID:bPcXSKJZクリップ外に描画すること自体は重くはないのだが、
その前にテクスチャ座標とか計算して渡す処理だけははいるから
重くはならないというのは間違い
画面外かどうかの判定なんてスプライト描画処理で一括して扱うだろうからいれとけ
最初はまったく処理をしないラッパでいいから
0838名前は開発中のものです。
2007/04/02(月) 00:03:15ID:0q+4yudy0839名前は開発中のものです。
2007/04/02(月) 11:01:35ID:M2CzSpdn画面外のキャラも、さほどの数にはならないので、
描画する方向で作成してみます。
0840831
2007/04/03(火) 01:04:07ID:Wawfbgtrう〜む、色々試してますがウィンドウで BufferStrategy 使った場合も
VRAM直…ではないんですかね…
505さんの
>フルスクリーン時は垂直同期取るのに対してウインドウモードは取らない
って何か関係してませんかね?そもそも垂直同期って言葉自体なじみがなかったんですが、
垂直同期を取ってるのでいくら処理が速くても bs.show でリフレッシュレート以上に
ならないようになってる、と考えるのは間違いですか?
それだとしてもα使って 3fps って明らかな処理落ちか…う〜む…
0841名前は開発中のものです。
2007/04/03(火) 02:08:11ID:tJ3eBjgjVRAM直になるかはVM実装(つまり環境)依存
でも問題はなかろう?
Windowモードと同じようにいったんメモリ内で作ればいい
どういうゲーム作ろうとしているのかにもよるけど
あとは逆に積極的にハードウェアアクセラレーションを使うという方法もある
>>11のところでOpenGL対応してJava2D以上の表現が可能になったようだ
Java2Dはゲームで多用する加算合成がないしね
0842名前は開発中のものです。
2007/04/03(火) 11:37:06ID:QAPO4Fq8これスゲーな
0843名前は開発中のものです。
2007/04/03(火) 16:29:50ID:Js4qFq6o前見たときあまり内容無かった気がしたが地味に進めてるのね
今後に期待しとこ
0844名前は開発中のものです。
2007/04/04(水) 12:34:42ID:xNft8wzX確かに遅すぎるようにも思うが、それだけの情報じゃ何とも言えない。
α使わないようにしてみたり、rendering(g)の中身を1行ずつコメントアウトしてみたりして原因をもっと追求してみたら?
フルスクリーン時にのみ毎回妙な処理してたりしないかい(毎回DisplayMode変更してたり…さすがにそれは無いか)
ともかく・どの部分で遅くなっているか・現象を再現できる最小限のコードはどんなか をもっと追求した方がいいと思うよ。
0845名前は開発中のものです。
2007/04/05(木) 23:12:06ID:IyGK/jzk使ってる奴居る?
0846名前は開発中のものです。
2007/04/06(金) 00:02:37ID:xOHyAwJg0847840
2007/04/06(金) 21:28:03ID:/J9SjvCfrendering(g)の中身を1行ずつコメントアウトしてみたりってのは
やってるんですが、rendering の中身を空にすると今度は bs.show で
時間かかってたりして、どうにも思うように動いてくれないんですよね。
つまり、プログラムの動作速度をはかって原因を探るだけでは解決できず
そこで、ここで皆様の力を借りようという経緯です。
コードはどうあがいても結局 60fps になってるんですよね…。
BufferStrategy は実装依存、なんですね。
15歳から始めるJava〜ではウィンドウのみのサンプルがあって
そこで「BufferStrategy はビデオメモリに直接書き込むので高速」と
断言してあったような気がしてそこは疑ってませんでしたが。
実装依存としてウィンドウモードと同じ方法を用いる、という方法は
そういえばまだ試してませんでしたね。一度試してみます。
0848名前は開発中のものです。
2007/04/07(土) 02:14:29ID:2RXqF7NFだからメインメモリでの描画はどうなんだと
0849名前は開発中のものです。
2007/04/07(土) 07:28:23ID:Y1V3BpGY0850名前は開発中のものです。
2007/04/07(土) 08:23:33ID:2RXqF7NF0851名前は開発中のものです。
2007/04/07(土) 11:27:10ID:GIyVfDKh指定するとD3D。javaでのOpenGLとD3Dの基本的な使い方は同じで
どっちも極力VRAMに置こうとする。
けどだからと言って早くなるわけじゃない。
0852名前は開発中のものです。
2007/04/07(土) 16:20:47ID:2RXqF7NF遅くなる原因はわかると思うぜ>>840
BufferStrategyそのものが問題じゃないんだよ
Java2Dでゲーム開発ならBufferStrategyはどんな状況においても必須だし
0853名前は開発中のものです。
2007/04/09(月) 09:45:56ID:uR3mQ2BLIPAフォントのライセンス違反してるからライセンスのリンク貼ってやろうかと思ったらCGIに怒られた・・・。
不明な処理って何ざんす?
スレチスマソ。
0854名前は開発中のものです。
2007/04/09(月) 10:53:28ID:dS/RvBxGあとそこのサイトのコードバグもちなのでそのままつかわないこと
もしくは参考にしないこと
0855名前は開発中のものです。
2007/04/09(月) 11:16:24ID:TJO4g1v+配布方法に問題があるとか?
0856名前は開発中のものです。
2007/04/10(火) 03:26:17ID:ZXpjg5Ty良く嫁。
ttp://www.grass-japan.org/FOSS4G/license-ipafonts.eucjp.htm
GRASS GIS / MapServer / PostGISのどれかに同梱される形でのみ再配布可能。
かつ、フォントがIPAフォントである事を明示し、上記ライセンスを配布物に同梱しなければならない。
更に同ライセンス条項3)。
つーか、IPAフォントの単体配布が出来るならわざわざスターオフィスのパッケージ版なんて買わね。
0857名前は開発中のものです。
2007/04/10(火) 03:49:48ID:t/2fHoZt他ソフトウェアからの利用がライセンスに含まれてない。
自分とこで作ったソフトに使うためにわざわざ商用フォントベースで作ったんだから当然だが・・・。
んでIPAフォントの権利持ってんのはオークニーだから聞くならこっち。
0858名前は開発中のものです。
2007/04/10(火) 10:08:56ID:HEVeN1vjhttp://pc11.2ch.net/test/read.cgi/gamedev/1086858349/
の>>655です。お時間のある方、もしよかったら
講師になっていただけませんでしょうか?
【初心者】スレを立てる前にココで質問を【Part14】
http://pc11.2ch.net/test/read.cgi/gamedev/1175521815/
ここの>>26の質問にも答えていただけると幸いです。
マルチをしてすみません。
お手数おかけして申し訳ありませんが
レスは該当スレにてお願いいたします。
0859名前は開発中のものです。
2007/04/10(火) 10:25:29ID:tXE5CmGvJAVAで最短経路探索(A*)を組みたいのですが、
よいサンプルがあれば、教えてください。
0860名前は開発中のものです。
2007/04/10(火) 10:33:35ID:E2YWJL/Pまずgoogleなどで検索してみよう
0861名前は開発中のものです。
2007/04/10(火) 22:10:47ID:0Wd+5rPi管理人なんですが忠告ありがとございます。
IPAフォントのライセンスよんだんですが「当該ソフトウェア」って自分のソフトウェアと勘違いしてました。
即刻他のフォントに入れ替えます。
0862名前は開発中のものです。
2007/04/14(土) 00:50:15ID:2lk0UE8X>>815の ゲームプログラミング-アルゴリズムとフレームワーク-長久-勝
は内容的にはjdk1.4.2の時代に1.1でも動くようにと書かれているので現在からすると
古すぎる感は否めないのですが、自分はこれでリフレクションを覚えたりしたので
懐かしくてレスしてしまいます。
でもその後、雑誌などを読んだ限りではリフレクションはあまり推奨されてないんですよね。
保守性が落ちるとかで。趣味な自分はへろへろ無駄に使ったりしてますが。
0863名前は開発中のものです。
2007/04/14(土) 09:46:28ID:EazSdGuNアノテーションが使えるようになってからは必須事項だよ
0864名前は開発中のものです。
2007/04/15(日) 14:22:41ID:Do4UH/Boこっちできいてみれば?ちなみにタスクシステムを作るのは可能。っていうかタスクシステムはデータ構造とクラス設計の話だから言語に由来することはないです。
↓
タスクシステム総合スレ
http://pc11.2ch.net/test/read.cgi/gamedev/1173708588/
0865名前は開発中のものです。
2007/04/15(日) 16:02:43ID:yPdKGk0jオブジェクト指向が使えない時代のお話。
0866名前は開発中のものです。
2007/04/15(日) 21:33:34ID:JKlRxbBA0867名前は開発中のものです。
2007/04/15(日) 22:29:58ID:gWanPSzjこの企画は…構造自体が不幸を孕んでいたのだ。
戦犯はいない。
理解できない、根源から違った存在がいただけだ。
誰にとっても。
本当なら決して出会うことのなかった、才能も、経験も、熱意も、人脈も、
何もかも違う人々に関わってしまった事自体がお互いに不幸だった。
つまり…関わった時点で無残な結末が予定されていたのだ。
今はもう…その不幸を呪い、やがて忘れる時を待つしかない。
0868名前は開発中のものです。
2007/04/16(月) 12:26:43ID:avbdJuoPオブジェクト指向言語でタスクシステムが不要にはならないよ。むしろより簡潔に書ける。
マルチスレッドとかコンカレント関連のAPIのない時代でもあるまいし、というしてきなら、いいたいことはわかる。だがまちがっているけどね。
0869名前は開発中のものです。
2007/04/16(月) 12:35:17ID:uVwoDyO/0870名前は開発中のものです。
2007/04/16(月) 12:57:04ID:ZWSYWvOP0871名前は開発中のものです。
2007/04/22(日) 11:10:51ID:QxABkYInの★のところなんですが、パネルを渡してもnullを渡しても同じように描画できるんですが何か意味あるんでしょうか?
0872名前は開発中のものです。
2007/04/22(日) 12:01:41ID:OQsH7rKB★にImageObserverを渡すと、ロードの完了を通知してもらえたりする。
0873名前は開発中のものです。
2007/04/22(日) 12:50:31ID:caMfTdAsネトゲだとしてもそのへんは自前でコントロールするわけで。
0874名前は開発中のものです。
2007/04/26(木) 09:04:29ID:LGVs5GvF0875名前は開発中のものです。
2007/05/03(木) 18:13:48ID:GHCrYaAw保存しておいたと思ったけどなくしてしまったorz
0876名前は開発中のものです。
2007/05/04(金) 00:25:28ID:Z9OOsWLshttp://gamdev.org/up/img/9407.zip
0877名前は開発中のものです。
2007/05/04(金) 08:24:01ID:2lM108GLアップしていただけてうれしいんですがそれこのスレですorz
0878名前は開発中のものです。
2007/05/04(金) 14:31:17ID:Z9OOsWLshttp://gamdev.org/up/img/9411.zip
0879名前は開発中のものです。
2007/05/04(金) 14:40:06ID:2lM108GLありがとございます。
おかげさまで見れました。
0880名前は開発中のものです。
2007/05/05(土) 00:18:32ID:E4gxwLZa何か大量に爆発させるときオブジェクトごとにTimerTask起動するのはあまりよくないような気がするんですがいい方法ないでしょうか?
0881名前は開発中のものです。
2007/05/05(土) 00:23:25ID:qNXdFV630882名前は開発中のものです。
2007/05/05(土) 00:37:49ID:Z2/Vlbj0関連性のないエフェクトだけ別スレッドというのはやってもいいけど(というか3Dはわりと普通気味)
そういうのはスレッドプールとか使うのが普通
こまめにON/OFFはとろいぞ
0883名前は開発中のものです。
2007/05/05(土) 07:46:38ID:E4gxwLZa結城さんのデザインパターン本のスレッド編にWorkerThreadの実装があったけどこれかな。
ttp://www.hyuki.com/dp/dp2_ch08.pdf
あとJakarta CommonsにThreadPoolっていうクラスがありました。
ttp://jakarta.jp/commons/components.html
調べてみます。
>>881
とはいってもスレッドプールも結局スレッドですよね。
スレッド使わずにアニメーションとかできるんでしょうか?
0884名前は開発中のものです。
2007/05/05(土) 10:37:03ID:Z2/Vlbj0スレッドをかんちがいしてないか?
ゲームで処理単位でスレッドは使う必要はない
使う場合同期等ちゃんと理解してから出ないとダメ
スレッドプールは標準APIにはいってるんだからそれを使えばいい
これはこまめにスレッドを生成破棄しないからタイマータスクの生成+破棄とはまったく動きが違う
言っている意味がわからないならスレッドは使わないで下され
0885名前は開発中のものです。
2007/05/05(土) 14:36:33ID:S0VZ5lLo普通にwhile文を使って、一こま毎計算して表示する。
スレッドは処理の種類によって必要なら使うと言う感じでは。
ある程度本格的なゲームPGの本とか、次の本辺りを読んでみれば分かると思う。
http://www.amazon.co.jp/dp/4627918615/
http://www.amazon.co.jp/dp/4501539208/
0886名前は開発中のものです。
2007/05/05(土) 20:16:15ID:2yfTJp2D>タイマータスクの生成+破棄
が
>タイガーマスクの生成+破棄
に見えた。
0887名前は開発中のものです。
2007/05/05(土) 21:13:20ID:LKYrIilRアンパンマンの顔のライフサイクル想像すると笑えるw
0888名前は開発中のものです。
2007/05/16(水) 02:33:22ID:qUFCPdNaこのスレ的には評価はどう?
0889名前は開発中のものです。
2007/05/16(水) 11:33:01ID:EfvfG/mQアクセラレーションもつかえないし、ネイティブのSDLもあんまりほめられたものじゃないけどね
0890名前は開発中のものです。
2007/05/16(水) 16:28:36ID:dKqdtDi9動画ならJMFのVideoRenderer実装してるんで間に合ってる。
他はCDへのアクセスとジョイスティックだっけ?
javaゲーをCD・・・。
0891名前は開発中のものです。
2007/05/25(金) 00:14:02ID:Odp2f4Vlとりあえず、BufferStrategyとかが1.4で加わったのは記憶にあるのだが、それ以降描画関係一切追いかけてないのでどのAPI使うのが最新手法なのかよくわからん
その辺の解説とサンプル紹介しているページキボンヌ
0892名前は開発中のものです。
2007/05/25(金) 04:15:14ID:xzeMUWWGSE5,6のJava2Dは内部実装が変わっただけで1.4以降から特に使い方が変わるようなAPIの変更はないよ。
強いていうならLCD向けアンチエイリアシングが強化されたのと、JOGLから描画パイプライン触れるようになったくらい。
アプリケーションプログラマには関係ないね。
だから1.4の事知ってりゃ、それが使える。
0893名前は開発中のものです。
2007/05/25(金) 10:07:11ID:gi7La1aohttp://www.javainthebox.net/index.html
それと、Java NIOは次の本が結構詳しい
Developing Games in Java
http://www.brackeen.com/javagamebook/
http://books.google.com/books?id=rSs35Uw11okC
0894名前は開発中のものです。
2007/05/25(金) 10:27:15ID:BH7EzlMXおかげでSwing+JOGLが5.0までとおなじ遅い動作しかできん
0895名前は開発中のものです。
2007/05/25(金) 19:17:37ID:GvMFqj5nプロパティ与えて起動すると描画がめちゃくちゃだからな。
そもそもゲームはSwingと相性悪いからAWTで良いよ。
0896名前は開発中のものです。
2007/05/25(金) 21:01:58ID:M11kx4roドライバの不具合ってほんの一部の話なら別にそのドライバが対応すればいいだけのこと
nVidia、IntelともにOpenGLを有効にしてもまともに動かないのだから原因は他にあるはず
0897名前は開発中のものです。
2007/05/25(金) 23:14:46ID:Odp2f4Vlレスさんくすです
参考にさせていただきます
それはそうと、今日15才からはじめるJavaゲーム製作だかなんだか言う本を軽く立ち読みしたのだが、
音楽とかタイマ関係まで一通りそろってそうでよさげだと思っている
ただ、心配なのが、ここで使ってるAPIて古い奴まじってたりしない?
わかる人、教えてくれ
0898名前は開発中のものです。
2007/05/25(金) 23:26:30ID:M11kx4ro許容範囲
Javaのゲーム開発本は大量にあるが唯一実用となる書籍として有名なやつだよ
新目なのに1.1対応とか、やってることがひどいとか参考にならないのが多いからね
@ITとかも平気で嘘のせるからAPIマニュアルとソース読むしかないというのが悲しい
とりあえずその本で一通りわかるようになったら次はたぶんOpenGlとかやるレベルだから中級まではそれでいいと思う
0899名前は開発中のものです。
2007/05/25(金) 23:47:07ID:Odp2f4Vlレスさんくす
土日勉強してみます
>そこのは1.4だったかな
>許容範囲
だよね
俺の会社(メーカー、ソフトハウスじゃないが、ソフトもそれなりに作ってる)もほとんど1.4しか使ってない
極たまに5.0のところあるが、6は使ってる部署0
0900名前は開発中のものです。
2007/05/26(土) 00:42:13ID:px/b9uk2あれの内容を完全に理解できたぜ!ってレベルなら一人でシコシコハードコーディングでもゲーム作れるんじゃないかと。
日本の企業が仕事で1.4系使ってるのは単について行けてないだけだよ。
エンドオブライフだからやめた方が良いんだけどね。5.0の新文法だけでも覚えた方が良い。
趣味グラマの間に使って覚えとくとか・・・。6.0は追う気がないならどうでもいい。
0901名前は開発中のものです。
2007/05/26(土) 01:00:42ID:3yf6+JCaツールも対応したし、アプリ鯖もJ2SE5.0対応したしね
今年に入ってからアプリ鯖もJavaEE5対応したのが出始めてきたから加速すると思う
効率が別次元なので今のうちに覚えておくといいかと
個人のゲームなら1.4を選択する必要はないしJavaSE6一択かと
仕事だと6は今は検証中だと思う
update1が出る前はほんとひどいバグもちだったし
ただ標準でJAXB2.0やJAX-WS2.0はいったのが面白いし5.0のときはほとんど強化されなかったAPIに
かなり手が入っているのもポイントでびっくりするほど使いやすくなったよ
0902名前は開発中のものです。
2007/05/26(土) 03:14:19ID:E/o29az5古いBroadVisionとか使ってる会社だと
今でも1.3onlyだな
つかうちもそうなんだが
0903名前は開発中のものです。
2007/05/26(土) 08:34:56ID:7uwRZyAG0904名前は開発中のものです。
2007/05/26(土) 10:15:56ID:6pNAZ0zx0905名前は開発中のものです。
2007/05/26(土) 10:56:51ID:OQbVauRb0906名前は開発中のものです。
2007/05/26(土) 11:08:04ID:J3LywcEw6はだめだが5.0はあるぞ
0907名前は開発中のものです。
2007/05/26(土) 12:43:35ID:OQbVauRb0908名前は開発中のものです。
2007/05/27(日) 22:13:07ID:8JpcMLEYついでに俺の金も無い
てことで、節約してnetだけで勉強しようと思うのだが、Javaでゲーム作りますがなにか?はどうなんですか?
自分が軽く見たところ、基礎からしっかりやってくれているみたいだが、ダメダメなところとか、注意するところありますか?
0909名前は開発中のものです。
2007/05/27(日) 23:31:08ID:wTM4DUzU目的がゲーム作成だけならライブラリ用意してすぐに開発に入ったほうがいいけど。
ただ、画像はImageIO使ってロードしたほうがいいとかバッファは現在のピクセルフォーマットとあわせるといいとか
Java2D細かい挙動が必要になったときがたぶんのってない。
まず>>908がゲーム開発自体はすでにしていてJavaでのやり方がわからないだけなのか
Javaはわかるがゲーム開発自体がわからないのか、どちらもわからないのかによってとるべき道は違うかな。
0910名前は開発中のものです。
2007/05/28(月) 00:08:25ID:kxuyYAlyJavaはそれなりにやってます(SE5.0、webアプリ開発)
会社の同僚と趣味でSE6勉強してます
最近勉強仲間がSE7だのクロージャだの言い出して、俺自身は最新テクノロジとかよりゲームの方が好きなので個人でゲーム勉強しようかと思ってます
ちなみに、グラフィック、swingは全く触ったことありません
学生時代awtすこし勉強したけど、それも研究室の新人研修だけで、忘れてしまいました
よろしく
0911名前は開発中のものです。
2007/05/28(月) 00:25:24ID:fdi5zjDiならそのサイトで軽く覚えるといいかと
あとはJavaに関係なくゲームの作り方を教えてるサイトもみること
流れとかそういうのはかわらんから
基本的にタイマーや垂直同期によって一定頻度でのループをつくり、1フレームごとに処理をしていく
まず最初にキーなどの入力>その後ゲームの処理処理>出力
出力する際逐次表示されているVRAMへ描画していくと描画途中が見えてしまうので
オフスクリーンバッファという見えない領域へいったん描画、出力時にコピーまたはフリップ(フルスクリーン専用)となる
基本的にイベントを取るのはキーボードくらいなのでawtやSwingはそんなに深く知る必要はないよ
0912名前は開発中のものです。
2007/05/28(月) 00:34:07ID:XL3m6L+U本格的なSTGも作れるようだし。
自分でフレームワークを作りたいというのなら上記の細かい仕組みを知る必要になるが。
0913名前は開発中のものです。
2007/05/28(月) 01:10:28ID:kxuyYAlyゲームは1日1時間てことで明日から1時間位づつゲーム勉強してみまつ
Javaでゲーム作りますが何か?のページ見てたらGTGEが面白そう
とりあえず、こいつの中身読んでみよっかな
なんか、やる気出てきたので週明けから暇であることを祈る
また、なにかあったらよろしく
0914名前は開発中のものです。
2007/05/28(月) 09:50:19ID:dR+mP3mE0915名前は開発中のものです。
2007/05/28(月) 11:32:44ID:ahItnJp8殺風景な業務用のコンポーネントがならぶだけではなく、フレームの中をボールが飛び跳ねてアニメーションしてるとか
DBとの連携やゲームとの相性の悪くないORマッピングとか、各種デザインパターンとかものにはなるし。
WEBアプリのフレームワーク側ではなくドカタ側にまわってると技術力とモチベーション低下が避けられないからね。
0916名前は開発中のものです。
2007/05/28(月) 14:22:09ID:dR+mP3mE去年まで4年以上ミドルウェアを開発してて、
上司の退職をきっかけにずっと前に出した異動希望が発動して、
グラフや統計などを使う研究用Webアプリを開発することになって、
プログラミング的には難易度が下がった。
とはいえ計画通りだし、年内は勉強しながらMyライブラリを作る。
2年ほどで作りたいのはトバルみたいなの。
0917名前は開発中のものです。
2007/05/28(月) 21:47:29ID:9APdzwvN0918名前は開発中のものです。
2007/05/29(火) 01:11:09ID:QU7Bv3WN0919名前は開発中のものです。
2007/05/30(水) 00:26:54ID:9qP8n2n40920名前は開発中のものです。
2007/05/30(水) 02:01:02ID:JwW2N6l20921名前は開発中のものです。
2007/05/31(木) 08:52:09ID:zC6v4guWゲーム製作本でなくても、描画とか同期とかキー入力とかゲームに関係あることが書いてある奴があれば教えて欲しい
レベルは基礎でも応用でもどっちでもいいです
あ、javaのAPIは無しね
よろぴこ
0922名前は開発中のものです。
2007/05/31(木) 11:46:26ID:ElLhOgmFAPIマニュアル見ながらテストするのが一番わかりやすかったりする
Javaの命令がわからない、という人ならそれでわからない問題ってのはたしかなかったと思う
ゲームの作り方そのものがわからないならJavaとか言語以前の話
0923名前は開発中のものです。
2007/06/02(土) 12:45:52ID:ySjBjTJY0924名前は開発中のものです。
2007/06/02(土) 12:47:59ID:KQGH3f1Aということだろ
だからある程度のゲーム開発になるとまともな本がない
あとは開発者の減少だろうね
昔はベーマガとか大量にゲーム開発のための本があったわけで
実際同人の開発者もほとんどがその世代である30代以上だ
Javaに限らんのよ
0925名前は開発中のものです。
2007/06/02(土) 14:19:19ID:4zeBTZ5e0926名前は開発中のものです。
2007/06/02(土) 14:33:58ID:bNMRwVZEやれることが少なすぎるから
ドコモが使ってないというのもあるかも
一応2.0からはやれることは増えたけど使いにくいかな
0927名前は開発中のものです。
2007/06/03(日) 11:38:31ID:foEaYR55定石としてはメインループで各スプライトに対して表示するイメージを切り替えるメソッドを呼ぶようにするんでしょうか?
0928名前は開発中のものです。
2007/06/03(日) 12:21:22ID:XU9gmanvスプライト100個出したら100個のスレッドがたちあがるってことかな?
そうでないにしろ、表示されるタイミングとスプライトの時間管理とのずれが問題になるよね
たとえば1フレームごとに点滅表示させるような場合、それらが同期取れてないのでずっと表示されたり
ずっと消えたままになるよね
各種オブジェクトは内部でカウンタを持って1フレームごとに呼び出されるメソッドで+1していくのが基本だよ
メインループ側(フレームワーク側)とは切り離して独立して動けるようにね
そうすると単体テストが容易になったりするし、見るクラスが1つだけなのでバグもでなくなる
外部からのきっかけがほしい場合はオブザーバーパターンを使えば汎用的になってなおよろし
小規模であまり深く考えないのならpublicなメソッドでもいいと思うけど
0929名前は開発中のものです。
2007/06/03(日) 23:30:45ID:NMJr+FyS完全非同期でも問題ないの?
0930名前は開発中のものです。
2007/06/03(日) 23:35:39ID:qjYqK/Lnスレッドの動く時間は保障されないし、逐次処理しても当たり前だが時間は常に動いている。
それと処理落ちとかした場合は?OSがリアルタイムでない時点でいくらでもあることだよ。
0931名前は開発中のものです。
2007/06/04(月) 01:03:47ID:LU4adZL70932名前は開発中のものです。
2007/06/05(火) 23:07:38ID:YHsxbudAレスサンクス。
auのオープンアプリレイヤーに興味あったんだけどこれからなのかな。
0933名前は開発中のものです。
2007/06/05(火) 23:14:12ID:geU+8UYE0934名前は開発中のものです。
2007/06/06(水) 21:05:44ID:WeNeu8ST何が問題なんでしょうか。
クリック時にエラーは出ません
0935名前は開発中のものです。
2007/06/06(水) 21:18:40ID:O774Z098わからないのなら正直NetBeansのほうがいいと思うぞ
必要なライブラリもクラスパス自動登録されるようにしてくれるし
0936名前は開発中のものです。
2007/06/06(水) 21:46:27ID:/nuanp7M同意してみる
eclipseの方が好きなの、ちょっと玄人向けの気もする
何でもかんでも後からplugin追加だからな
その点、NetBeansは何もしなくてもある程度使える
個人的には何もしなくてもWebアプリのプロジェクトがサクサク作られたのが気に入った
しかし、疑問なのはゲーム製作にしてもそれ以外にしてもIDEの話になると、ほとんどの書籍がeclipse使うよな
NetBeansはなんか問題(著作権とか?)でもあるのかね
0937名前は開発中のものです。
2007/06/06(水) 21:53:54ID:O774Z098去年のJavaのIDE TOPはNetBeansが選ばれてる時点で流れに乗れない人たちと思われ。
あとEclipseはプラグイン入れるだけでページ数稼げる。これポイント。
0938名前は開発中のものです。
2007/06/06(水) 23:20:53ID:WeNeu8STマニフェストファイルは作ってます
必要なライブラリはありません
大学がeclipseなのでそれを使ってます-`)
0939名前は開発中のものです。
2007/06/06(水) 23:58:27ID:IfzalnNn・マニフェストファイルがおかしい
・実行環境に問題がある
・そういうプログラムである
くらいか
マニフェストファイルをEclipseに生成させるようにしてJARを作成してみたら?
それで上手くいくようなら自作マニフェストファイルがおかしいって事になる
0940名前は開発中のものです。
2007/06/07(木) 13:02:37ID:vuPLnRCSプラグインを入れなくても、
リファクタリングとか、補完とかの機能が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:5Qk7KRILJBuilderとかになれてるとEclipseのほうが使いにくいのだ
EclipseはCTRL+スペースばかりに機能が統合されていてすばやく撃ち込む場合使いにくいのだよ
NetBeansも最近CTRL+スペースに集中してきて悪化している
ユニットテストとかライブラリとかはNetBeansのほうが使いやすいね
EclipseでまともにGUI開発できないってのはまぁ致命的といえば致命的だが
ゲームだとせいぜいコントロールパネルくらいだからどうでもいいか
あ、ゲームだと問題となるのが最新のJDKが推奨されるけど、
Eclipseは最新のJDKが使えない可能性が高いのが問題となりやすいかも
0943名前は開発中のものです。
2007/06/07(木) 18:06:19ID:vuPLnRCSなるほど。
JBuilderはほんとの初期しか使ってないから評価できないけど、
forループとかでイテレータ使うテンプレートが無かったのは覚えてる。
あと、sysoutとかで補完とかそういった細かい所は好みの問題だし、
慣れだからね。
確かにユニットテストはNetBeansのほうが良い。
Eclipseはわかってる人からすれば、なんてことはないけど
知らない人に説明するの面倒。
プロファイラも同じなんだよね。
Eclipseのプロファイラの重さはかなり致命的。TPTPとかもうね・・・・。
GUI開発に関しては、VEが一応ある。Matisse(NetBeansのGUIエディタ)も動く・・・・・・有料だけど。
コレが無料ならいいのだけどねぇ・・・・。
ただ、Matisseはソースは出力物であって、編集できない形だから俺はいまいち。
その点VEは編集しても頑張って再現してくれる。失敗も多いけどね。
俺の印象だと、
Eclipse 巨大な整理されていない道具箱
NetBeans 必要な道具だけが綺麗に整理されている道具箱
ある程度使えばどっちも生産性に差は無いと思う。
とくにゲーム制作に関しては。
0944名前は開発中のものです。
2007/06/07(木) 18:47:03ID:5Loz1nuSjava -jar ***.jarで起動させました
するとエラーが表示されました
eclipseには何も表示されなかったのに何故…
どうやらファイル入出力が拙いようでした
いろいろ弄って何とか解決できました
皆さんありがとうございました
0945名前は開発中のものです。
2007/06/07(木) 20:32:04ID:wcTYYNm50946名前は開発中のものです。
2007/06/07(木) 20:53:24ID:vuPLnRCSやっぱり、コンソールに出力されるはずだがなぁ・・・・。
自動的にコンソールが前面に出てくる設定になってないとか。
0947名前は開発中のものです。
2007/06/08(金) 07:45:07ID:dU1vbfjk>俺の印象だと、
>Eclipse 巨大な整理されていない道具箱
>NetBeans 必要な道具だけが綺麗に整理されている道具箱
激しく同意
しかし、最近NetBeansの勢いが増してきた気がする
6.0楽しみだ
Eclipseは最新の技術への対応が遅くなってきて無いか?
ただで使わせてもらってるのにえらそうに言うのもなんだが
ただ、個人的にはEclipseの方が好き
なぜなら、日本語のドキュメントが多いからw
0948943
2007/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+Ruby対応は今IDEでもっとも旬なものじゃないかな
0950名前は開発中のものです。
2007/06/08(金) 14:37:30ID:S8TOMltZ遅くなったけどありがとうございます。
>>スプライト100個出したら100個のスレッドがたちあがるってことかな?
そうです。
結論としてはオブジェクトごとにTimerTask持つやり方でいいってことでしょうか?
0951名前は開発中のものです。
2007/06/08(金) 14:43:00ID:0pRpBrj+マルチスレッドでやるにしろスレッドプールと排他制御を理解してからね
タスク間での通信とか大丈夫に見えない
別スレッドでやるにしろ手軽なものじゃないよ
何も考えない場合依存性がないエフェクト関連でしかつかえん
0952名前は開発中のものです。
2007/06/08(金) 16:42:07ID:S8TOMltZ0953名前は開発中のものです。
2007/06/08(金) 16:47:14ID:0pRpBrj+各スレッドごとにスタックもつわけだし、綺麗なアニメーションも出来ないよ
0954名前は開発中のものです。
2007/06/08(金) 18:43:35ID:f1IK12WVゲームなんかでよくあるように画像をはめ込むことはできませんでしょうか?
0955名前は開発中のものです。
2007/06/08(金) 18:46:08ID:0pRpBrj+多角形が必要ならJOGL使ったほうがよさげ
0956名前は開発中のものです。
2007/06/08(金) 19:29:42ID:pznBE7uN0957名前は開発中のものです。
2007/06/08(金) 20:40:58ID:f1IK12WVありがとうございました。ド素人なんでググるところから始めてみます。
0958名前は開発中のものです。
2007/06/08(金) 21:08:19ID:rLAdfwxnゲームじゃないプログラミングの経験はあるの?
ないならしばらくゲームを作るのは忘れて一般のJavaの入門書買って勉強した方がいい
ゲーム作りながら0から学ぼうとするのはかえって遠回りになるよ
0959名前は開発中のものです。
2007/06/08(金) 21:56:13ID:JbwzLCuD一人称を統一してくれ。
0960名前は開発中のものです。
2007/06/08(金) 22:31:58ID:S8TOMltZそれを>>927で聞きたかったんです。
やっぱりオブジェクトが増えると効率悪くなりますかね。
今のところ数十個ならちゃんと表示されてるんですが。
一般的にキャラクターのアニメーションとかエフェクトとかでもスレッドプールというのを使うんでしょうか?
0961名前は開発中のものです。
2007/06/08(金) 23:06:41ID:pPM/oaLv普通のプログラミングも始めたばかりです
0962名前は開発中のものです。
2007/06/08(金) 23:42:07ID:0pRpBrj+スレッドが増えるとメモリなどの効率が悪くなるし、排他制御での効率の問題も出やすい
マルチコアが普及してもこの数年じゃせいぜい同時に動けるのは4スレッド程度
ならば4スレッドつくっておいて毎フレームなげる
100個のオブジェクトがあった場合最初に4つなげて空きができるまで残りの96個は待っている状態になる
ただ、本当に並列動作が意図的にほしいのでないのならマルチスレッドはバグの原因になるから使わないほうがいい
TimerTaskが便利そうに見えるというのならそれはフレーム管理を理解していないだけ
書籍なども読んだりしてまずシングルスレッドで行うようにしよう
バックグラウンドで動かしたいスレッドなんて音楽や効果音などでたくさんあるんだし、必要になってから勉強しよう
並列処理を理解せずにTimerTaskを使うのは危険すぎる
0963名前は開発中のものです。
2007/06/09(土) 01:08:05ID:vu3KtdAqいわゆる擬似タスクを使えばいいのでは?
スレッドは同期処理とかなにかと面倒。
0964名前は開発中のものです。
2007/06/09(土) 07:49:01ID:EZVk7j6P何かよい資料があれば紹介していただきたいんですが。
0965名前は開発中のものです。
2007/06/09(土) 08:32:30ID:vu3KtdAqウェブならここ。ただし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:bbYOCeLH0967名前は開発中のものです。
2007/06/09(土) 15:23:47ID:EZVk7j6PJavaであるといいんですがやっぱりC++のほうがゲームプログラミングは充実してますね。
ありがとうございます。読んでみます。
0968名前は開発中のものです。
2007/06/09(土) 17:55:28ID:O4qCppAQみんなアセンブラやC,BASIC時代で終えてきた人ばかりだしね
今のほうが基礎的なこととか情報の入手に困る時代
Cでもサンプル少なすぎってわけさ
0969名前は開発中のものです。
2007/06/09(土) 19:01:59ID:Z0TKLmiaOOと合うの?普通に並列化したほうがいい気がする。
0970名前は開発中のものです。
2007/06/09(土) 19:45:16ID:zoMf1LX5ARPGを作成する上で参考になりそうなクラス図一覧やシーケンス図が記載されているような
参考書はあるのでしょうか?
JAVAで無い場合はそれ以外の言語でもいいのでよろしくです。
0971名前は開発中のものです。
2007/06/09(土) 22:47:46ID:O4qCppAQどこがひっかかるの?
0972名前は開発中のものです。
2007/06/10(日) 18:04:49ID:x8dp2pdS15歳からはじめる〜の本の応用編PDFのパスワード誰か知りませんか?
出版社のサポートに問い合わせても何の返事も来なくて・・・
0973名前は開発中のものです。
2007/06/10(日) 18:16:16ID:/a81qKx+あれの葉書の締め切りとかってもう終わってる?
今から葉書出しても遅いかにゃ?
0974名前は開発中のものです。
2007/06/10(日) 20:35:19ID:StHZ6Btk0975名前は開発中のものです。
2007/06/10(日) 23:14:46ID:/a81qKx+本当だ
葉書見たら、無料で送付してくれる期間も過ぎてたわ
0976名前は開発中のものです。
2007/06/12(火) 22:48:39ID:54Piwy01BufferStrategyてJPanelで使えないの?
今、JFrameでWindow作って、その上にJPanel乗せて、JPanelにゲーム画面を描画しようと考えているのだが、間違ってるのか?
直接JFrameに描くほうが正しいのか?
それとも何か解決法があるのか?
すまんが、よろしこ
0977名前は開発中のものです。
2007/06/13(水) 00:22:14ID:xt1HCEaa1行目に書いてあると思うけど。
0978名前は開発中のものです。
2007/06/13(水) 00:48:27ID:DenGxzXkもちろん読んでる(BufferStrategyのことだよね)
そこで、WindowsとCanvas上の〜〜〜とあるのはわかるのだが、JPanelやそのほかのコンポーネントでも描画すること多いから、普通に考えるとJPanel上でも使用する方法があるのでは無いかと思って質問した
結論としてはやっぱり、無理なの?
とすると、JFrame上にべた書きか
0979名前は開発中のものです。
2007/06/13(水) 00:54:59ID:xt1HCEaaWindowとCanvasってのことはね
JComponentなんてかいてないでしょ?
0980名前は開発中のものです。
2007/06/22(金) 02:15:12ID:26NocAGI0981名前は開発中のものです。
2007/06/22(金) 10:24:46ID:GQikK9pUhttp://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踏まないようにしていたのに、こんなど素人が踏むとは…
お前さんスレ立てしたことあるかにゃ?
無いなら985か990に立ててもらうしかないな
>>981
開発環境としては、eclipseの方が情報豊富だから、初心者にお勧めじゃないかな
0983名前は開発中のものです。
2007/06/23(土) 09:47:37ID:bWvtpOgZVistaとかJDK6とか
0984名前は開発中のものです。
2007/06/23(土) 11:17:05ID:WgjC+sQH0985名前は開発中のものです。
2007/06/23(土) 11:22:43ID:nS7OODIS0986名前は開発中のものです。
2007/06/23(土) 11:54:20ID:bWvtpOgZ懐かしいな
あのころはNetBeans3ベースだから今とはもはや別物だよ
0987名前は開発中のものです。
2007/06/23(土) 12:41:37ID:qIz7htbl情報だけならEclipseだけど、前提知識が必要になるので
初心者にはお勧めできない。
NetBeansはGUIエディタ(Matisse)がEclipseのVEより優れている
初心者でちょっとやってみようとして挫折する部分がすくない。
あと、ゲーム以外でもJavaでやるようなことに対して、
新規に導入しなきゃいけないプラグインがあまりない。
つーか、逆に言うとプラグインで使えるものは少ない。
EoDっていうならばやっぱりNetBeansになるとおもう。
レス数が950を超えています。1000を超えると書き込みができなくなります。