1 :名前は開発中のものです。2008/10/28(火) 18:23:40 ID:2CMNNHdH
Javaでゲームを作ろうと思っている人、今作っている人等が情報交換するためのスレです。
2Dのスレはありましたが、総合スレがなかったので立てました。
2D,3DどっちでもOKで、グラフィックス、アルゴリズム、お勧めサイト等、内容も自由です。
2 :名前は開発中のものです。2008/10/28(火) 20:15:48 ID:Pq/ldcOp
関連リンクも張らない、自分では情報を一つも出さない、
ただ思いつきでスレを立てて、誰かが何とかしてくれるのを口をあけて待っているだけ。
お前、馬鹿とか無能以前に、ただのクズだよ。
5 :名前は開発中のものです。2008/10/28(火) 20:30:14 ID:5Y7cky76
関連スレ

【JAVA】2Dアクションゲームを作る【初級】
http://pc11.2ch.net/test/read.cgi/gamedev/1094602659/

JAVAアプリでゲーム
http://pc11.2ch.net/test/read.cgi/gamedev/1033926010/

Javaアプレットのゲームの限界は!
http://pc11.2ch.net/test/read.cgi/gamedev/1005230153/

【徹底討論】Java3Dの可能性について考える
http://pc11.2ch.net/test/read.cgi/tech/1033703640/

Java ネットワークプログラミング 【教えて!】
http://pc11.2ch.net/test/read.cgi/tech/1086238859/
6 :名前は開発中のものです。2008/10/28(火) 21:04:43 ID:y+shKCZx
昔作った人は参加しちゃだめ?
8 :テンプレ候補2008/10/29(水) 12:42:15 ID:ASEfFCla
関連サイト

Javaでゲーム作りますが何か?
http://javagame.skr.jp/

小さなJavaゲーム&Windowsプログラム集
http://www.asahi-net.or.jp/~ri3a-okn/

Javaによるゲーム解説
http://www012.upp.so-net.ne.jp/flab/javatuto/javatuto.html

安永ノリカズのゲーム製作&Javaサンプル集
http://www.groovy-number.com/
10 :テンプレ候補2008/10/29(水) 12:53:42 ID:ASEfFCla
個人的神サイト

Andrew Davison's Home Page at PSU
http://fivedots.coe.psu.ac.th/~ad/

ここでは、Pro Java 6 3D Game Development: Java 3D, JOGL, JInput and JOAL APIs
http://www.amazon.co.jp/Pro-Java-3D-Game-Development/dp/1590598172

と、Killer Game Programming In Java
http://www.amazon.co.jp/Killer-Game-Programming-Java-Book/dp/0596007302

の全文(一応draft版だが)をpdfで読めます。
11 :名前は開発中のものです。2008/10/29(水) 14:48:33 ID:2DJOphGD
それくらいのサイトならjavaでゲーム作ってる奴らは知ってると思うんだが。
JMEくらい出そうぜ
12 :名前は開発中のものです。2008/10/30(木) 10:51:37 ID:ODSXqTQG
Java 3D Scene Graph Editor使ってる人いる?
使い心地どうか教えて。
13 :名前は開発中のものです。2008/10/30(木) 15:16:46 ID:/1mE+/on
Javaで3Dゲーム作るときって地道にグラフィックのコードを書くものなのか?
14 :名前は開発中のものです。2008/10/30(木) 19:25:37 ID:lhaxGn0r
ゲームに限らずどんなソフトを作るときも地道にコードを書くものだと思うよ俺は
15 :名前は開発中のものです。2008/10/30(木) 19:44:08 ID:/1mE+/on
でもグラフィックスのために長時間費やすのは無駄だと思う。
むしろアルゴリズムに集中したい。
グラフィックスをグラフィカルに作成できるツールがあれば便利
20 :名前は開発中のものです。2008/11/03(月) 14:23:24 ID:mifbWZ4G
>>15
意図がわからない。Java以外だとどういうのをイメージしてる?
JOGLで解決できるレイヤー?
BlenderのゲームエンジンやQuakeエンジンのようなもっと高位の話?
グラフィカルってKlik & Playのようなのの話じゃないよな?
21 :名前は開発中のものです。2008/11/03(月) 14:31:19 ID:l3Pk1BnL
>>20
ラクガキ王国の自由度が高い版みたいなものだと解釈したが。
23 :名前は開発中のものです。2008/11/04(火) 00:38:51 ID:yhJpkkhs
DoJaやMIDP依存の話題なら専用スレがある
そうじゃなくてJava依存の箇所ならぜひ
24 :名前は開発中のものです。2008/11/05(水) 08:39:33 ID:BDGzMVud
>>23
板内にはベンダ依存のスレしか見当たらなかった

JAVAアプリでゲーム
http://pc11.2ch.net/test/read.cgi/gamedev/1033926010/l50

iモード携帯電話用Java(iアプリ) Part18
http://pc11.2ch.net/test/read.cgi/tech/1214192372/l50
27 :名前は開発中のものです。2008/11/15(土) 21:34:11 ID:IahdSIqN
おお!!
スレが復活してる

速度早いかなとおもってwxWidgets使ってC++で書こうと思ったけど
コード補完のひどさに挫折した。

やっぱりJavaがいいよ
31 :名前は開発中のものです。2008/11/18(火) 02:09:34 ID:VmCL2HLn
http://www.tansio.net/game/rpg/ys01.html
これくらいのが作れたらいいなー、と思いつつ、
今時javaでゲーム作ってる人ってほとんどいないんじゃない?
32 :名前は開発中のものです。2008/11/19(水) 23:02:16 ID:dux43jpi
>>31
大丈夫

君がいる
ゲーム完成したらここにあげてくれ
33 :名前は開発中のものです。2008/11/21(金) 07:33:44 ID:YWk73Msk
>>31
見た感じでは、そこまで大した事はやってないとおもうけどねぇ。
(java3D関連とかがどの程度の事までやれるのか?
 高速化や安定化とかどのくらいやってるのか?まではわからんけど。)
ある程度、普通のプログラムが組めれば時間さえあれば作れると思う。
頑張って!!


あと、今はWindows用だとexeファイルに固められるのがあるから、
外見的に、ふつうのexeだけど、実はJavaで作られたのもそこそこあるよ。
その反面 Net上では・ブラウザ上では、Flash勢力にガツガツにやられてる感は否めないが。
34 :名前は開発中のものです。2008/11/21(金) 16:37:39 ID:IE9BpU5/
Java6Update10でアプレットが強化されてるんだよな。
全然やってみてないけど、デスクトップにドロップできるってすごくないか?
やっとAdobeAIRに追いついたって感じだけど。
(WebStartがあるジャンってはなしもあるけどな。)
35 :名前は開発中のものです。2008/11/21(金) 23:11:43 ID:FqqVLjin
JREでググルと公式にインストーラがあるけど、
コントロールパネルからは更新できないみたいだ
36 :名前は開発中のものです。2008/11/22(土) 16:49:55 ID:PjNzdQZS
据え置きのコンスーマーゲームでJAVAで動いてるのって
どういったのがあるの?
37 :名前は開発中のものです。2008/11/22(土) 17:51:48 ID:V7mMyPot
>>36     正直、コンシューマーで据え置きだとJava使うメリットなさすぎるからなぁ。
ケータイ(電話)ならそれこそ活躍の場だけど、
据え置き機はPS2の時代ですら、アセンブリ言語で最適化!もやる人が残ってるから
Javaみたいなまどろっこしい事やってると、それだけでハード内競争に負けてしまうし。
38 :名前は開発中のものです。2008/11/22(土) 19:25:58 ID:dCDq7icn
>>36
PS3のBlueJで何かやってみた、って話を数ヶ月前に見た記憶が……
39 :名前は開発中のものです。2008/11/22(土) 21:40:15 ID:etJPtBHJ
さらにいうとJVMやランタイム移植せんといかんし。
PPCやMIPSつってもハードやOSは独自だしな。
40 :名前は開発中のものです。2008/11/22(土) 22:39:20 ID:37xpa+We
>>33
Java3D使ってないでしょ。
Java3Dってプラグインが必要だから、大概の環境で動かないし。
41 :名前は開発中のものです。2008/11/23(日) 00:19:36 ID:iw/rWGGH
ゲーム用途ならどう考えてもJOGLだしな
43 :名前は開発中のものです。2008/11/24(月) 13:28:18 ID:pcJU8TYd
>>41
Jake2が出た時は衝撃だったしな。
「ああ、Javaはここまでできるのか」というショックを受けた。
44 :名前は開発中のものです。2008/11/24(月) 22:14:15 ID:ZGgbgOOt
>>40
というか、Java3Dはフレーム単位で絵を制御したい時には不向きじゃないかと。
自分もJavaゲームの素材として当初Java3Dを考えてたけど、Joglに移行した。
45 :名前は開発中のものです。2008/11/25(火) 03:52:10 ID:3TIRCvoA
>>33
exe化したjarって、実行速度は大丈夫なの?
46 :名前は開発中のものです。2008/11/25(火) 22:16:22 ID:Z+fRRW0+
実行速度より起動速度が気になるけど、どうなんだろう
アマチュアが作る小規模なゲームだと特に
47 :名前は開発中のものです。2008/11/25(火) 22:33:09 ID:HZhjQ8yf
jarの中に必要なものを詰めて、
java3dアプリケーションをjar単体で実行することってできるの?
48 :名前は開発中のものです。2008/11/26(水) 00:04:02 ID:XwH96eUu
>>46
Javaはupdate10で起動速度が大幅に上昇したよ
まじで0.1秒もあれば起動する
そのあとはアプリ次第
49 :名前は開発中のものです。2008/11/26(水) 01:08:59 ID:h7IA9RJ4
みんなどんなゲーム作ってるの?
50 :352008/11/26(水) 02:22:36 ID:CQXWAXH0
>>48
今更新の確認したらアップデートできた!ついに来たって感じ。
アプレットの初回起動が2秒くらいになってたよ、これは凄いね。
JREのインストール先がjre1.6.0_10ではなくjre6になってるのが気になる。

>>49
夏に頓挫してから何も作ってないorz
51 :名前は開発中のものです。2008/11/26(水) 12:48:22 ID:TapBfztc
jsynにはwireっていうソフトが付いていて、インタラクティブに音声ファイルが作れるらしいが、
java3dにはそういうツールは無いのだろうか?

http://www.softsynth.com/wire/

52 :名前は開発中のものです。2008/11/27(木) 20:46:49 ID:Ti1IpZWY
JMonkeyEngineは何ができるのですか?
何をダウンロードすればいいのですか?
説明書やチュートリアルはどこですか?
1.0と2.0があるみたいですけど、どちらを使うべきですか?
そもそも、どこでダウンロードして、何にパスを通せばいいですか?

超大作ゲーム製作予定の私を助けてください
53 :名前は開発中のものです。2008/11/27(木) 20:48:19 ID:052gsbV2
JMonkeyEngineってなんですか?
54 :名前は開発中のものです。2008/11/27(木) 21:06:47 ID:Ti1IpZWY
>>53
ええっとですね
Javaでゲーム作るためのフレームワークみたいです
3D関連の便利なAPIがたくさんあるみたいです
自分は2Dのゲーム作る予定なのですが、ゲームループとかもカバーしてくれてるみたいなので、使ってみたいです
よろしくお願いいたします
56 :名前は開発中のものです。2008/11/27(木) 22:03:14 ID:052gsbV2
>>54
とりあえず英語の勉強をはじめるしかないんじゃないか?
57 :名前は開発中のものです。2008/11/29(土) 14:42:31 ID:btj7sT1D
>>54
必須じゃないんだからまず普通に自分で一から作ってみたら?
Javaでのゲーム開発はセットアップも簡単なんだし
58 :名前は開発中のものです。2008/11/30(日) 00:28:31 ID:SB7IJQ5W
2Dゲームに関しては、Swingの標準機能だけでもけっこういけそうだもんなあ。

ただ、VSync同期をやろうとするとけっこう面倒なのと、入力デバイスがキーボードに限定されるのが
問題と言えば問題かもしれない。
59 :名前は開発中のものです。2008/11/30(日) 18:13:12 ID:e11kEiNW
垂直同期はフルスクリーン時しかうごかないからね。でもそれでいいと思う。ウインドウ時はタイマー管理で。

ジョイスティックはJNIでいいじゃない。
事実上クライアントの大半はWindowsだけなんだからWin32APIで10行程度記述すればよい。

この程度だとDirectInputだと行数が増えるので無理にDirectInputをやらなくてよい。
同時にジョイスティックを3本以上扱いたいというのなら必要だけど、あんまりそういうのはないだろうし。

一番いいのは標準サポートなんだけどね。
60 :名前は開発中のものです。2008/11/30(日) 19:04:26 ID:8f2td/sM
ハードに差がないというJavaの性質上、ジョイスティックみたいなデバイスは統一が取れないんだろうか
61 :名前は開発中のものです。2008/12/01(月) 22:27:24 ID:jGGFVovU
>>60
やってできなくはないだろうけど、需要がどれほどあるかじゃないか?
62 :名前は開発中のものです。2008/12/01(月) 23:06:56 ID:IzI2Mrlq
ウィンドウシステムもファイルシステムも違うけど抽象化してるじゃん。
joglがやってるように対応OS毎にJNI用意すりゃあいいよね。

JCP検索してみたんだがJava3D 1.3とJava Joystickで頑張れってことなのか?
63 :名前は開発中のものです。2008/12/02(火) 01:14:32 ID:mmNyNmbO
javaの方針だと一般的な入力デバイス以外(ジョイスティックとか障害者用デバイス)は自力でサポートしてね。
あくまでも一般的なものしかサポートしないよって方針だったはず。
64 :名前は開発中のものです。2008/12/02(火) 01:18:42 ID:QJY2gN8F
簡単なゲームを一から作るというと、どのデモが勉強になりますか?
65 :名前は開発中のものです。2008/12/02(火) 14:44:11 ID:xTWiHFlp
>>64
本家のデモだけでも、経験があれば十分すぎると思う。
何気に、input系(Joystick等はともかく....)output系(簡単な画像処理とか文字表示)も
ちゃんと分かりやすくできてるし。

それ以外にも、Java2Dのsampleとかも備わってるし、自分のやりたいことをしっかり纏めて置いて、
サンプルとチュートリアルを読みながら適当に実装してけば、
簡単な(ミニシューティング・オセロ・テトリスe.t.c.)のは楽に作れると思うぞ。
(Program自体初心者なら、しっかり勉強してから頑張ってね。)
66 :名前は開発中のものです。2008/12/02(火) 16:34:41 ID:PNJqMSfB
オセロ・テトリス・アルカノイド・シューティング(自機が全方位移動可能)の順がよさそうです。
数学は結構得意なんですけど、3Dだと何から手をつければいいんでしょうか。
それと本家ってのはsunにあるjava2dのサイトのことですか?
68 :名前は開発中のものです。2008/12/02(火) 22:41:49 ID:SRzthf2g
標準機能で2Dゲーム作ろうとすると、画面効果で困るのは加算半透明かなあ…
JavaAPIに標準で存在しない割に、ゲームではよく使う効果だし。

あと、Swingで半透明使うとハードアクセラレート効かないのかな?
かなり極端に遅くなる気がする。
69 :名前は開発中のものです。2008/12/03(水) 00:27:16 ID:47H1cMR7
>>68
10年くらい問題になってるね。

ゲームじゃなくてもαブレンディングの種類が限られてるというだけでかなりよわいけど
この場合自前でComposite作ればいいだけだからそんなに問題にはなりにくい。

ゲームだとアクセラレーションきかないとお話にならないので事実上標準で組み込まれないとダメ。

アクセラレーションの話は
http://d.hatena.ne.jp/shin/20081122/p4
あたりを参考に
71 :名前は開発中のものです。2008/12/03(水) 10:50:57 ID:bj/RxHNI
>>66
オセロはAIが面倒じゃない?
パズルの方が楽な気がする
72 :名前は開発中のものです。2008/12/03(水) 14:48:47 ID:0FMK4MjJ
jdk1.4からだいぶよくなったんですけど、graphicsで直接戦うとMSとかPS3, wiiとかのコンソールに負けるんで、
Javaだとインプットデバイスなど各種デバイスとの連携も容易、ネットとかPCテクノロジも余裕、
とかで巻き返せるんじゃないか?

DSとかwieでもいろいろ実験導入されてるけど、次の入力デバイスの鍵はセンサーなのかなとおもう。
一度任天堂ダックハントとかハイパーオリンピックでガラクタになってるから、デバイスの抱合せ販売にするよりも
こういう既製品との連携・応用なのかと思う。
http://journal.mycom.co.jp/articles/2008/05/16/jamesgosling/003.html
73 :名前は開発中のものです。2008/12/03(水) 14:50:00 ID:0FMK4MjJ
>>71
パズルというと例えば?
74 :名前は開発中のものです。2008/12/03(水) 15:07:06 ID:SWgsvg5G
>>71
テトリスとか? 
http://www.geocities.co.jp/Bookend/5829/java/
75 :名前は開発中のものです。2008/12/03(水) 20:35:33 ID:iT3YBWbk
>>69
技術的にはそんなに難しい話でもないと思うんだが、まだ実装されないと言うことは
需要が無いんだろうな……

「加算合成どうする?」
「いや、そこまで求めるユーザはJOGL使うだろ」
「まあ、それもそうか」

みたいな感じになってそうな気もする。
76 :名前は開発中のものです。2008/12/03(水) 21:32:15 ID:+SBvcgxj
javaで大富豪ゲームを作成したいのですがまったくの初心者なので参考にしたいのですが、どこかにプログラムありますか??検索したけど見つからなかったので。
77 :名前は開発中のものです。2008/12/03(水) 22:21:37 ID:47H1cMR7
>>72
今のPCだとスペックは負けないでしょ
いつのPCと比較してるか知らないけど

>>75
でもJOGLがでたのは比較的最近なんだぜ
78 :名前は開発中のものです。2008/12/03(水) 22:23:44 ID:iT3YBWbk
>>76
カードゲームだと、Java特有の処理はあんまり無いような…

Image2Dクラスの使い方と、Graphicsクラスの使い方を勉強して画面表示を覚えて、
あと、MouseListenerなんかで入力方法を覚える。
ルールなんかのゲームの処理に関してはC++なんかとほぼ共通だと思う。
79 :名前は開発中のものです。2008/12/03(水) 22:37:13 ID:iT3YBWbk
>>77
最近のPCでJOGL使えば、PS2くらいの表現はできると思う。
>>52でレスがあるjMEとかあるし。

ただ、性能云々の問題よりも、見てくれのいい画面を作ろうと思うと、
データの作りこみで挫折するような気がする。
80 :名前は開発中のものです。2008/12/03(水) 22:47:18 ID:u1z+UiOf
>>72
現行のミドルレンジ以上のPCでJava+OpenGLなら
ある種のピーク性能以外はPS3やXbox360を圧倒できそうなもんだが。
デバイスとの連携はデバドラやOSとの絡みが出てくるから
マルチプラットフォームに縛られたJavaよりC/C++や.NETが強そう。

>>77
JOGLはしらんが2000年ごろでもOpenGLのバインドは複数あったぞ?
バイトで3Dチャット作ったりとかしてたし。

>>79
データの作りこみとか言語関係無い。
82 :名前は開発中のものです。2008/12/04(木) 01:16:11 ID:VHEVebHW
>>80
結局JOGLしか生き残らなかった
そしてそのJOGLも2年位前にでたばっかり
メンテされてなくて古いバージョンのままなんて使えないからね
83 :名前は開発中のものです。2008/12/04(木) 01:51:21 ID:Ji7FDur6
需要があるかどうかでで決めているんじゃないか?
フレームワークを整備するにしてもその分野に投資するわけだから、開発者の理想とは多少違う原理が作用している。
ただハードについてはどういう進歩をするか未知数だし、xboxとかでjvmが動けば面白そうなのは確かだけど、最近だとネットブックとかあるからな・・・
84 :名前は開発中のものです。2008/12/04(木) 21:50:39 ID:8CYYyQEe
>>82
JOGLはJava1.4の頃から存在するみたいだから、2年ってことはないと思う。
というか、そろそろJOGLは標準に統合するか、インストーラがついてもいいような気がする。
もう、Java2Dとレンダリングパイプラインは統合してるんだし。

知人にゲーム渡すときも、「できればJava6にしといてね」なら「はいよ」で済むけど、
「JOGL入れといてね」はけっこう敷居が高い。
85 :名前は開発中のものです。2008/12/04(木) 23:23:53 ID:jukux4Dk
こういう本が邦訳されないかなあ

Pro Java 6 3D Game Development: Java 3D, JOGL, JInput and JOAL APIs (Expert's Voice in Java)
ttp://www.amazon.co.jp/Pro-Java-3D-Game-Development/dp/1590598172
86 :名前は開発中のものです。2008/12/04(木) 23:36:38 ID:VHEVebHW
>>84
正式版がずっとでてなかったのだよ
だからまだ2年ちょい

それとJOGLは配布に含めてもいいし、webstartで落としてきても良い
webstartならばOSによって自動で判別してくれる
87 :名前は開発中のものです。2008/12/04(木) 23:39:50 ID:VHEVebHW
>>83
ネットブックはクソみたいなマシンパワーだよ
Windows2000がでる前くらいのスペック

あとnVidiaのJOGLの動き見てるとウインドウモードでも
垂直同期取ってくれるので非常に滑らかに見えてよろしい

IntelとかUMAなやつはもちろんそんなことはしてくれない
88 :名前は開発中のものです。2008/12/04(木) 23:49:14 ID:VDuy+WFo
>>85
プログラミングの本って高卒なら、英語でも大抵スラスラ読めるよ。
元々半分英語みたいなものだし。
89 :名前は開発中のものです。2008/12/05(金) 00:18:21 ID:+H0hMIv3
>>87
945くらいのチップセットでも、Jakeあたりはサクサク動くんじゃないか?
Javaでのゲーム制作の話であれば、そのくらいの性能があれば大抵事足りるような。
91 :名前は開発中のものです。2008/12/05(金) 01:24:48 ID:YhYI7/EZ
GTGEは開発止まったままソース公開されてないから終わった。
JMEはまだJOGLに対応してないから始まってない。
92 :名前は開発中のものです。2008/12/05(金) 21:41:54 ID:+H0hMIv3
ホビーでゲーム制作するにはJavaはかなりいいと思うんだけどね。
絵を出すまでが簡単だし、標準ライブラリが充実しているからサクサク作れるし、
Eclipseが強力な開発環境を与えてくれるし、デバッグもやりやすいし。

あとは、JOGL関係の資料がもうちょっと充実してくればな…
93 :名前は開発中のものです。2008/12/06(土) 00:34:43 ID:DBxqTjVR
Javaにどっぷりつかってから、マクロ使いまくりのCのソースを見ると暗号に見える…
94 :名前は開発中のものです。2008/12/06(土) 00:54:04 ID:fH1XA+GI
if ((flag>>12) &~ 0xff == ABC_MASK)...
とかも今の時代は暗号なのか!といわれる。
95 :名前は開発中のものです。2008/12/06(土) 01:32:49 ID:HksFENgN
>>92
JOGLのいいところは大量にあるOpenGLの資料だけみればいいというところじゃないかね?
じゃヴぁ3Dとは違う
96 :名前は開発中のものです。2008/12/06(土) 19:22:36 ID:xrzGyecp
といっても、OpenGLの資料もそんな無いけどな。
97 :名前は開発中のものです。2008/12/06(土) 21:24:54 ID:DBxqTjVR
>>96
「GLUTを使わないで描画タイミングを直接制御したい」とか考え始めると、
ドカンとハードルがあがる感じがするなあ。
98 :名前は開発中のものです。2008/12/06(土) 22:31:58 ID:8MEIfOsq
EclipseでGLクラスのメソッドを自動補完しようとすると、クソ遅いのは俺だけ?
javadocから引数の一覧読み込んでるのが原因だと思う。
なんか解決策あったら教えてくれ。
99 :名前は開発中のものです。2008/12/07(日) 02:47:55 ID:eg5RR+vG
>>98
ごめん、うちの環境だとごく普通に補完されて、特にストレスも無かった。
JOGLのバージョンが1.1だからかな?
100 :名前は開発中のものです。2008/12/07(日) 12:45:51 ID:3k2pUL4/
Eclipse + JMonkeyEngineの話を聞かせてください
101 :名前は開発中のものです。2008/12/07(日) 15:27:19 ID:eg5RR+vG
>>100
そもそも、jME使ってる日本人で、かつこのスレを見てる人間がどれだけいるのか…
102 :名前は開発中のものです。2008/12/07(日) 16:56:27 ID:Zn+sddBX
jMEはJOGLがサポートされる2.0待ちだな
103 :名前は開発中のものです。2008/12/07(日) 20:57:59 ID:eg5RR+vG
>>102
逆に考えると、Ver1.0は自前でやってたのか。
それすごいな。ネイティブコードはターゲットのプラットフォームの分だけ書かなきゃいけないのに。
109 :名前は開発中のものです。2008/12/12(金) 01:43:21 ID:3SjWPfE1
しかし、Javaが登場してから10年以上たったけど、ようやく本格的なゲームを作れる環境が揃ってきたな。
1.4で兆しが見えて、5.0とJOGLで発展して、6で条件が揃ったという感じだろうか。

まあ、Java2Dはもうちょっと頑張ってもらいたいけど。
110 :名前は開発中のものです。2008/12/12(金) 03:33:47 ID:gKO864oZ
Java2Dの何をがんばって欲しいんだよ。十分だろw
111 :名前は開発中のものです。2008/12/12(金) 08:50:12 ID:Bv4Ttm4f
ぶっちゃけると5.0では速度上昇とかほとんどないよ
言語的にかなり良くなったのは確かだけど

6はゲームに関係なく大幅にパフォーマンスアップしてるからいいとして

>>110
ちょっと前のレスくらい読めないか
112 :名前は開発中のものです。2008/12/12(金) 10:58:28 ID:nPp8TJ7O
1.4から5.0で大分変わっただろ。6が変わりすぎなだけで。
5.0だとString周りの最適化がイマイチだったからソースによっては大して変わらんが。
113 :名前は開発中のものです。2008/12/12(金) 21:36:16 ID:Bv4Ttm4f
5.0はVMはあんまりいじってないよ
言語関係の変更が大きいからAPIもあんまりいじらなかった
114 :名前は開発中のものです。2008/12/12(金) 22:26:03 ID:KKKNBhB4
個人的な感想では、5.0は「バグらなくなった」
総称型と拡張forのおかげで、collectionが格段に使いやすくなった印象がある。
115 :名前は開発中のものです。2008/12/13(土) 00:06:35 ID:1M59rG1U
コレクションとかObject型なんていまどきありえんだろ・・・
すでに5.0だって製品終了移行期間だというのに
116 :名前は開発中のものです。2008/12/14(日) 16:43:59 ID:TN+SZTza
なんでもいいので、Javaゲーム製作の話を聞かせてください
117 :名前は開発中のものです。2008/12/14(日) 21:22:31 ID:jS/QiwxG
javaでゲーム作ってるがMIDPだしなぁ
119 :名前は開発中のものです。2008/12/17(水) 03:16:44 ID:MfbHcy6i
オープンにできる奴前提なスレが欲しければ、そういうスレを別途立てる意義があると思いますよ
人集まるかどうかは責任持てませんので、このスレの勢いあたりを参考にどうぞ
120 :名前は開発中のものです。2008/12/17(水) 16:55:29 ID:8ZFUOkVn
>>117ですがBSDでADVエンジン作ってますが何か?
121 :名前は開発中のものです。2008/12/17(水) 17:21:51 ID:tDB84xdv
そういえば数年前に月山プロジェクトってのがあったような
123 :名前は開発中のものです。2008/12/17(水) 22:03:07 ID:6TEXMRk9
>>121
なにそれ?
ググってもよくわからないです
124 :名前は開発中のものです。2008/12/17(水) 22:14:22 ID:Fa0s+wiT
ググッたら一番上にvectorが出てくる。
ググり方が悪い
125 :名前は開発中のものです。2008/12/17(水) 22:39:51 ID:6TEXMRk9
>>124
すみません
出てこないんですけど、、、
鮫島事件みたいなもんですか?

月山プロジェクト javaとか月山プロジェクト vectorでググってもそれっぽいのでてこないです
よろしければURLを教えてください
126 :名前は開発中のものです。2008/12/17(水) 23:13:14 ID:99CIASbr
ttp://www.google.co.jp/search?hl=ja&q=%E6%9C%88%E5%B1%B1%E3%80%80java&btnG=Google+%E6%A4%9C%E7%B4%A2&lr=

なんでこの程度のことが出来ないんだ
128 :名前は開発中のものです。2008/12/17(水) 23:48:13 ID:6TEXMRk9
>>126
そんなに怒らないで下ちゃい><
vectorから本家へのリンクが切れてるね
もう、プロジェクトぽしゃったのかな?
130 :名前は開発中のものです。2008/12/18(木) 16:23:29 ID:fQUpb2IM
http://jsgrid.hp.infoseek.co.jp/j3d/index8.html
これ使ったことある人いたら、使い勝手の良さとか教えて下さい。
132 :名前は開発中のものです。2008/12/18(木) 22:10:19 ID:mg8VfrHv
動いてるゲームを見せてほしいのだ。
自分のじゃなくてもいいから、凄いヤツ。
134 :名前は開発中のものです。2008/12/19(金) 05:47:06 ID:ll2XIugg
だって、Javaのゲームなんて全然見かけないじゃん。
ここで「Javaでゲーム作ってる」みたいな話してるけど、
実際は誰も作ってないんじゃないの?
って疑問なわけ。
136 :名前は開発中のものです。2008/12/19(金) 12:58:35 ID:oxoM9XoW
有名な、Javaアプレットのマリオ
ブラウザで遊べる
http://www.mojang.com/notch/mario/
※音注意
137 :名前は開発中のものです。2008/12/19(金) 21:45:07 ID:f7nCI5ip
只今、プログラミングのできる人材を急募しています。以下に当てはまればどなたでも対象となります

1:Javaが使える(専門学生でも可能な範囲)

2:プログラミングが好きな方

仕事内容を簡単に説明すると、携帯アプリを開発する事です。報酬、勤務日数・勤務時間、勤務地などは直接お会いしてご相談させて頂くこととし、極力ご都合に合わせて柔軟に対応してまいります。ご相談時にお会いする場所としまししては都内の六本木とさせて頂きます


少しでも何か質問・興味がごさいましたら下記のアドレスまでメッセージをお待ちしてます。宜しくお願いします

taniguchi_iii3@yahoo.co.jp

139 :名前は開発中のものです。2008/12/20(土) 01:14:36 ID:t79yXi4L
2chで急募とかどんだけ切羽詰まってんだかw
不景気だろうが世知辛い愚行
142 :名前は開発中のものです。2008/12/28(日) 01:14:54 ID:0ycqBLMt
なんか、javaでゲーム製作のためのキラーフレームワークみたいなの出ないかな
C#だとゲーム用フレームワーク何個かあるよね
javaだとGTEGは開発止まっているっぽいし、jMEは期待したけど公式みてもよくわからんし
143 :名前は開発中のものです。2008/12/28(日) 01:25:58 ID:2HNvbm7d
java版のXNAが出ればいいんだな。
javaでゲームって海外ですらほぼ趣味の領域なのにそんなもんは出ない気がする。
144 :名前は開発中のものです。2008/12/28(日) 08:23:01 ID:0ycqBLMt
>>143
そうだとしたら残念
でも、javaだとDIコンテナとかWebアプリケーションフレームワークとかよく使う領域だとオープンソースのフレームワークが何個も乱立してるじゃないですか
それ以外でもあまり使わない領域でSOA関連でもSCAとかJBIとかあるし、、、
だから、ゲーム関連でも1,2個フレームワークがでてきてくれて、そのうちの1個がスタンダードになってくれると嬉しいなと思った
C#よりjavaの方がその手のフレームワークは多い気がする
145 :名前は開発中のものです。2008/12/28(日) 14:06:03 ID:zTRJkVsL
1,2個ならGTGEとjMEがあるじゃないか。
というかjava.dev.netのgameの項にいくつもホストされてるじゃないか。

ていうかjavaでゲーム作るなら自分で下層のフレームワーク作らないか?
俺はそれ使ってるんだが。
146 :名前は開発中のものです。2009/01/02(金) 09:54:41 ID:FHD5Wl49
あ、ちょうどいいや。自己宣伝。
http://sites.google.com/site/gorogoronyan/Home
たまたま久しぶりにプログラムを書いていたもんで。
一点透視図法による自動車シミュレータのサンプル。
このあたりまではJavaでもできる。
147 :名前は開発中のものです。2009/01/02(金) 22:05:34 ID:NzuwmyZb
ピクセルごとにやると限界がみえてくるよね。結局メイン・メモリのアクセスが問題なんだけど。

最近思うんだけど、ピクセルごとにやるのってゲーム(アニメーション)というよりも画像処理・画像解析なんじゃないの?
それと一点法だけど公式をみると比率で出してるけど、もしgpuやopenglなどのハードに頼らない従来の方法(つまりGraphics2D)
でやるなら、ベクトル方程式でやるのが妥当だと思うんだけど。

148 :名前は開発中のものです。2009/01/02(金) 22:10:39 ID:NzuwmyZb
それと、SSEとかJNIの方も実験してみたけど、ループでまわしてテストするとJVMが落ちて使えないしこのバグの原因も良く分からないし、
バグ潰しに時間使うのバカらしいから結局JNIでSSEは諦めた。一応mingwのgccを使って。
それにFPUと比べて、SSEでやると高々2倍ぐらい処理が早くなる程度でGPU(やOpenGL)に比べるとそんなにうまみもないし、
けっきょくCPUとFPUに頼るなら、擬似3Dは試験・実験程度が限界かと思う。無理して3D化するなら品質もFF7ぐらいかな。
Java3DとかJOGLとかのハードにアクセスできるライブラリじゃないと楽しむ目的のゲームは無理だと思う(Javaはプログラミングしやすいから擬似3Dなら実装実験にはいいけど)。
まあ、頑張ってアルゴを考えちゃう人もいるんだけど、そういうのはライブラリとハードで既に実現されているわけで、もし実験目的じゃないならその労力は別のところで使えばいいんじゃないかな。
149 :名前は開発中のものです。2009/01/06(火) 13:05:01 ID:t9akt5LC
>>146
3D化ってこうやってやるんですね。参考になりました!
遠近法以外に3D化する方法って他にあるんですか?
150 :名前は開発中のものです。2009/01/06(火) 15:28:53 ID:Am4P4YsQ
何もわからなければ普通にJOGLとかJava3D使ったほうがいいと思う
151 :名前は開発中のものです。2009/01/06(火) 15:35:49 ID:ghOEma/D
ええっ!そんな・・・
Javaだと数学公式で書いてあっても結構実装しやすいんですね。
152 :名前は開発中のものです。2009/01/06(火) 16:40:07 ID:Fpl4xlxf
2Dゲームの話もしませう
153 :名前は開発中のものです。2009/01/07(水) 01:01:16 ID:Klul6qgz
>>152
アルファブレンディング使わないのなら
Java2Dだけで十分使えるようになった。
u10以降。

標準APIだけでここまでよくなったのはすばらしいが、
せめて加算合成だけでも実装して欲しかったなぁ。
154 :名前は開発中のものです。2009/01/07(水) 01:54:21 ID:f23xR0rU
自分でブレンド処理クラスとか加算合成クラスとか作るとそんなに遅いんですか?
ピクセル単位でやるわけでu10でそのような処理用クラス用意したとしても結局同じだと思うんですけど。
155 :名前は開発中のものです。2009/01/07(水) 02:33:37 ID:H12DUZW9
ハードウェアアクセラレーションがきかねぇって話をしてるんじゃないか?
156 :名前は開発中のものです。2009/01/07(水) 15:09:28 ID:RZ4OcdR7
>147
146の者です。
鋭いですね。
元がゲーム屋さんではなくて、画像処理屋さんなもんで。
3D関連にうといので実験的に作ったのですが、
本格的な話になるとPC上ではJavaよりはC#、C#よりはC++
という話になるんでしょうね。
158 :名前は開発中のものです。2009/01/07(水) 23:45:14 ID:9SF/8/R3
2Dとか3D以前に基本的なゲームループの話とか場面管理とかクラス構成の話もしてください
159 :名前は開発中のものです。2009/01/07(水) 23:52:14 ID:XuNNcZQw
>>156
いや、君のHPの説明は結構参考になったよ。素直なコードだし、数学・物理の公式をコード化するのとか得意なんじゃないか?
ただHPにあったけどjvm上自動で行う、配列のindexチェックで遅くなるという主張はただの妄想でしかない。たしかに20マイクロ秒ぐらいは違うだろうけどw

画像処理(CGとか非リアルタイムも)が得意なら、まずJavaで実験用コード・レファレンス実装して、これをハードに組み込みするという流れになるかもしれない。
その処理コードをハードに組み込みとか会社規模でやるんじゃないなら、PC(個人向け)ではもうすぐ環境が整うだろうけど、gpuやdirectx, openglのハード(ベクトルユニット)でやるようになると思う。
ベクタライズに多少書き直すことになるけど、PGする側からみれば結局は昔からあるコンパイラ最適化技術「ループ展開」の発展版でしかない。

http://pc.watch.impress.co.jp/docs/2008/1225/loilo.htm
GPGPU対応動画編集ソフト「Super LoiLoScope」がパッケージ販売

こんなのも出始めたから一般PG向けにそれら計算ユニット(ハード)が使える環境が整うまではあと2年ぐらい必要なんじゃないか?
といっても画像処理は分岐だらけだろうから、従来のようにピクセル毎でチマチマでもあまり差はないけど。
ただ、ベクトルユニットが使えるようになるとプログラミングスタイルやアルゴリズムが少し変わると思う。
リアルタイム処理(つまりあまり厳密じゃなくかなり適当でいい処理なもの)なら今なら普通にOpenGLが旬だし、2年ぐらいならJava3Dも来るかもしれない。

161 :名前は開発中のものです。2009/01/08(木) 00:24:34 ID:IHwS1EtB
それと、sseも試行錯誤の末Javaからつかえるようになったけど、1.2-1.5倍、場合によっては1.7倍ぐらいかな。
よくエンコードソフトとSSE対応批評でこれだけ違うってのと大体同じ。

new float[1024]ぐらいまでなら普通にforでdst[k]+=src[k]とたいした差はなかった(高々1.1の向上程度)。
アセンブラも含めてかなり文書(英語)を読まないと使えるようにならないけど、苦労した割にはそれほど恩恵はないかな。

[16*16]程度の小さいブロックでforで処理すれば済むし、実際にはピクセル画像処理(アルファを使ったブレンドも含めて)は

native vectorization_mul (dst=new float[300*300], src=new float[300*300]);
とか、[300*300]など大きな塊(画像)を一度にマスク処理するようなことはしないからなぁ。

それと、intel ネイティブなのも痛いかな。opengl やgpu だとintel以外でも使えて汎用性高いし
専用ユニットだから[300*300]とかならsimdはそっちのシフトしていくような気がする(ゲームとかストリーミングとかのリアルタイム性なもの)。
一応[300*300]とかだと1.6倍ぐらいSSEの方が早いんだけど、intel用にチューニングするには結構苦労する。

この用途でのsseはgpuが普及するまでのつなぎ(5年ぐらいかな)かもしれない。
浮動小数FPUと同じくコンパイラ・言語がサポートしちゃえば楽なんだけど今のSSEの普及率はFPU程普及してないし言語・ライブラリのサポートはまだまだなのかもしれない。
これからのプログラムは画像・映像加工処理が多くでかいデータ量を一度に扱う必要があるから、5年後のsseはfpuと同じく気がつかないで使ってるとかになるんじゃないかと思う。

sseをjavaで使えるようにするにはム版のjniスレに試行錯誤を少し書いといた。
sseはintel ネイティブ機能なんだけど、だれかブログとかでまとめといて。
162 :名前は開発中のものです。2009/01/08(木) 00:29:33 ID:IHwS1EtB
>>156
C++ってことなないよ。ライブラリはCで作るかもしれないけど、それを使うのはC++やJavaでも言語はあまり関係ない。複雑なのじゃなきゃruby(でOpenGLのAPIラップしたクラスを作って)でもいいんじゃない?
つまり今ならJavaでやるならJOGLで十分。
実際SWTみたくOpenGLやDirectXのAPIをJNIでラップしてあるだけだし。C++とJavaの差では、800マイクロ秒ぐらいの差はあるかもしれないけど。
163 :名前は開発中のものです。2009/01/08(木) 00:58:26 ID:qJ7iXp4o
だからなんでJOGLでおkな話をそう長々といちいちレスするんだ。一人で喋ってて楽しいのか?
165 :名前は開発中のものです。2009/01/08(木) 03:13:55 ID:IHwS1EtB
>>163
てか、おまえ誰だよ。何も作れないくせにJOGLの宣伝部長かww
167 :名前は開発中のものです。2009/01/08(木) 04:06:29 ID:IHwS1EtB
>>163
じゃJOGLでおkなことを長々と語ってくれないか?
おまえみたいな無能じゃ無理かw
JOGLていうよりもOpenGLすら使ったことないんだろうww
168 :名前は開発中のものです。2009/01/08(木) 07:19:56 ID:4pdEl9iG
>>154
自前のCompositeを使うと、内部でGeneralCompositePipeという物が使われる。
sun.java2d.pipe.GeneralCompositePipeの88-89行目を見ると、
 dstIn = dstRaster.createChild(x, y, w, h, 0, 0, null);
 dstOut = dstIn.createCompatibleWritableRaster();
となっている。この時確保されるdstOutのサイズはw×hではなくて、dstRasterと同じサイズになる。
(java.awt.image.Rasterのソースを参照)
多分開発者は、createCompatibleWritableRaster(w,h);と同じ結果を期待していたんだと思う。
そのせいで、大量のメモリの確保を何度も行う事になる。何度も。
しかも、大きい図形は内部で32×32に分割して描画しているからメモリを確保する回数がさらに増加する。
これではアクセラレーション以前の問題。
どう見てもバグだけど、誰もゲームに使わないからか特に問題にならず、一向に修正されない。
描画に使う一時的なRasterは一々確保せずにキャッシュを使ってほしいけど、面倒だったのか毎回確保してる。
だから、自作Compositeをゲームに使いたいなら、Graphics2Dを使わず自分で処理するのが無難。
英語が得意なら、バグを報告して修正を待つ手もあるけど。

あと、Composite内で使うgetPixels()やsetPixels()も妙に遅い気がする。
sun.awt.image.DataBufferNativeが怪しい。自分の所だけかもしれないけど。
169 :名前は開発中のものです。2009/01/08(木) 12:20:24 ID:exKmWyW7
>>168
だからその程度の技術力しかないなら、普通にJava API(高度に抽象化したAPI)を使えばいいよ。
確かjdk1.5ではBufferedImageは全てキャッシュされるって書いてあったから、その指摘も数年で色あせるんじゃないか?w
そもそもjava.awtパッケージなのに、内部実装sun.*パッケージのソースにいちゃもんつけてるし、結局おまえじゃ何も出来ないだろww
そんなにこだわりあるならネイティブ向けパッケージ使え。タコがw

>>163
それと、JOGL(OpenGL)はAPIであって、GPUとかSSEはハードであって、上ではハードの話が書いてあるんだけどこの区別ついてる?
君の作ったOpenGLを使ったゲームを出してみ。
170 :名前は開発中のものです。2009/01/08(木) 12:40:43 ID:exKmWyW7
何度読んでもツッコミどころ多いな。
一般人程度の知識しかなく大してハード(メモリやCPU)のこと知らないのによくここまで妄想して大口たたけるものだと感心するよ。
そこまでJava/JVM(高度に抽象化したプラットフォーム)にこだわりがあるなら、まずは各ユニットの仕様知り各ハードの役割とか勉強したらどうだ?
バスとかいっても何のことか分からないでしょ。ハードのことをとことん知ると、java.awtも含めて君の指摘する文句たらたらのアプローチになるから。
内部に思い入れなくアルゴリズムの研究するだけなら、Javaらしく、良い子はBufferreImage.getRGBを使え。w
171 :名前は開発中のものです。2009/01/08(木) 19:22:31 ID:4pdEl9iG
>>169
(´・ω・`)?
172 :名前は開発中のものです。2009/01/08(木) 19:59:44 ID:yiuTB4qR
もうさぁ、そういうのどうでもいいからさぁ。
ゲームを見せてよ。
みんなそんなに語ってるんだから、凄いゲームいっぱい作ってるんでしょ?
どーなのよ?
それとも、ゲームは作れないけど知識は凄いよ!
みたいなことアピールしてるだけ?
173 :名前は開発中のものです。2009/01/08(木) 21:24:31 ID:GSLhRqng
最近Javaアプレットで作られたすげーゲームって何かないですか?
刺激にしたいです
174 :名前は開発中のものです。2009/01/08(木) 21:43:50 ID:4pdEl9iG
突然喧嘩口調のレスが来たから何事かと思って変なレスしてしまった。ただの人違いか。
特に>>170が誰宛なのか判らずに悩んだ。>>168はjoglの人とは別人なんだけど。
>だからその程度の技術力しかないなら、普通にJava API(高度に抽象化したAPI)を
そのJava APIの話が>>168。java.awt.*とjava.awt.image.*を参照。
あと、「だからその程度の技術力」の根拠詳しく。joglの人と間違えたんだと思うけど。
>確かjdk1.5ではBufferedImageは全てキャッシュされるって書いてあったから、その指摘も数年で色あせ
createCompatibleWritableRasterは0で初期化したラスターを返す。(これは仕様)
つまり、憶測通りBufferedImageがキャッシュされるとしても、
全画面を黒く塗り潰す処理を何度も実行したのと同じ負荷がかかる。
これを防ぐには、無駄な領域を確保せず、staticなソフト参照を使って使い回す必要がある。
それにはGeneralCompositePipeの修正が必須。数年で色あせてくれるんなら助かるんだけど。
>そもそもjava.awtパッケージなのに、内部実装sun.*パッケージのソースにいちゃもんつけてるし、結局おまえじゃ何も出来
java.awt.image.Rasterの方は修正すると既存のプログラムに影響しうる。変更は望めない。
sun.java2d.pipe.GeneralCompositePipeの内部処理を変更するべき。
あと、デバッグツールによりsun.awt.image.WritableRasterNative.setPixels()が遅い事が分かっている。
DataBufferNativeが関係している可能性がある。これは自分の環境が悪い可能性が高いけど。
何もできないのは同意。これを修正できるのはVMの開発者だけ。バグ報告も自力じゃ無理。

あと、BufferdImage.getRGBのソースを見たけど、内部で同じメソッドを呼んでいるから速度は大して変わらない。

>>172
ゲームのエフェクト等に有効な加算合成がJava2Dに搭載されていないから、
自前でCompositeを用意して解決しようとしたら異常な遅さで困った。
一番重い筈のcompose()の中身を全部コメントアウトしても尚遅いまま。
なかなか原因が分からず、苦労している内にGeneralCompositePipeのバグに到達した。
AlphaComposite以外を使うと異常に遅くなるのは主にこの手抜き実装のせい。
この事を話す機会が無かったからつい。ゲームは作れないけど知識は凄いよ。
175 :名前は開発中のものです。2009/01/09(金) 00:21:25 ID:5u2RDdW1
AlphaCompositeはハードウェアアクセラレーションあるから自前のは勝負にならない
標準APIで加算合成実装してもらう以外に方法がないのでJOGL使うのが一番無難
176 :名前は開発中のものです。2009/01/09(金) 00:23:05 ID:KcPxsY0I
どうでもいいから黙ってろ。
177 :名前は開発中のものです。2009/01/09(金) 00:27:02 ID:5u2RDdW1
>>176
お前が荒らしか
178 :名前は開発中のものです。2009/01/09(金) 02:08:32 ID:TyEo4JkI
だから、その程度の知識しかないなら内部にさわるのは止めとけ。
おまえはよく人のソースを読んだりしてるようだからどちらかといえば公式どおりの素直なコードを書くほうが向いていてるんじゃないか?
内部の職人技コードにはついて来れないだろう。さっそく

>これを修正できるのはVMの開発者だけ

とかついて来れないじゃん。バグ報告はパラダイスでフォームどおりに書くだけだろ(英語)。
俺の場合はたしかキャプチャーのバグ話で送ったけど担当者から丁寧な返事がきたぞ。
つまりおまえ技術力、知識、教養は、ウンチクだらけで実際はたいしたことないってこと。
中途半端な知識しかないのに「ウンチク電波」を垂れ流すのやめてくれないか?
179 :名前は開発中のものです。2009/01/09(金) 02:29:19 ID:TyEo4JkI
それと、javaで、それもGraphics2Dで作る限り速くなるはずはないな。
たとえおまえが言うウンチクの場所(getRGBやclass Raster)が改善されたとしても、ゲームとして10倍50倍速くはならないだろ?
Java2Dでも複雑なテクスチャや画像を貼り付けたり、頻繁にpaintをしないなら、今のCPUの力技ではゲーム上全く問題ない。
まさかJava2Dだけで、PS3並みのゲームを作ろうと意気込んでないか?wそれ、おまえの妄想だからw

ゲームでも何でも3Dの場合は、画像処理とは考え方が違うし加算合成が速い・遅いとか(ソフト上アルゴリズム上の問題は)関係ないから。
Compositeが遅いとかも、1画像(1フレーム)の処理に3秒以上かかるとかじゃないだろ?
アニメーションにすると遅いって言うなら、それはおまえが画像処理(静的処理)とゲーム(リアルタイム性)の区別がついてないで、
同じ手法(考え方)でやってるのが問題。おまえは、知識が凄いんじゃなくて、おまえは頭が固く、ウンチクの塊だって気がつけ。
どうせ、おまえが書くコードなんかifばっかりなんだろ。w

>>170はIDのとおり>>168だろ。IDでつながってるのから分かるだろwおまえが無能だってことが書いてある(笑)
180 :名前は開発中のものです。2009/01/09(金) 02:46:49 ID:TyEo4JkI
gpgpu専用画像ソフトのリンクあるけど、販促デモ(動画)みてないの?
たぶん、今までの画像とかゲーム・アニメーション(リアルタイム)の処理することに対する考え方が全く変わるから。
それに、既存のC++とかC#(DirectX)と同じ土俵(従来のコンソール型のゲーム)だとJavaは全く不利になるけど、
それ見ると、Javaでゲームを創るていう方向性(どういうゲームを作りたいのか)も変わるんじゃないか。

純粋なゲームは従来どおりOpenGL/DirectXとかのゲーム向けAPIでいいわけで、Javaで言うゲームの場合はそういった純粋なゲームとGUIとの垣根がなるなるんじゃないかな(これもグーグルマップみたいなWeb 2.0なのかww)。
181 :名前は開発中のものです。2009/01/09(金) 05:08:37 ID:+ySW3WLq
>>175 アクセラレーション以前に重大な問題(バグ)がある。それを解決すれば一応使えるレベルにはなる。

>>178-180
言ってる事はまともなのに何故か微妙に喧嘩腰。2chでは非常に珍しいタイプ。
職人技コードとバグ報告とウンチク電波の関係は謎だけど、とりあえず報告しておいた。サンクス。
あと、RasterやgetRGBはともかく、GeneralCompositePipeのバグは数十倍の差が出る。というか出た。
それから、別にPS3みたいなゲームを作りたいんじゃなくて、
折角Compositeの様な仕組みがあるんだから有効活用したいと思ってただけ。>>174の後半参照。
流石に1フレームに3秒はかからないけど、0.3秒はかかる。つまり約3fps。これじゃゲームは無理。
composeの中身を全部コメントアウトしても尚3fps。でもAlphaCompositeを使うと60fps。
バグの影響が出ないようにウィンドウサイズを描画範囲と同じサイズにしたら自作Composeでも60fps。
この時点で、アルゴリズムの問題じゃない事が分かる。処理を省略しても遅いから。

>>170は確かに自分宛だけど、わざわざ分割する意味が分からなくて悩んだ。
とりあえず、何でさっきから散々に言われてるのかは理解した。
自分は「遅い」を「とても我慢できない遅さ(3fps)」という意味で使ったけど、
相手は「遅い」を「なんかもたつく程度(25fps位?)」と解釈してた。
それで、「お前のアルゴリズムが悪い。それを一々VMのせいにするな」と。
具体的な遅さを説明しなかった自分が悪いんだけど。
182 :名前は開発中のものです。2009/01/09(金) 08:25:45 ID:hGRghaTr
>>181
ここはゲームに関係したもんじゃないと、君のウンチク自慢でしかないってこと
リアルタイムなわけで、1ピクセルごとにチマチマやるような手法じゃ通用しないってこと知らないだろ。
チマチマを否定するつもりはないけどゲームではあまり関係ないし、そのうちアルファブレンド関係全て(フィルター処理)はGPUの手法になるよ。

アルゴの実験ならJava2D、Java3Dを画像処理に応用したいならストリープ・プログラミングでも調べてみたら?
今までのプログラミングの概念が全く変わってしまい、君のような石頭オジサンがスカスカのスポンジに変わっちゃうからw
といっても、ゲームとかアニメーションとか君は作れないから無理かぁ(笑)
183 :名前は開発中のものです。2009/01/09(金) 11:22:16 ID:+ySW3WLq
>>182
だから、この遅さは「1ピクセル毎にチマチマ」以外に大きな原因があるんだって。60fps→3fpsが異常なのは分かるだろ。
報告テンプレのためにあれこれ検証した結果、VolatileImageの部分をBufferedImageにすれば、とりあえず解決する事が分かった。
BufferedImageのサイズを大きく変更すると、描画範囲が変わらないのに少し重くなるから、一応バグはあるようだけど。
GPUの事は知っているけど、Javaの標準機能でやりたくて。
贅沢を言わなければ1px毎にチマチマやっても平気。不具合に遭遇したら話は別だけど。
問題は解決したし、さっきから長文の応酬でスレが流れているからこの辺で。

ところで相手をオジサン呼ばわりって事は学生?
自信満々の態度から経験豊富な本職のプログラマーだと思ったんだけど。口調が違うから別人?
184 :名前は開発中のものです。2009/01/09(金) 12:48:54 ID:QZjHz82j
バク見つけたらさっさとバグパラダイス(英語)で報告しとけ。
それぐらいもできない奴が不満たらたらウンチクたらたら書くな。いしあたまw
185 :名前は開発中のものです。2009/01/09(金) 13:29:36 ID:5u2RDdW1
>>179
2Dゲーだけならu10で実用的になったのにゲームで多用する加算合成がないというオチが非常につらい
あと速度は真っ先に考えるところだと思う
VGAサイズで60fpsとかは普通はやりたいと考えるだろう
Java2Dのハードウェアアクセラレーションの範囲が大幅に増えたのにソフト演算が入った瞬間に速度大幅低下はつらい

>>183
そのバグはu7以下とu10以上でも同様の結果?フレームレートだけだとあいまいすぎるから
μ秒単位でだしてみたら?
187 :名前は開発中のものです。2009/01/09(金) 15:49:56 ID:IMX83G6u
>>185
画像処理してるわけじゃないだろ。そんな凄いゲーム作るんならJava2Dにもうこだわるのやめたら?
どうせVGAサイズで60fpsなんて作れないくせにwwwいしあたま君ww
188 :名前は開発中のものです。2009/01/09(金) 15:55:43 ID:IMX83G6u
もう一度いっておくけど、ゲーム作りと、作るための言語(ライブラリ)は全く関係ない。
GPUだと、1600*1200で60fpsとか余裕だけど、ハードのこと全く知らないでしょ?
なーんにも作ったことない石頭君は、そのあたりのことを石頭にしっかり叩き込んでおくように!
189 :名前は開発中のものです。2009/01/09(金) 17:46:15 ID:5u2RDdW1
>>187,188
ソフトレンダが入らないのなら60fpsは余裕
だから標準API以外で実装されてないと困るという話なのにどういう解釈してるんだ?

別に60fpsがすごいゲームの基準じゃなくて最低限余裕でクリアすべき部分だから的外れだよ
190 :名前は開発中のものです。2009/01/09(金) 18:50:38 ID:IMX83G6u
>>189
まずは君が造ったゲームを見せてみろ
191 :名前は開発中のものです。2009/01/09(金) 20:10:47 ID:A42kGE1w
>>189
ゲームだと論点以外の場所に突っ込み入りまくりなのが目に見えてるんで、
何か単純なサンプルとかないですか?
自分でも何か作ってみようとは思ってますけど。
192 :名前は開発中のものです。2009/01/09(金) 20:28:01 ID:c22YgjhL
久しぶりにJavaゲーム製作スレに来たら盛り上がっていて嬉しいでちゅ
と書き込もうと思ったら、ものすごい荒れてて怖いでちゅ><

みんな、仲良くするデちゅ><
193 :名前は開発中のものです。2009/01/09(金) 21:48:12 ID:A42kGE1w
サンプル作ろうとしたけど思った以上に面倒だな、いきなり挫けそう orz
194 :名前は開発中のものです。2009/01/09(金) 23:26:09 ID:5u2RDdW1
独自のCompositeの検証だから適当にスプライトを大量に描画すればいいだけかと
195 :名前は開発中のものです。2009/01/12(月) 18:38:55 ID:mr8XBnrs
>>185
fpsが極端に落ちるのは、多分VMじゃなくて自分のGPUの問題。
(VolatileImageを使用していた所をBufferdImageに変更したら大幅に回復した)
この事に気付かないで、他に原因があると思い込んで調査していていたから、色々勘違いしてしまった。
あと、GeneralCompositePipeのあの部分は別にバグではなくて、Rasterの方が間違っているだけみたい。
(実際に使われているsun.awt.image.IntegerInterleavedRasterクラスでは修正されていたので無関係)

BufferedImageのサイズを大きく変更した時の処理速度低下についてだけど、Compositeに関係なく発生する。
けれど、特に異常なメモリ確保増大とかは無かったし、実害は無さそう。

結局、バグを修正しても遅いまま。これ以上は無理だろうし諦める。
196 :名前は開発中のものです。2009/01/14(水) 19:05:48 ID:1dMbEFvl
だからハードウェアアクセラレーションが使えないのを選択した時点で速度に文句を言うのはやめよう
198 :名前は開発中のものです。2009/01/17(土) 01:10:49 ID:QGVWGr/M
>>194
でも、加算半透明のための独自のCompositeって、自分のような日曜プログラマにはけっこう面倒。

自分もJava2Dでゲーム作ってるけど、加算半透明はもう諦めたよ。
199 :名前は開発中のものです。2009/01/18(日) 22:40:17 ID:4j18g83I
色々なサイトのjarファイルを解凍して中身のファイルを見てたんですけど
ファイルの中に「.au」形式のファイルがあって、データベース的な使い方をしているみたいなんですけど
このau形式のファイルはどうすれば中身が見れますか?
200 :名前は開発中のものです。2009/01/18(日) 23:30:29 ID:x/IpCzLr
201 :名前は開発中のものです。2009/01/18(日) 23:42:54 ID:4j18g83I
>>200
ありがとうございます
しかし、これは拡張子は音声ファイルみたいなんですけど、音声じゃなくてデータが入ってるみたいなんです
極窓で調べてみても拡張子[?]と表示されてしまいます
202 :名前は開発中のものです。2009/01/18(日) 23:50:13 ID:p68rochj
音声じゃなくてデータってどういう日本語だ
ファイルの先頭バイト列みてみるとか、再生してみたの?
203 :名前は開発中のものです。2009/01/19(月) 00:12:31 ID:8dtQepqc
はい、バイナリエディタで中身を見たところ音声ファイルの場合は「.snd」で始まっていますが
他のデータベースとして扱っているファイルは拡張子がauなのに「J2SNK」、「G2SNK」、「5」などになっていて
再生なども試みましたが、やはり再生できないみたいです
204 :名前は開発中のものです。2009/01/19(月) 00:46:13 ID:/MSlJ2ya
ファイル形式なんて作ったやつの勝手なんだから、分かるわけないじゃん。
205 :名前は開発中のものです。2009/01/19(月) 17:11:20 ID:SAejBv5P
そのjarファイルを直接見ない限り流石に分からないな・・
206 :名前は開発中のものです。2009/01/23(金) 00:42:49 ID:50T1jj13
遠近法とか3D化の続きはやらないんですか。楽しみにしてたのに (;_;)
207 :名前は開発中のものです。2009/01/23(金) 21:18:05 ID:MGKxcb91
3Dとか2Dの画面効果の話より基本的な場面管理やクラス構成について参考になるページやソースコードありませんかね?
本格的にjavaでゲーム作る勉強したいので教えていただけると嬉しいです
208 :名前は開発中のものです。2009/01/24(土) 03:33:32 ID:Ul1ReSTO
そういうのはJava特有でもないしJavaに関係ないのでは?
そういえばゲーム作りをJavaから始めるなら英語のページが参考になるかな。
日本語のそういうサイトは皆無だけど、OpenGLが使える人が増えてくると今後は個人でやってるJava言語解説と同じくゲーム解説のページも増えていくんじゃないかなと思うけど。

3Dとかの話題は、ベクトルも含めて理論的なところはライブラリはあまり関係ないし、ゲームに特化して昔から先行していたDirectXよりの解説が多い。
結局パズル以上のゲームを作る気ならネイティブの機能に頼ることが多くなるからDirectXのAPIと係わることになるよ。
どうせ無理してLinuxやMacで作るわけでもないだろうし。
209 :名前は開発中のものです。2009/01/24(土) 09:28:59 ID:OAGtgkS/
>>208
レスありがとうございます

>そういうのはJava特有でもないしJavaに関係ないのでは?
そうなのかも知れませんが、自分はまだまだ未熟でjavaとverilog以外のコードがよく読めないのです
ネット徘徊しているとC++のサンプルコードはよく出てくるのですが、業務でC++使う予定が無いので、できればC++の勉強するよりjavaでコード読んでいきたいのです
javaのコードも出てくるには出てくるのですが、アプレットのものが多く、swing使っているものが少ないように思えます(自分はswing使いたいです)

>結局パズル以上のゲームを作る気ならネイティブの機能に頼ることが多くなるからDirectXのAPIと係わることになるよ。
自分が作りたいのは画面周りはしょぼくてもルールで勝負するRPGやシミュレーションです
そうすると、画面周りは大した機能を必要としないので、ネイティブ機能は使わないつもりです

>どうせ無理してLinuxやMacで作るわけでもないだろうし。
MacはともかくLinuxでは動作するようにしたいですね
最終的(10年後?)にはLinuxのなにかのディストリビューションに入るくらいを目的にしてます(無理かな)


もう少し、情報収集してみます
210 :名前は開発中のものです。2009/01/24(土) 12:00:16 ID:r3jrmAji
ぶっちゃけると画像描画さえ出来ればいいからSwingであるとかAWTであるとかは関係ない
実際JOGL使ってもGLCanvas使ったほうがいいしね
211 :名前は開発中のものです。2009/01/24(土) 12:01:19 ID:r3jrmAji
あとアプレットとSwingは反対語ではないぞ
アプレットでSwing使うとか普通だし
212 :名前は開発中のものです。2009/01/24(土) 15:26:38 ID:Ul1ReSTO
swingしか使いたくありませんといってる時点でゲームなど作れるわけない。
そもそもswingが何だかすら知らないんだろうな。
213 :名前は開発中のものです。2009/01/24(土) 15:51:04 ID:Ul1ReSTO
そえれと、java.netにある英語ぐらい普通に読めないとゲーム作りは難しいよ。それもC++ヤダとかいってJavaだけならなおさら。
どうしてもというならopenglのAPIを学んでサンプルみながら動かして、先人の作った小さいゲームから学ぶことになるじゃないか?
どっちにしても、directxやらないでjava重視なら英語読めないと全く情報は入ってこないだろう。
まずはappletである程度小さいゲームを作ってCanvasとpaintについて学ぶのが先じゃないのか。

たぶんPS2みたいな本格的なゲーム作りというよりも、ゲームを作る過程でjavaやgraphical oeprationを学びたいってことだと思うけど、
そういうことなら例えばこのページ見て考え直したら?どっちにしろ英語できないとそのうち行き詰まるけど。
http://java.sun.com/products/jfc/tsc/sightings/S05.html
http://java.sun.com/products/jfc/tsc/sightings/S22.html
214 :名前は開発中のものです。2009/01/24(土) 18:42:03 ID:Gq4SkVB3
画面周りはしょぼくていいっていってんだからDirectXやOpenGLの知識はいらんだろ。
グラフィックスなんてものは所詮、点が打てりゃーいいのよ。高速に点が打てれば。
で、>>213に質問だがJavaで高速に点を打つにはどうすりゃーいいのかね?
Javaで最速と思われる描画方法を教えてくれ。
ちなみに俺が知りたいのはアンタの知識がどのくらいなのかってことなので誤解なきよう。
216 :名前は開発中のものです。2009/01/24(土) 20:46:30 ID:APWNjMD1

Winnyの情報流出を管理・指導する国のIPA職員 岡田賢治 主任が違法ファイルDLしまくり感染して流出したドキュメント類。
嫁以外の女とのエッチ写真や、幼女児童ポルノ、違法アプリ所持、違法アプリバラ蒔き証拠など大量に流出。

★郵政省(今の総務省)、日立製作所、博報堂、味の素・・・と凄い流出規模!
http://ruru2.net/jlab-ruru/s/ruru1232764892388.jpg
★本人は著作権無視で違法ファイルダウンしまくりのくせに、著作権を勉強して知的所有権管理資格持ってるw
http://ruru2.net/jlab-ruru/s/ruru1232767964337.jpg
★全契約先でこの契約書結んでいるが、秘密保持、情報返還・処分義務の立派な契約違反。
http://ruru2.net/jlab-ruru/s/ruru1232767993881.jpg
★西武百貨店社員6155名分の個人情報を違法に自宅に持ち帰り流出。
http://ruru2.net/jlab-ruru/s/ruru1232768015222.jpg
★楽天ショップから個人情報データを違法に自宅に持ち去り大量に個人情報流出!
http://ruru2.net/jlab-ruru/s/ruru1232768041252.gif
★大量のソニーやマイクロソフト等の大手企業勤務者の流出個人情報! 自民党とか衆議院とかもある。
http://ruru2.net/jlab-ruru/s/ruru1232768065918.gif
★IPAは自身の流出は画像しか無いと断言しているが大嘘で、IPA役員資料とかも流出している。(IPA資料を無断で自宅に持ち帰り)
http://ruru2.net/jlab-ruru/s/ruru1232768123179.jpg
★三井リハウス(株)の入居者の口座番号や入金金額等のデータベースもIPA岡田賢治主任が流出
http://ruru2.net/jlab-ruru/s/ruru1232768311436.gif

国の情報処理推進機構 IPA専門職員として違法アプリばら蒔きの大問題犯罪証拠も流出。
違法アプリやシリアルキーを周囲にわざとバラ蒔いている。(現在も違法ATOKを使用しており、長年違法アプリを日常的に使用していた可能性大)

★Micro Soft VisualC++の違法シリアルキーを知人に教えたメール
http://ruru2.net/jlab-ruru/s/ruru1232768092277.jpg
★メールソフトRimArts社 Beckyの違法シリアルキー等、内容から見ても長年かなり広範囲にバラ蒔いていたようだ
http://ruru2.net/jlab-ruru/s/ruru1232768242947.jpg
218 :名前は開発中のものです。2009/01/24(土) 20:47:15 ID:APWNjMD1

IPA職員 岡田賢治 主任の報道記事まとめ【1】

★NHK
http://s02.megalodon.jp/2009-0105-1642-01/www3.nhk.or.jp/news/t10013365941000.html
★IPA職員が情報流出 ― 私物パソコンでファイル交換ソフトを使用(RBB TODAY) - Yahoo!ニュース
http://s03.megalodon.jp/2009-0105-1955-03/headlines.yahoo.co.jp/hl?a=20090105-00000007-zdn_ep-sci
★IPA職員Winnyでファイル流出&嫁のブログ祭り - 探偵ファイル
http://www.tanteifile.com/newswatch/2009/01/05_01/index.html
★IPA職員がファイル交換ソフトでウイルスに感染、写真など流出 - ネットwatch
http://internet.watch.impress.co.jp/cda/news/2009/01/04/21994.html
★情報流出対策職員“赤恥”…自身半裸写真など流出 - zakzak
http://www.zakzak.co.jp/top/200901/t2009010510_all.html
★IPA職員がまさかの情報流出 - 「Share」の可能性も「現在本人に確認中」 - マイコミュ
http://journal.mycom.co.jp/news/2009/01/05/004/
★J-CASTニュース(情報セキュリティ専門家のはずのIPA男性職員の失態)
http://www.j-cast.com/2009/01/05033141.html
★時事通信社ニュース(古いソフトを探すためと、本人の虚偽と分かるコメント有り!組織ぐるみで隠蔽工作開始か?)
http://www.jiji.com/jc/c?g=soc_30&k=2009010500683
★CNET JAPAN わいせつ画像や児童ポルノ動画、違法かな漢字ソフトをダウンロード--IPA職員
http://japan.cnet.com/news/sec/story/0,2000056024,20386070,00.htm
★CNET JAPAN 「IPAとして慙愧に堪えない」--仲田理事が会見で職員の情報流出事件を説明
http://japan.cnet.com/news/sec/story/0,2000056024,20386085,00.htm
★IPA プレス発表 当機構職員のパソコンによる情報流出について
http://www.ipa.go.jp/about/press/20090106.html
★INTERNET WATCH  IPAが職員の情報流出で記者会見。
 昨日の組織ぐるみ隠蔽工作から、2ちゃんねらーの追撃で違法ファイルの使用と児童ポルノ動画を一転して認める!。
http://internet.watch.impress.co.jp/cda/news/2009/01/06/22018.html
219 :名前は開発中のものです。2009/01/24(土) 20:47:37 ID:APWNjMD1

IPA職員 岡田賢治 主任の報道記事まとめ【2】

★毎日.jp わいせつ画像やかな漢字ソフトをダウンロード--IPA職員、ファイル交換ソフトで
http://mainichi.jp/life/electronics/cnet/archive/2009/01/06/20386070.html?link_id=RLD03
★@IT IPA職員のPCからの情報流出、事実関係を説明
http://www.atmarkit.co.jp/news/200901/06/ipa.html
★IT PRO IPA職員がファイル交換ソフト利用で、個人情報含む1万6000件を流出
http://itpro.nikkeibp.co.jp/article/NEWS/20090106/322322/
★マイコミジャーナル IPA職員の情報流出で緊急会見 - 前職時代の取引先企業情報など1万件超
http://journal.mycom.co.jp/news/2009/01/06/055/
★探偵ファイル IPA流出騒動職員の妻、不正転売と薬事法違反疑惑
http://www.tanteifile.com/newswatch/2009/01/06_01/index.html
★live doorニュース 「指導する側」のIPA職員がWinnyでウイルス感染、個人情報が流出。
http://news.livedoor.com/topics/detail/3962545/
★秒間SUNDAY IPA職員がファイル交換ソフトでウイルス感染!エッチ後画像など大流出
http://www.yukawanet.com/sunday/2009/01/ipawinny.html
★楽天(ショップ) IPA職員のパソコンによる情報の流出について
http://www.rakuten.co.jp/stellina/946713/
★西武百貨店 IPA職員のパソコンによる当社の情報の流出について(IPAに怒り爆発w)
http://www2.seibu.co.jp/common/images/pdf/20090107.pdf
★探偵ファイル ポエムに企画書…IPA職員の情報流出事件続報!
http://www.tanteifile.com/newswatch/2009/01/07_01/index.html
★探偵ファイル IPA騒動に急展開、驚愕の流出情報の数々
http://www.tanteifile.com/newswatch/2009/01/08_01/index.html
★ZAKZAK 流出事件のIPA職員ばかりか妻は薬事法に違反★
http://www.zakzak.co.jp/top/200901/t2009010701_all.html
★つこうたIPA職員 チャイルドポルノコレクターだった
http://www.technorati.jp/post/1S_jIJkf5a8hD3fMmxghB%2BYuGJfDPiYu%2BYizu8vv1oY%3D
220 :名前は開発中のものです。2009/01/24(土) 20:48:53 ID:APWNjMD1

IPA職員 岡田賢治 主任の報道記事まとめ【3】 アサヒ芸能 週刊誌に岡ちゃんと純子と仲良く掲載
※違法アプリ、変態幼女児童ポルノ等のダウンを認めながら、給与支給の停職3カ月と国民を馬鹿にした処分!

★探偵ファイル IPA流出事件職員の妻の転売業者、薬事法違反が確定★
http://www.tanteifile.com/diary/2009/01/08_02/index.html
★アサヒ芸能 週刊誌 ネット情報セキュリティ相談窓口職員の裸画像が流出 恥写真!&島○純子も
http://ruru2.net/jlab-ruru/s/ruru1232772605296.jpg
★IPA職員に停職3カ月の懲戒処分 「Winny」「Share」情報流出で
http://www.itmedia.co.jp/news/articles/0901/19/news085.html
★情報流出のIPA職員、停職3カ月の懲戒処分
http://internet.watch.impress.co.jp/cda/news/2009/01/19/22131.html
★IPA、情報流出対策本部を設置
http://www.itmedia.co.jp/enterprise/articles/0901/19/news077.html
★経過を報告するIPA仲田理事
http://image.itmedia.co.jp/enterprise/articles/0901/19/ipa.jpg
★IPA職員が収集、流出した とんでもない「反社会的」情報
http://www.j-cast.com/2009/01/20033932.html
★プレス発表 当機構職員のパソコンによる情報流出等について
http://www.ipa.go.jp/about/press/20090119.html
★情報流出のIPA職員、停職3カ月の処分に
http://japan.cnet.com/news/sec/story/0,2000056024,20386662,00.htm
★IPA職員の懲戒処分を発表 - 私物PCからの大量情報流出問題で
http://journal.mycom.co.jp/news/2009/01/19/018/index.html
★IPA流出騒動の職員、処分の実質は3ヶ月の有給休暇
http://www.tanteifile.com/newswatch/2009/01/20_01/index.html
★IPA流出職員 停職3ヶ月"有給休暇"処分にネット住民激怒!
http://uratan.jp/hotnews/2009/01/7869/
221 :名前は開発中のものです。2009/01/24(土) 22:37:22 ID:r3jrmAji
>>213
ゲーム作るのにそんな情報要らないだろ
ベーマガ世代はみんな英語が読めたとはとても思えないぜ

>>214
スーパーバイザモードでVRAM直アクセスしてた時代の話をしたいのかい?
考え方を変えなされ
何のために点を打ちたいのだ?
222 :名前は開発中のものです。2009/01/24(土) 23:45:09 ID:Gq4SkVB3
>>221
いや、そうではない。
ttp://sugarpot.sakura.ne.jp/yuno/?Java%2FDrawRGBPerformanceTest
ここなどを見ればわかるが、
記述の仕方によっては遅くもなるし速くもなるわけだ。
たとえば、フルカラー+setRGB()と256色+配列書き込みなんかと比べたら
悲惨なほど速度に差がでるからな。
で、配列に直接書き込むよりもっと速い方法があるのかと思って聞いてみただけ。
よくわからんが、笑える話なのか?

何のために点を打ちたいのかって、そりゃーいろんな理由があるだろう。
演算で画像を生成したり。
223 :名前は開発中のものです。2009/01/25(日) 08:36:06 ID:Pgi2di0n
>>222
そこまでいうなら自分で書いたコードをうpしたら?
どうせ見れたもんじゃないゴミなんだろうけど。
224 :名前は開発中のものです。2009/01/25(日) 09:44:24 ID:NNlFa4xv
>>222
見てみた

古い話になって悪いんだけど、まだMicrosoftVMが多くのマシンに入っていた頃
MemoryImageSourceを使っていたよ。透過付きGIF画像をApplet#getImageで
読み込んでGraphics#drawImageで描画すると異常に遅くてさ。

その名残で未だにBufferedImageではなくMemoryImageSourceを使っている。
一覧表を見る限りそんなに悪い癖でもないのかなぁ。
225 :名前は開発中のものです。2009/01/26(月) 00:02:35 ID:0ufDCt4C
>>222
やりたいことがピクセル描画だと遅いよと

やりたいことがキャラクタの描画とか四角の描画とかなら
アクセラレーションが効くからいいよ

遅くても文句は言うなよ

という意味だ
226 :名前は開発中のものです。2009/01/31(土) 12:54:35 ID:YUHmXUnz
xファイル形式読み込んでグリグリ3D描画できるフレームワークとまだ無いの?
だれか3Dゲーム作ってみた事ある?
227 :名前は開発中のものです。2009/02/01(日) 14:03:48 ID:c4g4hwrx
228 :名前は開発中のものです。2009/02/26(木) 23:16:47 ID:akesSIpd
jMEの日本語資料が出てくると面白そうではあるんだけどな。
誰かが使い始めてwebで試行錯誤を晒してくれると、2番目以降の人はものすごく楽になる。

問題は、最初の一人になるハードルが結構高いことだ。
229 :名前は開発中のものです。2009/02/28(土) 22:21:27 ID:Nhs2dqD5
>>228
jME将来有望なのかな?
公式ページ見てるとどうも先が無さそうに見える
230 :名前は開発中のものです。2009/03/01(日) 22:20:29 ID:01UCFGmL
>>229
jMEはムービーとか見るとやたらレベル高そうなんだけどな。

まあ、jMEほど本格的じゃなくていいから、JOGL使った比較的小規模なゲーム用フレームワークを、
コメントびっしり入れてサンプルゲームと一緒にMITライセンスで公開してくれる人がいたりすると、
後進はすごく助かる。

ただ、さすがにそこまで言うのは虫のいい話だしなあ。
231 :名前は開発中のものです。2009/03/02(月) 00:39:41 ID:P48p0Ewv
jME1.0が出たころは、チュートリアルとか充実しているイメージがあったけどな
今はjME1.0、2.0あるけど、ダウンロード先がよくわからん
あんまり丁寧じゃなくなってきた気がする
なんか、このままポシャりそう
ちゃんと読めば色々と書いてあるのかも知れんが
232 :名前は開発中のものです。2009/03/03(火) 01:15:49 ID:nB4fn1ej
正直、jMEは規模がでかすぎる。
自分としちゃせいぜい数千行くらいの、「ゲームに特化したJava3Dのサブセット版」みたいな感じでいいんだよなあ。
jMEの規模になってくると、ソースを読もうという気はおこらないし…
233 :名前は開発中のものです。2009/03/04(水) 23:43:24 ID:w3tEamJK
みんな趣味でやってるんでしょ?
そんな見た目にこだわる必要ある?
java2Dだけでも>>227くらいの3Dできるのに、余計なライブラリいらなくね?
なんか、良いライブラリがないからゲーム作れない、な言い訳に聞こえる。
234 :名前は開発中のものです。2009/03/05(木) 08:51:20 ID:jD1aQthu
>>233
趣味だからこそ様々な技術に触れたいわけで・・・
236 :名前は開発中のものです。2009/03/07(土) 01:22:45 ID:b31M8oEP
ぶっちゃけ、「Javaゲーム技術総合スレ」でもいいような気はする。
237 :名前は開発中のものです。2009/03/08(日) 23:17:19 ID:g3vbE7jD
JOGLいじってて気が付いたんだが、ウィンドウの大きさを変更した時に、
GLEventListnerのreshapeだけじゃなくてinitが呼ばれることがけっこうあるね。
で、そのときにテクスチャのenableがリセットされてしまうっぽい。

その場合、ウィンドウサイズを変えた直後から
テクスチャがはがされたポリゴンオブジェクトが表示されてる。
対策としては単にテクスチャのenableをやりなおせばいいんだろうけど、
これってOpenGL的には普通の挙動なのかな?

同じテクスチャオブジェクトで何度もenableをかけると、VRAMに重複して
アップロードしてそうなのがちょっと不安ではあるけど。
238 :名前は開発中のものです。2009/03/09(月) 14:23:24 ID:gpreMXHU
実装依存デバイス依存の機能を使うのは大変だね
突然CPUパワーが1兆倍とかになって全部ソフトウェアレンダで済ませられるようになればいいのに
239 :名前は開発中のものです。2009/03/09(月) 23:51:34 ID:VT+0u+++
ざっくりというと320*240-8bppならばPentiumM/1GHzあればソフトレンダ可能
2次キャッシュからあふれた瞬間にいっきにorzがはいるけど、
GPUがCPUに搭載されるのが当たり前の時代になれば
いわゆるソフト演算で演算結果がかなり近いものになると思われ

普及するためには今のPCが死なないといけないから5年後くらいからかな?
240 :名前は開発中のものです。2009/03/10(火) 00:36:26 ID:S/WPapfF
640x480 16bitで、K6-2 400MHzのソフトレンダリングでゲームしてたことがある。
10年くらい前のゲームになるが、シーフはそこそこ動いたな。
241 :名前は開発中のものです。2009/03/14(土) 20:41:14 ID:Hkznsov1
>>237に関連して、画面サイズ変更時にglLight関係のenableもリセットされることがあるみたい。
init()メソッドが呼ばれるシチュエーションではVRAMがリセットされるものとみなして、
enableが必要なパラメータは全部アップロードしなおすという方針のほうがいいかも。

…まだ試してないけど、VBOとかディスプレイリストとかもリセットされるのかなあ…
242 :名前は開発中のものです。2009/03/14(土) 23:21:36 ID:f2llZ77/
>>240
可変フレームレートでいいのならそんなかんじ
60fps死守する2Dゲー(レンダリングが2Dという意味ではない)ならば
やっぱりそれなりにマシンパワーが必要

>>241
確保するVRAMがかわるからテクスチャ等も含めて消えてしまうのは仕方がない
DirectXでも同じことはあった
243 :名前は開発中のものです。2009/03/17(火) 22:41:10 ID:d9jSrPfZ
ゲーム内で使う3Dのオブジェクトデータってどんな感じに作ってる?
自分はエディタとしてメタセコを使ってるから、オブジェクトもmqoをそのままクラス化したような感じになってる。

頂点とかの最適化はしてないから、たとえば立方体(8頂点)を作ると
各面が共有する頂点が重複して登録されてしまい、
ノンシェーディングだろうがフラットだろうがグーローだろうが、
OpenGLに対しては必ず24頂点になるような仕様だけど。
244 :名前は開発中のものです。2009/03/18(水) 23:41:58 ID:G8Q2oDGf
>>243
俺もメタセコイアだ、ファイルがテキストなのが解析しやすくていいよね

後半の意味がわからんが、頂点バッファを使ってないってことかい?
245 :名前は開発中のものです。2009/03/19(木) 20:22:52 ID:ES9Grmqu
>>244
自分が無知なだけかもしれないが、たとえば各面の色が違うフラットシェーディングの立方体を表示しようとすると、
8頂点でVBOを作れない気がする。

この場合、一つの頂点はそれぞれ別の色と法線をもつ3つのポリゴンから共有されるわけで、
24頂点で表現する必要が出てくるんじゃないかと。
246 :名前は開発中のものです。2009/03/19(木) 21:44:43 ID:kAJQg9X1
>>245
Ha Ha Ha! 俺なんかVBOが何の略かも知らなかったぜ!?
247 :名前は開発中のものです。2009/03/19(木) 23:01:52 ID:gAQ6bZlL
>>245
> 各面の色が違うフラットシェーディングの立方体
みたいな場合だけ別クラスにするんじゃダメなんか?
248 :名前は開発中のものです。2009/03/19(木) 23:13:35 ID:ES9Grmqu
メタセコでゲーム用オブジェクトを作ったら、
フラットシェーディングとグーローシェーディングを混在させるのはわりと普通だと思うが。
メカ系は特に。
249 :名前は開発中のものです。2009/03/21(土) 10:40:36 ID:nMPAMKWS
プログラムが読みづらくなってきたので整理したいのですが、
インスタンスを一つしか作成しないクラスはstaticにしたほうがいいんでしょうか?
250 :名前は開発中のものです。2009/03/21(土) 13:53:53 ID:B0gB3ZX9
状況による。俺なら
ユーティリティ的メソッドの集まり → staticメソッド化
インスタンスを一つしか作らせたくない → シングルトン化
今はインスタンスが一つしか必要ない → そのまま
251 :名前は開発中のものです。2009/03/21(土) 19:59:38 ID:n/Ajktw5
>>249の質問がいまいちわからん。
内部クラスならstaticにできるが普通クラスstaticにできんだろー
それとも>>250の解釈のようにstatic methodのことなのか・・そうだとすると何故シングルトンにw
252 :名前は開発中のものです。2009/03/21(土) 20:19:06 ID:DJMP1L4U
Jakeはstaticメソッドばかりで辟易した
基本はインターフェイス定義/インスタンスメソッドにして
外部から実生成クラスを指定できる形のシングルトンってのが
モックや改造用の実装入替えができる作りにできてマシだと思う
253 :名前は開発中のものです。2009/03/21(土) 20:24:15 ID:0Dhkcflq
>>252
Jakeの場合、Cからの移植だから、
オブジェクト指向に徹して構造をガラリと変えるのはやりたくなかったのかもね。
254 :名前は開発中のものです。2009/03/22(日) 13:38:56 ID:lDYMrqQ7
スキンメッシュってどう実装してるんだろ?
形状が変形した時点でVBOを作りなおさなきゃならない気がする。
glBegin〜glEndでなら実装方法も思い浮かぶけど、それじゃ
頂点数が増えてくると破綻するだろうし…

…やっぱり、頂点シェーダ使うのが正道なのか。
255 :名前は開発中のものです。2009/03/22(日) 21:48:34 ID:M8WElcmx
JOGLのテクスチャオブジェクトって、シーンに必要な複数のTextureオブジェクトをenableしておいて、
実際にポリゴンを描画する時にenable済みのTextureオブジェクトをbindするという認識なんだが、
これってひょっとして間違ってる?

なんか、ポリゴン描画時にどのテクスチャオブジェクトをbindしても、最後にenableした
テクスチャが適用されてしまう…
257 :名前は開発中のものです。2009/03/26(木) 00:25:05 ID:3cCMByPy
なら、そういう話題を振ってみよう。
258 :名前は開発中のものです。2009/03/27(金) 09:52:31 ID:hNlAxyYn
>>257
振ります
場面管理とか、ユーザ入力の基本的な実装の勉強はどこでしましたか?
たとえば、オープニング場面と実際のゲーム場面の切り替えとか、マウスやキーボードからの入力にあわせてプレーヤーを操作するとか、その手の勉強はどうすればいいのでしょう?
みなさんで、知恵を出し合って、私が一人前のJavaゲームプログラマになれるようにがんばりましょう!
259 :名前は開発中のものです。2009/03/27(金) 21:15:09 ID:/MZjCwLz
>>258

俺はテンプレのサイトにあるコードとかを参考にした
260 :名前は開発中のものです。2009/04/01(水) 01:11:58 ID:xQ/ARR0S
最近全画面表示試してみたが、意外なほどあっさり動いて拍子抜けした。
WinAPIをよく知らないけど、ひょっとするとJavaの方が簡単かも。
264 :名前は開発中のものです。2009/04/01(水) 11:28:33 ID:p79POMbY
Windows開発環境って言ったっていろいろあるじゃない
Java並みに簡単なのもあるし
265 :名前は開発中のものです。2009/04/01(水) 12:15:48 ID:7BklKs9t
そりゃそうだな。

ただ、Windows直のAPIをたたくかのような表現なので、
VC++でWin32Applicationで作ってるとみた!
267 :名前は開発中のものです。2009/04/01(水) 14:46:33 ID:jYiG2v4w
ちょうどC++でゲーム作ってるとこだよ。
Seleneっていうゲームライブラリ使ってるけど、それでもめんどい。
いやSelene自体は便利だけど、とにかくC++がめんどくってJavaに戻りたくなる。
268 :名前は開発中のものです。2009/04/02(木) 02:46:07 ID:AjLyz5Ea
java.exeとjarファイル単体配布を認めてくれると配るのもだいぶ楽になるんだけどね。
動かすためのランタイムだけならかなり小さくできるし。
269 :名前は開発中のものです。2009/04/02(木) 22:45:17 ID:6oSajStG
>>268
privateJREってしらんのか?
配布規定に従っていればJREとアプリ同根で配布できるんだぞ?
そのためのランタイムだ

ファイルサイズはいらないのを消せば一応多少減らせる
ただし、同梱必須のものもあったりするからなにをはずせるかは注意すること

逆にSDKにあってJREにないものもいくつかは同梱可能だったりするので
ちゃんとドキュメント読んでください
270 :名前は開発中のものです。2009/04/02(木) 23:34:41 ID:Vwj0NOpR
>>269
なんかコメントがすれ違ってないか。
>>268は最小構成で配布したいって言ってるわけで、JREをアプリに同梱できることは前提だと思うんだが。
「java.exeと、そのアプリの起動に必要なjarだけ付けて配布したいのに、
 ランタイムを配布しようとすると同梱必須のファイルが多くてでかくなってしまう」
という意味の書き込みだと解釈したんだが、漏れが深読みし過ぎてるのか?
271 :名前は開発中のものです。2009/04/02(木) 23:46:18 ID:aTxYjOf1
ふと思ったんだが、javaで市販のゲームってどのくらいあるんだろ。
ほとんど聞かないけど、tribal troubleくらいかね?
Mac(というか非windows)のシェアがもっとでかければ意味があるんだろうけど、
今はWindows用に作っておけば市場の99%は確保できるからなあ。

でも、ホビーの分野ではもうちょいJavaって選択肢が見直されてもいいと思うけど。
272 :名前は開発中のものです。2009/04/04(土) 00:43:54 ID:djCLzx0D
携帯では圧倒的か。
あとWinは99%のシェアないから。シェアは下がってる。

LinuxやMacで動作確認しておくってのは意味あることかと。
マイナーOSだけに有名になりやすいかも。
273 :名前は開発中のものです。2009/04/04(土) 07:26:06 ID:QAh2Zo9C
>>272
>携帯では圧倒的か。
そういう話はよく聞くね
実際携帯のソフト開発やったことないけど、素人でも簡単に開発環境とかデバッグ環境とか入手できるのかな?

>あとWinは99%のシェアないから。シェアは下がってる。
ただ、Serverとか業務除いた純粋な個人使用だと、やっぱりWindowsが高いんじゃね?
あと、Macユーザはともかく、Linuxユーザがわざわざ有料のゲームを買うところはそうぞうできない
せいぜい、バンドルされてるフリーの有名ゲームを5分程度プレイするだけのような気がする

>LinuxやMacで動作確認しておくってのは意味あることかと。
>マイナーOSだけに有名になりやすいかも。
Macは知らんが、Linuxはフリーのゲームであふれてるからな
有名になるのは難しいと思う
あと、MacはなにげにJDKの新しいのがでるの遅かった記憶がある

>>271
俺も知りたい
市販だけじゃなく、ソースを読むことが出来るフリーの有名作も知りたい
どうも、ネットで検索するとC++が多くてよくない(俺はC、Java、Rubyと業務で使うもろもろのスクリプトしかだめなので…)

274 :名前は開発中のものです。2009/04/04(土) 09:40:52 ID:pkIgwsnR
インストールベースだと、Windowsのシェアは9割切るのかな?
PCゲーム売上における比率だと、余裕で9割越え(というか、本当に99%くらいかも)
だと思うけど。
275 :名前は開発中のものです。2009/04/04(土) 10:41:11 ID:QqjfOZdf
たまにニュースに統計でてるのが90%〜95ぐらい。
調査ごとに若干違うがそれでもさすがに99%はない。
276 :名前は開発中のものです。2009/04/04(土) 13:03:07 ID:7rkbAzh1
とはいうけど、PCゲーム市場(流用できるからXBOXも入れて)というのはいくらぐらいの規模なの?
たとえばwiiの何パーセントぐらいか知ってるのか?
278 :名前は開発中のものです。2009/04/04(土) 20:53:43 ID:djCLzx0D
>>276
日本のPCゲー市場はWin95がでたあたりでコンシューマと比べるとほぼ0に近くなった
コンシューマが安くて性能高いからね

PC向けにゲーム作りたいのなら20年早く生まれるべきだったな
279 :名前は開発中のものです。2009/04/04(土) 22:24:11 ID:YZwnY7vO
PCの普及数は遥かに増えてるし、ネットという配布手段もあるから、フリー作家にとってはいい時代とも言えるかも。
280 :名前は開発中のものです。2009/04/05(日) 04:48:32 ID:TjOH8U8v
コンソール市場に比べてどれくらいなのか聞いてるんだけど理解できなかったのか?
それと、win95以前でも昔は昔でニフティーとかパソ通があったしあまり変わってないよ。
ゲーム製作スキルもなければ時代を読む眼力もないみたいだね。

たとえば、もしある程度のPCゲーム(3D)を数人で作れるとしても、PCゲーマー(グラボに3−5万も出すようなのが)相手なわけじゃないでしょ。
日本ではファミコン以降コンソールの歴史が長いしそのノウハウもあるし、PCでゲームをやるという考え方をもつPCゲーマーという存在が理解できない。
このあたりを解説してくれる人いるかな?
281 :名前は開発中のものです。2009/04/05(日) 11:30:22 ID:YT4Bbp0s
>>280
>ゲーム製作スキルもなければ時代を読む眼力もないみたいだね。
せっかく、この板が久しぶりに盛り上がってきたのに、なんでそんな他人を挑発して荒れるような事書くんですか><
この板で有意義に情報交換するためにも、礼節を持った書き込みをしましょう^^
282 :名前は開発中のものです。2009/04/05(日) 12:14:35 ID:HxgPZkkF
>>280
昔はMSX,PC88、PC98、X68、TOWNS等ゲームは普通に手に入るものだったよ。
今じゃ国産のゲームはエロ以外ほぼゼロに等しい。

だから、歴史はFC出現以前からあるPCのほうがあったんだけれども、
商業的には95登場あたりで終わったんだよ。

それにマイナーな一部の人だけが使うパソコン通信とインターネットくらべたらあまりにもシェアが違いすぎる。
ベースとなるPC自体の普及も何倍も違うし。
当時から変わっていないといえるのはアンタくらいでしょ。
283 :名前は開発中のものです。2009/04/05(日) 12:26:27 ID:osilM92R
そもそも、Javaゲームスレでフリーソフトの話をしているときに家庭用ゲーム機を出されても…という気はする。
284 :名前は開発中のものです。2009/04/06(月) 02:58:52 ID:E7G+JPJD
昔はパソ通で配布という手段があったし2chのような情報交換BBS(会議室)も活発にあった。
つまり今のインタネットとあまり違いはないってことを書いてあるんだけど、これを読み取る知能もないのか。
いちいちレベル低いよね。このスレは。

たとえば>>282とか長文書いている割には、コンソール市場とwindows市場のゲーム市場の比率(売上ベースとか)とか知らないんでしょw
285 :名前は開発中のものです。2009/04/06(月) 20:34:44 ID:27qn9CjQ
まあ、据え置きハードにはパッケージじゃなくともネットで課金できるシステムというか
ネットゲームそのものが市場として駆動してるからな。
総計すると、実はコンシューマとPC市場の差はそれほど無いのかもしれんな。
286 :名前は開発中のものです。2009/04/06(月) 21:46:40 ID:gbnm4hj7
そろそろJavaゲーム作成の話題に戻りたいが、話のネタが無いなあ…
287 :名前は開発中のものです。2009/04/07(火) 00:07:45 ID:NeAXnBms
ゲーム市場の話してるお子様はいつになったら消えてくれるのか。
290 :名前は開発中のものです。2009/04/07(火) 01:55:48 ID:Nbb0NFf2
というか、このスレ住人のほとんどはアマチュアなわけで、
オンライン系のゲームはホビーで作るのはけっこうハードル高いよ…

ホビープログラマが趣味で作るゲームとなると、Java単体か、+JOGLくらいが主な守備範囲だろう。
291 :名前は開発中のものです。2009/04/07(火) 06:48:16 ID:nGO2l7HE
ajaxがjavaと何か関係あるの?
ゲーム市場の話にもついてこれないし、javaのゲーム製作の話もできないし、このスレってjレベル低すぎるよねw
292 :名前は開発中のものです。2009/04/07(火) 22:17:25 ID:gS/m+Pfj
JOGLいじってると、VBO関係がけっこうややこしいな。
C系の言語だと、メモリに各変数形の配列が並んでいるイメージがすぐに思い浮かぶけど、
Javaだと一回Bufferに変換するから一手間多くなる。

JOGLは「配列+オフセット」の形に変形してポインタを隠蔽してくれてるけど、
VBOみたいに、どの順番でどの要素が入るかプログラマが指定するようなメモリ領域を扱う場合、
どうしても「面倒な処理」を表に出さざるを得なかったんだろうな。
293 :名前は開発中のものです。2009/04/08(水) 01:05:02 ID:IDvn4V//
>>291
芝君元気だな
サーバーサイドじゃねーの?
それともu10以降のscriptほうれるようになったjavaプラグインとか(意味ねーけど)

>>292
JOGLはOpenGLそのまんまべたで実装することに主観がおかれてるからあんなもんだ
Cより面倒でJavaより面倒という(そのかわりJavaでラップはしやすいか)
定数とか普通のオブジェクト指向ではやらないタイプだしね
294 :名前は開発中のものです。2009/04/08(水) 01:22:27 ID:cu0myc7l
JOGLの気持ち悪いのはGLUやGLUTだなあ。


GLU glu=new GLU();
glu.gluLookAt(…)

とか、いきなり普通に使えてしまう。
お前はどうやってGLにアクセスしているのかと。
CのAPIそのままなんだけど、Javaの感覚に慣れてるとかなり違和感がある。

GLU glu=new GLU(gl);

とかなら、直観的にわかるんだが、
295 :名前は開発中のものです。2009/04/09(木) 23:36:18 ID:QVY5xGft
JOGLのソースファイルの場所についての質問なんですが、
先日JOGLのプログラムでエラーが発生しまして、

Caused by: java.lang.UnsupportedOperationException
at java.nio.FloatBuffer.array(Unknown Source)
at com.sun.gluegen.runtime.BufferFactory.getArray(BufferFactory.java:124)
at com.sun.opengl.impl.GLImpl.glBufferData(GLImpl.java:783)

VBOを実装してたんですが、バッファ関連でエラーのようです。

// 頂点データ配列を転送
gl.glBindBuffer(GL.GL_ARRAY_BUFFER, vboId[0]);
gl.glBufferData(GL.GL_ARRAY_BUFFER, vtxBuff.capacity()*BufferUtil.SIZEOF_FLOAT, vtxBuff, GL.GL_STATIC_DRAW); <<ここでエラー

とりあえず、なにが起こっているのか確認しようとしてGLImpl.javaを探すものの…
………なんか、このファイル、JOGL1.1.1のソースファイルの中には入ってないっぽい。

GLImpl.javaの所在をご存知の方いたら教えてください。
296 :名前は開発中のものです。2009/04/10(金) 01:28:18 ID:y7sVQ1aZ
Buffer.capacity()は要素数じゃなくてバイト数だから、floatのサイズをかける必要はないんじゃないか?
ただ、このエラーはそれとは別で起こってる感じがするが。
297 :名前は開発中のものです。2009/04/11(土) 00:44:56 ID:MyX2Juju
ゲーム作成とは関係ない、煽りとしか思えないような書き込みが頻発したり、
ゲームの話に戻るかと思えばOpenGLの技術的な話になって初心者がついていけなくなったり、
なんか、このスレの話題は極端から極端に触れてる気がする。

住人がもっと増えれば、ゲームの話題でもうちょっともりあがれるのかね。
298 :名前は開発中のものです。2009/04/11(土) 07:46:25 ID:nrxnXQtg
>>295
GLImpl.javaの場所は知らんけど
Buffer#hasArray() で true 返す Buffer 渡さないとだめなんじゃね?
299 :名前は開発中のものです。2009/04/11(土) 19:32:25 ID:JxzVzDpH
>>298
>>295です。
どうもです。配列をwrapするようにしたらエラーが出なくなりました。
が、まだ表示されるところまで行きません。
もうちょっと試行錯誤が必要なようで、現在悩みつつ調査中。

Bufferまわりはけっこうややこしいので、日本語の解説書がほしいところです。
オライリーからJOGL本が出たら、5000円や1万円は出すのになあ。
300 :名前は開発中のものです。2009/04/15(水) 23:58:29 ID:D2aVXs86
JavaでOpenGLだとJOGLを使うのが普通だけど、ジョイスティック関係でデファクトスタンダードってあるのかな?
標準仕様ではまだ存在しないけど、JSRになってるくらいのものがあれば割と安心して使えるんだが。
301 :名前は開発中のものです。2009/04/16(木) 00:35:02 ID:Dl/qvkUP
jinput
304 :名前は開発中のものです。2009/06/14(日) 00:51:47 ID:YAYpVdk3
http://nsj.hp2.jp/asteroid001/

こんなの作ってみました。
まだ試作品だけどよかったら誰か意見ください。
305 :名前は開発中のものです。2009/06/14(日) 01:09:15 ID:MK353TQU
物だけ見せられても宣伝乙としか
306 :名前は開発中のものです。2009/06/14(日) 03:42:19 ID:g6ViaG4n
>>304
死なないシューティングゲームって爽快感があっていいね
もっと弾とか相手がぶっ壊れるときのエフェクトを派手にして
爽快感だけのシューティングゲーム作りたいなあって思った
307 :名前は開発中のものです。2009/06/14(日) 11:28:09 ID:YAYpVdk3
>>304です

>>305
確かにこれだけじゃただの宣伝ですね。すみません。

どんな物にしたいか:
・要するにいくつかのステージに渡って隕石を駆除するゲーム(制限時間付き)
・まず巨大だが速さが低い隕石がいくつかある状態から開始する
・直径50pixel以上の隕石は破壊されると分裂する。
・隕石の最大速度はサイズに反比例する。
・隕石に衝突すると、何らかのペナルティが発生する。
・隕石を破壊(分裂)させると、得点が隕石のサイズに応じて増える。

こんなところです。
よろしくお願いします。


>>306
見た目に関してはこれからも色んな効果を追加していくつもりです。
まずはもうちょっと画面を揺らす効果を強くしてみます。

実は途中までは死亡出来る仕様だったのですが、「死ぬまで続ける」よりも「制限時間内でより効率的に隕石を掃除する」
ようにするために急遽死亡判定を取り除いてみました。
308 :名前は開発中のものです。2009/06/14(日) 14:03:19 ID:dPzbkR7D
超巨大な隕石にちっぽけな自機が挑むっていう構図がいいね。
ただ、主砲が小さな隕石に当たってかき消されちゃうのは少しさびしいと思った。
爆風とかあってもいいんじゃないかな。
そうすれば効率的に隕石を掃除するっていうコンセプトにも一致するし。

あと反射、分裂ってところでbio100%の蟹味噌思い出した。
309 :名前は開発中のものです。2009/06/14(日) 15:23:29 ID:YAYpVdk3
>>306と>>307の意見を参考に、少し細かい修正を施して見ました。

http://nsj.hp2.jp/asteroid002/
・ゲームの速度を全体的に上げた。
・隕石が分裂する際に粒子を放出するように。
・隕石のサイズを更に少し上げた。
・主砲の仕様を変更。「ただの強力な弾を発射」→「貫通性を持った削岩機を射出」するように。
 爆発物もその内実装してみようと思います。なんで思いつかなかったんだろう。

結構発想を得る事が出来ました。ありがとう。

>>306
少しは爽快感増えましたかね。

>>308
俺も気に入ってます、この構図。
主砲弾のダメージ量を変えずにダメージの与え方だけを変更してみました。いかがでしょう。
310 :名前は開発中のものです。2009/06/14(日) 19:24:58 ID:g6ViaG4n
>>309
速度が上がって隕石を早く壊せるようになったから、ただ弾を撃って待ってる時間が減ってテンポが良くなってて、
爽快感も増えてる。
今のところ画面内だけを飛びまわれるけど、このゲームはテンポが速いからもっと広いマップを飛びまわれれば
面白いかなあと思った。でも、あまり広いマップだと隕石を見つける作業が大変になってつまらなくなりそうかなあ。
313 :名前は開発中のものです。2009/06/21(日) 03:27:34 ID:eJZ0zwQp
GTGEはだいぶ前に開発止まって、JMonkeyEngineに人が流れたと思ってた
ちょっとgoogleで検索してみたけど、JMonkeyEngineはほとんど情報ないね
2.0もよくわからん状態だし
Javaでゲーム作る人はフレームワークとか使わんのかね?
314 :名前は開発中のものです。2009/06/21(日) 19:11:59 ID:7M0/xeSN
GTGEはちょっとしたゲームにはすごくいいっぽいね
最近ゲーム勉強してフレームワーク作ろうとしてたけど使って見て馬鹿らしくなったw
315 :名前は開発中のものです。2009/06/21(日) 22:47:18 ID:JjTebPbF
Java自体が半フレームワーク
みたいなもんじゃね。標準で付いてるクラス使いこなせてれば
316 :名前は開発中のものです。2009/06/22(月) 10:23:26 ID:hPMjGfX/
フレームワークって概念をどうとらえているか知らんが、
普通はそういう言い方はしない。
Javaは基本的なAPIは提供するが、
フレームワークで準備されるような拡張API的な部分はかなり少ない。
多いなら、JakartaCommonsやらは出てこない。

とはいえ、PC上でやりたいことのほとんどにたいしての、
基本的なAPIを提供してくれているのには同意。
317 :名前は開発中のものです。2009/06/22(月) 21:30:21 ID:D4ho1sgZ
JMonkeyEngineがバージョンアップして、日本語の解説記事がガンガン出てきたら本気でゲーム作る
それまでは、会社でWebアプリ作ってます
318 :名前は開発中のものです。2009/06/23(火) 02:32:57 ID:Z4M/wv7L
そういえばjME2.0、鯖が重くてうまく落とせなかったな。

F/Wの話だが俺は2DゲーメインなんでjME程の3D機能はいらんな。
JOGL使って小型のものを作った。

ただ、スプライトをどう制御するか悩むね。
スプライトクラスが個々のフレームの表示時間も持つのか描画する時に管理するかとか。
319 :名前は開発中のものです。2009/06/24(水) 11:22:25 ID:GkwNF2sp
スプライトの当たり判定をアルファ値考慮して実装したら平均68msの実行時間がかかってしまう。
どうやって高速化するんだろ?
320 :名前は開発中のものです。2009/06/24(水) 11:52:19 ID:jlXOwoDQ
厳密なアルファ値判定が必要な物だけをリストしたらいいんでない。
もうやっているならスマン。

321 :名前は開発中のものです。2009/06/24(水) 15:53:53 ID:86MRbq/S
クロスプラットフォーム目指してるならSDLがあるでよ
Javaの方が手間がかからないけどね
324 :名前は開発中のものです。2009/06/24(水) 22:58:00 ID:q4KJV7Tw
>>319
大きさや個数が分からんから何ともいえんが
ピクセル単位の判定前に矩形チェックで弾くのはやってるとして

・大きなスプライトを使うんならあらかじめ32x32くらいの判定ボリュームを
 用意して精度を落としてしまう
・輪郭線に該当するピクセルだけをあらかじめ列挙しておき、
 そのピクセルから相手のキャラのアルファ値を見に行く(相互にやる)
・衝突判定用描画バッファを用意し、各ピクセルに色ではなくキャラクタ番号を
 書き込みながら、書き込み先のピクセルを見て判定する
 ※描画順序に判定条件が依存するので注意

のうちのどれかを実装するとか
325 :名前は開発中のものです。2009/06/24(水) 23:31:26 ID:E6VQkcW7
データ構造の仕様も判定の仕様もわからんが
あらかじめ判定のある不透明部分だけ抜き出して適当なデータ作っとくとか
326 :名前は開発中のものです。2009/06/25(木) 18:29:50 ID:Hr5vf1Co
>>319
ゲームの種類にもよるけど、ドット単位で厳格な判定をしようと言うのがそもそもの間違い。
(これはスプライト同士の場合。マウスカーソルとアイコン等、点とスプライトの判定ならドット単位でも大丈夫)
例えば、格闘ゲームの判定なんかは長方形の判定が数個配置してあるだけ。
キャラの喰らい判定も、パンチやキックの攻撃判定も、みんな2・3個の長方形で表現されている。
衝突判定が重要な格闘ゲームですらこうなんだから、他のジャンルもこんな感じ。

どうしても気になるんなら、当たり判定を複数の円や三角に分割して処理すれば軽さと精度を両立できる。
あまり細かく分割すると余計重くなるので、多少の誤差なら無視してしまってok。

STG等、敵の大群と自機の弾幕の間で判定を行なう場合の高速化方法もあるけど、
アルファを考慮して68msって規模なら必要無いので省略。
327 :3192009/06/27(土) 02:44:14 ID:jkJfUe9s
い、忙しい。コード書けねぇ。

スプライトの仕様は以下

・スプライトの描画座標系での位置(x,y)を持つ
・スプライトのサイズ:w * hを持つ
・表示される画像を持つ
・可視性-visibleを持つ

で当たり判定の実装は以下

1) 可視性をみる
2) 二つのスプライトの位置とサイズから重なっているか見る
--- ここから実際にアルファ値考慮 ---
3) 二つのスプライトの共有された矩形の情報を得る
4) 3)を元に二つのスプライトの画像の共有部のみそれぞれint[]に各ピクセルのargb情報を格納
5) 4)より得た配列二つのピクセルの全アルファ値をみる
6) 見たアルファ値の両方が完全に不透過ならば当たっていると判断

こんな感じ。
それで当たり判定メソッドにアルファ値を考慮するかどうかのフラグを指定できるので、
>>320の"アルファ値判定が必要な物だけ"というのはこれをoffにすればいい。(そのとき実装の 2) までやってreturnする)
それ以外は上記に挙げたこと以外は特にやっていない。

とりあえず>>324の"あらかじめ32x32くらいの判定ボリュームを用意して精度を落としてしまう"
を時間がある時に実装しようと思う。
レスくれたみんなありがと。
328 :名前は開発中のものです。2009/07/13(月) 20:05:52 ID:L/yN0+Rr
スレ違いだとおもうけど
就職作品で提出する場合
MIDPとDojaどっちで作るのがいいと思う?
てかどっちが主流なんだろう
329 :名前は開発中のものです。2009/07/13(月) 21:00:36 ID:m1tx5Cmh
どっちでも作れるなら両方作っておいたほうがいい。
私なら使うかどうかは別として常に保険は持っておく。

ただ「提出」となるとMIDPの方が用意しやすいんじゃないか?
330 :名前は開発中のものです。2009/07/13(月) 21:20:41 ID:L/yN0+Rr
>>329
了解ありがとう〜
333 :名前は開発中のものです。2009/09/11(金) 12:02:33 ID:yaQ7P120
質問させてください

Javaでゲーム作る場合は、Swingを使うのでしょうか?それともAppletを使うのでしょうか?
勉強中なのですが、ネットで色々と検索するとJFrame上に画面を生成している人とAppletに画面を生成している人がいます
どちらが一般的なのでしょうか?
PC用、携帯用とかで使い分けるものなのでしょうか?

よろしくお願いいたします
334 :名前は開発中のものです。2009/09/11(金) 14:11:16 ID:UvBFGDsD
アプレットでSwingが使えるJAppletというのもあるよ!
ブラウザ上で動かしたいならアプレット、単独で動かしたいならJFrame
やろうと思えば両用に作ることもできるが、好みで選べばいい
携帯用は根本的にまったく異なる
335 :名前は開発中のものです。2009/09/11(金) 20:42:59 ID:mQuEMJXs
SwingかAppletかっていう選択はおかしい。

選ぶのはまずターゲットにする実行環境を選ぶ。
・アプレット(ブラウザ内で実行)
・アプリケーション(ダウンロードして実行)
・携帯
WebStartとかFXとかもある

それとは別に使うライブラリとして
・Swing
・AWT
を選択。他にもSWTやJOGLを使う手もある。
336 :名前は開発中のものです。2009/09/12(土) 14:13:51 ID:IEF6R4ya
レスありがとうございます
基本的に、ダウンロードして遊ぶアプリケーションを考えています

色々と調べましたけど、appletは過去に現在のFlash見たいな位置づけにあった技術ってことでいいんですかね?
Java Web Startとかも同じようなことやっているみたいですし、今回はappletは無視の方向でがんばってみます
338 :名前は開発中のものです。2009/09/13(日) 18:57:10 ID:Myip4/jy
質問者のレベルからいっておそらくJava2DだけでいいからSwingでもAWTでもかまわんかと
339 :名前は開発中のものです。2009/09/14(月) 12:43:38 ID:PZzYIY3C
>>333
いつの日かAndroidにRhino組み込んでゲーム作る日が来るよ
343 :名前は開発中のものです。2009/10/01(木) 07:27:17 ID:8Vk+ua23
誰もいないなら削除依頼だしたほうがいいですかね?
345 :名前は開発中のものです。2009/10/01(木) 23:01:58 ID:8Vk+ua23
よかった!私以外にも人がいたみたいですね!!
削除依頼は延期させてもらいます!!!
346 :名前は開発中のものです。2009/10/01(木) 23:31:47 ID:4EjDbNUg
Javaだと、標準機能だけで2D系ゲームならすぐ作れそうだよね。
新入社員教育で、「期間8時間x5日間の課題としてテトリスクローン作成」
程度のメニュー組んでも大丈夫そうな気がする。
347 :名前は開発中のものです。2009/10/02(金) 07:41:58 ID:aJX6kioG
>>346
テトリスだとアルゴリズムの部分を除けば必要な機能はキー入力の処理と画像表示だけだよね
疑問なんだが、C#とかC++とかにはそういう機能は標準ではないの?
348 :名前は開発中のものです。2009/10/02(金) 08:03:30 ID:Zzm+z8T1
>>347
C++は画面出力用の標準ライブラリは存在しない。
C#にはあったと思うけど、本格的に使ったことがないんで自信なし。

Javaで40時間で作れそうなゲームというと、大抵の落ちものパズル、インベーダー、パックマンとかかな。
黎明期のゲームはわりとどうにかなりそう。
もちろん、敵も味方も丸や四角になるけど。
349 :名前は開発中のものです。2009/10/02(金) 11:39:50 ID:7JGC3MOY
>>343
スレがのこってるということ自体に意味があるので自然の落ちない限り残すのが普通だろ
たとえば間をおいて質問等があった場合スレを新規に立ち上げるのと書き込むだけでは敷居が違いすぎる

スレは一個人のものではないんだぜ?
スレはたった時点で「1」の手を離れてるんだぜ…
350 :名前は開発中のものです。2009/10/02(金) 12:37:48 ID:a6aeKiDs
今のJavaはゲーム作成環境としてもけっこうこなれてきたと思うんだが、
フリーや同人の世界でもJava製ゲームってあんまり無いね。
351 :名前は開発中のものです。2009/10/02(金) 18:33:12 ID:+i1IzwK6
PCのスペックがどんどん上がってきて、比較的大規模なソフトウェアがJavaで
作られて実際に使われることが多くなったから、Javaの評価は少しづつ上がってると思う。
開発者にとっては楽な言語だからもう少し増えてもよさそうなのになあ。
352 :名前は開発中のものです。2009/10/02(金) 19:52:15 ID:LwoQ3y57
楽な言語ではないんじゃないかなw
楽な環境だとは言えなくもないけど
今時ならScalaやJRubyでゲーム製作ってのもアリかもな
353 :名前は開発中のものです。2009/10/02(金) 20:52:06 ID:y+fTXPF0
最近、Applet動かすとき一瞬で起動してきもちい。
Java6になってだいぶ良くなった気がする。
FlashやDirectXに浮気せずAppletやJOGLで頑張りますよ。
やっぱり俺はJavaが好き。
354 :名前は開発中のものです。2009/10/03(土) 01:10:42 ID:odjYAQpQ
>>348
俺の中ではC++とC#はVisualStudioのイメージしか無いからGUI関連は充実してると思ってた

>>350-351
JavaはなんだかんだでWebアプリが主戦場だからね
SwingはSwingUtilities使ってイベントディスパッチスレッドでアクセスするようにしなければならないとか、仕様だかバグだかわからん状態だし
Sunも買収されちゃって、今更Webアプリ以外の分野に大量の技術者投入してくれるとかありえないだろうから、この状態のままだろうね、、、
JMonkeyEngineとかもあるけど、プロジェクトの勢いはあまり無さそう

それと、ネットに落ちているサンプルコードが少ないのが痛いかな
C++は大量にあるのに、Javaは少ない

どう考えてもC++よりJavaの方が書きやすいし、C#と比べても別に遜色ないから、もっと流行って欲しいけどなー
355 :名前は開発中のものです。2009/10/03(土) 17:26:03 ID:9zReYZbr
>>354
GUIは安全にやろうと思ったらシングルスレッドモデルになるのはなのはどれも当たり前
Javaに限らんぞ
356 :名前は開発中のものです。2009/10/03(土) 19:21:25 ID:/8MbXK30
マルチスレッドなGUIライブラリを作ろうと思ったらそういったものも作れるはずだけど、
GUIを扱う人すべてがマルチスレッドに精通してないといけなくなってしまう
スレッド、同期、排他制御等の正しい知識がなくこれらを扱えない人はGUIお断り、ってのは門戸が狭すぎる
そもそも別スレッドを起動しなきゃイベントディスパッチスレッドを気にする必要なんて無いんだから、
スレッドを使う人だけがスレッドを知ってれば済む今の仕組みがたぶん一番いいんだよ
ところでゲームでSwing使うの?
357 :名前は開発中のものです。2009/10/03(土) 19:23:55 ID:Z1ihaRDW
>>356
Window動作するゲームだとJFrameは使うと思う。
JMenuBarとかも使われそう。
358 :名前は開発中のものです。2009/10/04(日) 02:19:53 ID:w83xHhR5
どうせBufferStrategyかGLCanvasになるからFrameにCanvas張り付けて中で全部自前だなぁ。
設定ダイアログを別に付けるならSwing。
359 :名前は開発中のものです。2009/10/04(日) 08:22:05 ID:c2zkrtYj
>>358
基本的にFrame一個作って、その上のBufferStorategyに全部処理させるのが基本なのか
RPG作るとしても、コマンドとか戦闘画面とかは全てお絵かきすべきであって、いちいち新しいFrameとかPanel立ち上げたり、コマンドをあらわすTable作ったりはしないのが正解かな
360 :名前は開発中のものです。2009/10/04(日) 10:18:10 ID:ouCzztcy
>>359
Swingコンポーネントを使う意味があるとしたらSLGだと思う。
RPGとかACTなら、基本的に全部自前で処理じゃないかと。
361 :名前は開発中のものです。2009/10/04(日) 13:09:00 ID:GkatRSH2
RPGのウィンドウやなんかは独自L&F実装したSwingでやってもいいんじゃね?
362 :名前は開発中のものです。2009/10/04(日) 13:10:18 ID:Ts8Codr2
半透明パネルとか可能だからそれもありかもね。
メリットとしては、マウス関係のイベントとかをswingで取得できることか。
364 :名前は開発中のものです。2009/10/04(日) 16:03:38 ID:TgmjWOtf
SwingとJOGL混ぜたら透過周りがすごいことになったような・・・あれはJava3Dだったかな。
366 :名前は開発中のものです。2009/10/04(日) 18:54:04 ID:yghp6+zA
>>364
GLCanvasとswingは混ぜるな危険だけど、GLJPanel使えば問題ないんじゃないか?
367 :名前は開発中のものです。2009/10/04(日) 22:32:16 ID:xOGATpGU
>>366
やってみればわかる
369 :名前は開発中のものです。2009/10/06(火) 15:09:55 ID:DNDsP0px
JAVAのゲーム作り関係の本で初心者にお勧めなのってどれだろう?
古すぎるやつは買わないほうがいい?
amazonの中古で1000円切ってるのあるけどさ

環境はeclipseです
370 :名前は開発中のものです。2009/10/06(火) 23:20:12 ID:1V/8RsIs
基本的な質問かもしれんが、RPGとかシミュレーションを作成する場合、命令入力やステータスを表すWindowをあらわすクラスを生成して、それをpaintComponent(Graphics g)で描画するのが基本なのかな?
Webアプリしか作ったこと無いから、イメージがわかない

>>369
「14才からの〜」が評判良かったような気がします
読んだことは無いけど

371 :名前は開発中のものです。2009/10/07(水) 00:18:11 ID:wMLe0J1A
>>370
アクション要素なしならそれでもいいけど、どの方式でやるにしろ、
オフスクリーンバッファで全部描画処理を完成させておいて。

そうすれば出力方法は何でもいいし、ウインドウにあわせて描画を拡大縮小させるとかできるから。

paintComponentやpaintメソッドとかでゲームのオブジェクトの描画処理はだめね。
また、これらのイベントの場合ダブルバッファだと問題が起きるからトリプルバッファにすること。
373 :名前は開発中のものです。2009/10/07(水) 19:16:17 ID:8uGSJp5y
>>369
少なくともJava5以降を対象にしたものを買った方がいい。
総称型や拡張forのお陰でプログラムスタイルがかなり違う。

ただ、本気のゲーム作りのための参考書ってあんまり無い気がする。
JOGLやLWJGL系は皆無。
374 :名前は開発中のものです。2009/10/08(木) 11:14:07 ID:LM8f1SUk
>>371
ごめん、何を言っているのかまったく理解できない、、、
レベル低くてすみません
paint系メソッドはすでに非推奨なの?
てか、描画はどうすればイイの、、、

サンプルになるものとか紹介していただけると嬉しいです
375 :名前は開発中のものです。2009/10/08(木) 19:49:44 ID:C8pidVMn
>>374
単にGL使えって意味じゃないか?
GLCanvasとかGLJPanelを使う場合、paintとかpaintComponentじゃなくて
displayが呼ばれる。
376 :名前は開発中のものです。2009/10/08(木) 21:52:03 ID:LM8f1SUk
>>375
2DのゲームでもすでにGL...系使うのが当たり前なのかな
俺はてっきり、JFrameに直接描画するか、上にJPanelかなにか張って、それにpaint系で描画するものだと思ってた
いずれにしても、参考にしても良いサンプルが欲しい…
377 :名前は開発中のものです。2009/10/08(木) 23:44:25 ID:C8pidVMn
2DゲームならGraphicsクラスのメソッド使ってもそれなりに実装出来そうなきがするなあ…
加算半透明以外の要素は大体そろってるし。
378 :名前は開発中のものです。2009/10/09(金) 01:14:28 ID:JcFEYjJn
>>376
paintのメソッドでもかまわないよ。
ただし、きれいにまわすには描画用のバッファが2枚必要。
paintイベントはOSによっていつ呼ばれるかわからないというのに注意しないといけないからね。

再描画はrepaint自前で呼び出すのみにするという方法もあるけどフレームレートが言っていないと厳しい。
その場合setIgnoreRepaintをよんで無効にしておくこと。GLでもそうだけど。
379 :名前は開発中のものです。2009/10/09(金) 20:00:50 ID:kPk3xGOi
Java5以降は標準でダブルバッファだと思ったけど、トリプルバッファまでやる必要あるかなあ…?
380 :名前は開発中のものです。2009/10/09(金) 20:37:11 ID:4MfvuD2J
>>379
>ダブルバッファだと思ったけど
そうなの?
だとすると、トリプルバッファ以上やらない限りはBufferStorategyは使わなくていいのかな?
あれは、JFrameとCanvasでしか使えなかったから、JPanelで自動的にダブルバッファにしてくれるなら、嬉しいよね
381 :名前は開発中のものです。2009/10/09(金) 21:35:46 ID:JcFEYjJn
>>379
Swingの自動のダブルバッファとは違う話。

ゲームの処理がまわるスレッドがあると思うけど、そこで使う描画バッファが1枚だと
次のフレームの描画に使用可能なバッファが存在しない。

paintイベントで表示するときに前のフレームで描画したバッファが使用中だから。

アクティブレンダリングならその問題は起きないが、フレームレートが一定はないと厳しい。
paintイベントはいつ起こされるか判らないから。
382 :名前は開発中のものです。2009/10/10(土) 13:58:45 ID:hq8APMAs
>>381
自分が前に実装した時はゲームスレッドを用意して、そこからrepaint呼ぶようにしてた。
この場合、システムがrepaintしたときは内容に変更が無いから同じ絵が再描画される。
フレームレートとかはあんまり気にしてなかったな。

実際問題として、全画面のアクションゲームとかでなければあんまり気にしなくていいと思う。
383 :名前は開発中のものです。2009/10/10(土) 14:55:42 ID:nBhhlmBk
>>382
そのrepaintする際のバッファが1枚だと描画中はだめなんで排他制御が必要になる
384 :名前は開発中のものです。2009/10/10(土) 15:12:17 ID:ufkJMSFN
1フレーム画面が乱れるとかなら、ホビーゲームのレベルで特に気にしなくてもいいような。
そこでハングアップにつながるようだと問題だけど。
385 :名前は開発中のものです。2009/10/10(土) 18:56:19 ID:nBhhlmBk
イベントディスパッチスレッド以外でゲームの描画すると不具合は生じるね。

フリーズ等はないとは言い切れない。

ハードウェアアクセラレーションを使うってことは実装上オフスクリーンバッファを
VRAMに確保しているはずなのでへんに動くと怖い気もする。

実装依存にするのも将来のバージョンで動かなくなる可能性もあるし。

ダブルバッファの場合ゲームのスレッドから描画処理だけ抜き出して
InvokeAndWaitで処理させてからのrepaintというのが必須になる。
386 :名前は開発中のものです。2009/10/10(土) 23:49:32 ID:GjpbDtnI
トリプルバッファってのはオフスクリーンバッファと画面エフェクト合成用バッファがいるって意味じゃね?

>>385
AWTと並列処理の組み合わせでいける。シングルスレッドなSwingを使うから余計変なことになる。
というかそもそもパッシブレンダリング使うからrepaintまわりで排他制御が必要になるんじゃ?
387 :名前は開発中のものです。2009/10/11(日) 01:22:50 ID:ssskajUX
AWTもシングルスレッドモデルだよ。
それに今の話の流れはパッシブレンダリング上での話。
388 :名前は開発中のものです。2009/10/11(日) 10:14:08 ID:Vof/a9NH
排他処理する場合、repaintをオーバーライドする時にsynchronizeつければいいだけ?
389 :名前は開発中のものです。2009/10/11(日) 11:08:47 ID:ssskajUX
描画バッファに対してrepaintの中と描画処理部分にsynchronizedブロックをつけるとよい。
少しでも高速化したい場合はLock構文を使うとよい。

したがって描画部分をまとまるようにすること。ゲームのロジックの中で描画していくのはさける。
390 :名前は開発中のものです。2009/10/11(日) 13:10:06 ID:b7DeQBBg
14才からはじめるJavaゲーム製作だかなんだかの本を軽く立ち読みしたけど、排他制御には触れていなかったような、、、
JFrame上でBufferStoratgy使って描画するように書いてあったと思うんだが、これだけじゃ、不足なのかな?
391 :名前は開発中のものです。2009/10/11(日) 13:21:07 ID:S5wUXJ38
JOGLだとFPSAnimatorに任せられるから、その辺は全然気にしたことなかったなあ。
392 :名前は開発中のものです。2009/10/11(日) 13:22:26 ID:ssskajUX
>>390
それはアクティブレンダリングでしょ?今回の話とは違う。
ペイントイベントつぶすsetIgnoreRepaint()使ってるはず。
393 :名前は開発中のものです。2009/10/11(日) 13:25:58 ID:ssskajUX
>>391
FPSAnimatorはイベントディスパッチスレッド上でdisplayがきれいに動くようになってるからね。

AnimatorやJava2Dなどでパッシブレンダリングやろうとすると自前での管理が必要になる。
394 :名前は開発中のものです。2009/10/11(日) 15:26:14 ID:7VD6H4ki
しかし、なかなかゲームとしての完成品にたどりつかん。
「JOGLをいれてGLCanvas…、おお、動いた!」
「GLSL? ためしにウェブ参考にPhongシェーダー実装して…、おお!これがピクセルシェーダー!」
みたいに、断片断片を動かしては満足してしまう。
社会人になると、なかなか本腰いれてやろうって気にならないしなあ。

jMEは面白そうだが、趣味のために英語資料を読むのはめんどい。
日本語資料がもっと充実してるといいんだけど。
395 :名前は開発中のものです。2009/10/11(日) 17:50:39 ID:/J/iPP1R
動画がうごかねぇ・・・
マック環境でうごかねぇ・・・
399 :名前は開発中のものです。2009/10/12(月) 14:54:55 ID:2xaDgDSW
そういや、みなさんモデル情報の持ち方ってどうしてる?
三角分割するのは当然として、自分はフラットポリゴンとグーローポリゴンが混在する場合の効率のよい
持ち方が今一つ詰め切れて無い。

現状だと、ポリゴンが頂点を共有しないという不効率な実装になってて、かなりメモリを浪費してる。
というのは、メタセコイアの形式に慣れてるんで、ポリゴン中心の設計だから。
マテリアルをポリゴンごとに指定できるようにすると、座標を共有する頂点でも
ポリゴンごとに別管理しないといけない。

正四面体で言うと、本来なら頂点は4つで済むところ、各ポリゴンが頂点を指定するので
内部的には12頂点が存在する。
そのかわり、各面それぞれ色が違っても問題ない。

頂点中心の設計にするとこの辺は効率化できるはずなんだけど、そうすると
各面それぞれ色が違うような多面体は例外処理が必要になり、メタセコイアからのインポートが面倒になる。
現在思案中。
400 :名前は開発中のものです。2009/10/12(月) 17:19:28 ID:ry4or4sG
>>399
> マテリアルをポリゴンごとに指定できるようにすると、座標を共有する頂点でも
> ポリゴンごとに別管理しないといけない。

メタセコイアは面がマテリアル番号を持ってるから、頂点を共有して面を色分けしても
何の問題も無いはず。

部分フラットシェーディングについては俺も頂点を共有しないことで対応してるよ。
フラットな面がある程度多いなら、その範囲だけ別オブジェクト(レイヤ)にして
スムージング角度をゼロにすれば、範囲内外の境界以外は頂点を共有できる。
401 :名前は開発中のものです。2009/10/12(月) 17:32:20 ID:2xaDgDSW
>>400
>>399だが、glBegin〜glEndだとマテリアルバラバラでも問題ないんだけど、
同じ頂点でマテリアルが違う場合、VBOにできないんだよね。
あれは頂点を座標、法線、テクスチャ座標でパックするから。

まじめに考えると、メタセコから読み込む時点でその頂点を共有するポリゴンを解析して、
法線とマテリアルとテクスチャ座標が同じなら同一頂点とみなし、そうでないなら別の頂点とみなすという
処理をいれるのが一番という気がしてきた。

内部フォーマットはあくまでOpenGLに寄り添う方向性で。
402 :名前は開発中のものです。2009/10/12(月) 18:01:47 ID:ry4or4sG
>>401
デバイス側も含めた問題でしたか、トンチンカンなレスしてすみません。
403 :名前は開発中のものです。2009/10/12(月) 18:07:34 ID:2xaDgDSW
いや、別に謝られるような内容じゃないっす

あと自分のソース見直してみると、モデルのクラスに
頂点登録やポリゴン設定とかのメソッドがあって、設計の不備に気が付いた。

同じクラスにしてるんで面倒なことになってたようだ。
つまり、頂点やポリゴン単位で細かく制御できるクラスと、
「コンパイル済み」みたいな、Bufferで管理するクラスに分けるべきだったんだな…
どうせいったんVBOにしたあとは頂点とかいじれなくなるんだし。
(Java3Dはそういう発想だね)

ただ、その場合はボーンとかの処理をどうするか。
頂点座標をCPUから参照できなくなるから、頂点とシェーダを使わざるを得なくなる気がする。
なんか、趣味プログラマには敷居の高い領域になってくるなあ。
404 :名前は開発中のものです。2009/10/12(月) 20:33:25 ID:84ezoqsI
エディタの場合、考え方として、
「このポリゴンはどのマテリアルか」になるけど、
ゲームとして実装する場合は
「このマテリアルが使われているのはどの頂点か」という考え方になるわけだよね。
そうしないと、描画中にマテリアルの切り替えが大量に発生してしまう。
405 :名前は開発中のものです。2009/10/12(月) 23:01:44 ID:84ezoqsI
Nordとか見ると、Javaゲームもかなりのことができるんだよね。
WebStartでMMOゲームが起動するというのは、オンラインゲームの管理としては
非常に分かりやすいし。
406 :名前は開発中のものです。2009/10/14(水) 00:20:23 ID:thuOI5ho
半年振りくらいにこのスレ来たけど、
まさかの盛り上がりだな。
俺も2年ほど放置したアプレットゲームの制作を再開するか。
407 :名前は開発中のものです。2009/10/14(水) 04:19:41 ID:1Hrt5Svp
皆さんJAVAでゲーム作る際に環境は何を使ってゲーム作ってますか?
俺はエクリプスです
409 :名前は開発中のものです。2009/10/14(水) 12:51:21 ID:yCmNZ1Ay
EclipseのJAR Export Wizardって微妙に使いにくいと思ってたんだが、そうかみんな使ってないのか
俺もantかなんかにしよ・・・
410 :名前は開発中のものです。2009/10/14(水) 14:34:05 ID:Ji4Xwih5
NetBeansだな。
ビルドにant使ってるのでカスタマイズも楽な上に、
何もしなくてもライブラリへパスを通す設定がされた
実行可能jarが出来上がるようなant設定がしてある。

Eclipseのプロジェクト開けるのでEclipse使いにもやさしいかも。
411 :名前は開発中のものです。2009/10/14(水) 22:09:11 ID:M2HVcjGa
JDK6 + eclipse3.5で今度こそゲーム作る
シミュレーションRPG作る
絶対に作る
宣言しておけば、たぶん作り始めると思う
412 :名前は開発中のものです。2009/10/14(水) 23:32:04 ID:L+b49hPv
宣言すると同時にコテつけて
ここで進行を記録しておくと、さらに完成に近づくと思う
413 :名前は開発中のものです。2009/10/14(水) 23:39:13 ID:l8AjUbxo
2DベースのSRPGなら、比較的完成にこぎつけやすいゲームかも。
シナリオの区切りがあるから、メリハリもつきそうだし。
415 :名前は開発中のものです。2009/10/15(木) 00:24:31 ID:IgjPbfHm
>>411
応援するよ
がんばれ
俺もなんか作る
416 :4112009/10/15(木) 21:22:48 ID:lHaDd0Hq
応援ありがとう
いきなり仕事が忙しくなったので、開発ははかどらないかもしれないけどがんばるよ
とりあえず、毎日何かすることに決めた
今日はJDK6のアップデートとeclipseのアップデートをしました

このスレのログみると自分はかなり低レベルだけど、とりあえず、簡単なものから作ろうと思います

コテハンとか進行記録は無理そうだけど、毎日なにかやるよ!
417 :名前は開発中のものです。2009/10/16(金) 00:36:05 ID:PZVqNOq4
俺もがんばろうっと。
作成しているゲームがあまりに恥ずかしいので
アドレス晒せないのが申し訳ないが。
419 :名前は開発中のものです。2009/10/16(金) 23:44:40 ID:T6yXgGZl
そもそも、LWJGLでゲーム作ってる日本人って三桁いないと思う。
…二桁もいないかも。
420 :名前は開発中のものです。2009/10/17(土) 15:16:24 ID:YqwXxzdo
昔は居ただろうが今は標準拡張のJOGLが正式リリースされたからな。
421 :名前は開発中のものです。2009/10/17(土) 18:44:41 ID:oMDkhpiN
…まあ、JOGLでゲーム作ってる人もそんなに多いとは思えないけどな…
そもそも、日本でJavaゲームというと商用はほとんど皆無だし、フリーor同人ゲームにしてもほとんどがWindowsだし。

Win32>.net>flash>mac>Javaと、勢力順でこんな感じじゃないかと思う。
424 :名前は開発中のものです。2009/10/18(日) 17:29:54 ID:uM0lrslx
オライリーからColladaの解説書とかでないもんかな?
OpenGLと相性のいい設計になってるはずだし、JOGLゲームで3Dを扱う場合の参考になりそう。
というか、正直、仕様書読むのめんどいので…
425 :名前は開発中のものです。2009/10/19(月) 00:47:05 ID:Opw9A39m
ツクール系>個人製作のアドベンチャー作成スクリプト>>>>>>>>>>>>>>HSP>>>>>>>>>>Javaとか.netとかじゃね?
吉里吉里とかも意外と使ってる人多いし、HSPも多い、ツクール系に関してはものすごく多い
それと、ちょっと前まではVisualC++が結構多かった気がする
426 :名前は開発中のものです。2009/10/19(月) 02:14:36 ID:xfJue+KX
何いってんの?
ここはPLでゲーム作るスレ。ここだとそのツールから作るわけになるんだが。
427 :名前は開発中のものです。2009/10/19(月) 08:05:58 ID:7FbO+rDm
バカはすぐ同人やフリーウェアの話をしたがる。それはこの板の伝統。
428 :名前は開発中のものです。2009/10/20(火) 22:17:16 ID:DCTVxMp1
>>426-427
すみません。
馬鹿ですみません。
スレタイが「Javaゲーム作成総合スレ」なので、基本的にJava以外の話は禁止だと思ってました。
しかしながら、.netだとか色々な話がでてきたので、自分も調子にのってしまいました。
本当にすみません。
もう、二度としません。
429 :名前は開発中のものです。2009/10/20(火) 22:54:00 ID:Ly5jz5+S
.netはPLでflushはいまやASがあるだろ。ツールがスレチと言ってんだろ。
430 :名前は開発中のものです。2009/10/21(水) 00:24:52 ID:65KOfpJq
しかし、話がJOGLに行ってしまうとJava固有のネタはあんまりでなくなってくるな。
432 :名前は開発中のものです。2009/10/21(水) 23:49:03 ID:L3jjgFOp
GLCanvasとGLJPanelはどっちが好き?
自分はSwingと組み合わせることを考えて汎用性でGLJPanelを使っているが、
性能的にはGLCanvasの方が良いって聞くよね。
434 :名前は開発中のものです。2009/10/22(木) 17:01:42 ID:FB3nMFnG
統合環境等ツールで使いたいのならGLJPanel
ウインドウ占有するゲームならGLCanvas

ただし、GLJPanelを使えば重ねあわせがちゃんと動くというものでもないのが厄介。
435 :名前は開発中のものです。2009/10/22(木) 23:48:12 ID:JRkMaRys
OpenSceneGraphがJava対応してくれないもんかな。
jMEに比べれば資料も多いし、ゲームにも使えそうだし。
436 :名前は開発中のものです。2009/10/23(金) 18:21:42 ID:GVwudGx0
Javaで商用ゲームが少ないのは、動作確認がしんどいからというのがあるのかな?
OpenGLからGPUが叩けるようになると、VM上で動くことのペナルティはもはや
ほとんど問題じゃないような気がするし。

…もっとも、フリーや同人ゲームも少ないから、単にC++プログラマとJavaプログラマの
数の差が大きな理由かも。
437 :名前は開発中のものです。2009/10/23(金) 22:17:10 ID:WlC+lKAY
デスクトップのjavaやってるマが少ないのかと。
海外のネットゲーだとクライアントがjavaだったりする。マイナーだが。
438 :名前は開発中のものです。2009/10/23(金) 23:34:50 ID:GVwudGx0
「javaでもそれなりのゲームが作れるんだぜ」
というデモンストレーションがJake2だったと思うんだが、
だからと言ってJavaゲームが登場するわけでもなかったね。

Javaはデバッグしやすいし、プログラム作成の工数はC++系よりも少なくてすむと思うんだが、
最近のゲームの工数だとデータ作成が圧倒的で、プログラムの占める割合はそれほど多くない感じだしな…
441 :名前は開発中のものです。2009/10/24(土) 01:16:19 ID:wzkOY8Na
PS3LinuxでJOGLが使えたら、ちょっと面白げではあったんだけどね。
PCで作りかけのゲームとか動かしてみたかったし。
…現実にはGPU封印だったけど。
443 :名前は開発中のものです。2009/10/26(月) 22:06:21 ID:hllCy56y
仕事や学校に通いながらの半年ってけっこう短いけどな…
落ちものパズルとかならどうとでもなるだろうけど、
本格的なのを最初から作ろうとするとまず挫折するよ。
444 :名前は開発中のものです。2009/10/26(月) 22:35:09 ID:ZHbA3j0j
まぁ、このスレの平均的な住民像は「35歳独身無職引きこもり」だから何とかなるだろ
445 :注目2009/10/28(水) 11:33:04 ID:QwfmzkGR
696533203124999



中学生が 自主制作ハメ撮りAV 売り捌いてたらしい ★12
http://yutori7.2ch.net/test/read.cgi/news4vip/1256682280/


まとめwiki
http://www31.atwiki.jp/shotakon_pachinkas/




805816650390624
448 :名前は開発中のものです。2009/11/10(火) 23:28:35 ID:jiRKtvC7
保守するならついでに話題提供してくれよ。例えばJavaFXとかってどうなの?
ムービー対応してるなら、割と本格的なゲーム基板になり得るの?
450 :名前は開発中のものです。2009/11/13(金) 00:18:46 ID:sBpNol3C
>>448
スタンドアロンの配布が絶望的な時点でFXはねーよ
そもそもメリットないし
451 :名前は開発中のものです。2009/11/13(金) 09:34:44 ID:ROqonUQx
FXは位置的にはSilverlightとかFlashの対抗馬なんだよな
昔のApplet全盛期には考えられないけど、完全に後塵を拝している感があるな
452 :名前は開発中のものです。2009/11/17(火) 12:20:38 ID:FGBrHn83
JAVAアプレットでシューティングゲームを作っているのですが、 サウンド関連で質問があります。
au形式だとかなり音質が悪いので、wavでサウンドを実装したいのですが、 そのままのwavでは容量が大きすぎるので、中身mp3のwavに変換したら 音がなりませんでした。
ある程度の音質を保ったまま、JAVAアプレットで実装可能で容量の小さい形式に変換する 良い方法はありませんか?
453 :名前は開発中のものです。2009/11/17(火) 18:49:43 ID:uPDP5QI5
現在のJavaで圧縮音源に対応するには外部ライブラリが必須。
どうしても外部ライブラリを使いたくない場合は、java.util.zipパッケージの機能でwavをzip圧縮して使う。
mp3と違って容量が1割くらいしか減らないけど。
454 :名前は開発中のものです。2009/11/17(火) 22:09:19 ID:6v3HQdPf
JavaSoundは無圧縮WAVとauのみかな

mp3はライセンスが絡むので公開するならやめとき

わからないならwavのビットレート下げるのが一番いいよ
たとえば効果音はステレオである必要は大概の場合ないし、8bitでいいよね
8bit-11KHz-monoならそれほどでもないかな
音質が問題になるようなものは22KHzにすればよい

BGMでストリーム再生するならoggVorbis等のほうがよい
これはWindowsでも同じだが

ライブラリはググれば一発で出てくる
455 :名前は開発中のものです。2009/11/17(火) 23:53:48 ID:6cI0Sz7G
Vorbis SPIでもバンドルしてJava Soundでいいんじゃないだろうか。
俺はBGMはogg vorbis、音声はFlac、ジングルは無圧縮wavにしてる。
456 :4522009/11/18(水) 19:56:52 ID:aee6rcNi
>>453-455
レスありがとうございます。
アプレットは勉強し始めたばかりで分からないことばかりですが、
皆さんのレスを参考に調べてみます。
457 :名前は開発中のものです。2009/11/18(水) 23:29:17 ID:74GYtLg5
Vorbis SPIはバグもちなのが厄介
Jorbisのバグつきサンプルそのままいれこんでるっぽい
458 :名前は開発中のものです。2009/11/20(金) 22:43:35 ID:ukbsOzCr
音楽ながしたいなら、画面にテキストで「このシーンは○○のCDをかけながらプレイして下さい」とか出したらいいんじゃね?
そしたらdrawStringかなにかの知識さえあれば問題ないし
461 :名前は開発中のものです。2009/11/21(土) 13:50:51 ID:GMSZKW+x
BGMならApplet.getAudioClipでmidiが指定できるんじゃなかったっけ
実行環境が対応してるかは知らんけど
462 :名前は開発中のものです。2009/11/21(土) 15:09:40 ID:hakoreVR
mp3といってるからサンプリングデータがいいんじゃないの?
463 :名前は開発中のものです。2009/11/21(土) 17:36:08 ID:QGK3+ipq
2Dポリゴンでゲームを作ってみたいんだけど、JAVAでできる(動く)かな?
465 :名前は開発中のものです。2009/11/21(土) 22:42:39 ID:QGK3+ipq
実は俺もよく知らないんだけど・・・
↓みたいな感じの奴
http://www.youtube.com/watch?v=LoOsXCDyASE&feature=related

http://ja.wikipedia.org/wiki/%E3%82%A2%E3%82%A6%E3%82%BF%E3%83%BC%E3%83%AF%E3%83%BC%E3%83%AB%E3%83%89
本作の特徴である、2Dポリゴングラフィックや滑らかなモーションは、近年において馴染みのある3Dポリゴンやそれを動画化したムービーではなく、座標変換済み頂点設定を使用した頂点フォーマット2Dポリゴンを、リアルタイムで演算し描写させると言う手法




466 :名前は開発中のものです。2009/11/21(土) 22:53:23 ID:TCiZ9uuf
処理上は3Dとかわらなさそうだからjoglつかえばいいんでない?
469 :名前は開発中のものです。2009/11/23(月) 23:53:05 ID:nfbjfJHk
皆さんは完成させたゲームとかアップしてますか?
アップするとしたら、JREが必要であることをどう説明してますか?
参考にさせてください。
470 :名前は開発中のものです。2009/11/24(火) 00:19:25 ID:kmoskJ57
privateJREにすればネイティブアプリと見分けはつかないよ
474 :名前は開発中のものです。2009/11/26(木) 23:15:04 ID:mierGwHW
>>470-471
調べてみます
ただ、その前に配布するソフトを完成させなきゃならないんですけどね^^;
475 :名前は開発中のものです。2009/11/27(金) 00:12:22 ID:8UUt4tMd
逆コンパイルを防ぐ意味ってあるの?
不正防止ならユーザーがホストになれないような
ネットワークゲームとかでも無い限り無理でしょ。
476 :名前は開発中のものです。2009/11/27(金) 13:41:24 ID:jadUzCaz
>>475
一部だけ書き換えて我が物顔で再配布する奴がいるんだよ
やられたことないのか?
477 :名前は開発中のものです。2009/11/27(金) 18:54:28 ID:07MHdjDR
海外の鯖ちょっと探すとわんさか出てくるよな。
特に勝手に翻訳されたflashゲー。
478 :名前は開発中のものです。2009/11/28(土) 13:25:59 ID:jEq3DzrB
>>476
いつかはコピーされてしまうようなゲームを作りたいです
479 :4782009/12/07(月) 19:23:11 ID:vxMhXY6d
すみません。
私の書き込み以降書き込みが無いのですが、なにか気に障ることでも書き込みましたでしょうか?
481 :名前は開発中のものです。2009/12/08(火) 03:25:05 ID:o4DmhHXZ
そうですか
よかったです

私に話題を振る能力がないのが残念ですが
482 :名前は開発中のものです。2009/12/08(火) 16:47:34 ID:gpTckhGn
じゃあ俺が振る。

・Androidでゲーム用ミドルウェア作ってるやつ居る?
・javaでモーションポートレート実装しようぜ!

これだけしかでなかったorz
483 :名前は開発中のものです。2009/12/13(日) 21:48:15 ID:mcEmnsXb
おまいら、shortって使います?メモリ節約なら使うべきだが
キャストうざいのでintだけです、なんか間違ってる?
484 :名前は開発中のものです。2009/12/13(日) 23:30:09 ID:8aTa/ExS
でかい配列作るときと外部APIとのやり取りぐらいにしか使ってない
ふと思ったんだがキャッシュにのるかどうかで速度変わったりするんだろうか
485 :名前は開発中のものです。2009/12/14(月) 17:36:08 ID:63Ve35Fl
ああ、shortなんてあったなぁ。
どうせ32bit単位に詰められるぞ。
486 :名前は開発中のものです。2009/12/14(月) 22:38:17 ID:jRyguNfu
PCならintでいいよ。
配列で大量にもつならshort使ってもいいけど。
487 :名前は開発中のものです。2009/12/14(月) 23:44:29 ID:HScypyP7
javaの配列じゃ意味ないだろ
489 :名前は開発中のものです。2009/12/15(火) 20:42:46 ID:r9J0mMFL
スレチな質問かもしれませんが、
名作ゲームのパロディを作って(Javaアプレット)公開する場合、
キャラクタに基のゲームのスクリーンショットから切り取った物を使ったり、
BGMやSEを録音して使用するのはやっぱり著作権的にアウトでしょうか?

また、キャラクタの色を塗り替えたり、サウンドのキーを変えるなどの加工をしても
回避できませんか?
492 :名前は開発中のものです。2009/12/16(水) 21:21:26 ID:5APJYesI
ゲームでマルチコアとかどうやって最適化したらいいのだろうか。
描画周りがDepth処理などの関係で単一のゲームループでやってるんだよね。
AIゲーとかじゃなきゃマルチコアとか要らない?
493 :名前は開発中のものです。2009/12/16(水) 22:37:51 ID:6cbFeaq2
>>492
すげぇ、、、
俺なんて基本的なRPGすらまともに完成できそうになくてなきそうなのにorz
やっぱ、ソフトウェアは個人の能力差がもろにでるな
まあ、もうちょっとがんばって完成目指すよ
494 :名前は開発中のものです。2009/12/18(金) 06:13:38 ID:tQT7ID8W
>>487
WindowsXP sp3 32bit
java version "1.6.0_17" (Client VM)
VM引数 -Xms64M

この環境だとプリミティブ型の配列確保でメモリ使用量変わったよ。
booleanの配列は1bitではなく1byte使ってるがw

1000000個の配列を確保した時のメモリ使用量
long 226,488 → 8,226,504 (8,000,016)
int  226,488 → 4,226,504 (4,000,016)
short 226,488 → 2,226,504 (2,000,016)
char 226,488 → 2,226,504 (2,000,016)
byte 226,488 → 1,226,504 (1,000,016)
boolean 226,488 → 1,226,504 (1,000,016)

おまけ
BitSet 226,488 → 351,504 (125,016)
496 :名前は開発中のものです。2009/12/20(日) 16:02:53 ID:OajyaggP
>>483からの流れでどこに多次元配列が?
497 :名前は開発中のものです。2009/12/20(日) 20:30:53 ID:c3hPAZR6
多次元だとリファレンスの配列になって32bit分喰うっていうのはあるな
しかし1次元少ないから大きい配列だと支配的ではない
498 :名前は開発中のものです。2009/12/22(火) 00:27:08 ID:m1M3sFMT
JOGLとJava3Dでゲーム作った.

http://www10.ocn.ne.jp/~shinod/game/java/Baller0.00001.zip

もしプレイしたら,感想聞かせてくれるとうれしい.
499 :名前は開発中のものです。2009/12/22(火) 13:35:06 ID:hmqOLPIl
>498
java.io.FileNotFoundException: world.bmp (指定されたファイルが見つかりません。)
at Baller.init(Baller.java:672)
が出るけどいいのかな?

思ったより面白かった 2面とか、次々発生するようにするのかな

だが視点によって変になるときがあるな・・・これはしょうがない?
500 :名前は開発中のものです。2009/12/22(火) 19:31:45 ID:m1M3sFMT
>>499
とりあえず使ってないので,ゲームが正常にできるなら良いです.thx.

>だが視点によって変になるときがある
なんかバグはあるかも.
501 :名前は開発中のものです。2009/12/31(木) 06:42:10 ID:VlIgB2+S
宣伝age

敵性オブジェクトを実装した.
と言っても,自機に向かって旋回移動して,弾を発射してくるだけ.
障害物などの回避は一切しない.

http://www10.ocn.ne.jp/~shinod/game/java/Baller0.00002.zip
502 :名前は開発中のものです。2010/01/03(日) 03:47:49 ID:M0YzzCX0
javaでゲーム作ろうって人こんなにいるんだ。勇気付けられるねぇ。
中身見てないけどjava3dとjoglって組み合わせると良くないとか
聞いたことなくはないけどどうなんかね。

あとjava3dやjoglを使う場合はゲームに始めから同封したほうが
いいと思われるよ。ファイルサイズが何MB増えても、やはりユーザー
としては訳分からんものをとって来させられるのは苦痛らしい。

実行ファイルと同じフォルダに入れてマニフェストファイルから
classpath指定してやるだけで動くから。
504 :名前は開発中のものです。2010/01/03(日) 15:41:51 ID:c4cjbicy
ライセンスがダメなのかなーと思ったけど大丈夫そうだしね
>Java3D
505 :名前は開発中のものです。2010/01/03(日) 22:11:43 ID:AXfntCHB
>>502
アドレスを見る限り、そんな容量は使えそうにない人だろう。
ま、どこか適当な場所を用意すれば済むんだろうけど、
そこまでするもんでもないと思ってるんじゃないかな多分。

いずれにしろ俺は遊んでないので、>>502の意見は真理だと思う。
506 :名前は開発中のものです。2010/01/04(月) 23:59:02 ID:x7MCfIiy
ocn鯖って10MBしか置けないんじゃ…

java3dってライセンスよく分からないんだけど誰か説明してくれてる人いないのかな…。
再配布に関してはlicenseのRedistributableの項目に「自作アプリから利用する目的のみでバンドル
する場合なら再配布可能」とはあるんだけど、GPL v2 CLASSPATH exceptionというのが
よく分からない。多分「classpathで動的リンクされる場合のみGPL守らなくていいですよ」
ということなんだろうけど、コレを説明している公式の英文が読みづらくて
分からないのよね…。
507 :名前は開発中のものです。2010/01/05(火) 20:45:50 ID:Nec4HdHu
>GPL v2 CLASSPATH exception
これどこにある?

俺が読む限りだと、商用/非商用問わず、バンドルする場合で、
修正/変更なしなら再配布可と書いてあるように読めるんだが・・・
もちろんドキュメンテーションや免責を含めろとも書いてあるけど。
508 :名前は開発中のものです。2010/01/06(水) 02:40:54 ID:89pgGn6V
https://java3d.dev.java.net/の「license」の項目に書いてある。
要約するとつまり「一部はBSDだけど一部はGPL v2 classpath exceptionですよ」とある。

GPL v2 classpath exceptionはJDKで新しく採用されたJava関連の特殊ライセンス体系で、
原文はhttp://en.wikipedia.org/wiki/GPL_linking_exceptionの「The classpath exception」
以下に書いてあるんだけど、これが読めない…。こんな重要な英文なのに1文がやたら長いって
アメリカンすぎるだろ

http://blog.taragana.com/index.php/archive/java-open-sourcing-details/ja/に機械翻訳
も載ってるけど英語のほうがまだマシというくらいイミフw

まぁjava3d本体付属のライセンスに>>507以外特に何も書いていないし、おそらく
問題ないんだろうけど…
509 :5082010/01/06(水) 02:59:17 ID:89pgGn6V
http://ja.wikipedia.org/wiki/GPL%E3%83%AA%E3%83%B3%E3%82%AF%E4%BE%8B%E5%A4%96
ごめん。日本語版見つけて自己解決した…。
511 :名前は開発中のものです。2010/01/09(土) 01:03:31 ID:Vzjk76l2
宣伝age.誘導弾発射を実装した.

http://www10.ocn.ne.jp/~shinod/game/java/Baller0.00003.zip

jogl, java3d のバンドルについては,他人が作ったものをくっつけて配布するのは
なんだか気が引けたし,面倒なのでやってない.
512 :名前は開発中のものです。2010/01/09(土) 17:00:15 ID:X21U+ciY
>509のリンク先の日本語が我慢ならないレベルだったので
自分なりに訳してみた
As a special exceptionって段落

特殊な例外として、このライブラリの著作権者は、
独立したモジュールをこのライブラリとリンクして
実行可能ファイルを作ることを、
それらの独立したモジュールのライセンス条項に関わらず許可する。

また、結果としてできた実行ファイルを任意の条項の下に
コピー及び配布することも許可するが、
リンクされた他の独立したモジュール全てに対して
各モジュールのライセンス条項と使用許諾を守る場合に限る。

ここでいう独立したモジュールとは、本ライブラリの派生物でも、
本ライブラリに依拠したものでもないモジュールを指す。

本ライブラリを改変した場合、この例外条項を
改変版ライブラリに適用してもよいが、
そうすることに義務はない。

例外条項を適用する意志がないのなら、
改変版からこの例外条項を削除すること。
513 :名前は開発中のものです。2010/01/09(土) 17:12:21 ID:X21U+ciY
ttp://www.gnu.org/software/classpath/license.html
classpath自体を改変しないなら静的リンクでも問題なさそうにも見える
間違ってるかも知れないが
514 :名前は開発中のものです。2010/01/10(日) 00:39:30 ID:aDa5gCd8
>>509
おお…素晴らしい。もうwikipediaの文章コレで書き換えたほうがいいんじゃないかw

>>513
どうなんだろう。そもそも「独立している」という定義が良く分からない。おそらく
ライブラリA→B→Cみたいに中間コードを噛ませることで
ライセンスを逃れるみたいな状況を回避するために書かれている所もあるんだろうから、
動的リンクか静的リンクかが問題になっていない可能性はある。

LGPL…どんなに巨大なアプリケーションでもLGPLライブラリの派生物だと強制される
GPL classpath exception…独立していると認められればライブラリの派生物ではない

いずれGPL linking exceptionはLGPLと違って結構安心できる(甘いライセンス)はず
でしょう。リバースエンジニア(=デコンパイル)を禁止できないLGPLでは、デコンパイルが
容易なjavaにとってはGPLとなんら変わらないことになってしまう

そういう理由でGPL classpath exceptionが採用されたのかもしれない
515 :名前は開発中のものです。2010/01/18(月) 21:11:05 ID:dlNY6FyO
クラスパス例外付けなきゃ生成物までGPL継承するでしょ。
JDKやJava3Dはクラスパス例外付けなきゃそれで作ったアプリケーションまでソース公開になるがPhoneMEはただのランタイムだから付いてない。
そういう問題。
LGPLでソース修正なしに動的リンクすれば独立してると認められるけど
SFSは今後はLGPLではなくクラスパス例外付きGPLを使ってくれとアナウンスしたからそれにしたがったんだろう。
516 :名前は開発中のものです。2010/01/18(月) 21:30:35 ID:dlNY6FyO
それよりおまえら、JOGLで2Dと3D混在するときはどういう実装してる?

com.sun.opengl.util.j2dパッケージのレンダラ群つかうと2D描画するときにJava2Dパイプライン経由になって
劇遅になるからdrawImageは板作ってテクスチャ貼ってて感じでやってるけど。
ちなみにGraphics2DをオーバーライドしてるからコードはJava2Dと変わらん。
(というかライブラリで描画バックエンド差し替え可のインターフェイス統一だから
Java2DだろうがバッファーストラテジだろうがJOGLだろうが変わらん)
517 :名前は開発中のものです。2010/01/20(水) 21:51:21 ID:kTDZ/tcO
宣伝age 効果音を鳴らすようにした
http://www10.ocn.ne.jp/~shinod/game/java/Baller0.00006.zip

>>516
2D使ってないから,わかんね
518 :名前は開発中のものです。2010/01/23(土) 01:00:37 ID:wc6hSibN
俺はjava3dで2D描画してるから分からんけど、D3DだろうがOpenGLだろうが
普通2Dを描画するときも3Dと同じモジュールを使用するんじゃないか。

3D空間上でカメラの向きと垂直に存在する平面にテクスチャで2D画像を入れれば「2D」になる。
基本3Dデバイスを利用して2Dを描画するゲームは大抵そういう処理をしていると思われる。

だから>>516のやった記述で正解だと思われる。

Direct3Dにはトランスフォーム後の(x, y, depth_buffer)座標で描画できるモジュールが
用意されていた気がするけど、OpenGLでは見たことがない。少なくとも私は…。

javaに限らずC#でもdrawImage()は鬼のように重いので、出来る限り使わないのが無難だと思われる。
アニメーションを表示したいなら、あらかじめ複数のテクスチャを用意して
3Dモデル上に貼り付け、表示を切り替えるのをお勧めする。

「2Dも3Dで描画したほうが速い」という事実があるように、一切3D要素を持たない
2D画面でも、3D空間上でテクスチャとして表示した方が速い。
519 :名前は開発中のものです。2010/02/06(土) 05:33:18 ID:ajoGIZRs
DirectDrawも下位互換のために残ってるだけで
2D表示はビルボードが推奨されてるね
最近のGPUに至っては2Dのハードウェアアクセラレートをしないのもあったはず
520 :名前は開発中のものです。2010/02/06(土) 21:11:41 ID:uFKJJ/6Y
宣伝age 複数ステージを実装したり敵の数を増やしたりした

http://www10.ocn.ne.jp/~shinod/game/java/Baller0.00007.zip
521 :名前は開発中のものです。2010/02/16(火) 23:07:36 ID:i+TR14Tz
自作ゲームエンジンを手間かけてVBO化して
「これでOpenGL3.x時代にも完全対応だぜ!」と喜んでいたら、
ディスプレイリスト+glVertexの方がむしろ高速だった。

泣きたい。
525 :名前は開発中のものです。2010/02/18(木) 00:20:01 ID:TESa05KF
glBegin、glEndを無くしますと言われても、
我々のような趣味のゲームビルダーはVBOに移行すると思う。
ゲーム的な発想からすれば、それほど違和感無いし。

問題は、ゲームやCGが専門でない研究者とか技術者が、
「可視化の手段」としてOpenGLを使っていた場合じゃないか。
彼らに三角形表示するためにシェーダ書いてくださいというのは酷だろう。

…というか、GLUTや赤本はどうなるんだ?
526 :名前は開発中のものです。2010/02/18(木) 19:42:59 ID:elgZU+Tz
宣伝age 弾の数を増やしてみた

http://www10.ocn.ne.jp/~shinod/game/java/Baller0.00013.zip

ディスプレイリストって無くなるの? それを使ってゲームを高速にしたばかりなのに.
VBOとやらを勉強しなきゃいかんのかな.
527 :名前は開発中のものです。2010/02/18(木) 23:57:56 ID:mVpRkEUs
javaでプログラミングの勉強始めたいが、何をダウンロードしたらいいのかもわからない。
2003年発行の「ゲーム作りで学ぶJavaプログラミング入門」を借りてきたら、
J2SE 1.4.1を使って解説してるけど、ググったらすでにサービス終了だった。
今だったら、どれをダウンロードしたらいいの?
最新のをダウンロードしても、J2SE 1.4.1準拠のテキストで勉強できるの?
528 :名前は開発中のものです。2010/02/19(金) 00:11:50 ID:RaKdEUci
>>527
基本的には、1.4世代のコードは最新のJava6でも普通に動く。
ただ、これから勉強するならJava5以降の方がいいと思うが。
529 :名前は開発中のものです。2010/02/19(金) 08:11:45 ID:+Pv/DaT4
>>527
入門レベルならJavaのバージョンはあまり関係無いはず
極端に言えばオブジェクト指向言語でさえあればJavaである必要すら無いよ
おれもまともに勉強したのはC++だけだけど、
その他の高級言語もリファレンス読むだけで使いこなせてるし
530 :名前は開発中のものです。2010/02/20(土) 16:13:25 ID:MPj95+GX
C++ができれば、大抵の言語は大丈夫だろう。
高級アセンブラ+オブジェクト指向というなんでもあり状態だし。

逆に、JavaからC++に行った時の方が混乱しそうだ。
531 :5272010/02/20(土) 16:23:21 ID:oPyOq2Qj
色々と意見をありがとう。
これから始める初心者なんで、扱いやすくて簡単と聞いたJavaから始めようと思ってたんだが
C++から始めた方がいいのだろうか。
ちなみに俺が作りたいのは歴史SLG
3Dとか使うやつじゃなくて、2Dの古典的なやつ。
532 :名前は開発中のものです。2010/02/20(土) 16:51:30 ID:nyyTA+gj
>>531
それだと、javaとかC++というより、rubyとかの方が作りやすいかも。
534 :名前は開発中のものです。2010/02/22(月) 16:03:03 ID:N+EuOs9T
俺はPythonをお勧めする。
もうJavaとかと違いすぎて、新たな気持ちになれた。
py2exeというexe化ツールもあるでよ。

ocamlとかもどうよ。
535 :機会おんち2010/02/22(月) 16:27:40 ID:P/wA3u7l
konsoleでjavaのチャットを作りたいのですが作り方教えてくれる方いませんか?
つくれなくてなやんでます・・・。
536 :名前は開発中のものです。2010/02/22(月) 17:25:09 ID:yL42oXqc
>>531
携帯アプリやAndroidのゲームはJavaで作られているけどWindowsではほとんど見当たらない。
RubyやPythonも参考になる情報が非常に少ないので初心者には向いていないと思う。
Javaの代替としはC#が良いと思うけど、個人的にはC言語がお奨めかな。
ゲームプログラミングの情報量も多くて勉強し易いしね。

>>535
ttp://codezine.jp/article/detail/193
537 :5272010/02/22(月) 19:56:56 ID:ybrOgo8H
もうどれで始めればいいのか、わからなくなってきたw

>>536
C言語は難しいというイメージがあるけど、初めてやるプログラミングとして正しい選択なんだろうか。
自分としては

・グラフィックとかはあまり重視しない
・AIとかは出来たら賢く、複雑にしたい。
・わかりやすい、覚えやすいプログラムがいい

この3つのバランスが取れたものを探してるんだけど。
538 :名前は開発中のものです。2010/02/22(月) 21:08:23 ID:yL42oXqc
>>537
初心者にとってはどの言語もほとんど差は無いよ。
C言語を奨めたのも参考書や解説サイトが多いからというだけなので。
考えているだけ時間の無駄だし、何でも良いので早く始めた方がいいよ。
539 :名前は開発中のものです。2010/02/22(月) 22:44:38 ID:ypbsf0Tk
>RubyやPythonも参考になる情報が非常に少ないので初心者には向いていないと思う。
rubyはともかくPythonはいらないほどにあるだろ。
英語読めないなら別だが。
541 :5272010/02/22(月) 23:36:23 ID:ybrOgo8H
>>538
っしゃあ! C言語で始めてみるぞ。
542 :名前は開発中のものです。2010/02/23(火) 11:34:02 ID:4oRWxveO
Cと決めたところで悪いんだが、
Cは実際の画面を作るところで悩むぞw
Windowsなりの実行環境での作法・手順があるから。
素のCじゃなくて、VC++でXNAとかのほうがまし。

Windowsしか考えなくて良いのであればC#で良いと思う。
それこそ書籍・ネットで情報がいくらでもある。
画面・入力部分で楽できる環境が良いからね。

ロジックに凝った物を作るのが目的だったら、言語は何でも良い。
いまあるメジャーな言語なら、やりたい事が出来ない言語なんて無い。
545 :名前は開発中のものです。2010/02/24(水) 00:49:51 ID:r64JoLGK
ゲームのシーンごとにkeylistenerを持たせようとしてるんだけど・・・
そのキーリスナーはシーンオブジェクトへのアドレスを保持していて、そのシーンも
キーリスナーへのアドレスを保持している。そうすると、コンストラクタの中だけでは変数の
初期化ができなくなる。なんかきれいに繕う方法ってない?
546 :名前は開発中のものです。2010/02/24(水) 01:16:08 ID:6Ou921by
・循環依存とか相互依存になってるならそれをなくす。
・初期化を遅延する
547 :名前は開発中のものです。2010/02/24(水) 10:15:55 ID:vFuKqqgG
初心者がCでゲーム組むとか、おれが初心者の頃なら途中で挫折してただろうな
モチベーション維持のためにも画面に画像を簡単に表示できる環境が良いんでないかい
画面で絵が動くの見るとやる気出てくるよ
548 :名前は開発中のものです。2010/02/24(水) 10:51:51 ID:vsS19SCg
>>545
参照(ポインタでもいい)と言わずにアドレスと表現してるところがよくわからん。
550 :名前は開発中のものです。2010/02/24(水) 18:49:45 ID:0XfxFTST
>>547
初心者向けの参考書を見ると専用のライブラリを使っているので心配ないと思うよ。
画像を表示させるのも数行のコードを書くだけで実装できる。
Win32APIやDirectXは言語とは別の問題だし、初心者がいきなり覚える必要は無いしね。
551 :名前は開発中のものです。2010/02/24(水) 22:51:58 ID:V52UY3a7
もうWinMainはいやだお・・・。
NN5でいやというほどコンパイルしたお。
552 :名前は開発中のものです。2010/02/25(木) 00:51:18 ID:2BiifXD1
Javaおすすめ
JDKの中にGUI関連のツールも含まれているからJavaだけ勉強すればとりあえずゲーム作れる
553 :名前は開発中のものです。2010/02/27(土) 00:19:42 ID:JpqAtdnH
iPhoneはあるけどAndroidのスレってないよね
ここでやればいいの?
554 :名前は開発中のものです。2010/02/27(土) 09:03:22 ID:tyywBe4S
>>553
GoogleAndroidアプリ作成part2
http://pc12.2ch.net/test/read.cgi/tech/1253197333/

ゲ製板には無いね。
まあiPhoneスレも過疎ってるし需要が無いんじゃない?
555 :名前は開発中のものです。2010/02/27(土) 12:01:11 ID:3XLimM0d
とりあえず、JDK6とeclipseインストールした
これから何をすればいいんだろ?
556 :名前は開発中のものです。2010/02/27(土) 13:18:28 ID:tyywBe4S
目標を立てる。
それによって次に何をすべきかが変わってくるので。
557 :名前は開発中のものです。2010/02/27(土) 13:33:04 ID:XM9i9EyX
>>555
とりえあず、作りたいものを具体的に考えてみて、
こことかで http://javagame.skr.jp/
近そうなものや、役立ちそうな機能を探してみては?

そこのサイト、実行できる jar の中にソースコードあったと思うし、
簡単なやつを eclipse 上で動かしてみるとか。
558 :名前は開発中のものです。2010/02/27(土) 13:56:26 ID:I97vF7We
555じゃないけど、入門用の書籍を選ぶのが難しいな。
>>557のサイトで紹介されてる本をアマゾンのレビューで見てみたら
微妙な評価だし。
559 :名前は開発中のものです。2010/02/27(土) 14:12:19 ID:sXZ2vpwQ
Javaでゲーム作ってる有名どころの洋書全部漁ればいい。
google book searchでlimited previewくらいできるだろ。
560 :名前は開発中のものです。2010/02/27(土) 17:15:15 ID:lw1I8SRq
>>555
まずはキャラクターをカーソルキーで動かしてみてはどうだろう

>>558
参考書籍みてみたが確かにあんまりよくないのが多いね


言語自体がはじめてなのかゲームプログラミング自体が始めてなのか
どっちもはじめてだと多少厄介だが、目標を高くしないなら大丈夫か

EclipseよりNetBeansのほうがライブラリへのクラスパス設定された
実行可能jarが自動で作られるので楽な気もするが


しかしみんなやさしいな
561 :名前は開発中のものです。2010/02/27(土) 18:32:56 ID:HySRugFq
宣伝age リプレイ機能を実装した

http://www10.ocn.ne.jp/~shinod/game/java/Baller0.00016.zip

俺の場合は3Dゲームを作りたかったので,JOGLをインストールするところから始めたなぁ.
562 :名前は開発中のものです。2010/02/27(土) 18:52:42 ID:6MkUCZcn
学生時代勉強したサーバサイドjavaの知識だけでゲームも組めたよ
"だけ"といってもネットで情報収集はしたけど参考書の類は特に使ってない
基礎さえ身につけば応用で何でも作れるんじゃないかと
563 :名前は開発中のものです。2010/02/28(日) 02:12:26 ID:dzeS6sZN
Graphics2DのdrawImageが重いって話が上にあったけど
JDK 1.5 -> 1.6 の流れでかなり早くなったはず。

ほどほどの2Dゲームなら十分だと思うよ
564 :名前は開発中のものです。2010/02/28(日) 17:08:33 ID:YamdAbFz
デフォで無効化されてる描画用オプション有効にすれば1.5でもほどほどならでる。
565 :名前は開発中のものです。2010/02/28(日) 17:27:40 ID:1xNPxTI/
こんなつぶやき見たいな適当な書き込みにレスありがとうw
せっかくのご好意なので、返信


>>557
最初に色々と読んでみた
ドラクエクローンはゲームループから入力処理、描画まで色々と参考になりそうだね

>>560
Javaはちょっと使ってる
でも、大きなソフトウェアの一部分を言われるままに作成してるので、わけわかめ
Webアプリだったので、Swingとかキーボードやマウスの入力処理は初体験
ゲームプログラミングはもちろん初めて
まあ、コツコツやってみるよ

NetBeansは面白そうだけど、eclipseが主流ならそっちを使いたいな
NetBeansの方が明らかにゲーム製作に向いているなら考えるけど

>>563
いいこと聞いた
ここ見ると色々なフレームワークがあるみたいだけど、勉強めんどうなんだよね
JDKの機能だけでそれなりのものが作れるなら、俺の作りたいのは大戦略とか信長の野望みたいなゲームなので問題ないかな
566 :名前は開発中のものです。2010/02/28(日) 20:01:54 ID:9UtHy1EC
>>563
1.5ののdrawImageが遅いっといっても初心者向けでまずそれが問題になるレベルではないだろう
ハードウェアアクセラレーションが効く描画が少ないってだけだ
遅いDXライブラリとかでも普通に使われてるよね

むしろJava2Dはαブレンディングが弱いほうが致命的

>>565
そういったタイプのゲームなら1.3以上なら問題なし

使い慣れてるIDEでかまわないよ
NetBeansはダブルクリックで実行可能なJarが作りやすいというだけ

ただ環境設定画面とかSLGならメイン画面以外のウインドウの描画等はSwingつかったほうがいいかな
環境設定等の定型的な画面ならNetBeansが圧倒的に有利という話にはなるが
必要になったときでいいと思う
567 :名前は開発中のものです。2010/02/28(日) 20:38:39 ID:bA//nrm1
よく分かんないんだけど、
αブレンディングが弱いってよく言われるけど
それって誰かが自前で重ね合わせルーチンとか
書けばいいだけのことじゃなくって?
568 :名前は開発中のものです。2010/02/28(日) 20:46:02 ID:9UtHy1EC
確かにピクセル単位で処理は可能
ただし、ハードウェアアクセラレーションは効かないからアクション系はきついんだ

VolatileImageはVRAM側へ配置するので(というかJavaSE6から積極的にVRAM使う)
ソフト描画との相性は最悪

というわけでほとんどの人はOpenGLへいく
570 :名前は開発中のものです。2010/03/01(月) 02:42:29 ID:VHqqtoLd
αブレンディングというか、特殊な合成が弱い。
画像のスクリーン合成(1-(1-src)(1-dst))はゲームのエフェクトで良く使うけど、Java2Dでは使えない。
自前で処理を書いても、遅すぎて使い物にならない。他のライブラリに頼るしかない。
この話題>>150-200あたりでも出たな
571 :名前は開発中のものです。2010/03/01(月) 07:27:10 ID:W0xt/zd5
java3Dでゲームを作ろうとしているんですけど、市販されているゲームのポリゴンと、Geometrryクラスで定義したポリゴンって何か違いがありますか?
何かイメージと根本的に違う様な気がします・・・
573 :名前は開発中のものです。2010/03/02(火) 23:13:38 ID:hmyMCdfx
お前さんが3Dにどういうイメージが抱いているか知らんが、
java3dのgeometryはかなり「実際の処理」に即しており合点がいく。

「市販されているゲーム」ってのは一体何だ…。市販のゲームは
末端で行われる原始的な処理を、見てる人にイメージし易いように
高度な変換を加えているだけのものだ。イメージだけで
いきなりあんな美麗な物体を描けるようにはならない。

いくらjava3dでも、末端で行われているdirect3dなどの
実際の3D計算方法をまったく知らない状態では厳しいぞ。

http://msdn.microsoft.com/ja-jp/library/aa515581.aspx
とりあえずこの4つの項目くらいは目を通しておくんだ。
俺はmanaged DXから入って、かなり読みやすかったのでこれが一番
分かりやすいだろう。

ブレンディングに関してはそもそもハードウェアアクセラレーションの
効かない場所でやるべきじゃない。自前処理でjavaだと遅いからc++なら
早いかって言ったらそこまで速くはない。結局openglなりd3dなりの
恩恵下で計算するのが一番速いんだから、言語を問わず
画像処理は2dであっても3dを利用しましょうということになる。

>>519が本当なら、そもそも2dのアクセラレーションは推奨されないこと
になる。

javaでゲームを作る場合、javaアプレットにするつもりがないなら
必ずGTGEなりjoglなりjava3dなりの3dデバイス系を利用することを
絶対に勧める。というかそれ以外で動きの多いゲームを作るのは
不可能だぞ。
574 :名前は開発中のものです。2010/03/02(火) 23:43:45 ID:keRp0vK6
>>573
一番の問題は>>570だけかな。

速度に関しては今のJava2DはDirect3DやOpenGLでアクセラレーションがきいている。
ただし、VMの実装次第だし、どこがきくのかといったドキュメントは無いはず。

Java2Dはアクセラレーションの効きかたを意識しないで使えるのが利点ではあるが
ゲームだとそうはいっていられないのが厳しいところ。

ただ、2Dゲーなら速度的にはブレンディングの種類が少ないこと以外では問題にはならないね。

「必ず」というのはいいすぎで、不可能ではないよ。

ただしJavaSE6 update10以上必須ね。
これより前だと回転拡大縮小系はアクセラレーションきかないから、いっきに処理速度が1/100とかになる。

通常のJavaの実行速度も大幅に上がってるしアプレットでもJNLPかけるようになったので
update10未満使う理由はないのだけれども。Vistaの不具合回避したらすごいよいものになったというのが笑える。
575 :名前は開発中のものです。2010/03/03(水) 00:23:02 ID:Ft2QLlFC
u10からOpenJDK6の成果が本格的にマージされて確かに実行速度は上がったがバグもかなり増えたぞ。
577 :名前は開発中のものです。2010/03/03(水) 02:48:16 ID:bM8RSZ0B
公式のBTS全部見ろよ。
OpenJDKのパッケージがあるlinuxの適当なコミュニティにも上がってるぞ。
毎度のこと量があるのにスレに貼れる程度の具体的なバグなんてここに貼っても意味はない。
579 :名前は開発中のものです。2010/03/03(水) 08:52:43 ID:4e2irmLH
J2SE 5.0はサポート期間が終了してバグあっても放置だからもうJavaSE 6つかうしかないだろう
でもupdate10未満も大量にバグがあってupdate10以降で直ってるのも大量にあるのがな

でもゲーム程度で問題になるバグなんてまずないだろ
581 :名前は開発中のものです。2010/03/07(日) 02:52:45 ID:mJhS8YgC
jinputでアプリケーションの起動中にジョイスティックの追加/削除を検知する事って出来ますか?
ControllerEnvironmentにControllerListenerを追加してもイベント飛んでこないす。
582 :名前は開発中のものです。2010/03/07(日) 11:20:32 ID:YVbfusWB
とりあえず、以下のコード読んで勉強してる
・ドラクエクローン(http://javagame.skr.jp/index.php?%A5%C9%A5%E9%A5%AF%A5%A8%A5%AF%A5%ED%A1%BC%A5%F3)
・シヴィライゼーションクローン(http://www.planet-source-code.com/vb/scripts/ShowCode.asp?txtCodeId=4328&lngWId=2)

これらが、理解できるようになったら俺の目指すシミュレーションゲームも作れるだろう
Swingはよくわからんが(てか、JavaのGUI自体初体験だが)、ドラクエクローンの動作を見ると、メッセージWindowも自前で製作しているみたいだし、勉強せんでもよさそう

がんばるぉ^^
583 :名前は開発中のものです。2010/03/07(日) 12:38:46 ID:8J4pTqVT
>>582
下のリンク先、見れないんだが。
584 :名前は開発中のものです。2010/03/07(日) 15:17:28 ID:yFiVhkjz
>>583
末尾の括弧をURLに含めてるとか
585 :名前は開発中のものです。2010/03/07(日) 15:18:39 ID:YVbfusWB
>>583
最後に")"をつけちゃったから、それがURLの一部にされていると思われ
URLから")"消してみて

それはそうと、他にも読んでおいたほうがいいソースコードあったら教えてね^^
586 :名前は開発中のものです。2010/03/07(日) 20:31:59 ID:seQ6S77i
宣伝age 弾の軌跡を描画するようにしてみた

http://www10.ocn.ne.jp/~shinod/game/java/Baller0.00023.zip

見た目は派手になったけど,処理が重くなった.

俺の場合,OpenGLの本とか衝突判定の本とかは読んだけど,
他の人のソースコードとかはあまり見てないな.
587 :名前は開発中のものです。2010/03/07(日) 21:08:52 ID:EoGWWfXW
>>585
GOFのデザインパターンやっとくといいよ
ストラテジー、メディエーター、シングルトン、ファサードあたりを
意識すると上達が早くなる
588 :名前は開発中のものです。2010/03/07(日) 22:21:35 ID:4Rnyo7gg
GOFぱっと見で理解できんならオブジェクト指向の利点を知ると良いね
するとGOFを見たこと無くても無意識にデザパタを適応していたりする
でもまあリファクタリングの勉強は最後でもいいはず
動くゲームを完成するまでの気力維持の方が大変だw
589 :5872010/03/08(月) 09:38:02 ID:0N3PdWPF
俺の経験則としては、デザインパターンなしで
テトリス以上のゲーム作るのは無理だと思う

たとえばSwingを始めた>>585は、分離されたGUIコンポーネントや
イベントリスナーをどうつなげたらよいかについて困惑するはず

引数で無数に参照を渡す力押しとかでも不可能ではないけど
それじゃやっぱりコード書く楽しさがない
590 :名前は開発中のものです。2010/03/08(月) 20:38:45 ID:fOUjfaLl
>>589
構造化プログラミング主体の頃の人間だったおれは、
デザインパターンを知らんでも作れたんだが・・・・。

C言語ライクなJavaプログラミングだったけどな。
591 :名前は開発中のものです。2010/03/08(月) 21:37:40 ID:InSeFkGY
こういっちゃ悪いがデザインパターンについて何か勘違いしてる
OOPの理解とデザインパターンの適応は別物だぞ
デザインパターンは使える状況なら使ったほうが良い物ってわけでもないし
テトリス以上の複雑なゲームとなるとパターンがまんま適応できる状況がまず少ない
以上現役奴隷の勝手な意見
592 :名前は開発中のものです。2010/03/08(月) 21:53:19 ID:3O0fgwI4
>>584
被っちゃいましたね^^

>>586
自分より遥にレベル上の方みたいですね
自分は古いかもしれませんが地味に2Dでがんばっていきます
お互いがんばりましょう

>>587-591
GOFはとりあえず読みました
半分も理解したか怪しいですが
とりあえず、ゲーム作るうえでは、入力なり出力なりのインタフェース切って、場面ごとに実装するクラス作ろうかなーっと漠然と考えてます
まだ、他人のコード読んでばっかりで、一行も書いてないのでどうなるかわかりませんがw


それはそうと、Javaでゲーム作りますがなにか?のページ見ていて思ったのですが、ゲームループはwhile文で自作するのが常道ですか?
TimerTaskがあると思うのですが、使わないのでしょうか?
while文の中で、遅延を考慮してたりして、結構がんばってるように感じたのですが、TimerTaskはその辺美味くやってくれるもんじゃないんですかね?
593 :名前は開発中のものです。2010/03/09(火) 10:57:20 ID:QEiU+L36
>>5
auのオープンアプリの関連スレ無いですか?
オープンアプリ作る人が集まるスレ
594 :名前は開発中のものです。2010/03/09(火) 13:07:17 ID:B2aHv/Xn
>>593
CLDC+MIDP+携帯電話用Javaスレッド part 9
http://pc12.2ch.net/test/read.cgi/tech/1249357352/
595 :名前は開発中のものです。2010/03/09(火) 14:15:07 ID:lYcMPodi
java.util.Timerはスケジュールできなかったらタイマースレッドじゃなくてその場で実行する。
それすら実行できなかったらそのタスクは実行されなかった気がする。
あとスケジューリングの精度もそんなに厳格じゃなかったはず。
それでもいいならjava.util.Timerでいい。
でも、java.util.Timerつかうよりは並列ライブラリで自分の要件実装するんじゃないだろうか?
596 :名前は開発中のものです。2010/03/09(火) 15:54:48 ID:QEiU+L36
>>594
どーもです。
オープンアプリでゲーム作ってる人のスレは無いってことっすね・・・残念ですぅ
598 :名前は開発中のものです。2010/03/09(火) 18:00:12 ID:QEiU+L36
だって、プログラム板のローカルルールでゲームの話題禁止なんですもの
599 :名前は開発中のものです。2010/03/09(火) 21:13:35 ID:EB7b1hko
>>594の板で大丈夫じゃないかと思うよ
過激な自治厨もいないしゲームプログラムの話題も出てるし
600 :名前は開発中のものです。2010/03/09(火) 22:10:21 ID:i+0eeHLE
>>592
問題ないよ

処理落ち等の実装は人によるけど、TimerTaskで実装するのではなくここでは時間管理だけして、
そこから他のスレッドをコントロールするのが理想かな

垂直同期とって60fps、処理落ちも垂直同期単位という昔ながらのアプリのような挙動がほしい場合はね



それ以外ならTimerとTimerTaskで問題なし
repaint()使っているようなものなら正直TimerもswingのTimerでいいと思う
601 :名前は開発中のものです。2010/03/10(水) 13:10:34 ID:/NB3Vbw/
確かThread.sleep()でループを組めば、javaのバージョンによっては
windowsの高精度タイマーを利用するのでより品質の高いループが組める
はずだ。現に俺はsleep()で100fps以上の高分解能ループを組めている。

ループをあまり組んだことがないなら「timer 分解能」あたりで
一度ググっておくことをお勧めする。多くのwindowsではTimerでも
60fps回せるんだが、別に60fpsを回せることが保障されているわけでは
ない。ディスプレイのリフレッシュレートも影響するのかもしれないが、
ユーザの環境では35fpsになったり70fpsになったりするかもしれない。

whileでループ組んでいるというのがどういう状況か知らんけど、
それはwhile内部にwait()する区画があって始めて成り立つことだ。
初歩的なことだがビジーループなんて絶対に組んではいけない。
602 :名前は開発中のものです。2010/03/10(水) 14:31:21 ID:nBH9suJo
>>601
XP前期くらいの古い話になるけど
Windows98SEではちゃんと30FPSで動いていたゲームがXP(2000だったかも)で20FPSくらいに
なってしまい原因が分からず悩んでいた時期があった
推測だけどデフォルトではタイムスライシングが16msになってて、ゲームを30FPSで動作ささせる
ために1フレームを33msにあわせようとすると48msになってしまってたんだと思う

メディアプレイヤーを起動していると精度が上がることを見つけて、自前のアプリケーションを起動し
timeBeginPeriodを呼び出しておくと同様の効果があることを確認し、それをユーザのマシンで
再現する方法を探してたよ
FLASHを一度でも再生したブラウザのプロセスが残っていると精度も上がったままになり、
IEの場合はbgsoundタグに空のmidiファイルを設定しておくという泥臭い逃げ手もあった
Windows以外のOSで試したことはないけど、どうなってるのかなぁ
603 :名前は開発中のものです。2010/03/11(木) 11:52:23 ID:gsQzKt2E
昔はSystem.currentTimeMillisの精度が10〜20msecで困ったな。
sleepは時間通りに動いていたかもしれないけど、対応しようがなかった。
今はnanoTimeで1msecの精度が出せるから良いね。
604 :名前は開発中のものです。2010/03/11(木) 13:14:15 ID:I816Pm6U
え、まともにnanoTime動くのSunだけじゃないの?Windows7とかだと動くの??
605 :名前は開発中のものです。2010/03/11(木) 15:31:52 ID:+KPkzeB4
10000くらいの要素があるとして、
Map(HashMap)で全要素にアクセスするのって十分に遅いと思う?
List(ArraryList)と両方に要素を詰めておいて片方が苦手な面は
スレッドでごまかしたほうがいいかな
606 :名前は開発中のものです。2010/03/11(木) 19:26:06 ID:I816Pm6U
十分に早いと思うんだがなぁ。
やってみた?
要素を取ってからの処理がが1ms掛かってりゃ、隠蔽できるレベルと思うんだが。
607 :名前は開発中のものです。2010/03/11(木) 23:54:00 ID:zhaRJbEJ
1万要素くらいならおれは速度よりメモリを気にする。
10万とかなら考えるが。
608 :名前は開発中のものです。2010/03/12(金) 01:20:42 ID:fx5pN5+0
>>604
まともってのがどの程度を意味するのか分からないけど、
XPでnanoTimeを実験したときは1ミリ秒くらいの精度は出たよ。
609 :JAVA初心者2010/03/12(金) 10:17:17 ID:6GJM5qHr
JOGLをインストールして実行したら
「jogl.jar で制限されているためアクセスできません」
って出た
jogl-1.1.1a-windows-i586.zipの中のやつをコピーするだけではダメなのですか?
611 :名前は開発中のものです。2010/03/13(土) 11:54:22 ID:ft4sD9tE
>>604
WindowsでもsunのVMなら
currentTimeMillisも1msの精度でてる

nanoTimeは高精度カウンタつかってるんでちゃんと1ms以下でてるっぽい
そのかわり特定の時刻はわからないけど、ゲーム系なら問題は無いな

Sleepとかタイマイベント系+nanotime使ったビジーループが最も高精度だけど、
そこまで必要な場合むしろ垂直同期をしたほうがいいと思うんだ
612 :名前は開発中のものです。2010/03/13(土) 15:41:37 ID:kP+vCyl1
そこまでする理由はなんだい?
格ゲーでも作るの?
613 :名前は開発中のものです。2010/03/14(日) 01:12:44 ID:/KubzB8G
>>612
16.66msのつもりが32msになっていた、なんて精度だとライトなアクションゲームどころか
コマンド選択式RPGのエフェクトすらまともに表示できないと思う
614 :名前は開発中のものです。2010/03/22(月) 01:15:48 ID:a35EGBlP
でも市販されてるPCゲームの精度なんてそんなもんじゃん
猫ぐらい目が良くないと一般ユーザでは気付かんレベルじゃないかね
615 :名前は開発中のものです。2010/03/22(月) 11:37:48 ID:lWMLrUhP
2Dゲーはほとんどの場合フレームスキップ起こさないから精度はいつだって気になるものさ
3Dのほうが精度はいらない

ティアリングも2Dのほうが気になるしね
617 :名前は開発中のものです。2010/03/22(月) 19:56:42 ID:a35EGBlP
2DPCゲームも盛んだった約10年以上前のintelのチップセット統合グラフィックコントローラには
主にゲーム中などの高負荷描画時に意図的にフレームスキップする機能が組み込まれていたけど
見て分るレベルじゃなくてほとんど気にならなかった思い出があるよ
619 :名前は開発中のものです。2010/03/27(土) 11:17:41 ID:CAF7oz9b
ゲーム用のactiveXインストールさせておいてアンインストールの時に消さないのはクソゲー
620 :名前は開発中のものです。2010/03/27(土) 13:42:08 ID:tZ9gJAWE
>>619
スレ間違えてるぞ
621 :名前は開発中のものです。2010/03/27(土) 22:43:26 ID:AvjpVtCq
>>615
ふ〜ん。よく知ってるね。ネット(笑)で調べたんだ?
622 :名前は開発中のものです。2010/03/28(日) 02:01:26 ID:vG829dZf
アプレットの2Dの戦術シミュレーションゲームをAWTで書いてて
加算合成とかやりたい程度なんですが、
JOGLとかライブラリ使ったら結構早くなるものなんでしょうか?
標準APIしか使ったことないんですが、使うとしたらJOGL一択?
623 :名前は開発中のものです。2010/03/28(日) 16:23:12 ID:dUxWoyHG
加算合成ならBufferStorategyとJava2Dのシステムプロパティー有効にすれば標準ライブラリでいける
624 :名前は開発中のものです。2010/03/28(日) 17:33:06 ID:vG829dZf
ありがとうございます
すいません、調べてみたら、BufferStrategyってアプレットから使えなくないですか・・・?

テクスチャで2Dの描画だけできれば十分なんですが、
drawImageのような処理はどう実装するのが普通なのでしょうか?

とりあえずJOGLについて調べてみたのですが、
特定の画像を読み込んだテクスチャごとに、予め指定した各々のz座標にまとめて描画
という風なものしか思いつきません・・・
625 :6222010/03/29(月) 01:33:25 ID:SqZ8R8TT
OpenGLを理解するところから始めようと思います
失礼しました
626 :名前は開発中のものです。2010/03/29(月) 17:04:23 ID:YLmAQvrk
>>623
詳細希望
どうやるの?
627 :名前は開発中のものです。2010/03/29(月) 17:07:28 ID:tAa/9ZD/
>>624
素のAppletを使う必要性が現時点で無いわけだから、
JAppletを使うわけにはいかんの?

とはいってもかなり作法が違うから、今から変更できないってのなら
わからんでもないが。
628 :名前は開発中のものです。2010/03/30(火) 16:45:14 ID:ANScytkg
>>627
JAppletでCanvasを描画するって方法があったんですね!
アプレットでBufferStrategy使えました。ありがとうございます
BufferStrategyが4,5回の起動につき1回程度、酷く処理落ちするので
自前のダブルバッファリングと切り替えるようにしたのですが、
スマートな方法はありませんか?

システムプロパティの方は、
Appletから設定出来るのかどうか分かりませんでした
629 :名前は開発中のものです。2010/03/30(火) 17:22:35 ID:5VmsakM5
>>623
半透明合成はAlphaCompositeでアクセラレーション効かせれるけど、
加算合成はどうすれば標準ライブラリで速度出せるの?
630 :名前は開発中のものです。2010/03/31(水) 13:50:19 ID:ynx77+er
>>628
BufferStrategyのせいで処理落ちしてるとは思えない。
たぶん、GCのせいだよ。
結構でかいメモリを使い捨てにしてるんじゃないかな。
で、GCのタイミングを制御してないと。

まぁ、ゲームとかサーバサイドじゃないとGCが気になること無いんだけどね。
GCの情報をログに吐かせてチェックしたら良いよ。
631 :名前は開発中のものです。2010/03/31(水) 14:16:29 ID:e2SekH7a
>>630
たまに描画アクセラレーションが効いてない状態になるのとGCは関係ないと思うぞ
632 :名前は開発中のものです。2010/03/31(水) 14:31:05 ID:ynx77+er
>>631
描画アクセラレーションが効いてないって話はどこから?
633 :名前は開発中のものです。2010/03/31(水) 14:34:10 ID:e2SekH7a
>>632
> 4,5回の起動につき1回程度、酷く処理落ちするので
原因はわからんけど同じようなことが起こった事あるから
634 :名前は開発中のものです。2010/03/31(水) 17:20:45 ID:ynx77+er
俺はそういうことは無いなぁ。

しかし、俺が読み間違えてた部分があるな。
>BufferStrategyが4,5回の起動につき1回程度、酷く処理落ちするので
は、4,5フレームごとに処理落ちすると言うことかと思ってた。

635 :名前は開発中のものです。2010/03/31(水) 20:30:53 ID:6whusFO/
問題に直面してる本人が原因をある程度特定しないことにはなんとも
新人の頃当たった上司は不具合の原因を完璧に特定して理詰めで説明
せんとソース触らせてくれなかったなぁ
636 :名前は開発中のものです。2010/03/31(水) 22:31:41 ID:fTTvzrRQ
たぶん昔の俺と同じミスしてんじゃないかな。「ひどく処理落ちする」
ってのはどうやって計測してるの?Timerを使って計測する限り大抵の
環境で60fps以上のループを回せないので(Timerの分解能でググれ)、
17ms以下の時間を計測できないことになる。つまり処理の時間を計測
すると「0msと17msが交互に出てくる」という現象が起こる。この
17msを処理落ちと思ってしまっているのでは。

結構前に書いた気がするけど、どんなにVolatileImageで高速化したところで
その前処理である「drawImage()」がjavaでは(というか最近の言語では)
絶望的に重いので、よほど小さい画像か低いfpsじゃない限り
drawImage()で再描画回すのは無理だよ。画面全体の再描画は無理なので、
一部だけにしないと。

だから「複数の画像をテクスチャであらかじめ読み込んでおいて、それを
3D空間上で順番に表示する」ということになるのよ。
drawImage()はリアルタイムで使用してはいけない。
だから3Dデバイス無しで動きの多い2Dの描画は無理。java以外の2Dゲームも
最近はほとんどこの処理で描画している。

アプレットでjoglやjava3dやGTGEを使いたい場合は、「あらかじめモジュールを
プレイヤーに各個インストールしておいてもらう」か「java web startを使用
する」かの2択になる。私はアプレットに興味がないので
知りたければ自分で調べて…。
637 :名前は開発中のものです。2010/03/31(水) 23:01:06 ID:e2SekH7a
drawImageが絶望的に重いってのが理解できないんだがどういうこと?
639 :名前は開発中のものです。2010/04/01(木) 01:30:29 ID:yUfE9csc
>>630
>>636
具体的に書かなくてすみませんでした
「ひどく処理落ちする」というのは、
普段1フレームの処理が10〜40ms程度なのが、200〜300くらいになります
createBufferStrategy、getBufferStrategyをやり直しても直らず、Appletを起動し直さないとダメでした
ハード依存のせいで不安定なのかな、などと勝手に思ってましたが、よく分かりません

とりあえずGCのログ調べてみます
ありがとうございました
640 :名前は開発中のものです。2010/04/01(木) 13:06:54 ID:UAXZ1fUj
>>636
java6update10でもそうなる?
アクセラレーションの効き方がupdate10以降全然違うよ。
641 :名前は開発中のものです。2010/04/19(月) 16:58:19 ID:DE/oWF3W
Javaで3dソフトレンダラー作ってるんだがテクスチャマッピングが糞重い。
テクスチャ無しの時と比べて3倍近く重くなる・・・
ピクセル単位でマテリアルの色とテクスチャの画像の色とを乗算してるんだが、
速くする方法はないだろうか・・・
642 :名前は開発中のものです。2010/04/19(月) 22:44:06 ID:EBaRhPkl
ソフトだとそんなもん。srcとdestのバッファが2次キャッシュに収まっているうちは早いのでそれを意識するしかない。
符号なし精度やSIMD直接発行したくなるけど、せいぜいマルチスレッドしかないね。
644 :名前は開発中のものです。2010/04/23(金) 17:11:32 ID:qX+XOmtR
3Dで思ったんだけどブルームてどういうふうに実装するの?
高輝度部分と重なる物体の輪郭をぼかせばいいの?
CGで木漏れ日とか表現してる人はどうやってんだろう。
645 :名前は開発中のものです。2010/04/24(土) 16:15:02 ID:wWfiheja
マルチスレッドで組んだことないけど、
レンダラーの場合はどのあたりをマルチスレッドにすべきだろう?
やっぱ座標変換より描画処理か?
647 :名前は開発中のものです。2010/05/06(木) 15:54:54 ID:sWIFt/qs
>>644
それ用にテクスチャを作っとくことが多いんじゃ?
んで加算合成とか
専門じゃないからよく分からんが
648 :名前は開発中のものです。2010/05/08(土) 01:32:27 ID:OfzVRu2e
ゴーストやレンズフレアならテクスチャ使うこともあるけど
ブルームだけならレンダリング後のイメージ処理じゃないかな。
HDRIでレンダリングして一定以上の輝度の部分を抜き出して
ぼかしたあとに加算合成するとかそういうの。
650 :名前は開発中のものです。2010/08/13(金) 00:31:22 ID:qfOMxM2L
http://acerola3d.sourceforge.jp/

Java3Dベースの簡易3Dライブラリです.
趣味のゲーム作りに,夏休みの自由課題にどうでしょう?
651 :名前は開発中のものです。2010/09/05(日) 21:18:27 ID:QTcNVFIg
jMonkeyEngine使ってる人いないかな?
いつの間にか3になってたり、jMonkeyPlatformなんていうのが
出来たみたいで使い勝手とか教えて欲しい。
ttp://www.jmonkeyengine.com/home/
652 :名前は開発中のものです。2010/09/15(水) 21:31:02 ID:0fNVtxCG
>>651
私も知りたいです。
3D用らしいけど、2Dのゲーム作るのにも使えるかな?
653 :名前は開発中のものです。2010/09/16(木) 21:14:49 ID:t4ajdLvC
Java3Dでゲーム作っておりまして、フルスクリーンに対応させようとしているんですが、
「Fail to create reference rasterizer 3D Device. - D3DERR_DEVICELOST」というメッセージのダイアログが出て上手くいきません。
DirectXのデバイス消失のエラーらしいんですが、どうすればいいかわかりません。

OS :Windows Vista
SDK :1.6.0_21
JRE :6
Java3D:1.5.1
DirecX:DirectX11


GraphicsEnvironment ge = GraphicsEnvironment.getLocalGraphicsEnvironment();
GraphicsDevice dev = ge.getDefaultScreenDevice();
GraphicsConfiguration gc = dev.getDefaultConfiguration();
JFrame frame = new JFrame(gc);
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
frame.setUndecorated(true);
Canvas3D canvas = new Canvas3D(SimpleUniverse.getPreferredConfiguration());
SimpleUniverse universe = new SimpleUniverse(canvas);
Container con = frame.getContentPane();
con.setLayout(new BorderLayout());
con.add(canvas,BorderLayout.CENTER);
dev.setFullScreenWindow(frame);
655 :名前は開発中のものです。2010/10/17(日) 23:21:01 ID:QSRFbXIi
会社がC#を推奨しだしたorz
せっかく、jMonkeyEngine勉強しようかと思ってたけど、もう、Javaはおしまいなのかな。
Oracleは資金力あるみたいだから、ここらでJavaにドカンと投資してくれないかな
656 :名前は開発中のものです。2010/10/26(火) 18:12:23 ID:ZHxtTJWY
Androidがjavaなんだからこれから上り調子だろうて
658 :名前は開発中のものです。2011/01/05(水) 00:27:48 ID:i8g2V3+Y
>>656
今のところ、JavaはWebアプリ専用みたいな扱いだから、広がって欲しいね。
言語仕様的にはGUIもサポートしているし(使いやすいかどうかは別にして)、Webアプリ以外も使い道あると思うんだけどなぁ。
ゲーム作るにしても、画像、音、入力と一通りJavaだけで管理できるからいいと思うんだけどね。
スピード面も6になってかなり改善しているように感じるし。
659 :アジェグ4倍 ◆4xAJeG.COM 2011/01/05(水) 11:29:23 ID:GCgecYyP
Javaにはまだ、ジョイスティックが使えないという
致命的な欠点があるからねぇ。

それさえできれば、AWTで、非ブラウザの
秒間60フレームの2Dゲーぐらいは作れるというのに。
660 : [―{}@{}@{}-] 名前は開発中のものです。2011/01/05(水) 12:02:00 ID:TlF2vpG7
>>659
JNI(JNA)使えば簡単にできるけれど、「(コスト的に)使えない」ということ?
661 :アジェグ4倍 ◆4xAJeG.COM 2011/01/05(水) 12:49:08 ID:GCgecYyP
Javaである以上、ターゲットはマックだからね。
そのJNI(JNA)とやらが、マックでどれだけ対応していることやら・・・
662 :アジェグ4倍 ◆4xAJeG.COM 2011/01/05(水) 13:07:57 ID:GCgecYyP
まあ、それはさておき、
このスレの前のほうを見てたら、やたらと
作ってるもん見せろってのが目に付いたから、
ここらでひとつ、最近作ったのをお見せしよう。

http://www2.ocn.ne.jp/~j3262il6/rds_java.zip

これは、ゲームで言うならドラムマニア(音楽ゲー)。
つっても、あまりゲームっぽくなくて、MIDIを使って
似たようなことをやるというもの。

.midのファイルを用意するがよい。
エレキドラム(Yamaha-DTXとか)があるなら、なおよい。

今のJavaがドンだけできるのかの指標にでもするんだな。


↓は、前に作った、Windowsネイティブ版。
http://www2.ocn.ne.jp/~j3262il6/rds/
663 :名前は開発中のものです。2011/01/05(水) 16:28:48 ID:XlTBXrDt
>>661
>Javaである以上、ターゲットはマックだからね。
ここは理解できん
ターゲットはWindowsとは限らないからねならまだしも。
664 :アジェグ4倍 ◆4xAJeG.COM 2011/01/05(水) 16:42:38 ID:GCgecYyP
Javaのランタイムは、Windowsだと標準じゃないけど、
MacOSなら標準だからね。

Windowsなら、C#なりHSPなり、いろんな開発キットがあるから、
Java以上にゲーム向きの環境があるもんねぇ。
665 :名前は開発中のものです。2011/01/05(水) 20:31:46 ID:XlTBXrDt
ソースを見てびびった。

書き方がなんか・・・。Cのほうから来ましたな人?
文法はJDK5以降なのになぜ。

動くことが正義なのは良いと思うんだけどさ、
Javaの命名規則なんて無視しまくりやぞ。いいのかそれで。

666 :アジェグ4倍 ◆4xAJeG.COM 2011/01/05(水) 20:51:56 ID:qGOlaNgX
プログラマーキャリアは長いから、
確かにJavaの前にはCをやってた。
最初に覚えたのはN-BASICだしね。

Javaの命名規則てのも、正直よく知らんねぇ。
667 :名前は開発中のものです。2011/01/05(水) 21:15:40 ID:XlTBXrDt
いや、知らんねぇじゃなくて、公開する以上気にしろよ。
Javaでゲーム作りました。遊んでください。
ってスタンスならここに来ている意味がわからん。
669 :名前は開発中のものです。2011/01/06(木) 01:41:29 ID:9xgj1835
めーめーきそくなんて統一されてればいいよ。
Cスタイルなら読むのに苦労する奴少ないし。
670 :名前は開発中のものです。2011/01/07(金) 15:41:36 ID:6ULeyQbi
ジョイスティック使えるようにしてみたけど(GamePadCodingのとこの)
俺のヘボPCだと結構重いね
でも刺したPSのコントローラーが使えるのは感動だ

PollingContllolerしだすと処理落ちするのが、うーん
671 :名前は開発中のものです。2011/01/14(金) 22:23:11 ID:pVEwV9Xg
すみません。質問させてください。
2Dのシンプルなゲーム製作を考えているのですが、フレームワークとして、JMonkeyEngineを採用するのは、
愚かな選択でしょうか?
自分は、Webアプリ作ったことはあるのですが、ゲーム及びGUIは作ったことありません。
ゲームループや画像描画が楽になるかと考えていますが、2Dのゲームには重過ぎますかね?
672 :名前は開発中のものです。2011/01/14(金) 22:28:53 ID:Dr6CcDef
JMonkeyEngineは3D用じゃなかったっけ?
2D特化ならSlick2D、GTGEなんかがあるからまずそっち試してみたらどうだろう
673 :名前は開発中のものです。2011/01/14(金) 22:33:32 ID:Dr6CcDef
すまん、Slick2Dは日本語ドキュメントが皆無だな
GTGEはググってみると日本語の情報がなんぼかあるのでやりやすいと思う
674 :名前は開発中のものです。2011/01/15(土) 00:34:49 ID:BRCcJmCZ
なんじゃこりゃ?

何が言いたいのかわからん

http://detail.chiebukuro.yahoo.co.jp/qa/question_detail/q1453760309
675 :アジェグ4倍 ◆4xAJeG.COM 2011/01/15(土) 09:38:14 ID:pphGSX3w
>>674
あっちに書くのは面倒だからこっちに書こう。

多分、製作手順はかなり違うだろうね。
ゲームだと、絵も描かなきゃなんないし、
音楽や効果音も作らなきゃなんないし。

そもそも、モノ売るってレベルじゃねーからねぇ。


と、だれかコピペでもしてやるがよい。
676 :アジェグ4倍 ◆4xAJeG.COM 2011/01/15(土) 09:52:46 ID:pphGSX3w
2Dのシンプルなゲームと言うレベルなら、
標準Javaのクラスたちで十分。
外部クラスを使うと、マックなどで使えない恐れがあるからねぇ。

Swingは、いかにもなJava画面になっちゃうから、
awtにとどめた方がよさそうだ。
BufferStrategyクラスが必須だよ。

アプレットだとまた別だけど、JMonkeyEngineてのが
アプレットで使えるのかどうか・・・
677 :名前は開発中のものです。2011/01/18(火) 00:36:43 ID:Ai2gBG0u
Andoroidアプリのゲームを作るとしたら
JMonkeyEngineなのかなぁ?

JMonkeyPlatform入れてみたけどhelpが読めねぇ
googleとexicite翻訳様に力を借りるしかない・・・
678 :名前は開発中のものです。2011/01/23(日) 12:53:47 ID:vpMC2CYY
jPCT ttp://www.jpct.net/demos.html
これのソフトウェアレンダリングってどうなの?
ハードウェアレンダリングもサポートしてるみたいだけど・・・
珍しくマルチコア対応してるし、サンプルもある程度高速に動いたんだが。
679 :Now_loading...774KB2011/03/04(金) 13:56:25.23 ID:7ZfO3S4Z
>>661
Macて最近Javaのサポート切ろうとしてなかった?
682 :名前は開発中のものです。2011/03/17(木) 13:31:44.50 ID:kd8KFBa3
いや、一気に増えているだろ
スマートフォン開発ではJavaが最大勢力なんだから
683 :名前は開発中のものです。2011/03/17(木) 17:52:22.41 ID:e6TJnmJR
>>682
スマートフォンとかだとJava人気なのか
未だにゲームというとPCゲームしか思い浮かばない俺は時代に取り残されてるな
そもそも、スマートフォンもってないし

PCゲーのこと考えると、そもそもJavaで作られたゲームどころか、Javaで作られたアプリ自体が少ないからな
Webアプリは腐るほど例があるのに、普通のアプリは驚くほど少ないのが不思議だ
684 :名前は開発中のものです。2011/03/19(土) 20:29:43.26 ID:9SfDP0Pp
最近minecraftとか見るとjavaもそう捨てたものじゃないと思うんだが。
それは俺だけだろうか。
685 :名前は開発中のものです。2011/03/20(日) 01:16:43.46 ID:9MZQZBsM
プラットフォーム考えないで良いのは面倒くさくなくて良いよね
686 :名前は開発中のものです。2011/03/20(日) 04:48:51.87 ID:BP2bLQ6f
昔はJava=遅い=ゲームに使えないってイメージがあったけど。
今はそうでもない気がするんだが、やっぱり遅いんだろうか。
687 :名前は開発中のものです。2011/03/20(日) 13:34:38.27 ID:GIv2bxWr
>>684
マルチプレー用のサーバをユーザ個人で立てるときに
linuxベースのOS上でやれるのは結構便利だと思う。
688 :名前は開発中のものです。2011/03/22(火) 00:33:53.38 ID:PZKkUIwA
>>650でうちのゼミの先生が作ったライブラリが紹介されててワロタ。
Java3Dと組み合わせて使うと結構面白い事が出来そう。
689 :名前は開発中のものです。2011/03/28(月) 00:42:27.49 ID:jFJ/OZ03
質問させてください
Javaで作られたゲームのソースコードを読みたいのですが、これだけは読んどけ!ってのありますか?
自分は3Dには特に興味ないので、3Dに関するコードはなくてもいいです
その代わり、入出力関係や設計の参考になりそうなコードが読みたいです
よろしくお願いいたします
690 :名前は開発中のものです。2011/03/28(月) 14:07:25.73 ID:6Xr5yH79
目当てのゲームのバイトコードをjadにでもかけて丸パクリすればおk
691 :名前は開発中のものです。2011/03/28(月) 22:28:58.82 ID:jFJ/OZ03
>>690
さすがにそれは…w
そもそも、Javaで作られた有名ゲームを知らないから、それすら出来ないです。
Javaでゲーム製作を考える人間が参照にすべき鉄板のコードはないのでしょうか?
もしくは、鉄板でなくてもいいので、一応ゲームとして完成している小さめのコードは存在しないでしょうか?
よろしくお願いいたします。
692 :名前は開発中のものです。2011/03/28(月) 23:35:46.02 ID:r61+kbpP
>>691
昔の課題スレ、土日スレあたりに完成したミニゲームがうpられてたよ
ソース付もあったような・・・
ろだとwikiが一度潰れてるから拾えないかもしれないけど
自分のサイトにあげてる人の分はまだ残ってるかも
不確定情報でごめんね
693 :名前は開発中のものです。2011/03/30(水) 21:13:50.94 ID:JKDIl8Py
>>692
情報ありがとう。
薄々感じていたけど、Javaで作られたゲームは少なそうですね。
とりあえず、ttp://www.brackeen.com/javagamebook/が良さそうなので勉強してみます。
サンプルを動かした感じはアクションっぽいですが、最終的にはAge of Empire見たいなマウスで兵隊に指示出して大軍がぶつかり合うゲームを作りたいです。
696 :名前は開発中のものです。2011/03/31(木) 22:03:57.82 ID:08CjQx4x
CとJava、どちらをメーカーが用意してくれたかっていう程度の差だと思う

MSはCを、携帯メーカーはJavaを用意した
ただ、それだけの事であって、言語の優位さはあまり関係ないのでは?

Javaでネイティブアプリが作れれば状況は変わる気もするけど
EXEを作れない言語をあまりゲームでは使いたくないよね
697 : [―{}@{}@{}-] 名前は開発中のものです。2011/03/31(木) 22:06:58.17 ID:0J63Hruy
exewrap
698 :名前は開発中のものです。2011/04/01(金) 00:03:25.13 ID:uvHJC2J/
>>697
ここはgcjじゃないの?
699 :名前は開発中のものです。2011/04/05(火) 22:29:19.98 ID:f03XufOI
マウス操作の参考になるゲームのソースコードないっすか?
700 :名前は開発中のものです。2011/04/07(木) 18:55:40.47 ID:tcFhkFn3
>>699
マウス操作?曖昧過ぎて良く分からない。だから憶測で貼るね。

リスナーについては此処読んどけ。
http://www.tohoho-web.com/java/listener.htm#MouseListener

マイクロソフト ワイヤレス ブルートラック マウス Arc Touch Mouse RVF-00006
マイクロソフト ワイヤレス ブルートラック マウス Arc Touch Mouse RVF-00006