Javaでゲーム作成 2本目at GAMEDEV
Javaでゲーム作成 2本目 - 暇つぶし2ch750:名前は開発中のものです。
07/01/28 00:07:53 2uWkx2df
ただの自治厨だな、実際にコードが出てるだろ

751:738
07/01/28 03:47:32 rcpB4oX3
レスをくれた方、有難う御座います。
EnumMapで実現する事が可能でした。
しかし、dojaなので使う事は出来ませんでした。
ただ、EnumMapを知らなかったので、列挙型についてあれこれと調べる内に知識が付きました。
大変感謝しています。
結局、上手いやり方が見つかるまで、
各職業毎にインナークラスでスキルを持ち、
習得時にインナークラスを作成してPlayerクラスのVectorに突っ込んでやる事にしました。

747さんのスレは、非常に参考になりそうなのですが、
レベルが高過ぎてちょっと参加出来なさそうです。
いえ、何もこのスレが自分みたいにレベル低いかというとそういうわけじゃないのですが
いつか参考に出来るレベルになった時に閲覧したいと思います。

今後は設計に関しての話題は自粛したいと思います。
なんだかすいませんでした。

752:738
07/01/28 03:54:34 rcpB4oX3
public Skills getSkill(String jobName,int No){
 return (Skills)Class.forName("skills."+jobName+"$skill"+No).newInstance();
}
try~catch文は省略していますが
この様にして内部クラスをオブジェクトとして得ました。
例としてSoldierクラスの内部クラスです。
public static class skill1 extends Soldier{
 public skill1(){
  skillName="剣士1";
 }
}
JVMがstaticに関してどのタイミングでメソッドをロード?するのかは
分かりませんが 上述の通り、「上手いやり方」が見つかるまでこれで行こうと思います

初心者なのに、dojaはきついなぁ…
String.splitもStringTokenizerも無いので自分で作ってます…

753:名前は開発中のものです。
07/01/28 12:06:30 caDqapim
dojaって最初にいってくれ
そういうスレがあるはずだから

また、容量が少なかったり速度が出なかったりするような環境の場合、
本来あるべきアルゴリズムを端折ることが多いから勉強にはむかんね


754:名前は開発中のものです。
07/01/28 20:06:02 ItnxVFSk
>>752
Skill を扱いたいのか Skills を扱いたいのかよくわからんが
int でナンバー振ってサブクラスがガチガチに定義するんなら
Skill の配列かリストで済むんじゃないのか

public abstract class AbstractJob implements Job {
 protected Skill[] skills;
 // ジョブのスキルを返す
 public Skill getSkill(int no) {
  return skills[no];
 }
}

というかリフレクションの使いどころを完全に間違えてる
あれはいざという時に使う伝家の宝刀みたいなものだ

755:名前は開発中のものです。
07/01/28 23:07:22 caDqapim
こまめにさしかえるような汎用的なフレームワークつくりたいのならインスタンスの生成の仕方それでもいいけど
dojaとかいってることからしてそういう目的ではないだろうしな

RPG用フレームワーク作るんです!とかいうのならなおさら

基本的にメソッド先で生成したオブジェクトを返すって使い方はしないよ
自前で登録してコンテナへ登録、もしくはコンテナが自動的に生成のどちらかかと
そしてコンテナからインスタンスを取得する。場合にっては使いまわしたり

756:738
07/01/29 00:36:23 X8Jeor0A
>>754-755
お二方とも有難うございます
稚拙なコードを晒すのは恥ずかしいですが、本当に勉強になります。
生成時にコンテナに追加という形でやってみたいと思います。
754さんの意見も大変参考になります。感謝しています。


757:名前は開発中のものです。
07/02/17 08:06:32 L15CXcqa
■いきなりびっくり Java 攻撃
古い記事だけど起動が遅いのは今も変わらないよな
URLリンク(www2.plala.or.jp)

■Flashで動作する3Dエンジン「Papervision3D」
ActionScriptに浮気したくなる今日この頃
URLリンク(gigazine.net)

758:名前は開発中のものです。
07/02/17 15:10:04 5v908nqH
>>757
アプレットがすさまじかったのは原因はネスケで使ってたシマンテックJITの出来の悪さだろ
あれ起動中にネイティブに全部変換してる

おかげで1.3から標準でHOTSPOTVM搭載されるようになってVMのサイズが何倍にも膨れ上がったわりに
起動時間は何分の一にもなった

その後VMの起動速度はゆるやかに改善されていくことになるがJavaSE6は起動が急にはやくなったのは確か

適当なWEBに置くコンテンツとしてはFlashなりなんなりでいいだろう

ただ、規模がある程度大きくなり本格的なアプリとなれば別

759:名前は開発中のものです。
07/02/24 22:19:26 /rYZcxU7
Arkanae
URLリンク(edony.tuxfamily.net)
ソースコードもあり
こんなのがあったとは知らなかった

760:名前は開発中のものです。
07/02/25 00:29:28 PImIuZ8L
>>757
プログラミングを行う観点で見れば、
「開発環境死亡・ライブラリ設計死亡・Flash9でもJITの性能しょぼい」
と選択肢にも挙がらないぞ。

アニメーション作成ツールとして見れば素晴らしいが、
残念ながらアプリ開発には使い物にならない。

761:名前は開発中のものです。
07/02/25 12:31:39 6L67UnbH
age

762:名前は開発中のものです。
07/02/25 19:01:35 LGf8AXIi
>>760
「使い物にならない」のがFLASHなのか、おまいのプログラム開発力なのか、世の中の「FLASHアプリケーション」でも見ながらもう一度考えてみるんだなw


763:名前は開発中のものです。
07/02/25 21:47:35 o7vkhh81
>>762
出来ることできないことがあってFlashはまだまだ制限は多い
アプリの種類によってはFlashでもいいこともあるが、開発コストとかそういうのもみてからな

764:名前は開発中のものです。
07/02/26 03:01:50 3IqZBjOx
この本はコードサンプルがJava
Physics For Games Programmers
URLリンク(www.amazon.co.jp)

765:名前は開発中のものです。
07/02/26 21:37:19 g0XTbe0A
good job!

766:名前は開発中のものです。
07/02/26 22:47:55 YymhnNUL
いただきました!
URLリンク(www.apress.com)

767:名前は開発中のものです。
07/02/27 17:21:30 ZjZJQFQd
URLリンク(woomy.dip.jp)
初心者なのですが、こういう感じのはFlashで作った方が簡単なのですか?

768:名前は開発中のものです。
07/02/27 17:56:16 B4ufeums
楽なのはJavaのほうかと

769:名前は開発中のものです。
07/02/27 18:54:43 ZjZJQFQd
そうなんですか! ありがとうございます ┌●ペコ
本屋行ってJavaの参考書を見てきます。

770:名前は開発中のものです。
07/02/27 19:00:07 B4ufeums
Javaのゲームの本たくさんあるけど、比較的まともなのは14歳からとかいうやつだけだったような
比較的新しい書籍でもなぜか10年前のJavaの環境用につくっていたりするし

>>11のところにあるライブラリやゲーム、過去の日記がわりと参考になる

771:名前は開発中のものです。
07/02/27 19:02:10 OwhxanSJ
java は覚えなきゃいけないことが多い。
もちろん java で覚えた事は他の言語でも役に立つけど。

つまり初心者が目的の作品を完成させるまで、
という意味では flash の方が簡単。

プログラミングそのものに興味があるなら java
それらしいものを作りたいだけなら flash でいいとおもう

772:名前は開発中のものです。
07/02/27 19:10:29 IkeFh1JT
RADで言語が隠ぺいされてるflashと言語そのものjavaを比べて覚えること沢山てw

保守性考えたらjavaだよな。
javaゲームはハードウェアアクセラレータ効かんとバリバリの3Dとか無理だが。

773:名前は開発中のものです。
07/02/27 19:12:53 B4ufeums
プログラミング自体がはじめてで本当の取っ掛かりがほしいなら昔のBASIC感覚で使えるHSPあたりだろうな
だが、flashは開発環境がお粗末なのでお世辞にも初心者が作りやすいとはいえないのが癌

JavaSE6ならJavaスクリプト+Javaのライブラリという使い方も出来るがIDEのお世話になることも出来ないので
ある程度の規模になるときつい

774:名前は開発中のものです。
07/02/27 19:50:28 3CmlaFoI
Flashは仕様外の動作をすることがあるから
それを避けるためのオマジナイが多いとか聞いたけどこれは本当?

あとは>>771に同意。


775:名前は開発中のものです。
07/02/27 20:47:13 IkeFh1JT
そう言う場合は他人が作ったフレームワークのバグリスク担いでフィードバックしてやるのが
バザールモデルの基本・・・

とか言ってみる。
結局間接的にOSSなライセンスされてんだし。

776:名前は開発中のものです。
07/02/27 21:20:09 1qONjX2a
>>767
ずいぶん長い間いじってる割に画面が小さくて見づらい、flashの方が簡単に作れるんじゃないの?音もかなり悪いし

777:名前は開発中のものです。
07/03/01 11:25:25 Q/MrFJlJ
上のページ見てたらjavaだけでBGMとか効果音出るんですね
けっこうゲームらしくみえる

778:名前は開発中のものです。
07/03/01 12:14:46 ycm+eBTU
音は普通にネイティブと変わらんよ
むしろFlashのほうが制限が大きすぎる


779:名前は開発中のものです。
07/03/01 21:03:18 8CEVVUMC
midiとかwavファイルはJava1.4以降だったかも・・・
アプレットからの利用では制限があったような気がする。

ひょっとしてJava1.1辺りでも波形を生成して発音可能?


780:名前は開発中のものです。
07/03/01 21:26:44 J8EC7Q4J
>>762
AS2で3000行以上のコーディングが必要なもの書いてみろ。
開発環境は酷い、ランタイムエラーを吐かないで正直死ねるぞ。

781:名前は開発中のものです。
07/03/01 21:28:47 BnQANlH3
いまActionScript語るならFlashよかFlexの方がこのスレ的だろな

それでもアポロ登場まではアプレット比較前提だが

782:名前は開発中のものです。
07/03/01 22:56:33 J3C3KVJN
>>779
JavaSoundは1.3以上

>>781
ゲーム用途ならWebStartのほうがいいんじゃね?

783:名前は開発中のものです。
07/03/02 04:04:27 Isc+NXUT
外国じゃけっこうwebstart見るけど日本じゃ見ないな。

開発者がwebstartに対して無知だから使いこなせてないんじゃね?

鯖丸ごと立てるかホスティングしちゃう他国と違ってレンタルスペース主体の日本じゃwebstart置けないしね。

クリック一つで必要なもん全部落としてキャッシュして後は差分だけネット越し・・・他はスタンドアローンと同じってのは使う側から見れば楽で良い。

同じ事はMEのAMSで出来るけどあっちは実装依存ヒドスw

784:名前は開発中のものです。
07/03/02 12:01:55 AlxNYkg4
差分ダウンロードがつかえるかどうかはたしかに鯖次第だが、配置だけならApacheとかなら大丈夫だぞ

785:名前は開発中のものです。
07/03/02 22:28:33 e7ng/jU4
レンタル鯖でもいけるってこと?

786:名前は開発中のものです。
07/03/03 00:52:32 LWiJuDbd
JNLPファイルのMIMEタイプの設定が出来る or 既にされている所だったら

787:名前は開発中のものです。
07/03/03 07:49:54 94HMLa1l
でもレンタルにwebstart置いたら鯖に負荷掛けそうで気が引ける・・・

788:名前は開発中のものです。
07/03/03 09:09:45 Lb6a9eHr
そんなに人気出るのかお前のゲームは

789:名前は開発中のものです。
07/03/03 09:10:53 vVu9iFKK
webstartはアプレットより負担かからんだろ

790:名前は開発中のものです。
07/03/03 12:49:41 e8MDKGEx
同じだろ

791:名前は開発中のものです。
07/03/03 14:05:57 YkFSkvir
WebStartはバージョンチェックやオフラインモードがある時点でアプレットやFlashより負担は少ない

792:名前は開発中のものです。
07/03/03 14:54:27 S2NfJpKC
アプレットが常に鯖と通信してる訳じゃないだろ?

793:名前は開発中のものです。
07/03/03 16:27:50 cZ+W9Vw8
なるほど、クライアント側でJ2REをインストールして、
更にJava Web Startもインストールしないと動かないんですね。
URLリンク(sdc.sun.co.jp)

helloサンプルがダウンロードになるので、混乱してしまった。
今のところJava Web StartはWindows版だけ?

794:名前は開発中のものです。
07/03/03 17:03:50 nfMBIjTB
Macもあるお

795:名前は開発中のものです。
07/03/03 17:31:56 cZ+W9Vw8
おお!Macでも!

夢のJava Web Startのデモが動いた~
URLリンク(java.sun.com)

もう少しアクションするゲームが見たかったなあ
なぜか日本語サイト行くと動かないです。

796:名前は開発中のものです。
07/03/03 17:40:52 6WDz0MUg
jreにjws付いてなかったけ。
jdkだけだった?

797:名前は開発中のものです。
07/03/03 17:51:56 lyCQr1W4
JREについてるよ。

URLリンク(www.java.com)
>Java Web Start ソフトウェアの入手
>Java Web Start ソフトウェアは、Java Runtime Environment (JRE) のコンポーネントで、JRE と一緒にインストールされます。

798:名前は開発中のものです。
07/03/03 18:13:05 xt9rX0Kw
>>792
ブラウザ閉じればまたダウンロードが入ってしまう
あとは署名関係が5.0から柔軟になったのでライブラリが使いやすくなったというのは大きい

799:名前は開発中のものです。
07/03/03 21:37:25 4m5N8dVe
AppleはSunに金払ってJavaの正式版を出してもらえよ

800:名前は開発中のものです。
07/03/03 23:59:20 sBNSOExJ
MacOSXのJVMは、SunのJVMを元にAppleが手を加えたバージョン
だったと思うのだけど...

801:名前は開発中のものです。
07/03/04 00:33:57 u4tLbN0a
>>798
ブラウザのディスクキャッシュがある

>>800
sunがハードウェアアクセラレータ利かす前にcocoaと統合してOpenGL使っちゃったから描画周りが違ってたり、5.0の途中までしか出てない。

802:名前は開発中のものです。
07/03/04 01:51:19 KQd1C5T2
アプレットだとオフラインモードやデスクトップ統合がないからダメすぎ

803:名前は開発中のものです。
07/03/05 22:47:43 b9ULYpEb
Andrew Davison's Home Page at PSU
URLリンク(fivedots.coe.psu.ac.th)
URLリンク(fivedots.coe.psu.ac.th)
URLリンク(fivedots.coe.psu.ac.th)

804:名前は開発中のものです。
07/03/06 14:55:45 VaqQcumj
コメント書き忘れたけど、下の本のPDFが読めるよ。
Pro Java 6 3D Game Development(発売予定)
Killer Game Programming in Java

805:名前は開発中のものです。
07/03/07 04:01:52 uOMRHvf+
win2k と me でデュアルブートしてるんだけど (つまり、完全に同一マシン)
同じ Java5 SDK、同じ DirectX8(笑) を入れたはずなのに
2k で普通にサクサク動く画面が me ではものすごく重くて意外。

ウィンドウモードでのゲームを作りたくて、
あらかじめ BufferedImage から int[] を取得しておいて
そいつに描画して JFrame に貼り付ける、という処理を
wait() と Timer、notify() を組み合わせる常套手段で回してるんだけど
このどこかで 9x系 = 本質的に 16bit てのが足かせになってるのかな。。。
タイマの精度か、synchronized のコストか。。。

今まで C++ で書いてた時は、ここまでの差は見た事なかったんで
ちょとショックですた。。。

806:名前は開発中のものです。
07/03/07 11:55:36 zPOySlRd
画面の色深度が違うとか

ソフトウェア描画は60fpsやるなら320*240くらいが限界だね


807:名前は開発中のものです。
07/03/08 06:19:38 K32nYRwN
DirectX8ならVGAカードとドライバは?
directX9以降のカード+ドライバだとdx8の対応がいい加減になって来てる。

まあ、javaが5.0ならハードウェアはあんま期待出来んが・・・

808:名前は開発中のものです。
07/03/09 02:15:59 De8bQ7Op
レスがついてるとはおもわなかた。サンクシコ。
色深度は両方とも32bit。
カードは6年前のDX8全盛期のもの。
だからおいらなかなかDX9に手出しにくいのですよ。

そんなわけで今プロファイラ勉強中。楽しくて萌え。いや萌えとかないけど。

809:名前は開発中のものです。
07/03/09 02:36:59 uJO/ivat
タイマー周りはNTカーネルと9xカーネルとでまったく違うから
組み方によっては差が出るだろうね

プロファイルとればどこが遅いのかすぐにわかるはず
勉強することもないのでは?
IDEが一発で円グラフや棒グラフでビジュアル化してくれるし

810:名前は開発中のものです。
07/03/09 04:25:06 dk7DCFkt
タイマーの差異でfps固定にミスってるとか描画性能が出てない上にディスプレイが32bitだからとかか・・・どっちかてとCPU性能かな?

こりゃベンチマークでマシン側の2Dと3D性能調べた方が良いね。javaの問題じゃなさそう。FF11がDX8世代だからちょうど良いと思うよ?

後はまあ、メモリの転送速度とか?java自身は十年前でも徹底的に叩きあげればそれなりに出たからね。
下手するとDX8末期に出た
イリュージョンのエロゲすら危ういかもしれんし・・javaで演算量を馬鹿みたいに増やしたベンチ組むと顔出すかも。

5.0だと初めから性能が大方バランス良く出てるから叩き甲斐の無いイケナイ子になってしまって残念。

6.0なんてそりゃあもう・・・再コンパイルなしであの速度はビビった。調教師いらねぇ。
けどサポートがxp sp2以降なんだよね。
vistのドライバが出そろってから乗り換えようと思ってる奴には正式サポートはなしですか?

811:名前は開発中のものです。
07/03/09 10:54:20 pyER6LIF
>>810
6.0っつーのはJava SE 6のことか?

どうでもいいことかもしれんが、Java SE 6のサポートはWindows2000以降
(厳密にはWindows2000以降とは書かれてないが面倒なので他バージョンは省略)。
XP SP2以降でなければならないとはどこにも書かれていない。
ていうかすでにSunは6.0といった名称は使っていない。Java SE 6。

こういうことは調べてから書いてくれよな。
そういう俺はWindows2000ユーザー。
サポートがXP SP2以降とか書いてあったので焦ったぜ。

812:名前は開発中のものです。
07/03/09 12:18:07 e7LFbbBG
xp sp1にjdk6入れたときテストしてないって出たよ。
動くがsp2移行にしろインストール続けるか?って聞かれた。

システム要件の所にはサービスパックの事までは書いてないはずだし。

書いてあるのは98,MEはサポート外ってだけ

813:名前は開発中のものです。
07/03/09 21:59:28 9+hAo8dr
>>770
> Javaのゲームの本たくさんあるけど、比較的まともなのは14歳からとかいうやつだけだったような

そう、15歳からはじめる Javaゲームプログラミングとかいう題名の本、結構良いよね。
とにかく、読みやすいし、アクションゲームの基礎をきっちり学べる。
画像、MIDI,、wav、地形スクロール、タイマー とか。


ただし、この本を買うのは恥ずかしい。
あと、はがきを送ると、オマケPDFがもらえるとあるのだが、まったく返事なかった。
サポート宛にメール送っても返事も返さない出版社である。

814:名前は開発中のものです。
07/03/09 23:51:00 QfQeHSSr
おいおいサポートめちゃくちゃだな

815:名前は開発中のものです。
07/03/10 08:06:06 5n5eAt21
ラトルズか、あそこはHSPシリーズとか(吉里吉里で)同人ゲーの作り方の本とか一見厨臭いけど
15歳からはじめるjava~は当たりだった。

pdfはこれか
URLリンク(www.rutles.net)

だれかこれ読んだ事ない?
URLリンク(www.amazon.co.jp)ゲームプログラミング-アルゴリズムとフレームワーク-長久-勝/dp/4797318422/ref=pd_sim_b_3/250-1688549-7177063

816:名前は開発中のものです。
07/03/10 09:32:39 4+e7EI8M
18歳から始める・・・が必要だな

817:名前は開発中のものです。
07/03/10 11:21:26 +DX9YtFE
ゲーム作りが初めてなら悪くないとおもうんだけど
古いJavaで動くように書かれてるんだよね。

新しいJavaを使いたかった俺としては少し物足りなかった。

818:名前は開発中のものです。
07/03/10 12:10:01 xgekqMww
>>816
エロゲでも作る?

>>817
1.4.2,5.0,6と全部別モンだから新しいっても書く方はバージョン毎に出せるよね。
何処ぞのeclipse本の様に

819:名前は開発中のものです。
07/03/10 12:30:12 /HVMBhqB
>>817
どの本について?

>>818
最新版対応とかかかれていて1.1時代のコードの本大量にあるから困る
音を出すにはauファイルにコンバートしましょうとかみると泣けてくる
なんで10年前のままなんじゃぁと

820:名前は開発中のものです。
07/03/16 02:12:26 xob5GmNS
>>819
やさしいJava第二版なんて5.0対応とか言って触れてる言語仕様は前版(1.4.2)のままで5.0仕様には一切触れずにコードもなく加筆しただけだった気ガス・・・
ただ単にこの本のサンプルコードがそのまま5.0のコンパイラ通るだけ。

当たり前だのくryと言いたい所だが小一時間・・・


821:名前は開発中のものです。
07/03/21 20:05:26 PxlWoCAm
ちょっと質問があります。

[Javaでゲーム作りますが何か?]URLリンク(javagame.main.jp)
を見ながらコーディングしています。
[ボールを動かす]URLリンク(javagame.main.jp)
で挙動が理解できないことがあります。
サンプルどおりうつと、おもったどおりなんですが、クラス構成を変更すると、移動元のボールが削除されず、棒状態で描画されてしまいます。
ソースをミテモ理由が分からなかったのでコメントをもらえないでしょうか?

・変更後クラス構成
Sample.class
MoveBall.class
MainPanel.class

・実装
Sample -> main()があり、main()内ではMoveBallインスタンス、MoveBall.work()呼び出し の2つ
MoveBall -> サンプルとほぼ同じ、main()内のインスタンス化を削除、main()内の処理をwork()に変更
MainPanel -> サンプルと同じ

・環境
JDK1.5.0_11
Window Vista


822:名前は開発中のものです。
07/03/21 20:14:18 p5zCnQO1
ほぼおなじとかじゃわからん
ソースあっぷしてもらわんと

823:821
07/03/21 21:52:26 PxlWoCAm
ふじこ
自己解決しますた。
>>822スマソ、おっしゃるとおりでした。クラス構造はまったく関係ない箇所でした。

何がおこったのか簡単に書いておきます。

MainPanel(JPanelのサブクラス)内に、コンポーネントを描画するメソッドとしてpaintComponent()があるのですが、その中で
paintComponent(Grahics g) {
 super.paintComponent(g);
 //以下青いボールの描写が続く
}
と書く箇所で、以下のミスをしていました。
super.paintComponents(g);

本来JComponent.paintComponent()を呼び出すのを、Container.paintComponents()を呼び出してしまったのが原因でした。

#JComponent.paintComponent()とContainer.paintComponents()の違いは良く分からず
URLリンク(java.sun.com)

824:名前は開発中のものです。
07/03/21 22:02:54 p5zCnQO1
つーか、親のpaintComponent呼び出す必要はないと思うぞ
普通にfillしたらええ

825:821
07/03/21 23:10:05 PxlWoCAm
>>824わざわざ補足までありがとう。
しかし現状ではなぜ必要/不必要なのか、分かりません。
Java Tutorialに引き篭もってきます。λ............
URLリンク(java.sun.com)

826:名前は開発中のものです。
07/03/22 00:48:34 //UyzQId
Swingのソースコード読んで実装が何やってるか見た方が理解が早いと思うよ

827:名前は開発中のものです。
07/03/29 03:53:53 V9bhDi93
Java で高速(fps で管理される)ゲームを作ってますが、フルスクリーンを使うと速度が激遅になってしまいました。
自分で調べてもこれ以上わからなかったので、お力を貸して頂けないでしょうか?

単純に、Sun のチュートリアルのとおりに排他的にフルスクリーン化しました。
↓のようにゲームループを作って、アクティブレンダリングを行い、
もちろん bufferStrategy を使ってページフリッピングを行っています。

↓のを1秒間に実行できる回数が、ウィンドウモードに比べて
フルスクリーンだと激減します。(→800x600x32xUNKNOWN)

do {
update();
Graphics2D g = (Graphics2D)bs.getDrawGraphics();
rendering(g);
g.dispose();
if(!bs.contentsLost()) bs.show();
}

これが、αを使ったりすると、ウィンドウモードでは 40fps 出るのに対してフルスクリーンでは 3fps。
明らかにお前のやり方間違ってるということですよね。
rendering(g) をコメントアウトしたときでも、ウィンドウモードは 1000fps、
フルスクリーンで 60fps でした。この60という数字を見るとふと505さんの発言に関係している気がしたんですが、
調べてもわかりませんでした。ここを見れば?でも結構ですんで、よろしくお願いします。

828:名前は開発中のものです。
07/03/29 09:34:49 DOhi2zRK
そういえばフルスクリーンの時にDirectXかOpenGL使う指定したら描画速度上がるんだろうか?


829:名前は開発中のものです。
07/03/29 16:17:47 TdF2VMR1
まず前提条件としてウインドウモード時の色深度

あとJava2Dのアルファブレンドはソフトウェア描画なのでネイティブなVRAMにバッファが置かれると大幅に遅くなる

そもそもフルスクリーン時で、というか高FPS時にイベントベースでの描画はつかうものではないぞと

830:名前は開発中のものです。
07/03/29 17:47:03 QM1oZ8YS
javaのDirectX/OpenGLの使用はどちらかというとDesktop Javaの一環でフォントや図形の描画品質を上げる為に
それを使ってて描画速度を上げる為のものじゃないってイメージだったけど
それで合ってるって事かな?

831:827
07/03/29 18:09:59 V9bhDi93
ウィンドウモードは解像度 1024x768x32 の画面上に
800x600 のウィンドウを作ってます。フルスクリーンでは 800x600x32 にしました。
ウィンドウの初期化時にフラグでフルスクリーンとウィンドウモードを場合分けしてます。
要するに描画ルーチンはウィンドウモードでもフルスクリーンでも
同じゲームループ(上に描いたやつ)を使ってます。
αを使ったら激遅になるのはわかってますが、αを使ったときに
フルスクリーンでここまで遅いというのが納得いかなかっただけです。
このやり方ってイベントベースっていうんですかね…。
フルスクリーンにすると処理範囲も狭くなるし、排他的に画面全体を使うとなると
う~む、どう考えてもフルスクリーンの方が速いはずではないんですかね…。

一応、大枠はここのやり方を真似てるつもりです。
URLリンク(fivedots.coe.psu.ac.th)

832:名前は開発中のものです。
07/03/29 20:38:15 TdF2VMR1
>>830
あってない

833:名前は開発中のものです。
07/03/29 20:42:13 TdF2VMR1
>>831
フルスクリーン時描画してるのはVRAM
ウインドウ時描画しているのはメモリ内ビットマップ
あわせるのならまずメモリ内のバッファで描画をしてそれをVRAMへ転送とする

描画の仕方が大幅に違うのだから速度も大幅に違うのは当たり前

イベントベースってのはみまちがいだったようだ
updateというメソッドがあったのでな

834:名前は開発中のものです。
07/03/30 10:14:03 CxiJR9tX
単純な質問ですいません。

RPGを作っていて、
マップと自キャラを表示するところまでは
作ったのですが、NPCを表示させる
いい方法が思いつきません。

背景画像のように、固定ならいいのですが、
動き回るNPCをうまく表示できません。

効率のいい表示方法があれば教えてください。

いまは、

1.背景描画
2.自キャラ描画
3.表示範囲内にいるNPCを探し、描画

今は、この3の処理が無駄な動きになっている
気がします。


835:名前は開発中のものです。
07/03/30 14:54:44 QwdAmNT9
3. の処理を行ったとしても動きとは無関係だと思うけど。
とりあえず MVC でやってみると単純になるよ。

1. モデルを次の時間に進める (キャラ座標の計算など)

2. ビューがモデルの内容をまとめて描画 (キャラの座標は 1. で計算済み)

あと表示範囲内の判定はJVMも勝手にやってくれるので、必要になったら実装でいい。


836:名前は開発中のものです。
07/03/31 14:47:41 aOuaJNjw
そういうのって描画範囲に入ってないキャラも描画しちゃっていいんじゃない?
画面に表示されないから無駄かもしれないけど、マップのキャラクターが多くなってもそんなに重くはないんじゃ・・・

837:名前は開発中のものです。
07/03/31 15:21:06 bPcXSKJZ
実装依存だな

クリップ外に描画すること自体は重くはないのだが、
その前にテクスチャ座標とか計算して渡す処理だけははいるから
重くはならないというのは間違い

画面外かどうかの判定なんてスプライト描画処理で一括して扱うだろうからいれとけ
最初はまったく処理をしないラッパでいいから

838:名前は開発中のものです。
07/04/02 00:03:15 0q+4yudy
AGE

839:名前は開発中のものです。
07/04/02 11:01:35 M2CzSpdn
ありがとうございました。

画面外のキャラも、さほどの数にはならないので、
描画する方向で作成してみます。



840:831
07/04/03 01:04:07 Wawfbgtr
遅れながらレスくれた方ありがとうございます。
う~む、色々試してますがウィンドウで BufferStrategy 使った場合も
VRAM直…ではないんですかね…

505さんの
>フルスクリーン時は垂直同期取るのに対してウインドウモードは取らない
って何か関係してませんかね?そもそも垂直同期って言葉自体なじみがなかったんですが、
垂直同期を取ってるのでいくら処理が速くても bs.show でリフレッシュレート以上に
ならないようになってる、と考えるのは間違いですか?
それだとしてもα使って 3fps って明らかな処理落ちか…う~む…

841:名前は開発中のものです。
07/04/03 02:08:11 tJ3eBjgj
BufferStrategyでの同一API使ったアクセスが可能というだけで
VRAM直になるかはVM実装(つまり環境)依存

でも問題はなかろう?
Windowモードと同じようにいったんメモリ内で作ればいい
どういうゲーム作ろうとしているのかにもよるけど

あとは逆に積極的にハードウェアアクセラレーションを使うという方法もある
>>11のところでOpenGL対応してJava2D以上の表現が可能になったようだ
Java2Dはゲームで多用する加算合成がないしね

842:名前は開発中のものです。
07/04/03 11:37:06 QAPO4Fq8
>>11
これスゲーな

843:名前は開発中のものです。
07/04/03 16:29:50 Js4qFq6o
手軽そうだね
前見たときあまり内容無かった気がしたが地味に進めてるのね
今後に期待しとこ

844:名前は開発中のものです。
07/04/04 12:34:42 xNft8wzX
>>840
確かに遅すぎるようにも思うが、それだけの情報じゃ何とも言えない。
α使わないようにしてみたり、rendering(g)の中身を1行ずつコメントアウトしてみたりして原因をもっと追求してみたら?
フルスクリーン時にのみ毎回妙な処理してたりしないかい(毎回DisplayMode変更してたり…さすがにそれは無いか)
ともかく・どの部分で遅くなっているか・現象を再現できる最小限のコードはどんなか をもっと追求した方がいいと思うよ。

845:名前は開発中のものです。
07/04/05 23:12:06 IyGK/jzk
GTGEの日本語資料は"Javaでゲーム作りますが何か?"以外無いかのぉ。

使ってる奴居る?

846:名前は開発中のものです。
07/04/06 00:02:37 xOHyAwJg
Javaの場合あんまり泥臭いコード必要としてないので必要性が薄いだけでは?


847:840
07/04/06 21:28:03 /J9SjvCf
レス下さった方ありがとうございます。

rendering(g)の中身を1行ずつコメントアウトしてみたりってのは
やってるんですが、rendering の中身を空にすると今度は bs.show で
時間かかってたりして、どうにも思うように動いてくれないんですよね。
つまり、プログラムの動作速度をはかって原因を探るだけでは解決できず
そこで、ここで皆様の力を借りようという経緯です。
コードはどうあがいても結局 60fps になってるんですよね…。

BufferStrategy は実装依存、なんですね。
15歳から始めるJava~ではウィンドウのみのサンプルがあって
そこで「BufferStrategy はビデオメモリに直接書き込むので高速」と
断言してあったような気がしてそこは疑ってませんでしたが。
実装依存としてウィンドウモードと同じ方法を用いる、という方法は
そういえばまだ試してませんでしたね。一度試してみます。

848:名前は開発中のものです。
07/04/07 02:14:29 2RXqF7NF
847
だからメインメモリでの描画はどうなんだと

849:名前は開発中のものです。
07/04/07 07:28:23 Y1V3BpGY
BufferStrategyがVRAM使うのってsunの実装だと、DirectXかOpenGL使うときだけじゃなかったけ?



850:名前は開発中のものです。
07/04/07 08:23:33 2RXqF7NF
何のオプションも指定していないデフォがDirectXなんだが

851:名前は開発中のものです。
07/04/07 11:27:10 GIyVfDKh
DirectXはDirectXでも指定なしはDirectDraw。
指定するとD3D。javaでのOpenGLとD3Dの基本的な使い方は同じで
どっちも極力VRAMに置こうとする。

けどだからと言って早くなるわけじゃない。

852:名前は開発中のものです。
07/04/07 16:20:47 2RXqF7NF
アルファブレンドがどういう描画をしているか、ソフトウェア描画がどういう経路でメモリアクセスしているかがわかるなら
遅くなる原因はわかると思うぜ>>840

BufferStrategyそのものが問題じゃないんだよ
Java2Dでゲーム開発ならBufferStrategyはどんな状況においても必須だし

853:名前は開発中のものです。
07/04/09 09:45:56 uR3mQ2BL
スレチで悪いんだが「Javaでゲーム作りますが何か?」の掲示板書き込める?

IPAフォントのライセンス違反してるからライセンスのリンク貼ってやろうかと思ったらCGIに怒られた・・・。
不明な処理って何ざんす?

スレチスマソ。

854:名前は開発中のものです。
07/04/09 10:53:28 dS/RvBxG
再配布してるってことだな

あとそこのサイトのコードバグもちなのでそのままつかわないこと
もしくは参考にしないこと

855:名前は開発中のものです。
07/04/09 11:16:24 TJO4g1v+
再配布自体はOKのようだが?
配布方法に問題があるとか?

856:名前は開発中のものです。
07/04/10 03:26:17 ZXpjg5Ty
>>855
良く嫁。
URLリンク(www.grass-japan.org)

GRASS GIS / MapServer / PostGISのどれかに同梱される形でのみ再配布可能。

かつ、フォントがIPAフォントである事を明示し、上記ライセンスを配布物に同梱しなければならない。
更に同ライセンス条項3)。

つーか、IPAフォントの単体配布が出来るならわざわざスターオフィスのパッケージ版なんて買わね。

857:名前は開発中のものです。
07/04/10 03:49:48 t/2fHoZt
重要な事忘れてたがIPAフォントはGRASS GIS / MapServer / PostGISからの利用以外許されてないよ。
他ソフトウェアからの利用がライセンスに含まれてない。

自分とこで作ったソフトに使うためにわざわざ商用フォントベースで作ったんだから当然だが・・・。

んでIPAフォントの権利持ってんのはオークニーだから聞くならこっち。


858:名前は開発中のものです。
07/04/10 10:08:56 HEVeN1vj
【初心者】課題をクリアしていくスレ【講習会】
スレリンク(gamedev板)
>>655です。お時間のある方、もしよかったら
講師になっていただけませんでしょうか?

【初心者】スレを立てる前にココで質問を【Part14】
スレリンク(gamedev板)
ここの>>26の質問にも答えていただけると幸いです。

マルチをしてすみません。
お手数おかけして申し訳ありませんが
レスは該当スレにてお願いいたします。

859:名前は開発中のものです。
07/04/10 10:25:29 tXE5CmGv
すいません、質問です。

JAVAで最短経路探索(A*)を組みたいのですが、
よいサンプルがあれば、教えてください。

860:名前は開発中のものです。
07/04/10 10:33:35 E2YWJL/P
えーすたーのアルゴリズムがわかってるならそのままやればいいのでは?
まずgoogleなどで検索してみよう


861:名前は開発中のものです。
07/04/10 22:10:47 0Wd+5rPi
>>853
管理人なんですが忠告ありがとございます。
IPAフォントのライセンスよんだんですが「当該ソフトウェア」って自分のソフトウェアと勘違いしてました。
即刻他のフォントに入れ替えます。

862:名前は開発中のものです。
07/04/14 00:50:15 2lk0UE8X
超亀レス恥ずかし><!なんですが
>>815の ゲームプログラミング-アルゴリズムとフレームワーク-長久-勝
は内容的にはjdk1.4.2の時代に1.1でも動くようにと書かれているので現在からすると
古すぎる感は否めないのですが、自分はこれでリフレクションを覚えたりしたので
懐かしくてレスしてしまいます。

でもその後、雑誌などを読んだ限りではリフレクションはあまり推奨されてないんですよね。
保守性が落ちるとかで。趣味な自分はへろへろ無駄に使ったりしてますが。

863:名前は開発中のものです。
07/04/14 09:46:28 EazSdGuN
リフレクションはアプリが使うものではなくライブラリやフレームワークが情報を引き出したり設定したりするのに使うもの
アノテーションが使えるようになってからは必須事項だよ

864:名前は開発中のものです。
07/04/15 14:22:41 Do4UH/Bo
>>176
こっちできいてみれば?ちなみにタスクシステムを作るのは可能。っていうかタスクシステムはデータ構造とクラス設計の話だから言語に由来することはないです。

タスクシステム総合スレ
スレリンク(gamedev板)

865:名前は開発中のものです。
07/04/15 16:02:43 yPdKGk0j
いまさらタスクシステムの話されても。
オブジェクト指向が使えない時代のお話。


866:名前は開発中のものです。
07/04/15 21:33:34 JKlRxbBA
ですよねー

867:名前は開発中のものです。
07/04/15 22:29:58 gWanPSzj
誰一人として悪くはない。
この企画は…構造自体が不幸を孕んでいたのだ。

戦犯はいない。
理解できない、根源から違った存在がいただけだ。
誰にとっても。

本当なら決して出会うことのなかった、才能も、経験も、熱意も、人脈も、
何もかも違う人々に関わってしまった事自体がお互いに不幸だった。
つまり…関わった時点で無残な結末が予定されていたのだ。

今はもう…その不幸を呪い、やがて忘れる時を待つしかない。

868:名前は開発中のものです。
07/04/16 12:26:43 avbdJuoP
>>865
オブジェクト指向言語でタスクシステムが不要にはならないよ。むしろより簡潔に書ける。

マルチスレッドとかコンカレント関連のAPIのない時代でもあるまいし、というしてきなら、いいたいことはわかる。だがまちがっているけどね。

869:名前は開発中のものです。
07/04/16 12:35:17 uVwoDyO/
クマー。

870:名前は開発中のものです。
07/04/16 12:57:04 ZWSYWvOP
釣るならもっとそれっぽいことかいてよ

871:名前は開発中のものです。
07/04/22 11:10:51 QxABkYIn
drawImage(image, 0, 0, ★)
の★のところなんですが、パネルを渡してもnullを渡しても同じように描画できるんですが何か意味あるんでしょうか?

872:名前は開発中のものです。
07/04/22 12:01:41 OQsH7rKB
画像のロードに時間がかかるときとかに、
★にImageObserverを渡すと、ロードの完了を通知してもらえたりする。

873:名前は開発中のものです。
07/04/22 12:50:31 caMfTdAs
ゲームの場合、通常非同期でテクスチャロードすることはないから意味のない引数だと思っていい。
ネトゲだとしてもそのへんは自前でコントロールするわけで。

874:名前は開発中のものです。
07/04/26 09:04:29 LGVs5GvF
遅くなったけど㌧


875:名前は開発中のものです。
07/05/03 18:13:48 GHCrYaAw
誰か前スレ持ってる人いませんか?
保存しておいたと思ったけどなくしてしまったorz


876:名前は開発中のものです。
07/05/04 00:25:28 Z9OOsWLs
ほいdat
URLリンク(gamdev.org)

877:名前は開発中のものです。
07/05/04 08:24:01 2lM108GL
>>876
アップしていただけてうれしいんですがそれこのスレですorz

878:名前は開発中のものです。
07/05/04 14:31:17 Z9OOsWLs
今度こそ
URLリンク(gamdev.org)

879:名前は開発中のものです。
07/05/04 14:40:06 2lM108GL
>>878
ありがとございます。
おかげさまで見れました。

880:名前は開発中のものです。
07/05/05 00:18:32 E4gxwLZa
爆発のエフェクトを作りたいんですが、爆発させるときにTimerTaskオブジェクトを生成して起動、爆発が終わったらcancel()で破棄って方法でよいでしょうか?
何か大量に爆発させるときオブジェクトごとにTimerTask起動するのはあまりよくないような気がするんですがいい方法ないでしょうか?

881:名前は開発中のものです。
07/05/05 00:23:25 qNXdFV63
そもそも、ゲームPGでは余りスレッドを使わないんじゃない?

882:名前は開発中のものです。
07/05/05 00:37:49 Z2/Vlbj0
基本的にはオブジェクトごとにスレッドはやめとけ

関連性のないエフェクトだけ別スレッドというのはやってもいいけど(というか3Dはわりと普通気味)
そういうのはスレッドプールとか使うのが普通

こまめにON/OFFはとろいぞ

883:名前は開発中のものです。
07/05/05 07:46:38 E4gxwLZa
ありがとうございます。

結城さんのデザインパターン本のスレッド編にWorkerThreadの実装があったけどこれかな。
URLリンク(www.hyuki.com)

あとJakarta CommonsにThreadPoolっていうクラスがありました。
URLリンク(jakarta.jp)

調べてみます。

>>881
とはいってもスレッドプールも結局スレッドですよね。
スレッド使わずにアニメーションとかできるんでしょうか?


884:名前は開発中のものです。
07/05/05 10:37:03 Z2/Vlbj0
>>883
スレッドをかんちがいしてないか?
ゲームで処理単位でスレッドは使う必要はない
使う場合同期等ちゃんと理解してから出ないとダメ

スレッドプールは標準APIにはいってるんだからそれを使えばいい
これはこまめにスレッドを生成破棄しないからタイマータスクの生成+破棄とはまったく動きが違う

言っている意味がわからないならスレッドは使わないで下され

885:名前は開発中のものです。
07/05/05 14:36:33 S0VZ5lLo
>>883
普通にwhile文を使って、一こま毎計算して表示する。
スレッドは処理の種類によって必要なら使うと言う感じでは。
ある程度本格的なゲームPGの本とか、次の本辺りを読んでみれば分かると思う。
URLリンク(www.amazon.co.jp)
URLリンク(www.amazon.co.jp)

886:名前は開発中のものです。
07/05/05 20:16:15 2yfTJp2D
どうでもいいことだが、
>タイマータスクの生成+破棄

>タイガーマスクの生成+破棄
に見えた。

887:名前は開発中のものです。
07/05/05 21:13:20 LKYrIilR
タイガーマスクと聞いてなぜかアンパンマンの顔が浮かんだ。
アンパンマンの顔のライフサイクル想像すると笑えるw

888:名前は開発中のものです。
07/05/16 02:33:22 qUFCPdNa
sdljavaが結構いいと思うんだけど
このスレ的には評価はどう?

889:名前は開発中のものです。
07/05/16 11:33:01 EfvfG/mQ
それ開発とまってなかったっけ?
アクセラレーションもつかえないし、ネイティブのSDLもあんまりほめられたものじゃないけどね


890:名前は開発中のものです。
07/05/16 16:28:36 dKqdtDi9
sdlって俺だと動画表示くらいしか使わんなぁ。
動画ならJMFのVideoRenderer実装してるんで間に合ってる。
他はCDへのアクセスとジョイスティックだっけ?
javaゲーをCD・・・。

891:名前は開発中のものです。
07/05/25 00:14:02 Odp2f4Vl
graphicsクラスとかImageうんたらクラスとか描画関係のことだが、javaSE6(別に5.0でもよい1.4より新しい奴)でどうすればいいのかサンプル紹介しているページないかな
とりあえず、BufferStrategyとかが1.4で加わったのは記憶にあるのだが、それ以降描画関係一切追いかけてないのでどのAPI使うのが最新手法なのかよくわからん
その辺の解説とサンプル紹介しているページキボンヌ

892:名前は開発中のものです。
07/05/25 04:15:14 xzeMUWWG

SE5,6のJava2Dは内部実装が変わっただけで1.4以降から特に使い方が変わるようなAPIの変更はないよ。
強いていうならLCD向けアンチエイリアシングが強化されたのと、JOGLから描画パイプライン触れるようになったくらい。
アプリケーションプログラマには関係ないね。
だから1.4の事知ってりゃ、それが使える。


893:名前は開発中のものです。
07/05/25 10:07:11 gi7La1ao
確か、Java in the Boxにいろいろ記事がありましたよ
URLリンク(www.javainthebox.net)

それと、Java NIOは次の本が結構詳しい
Developing Games in Java
URLリンク(www.brackeen.com)
URLリンク(books.google.com)

894:名前は開発中のものです。
07/05/25 10:27:15 BH7EzlMX
JavaSE6のOpenGLパイプラインは不安定なのでデフォ動作は取りやめになったよ
おかげでSwing+JOGLが5.0までとおなじ遅い動作しかできん

895:名前は開発中のものです。
07/05/25 19:17:37 GvMFqj5n
win版のOpenGLまわりは全部VGAドライバ寄りの原因だからしかたない。
プロパティ与えて起動すると描画がめちゃくちゃだからな。
そもそもゲームはSwingと相性悪いからAWTで良いよ。

896:名前は開発中のものです。
07/05/25 21:01:58 M11kx4ro
MORPGとかネット対応とかになるとSwingコンポーネント使えないのは不利かと
ドライバの不具合ってほんの一部の話なら別にそのドライバが対応すればいいだけのこと

nVidia、IntelともにOpenGLを有効にしてもまともに動かないのだから原因は他にあるはず


897:名前は開発中のものです。
07/05/25 23:14:46 Odp2f4Vl
891です
レスさんくすです
参考にさせていただきます

それはそうと、今日15才からはじめるJavaゲーム製作だかなんだか言う本を軽く立ち読みしたのだが、
音楽とかタイマ関係まで一通りそろってそうでよさげだと思っている
ただ、心配なのが、ここで使ってるAPIて古い奴まじってたりしない?
わかる人、教えてくれ


898:名前は開発中のものです。
07/05/25 23:26:30 M11kx4ro
そこのは1.4だったかな
許容範囲

Javaのゲーム開発本は大量にあるが唯一実用となる書籍として有名なやつだよ
新目なのに1.1対応とか、やってることがひどいとか参考にならないのが多いからね

@ITとかも平気で嘘のせるからAPIマニュアルとソース読むしかないというのが悲しい

とりあえずその本で一通りわかるようになったら次はたぶんOpenGlとかやるレベルだから中級まではそれでいいと思う

899:名前は開発中のものです。
07/05/25 23:47:07 Odp2f4Vl
>>898
レスさんくす
土日勉強してみます

>そこのは1.4だったかな
>許容範囲
だよね
俺の会社(メーカー、ソフトハウスじゃないが、ソフトもそれなりに作ってる)もほとんど1.4しか使ってない
極たまに5.0のところあるが、6は使ってる部署0

900:名前は開発中のものです。
07/05/26 00:42:13 px/b9uk2
15さいからはじめる~は日本のjavaゲー本の中では良い本だよ。
あれの内容を完全に理解できたぜ!ってレベルなら一人でシコシコハードコーディングでもゲーム作れるんじゃないかと。

日本の企業が仕事で1.4系使ってるのは単について行けてないだけだよ。
エンドオブライフだからやめた方が良いんだけどね。5.0の新文法だけでも覚えた方が良い。
趣味グラマの間に使って覚えとくとか・・・。6.0は追う気がないならどうでもいい。

901:名前は開発中のものです。
07/05/26 01:00:42 3yf6+JCa
去年あたりから5.0は普及してるよ
ツールも対応したし、アプリ鯖もJ2SE5.0対応したしね

今年に入ってからアプリ鯖もJavaEE5対応したのが出始めてきたから加速すると思う
効率が別次元なので今のうちに覚えておくといいかと

個人のゲームなら1.4を選択する必要はないしJavaSE6一択かと
仕事だと6は今は検証中だと思う
update1が出る前はほんとひどいバグもちだったし

ただ標準でJAXB2.0やJAX-WS2.0はいったのが面白いし5.0のときはほとんど強化されなかったAPIに
かなり手が入っているのもポイントでびっくりするほど使いやすくなったよ

902:名前は開発中のものです。
07/05/26 03:14:19 E/o29az5
>>900
古いBroadVisionとか使ってる会社だと
今でも1.3onlyだな
つかうちもそうなんだが

903:名前は開発中のものです。
07/05/26 08:34:56 7uwRZyAG
1.3と6じゃVMすら別モンだよな。Swingがまだ屑だったころだしXML APIもろくに無かったころか。

904:名前は開発中のものです。
07/05/26 10:15:56 6pNAZ0zx
でもMACを視野に入れたゲームだと5.0は動かないよね?

905:名前は開発中のものです。
07/05/26 10:56:51 OQbVauRb
たとえば?

906:名前は開発中のものです。
07/05/26 11:08:04 J3LywcEw
>>904
6はだめだが5.0はあるぞ

907:名前は開発中のものです。
07/05/26 12:43:35 OQbVauRb
そういう話じゃないと思うぞ

908:名前は開発中のものです。
07/05/27 22:13:07 8JpcMLEY
15才の~で勉強しようと思ったが、近所の本屋で売り切れだ
ついでに俺の金も無い
てことで、節約してnetだけで勉強しようと思うのだが、Javaでゲーム作りますがなにか?はどうなんですか?
自分が軽く見たところ、基礎からしっかりやってくれているみたいだが、ダメダメなところとか、注意するところありますか?

909:名前は開発中のものです。
07/05/27 23:31:08 wTM4DUzU
本格的に開発しないのであれば通過点としてはそれなりにいいんじゃない?
目的がゲーム作成だけならライブラリ用意してすぐに開発に入ったほうがいいけど。

ただ、画像はImageIO使ってロードしたほうがいいとかバッファは現在のピクセルフォーマットとあわせるといいとか
Java2D細かい挙動が必要になったときがたぶんのってない。

まず>>908がゲーム開発自体はすでにしていてJavaでのやり方がわからないだけなのか
Javaはわかるがゲーム開発自体がわからないのか、どちらもわからないのかによってとるべき道は違うかな。

910:名前は開発中のものです。
07/05/28 00:08:25 kxuyYAly
>>909
Javaはそれなりにやってます(SE5.0、webアプリ開発)
会社の同僚と趣味でSE6勉強してます
最近勉強仲間がSE7だのクロージャだの言い出して、俺自身は最新テクノロジとかよりゲームの方が好きなので個人でゲーム勉強しようかと思ってます
ちなみに、グラフィック、swingは全く触ったことありません
学生時代awtすこし勉強したけど、それも研究室の新人研修だけで、忘れてしまいました
よろしく

911:名前は開発中のものです。
07/05/28 00:25:24 fdi5zjDi
ということはゲームの開発に関する知識だけがないのか
ならそのサイトで軽く覚えるといいかと

あとはJavaに関係なくゲームの作り方を教えてるサイトもみること
流れとかそういうのはかわらんから

基本的にタイマーや垂直同期によって一定頻度でのループをつくり、1フレームごとに処理をしていく
まず最初にキーなどの入力>その後ゲームの処理処理>出力

出力する際逐次表示されているVRAMへ描画していくと描画途中が見えてしまうので
オフスクリーンバッファという見えない領域へいったん描画、出力時にコピーまたはフリップ(フルスクリーン専用)となる

基本的にイベントを取るのはキーボードくらいなのでawtやSwingはそんなに深く知る必要はないよ

912:名前は開発中のものです。
07/05/28 00:34:07 XL3m6L+U
Javaの文法がわかっていてゲームを作るのが目的ならフレームワーク的になっている>>11をつかうのがいいかと。
本格的なSTGも作れるようだし。

自分でフレームワークを作りたいというのなら上記の細かい仕組みを知る必要になるが。

913:名前は開発中のものです。
07/05/28 01:10:28 kxuyYAly
レスどうもありがとう
ゲームは1日1時間てことで明日から1時間位づつゲーム勉強してみまつ
Javaでゲーム作りますが何か?のページ見てたらGTGEが面白そう
とりあえず、こいつの中身読んでみよっかな
なんか、やる気出てきたので週明けから暇であることを祈る
また、なにかあったらよろしく

914:名前は開発中のものです。
07/05/28 09:50:19 dR+mP3mE
俺も毎日一時間以上ゲームPGや勉強やることにしたよと会社から

915:名前は開発中のものです。
07/05/28 11:32:44 ahItnJp8
ゲームはモチベーションを上げるため、と割り切れば勉強のためにもいいとおもわれ。
殺風景な業務用のコンポーネントがならぶだけではなく、フレームの中をボールが飛び跳ねてアニメーションしてるとか
DBとの連携やゲームとの相性の悪くないORマッピングとか、各種デザインパターンとかものにはなるし。

WEBアプリのフレームワーク側ではなくドカタ側にまわってると技術力とモチベーション低下が避けられないからね。

916:名前は開発中のものです。
07/05/28 14:22:09 dR+mP3mE
まさにそんな感じ。
去年まで4年以上ミドルウェアを開発してて、
上司の退職をきっかけにずっと前に出した異動希望が発動して、
グラフや統計などを使う研究用Webアプリを開発することになって、
プログラミング的には難易度が下がった。
とはいえ計画通りだし、年内は勉強しながらMyライブラリを作る。
2年ほどで作りたいのはトバルみたいなの。

917:名前は開発中のものです。
07/05/28 21:47:29 9APdzwvN
トバルとはなつかしいな

918:名前は開発中のものです。
07/05/29 01:11:09 QU7Bv3WN
No.1だな

919:名前は開発中のものです。
07/05/30 00:26:54 9qP8n2n4
トバル2は面白かった

920:名前は開発中のものです。
07/05/30 02:01:02 JwW2N6l2
PSで格ゲーは邪道。SSでアーケードスティックプロ、それが俺のジャスティス!

921:名前は開発中のものです。
07/05/31 08:52:09 zC6v4guW
15才~、以外にお勧めの本もしくはwebある?
ゲーム製作本でなくても、描画とか同期とかキー入力とかゲームに関係あることが書いてある奴があれば教えて欲しい
レベルは基礎でも応用でもどっちでもいいです
あ、javaのAPIは無しね
よろぴこ

922:名前は開発中のものです。
07/05/31 11:46:26 ElLhOgmF
実際のところ標準APIの組み合わせで2Dゲームならだいたいことたりるから
APIマニュアル見ながらテストするのが一番わかりやすかったりする

Javaの命令がわからない、という人ならそれでわからない問題ってのはたしかなかったと思う

ゲームの作り方そのものがわからないならJavaとか言語以前の話

923:名前は開発中のものです。
07/06/02 12:45:52 ySjBjTJY
ようするに、15才~以外にまともな本もホームページも無いのね

924:名前は開発中のものです。
07/06/02 12:47:59 KQGH3f1A
ゲーム開発がわかる人=APIマニュアルだけでおけ
ということだろ

だからある程度のゲーム開発になるとまともな本がない
あとは開発者の減少だろうね
昔はベーマガとか大量にゲーム開発のための本があったわけで

実際同人の開発者もほとんどがその世代である30代以上だ

Javaに限らんのよ

925:名前は開発中のものです。
07/06/02 14:19:19 4zeBTZ5e
MIDPってはやってる?

926:名前は開発中のものです。
07/06/02 14:33:58 bNMRwVZE
MIDP汎用は日本じゃはやってない
やれることが少なすぎるから

ドコモが使ってないというのもあるかも

一応2.0からはやれることは増えたけど使いにくいかな

927:名前は開発中のものです。
07/06/03 11:38:31 foEaYR55
スプライトのアニメーション(イメージの切替)なんですが、スプライトクラスの中でTimerTaskを起動して表示するイメージ番号を切り替えるのって効率悪いですか?
定石としてはメインループで各スプライトに対して表示するイメージを切り替えるメソッドを呼ぶようにするんでしょうか?

928:名前は開発中のものです。
07/06/03 12:21:22 XU9gmanv
つまりメインループとキャラと完全な非同期ってことね
スプライト100個出したら100個のスレッドがたちあがるってことかな?

そうでないにしろ、表示されるタイミングとスプライトの時間管理とのずれが問題になるよね
たとえば1フレームごとに点滅表示させるような場合、それらが同期取れてないのでずっと表示されたり
ずっと消えたままになるよね

各種オブジェクトは内部でカウンタを持って1フレームごとに呼び出されるメソッドで+1していくのが基本だよ
メインループ側(フレームワーク側)とは切り離して独立して動けるようにね

そうすると単体テストが容易になったりするし、見るクラスが1つだけなのでバグもでなくなる
外部からのきっかけがほしい場合はオブザーバーパターンを使えば汎用的になってなおよろし
小規模であまり深く考えないのならpublicなメソッドでもいいと思うけど

929:名前は開発中のものです。
07/06/03 23:30:45 NMJr+FyS
それならフレームじゃなくて時計の時間にスプライトの状態を同期すれば
完全非同期でも問題ないの?

930:名前は開発中のものです。
07/06/03 23:35:39 qjYqK/Ln
タイマつかっても完全同期は無理。
スレッドの動く時間は保障されないし、逐次処理しても当たり前だが時間は常に動いている。
それと処理落ちとかした場合は?OSがリアルタイムでない時点でいくらでもあることだよ。


931:名前は開発中のものです。
07/06/04 01:03:47 LU4adZL7
モーション付モデルデータを表示するために、何か良いエンジンありますか?

932:名前は開発中のものです。
07/06/05 23:07:38 YHsxbudA
>>926
レスサンクス。
auのオープンアプリレイヤーに興味あったんだけどこれからなのかな。

933:名前は開発中のものです。
07/06/05 23:14:12 geU+8UYE
というか新しい機種しか対応してないし、ここはJavaSEの話がメイン

934:名前は開発中のものです。
07/06/06 21:05:44 WeNeu8ST
eclipseでjarファイル生成させたのにクリックしても起動しませんorz
何が問題なんでしょうか。
クリック時にエラーは出ません

935:名前は開発中のものです。
07/06/06 21:18:40 O774Z098
マニフェストファイル作った?
わからないのなら正直NetBeansのほうがいいと思うぞ
必要なライブラリもクラスパス自動登録されるようにしてくれるし

936:名前は開発中のものです。
07/06/06 21:46:27 /nuanp7M
ふむ
同意してみる
eclipseの方が好きなの、ちょっと玄人向けの気もする
何でもかんでも後からplugin追加だからな

その点、NetBeansは何もしなくてもある程度使える
個人的には何もしなくてもWebアプリのプロジェクトがサクサク作られたのが気に入った


しかし、疑問なのはゲーム製作にしてもそれ以外にしてもIDEの話になると、ほとんどの書籍がeclipse使うよな
NetBeansはなんか問題(著作権とか?)でもあるのかね

937:名前は開発中のものです。
07/06/06 21:53:54 O774Z098
NetBeansの使い方知らないやつが多いだけじゃね?

去年のJavaのIDE TOPはNetBeansが選ばれてる時点で流れに乗れない人たちと思われ。
あとEclipseはプラグイン入れるだけでページ数稼げる。これポイント。

938:名前は開発中のものです。
07/06/06 23:20:53 WeNeu8ST
>>935
マニフェストファイルは作ってます
必要なライブラリはありません
大学がeclipseなのでそれを使ってます-`)

939:名前は開発中のものです。
07/06/06 23:58:27 IfzalnNn
考えられるのは、
・マニフェストファイルがおかしい
・実行環境に問題がある
・そういうプログラムである
くらいか

マニフェストファイルをEclipseに生成させるようにしてJARを作成してみたら?
それで上手くいくようなら自作マニフェストファイルがおかしいって事になる

940:名前は開発中のものです。
07/06/07 13:02:37 vuPLnRCS
NetBeansのほうがお勧めというが、
プラグインを入れなくても、
リファクタリングとか、補完とかの機能がEclipseのほうが使いやすい。
必要としない人も多いから何とも言えないが。

まぁ、次期NetBenasで解消されるようだけど。
Swingが速くなったおかげで、重さも解消されたし。

最初からNetBeansを使ってるひとは、Eclipseのほうが便利な部分を知らなくて使っていくだろうし、
逆もそうだとおもうんだよね。

まぁ、初心者にはNetBeansが良いと思う。

941:名前は開発中のものです。
07/06/07 13:04:07 vuPLnRCS
う、下げ忘れた。ごめんなさい。

>>934
まずは、コマンドプロンプトで
java -jar ***.jar
で起動させてみて。

942:名前は開発中のものです。
07/06/07 16:59:15 5Qk7KRIL
>>940
JBuilderとかになれてるとEclipseのほうが使いにくいのだ
EclipseはCTRL+スペースばかりに機能が統合されていてすばやく撃ち込む場合使いにくいのだよ
NetBeansも最近CTRL+スペースに集中してきて悪化している

ユニットテストとかライブラリとかはNetBeansのほうが使いやすいね

EclipseでまともにGUI開発できないってのはまぁ致命的といえば致命的だが
ゲームだとせいぜいコントロールパネルくらいだからどうでもいいか

あ、ゲームだと問題となるのが最新のJDKが推奨されるけど、
Eclipseは最新のJDKが使えない可能性が高いのが問題となりやすいかも

943:名前は開発中のものです。
07/06/07 18:06:19 vuPLnRCS
>>942
なるほど。
JBuilderはほんとの初期しか使ってないから評価できないけど、
forループとかでイテレータ使うテンプレートが無かったのは覚えてる。
あと、sysoutとかで補完とかそういった細かい所は好みの問題だし、
慣れだからね。

確かにユニットテストはNetBeansのほうが良い。
Eclipseはわかってる人からすれば、なんてことはないけど
知らない人に説明するの面倒。
プロファイラも同じなんだよね。
Eclipseのプロファイラの重さはかなり致命的。TPTPとかもうね・・・・。

GUI開発に関しては、VEが一応ある。Matisse(NetBeansのGUIエディタ)も動く・・・・・・有料だけど。
コレが無料ならいいのだけどねぇ・・・・。
ただ、Matisseはソースは出力物であって、編集できない形だから俺はいまいち。
その点VEは編集しても頑張って再現してくれる。失敗も多いけどね。

俺の印象だと、
Eclipse 巨大な整理されていない道具箱
NetBeans 必要な道具だけが綺麗に整理されている道具箱

ある程度使えばどっちも生産性に差は無いと思う。
とくにゲーム制作に関しては。

944:名前は開発中のものです。
07/06/07 18:47:03 5Loz1nuS
>>941
java -jar ***.jarで起動させました
するとエラーが表示されました
eclipseには何も表示されなかったのに何故…
どうやらファイル入出力が拙いようでした

いろいろ弄って何とか解決できました
皆さんありがとうございました

945:名前は開発中のものです。
07/06/07 20:32:04 wcTYYNm5
ん?Eclipseでも実行させたらエラーちゃんとでてるよな?


946:名前は開発中のものです。
07/06/07 20:53:24 vuPLnRCS
Jarにまとめる前に実行するだろうから
やっぱり、コンソールに出力されるはずだがなぁ・・・・。

自動的にコンソールが前面に出てくる設定になってないとか。

947:名前は開発中のものです。
07/06/08 07:45:07 dU1vbfjk
>>943
>俺の印象だと、
>Eclipse 巨大な整理されていない道具箱
>NetBeans 必要な道具だけが綺麗に整理されている道具箱
激しく同意
しかし、最近NetBeansの勢いが増してきた気がする
6.0楽しみだ

Eclipseは最新の技術への対応が遅くなってきて無いか?
ただで使わせてもらってるのにえらそうに言うのもなんだが

ただ、個人的にはEclipseの方が好き
なぜなら、日本語のドキュメントが多いからw

948:943
07/06/08 11:19:22 uRAOQaxB
ちょっと補足。
>Eclipse 巨大な整理されていない道具箱
>NetBeans 必要な道具だけが綺麗に整理されている道具箱
NetBeansは必要な道具が無かった場合、かなり苦労を強いられる。(出来ないことはない)
Eclipseはほとんどの場合箱のなかを探し出せばそれを実現する道具(プラグイン)を誰かが作ってる。

俺もEclipseの方がすき。

長いこと使ってきて愛着があるってのもあるし、使えるプラグインが多いことも私にとっては重要。
Amaterasのプラグインとか無いとやっていけない。
それにNetBeansのとにかく簡単に!という流れに乗ってか、Callisto
という、
コレさえあれば大抵大丈夫っていうプラグインセットも出てきたから
NetBeansの勢いに負けずに頑張って欲しいなぁ。


Eclipseで一番危惧しているのはJavaが疎かになるんじゃないかなってこと。
PHPやC++、Rubyへの対応がニュースの目玉になるぐらいだから・・・。

ゲーム関係ないなw

949:名前は開発中のものです。
07/06/08 11:43:53 0pRpBrj+
NetBeans、この1年でのRuby対応すごすぎ

Ruby対応は今IDEでもっとも旬なものじゃないかな

950:名前は開発中のものです。
07/06/08 14:37:30 S8TOMltZ
>>928
遅くなったけどありがとうございます。

>>スプライト100個出したら100個のスレッドがたちあがるってことかな?
そうです。

結論としてはオブジェクトごとにTimerTask持つやり方でいいってことでしょうか?

951:名前は開発中のものです。
07/06/08 14:43:00 0pRpBrj+
皮肉をこめたあの文章でダメだと思わないのならやめたほうがいい

マルチスレッドでやるにしろスレッドプールと排他制御を理解してからね
タスク間での通信とか大丈夫に見えない

別スレッドでやるにしろ手軽なものじゃないよ
何も考えない場合依存性がないエフェクト関連でしかつかえん

952:名前は開発中のものです。
07/06/08 16:42:07 S8TOMltZ
キャラクターのアニメーションに使うだけなので他のオブジェクトと依存性はないかと・・・


953:名前は開発中のものです。
07/06/08 16:47:14 0pRpBrj+
で、スレッドが増えることによる弊害は考えないの?
各スレッドごとにスタックもつわけだし、綺麗なアニメーションも出来ないよ


954:名前は開発中のものです。
07/06/08 18:43:35 f1IK12WV
fillPolygonなんかで多角形を一色に塗る方法は分かったのですが、
ゲームなんかでよくあるように画像をはめ込むことはできませんでしょうか?

955:名前は開発中のものです。
07/06/08 18:46:08 0pRpBrj+
矩形ならJava2Dですぐ出来るんじゃね?

多角形が必要ならJOGL使ったほうがよさげ

956:名前は開発中のものです。
07/06/08 19:29:42 pznBE7uN
javaのゲームプログラミングを勉強したいんですけど、何かお勧めの本はありますか?

957:名前は開発中のものです。
07/06/08 20:40:58 f1IK12WV
>>955
ありがとうございました。ド素人なんでググるところから始めてみます。

958:名前は開発中のものです。
07/06/08 21:08:19 rLAdfwxn
>>956
ゲームじゃないプログラミングの経験はあるの?
ないならしばらくゲームを作るのは忘れて一般のJavaの入門書買って勉強した方がいい
ゲーム作りながら0から学ぼうとするのはかえって遠回りになるよ

959:名前は開発中のものです。
07/06/08 21:56:13 JbwzLCuD
>>948
一人称を統一してくれ。

960:名前は開発中のものです。
07/06/08 22:31:58 S8TOMltZ
>>953
それを>>927で聞きたかったんです。
やっぱりオブジェクトが増えると効率悪くなりますかね。
今のところ数十個ならちゃんと表示されてるんですが。
一般的にキャラクターのアニメーションとかエフェクトとかでもスレッドプールというのを使うんでしょうか?


961:名前は開発中のものです。
07/06/08 23:06:41 pPM/oaLv
>>958
普通のプログラミングも始めたばかりです


962:名前は開発中のものです。
07/06/08 23:42:07 0pRpBrj+
>>960
スレッドが増えるとメモリなどの効率が悪くなるし、排他制御での効率の問題も出やすい
マルチコアが普及してもこの数年じゃせいぜい同時に動けるのは4スレッド程度
ならば4スレッドつくっておいて毎フレームなげる
100個のオブジェクトがあった場合最初に4つなげて空きができるまで残りの96個は待っている状態になる

ただ、本当に並列動作が意図的にほしいのでないのならマルチスレッドはバグの原因になるから使わないほうがいい
TimerTaskが便利そうに見えるというのならそれはフレーム管理を理解していないだけ
書籍なども読んだりしてまずシングルスレッドで行うようにしよう

バックグラウンドで動かしたいスレッドなんて音楽や効果音などでたくさんあるんだし、必要になってから勉強しよう
並列処理を理解せずにTimerTaskを使うのは危険すぎる

963:名前は開発中のものです。
07/06/09 01:08:05 vu3KtdAq
>>960
いわゆる擬似タスクを使えばいいのでは?
スレッドは同期処理とかなにかと面倒。

964:名前は開発中のものです。
07/06/09 07:49:01 EZVk7j6P
疑似タスクとかフレーム管理とかJavaの本でお目にかかったことないんですがC++関係のゲームプログラミング本に書いてあるのでしょうか。
何かよい資料があれば紹介していただきたいんですが。

965:名前は開発中のものです。
07/06/09 08:32:30 vu3KtdAq
擬似タスクやフレーム管理はJAVAとはまったく関係のないゲームプログラム独特の話。

ウェブならここ。ただしCやアセンブラの時代の話なので概念だけ見るとよい。
URLリンク(www.hh.iij4u.or.jp)

と思ったら閉鎖してたので以下で見てみて。
URLリンク(web.archive.org)

ここもよいかも。
URLリンク(homepage3.nifty.com)

本ならこれ。C++で書かれてて結構新しい本なのでメモリまわりを工夫すれば参考になるんじゃないかな。
「シューティングゲーム プログラミング 松浦 健一郎 司 ゆき」
amazonで検索してくれ。

あと、以下は解説はないけど豊富なソースがある。
D言語で書かれてるので一番参考になるかもしれない(windows系のやつ)。
タスクはActorというクラスで管理している。
URLリンク(www.asahi-net.or.jp)

966:名前は開発中のものです。
07/06/09 08:59:52 bbYOCeLH
場合によってはデザパタ本よんだほうがいいかもしれん

967:名前は開発中のものです。
07/06/09 15:23:47 EZVk7j6P
>>965
JavaであるといいんですがやっぱりC++のほうがゲームプログラミングは充実してますね。
ありがとうございます。読んでみます。

968:名前は開発中のものです。
07/06/09 17:55:28 O4qCppAQ
別にObject指向わかっていればたいしたことはないと思うし、そういうゲームの基礎的な部分ってのは
みんなアセンブラやC,BASIC時代で終えてきた人ばかりだしね

今のほうが基礎的なこととか情報の入手に困る時代
Cでもサンプル少なすぎってわけさ

969:名前は開発中のものです。
07/06/09 19:01:59 Z0TKLmia
タスクシステム使った事ないけどワークメモリと関数ポインタもった構造体のリストを時間ベースで管理するってかんじ?
OOと合うの?普通に並列化したほうがいい気がする。


970:名前は開発中のものです。
07/06/09 19:45:16 zoMf1LX5
SFCの聖剣伝説のようなARPGを作るにあたって、MVCを考慮したシステム設計で悩んでいます。
ARPGを作成する上で参考になりそうなクラス図一覧やシーケンス図が記載されているような
参考書はあるのでしょうか?
JAVAで無い場合はそれ以外の言語でもいいのでよろしくです。

971:名前は開発中のものです。
07/06/09 22:47:46 O4qCppAQ
普通に作れば?
どこがひっかかるの?

972:名前は開発中のものです。
07/06/10 18:04:49 x8dp2pdS
このスレの少し前でも話題になってるようなのですが
15歳からはじめる~の本の応用編PDFのパスワード誰か知りませんか?
出版社のサポートに問い合わせても何の返事も来なくて・・・

973:名前は開発中のものです。
07/06/10 18:16:16 /a81qKx+
>>972
あれの葉書の締め切りとかってもう終わってる?
今から葉書出しても遅いかにゃ?

974:名前は開発中のものです。
07/06/10 20:35:19 StHZ6Btk
>>813見ると送ってももらえなさそうだね

975:名前は開発中のものです。
07/06/10 23:14:46 /a81qKx+
>>974
本当だ
葉書見たら、無料で送付してくれる期間も過ぎてたわ


976:名前は開発中のものです。
07/06/12 22:48:39 54Piwy01
graphic関係で質問
BufferStrategyてJPanelで使えないの?
今、JFrameでWindow作って、その上にJPanel乗せて、JPanelにゲーム画面を描画しようと考えているのだが、間違ってるのか?
直接JFrameに描くほうが正しいのか?
それとも何か解決法があるのか?
すまんが、よろしこ

977:名前は開発中のものです。
07/06/13 00:22:14 xt1HCEaa
ドキュメントちゃんとよんだ?
1行目に書いてあると思うけど。

978:名前は開発中のものです。
07/06/13 00:48:27 DenGxzXk
>>977
もちろん読んでる(BufferStrategyのことだよね)
そこで、WindowsとCanvas上の~~~とあるのはわかるのだが、JPanelやそのほかのコンポーネントでも描画すること多いから、普通に考えるとJPanel上でも使用する方法があるのでは無いかと思って質問した
結論としてはやっぱり、無理なの?
とすると、JFrame上にべた書きか



979:名前は開発中のものです。
07/06/13 00:54:59 xt1HCEaa
ようはライトウエイトコンポーネントじゃないんだよ
WindowとCanvasってのことはね
JComponentなんてかいてないでしょ?

980:名前は開発中のものです。
07/06/22 02:15:12 26NocAGI
ゲーム作ってみたいがどれダウンロードすればいいか分からない

981:名前は開発中のものです。
07/06/22 10:24:46 GQikK9pU
開発環境込みでダウンロードしたいなら
URLリンク(java.sun.com)

昔ながらのエディタでいろいろいじるなら
URLリンク(www.javadrive.jp)
コレ参考にしたらよいよ。


最新レス表示
レスジャンプ
類似スレ一覧
スレッドの検索
話題のニュース
おまかせリスト
オプション
しおりを挟む
スレッドに書込
スレッドの一覧
暇つぶし2ch