スレタイはアプレットとの対比的な意味と考えてください。
Javaでのゲーム開発は賛否ありますが、国外では割と盛んになってきているように思います。
裏を返せば日本語だけでは情報が得辛い状況であり、寂しく開発してる人が多いのでは・・・。
関連スレ
JAVAアプリでゲーム
http://toro.2ch.net/test/read.cgi/gamedev/1033926010/
参考になりそうなサイト
・どのイメージタイプを使うべき?
http://weblogs.java.net/blog/chet/archive/2004/08/toolkitbuffered.html
・弱点と言われる?ベクタグラフィックス関連の改善
http://docs.oracle.com/javase/1.5.0/docs/guide/2d/flags.html
・大量のソースコードを公開して下さっている国内サイト
http://aidiary.hatenablog.com/entry/20040918/1251373370
・Java 2D games tutorial
http://zetcode.com/tutorials/javagamestutorial/
・出入りが最も盛んな?フォーラム
http://www.java-gaming.org/index.php
・スプライトシートの切り方等(国内)
http://sky.geocities.jp/kmaedam/java2/java2.htm
動画
3D Game Programming tutorial
・http://www.youtube.com/watch?v=iH1xpfOBN6M
Javaで作るスタンドアローンゲーム
■ このスレッドは過去ログ倉庫に格納されています
1名前は開発中のものです。
2012/12/27(木) 16:04:18.62ID:rl+qGRHn178名前は開発中のものです。
2013/03/10(日) 22:04:44.96ID:pLC1ThRb javaでRPGをつくりたいのだが、画像の素材は、どこかにかありませんかな
gif,pngの32x32の画像がいい
unityってゲームつくりには役に立つ?
gif,pngの32x32の画像がいい
unityってゲームつくりには役に立つ?
179名前は開発中のものです。
2013/03/10(日) 23:16:48.90ID:G1JW1DEQ そうかもしれないし、そうじゃないかもしれない。
180名前は開発中のものです。
2013/03/10(日) 23:19:48.97ID:nHCM+efj ツクール素材でもググってみれば
181名前は開発中のものです。
2013/03/13(水) 21:25:47.68ID:XNwjXgJc javaをやっていると体にわるいな
過労死、鬱病、倒れそうだ
過労死、鬱病、倒れそうだ
182名前は開発中のものです。
2013/03/13(水) 22:20:25.22ID:WmJDWgdc javaに関する本を何冊持っていますか?
Javaの本高くて困ります
今の時代amazonがあるから助かっているけどそれでも本代はかさむ
このデフレ時代、値段が下がらなかったのは本と税金、社会保障費ですかね
Javaの本高くて困ります
今の時代amazonがあるから助かっているけどそれでも本代はかさむ
このデフレ時代、値段が下がらなかったのは本と税金、社会保障費ですかね
183名前は開発中のものです。
2013/03/13(水) 22:45:21.50ID:NdWAfqh4 良い本知ってるがこれでは教える気にならんな
184名前は開発中のものです。
2013/03/14(木) 01:08:10.88ID:nocQ9en/ >>182
とりあえず三冊かな
とりあえず三冊かな
185名前は開発中のものです。
2013/03/14(木) 01:50:02.10ID:yH7ud9UQ ほとんどネットで十分だからな。
結城のデザインパターンとか役にたたないし、
パーフェクトJavaとサーブレット関連、アンドロイド関連で合計3冊あれば良いだろう。
結城のデザインパターンとか役にたたないし、
パーフェクトJavaとサーブレット関連、アンドロイド関連で合計3冊あれば良いだろう。
186名前は開発中のものです。
2013/03/24(日) 02:38:51.86ID:ua68AVRh ゲームはC++がメイン?
JAVAはサーバーに使われるのがメインですか?
JAVAはサーバーに使われるのがメインですか?
187名前は開発中のものです。
2013/03/24(日) 04:27:20.54ID:crOzGDtU そうかもしれないし、そうじゃないかもしれない。
188名前は開発中のものです。
2013/03/24(日) 07:28:35.65ID:dL5F+tAI 初めJavaでゲーム作るのが難しく感じたけど今やC++よりやりやすく感じる俺は。
やっぱC++はGUIが面白くないしわざわざWINAPI弄ろうという気にもならないしモチベ下がる
あとクラスに分けてちゃんと作っていこうとするとJavaのほうが管理しやすいから好きだ
やっぱC++はGUIが面白くないしわざわざWINAPI弄ろうという気にもならないしモチベ下がる
あとクラスに分けてちゃんと作っていこうとするとJavaのほうが管理しやすいから好きだ
189名前は開発中のものです。
2013/03/24(日) 21:13:37.97ID:wYx6jnbT >>188
それってJavaが良いわけじゃなくて、Swingとかの
GUIライブラリとか良いってだけじゃん
C++だってクロスプラットフォームのGUIライブラリはあるだろ?
この部分は別にJavaならではって感じがしない
それってJavaが良いわけじゃなくて、Swingとかの
GUIライブラリとか良いってだけじゃん
C++だってクロスプラットフォームのGUIライブラリはあるだろ?
この部分は別にJavaならではって感じがしない
190名前は開発中のものです。
2013/03/25(月) 07:26:50.10ID:Qbfd/Wlz191名前は開発中のものです。
2013/03/25(月) 22:48:08.00ID:+DXzcTUj マインクラフトみたいなゲームを作りたい。2Dで。
ttps://s3.amazonaws.com/ld48/ld22/index.html
今、プレイヤーとマップは一応出来ている。
プレイヤーに攻撃値を持たせて、壊せるオブジェクト(敵も含める)に耐久値を設定する。
耐久値が0になったら決まったアイテムを落とす。
仮にオブジェがいっぱいあったとして、毎回一個ずつ確認していくのは何か変だ。
こんなゲームを作るときはどうしてます?
ttps://s3.amazonaws.com/ld48/ld22/index.html
今、プレイヤーとマップは一応出来ている。
プレイヤーに攻撃値を持たせて、壊せるオブジェクト(敵も含める)に耐久値を設定する。
耐久値が0になったら決まったアイテムを落とす。
仮にオブジェがいっぱいあったとして、毎回一個ずつ確認していくのは何か変だ。
こんなゲームを作るときはどうしてます?
192名前は開発中のものです。
2013/03/25(月) 23:28:51.88ID:7w1M9Wru 何を確認すんの?
193名前は開発中のものです。
2013/03/25(月) 23:33:00.13ID:e+5SoecM kdツリーとかRツリーとかオクツリーとかBSPとかそのへんじゃない
194名前は開発中のものです。
2013/03/26(火) 02:48:42.95ID:IUgsCEv1 超巨大な一枚マップを8x8分割とかして、各区画オブジェクトがそこにいる
全ての人物などの参照をもっていれば良い。
それでプレイヤーのいる区画以外の全てのオブジェクトを無視できる。
全ての人物などの参照をもっていれば良い。
それでプレイヤーのいる区画以外の全てのオブジェクトを無視できる。
195名前は開発中のものです。
2013/03/26(火) 06:29:02.73ID:CLcgDKur 二分岐探索や二分ヒープ木はhaskellですこし触ったことがある程度。
色々な木を勉強します。
>> 194
もう少し詳しく教えてもらえないでしょうか?
マップを分割することによってオブジェクトの状態検査の数が減るー>メモリ節約?
もしくは、画面に映っているヤツら(プレイヤーからの距離計算で出す)
だけ判定に渡す。<-結局全てのモノを判定しているからボツ?
色々な木を勉強します。
>> 194
もう少し詳しく教えてもらえないでしょうか?
マップを分割することによってオブジェクトの状態検査の数が減るー>メモリ節約?
もしくは、画面に映っているヤツら(プレイヤーからの距離計算で出す)
だけ判定に渡す。<-結局全てのモノを判定しているからボツ?
196名前は開発中のものです。
2013/03/26(火) 10:09:24.68ID:l0lOFTp+197名前は開発中のものです。
2013/03/26(火) 14:17:30.58ID:IUgsCEv1 >>195
あなたの文章がおかしくて推測に苦労しますが、
例えば巨大マップ上に数万のキャラクターがいて、
forループで全部更新するのが重いという話でしょう?
画面外の、それまた遠くにいるようなのが完全に停止していても良いとか、
ゲームの内容しだいで条件もかわるわけで、なんともいえませんなー。
あなたの文章がおかしくて推測に苦労しますが、
例えば巨大マップ上に数万のキャラクターがいて、
forループで全部更新するのが重いという話でしょう?
画面外の、それまた遠くにいるようなのが完全に停止していても良いとか、
ゲームの内容しだいで条件もかわるわけで、なんともいえませんなー。
198名前は開発中のものです。
2013/03/27(水) 07:28:58.94ID:f6Hx9aPx そうです。
ま〜マインクラフトやゼルダの伝説時空の章などは画面外では完全に停止していると思います。
それで、
敵やオブジェクトが画面内に入った時だけ動くだとうと推測しているノですが。
ま〜マインクラフトやゼルダの伝説時空の章などは画面外では完全に停止していると思います。
それで、
敵やオブジェクトが画面内に入った時だけ動くだとうと推測しているノですが。
199名前は開発中のものです。
2013/03/27(水) 19:51:56.53ID:4U1a8RUn マップが1000万x1000万だとして、それを1万x1万エリアに分割すると、1エリアの大きさは1000x1000になる。
それでプレイヤーがいる1エリア内(1000x1000)だけを更新するとすれば次のような形になるはず。
class GameMap {
Area[][] area2D = ...;
}
class Area {
final Point index;// (GameMap.area2D[index.x][index.y] == this)
List<Enemy> enemyList; // エリア内にいるモンスター
List<Item> itemList; // エリア内にいるアイテム
}
Player {
Area area = GameMap.area2D[0][0];
}
class GameScene {
void onUpdate(){
Player player = ApplicationScope.getPlayer();
Area area = player.area;
// プレイヤーのいるエリアを更新する
for(Enemy e : area.enemyList){ ... }
// 例えばプレイヤーがエリア内で西側にいる場合、プレイヤーのいるエリアからひとつ西側にあるエリアも更新する
if(...) {
Area west = GameMap.area2D[area.index.x-1][area.index.y];
for(Enemy e : west.enemyList){ ... }
}
}
}
それでプレイヤーがいる1エリア内(1000x1000)だけを更新するとすれば次のような形になるはず。
class GameMap {
Area[][] area2D = ...;
}
class Area {
final Point index;// (GameMap.area2D[index.x][index.y] == this)
List<Enemy> enemyList; // エリア内にいるモンスター
List<Item> itemList; // エリア内にいるアイテム
}
Player {
Area area = GameMap.area2D[0][0];
}
class GameScene {
void onUpdate(){
Player player = ApplicationScope.getPlayer();
Area area = player.area;
// プレイヤーのいるエリアを更新する
for(Enemy e : area.enemyList){ ... }
// 例えばプレイヤーがエリア内で西側にいる場合、プレイヤーのいるエリアからひとつ西側にあるエリアも更新する
if(...) {
Area west = GameMap.area2D[area.index.x-1][area.index.y];
for(Enemy e : west.enemyList){ ... }
}
}
}
200名前は開発中のものです。
2013/03/27(水) 21:37:10.40ID:f6Hx9aPx おお。すごい!
こんなに丁寧に書いていただきありがとうございます。
これだと、quadtreeを使わなくて済みそうかな?
よし、これで頑張ってみようと思います。
こんなに丁寧に書いていただきありがとうございます。
これだと、quadtreeを使わなくて済みそうかな?
よし、これで頑張ってみようと思います。
201名前は開発中のものです。
2013/03/29(金) 14:13:20.69ID:ygLK74i7 ゲームボーイの”くにおくん”の様に攻撃ボタンを押した時だけ
キャラの横(キャラの向き)に攻撃画像が表示される。
そしてもし敵がその範囲内であれば敵がダメージを受けるような事をしたいです。
インベーダーの様に弾に攻撃オブジェをいっぱい最初に作って画面外に置いて、
攻撃が呼ばれるたびにそれを取り出す方法ぐらいしか分からないです。
本来?はどうやればいいのでしょうか?
キャラの横(キャラの向き)に攻撃画像が表示される。
そしてもし敵がその範囲内であれば敵がダメージを受けるような事をしたいです。
インベーダーの様に弾に攻撃オブジェをいっぱい最初に作って画面外に置いて、
攻撃が呼ばれるたびにそれを取り出す方法ぐらいしか分からないです。
本来?はどうやればいいのでしょうか?
202名前は開発中のものです。
2013/03/30(土) 22:57:51.86ID:ecRAb5Av >>200の人だろうか。まあがんばれよ。
203名前は開発中のものです。
2013/03/31(日) 08:56:54.87ID:C9rWy5ii 自分はまだ199で教えてもらったのを勉強してるところですが.
は〜、早くマインクラフトやゼルダみたいなの作りたい。
は〜、早くマインクラフトやゼルダみたいなの作りたい。
204名前は開発中のものです。
2013/04/01(月) 10:34:18.32ID:kEB/FLx8 Java3Dってなんでこんなに人気ないの・・・
205名前は開発中のものです。
2013/04/01(月) 17:27:30.15ID:rGhu5lL8 みんなjavaの基礎文法を習得するだけで疲れるじゃないの?
3DってopenGL,unityがあるからじゃないのか?
3DってopenGL,unityがあるからじゃないのか?
206名前は開発中のものです。
2013/04/01(月) 19:25:16.71ID:VcD7kLeu >>204 本気で3Dで色々したいとJavaで頑張る理由が無くて、
むしろJavaで作るのはいろんなデメリットを請け負うから。
3Dだと、いろんな事したくなるとJVMじゃなくてネイティブの方のライブラリを叩きに行く必要があるから、
結局JavaよりもC++なりなんなりの方がずっと素直なんだよ。
そのうえ、結果として、Javaなのに移植性が低くなるし、さらに悪い事にそのくらいの移植性だったら、
C++とかの方がいいライブラリがあったりして、自前で頑張る必要ないし。
ここまでしても、結局の所ゲームだったら素直に対象OSなり固定して、其れに特化したのをC++で作ったほうが性能も生かせる。
さらに今じゃ、C#とかあるんで、選択肢的にJavaは宗教上の理由でもなければ選ぶ利点ないでしょ・・・。
まぁ、単純にJavaなら簡単そうで入ってきた人達が、
3Dをやろうとした途端、とんでもない壁にぶつかって、
その中でやる気のある人はC++なりに行き、そうで無い人はやめた。
って感じがするけどね。
むしろJavaで作るのはいろんなデメリットを請け負うから。
3Dだと、いろんな事したくなるとJVMじゃなくてネイティブの方のライブラリを叩きに行く必要があるから、
結局JavaよりもC++なりなんなりの方がずっと素直なんだよ。
そのうえ、結果として、Javaなのに移植性が低くなるし、さらに悪い事にそのくらいの移植性だったら、
C++とかの方がいいライブラリがあったりして、自前で頑張る必要ないし。
ここまでしても、結局の所ゲームだったら素直に対象OSなり固定して、其れに特化したのをC++で作ったほうが性能も生かせる。
さらに今じゃ、C#とかあるんで、選択肢的にJavaは宗教上の理由でもなければ選ぶ利点ないでしょ・・・。
まぁ、単純にJavaなら簡単そうで入ってきた人達が、
3Dをやろうとした途端、とんでもない壁にぶつかって、
その中でやる気のある人はC++なりに行き、そうで無い人はやめた。
って感じがするけどね。
207名前は開発中のものです。
2013/04/01(月) 20:31:04.88ID:8P8EUzuA 脇からだけど2Dもどき程度にJava3DやOpenGL使おうって場合はどうかな。
208名前は開発中のものです。
2013/04/01(月) 22:04:45.67ID:/CRE6+rF C#でSlimDXとかやってる人も少ないと思う。
Java3DやJOGLよりLWJGLのほうが海外だと主流みたいだよ。
英語がダメで日本語情報源にしがみつきたいならUnityが良いだろう。
Java3DやJOGLよりLWJGLのほうが海外だと主流みたいだよ。
英語がダメで日本語情報源にしがみつきたいならUnityが良いだろう。
209名前は開発中のものです。
2013/04/02(火) 07:16:54.12ID:aeIJC38X lwjgl+slick2dが楽で良い
210名前は開発中のものです。
2013/04/02(火) 09:56:30.01ID:NVgqGr2P >>205-209
なるほどありがとう
なるほどありがとう
211名前は開発中のものです。
2013/04/15(月) 19:17:38.68ID:UO+MIpzy212名前は開発中のものです。
2013/04/15(月) 20:07:38.56ID:OCp/UaRz lwjgl+slick2dほんとに英語しか資料がないからハードルめちゃ高い
日本語の情報なんか個人が作ったブログみたいなの頼りにするしかないもんな
書籍とかいいのあったら教えてほしいわ(日本語の)
日本語の情報なんか個人が作ったブログみたいなの頼りにするしかないもんな
書籍とかいいのあったら教えてほしいわ(日本語の)
213名前は開発中のものです。
2013/04/15(月) 21:18:59.55ID:81X1iHjQ 少なくとも書籍があるんなら見つけてると思うぞ。
ちょいと気になったんだけどJOGL、Java3D、lwjgl、slick2D、遊ぶ側の導入が楽なのはどれ?
全部楽だよってなら気にする必要はないけど地味に重要な気がする。
ちょいと気になったんだけどJOGL、Java3D、lwjgl、slick2D、遊ぶ側の導入が楽なのはどれ?
全部楽だよってなら気にする必要はないけど地味に重要な気がする。
214名前は開発中のものです。
2013/04/15(月) 22:12:25.73ID:OxLvLhMT 遊ぶ側ならJVMさえインスコしてあればどれも同じじゃねーの
215名前は開発中のものです。
2013/04/16(火) 14:57:09.19ID:kYWnrLY4 slick2Dはlwjglのラッパーだからlwjgl同梱必須だよ
アプレットで動かさなければどれも同じ
アプレットで動かさなければどれも同じ
216名前は開発中のものです。
2013/04/16(火) 18:28:14.08ID:cWQohAwT もしかしてJVM+配布側の配慮で全部OKなのか。
217名前は開発中のものです。
2013/06/04(火) 20:52:20.90ID:4z/LrXQA 質問があります。よくゲームフィールドを定義するのに
private int[][] map = new [12][24];
のような二次元配列を用意し、
二つのfor文の中で
switch(map[j][i]) {
private int[][] map = new [12][24];
のような二次元配列を用意し、
二つのfor文の中で
switch(map[j][i]) {
218名前は開発中のものです。
2013/06/04(火) 22:50:24.24ID:h/v7VZKU }
219名前は開発中のものです。
2013/06/05(水) 00:24:25.51ID:JVViz8+I おい
220名前は開発中のものです。
2013/06/05(水) 02:25:23.16ID:iKNZD4WR 質問
MouseMostionListenerのmouseDragged(MouseEvent e)に関して、
e.getX(), e.getY()で得られる値はどうやらドラッグ開始した地点の座標?
故にドラッグ中マウス移動しててもカレントのマウス座標が得られなくて困った
加えてドラッグ中はmouseMove(MouseEvent e)メソッドのほうのそれらも座標が更新されない(当然?)
e.getXOnScreen()なるメソッドはドラッグ中も更新されるのだけれど、スクリーン基準の座標はどうも扱いづらいしバグを生みそうでできれば避けたい
何か良い方法ないですかね?
MouseMostionListenerのmouseDragged(MouseEvent e)に関して、
e.getX(), e.getY()で得られる値はどうやらドラッグ開始した地点の座標?
故にドラッグ中マウス移動しててもカレントのマウス座標が得られなくて困った
加えてドラッグ中はmouseMove(MouseEvent e)メソッドのほうのそれらも座標が更新されない(当然?)
e.getXOnScreen()なるメソッドはドラッグ中も更新されるのだけれど、スクリーン基準の座標はどうも扱いづらいしバグを生みそうでできれば避けたい
何か良い方法ないですかね?
221220
2013/06/09(日) 16:03:16.49ID:k71SnmVJ Swingがシングルスレッドなのが原因かもしれない
ドラッグ中は処理が止まって離すときにそれぞれ更新される?
素直に自前でスレッド用意することにします
ドラッグ中は処理が止まって離すときにそれぞれ更新される?
素直に自前でスレッド用意することにします
222176
2013/06/28(金) 12:42:09.96ID:U3hHRtQl! うおぉ〜漸く球がキャラの向いている方へ発射されるようになった。
長かった。
長かった。
223名前は開発中のものです。
2013/07/05(金) NY:AN:NY.ANID:p077YvOc ボンバーマンの爆弾のアルゴリズムってどうすればわかりやすいですかね
爆弾を置くのはボンバーマンだから、ボタン押したときに
ボンバーマンが爆弾クラスをnewする設計でいいのかな
すると、Factoryパターン?
そんなことするより所持可能な最大ボム数(8だっけ?)を、
どのキャラも初めからnewしてリスト登録しておくべきか
・爆弾が時間に左右されること
・爆発の連鎖があること
・後から表示された爆発が先に爆発する可能性があること
この辺りがゲームプログラミング初心者の自分には難しいです
爆弾を置くのはボンバーマンだから、ボタン押したときに
ボンバーマンが爆弾クラスをnewする設計でいいのかな
すると、Factoryパターン?
そんなことするより所持可能な最大ボム数(8だっけ?)を、
どのキャラも初めからnewしてリスト登録しておくべきか
・爆弾が時間に左右されること
・爆発の連鎖があること
・後から表示された爆発が先に爆発する可能性があること
この辺りがゲームプログラミング初心者の自分には難しいです
224名前は開発中のものです。
2013/07/05(金) NY:AN:NY.ANID:RaygrmWM 最初はメインプログラムに全て詰め込んで後々再利用出来そうな処理だけ他クラスで良いんじゃね
225名前は開発中のものです。
2013/07/11(木) NY:AN:NY.ANID:YrFP7L1n >>130のサイトのマリオカート凄いな
自分の自作ゲームは数十倍もサイズがでかいのに何百倍もクオリティが低くて少し凹む
自分の自作ゲームは数十倍もサイズがでかいのに何百倍もクオリティが低くて少し凹む
226名前は開発中のものです。
2013/07/14(日) NY:AN:NY.ANID:xl2VX9QI かいじょかいじょ
227名前は開発中のものです。
2013/07/14(日) NY:AN:NY.ANID:xl2VX9QI おお〜やっと規制解除された!
228名前は開発中のものです。
2013/08/06(火) NY:AN:NY.ANID:tPkwuHiT oggをツクールみたいにループ再生したいんだけど、コメントをどうやって取得すればいいのかわからん
229名前は開発中のものです。
2013/08/16(金) NY:AN:NY.ANID:w8E+MSLB よかったじゃん
230名前は開発中のものです。
2013/08/24(土) NY:AN:NY.ANID:+f+kX8MI jnlp を置いたディレクトリの絶対パスが日本語文字を含んでいたら動作しなかった
なんてこった。配布するとき困る
なんてこった。配布するとき困る
231名前は開発中のものです。
2013/09/14(土) 14:10:40.99ID:cy1XSJ6p drawImage とかで指定する ImageObserver って何の意味がありますか?
自分いつも null にしてます。というか this とか指定すると変になりました
自分いつも null にしてます。というか this とか指定すると変になりました
232名前は開発中のものです。
2013/09/14(土) 15:16:45.85ID:cy1XSJ6p AffineTransform で混乱する…
「座標系」を変換するのか、「座標」を変換するのか
右手系なのか、左手系なのか
どうもはっきりしない
「座標系」を変換するのか、「座標」を変換するのか
右手系なのか、左手系なのか
どうもはっきりしない
233名前は開発中のものです。
2013/09/14(土) 15:38:41.06ID:zONL1qkf 通常nullだってどっかで読んだ
多分非同期読み込みとかに使うんじゃない
多分非同期読み込みとかに使うんじゃない
234名前は開発中のものです。
2013/09/14(土) 18:11:37.03ID:cy1XSJ6p >>233
サンクス。null で良かったか
サンクス。null で良かったか
235名前は開発中のものです。
2013/09/14(土) 19:31:47.44ID:GBbBS2U3 Image をネットワークから読み込んでいる場合、まだダウンロードが完了しておらず、画像を表示できない場合がある
そのような場合に ImageObserver を指定しておくと、読み込みが完了したタイミングを知ることができる
そのタイミングで、例えば、読み込み完了した画像を改めて表示し直すことができる
闇雲に this を指定すれば何か役に立つというわけではない
そのような場合に ImageObserver を指定しておくと、読み込みが完了したタイミングを知ることができる
そのタイミングで、例えば、読み込み完了した画像を改めて表示し直すことができる
闇雲に this を指定すれば何か役に立つというわけではない
236名前は開発中のものです。
2013/09/14(土) 22:22:34.81ID:cy1XSJ6p237名前は開発中のものです。
2013/09/15(日) 20:30:00.65ID:cXwe4017 GCが動いてゲームループがトマトになる現象を防げるか…?
オプション: -XX:MaxGCPauseMillis=200
Sets a target value for desired maximum pause time. The default value is 200 milliseconds.
参照:
http://www.oracle.com/technetwork/articles/java/g1gc-1984535.html
オプション: -XX:MaxGCPauseMillis=200
Sets a target value for desired maximum pause time. The default value is 200 milliseconds.
参照:
http://www.oracle.com/technetwork/articles/java/g1gc-1984535.html
238名前は開発中のものです。
2013/09/19(木) 14:57:32.91ID:teJIpav3 .classファイルをバイナリエディタで見ると、先頭に
cafe babe
っていうマジックナンバーが見える。凝ってるな
cafe babe
っていうマジックナンバーが見える。凝ってるな
239名前は開発中のものです。
2013/09/27(金) 00:44:08.10ID:FOeLnzNv240名前は開発中のものです。
2013/09/28(土) 02:14:26.45ID:1G2ugWm1 javaがコーヒーブランド、cafeはコーヒー、+babeって説が一般的だけど諸説あるな。
babeってマジックナンバーは昔はたまに使ってたし。
babeってマジックナンバーは昔はたまに使ってたし。
241名前は開発中のものです。
2013/09/29(日) 17:08:46.52ID:kgbSHSbg javaでゲームって「now loading」のどさくさで(full)GC強制したくならない?
242名前は開発中のものです。
2013/10/09(水) 22:56:30.33ID:JeIpUTuA ざっとぐぐったらfullGCが呼ばれる処理を呼びだすことで間接的に可能っぽいねぇ
ここスタンドアローンってスレタイにあるけど
gcjに関する情報とかないでしょうか?
ゲームでgcj使ってる情報が少なくて、ライブラリ関係をどう扱えば良いのかがわからない・・・
特にライセンスがなんともよくわからない
ここスタンドアローンってスレタイにあるけど
gcjに関する情報とかないでしょうか?
ゲームでgcj使ってる情報が少なくて、ライブラリ関係をどう扱えば良いのかがわからない・・・
特にライセンスがなんともよくわからない
243名前は開発中のものです。
2013/10/10(木) 01:21:00.33ID:rWd2dlNb >>242
ライセンスはクラスパス例外のないGPLだから成果物もGPLになる。
ライブラリのリンクは元がnativeだとgcjが対応してない部分はリンクに失敗する。
これだけじゃん。いまでもwin用にはクロスコンパイルが必要かは知らん。
それよりgcjがAOTコンパイルしたバイナリよりjavaのJITコンパイルの方が早いからゲームには使いどころないと思うよ。
ライセンスはクラスパス例外のないGPLだから成果物もGPLになる。
ライブラリのリンクは元がnativeだとgcjが対応してない部分はリンクに失敗する。
これだけじゃん。いまでもwin用にはクロスコンパイルが必要かは知らん。
それよりgcjがAOTコンパイルしたバイナリよりjavaのJITコンパイルの方が早いからゲームには使いどころないと思うよ。
244名前は開発中のものです。
2013/10/24(木) 17:20:16.75ID:BIU10uO4 >>243
亀だけどありがとう、JITってそこまで進化してたんですね
亀だけどありがとう、JITってそこまで進化してたんですね
245名前は開発中のものです。
2013/10/24(木) 23:21:24.86ID:HkVOqNBP javaのJITコンパイラはキャッシュミスして脱最適化しても次の直近のタイミングで
別の最適化されてまたキャッシュされたりするしコンパイル時間かけてでも効率重視だから結構速いよ。
GCとかヒープのデカさが超ネックになってるから全体ではチューニングせんとパフォーマンスでないけど。
別の最適化されてまたキャッシュされたりするしコンパイル時間かけてでも効率重視だから結構速いよ。
GCとかヒープのデカさが超ネックになってるから全体ではチューニングせんとパフォーマンスでないけど。
246名前は開発中のものです。
2013/11/02(土) 21:57:26.98ID:wzULkq5O Javaっておいしい?
247名前は開発中のものです。
2013/11/03(日) 08:19:18.45ID:h3H0javF 初恋の味
248名前は開発中のものです。
2013/12/08(日) 20:51:14.66ID:K3VE5nXT249名前は開発中のものです。
2013/12/08(日) 20:52:04.42ID:K3VE5nXT あげ
250名前は開発中のものです。
2013/12/21(土) 23:50:19.82ID:iQvUwIgS Slickライブラリでゲームを作ってますが、
どこか参考になるページなどありますか?
ライブラリやyoutubeのチュートリアルを見て実際に動かしていますが、
使い方がイマイチわかりません。
どこか参考になるページなどありますか?
ライブラリやyoutubeのチュートリアルを見て実際に動かしていますが、
使い方がイマイチわかりません。
251名前は開発中のものです。
2013/12/23(月) 02:52:57.10ID:o56P3+7D サンプルコードが入ってるだろ
javadocとそれで分からないことだったら外人に聞いたほうが早いよ
javadocとそれで分からないことだったら外人に聞いたほうが早いよ
252名前は開発中のものです。
2013/12/26(木) 00:14:49.70ID:dQLQT8i8 >>206
JOGLでゲーム作ろうとしている俺涙目
JOGLでゲーム作ろうとしている俺涙目
253名前は開発中のものです。
2013/12/26(木) 00:33:50.91ID:Vr4Op8xr >>252
Minecraftでもやって自信出せ
Javaでも十分3Dゲームは作れるよ
ただ、やっぱりJavaでゲームっていうのはPC向けオンリーになっちゃうけどな
だけど任天堂とかPS、XboxがJavaVMのせてくれたら最強言語はJavaになると思うけどね俺は
Minecraftでもやって自信出せ
Javaでも十分3Dゲームは作れるよ
ただ、やっぱりJavaでゲームっていうのはPC向けオンリーになっちゃうけどな
だけど任天堂とかPS、XboxがJavaVMのせてくれたら最強言語はJavaになると思うけどね俺は
254名前は開発中のものです。
2013/12/26(木) 02:49:04.09ID:ERqude5/ 2Dゲーム製作の勉強がてらにJavaでゲーム作ってるけど
CPUがAMDのE-300で非力マシンなのに60フレームで640*480をヌルヌル描画出来て凄いわ。
これだけパフォーマンスあれば80〜90年代の2Dアーケード程度のゲームは
企画力とゲームデザイン能力があれば楽勝で作れそうだ。
ちなみに今のところゲーム用フレームワークは使わずに自力で擬似スプライトとか
衝突判定機能を作ってる。
ゲームパッドはフリーウェアさんが作った物で普通に使えてる。
とりあえずJavaで1本完成したらPlayStationMobileかiPadとかに移植しようと思う。
CPUがAMDのE-300で非力マシンなのに60フレームで640*480をヌルヌル描画出来て凄いわ。
これだけパフォーマンスあれば80〜90年代の2Dアーケード程度のゲームは
企画力とゲームデザイン能力があれば楽勝で作れそうだ。
ちなみに今のところゲーム用フレームワークは使わずに自力で擬似スプライトとか
衝突判定機能を作ってる。
ゲームパッドはフリーウェアさんが作った物で普通に使えてる。
とりあえずJavaで1本完成したらPlayStationMobileかiPadとかに移植しようと思う。
255名前は開発中のものです。
2013/12/26(木) 02:54:26.64ID:dQLQT8i8256名前は開発中のものです。
2013/12/26(木) 17:13:59.78ID:fCfxjEwL Swingはキーボードのボタン全部取れないのが嫌だわ
なんかいい方法ある?
なんかいい方法ある?
257名前は開発中のものです。
2013/12/26(木) 20:09:22.25ID:IHbxv94i なんでみんなSwing使うんだ
AWTだけじゃいかんの?
AWTだけじゃいかんの?
258名前は開発中のものです。
2013/12/26(木) 20:18:57.03ID:yA5nEDHu259名前は開発中のものです。
2013/12/26(木) 21:00:03.90ID:fCfxjEwL >>258
>パッド
たしかslickが内部で使ってるDirectInputのラッパー
row_input(だっけ)を使うかもっと高水準のライブラリを拾って来たいところ。
>AWT/Swing
ネイティブって普通はJNAで実装してるのかって意味になると思うが
エスパーするとDirect3D/OpenGLだよね?
Direct3D/OpenGLでは三角ポリゴンのテクスチャしか描画できない。
なのにJava/Graphics2Dで自由に図形描いたりできるということは
ソフトウェアレンダリングしてるから。
だから同じようにDirect3Dを内部で使っても
例えばDXライブラリとかより圧倒的に遅いんじゃないかな。
>パッド
たしかslickが内部で使ってるDirectInputのラッパー
row_input(だっけ)を使うかもっと高水準のライブラリを拾って来たいところ。
>AWT/Swing
ネイティブって普通はJNAで実装してるのかって意味になると思うが
エスパーするとDirect3D/OpenGLだよね?
Direct3D/OpenGLでは三角ポリゴンのテクスチャしか描画できない。
なのにJava/Graphics2Dで自由に図形描いたりできるということは
ソフトウェアレンダリングしてるから。
だから同じようにDirect3Dを内部で使っても
例えばDXライブラリとかより圧倒的に遅いんじゃないかな。
260名前は開発中のものです。
2013/12/26(木) 21:08:06.74ID:cBobrvWL クリックして進めるゲームはGUI使うもんだよね?
でもGUI途中で追加したりするのが難しいからマウスの反応拾ってやるべきなのかなあ
でもGUI途中で追加したりするのが難しいからマウスの反応拾ってやるべきなのかなあ
261名前は開発中のものです。
2013/12/26(木) 22:15:54.82ID:fCfxjEwL 例えばslickのフォーラムで見かけた話題だと、
「slickとswing GUIを組み合わせられるのか」という質問に対して
「簡単にできるけどswingの遅い描画と歩調を合わせてOpenGLが描画するから
OpenGLの速度がでなくなる。非推奨だよ」という回答があった。
一応slickにはOpenGLを使った自作ボタンを作る仕組みがあるのだが
JScrollPaneのOpenGL版などは用意されておらず、UI作るのは面倒。
そういったことがあるから、俺は結局swingだけでしょぼいゲーム作ってる。
「slickとswing GUIを組み合わせられるのか」という質問に対して
「簡単にできるけどswingの遅い描画と歩調を合わせてOpenGLが描画するから
OpenGLの速度がでなくなる。非推奨だよ」という回答があった。
一応slickにはOpenGLを使った自作ボタンを作る仕組みがあるのだが
JScrollPaneのOpenGL版などは用意されておらず、UI作るのは面倒。
そういったことがあるから、俺は結局swingだけでしょぼいゲーム作ってる。
262名前は開発中のものです。
2013/12/26(木) 23:44:15.36ID:Ct7GHZvi263名前は開発中のものです。
2013/12/27(金) 00:42:06.83ID:xQKugg9x そういや、JOGL使ってるとウインドウサイズを激しく動かした時とかにinitが呼ばれてしまうんだが、
そういうときってVRAMが初期化されるんだろうか。
VBO登録しなおしはともかくとして、シェーダーのコンパイルとかもやり直しになるのはけっこうストレスになるなあ…
そういうときってVRAMが初期化されるんだろうか。
VBO登録しなおしはともかくとして、シェーダーのコンパイルとかもやり直しになるのはけっこうストレスになるなあ…
264名前は開発中のものです。
2013/12/27(金) 02:02:34.89ID:RcX+Zbl3 なにそれDirect3D9/OpenGLでいうデバイスロストなら
フルスクリーン・ウィンドウモードの変更で起きるかもしれんが
Javaのせいじゃないぞ。
フルスクリーン・ウィンドウモードの変更で起きるかもしれんが
Javaのせいじゃないぞ。
265名前は開発中のものです。
2013/12/27(金) 05:17:41.48ID:P+1BALO6 >>258
ゲームパッドは
ttp://www.ayamenet.com/app/index.html
の人が作られたJInputというのを利用してますが
サンプルもあるので簡単に組み込めてイベント取得も簡単でした。
今日の作業でフルスクリーンで動かした時に処理に余裕があるのに
画面のコマ落ちが酷かったのが疑問だったけど、
DisplayModeのリフレッシュレートをDisplayMode.REFRESH_RATE_UNKNOWN
にしてたのが悪かったようだ、60にしたら
ヌルヌル動く様になった。
ゲームパッドは
ttp://www.ayamenet.com/app/index.html
の人が作られたJInputというのを利用してますが
サンプルもあるので簡単に組み込めてイベント取得も簡単でした。
今日の作業でフルスクリーンで動かした時に処理に余裕があるのに
画面のコマ落ちが酷かったのが疑問だったけど、
DisplayModeのリフレッシュレートをDisplayMode.REFRESH_RATE_UNKNOWN
にしてたのが悪かったようだ、60にしたら
ヌルヌル動く様になった。
267名前は開発中のものです。
2013/12/27(金) 17:00:30.44ID:iL78j3sI JInputって同名の海外のもあるよね
そっちはWindows以外にも対応してる
そっちはWindows以外にも対応してる
268名前は開発中のものです。
2013/12/28(土) 14:10:21.89ID:os0Do0OO269名前は開発中のものです。
2014/01/01(水) 00:57:35.76ID:bSKouUWX Javaは実用性が高くてフリーのネイティブコンパイラがあると相当に使いやすくなるんだけどね。
GCJだとまだ完成度に難があるし、完成度が結構高いExcelsiorJETは、ホビープログラマが個人で買うような値段じゃない。
GCJだとまだ完成度に難があるし、完成度が結構高いExcelsiorJETは、ホビープログラマが個人で買うような値段じゃない。
270名前は開発中のものです。
2014/01/01(水) 22:00:44.61ID:bSKouUWX ん、ノートPCのIntel HDG4000だと、GLSLでウィンドウの大きさが変わったreshape()の時に
VRAMが破壊されているにも関わらずinit()を呼んでくれないみたい。
IntelはOpenGL対応が弱いと言われてるけど、これはOpenGL対応の問題なのかGLSLとの相性なのか良く分からんな…
VRAMが破壊されているにも関わらずinit()を呼んでくれないみたい。
IntelはOpenGL対応が弱いと言われてるけど、これはOpenGL対応の問題なのかGLSLとの相性なのか良く分からんな…
271名前は開発中のものです。
2014/01/01(水) 23:33:21.62ID:TDYNLr8C 直にOpenGL書いてる?
SlickとかEasyWayで適当にウィンドウとスプライト貼って試してみたら?
それでOpenGLの使い方が間違っているのかハードウェアやランタイムの問題か
わかるでしょ。
http://www.jroller.com/bantunes/entry/java_game_engines_and_frameworks
SlickとかEasyWayで適当にウィンドウとスプライト貼って試してみたら?
それでOpenGLの使い方が間違っているのかハードウェアやランタイムの問題か
わかるでしょ。
http://www.jroller.com/bantunes/entry/java_game_engines_and_frameworks
272名前は開発中のものです。
2014/01/01(水) 23:52:05.83ID:bSKouUWX >>271
昔GL2で書いたコードを動かしたら普通に動いたので、GL3以降を使うと問題があるっぽい様子…
というかシェーダー関係なのかなあ…
自宅のGF560では問題なく動いてたコードなんで、ちょっと悩んでる。
帰省中に最近のOpenGLを勉強しようと思ったら、思わぬところでよく分からん事象に遭遇した。
昔GL2で書いたコードを動かしたら普通に動いたので、GL3以降を使うと問題があるっぽい様子…
というかシェーダー関係なのかなあ…
自宅のGF560では問題なく動いてたコードなんで、ちょっと悩んでる。
帰省中に最近のOpenGLを勉強しようと思ったら、思わぬところでよく分からん事象に遭遇した。
273名前は開発中のものです。
2014/01/03(金) 23:20:28.78ID:1Q3FtKvn そもそもopenglのポーティングは何使ってんの?
274270
2014/01/04(土) 00:05:52.26ID:ZD/ROmwt275名前は開発中のものです。
2014/01/04(土) 01:52:37.37ID:4Kus4sgx 関係有るかわからないけどJOGLはバージョン変わるたびに激変してるからwebの情報は古いよ。
自分で変更点追うしかない。
自分で変更点追うしかない。
276270
2014/01/04(土) 22:43:55.31ID:ZD/ROmwt 原因が分かったので報告。
VAOを使って描画した後、
glBindVertexArray(0)
を呼んでバインドを外してなかった。
GPUによって、それでも動作する場合と動作がおかしくなってしまう場合があるみたい。
VAOを使って描画した後、
glBindVertexArray(0)
を呼んでバインドを外してなかった。
GPUによって、それでも動作する場合と動作がおかしくなってしまう場合があるみたい。
277名前は開発中のものです。
2014/01/05(日) 17:57:44.52ID:Mpn6RVWq オブジェクト化されたOpenGL APIの規格ができるとゲーム作りなんかは随分楽になりそうだが、
そういうのはもっと上位のフレームワークでやれってスタンスなんだろうな
そういうのはもっと上位のフレームワークでやれってスタンスなんだろうな
■ このスレッドは過去ログ倉庫に格納されています
ニュース
- 【速報】トランプ大統領、中国の習近平国家主席を「国賓」として招待することに ★3 [ニョキニョキ★]
- 【速報】トランプ大統領、中国の習近平国家主席を「国賓」として招待することに ★4 [ニョキニョキ★]
- 日本と中国を結ぶ12航空路線で全便欠航 中国人に最も人気の海外旅行先は日本から韓国に ★2 [ぐれ★]
- 【東京・足立の車暴走】赤信号無視か 危険運転致死傷疑いも視野に捜査 逮捕された職業不詳の男性(37)は精神疾患で通院歴も ★3 [ぐれ★]
- 防衛費増額「賛成」62・8% 「反対」32・2%を大きく上回る 賛成「18~29歳で8割」世代差あらわ 産経FNN合同世論調査 ★3 [尺アジ★]
- 【テレビ】鈴木福&あのちゃんW主演 テレ東で押見修造氏の漫画『惡の華』実写ドラマ化決定! 累計325万部を突破した伝説的漫画 [冬月記者★]
- 【実況】博衣こよりのえちえち朝こよ🧪★2
- 【実況】博衣こよりのえちえち朝こよ🧪
- 【悲報】小野田紀美さん、宇宙人みたいな服を着てしまう…また、そのことを突っ込まれブチ切れ中www [856698234]
- 【悲報】セブンイレブンの納豆巻きの値段、限界突破wwwwwwwwwwwwwwwwww [977261419]
- 🏡
- お前らっていつもここにいるよな
