Javaゲーム作成総合スレ
■ このスレッドは過去ログ倉庫に格納されています
0001名前は開発中のものです。
2008/10/28(火) 18:23:40ID:2CMNNHdH2Dのスレはありましたが、総合スレがなかったので立てました。
2D,3DどっちでもOKで、グラフィックス、アルゴリズム、お勧めサイト等、内容も自由です。
0554名前は開発中のものです。
2010/02/27(土) 09:03:22ID:tyywBe4SGoogleAndroidアプリ作成part2
http://pc12.2ch.net/test/read.cgi/tech/1253197333/
ゲ製板には無いね。
まあiPhoneスレも過疎ってるし需要が無いんじゃない?
0555名前は開発中のものです。
2010/02/27(土) 12:01:11ID:3XLimM0dこれから何をすればいいんだろ?
0556名前は開発中のものです。
2010/02/27(土) 13:18:28ID:tyywBe4Sそれによって次に何をすべきかが変わってくるので。
0557名前は開発中のものです。
2010/02/27(土) 13:33:04ID:XM9i9EyXとりえあず、作りたいものを具体的に考えてみて、
こことかで http://javagame.skr.jp/
近そうなものや、役立ちそうな機能を探してみては?
そこのサイト、実行できる jar の中にソースコードあったと思うし、
簡単なやつを eclipse 上で動かしてみるとか。
0558名前は開発中のものです。
2010/02/27(土) 13:56:26ID:I97vF7We>>557のサイトで紹介されてる本をアマゾンのレビューで見てみたら
微妙な評価だし。
0559名前は開発中のものです。
2010/02/27(土) 14:12:19ID:sXZ2vpwQgoogle book searchでlimited previewくらいできるだろ。
0560名前は開発中のものです。
2010/02/27(土) 17:15:15ID:lw1I8SRqまずはキャラクターをカーソルキーで動かしてみてはどうだろう
>>558
参考書籍みてみたが確かにあんまりよくないのが多いね
言語自体がはじめてなのかゲームプログラミング自体が始めてなのか
どっちもはじめてだと多少厄介だが、目標を高くしないなら大丈夫か
EclipseよりNetBeansのほうがライブラリへのクラスパス設定された
実行可能jarが自動で作られるので楽な気もするが
しかしみんなやさしいな
0561名前は開発中のものです。
2010/02/27(土) 18:32:56ID:HySRugFqhttp://www10.ocn.ne.jp/~shinod/game/java/Baller0.00016.zip
俺の場合は3Dゲームを作りたかったので,JOGLをインストールするところから始めたなぁ.
0562名前は開発中のものです。
2010/02/27(土) 18:52:42ID:6MkUCZcn"だけ"といってもネットで情報収集はしたけど参考書の類は特に使ってない
基礎さえ身につけば応用で何でも作れるんじゃないかと
0563名前は開発中のものです。
2010/02/28(日) 02:12:26ID:dzeS6sZNJDK 1.5 -> 1.6 の流れでかなり早くなったはず。
ほどほどの2Dゲームなら十分だと思うよ
0564名前は開発中のものです。
2010/02/28(日) 17:08:33ID:YamdAbFz0565名前は開発中のものです。
2010/02/28(日) 17:27:40ID:1xNPxTI/せっかくのご好意なので、返信
>>557
最初に色々と読んでみた
ドラクエクローンはゲームループから入力処理、描画まで色々と参考になりそうだね
>>560
Javaはちょっと使ってる
でも、大きなソフトウェアの一部分を言われるままに作成してるので、わけわかめ
Webアプリだったので、Swingとかキーボードやマウスの入力処理は初体験
ゲームプログラミングはもちろん初めて
まあ、コツコツやってみるよ
NetBeansは面白そうだけど、eclipseが主流ならそっちを使いたいな
NetBeansの方が明らかにゲーム製作に向いているなら考えるけど
>>563
いいこと聞いた
ここ見ると色々なフレームワークがあるみたいだけど、勉強めんどうなんだよね
JDKの機能だけでそれなりのものが作れるなら、俺の作りたいのは大戦略とか信長の野望みたいなゲームなので問題ないかな
0566名前は開発中のものです。
2010/02/28(日) 20:01:54ID:9UtHy1EC1.5ののdrawImageが遅いっといっても初心者向けでまずそれが問題になるレベルではないだろう
ハードウェアアクセラレーションが効く描画が少ないってだけだ
遅いDXライブラリとかでも普通に使われてるよね
むしろJava2Dはαブレンディングが弱いほうが致命的
>>565
そういったタイプのゲームなら1.3以上なら問題なし
使い慣れてるIDEでかまわないよ
NetBeansはダブルクリックで実行可能なJarが作りやすいというだけ
ただ環境設定画面とかSLGならメイン画面以外のウインドウの描画等はSwingつかったほうがいいかな
環境設定等の定型的な画面ならNetBeansが圧倒的に有利という話にはなるが
必要になったときでいいと思う
0567名前は開発中のものです。
2010/02/28(日) 20:38:39ID:bA//nrm1αブレンディングが弱いってよく言われるけど
それって誰かが自前で重ね合わせルーチンとか
書けばいいだけのことじゃなくって?
0568名前は開発中のものです。
2010/02/28(日) 20:46:02ID:9UtHy1ECただし、ハードウェアアクセラレーションは効かないからアクション系はきついんだ
VolatileImageはVRAM側へ配置するので(というかJavaSE6から積極的にVRAM使う)
ソフト描画との相性は最悪
というわけでほとんどの人はOpenGLへいく
0569名前は開発中のものです。
2010/03/01(月) 01:52:26ID:D+/GcsWx-Dsun.java2d.translaccel
か
-Dsun.java2d.ddscale
でおk
0570名前は開発中のものです。
2010/03/01(月) 02:42:29ID:VHqqtoLd画像のスクリーン合成(1-(1-src)(1-dst))はゲームのエフェクトで良く使うけど、Java2Dでは使えない。
自前で処理を書いても、遅すぎて使い物にならない。他のライブラリに頼るしかない。
この話題>>150-200あたりでも出たな
0571名前は開発中のものです。
2010/03/01(月) 07:27:10ID:W0xt/zd5何かイメージと根本的に違う様な気がします・・・
0572名前は開発中のものです。
2010/03/02(火) 23:07:42ID:Ex3WWwU30573名前は開発中のものです。
2010/03/02(火) 23:13:38ID:hmyMCdfxjava3dの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デバイス系を利用することを
絶対に勧める。というかそれ以外で動きの多いゲームを作るのは
不可能だぞ。
0574名前は開発中のものです。
2010/03/02(火) 23:43:45ID:keRp0vK6一番の問題は>>570だけかな。
速度に関しては今のJava2DはDirect3DやOpenGLでアクセラレーションがきいている。
ただし、VMの実装次第だし、どこがきくのかといったドキュメントは無いはず。
Java2Dはアクセラレーションの効きかたを意識しないで使えるのが利点ではあるが
ゲームだとそうはいっていられないのが厳しいところ。
ただ、2Dゲーなら速度的にはブレンディングの種類が少ないこと以外では問題にはならないね。
「必ず」というのはいいすぎで、不可能ではないよ。
ただしJavaSE6 update10以上必須ね。
これより前だと回転拡大縮小系はアクセラレーションきかないから、いっきに処理速度が1/100とかになる。
通常のJavaの実行速度も大幅に上がってるしアプレットでもJNLPかけるようになったので
update10未満使う理由はないのだけれども。Vistaの不具合回避したらすごいよいものになったというのが笑える。
0575名前は開発中のものです。
2010/03/03(水) 00:23:02ID:Ft2QLlFC0576名前は開発中のものです。
2010/03/03(水) 01:15:37ID:4e2irmLH0577名前は開発中のものです。
2010/03/03(水) 02:48:16ID:bM8RSZ0BOpenJDKのパッケージがあるlinuxの適当なコミュニティにも上がってるぞ。
毎度のこと量があるのにスレに貼れる程度の具体的なバグなんてここに貼っても意味はない。
0579名前は開発中のものです。
2010/03/03(水) 08:52:43ID:4e2irmLHでもupdate10未満も大量にバグがあってupdate10以降で直ってるのも大量にあるのがな
でもゲーム程度で問題になるバグなんてまずないだろ
0580名前は開発中のものです。
2010/03/06(土) 15:16:24ID:9hs0NXi7下手したら週末にまた2chが落ちるかもしれないね
 ̄ ̄ ̄V ̄ ̄ ̄ ̄ ̄ ̄
∧_∧
<丶`∀´> ∧_∧
/ \ ( ) はぁ?黙ってろ在日w
.__| | .| |_ / ヽ
||\  ̄ ̄ ̄ ̄ / .| | |
||\..∧_∧ (⌒\|__./ ./
||. ( ) ~\_____ノ| ∧_∧
/ ヽ 氏ねよクズ \| ( )
| ヽ \/ ヽ. 祖国に帰れよ
| |ヽ、二⌒) / .| | |
.| ヽ \∧_∧ (⌒\|__./ /
0581名前は開発中のものです。
2010/03/07(日) 02:52:45ID:mJhS8YgCControllerEnvironmentにControllerListenerを追加してもイベント飛んでこないす。
0582名前は開発中のものです。
2010/03/07(日) 11:20:32ID: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も自前で製作しているみたいだし、勉強せんでもよさそう
がんばるぉ^^
0583名前は開発中のものです。
2010/03/07(日) 12:38:46ID:8J4pTqVT下のリンク先、見れないんだが。
0584名前は開発中のものです。
2010/03/07(日) 15:17:28ID:yFiVhkjz末尾の括弧をURLに含めてるとか
0585名前は開発中のものです。
2010/03/07(日) 15:18:39ID:YVbfusWB最後に")"をつけちゃったから、それがURLの一部にされていると思われ
URLから")"消してみて
それはそうと、他にも読んでおいたほうがいいソースコードあったら教えてね^^
0586名前は開発中のものです。
2010/03/07(日) 20:31:59ID:seQ6S77ihttp://www10.ocn.ne.jp/~shinod/game/java/Baller0.00023.zip
見た目は派手になったけど,処理が重くなった.
俺の場合,OpenGLの本とか衝突判定の本とかは読んだけど,
他の人のソースコードとかはあまり見てないな.
0587名前は開発中のものです。
2010/03/07(日) 21:08:52ID:EoGWWfXWGOFのデザインパターンやっとくといいよ
ストラテジー、メディエーター、シングルトン、ファサードあたりを
意識すると上達が早くなる
0588名前は開発中のものです。
2010/03/07(日) 22:21:35ID:4Rnyo7ggするとGOFを見たこと無くても無意識にデザパタを適応していたりする
でもまあリファクタリングの勉強は最後でもいいはず
動くゲームを完成するまでの気力維持の方が大変だw
0589587
2010/03/08(月) 09:38:02ID:0N3PdWPFテトリス以上のゲーム作るのは無理だと思う
たとえばSwingを始めた>>585は、分離されたGUIコンポーネントや
イベントリスナーをどうつなげたらよいかについて困惑するはず
引数で無数に参照を渡す力押しとかでも不可能ではないけど
それじゃやっぱりコード書く楽しさがない
0590名前は開発中のものです。
2010/03/08(月) 20:38:45ID:fOUjfaLl構造化プログラミング主体の頃の人間だったおれは、
デザインパターンを知らんでも作れたんだが・・・・。
C言語ライクなJavaプログラミングだったけどな。
0591名前は開発中のものです。
2010/03/08(月) 21:37:40ID:InSeFkGYOOPの理解とデザインパターンの適応は別物だぞ
デザインパターンは使える状況なら使ったほうが良い物ってわけでもないし
テトリス以上の複雑なゲームとなるとパターンがまんま適応できる状況がまず少ない
以上現役奴隷の勝手な意見
0592名前は開発中のものです。
2010/03/08(月) 21:53:19ID:3O0fgwI4被っちゃいましたね^^
>>586
自分より遥にレベル上の方みたいですね
自分は古いかもしれませんが地味に2Dでがんばっていきます
お互いがんばりましょう
>>587-591
GOFはとりあえず読みました
半分も理解したか怪しいですが
とりあえず、ゲーム作るうえでは、入力なり出力なりのインタフェース切って、場面ごとに実装するクラス作ろうかなーっと漠然と考えてます
まだ、他人のコード読んでばっかりで、一行も書いてないのでどうなるかわかりませんがw
それはそうと、Javaでゲーム作りますがなにか?のページ見ていて思ったのですが、ゲームループはwhile文で自作するのが常道ですか?
TimerTaskがあると思うのですが、使わないのでしょうか?
while文の中で、遅延を考慮してたりして、結構がんばってるように感じたのですが、TimerTaskはその辺美味くやってくれるもんじゃないんですかね?
0593名前は開発中のものです。
2010/03/09(火) 10:57:20ID:QEiU+L36auのオープンアプリの関連スレ無いですか?
オープンアプリ作る人が集まるスレ
0594名前は開発中のものです。
2010/03/09(火) 13:07:17ID:B2aHv/XnCLDC+MIDP+携帯電話用Javaスレッド part 9
http://pc12.2ch.net/test/read.cgi/tech/1249357352/
0595名前は開発中のものです。
2010/03/09(火) 14:15:07ID:lYcMPodiそれすら実行できなかったらそのタスクは実行されなかった気がする。
あとスケジューリングの精度もそんなに厳格じゃなかったはず。
それでもいいならjava.util.Timerでいい。
でも、java.util.Timerつかうよりは並列ライブラリで自分の要件実装するんじゃないだろうか?
0596名前は開発中のものです。
2010/03/09(火) 15:54:48ID:QEiU+L36どーもです。
オープンアプリでゲーム作ってる人のスレは無いってことっすね・・・残念ですぅ
0597名前は開発中のものです。
2010/03/09(火) 16:49:21ID:gD7fhvY30598名前は開発中のものです。
2010/03/09(火) 18:00:12ID:QEiU+L360599名前は開発中のものです。
2010/03/09(火) 21:13:35ID:EB7b1hko過激な自治厨もいないしゲームプログラムの話題も出てるし
0600名前は開発中のものです。
2010/03/09(火) 22:10:21ID:i+0eeHLE問題ないよ
処理落ち等の実装は人によるけど、TimerTaskで実装するのではなくここでは時間管理だけして、
そこから他のスレッドをコントロールするのが理想かな
垂直同期とって60fps、処理落ちも垂直同期単位という昔ながらのアプリのような挙動がほしい場合はね
それ以外ならTimerとTimerTaskで問題なし
repaint()使っているようなものなら正直TimerもswingのTimerでいいと思う
0601名前は開発中のものです。
2010/03/10(水) 13:10:34ID:/NB3Vbw/windowsの高精度タイマーを利用するのでより品質の高いループが組める
はずだ。現に俺はsleep()で100fps以上の高分解能ループを組めている。
ループをあまり組んだことがないなら「timer 分解能」あたりで
一度ググっておくことをお勧めする。多くのwindowsではTimerでも
60fps回せるんだが、別に60fpsを回せることが保障されているわけでは
ない。ディスプレイのリフレッシュレートも影響するのかもしれないが、
ユーザの環境では35fpsになったり70fpsになったりするかもしれない。
whileでループ組んでいるというのがどういう状況か知らんけど、
それはwhile内部にwait()する区画があって始めて成り立つことだ。
初歩的なことだがビジーループなんて絶対に組んではいけない。
0602名前は開発中のものです。
2010/03/10(水) 14:31:21ID:nBH9suJoXP前期くらいの古い話になるけど
Windows98SEではちゃんと30FPSで動いていたゲームがXP(2000だったかも)で20FPSくらいに
なってしまい原因が分からず悩んでいた時期があった
推測だけどデフォルトではタイムスライシングが16msになってて、ゲームを30FPSで動作ささせる
ために1フレームを33msにあわせようとすると48msになってしまってたんだと思う
メディアプレイヤーを起動していると精度が上がることを見つけて、自前のアプリケーションを起動し
timeBeginPeriodを呼び出しておくと同様の効果があることを確認し、それをユーザのマシンで
再現する方法を探してたよ
FLASHを一度でも再生したブラウザのプロセスが残っていると精度も上がったままになり、
IEの場合はbgsoundタグに空のmidiファイルを設定しておくという泥臭い逃げ手もあった
Windows以外のOSで試したことはないけど、どうなってるのかなぁ
0603名前は開発中のものです。
2010/03/11(木) 11:52:23ID:gsQzKt2Esleepは時間通りに動いていたかもしれないけど、対応しようがなかった。
今はnanoTimeで1msecの精度が出せるから良いね。
0604名前は開発中のものです。
2010/03/11(木) 13:14:15ID:I816Pm6U0605名前は開発中のものです。
2010/03/11(木) 15:31:52ID:+KPkzeB4Map(HashMap)で全要素にアクセスするのって十分に遅いと思う?
List(ArraryList)と両方に要素を詰めておいて片方が苦手な面は
スレッドでごまかしたほうがいいかな
0606名前は開発中のものです。
2010/03/11(木) 19:26:06ID:I816Pm6Uやってみた?
要素を取ってからの処理がが1ms掛かってりゃ、隠蔽できるレベルと思うんだが。
0607名前は開発中のものです。
2010/03/11(木) 23:54:00ID:zhaRJbEJ10万とかなら考えるが。
0608名前は開発中のものです。
2010/03/12(金) 01:20:42ID:fx5pN5+0まともってのがどの程度を意味するのか分からないけど、
XPでnanoTimeを実験したときは1ミリ秒くらいの精度は出たよ。
0609JAVA初心者
2010/03/12(金) 10:17:17ID:6GJM5qHr「jogl.jar で制限されているためアクセスできません」
って出た
jogl-1.1.1a-windows-i586.zipの中のやつをコピーするだけではダメなのですか?
0610名前は開発中のものです。
2010/03/12(金) 22:17:40ID:cuwPqo480611名前は開発中のものです。
2010/03/13(土) 11:54:22ID:ft4sD9tEWindowsでもsunのVMなら
currentTimeMillisも1msの精度でてる
nanoTimeは高精度カウンタつかってるんでちゃんと1ms以下でてるっぽい
そのかわり特定の時刻はわからないけど、ゲーム系なら問題は無いな
Sleepとかタイマイベント系+nanotime使ったビジーループが最も高精度だけど、
そこまで必要な場合むしろ垂直同期をしたほうがいいと思うんだ
0612名前は開発中のものです。
2010/03/13(土) 15:41:37ID:kP+vCyl1格ゲーでも作るの?
0613名前は開発中のものです。
2010/03/14(日) 01:12:44ID:/KubzB8G16.66msのつもりが32msになっていた、なんて精度だとライトなアクションゲームどころか
コマンド選択式RPGのエフェクトすらまともに表示できないと思う
0614名前は開発中のものです。
2010/03/22(月) 01:15:48ID:a35EGBlP猫ぐらい目が良くないと一般ユーザでは気付かんレベルじゃないかね
0615名前は開発中のものです。
2010/03/22(月) 11:37:48ID:lWMLrUhP3Dのほうが精度はいらない
ティアリングも2Dのほうが気になるしね
0616名前は開発中のものです。
2010/03/22(月) 13:33:05ID:DUGGcEaK0617名前は開発中のものです。
2010/03/22(月) 19:56:42ID:a35EGBlP主にゲーム中などの高負荷描画時に意図的にフレームスキップする機能が組み込まれていたけど
見て分るレベルじゃなくてほとんど気にならなかった思い出があるよ
0618名前は開発中のものです。
2010/03/22(月) 22:54:58ID:lWMLrUhP0619名前は開発中のものです。
2010/03/27(土) 11:17:41ID:CAF7oz9b0620名前は開発中のものです。
2010/03/27(土) 13:42:08ID:tZ9gJAWEスレ間違えてるぞ
0621名前は開発中のものです。
2010/03/27(土) 22:43:26ID:AvjpVtCqふ〜ん。よく知ってるね。ネット(笑)で調べたんだ?
0622名前は開発中のものです。
2010/03/28(日) 02:01:26ID:vG829dZf加算合成とかやりたい程度なんですが、
JOGLとかライブラリ使ったら結構早くなるものなんでしょうか?
標準APIしか使ったことないんですが、使うとしたらJOGL一択?
0623名前は開発中のものです。
2010/03/28(日) 16:23:12ID:dUxWoyHG0624名前は開発中のものです。
2010/03/28(日) 17:33:06ID:vG829dZfすいません、調べてみたら、BufferStrategyってアプレットから使えなくないですか・・・?
テクスチャで2Dの描画だけできれば十分なんですが、
drawImageのような処理はどう実装するのが普通なのでしょうか?
とりあえずJOGLについて調べてみたのですが、
特定の画像を読み込んだテクスチャごとに、予め指定した各々のz座標にまとめて描画
という風なものしか思いつきません・・・
0625622
2010/03/29(月) 01:33:25ID:SqZ8R8TT失礼しました
0626名前は開発中のものです。
2010/03/29(月) 17:04:23ID:YLmAQvrk詳細希望
どうやるの?
0627名前は開発中のものです。
2010/03/29(月) 17:07:28ID:tAa/9ZD/素のAppletを使う必要性が現時点で無いわけだから、
JAppletを使うわけにはいかんの?
とはいってもかなり作法が違うから、今から変更できないってのなら
わからんでもないが。
0628名前は開発中のものです。
2010/03/30(火) 16:45:14ID:ANScytkgJAppletでCanvasを描画するって方法があったんですね!
アプレットでBufferStrategy使えました。ありがとうございます
BufferStrategyが4,5回の起動につき1回程度、酷く処理落ちするので
自前のダブルバッファリングと切り替えるようにしたのですが、
スマートな方法はありませんか?
システムプロパティの方は、
Appletから設定出来るのかどうか分かりませんでした
0629名前は開発中のものです。
2010/03/30(火) 17:22:35ID:5VmsakM5半透明合成はAlphaCompositeでアクセラレーション効かせれるけど、
加算合成はどうすれば標準ライブラリで速度出せるの?
0630名前は開発中のものです。
2010/03/31(水) 13:50:19ID:ynx77+erBufferStrategyのせいで処理落ちしてるとは思えない。
たぶん、GCのせいだよ。
結構でかいメモリを使い捨てにしてるんじゃないかな。
で、GCのタイミングを制御してないと。
まぁ、ゲームとかサーバサイドじゃないとGCが気になること無いんだけどね。
GCの情報をログに吐かせてチェックしたら良いよ。
0631名前は開発中のものです。
2010/03/31(水) 14:16:29ID:e2SekH7aたまに描画アクセラレーションが効いてない状態になるのとGCは関係ないと思うぞ
0632名前は開発中のものです。
2010/03/31(水) 14:31:05ID:ynx77+er描画アクセラレーションが効いてないって話はどこから?
0633名前は開発中のものです。
2010/03/31(水) 14:34:10ID:e2SekH7a> 4,5回の起動につき1回程度、酷く処理落ちするので
原因はわからんけど同じようなことが起こった事あるから
0634名前は開発中のものです。
2010/03/31(水) 17:20:45ID:ynx77+erしかし、俺が読み間違えてた部分があるな。
>BufferStrategyが4,5回の起動につき1回程度、酷く処理落ちするので
は、4,5フレームごとに処理落ちすると言うことかと思ってた。
0635名前は開発中のものです。
2010/03/31(水) 20:30:53ID:6whusFO/新人の頃当たった上司は不具合の原因を完璧に特定して理詰めで説明
せんとソース触らせてくれなかったなぁ
0636名前は開発中のものです。
2010/03/31(水) 22:31:41ID: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択になる。私はアプレットに興味がないので
知りたければ自分で調べて…。
0637名前は開発中のものです。
2010/03/31(水) 23:01:06ID:e2SekH7a0638名前は開発中のものです。
2010/03/31(水) 23:51:25ID:T6Q4zys0http://mailsrv.nara-edu.ac.jp/~asait/open_gl/Jogl/jogl.htm#section341
0639名前は開発中のものです。
2010/04/01(木) 01:30:29ID:yUfE9csc>>636
具体的に書かなくてすみませんでした
「ひどく処理落ちする」というのは、
普段1フレームの処理が10〜40ms程度なのが、200〜300くらいになります
createBufferStrategy、getBufferStrategyをやり直しても直らず、Appletを起動し直さないとダメでした
ハード依存のせいで不安定なのかな、などと勝手に思ってましたが、よく分かりません
とりあえずGCのログ調べてみます
ありがとうございました
0640名前は開発中のものです。
2010/04/01(木) 13:06:54ID:UAXZ1fUjjava6update10でもそうなる?
アクセラレーションの効き方がupdate10以降全然違うよ。
0641名前は開発中のものです。
2010/04/19(月) 16:58:19ID:DE/oWF3Wテクスチャ無しの時と比べて3倍近く重くなる・・・
ピクセル単位でマテリアルの色とテクスチャの画像の色とを乗算してるんだが、
速くする方法はないだろうか・・・
0642名前は開発中のものです。
2010/04/19(月) 22:44:06ID:EBaRhPkl符号なし精度やSIMD直接発行したくなるけど、せいぜいマルチスレッドしかないね。
0643名前は開発中のものです。
2010/04/23(金) 14:30:02ID:+jF/jVEW0644名前は開発中のものです。
2010/04/23(金) 17:11:32ID:qX+XOmtR高輝度部分と重なる物体の輪郭をぼかせばいいの?
CGで木漏れ日とか表現してる人はどうやってんだろう。
0645名前は開発中のものです。
2010/04/24(土) 16:15:02ID:wWfihejaレンダラーの場合はどのあたりをマルチスレッドにすべきだろう?
やっぱ座標変換より描画処理か?
0646645
2010/04/24(土) 16:17:32ID:wWfiheja0647名前は開発中のものです。
2010/05/06(木) 15:54:54ID:sWIFt/qsそれ用にテクスチャを作っとくことが多いんじゃ?
んで加算合成とか
専門じゃないからよく分からんが
0648名前は開発中のものです。
2010/05/08(土) 01:32:27ID:OfzVRu2eブルームだけならレンダリング後のイメージ処理じゃないかな。
HDRIでレンダリングして一定以上の輝度の部分を抜き出して
ぼかしたあとに加算合成するとかそういうの。
0649名前は開発中のものです。
2010/07/30(金) 22:22:03ID:RX/4dL+i0650名前は開発中のものです。
2010/08/13(金) 00:31:22ID:qfOMxM2LJava3Dベースの簡易3Dライブラリです.
趣味のゲーム作りに,夏休みの自由課題にどうでしょう?
0651名前は開発中のものです。
2010/09/05(日) 21:18:27ID:QTcNVFIgいつの間にか3になってたり、jMonkeyPlatformなんていうのが
出来たみたいで使い勝手とか教えて欲しい。
ttp://www.jmonkeyengine.com/home/
0652名前は開発中のものです。
2010/09/15(水) 21:31:02ID:0fNVtxCG私も知りたいです。
3D用らしいけど、2Dのゲーム作るのにも使えるかな?
0653名前は開発中のものです。
2010/09/16(木) 21:14:49ID:t4ajdLvC「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);
■ このスレッドは過去ログ倉庫に格納されています