タグ付けされた質問 「java」

Javaは人気のあるオブジェクト指向プログラミング言語であり、ほとんどのハードウェアおよびソフトウェアプラットフォームでJavaプログラムを変更せずに実行できるランタイム環境です。

2
ピクセルパーフェクトな衝突検出を回転で処理するにはどうすればよいですか?
誰かがAndroidでビットマップを使用して回転ピクセルパーフェクト衝突検出を達成する方法について何かアイデアを持っていますか?それとも一般的にはそれについてですか?私は現在ピクセル配列を持っていますが、任意の度数に基づいてそれらを操作する方法がわかりません。

2
頂点バッファーオブジェクトの主な用途は何ですか?
私が読んだことから、VBOは純粋にパフォーマンスを目的としているようです。 私はlwjglの非常に初歩的な学習プロジェクトに取り組んでいます。ライブラリのさらに高度な機能と、それらの用途を理解しようとしています。 私の理解では、VBOを使用すると、頂点が現在シーンに描画されていない間でも、VRAMに頂点を保持できます。私の場合、クワッドを描画しているだけで、パフォーマンスはおそらくまったく問題ではありませんが、内部で何が起こっているのかをまとめようとしています。クワッドを直接描画している場合、CPUメモリから描画していますか?また、可視性のチェックを行わない場合、それが表示されているかどうかに関係なく、「シーン」内のすべてを完全にレンダリングしていることを意味しますか?VBOはオブジェクトを格納し、必要なものだけをレンダリングする方法ですか?
8 opengl  java  lwjgl 

2
ロビーサーバーの記述には何が関係していますか?
ゲームルーム、一般的なチャットなどのロビービューに基づいてチェスのマッチメイキングシステムを書いています。これまでのところ、プロトタイプは機能していますが、サーバーで行ったいくつかのことには大きな疑問があります。ゲームロビーサーバーを書くことは私にとって新しいプログラミングエクスペリエンスであり、そのための明確で正確なプログラミングモデルはありません。また、それがどのように機能するかを説明した論文も見つかりませんでした。アマゾンから「Javaネットワークプログラミング3版」を注文しましたが、まだ出荷を待っていましたが、この本で役立つ例や情報が見つかると思います。 その間、私はあなたの意見を集めて、サーバーを正しく書く方法を学ぶことができるようにいくつかのことをどのように処理するかを見たいと思います。ここに私の頭の上のいくつかの質問があります:(もっと来るかもしれません) 最初に、サーバーの動作を定義しましょう。主な機能は、クライアントとのTCP接続を保持し、クライアントが生成したイベントをリッスンして、他のプレーヤーにディスパッチすることです。しかし、それだけではありませんか? クライアントごとに1つのスレッドを使用する必要がありますか?その場合、300クライアント= 300スレッド。それは多すぎませんか?それをサポートするにはどのようなハードウェアが必要ですか?そして、ロビーはおよそどのくらいの帯域幅を消費しますか? クライアントのソケットを保持するためにどのようなデータ構造を使用する必要がありますか?スループットを損なうことなくイベントをディスパッチするために繰り返し処理するときに、同時変更(たとえば、プレーヤーがロビーに入る、またはロビーに存在する)からそれをどのように保護しますか?ここでConcurrentHashMapが正しい答えですか、それとも私が知っておくべきいくつかのテクニックがありますか? ユーザーがロビーに入るとき、ロビーの状態をユーザーに転送するためにどのようなメカニズムを使用しますか?そして、これが起こっている間、他のイベントはどこで泡立ちますか?
8 java  server 

2
Java AWTは2Dゲームのレンダリングに適していますか?
[この質問の方が適していると指摘されたため、stackoverflowからこの質問を再投稿します。] 現在、2DゲームエンジンをJavaに移植しています。Stackoverflowでここで指摘されているゲームライブラリのいくつかを調べました。しかし、私が見たものはかなり単純化されており、アルファ透明度のようなものをサポートしているかどうかさえ述べていないため、ロジックをすでに記述しているC ++レンダラーを移植することにしました。 このレンダラーは、タイリングを使用して不要な再レンダリングを回避する純粋なソフトウェアレンダラーです。出力ペインより少し大きい「オフスクリーンバッファー」を作成し、このオフスクリーンバッファーをすべてのフレームの出力にブリットすることで、スクロールパフォーマンスを最適化しました。このようにして、マップ上でピクセルをスクロールしたからといって、タイルを不必要に再描画することを回避できました。 JavaのAWTを使用して実装し、オフスクリーンバッファーに大きなBufferedImageを使用しました。CPU使用率は問題ありません(C ++の約2倍です)が、連続スクロールに奇妙な問題があり、毎秒程度、レンダラーが約0.2秒間遅延します。 私のコードにはこれらの期間に発生するものはなく、オフスクリーンバッファーをメインビューに描画しないとスパイクがなくなるので、Javaが独自の内部最適化を行っていると結論付けることができます。ただし、それが何をするのかわかりません。また、スパイクを取り除くために削除する必要がある自分自身の最適化もわかりません。また、Java AWTは継続的で高FPSのスクロールを考慮して作成されたのではない可能性があり、この目的にはまったく使用できません。 これらのスパイクを取り除く方法はありますか?
8 2d  java 

2
Android上のクライアントサーバーゲームのJavaコード
Androidでゲームを開発しました。今、それをwifiまたは3Gで再生したいと思います。クライアント(モバイル)からサーバーに送信し、次に別のクライアント(モバイル)に送信したいゲームパケットがあります。 playPacketsをサーバーに継続的に送信し、playPacketをサーバーからクライアントに継続的に受信するコードをJavaで作成する方法がわかりません。 送信用と受信用の2つのスレッドを使用する必要があると思います。 誰かがコード、またはコードを書く手順を手伝ってくれませんか?

1
AndroidのGLSurfaceViewにEditTextボックスをオーバーレイすることは可能ですか?
openglメニューの背景の上に「PlayerName」ボックスを追加しようとしていますが、これは可能ですか?さまざまなレイアウトを試しましたが、EditTextボックスを上部に表示できないようです このようなことをする典型的な方法は何ですか?テキストを手動でレンダリングして入力を処理する必要がありますか、それとももっと良い方法がありますか?どういうわけか、GLSurfaceViewの上にEditTextを表示できるように見えるはずです。

3
タワーの防衛ゲームで動きを継続的に更新する効果的な方法は?
私たちは大学の1年生のプロジェクトとしてタワーディフェンスゲームを作っている4人の男です。ゲームは本当にシンプルになるでしょう! 3つの異なる塔 3つの異なるモンスター 1つのマップ(時間があれば、さらに追加する可能性があります) ゲームはオブジェクト指向でなければなりません。 クラス構造は以下の通りです ゲーム -グラフィックの描画など レベル -すべてのレベルはこのクラスのオブジェクトです。各レベルには、有限数のウェーブオブジェクト(リスト内)があります。 Wave-モンスターオブジェクトのリストが含まれています。 モンスター -これはスーパークラスです。モンスターの種類ごとにサブクラスを作成します タワー - タワーのスーパークラス。タワーのタイプごとにサブクラスがあります。 多くのオブジェクトが同時に何かをしなければならないという問題を解決する方法を考えています。たとえば、1ピクセルを1方向に移動します。 私たちが思いついたのは、オブジェクトがいつ動作するかを制御するために、avクラスTimerを実装するという考えです。これが最善の方法かどうかはわかりません。誰かが継続的な更新ケースを解決する方法についていくつかの良いアイデアを与えることができますか?

2
マルチスレッドゲーム-更新、レンダリング、およびそれらを分割する方法
StackOverflow投稿から(これを移動することをお勧めしました): それで、私はゲームエンジンに取り組んでいて、かなり良い進歩を遂げました。ただし、私のエンジンはシングルスレッドであり、更新とレンダリングを別々のスレッドに分割することの利点は非常に良い考えのように思えます。 どうすればよいですか?シングルスレッドのゲームエンジンは(概念的には)作成が非常に簡単で、更新->レンダリング->スリープ->繰り返すというループがあります。ただし、特に更新レートを変更した場合(たとえば、更新ループを25秒に1回実行し、レンダリングに60fpsを使用している場合)は、更新とレンダリングを分解する適切な方法を考えることができません-途中で更新を開始するとどうなりますか?レンダーループを介して、またはその逆?


4
JMonkeyEngineチュートリアルとドキュメントを探しています[終了]
休業。この質問には、より焦点を当てる必要があります。現在、回答を受け付けていません。 この質問を改善してみませんか?質問を更新して、この投稿を編集するだけで1つの問題に焦点を当てます。 4年前休業。 公式サイトの資料の他に、JMonkeyEngineのチュートリアルとドキュメントを探しています。どんな手掛かり?

4
多くのエンティティにとって効率的な2D Java見通し線?
今日の私の問題はこれです: 私は多くの民間人を囲んでいますが、それらはarraylistに保存されているクラスです。 彼らが別の民間人のパニックを見たとき、彼らはパニックになり始めて、それは広がるでしょう。 まずStep()、イテレーターをループして各クラス関数を呼び出します。次に、Step()関数では、別の民間のイテレータを通過します。通過するときに、イテレータで他の民間人を見ることができるかどうかを検出しようとします。これは、パフォーマンス時間が0から50ミリ秒になり、市民が100人いる場合です。 これは私が修正する必要のある問題です。オブジェクトがポイントaからポイントbの邪魔になっているかどうかを簡単に検出できるようにしようとしました。 見通し線のコードは次のとおりです。 public static Object LOS(int x, int y, int x2, int y2, String Scan, Object Me, Object You) { DirectionX = (x-x2)/Quality; DirectionY = (y-y2)/Quality; CurrentX = x; CurrentY = y; String[] ScanArray = Scan.split(":"); for(int I=0;I<=Quality;I++) { for(String Type: ScanArray) { if(Type.equals("Boxs")) { Iterator …

2
後でアクションが完了するのを待つコマンドまたはイベントの処理
2つのイベントがあるとします:Action1とAction2。Action1を受け取ったときに、次にAction2が回転するときに使用する任意のデータを保存する必要があります。最適には、Action1は通常コマンドですが、他のイベントにすることもできます。考え方は同じです。 これを実装する現在の方法は、状態を格納し、特定の状態が存在する場合にAction2が呼び出されたときに単純にチェックすることです。これは明らかに少し厄介であり、多くの冗長なコードにつながります。これが私がこれをどのように行っているかの例を、疑似コードの形式で(そして明らかにかなり細かく分解して)示します。 void onAction1(event) { Player = event.getPlayer() Player.addState("my_action_to_do") } void onAction2(event) { Player = event.getPlayer() if not Player.hasState("my_action_to_do") { return } // Do something } 他の多くのアクションでこれを行うと、それはやや醜くなり、それを改善するために私にできることがあるかどうか知りたいと思いました。 データを渡す必要がないようなものを考えていましたが、これも正しい方向ではありませんか? void onAction1(event) { Player = event.getPlayer() Player.onAction2(new Runnable() { public void run() { // Do something } }) } それをさらに進めたい場合は、単にこれを行うことはできませんか? void onPlayerEnter(event) …
7 java  events 

2
libGDXのSQLite
libGDXでSQLiteを使用する方法の例はありますか?元のAndroidコードに、データベースに簡単にアクセスできるクラスがありますが、libGDXに相当するクラスを見つけることができません。それとも何か不足していますか?どういうわけかそれをlibGDXコードで使用できますか?libGDXは初めてです。
7 android  java  libgdx 

5
ゲームのセーブファイルに使用できるクロスプラットフォームの特別なディレクトリはありますか?
Windows 7ラップトップでLWJGLとJavaを使用して開発しています。を使用して、%appdata%\gamename\saves\またはロングフォームc:\users\user\appdata\roaming\gamename\saves\フォルダへの保存を正常に設定しましたFile dir = new File(System.getenv("APPDATA") + "\\gamename\\saves\\");。 私はLinuxの趣味レベルの経験があり、OSXの経験はありません。私のゲームは完全にクロスプラットフォームになります。 あるSystem.getenv("APPDATA");クロスプラットフォームは?もしそうなら、それはLinuxまたはOSXのどこを指しますか?使用すべきベストプラクティスの代替策はありますか?

1
libgdxはAndroidでの2Dゲーム開発に適していますか、それとももっと簡単な代替案がありますか?
デスクトップとAndroidで2Dゲームを開発するためのJavaフレームワークを探しています。私はSlickを見てきましたが、私は本当にAPIが好きですが、開発者自身は、Androidとデスクトップのフレームワークが必要かどうかはlibgdx atmが最適だと言っています。 今、私はlibgdxについて読んでいますが、Androidとデスクトップで2Dスプライトを実行するだけの簡単な方法があるかどうか疑問に思っています。私はグラフィックのようなファミコンを作成することにのみ興味があります。このようなもの。 libgdxのwikiには、OpenGL ES 2.0(http://code.google.com/p/libgdx/wiki/OrthographicCamera)ではOrtographicCameraを使用できないと書かれていますが、私は(http://www.badlogicgames .com / wordpress /?p = 504)デバイスがOpenGL ES 2.0をサポートしている場合、1.0はサポートされていないため、OpenGL ES 2.0デバイスでOrtographicCameraを効果的に使用できませんか? 私は混乱しています、libgdxを使用する必要がありますか?より簡単な代替案はありますか?
7 android  java  libgdx 

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.