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

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

3
スクリプトはエンジンの抽象化と相互作用する必要がありますか?
私はJavaとJythonを使用していますが、いくつかの調査の結果、スクリプトがエンジンインターフェイスに直接アクセスできるようにすると、2つが密接に結びつくため、間違いになる可能性があることがわかりました。 MODがエンティティを作成および管理できるようにするほとんどのスクリプトは、なんらかの抽象化を介して行われているようです。これらの抽象化はこの理由のためにそこにありますか、それとも非プログラマーがゲームを変更するためのより直感的な方法を提供するだけですか?
10 java  python  scripting 

3
エコノミーベースのゲームをコードでモデル化するにはどうすればよいですか?
古代文明をベースにした経済ゲームを作りたい。どのように設計すればよいかわかりません。「スペースインベーダー」のコピーのような小さなゲームで作業している場合は、次のように構成しても問題ありません。 メインコントロールクラス グラフィッククラス プレイヤークラス 敵クラス エコノミーゲームのような大規模なプロジェクトでこれを行う方法を理解できません。たくさんの町を含むカントリークラスを作成しますか?町にはたくさんの建築クラスが含まれていますか?ほとんどの人のクラスが含まれていますか?プレイヤーがアクセスするためにアクセスできる経路探索クラスを作成しますか?

3
2つの方向付けられたバウンディングボックス(OBB)間の最速3D衝突検出
ゲームの中で、衝突システムを追加する必要があるところです。私はjBulletを試しましたが、うまくいきましたが、私が探していたものではありませんでした。2つの方向性のあるバウンディングボックス(OBB)ツリーが衝突しているかどうかをテストする簡単な方法が欲しいだけです。 木を使って衝突をするつもりでした。ブロードフェーズ用のAABBを作成し、それがテストに合格した場合、ツリー内の各OBBが他のツリーと衝突するかどうかを確認します。 インターネットでいくつか見つけましたが、完全には理解できませんでした。私が求めているのは、3D OBBの衝突を適切に説明するWebサイトまたはリソースですか? GJKはSATよりも高速であることを学びました。また、ボックスが互いにどこまで浸透しているかを知ることができるようです。私はいくつかのGJKのものを見つけましたが、それらは箱ではありませんでした。代わりに、より複雑で混乱を招くものです。 3つのベクトル(各軸の中心、サイズ、回転)からOBBを作成できるようにしたいだけです。次に、それらとの衝突をテストすることができます。投稿していただきありがとうございます。

6
配列ベースの16進マップでピクセルから16進座標を取得するにはどうすればよいですか?
ピクセルを16進マップで調整できるようにしようとしていますが、計算が正しく行われていません。試行したすべてが少しずれているようです。また、見つけた例は、円で囲まれた中央のマップに基づいています。 「配列ベース」とは、ヘクスの順序を意味します。写真を参照してください。 私が得た最も正確な結果は次のコードでしたが、それはまだオフであり、値が増えるほど悪化します。 public HexCell<T> coordsToHexCell(float x, float y){ final float size = this.size; // cell size float q = (float) ((1f/3f* Math.sqrt(3) * x - 1f/3f * y) / size); float r = 2f/3f * y / size; return getHexCell((int) r, (int) q); } 画面は左上の0,0から始まり、各セルはその中心を認識しています。 私が必要なのは、画面座標を16進座標に変換する方法だけです。どうすればできますか?

1
背景のピクセルの色を反転させる方法
私は、JavaとjMonkeyEngineを使用してゲームとマップエディターを書いています。マップエディターでは、ワイヤーフレームの球でブラシを作成しました。私の問題は、どこでも見えるようにしたいので、このブラシの「背後」にあるピクセルの色を反転させたいです。フラグメントシェーダー(GLSL)でそれを実行したかったのですが、このピクセルの色を取得する方法がわかりません。

5
Vector3で演算子 '> ='を使用できないのはなぜですか?
私は私がように参照する2つの位置の間を移動するための四角形を取得しようとしている_positionAとします_positionB。どちらもタイプVector3です。長方形はうまく動きます。ただし、到達_positionBしても、本来のように反対方向に移動することはありません。 コードをもう一度見てみました。オブジェクトが移動ifすると、コード内のステートメントは、rectsの位置がに等しいフレームを逃したという結論に達しました_positionB。rectsの位置がより大きいか等しい 場合は、コードを変更して方向を逆にすることにしました_positionB。私のコードは長すぎないので、以下に表示します。 using UnityEngine; using System.Collections; public class Rectangle : MonoBehaviour { private Vector3 _positionA = new Vector3(-0.97f, -4.28f); //Start position private Vector3 _positionB = new Vector3(11.87f, -4.28f); //End position private Transform _rect_tfm; private bool _atPosA = false, _atPosB = false; public Vector2 speed = new Vector2(1f, 0f); private …
9 unity  c#  vector  mathematics  vector  matrix  unity  c#  transformation  java  3d  terrain-rendering  shading  ios  opengl-es  opengl  rendering  optimization  python  scripting  minecraft-modding  modding  pc  3d-meshes  mesh  culling  point-cloud  networking  interpolation  mathematics  game-design  ai  game-mechanics  animation  unreal-4  skeletal-animation  3dsmax  unity  c#  3d  opengl  c++  textures  unity  ide  cocos2d  cocos2d-x-js  unity  c#  mono  il2cpp  c++  game-loop  timer  linux  flash  actionscript-3  java  glsl  c++  vector  entity-component  c++  directx11  windows  visual-studio  libgdx  mouse  unity  c#  architecture  storage  unity  c#  rotation  coordinates  quaternion  vrpn  movement  vector  unreal-4  unity  shaders  unity  gui  text  bug  shooter  3d  animation  rendering  voxels  c++  mmo  multithreading  linux  textures  procedural-generation  terrain-rendering  multiplayer  mmo  game-state  java  android  libgdx  opengl  procedural-generation  unity  gui  3d  animation  tools  geometry-shader  mobile  advertisements  unity  c#  animation  scripting  unity  animation  unityscript  coroutines  unity  shaders  lighting  camera 

1
OpenGLでGPUベースの動的ジオメトリLODを実装するにはどうすればよいですか?[閉まっている]
休業。この質問には、より焦点を当てる必要があります。現在、回答を受け付けていません。 この質問を改善してみませんか?質問を更新して、この投稿を編集するだけで1つの問題に焦点を当てます。 昨年休業。 ゲームのパフォーマンスを向上させるためにLODを実装しようとしています。とてもいいチュートリアルを見つけました。 私が理解していると思う基本的な概念は、カメラからオブジェクトまでの距離を取得し、適切なLODレベルを確認してから、「適切な量のインスタンス」でオブジェクトをレンダリングすることです。 それをどのように実装しますか?提供されているサンプルコードは私にとって謎です... いくつかの質問: これはLODを実装する良い方法ですか? 誰かが私に詳細、私がそれを実装する方法、クエリなどを説明してくれますか? すべてのオブジェクトをレンダリングしています GL11.glDrawElements(GL11.GL_TRIANGLES, model.getRawModel().getVertexCount(), GL11.GL_UNSIGNED_INT, 0); コード例ではを使用していGL_POINTSます。でも実装できますGL_TRIANGLESか?
9 opengl  java 

1
LibGDX 3Dで衝突イベントを発生させるにはどうすればよいですか?
以下のコードには、やりたいことの例を示しています。カメラを持っているのですが、ボックスにぶつかったときにカメラの動きを止めたいのですが、どうすればよいですか? public class Main extends ApplicationAdapter { private final ModelBuilder builder = new ModelBuilder(); private final Environment environment = new Environment(); private ModelBatch modelBatch; private PerspectiveCamera camera; private Model model; private ArrayList<ModelInstance> instance = new ArrayList<ModelInstance>(); private FirstPersonCameraController controller; private BoundingBox[] boxBounds = new BoundingBox[1000]; private BoundingBox cameraBox = new …

1
スプラッシュスクリーンに広告を読み込みますか?
読み込みに非常に長い時間がかかる広告があります。私は彼らの負荷を持つことが可能であることを思っていた間、使用がスプラッシュスクリーンにありました。私はこの答えを見てきました: /programming/5133342/how-can-i-make-my-ads-appear-faster-in-my-android-app そして答えは、広告をロードするためにスプラッシュ画面を使用することを提案します。広告が読み込まれたタイミングを確認して、次のアクティビティに進むにはどうすればよいですか?ユーザーが機内モードになっている場合はどうなりますか?スプラッシュスクリーンでスタックしますか?admob addリスナーを見ましたが、それにはadviewが必要ですが、私のadviewは次のアクティビティにありますか?この問題にどのように取り組むべきですか? また、私がこれをやろうとすると: AdView.setAdListener(new AdListener() { // Implement AdListener }); 私は得ます: 非静的メソッドは静的コンテキストから参照できません。事は、次のアクティビティにある追加がいつ読み込まれるかを見ようとしていることです。

1
3Dカメラの回転
許してください、しかし私は助けを必要としています、そして私は今数週間これに行き詰まっています、私は進歩を遂げておらず、どこへ行っても私は別の答えを見ます、私が試みるすべてがうまくいきません。私は十分なヒントとアドバイスを持っています。今、私はこれを理解することができないので、誰かが私に後戻りするための答えをくれる人を本当に必要としています。 この主題を最も混乱させたのは、誰もが異なる規則または規則のセットを使用する方法であり、それらの答えは、何であるかを定義せずに独自の規則に基づいています。 だからここに私が最も一般的で論理的であると思われるものに基づいて形成した一連の規則があります: 軸の右手の法則。 正のYは上向き、正のZは視聴者向き、正のXは右向きです。 シェーダーに送信されるときに転置される行メジャー行列。 ピッチ:X軸を中心とした回転 ヨー:Y軸を中心とした回転 ロール:z軸を中心とした回転 ローテーション順:ロール、ピッチ、ヨー(これは正しいですか?誰かがこれを確認できますか?) 正の回転値は、軸の正の端から見下ろすと、時計回りに回転します。 すべての軸にわたる0回転のデフォルトの方向は、負のYを指すベクトルです。 ..それらの慣例を考えると(間違っている場合は必ず私を訂正してください!) LookAt関数を記述しますか?(lookAt(ベクター位置、ベクターアイフォーカス、ベクターアップ)) 回転行列を計算します。(回転(x、y、z)) 私はこれらの2つの質問に少なくとも過去3週間以上答えてみました。LookAt&Rotation Matrix関数を少なくとも30回書き直しました。何百ものウェブサイトと多くの解答された質問を読み、他の人々のコードをコピーしました、そして私がこれまでに作った何もうまくいきませんでした、すべてが間違った結果を生み出しました。それらのいくつかは、正しい回転にさえ近くないいくつかの陽気に奇妙な出力を生成しました。 私は昨夜を除いて毎晩これに取り組んできました。繰り返し失敗することにとてもイライラしていて、私は立ち止まって休憩しなければならなかったからです。 正しい方法を教えてください。それから逆に作業して、それがどのように機能するかを理解できます。正しい答えが得られず、これが私を少し狂わせています! 私はJavaで書いていますが、任意の言語で書かれたコードを使用します。私の3Dレンダリングコードのほとんどは実際には非常に見事に機能しています。それは理解できない数学にすぎません。 更新:解決済み ご協力ありがとうございました!私は実際に私が実際に理解しているルックアット関数を手に入れました、そして私は幸せにすることができませんでした(誰かがぜひともそれを見たいと思っているなら)。 ピッチ/ヨー/ロール変数に基づいて回転行列を作成することを再試行しましたが、再び失敗したようですが、フリールックカメラのオイラー角を使用しようとしてダンプすることにしました。代わりに、クォータニオンクラスを作成し、そのパスを下る方が幸運かもしれません。それ以外の場合は、球座標としてピッチ/ヨーを使用し、回転には新しい機能のLookAt関数を使用します。 他の誰かが同様の問題に直面していて質問をしたい場合は、遠慮なくお問い合わせください。 助けてくれてありがとう!

3
複数の行列を頂点シェーダーに送信するにはどうすればよいですか?
ボーン/スキニングを使ったアニメーションを練習しています。頂点ごとに1つのマトリックスをシェーダーに送信しようとしています。私はこれら2つのアプローチを考えることができます。 方法1 このように各骨マトリックスに1つの均一なハンドルがあります u_Bone0 = GLES20.glGetUniformLocation(mProgram, "u_Bone[0]"); u_Bone1 = GLES20.glGetUniformLocation(mProgram, "u_Bone[1]"); そして、onDraw私はそれらのそれぞれをシェーダーに送ります: GLES20.glUniformMatrix4fv(u_Bone0, 1, false, matrix0, 0); マトリックスが多数ある場合、これは明らかに良い方法ではありません。リファクタリングするコードがたくさんあるのでまだ試していない私の2番目のアイデア 方法2 を使用しglUniformMatrix4fvてそれらを一度にすべて送信することです(20個の行列があると仮定します) GLES20.glUniformMatrix4fv(u_Bones, 20, false, matrices, 0); はどこmatricesですかfloat[16 * 20]。ただし、各ボーンのマトリックスを変更するのは少し面倒になります。たとえば、3番目の行列を取得する場合、次の行に沿って何かが必要です。 float[] _3rd = Arrays.copy(matrices, 3*16, 4*16); 値を保存すると、さらに煩わしくなります。 私は現在方法1を使用していますが、あまりスマートに見えません... 複数のマトリックスをOpenGL ES 2シェーダーに送信する最良の方法は何ですか? LE:私はAndroidを使用しているので、Javaソリューションを探しています。

2
Javaランタイムに依存せずにデスクトップJavaゲームを配布するにはどうすればよいですか?
Javaアプリケーションを「そのまま」実行するスタンドアロンパッケージに変換することは可能ですか?エンドユーザーは、Java JREをインストールする必要はありません。また、インストーラーにJREが含まれていて、ユーザーのためにインストールする必要もありません。 最終的なディストリビューションには、通常のデータファイルおよび必要に応じて追加のJARとともに、ネイティブ実行可能ファイル(できればWindows、Mac、およびLinuxごとに1つ)が含まれている必要があります。特に「1つのファイル」ソリューションを探しているわけではありません。実際には、データファイルを難読化しないでください。 これはどのように行うことができますか?

2
GOAPシステムでのコストの見積もり
現在、JavaでGOAPシステムを開発しています。GOAPの説明はhttp://web.media.mit.edu/~jorkin/goap.htmlにあります。基本的に、A *を使用して、世界の状態を変化させるアクション間をプロットします。 すべてのアクションと目標を実行するための公正な機会を提供するために、私はヒューリスティック関数を使用して何かを行うコストを見積もります。他のすべてのコストと比較できるように、このコストを見積もる最良の方法は何ですか? 例として、敵から逃げるコストとそれを攻撃するコストの見積もり-コストを比較できるように計算するにはどうすればよいですか?
9 java  ai  path-finding 

2
LAN経由のAndroidリアルタイムマルチプレーヤー[終了]
現在のところ、この質問はQ&A形式には適していません。回答は事実、参考文献、専門知識によって裏付けられると期待していますが、この質問は、議論、議論、投票、または拡張ディスカッションを求める可能性があります。この質問を改善でき、再開できると思われる場合は、ヘルプセンターにアクセスしてください。 7年前休業。 私はAndroidプラットフォーム用にいくつかのゲームを開発しましたが、最初のマルチプレイヤーゲームの作成を計画しています。私が念頭に置いているのは、基本的にはローカルエリア接続/ WiFiを介して2台の電話でプレイできる2プレイヤーゲームの魔女だけです。 両方の電話は、3つの整数値を他の電話にリアルタイムで渡すことができる必要があります。これまでのところ、ソケットを使用することを検討しましたが、深く掘り下げる前に、より良いアプローチがあるかどうかを尋ねたかったのですか? ありがとう!

3
相互に接続している部屋のリストがある場合、どのようにして孤立した部屋グループを見つけるのですか?
私は小さなローグライクを作成しようとしていて、ランダムに生成する部屋と廊下まで行きました。各部屋はインスタンス化されたオブジェクトであり、廊下で接続された他の部屋の配列リストが含まれています。 接続されていない部屋を選別することはできますが、互いに接続されているだけで他のほとんどの部屋には接続されておらず、島を形成している部屋を知るにはどうすればよいですか? ここで問題をよりわかりやすく説明するために、コンソールからの画像をぼんやりとしたレベルにしています。客室5と6は相互にのみ接続されています。それを検出するためにどのようなアルゴリズムを使用できますか?
9 java  algorithm 

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