ゲーム開発

プロおよび独立系ゲーム開発者向けのQ&A

3
加速度が制限されているオブジェクトのパスを計算するにはどうすればよいですか?
たとえば、車があり、車に特定の最小回転半径があり、その車を点aから点bまで運転したいが、車が点bに向いていないとします。ポイントbへのパスを計算するにはどうすればよいですか?ポイントbで方向を指定できることも良いでしょう(たとえば、私道に車を運転してからガレージに車を引き込みたいとします-芝生の上をドライブして車道に着いたとしても、あまり役に立ちません。横向きです:) ドキュメントへのポインタ(または名前だけでも)は完全に問題ありません-私は何も見つけることができません。 私の試みでは、それらは単純なケースで機能しますが、ポイントbが最小回転半径よりもaに近い場合などの状況では無残に失敗します。 たとえば、次のようなパス(太字のパス)をどのように決定しますか。 編集:私の実際の問題では、いくつかの単純なパスの制約がありますが、私はすでに機能しているA *アルゴリズムを用意していますが、それは瞬間的な方向変更を可能にするので、車が突然90°回転するのを見るのはばかげているように見えます彼らが転換点に到達したとき、ダイムで。

4
UnityでC#6コードがコンパイルされないのはなぜですか?
UnityがC#6コードで動作しないのはなぜですか?常にコンパイラエラーが発生します。以下にいくつかのコード例を示します。 using static System.Convert; using static System.Environment; $"€{punten}{NewLine}€{Money}{NewLine}€{KilledEnemies}{NewLine}€{bonus}{NewLine}€{total}"; コードエディターとしてVisual Studioを使用し、エラーなしでビルドしています。Unityで再生を押してもビルドされません。
9 unity  c# 

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
チュートリアルなしでゲームをより直観的にするにはどうすればよいですか?
私は現在、モバイルゲームアプリに取り組んでいます。ゲームは、さまざまな種類の鳥が飛んで着陸するいくつかの枝を持つ木を詳述します。すべての鳥の体重は異なります。ユーザーの目的は、枝が分かれる前に木の両側で体重のバランスをとることです。ゲームのスクリーンショットを添付しました。チュートリアルを行わなくても、ゲームのコンセプトをユーザーにわかりやすくする方法について誰かが提案してくれることを願っています。次に、スクリーンショットを見て、ゲームの目的についてどのように推測しますか。3番目に、ユーザーが実際に電話を動かしてツリーを保存できるようにするために、ツリーに曲げ機能を追加したいと思っていましたが、ピクセルアートでデザインを作成すると問題が発生します。 ありがとうございました、

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
地形生成のためのOctreeの構築
以前にマーチングキューブ/四面体を実装して、IsoSurfaceをレンダリングしました。これは機能しましたが(YouTube)、ビューの距離に基づいて可変の詳細レベルを実装する(または古い、遠いチャンクを削除する)ことを回避できなかったため、パフォーマンスは悲惨でした。 今回はもう一度やってみることにしました。Build()が呼び出されたときに次のように機能するOctreeNodeを作成することから始めました。 チャンクが小さすぎてビルドできない場合は、すぐに戻ります。 サーフェスがこのチャンクのボリュームを通過する場合は、ワークアウトしてください。 その場合は、LODを上げるかどうかを決定します(カメラが近いため)。 その場合、8つの子を生成し、同じプロセスを呼び出します そうでない場合は、現在のノードの寸法を使用してメッシュを構築します いくつかのPseudoCode: OctNode Build() { if(this.ChunkSize < minChunkSize) { return null; } densityRange = densitySource¹.GetDensityRange(this.bounds); if(densityRange.min < surface < densityRange.max) { if(loDProvider.DesiredLod(bounds)² > currentLoD) { for(i 1 to 8) { if(children[i] == null) { children[i] = new OctNode(...) } children[i] = children[i].Build(); } } …
9 unity  c#  voxels  octree 

1
ResolutionException:com.google.android.gms:play-services-games:8.1+の候補アーティファクトが見つかりません
このエラーを取得する: EditorAssemblies.ProcessEditorInitializeOnLoad(System.Type type)(at C:/buildslave/unity/build/Editor/Mono/EditorAssemblies.cs:123)Rethrow as TargetInvocationException:例外が呼び出しのターゲットによってスローされました。System.Reflection.MonoCMethod.Invoke(System.Object obj、BindingFlags invokeAttr、System.Reflection.Binderバインダ、System.Object []パラメータ、System.Globalization.CultureInfoカルチャ)(/ Users / builduser / buildslave / mono-runtime- and-classlibs / build / mcs / class / corlib / System.Reflection / MonoMethod.cs:519)System.Reflection.MonoCMethod.Invoke(BindingFlags invokeAttr、System.Reflection.Binderバインダ、System.Object []パラメータ、System.Globalization .CultureInfoカルチャ)(/Users/builduser/buildslave/mono-runtime-and-classlibs/build/mcs/class/corlib/System.Reflection/MonoMethod.cs:528)System.Reflection。 これを解決するには?

3
レイトレーシングにおけるBRDFおよび球座標
標準のフォン/ブリンフォン照明モデルを使用するレイトレーサーを開発しました。物理ベースのレンダリングをサポートするように変更しているので、さまざまなBRDFモデルを実装しています。現在、私はOren-NayarとTorrance-Sparrowモデルに集中しています。これらはそれぞれ、入射wiおよび出射wo光の方向を表すために使用される球面座標に基づいています。 私の質問は次のとおりです。wiとwoをデカルト座標から球座標に変換する正しい方法はどれですか。 私はここで報告された標準の公式を適用していますhttps://en.wikipedia.org/wiki/Spherical_coordinate_system#Coordinate_system_conversions 私のベクトルが原点の尾にないので、私が正しいことをしているのかわかりませんデカルト座標系ですが、光線とオブジェクトの交点を中心とします。 ここに私の現在の実装を見つけることができます: https://github.com/chicio/Multispectral-Ray-tracing/tree/brdf/RayTracing/RayTracer/Objects/BRDF https://github.com/chicio/Multispectral-Ray-tracing/blob/brdf/RayTracing/RayTracer/Math/Vector3D.cpp 誰かがwiとwoのベクトルをデカルト座標から球座標に変換する正しい方法の説明を手伝ってくれる? 更新 ここにコードの関連部分をコピーします。 球面座標計算 float Vector3D::sphericalTheta() const { float sphericalTheta = acosf(Utils::clamp(y, -1.f, 1.f)); return sphericalTheta; } float Vector3D::sphericalPhi() const { float phi = atan2f(z, x); return (phi < 0.f) ? phi + 2.f * M_PI : phi; } オーレンナヤル OrenNayar::OrenNayar(Spectrum<constant::spectrumSamples> reflectanceSpectrum, float …

1
デュアルコンターリング-特徴点の検索、法線オフ
このチュートリアルに従って、デュアルコンタリングを実装してい ますhttp://www.sandboxie.com/misc/isosurf/isosurfaces.html 私のデータソースはグリッド16x16x16です。私はこのグリッドを下から上、左から右、近くから遠くまで行き来しています。 グリッドのインデックスごとに、キューブ構造を作成します。 public Cube(int x, int y, int z, Func<int, int, int, IsoData> d, float isoLevel) { this.pos = new Vector3(x,y,z); //only create vertices need for edges Vector3[] v = new Vector3[4]; v[0] = new Vector3 (x + 1, y + 1, z); v[1] = new Vector3 (x …
9 c#  geometry 

2
ゲームを実行するための最低PC要件を決定する方法
UE4(4.9.2バージョン)で最初のゲームを作成し、それを公開したいと思います。しかし、ゲームを実行するための最低限の環境を特定する方法が本当にわかりません。私はファイル->パッケージプロジェクト->ウィンドウを介してゲームを構築しています。 1)最低限必要なDirectXバージョンを確認するにはどうすればよいですか? 2)(actuallビルドは別として)インストーラーに含める必要がある他のdllを確認するにはどうすればよいですか?たとえば、VC再頒布可能パッケージをインストールする必要がありますか?もしそうなら、どれですか?同じことはdirectxにも当てはまります。 3)Windowsの最小バージョンを確認するにはどうすればよいですか?これは、DirectXの互換性によって制限されますよね?ゲームがDirectX10以上で実行されている場合、direct10以上のすべてのOSバージョンで問題ありませんか? 4)これは馬鹿げた質問のように思えるかもしれませんが、どのバージョン64または32ビットでゲームを配布する必要がありますか?誰でも正しく実行できるため、32は常に優れていますか? あなたの答えをありがとう;)

1
四面体の外接円を見つけるにはどうすればよいですか?
4つの3Dポイントが与えられた場合の四面体外接円の中心座標と半径を見つけるために最も最小化された方程式を探しています。 私がインターネットで見つけたものは、主に平らな3D三角形の外接球、またはいくつかの大まかな数学的定義、または通常の四面体などの非常に単一のケースを扱っています。とにかく私は下の方程式を見つけることができましたが、私は何かを逃しました: -> -> -> let d1, d2, and d3 three vectors of any face of the triangle : | d1x d1y d1z | | x | | d1^2 | 2 * | d2x d2y d2z | * | y | = | d2^2 | | d3x d3y d3z | …
9 3d  sphere 

2
「リーダー」プレーヤーをキックする投票をどうやって行うのですか?
私のゲームには、10人程度の部屋がたくさんあり、そこで競争します。それは基本的に他の9人の小さな人に対して大きな男です。 ただし、1人の男が意図的に「荒らし」、他の9人の不愉快なゲームになることがあります。これらの人々は、1人の男を蹴って他の9人に置き換えたいと考えています。 満場一致で投票する必要がある場合(キックされる男以外)、彼はゲームに1人の友人しかいないため、投票は成立しません。同様に、全会一致のマイナス1をした場合、2人の友人が投票を中止する可能性があります。 小さな部屋に問題があります。部屋に2〜3人しかいない場合、1人の男性が他の人を簡単に蹴ることができます。 部屋に何人いるかに応じて、部屋から誰かを蹴るのに必要な最適な投票について調査は行われましたか?

1
スプライトシートの一部を手動で描画するにはどうすればよいですか?
Unityで作業していますが、2Dゲームで、アニメータが自分がやろうとしていることに対して機能していないことがわかりました。スプライトシートを使用して特定のアニメーションを構築し、同じアニメーションを、セルごとに同じサイズとサイズである他のスプライトで再利用したい。調査の結果、不可能だとわかりました。 代わりに、独自のアニメーションスクリプトを作成しようとしていますが、Unityにスプライトのセクションのみを描画するように指示する方法がわかりません。XNAのようなもので、開始座標と終了座標を使用してスプライトの特定の四角形のみをレンダリングできます。 スプライトシートの一部を手動で描画するにはどうすればよいですか?

2
Unity 5でUI画像のマウスオーバーを検出する方法は?
移動してズームインおよびズームアウトするように設定した画像があります。問題は、ズームはシーンのどこからでも実行できることですが、マウスを画像の上に置いたときにのみズームしたいのです。OnMouseEnter、OnMouseOver、イベントトリガー、コライダーなし、コライダー付き、トリガーコライダー付きの3つすべて、および画像自体と空のゲームオブジェクトでそれらすべてを使用しようとしました。しかし、それらのどれもうまくいっていません...だから私は絶対に困惑しています...誰かがここで助けてくれませんか! これが私のスクリプトです: private float zoom; public float zoomSpeed; public Image map; public float zoomMin; public float zoomMax; void Update () { zoom = (Input.GetAxis("Mouse ScrollWheel") * Time.deltaTime * zoomSpeed); map.transform.localScale += new Vector3(map.transform.localScale.x * zoom, map.transform.localScale.y * zoom, 0); Vector3 scale = map.transform.localScale; scale = new Vector3(Mathf.Clamp(map.transform.localScale.x, zoomMin, zoomMax), Mathf.Clamp(map.transform.localScale.y, …
9 unity  c#  gui  image  mouse 

3
OpenGLでビデオファイルを再生するにはどうすればよいですか?
ムービーファイルをロードしてOpenGLアプリケーションで再生できるライブラリはありますか?または、誰かがうそをついているコードサンプルだけですか?それが違いを生むなら、私もGLUTを使用しています。私の映画は現在AVI形式ですが、ファイル形式は問題ではないと思います。
9 opengl  video 

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