ゲーム開発

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

4
Unityの新しいUI-GUI要素によって呼び出される機能を動的に変更します
OnClickボタンとOn Value Changedスライダーの値を動的に変更しようとしています 。 これがどのように行われたかを推測する必要がある場合は、button / gui要素への参照を取得します。次に、ボタンスクリプトコンポーネントを取得し、その関数呼び出しのリストにアクセスします。ただし、そのリストを変更する方法がわかりません。誰にもアイデアはありますか? 役立つ可能性のある詳細: 呼び出される関数は、カスタムスクリプトコンポーネントの一部です スライダーに「動的」変数オプションを使用する 動的ボタンの作成に使用できます
17 c#  unity  gui 

1
ゲームに公式の年齢レーティングが必要になるのはいつですか?
ゲームがPEGIやESRBなどの公式または準公式の評価ボードによる評価を受けるのはいつですか?実店舗のほぼすべてで販売されているほとんどすべてのゲームには、年齢ラベルが必要であることを知っています。しかし、ダウンロードまたはブラウザベースのゲームとして世界中に配布されているゲームはどうでしょうか?そのようなゲームのコンテンツ評価を取得する理由はありますか?はいの場合、世界中のだれでもプレイでき、各国が異なる基準を持つ独自のローカル評価システムを持っていることを考慮して、どの評価ボードが評価する必要がありますか?

5
2Dマップで接続された(ただし論理的に異なる)水域を検出するにはどうすればよいですか?
2D六角形のグリッドマップがあります。各六角形セルには、水か海かを判断するために使用される高さの値があります。私は、水域を特定してラベルを付ける良い方法を考えています。海洋と内海は簡単です(洪水充填アルゴリズムを使用)。 しかし、地中海のような水域はどうですか?大きなものに付着している水域(「海」と「湾」は開口部の大きさだけが異なる) ここに私が検出しようとしているものの例があります(画像の中央の青い水域は、技術的に接続されているにもかかわらず、左の大きな海域とは異なるラベルが付けられているはずです): 何か案は?

3
ビットマップの2つのポイント間に直線をどのように描画しますか?
私は高さマップ(ビットマップ)をいじって、自分のゲームで独自のマップを作成しようとしています。そのために、いくつかの基本的な描画メソッドを実装する必要があります。私はすぐに、直線を描くことは思ったほど基本的ではないことに気付きました。 ポイントがX座標またはY座標を共有している場合、または完全に対角線を描くことができるように位置が揃っている場合、それは簡単です。しかし、他のすべての場合では、より複雑です。 「まっすぐな」線になるためにどのピクセルに色を付ける必要があるかを決定するために、どのアルゴリズムを使用しますか?

1
ddx(hlsl)は実際に何をしますか?
私は少し混乱しています。公式ドキュメント(http://msdn.microsoft.com/en-us/library/windows/desktop/bb509588(v=vs.85).aspx)は、ddx(input)が入力の部分的な派生物であると述べています「スクリーン空間のx座標」に。 私の計算は問題ありませんが、入力が何から来ているのかをどのように判断できますか?それに関数を渡した場合、それは何をするか想像できますが、数値の導関数は常にゼロです...? それは単なるスケーリングですか?たとえば、これはこの距離でサイズの10分の1にスケーリングされるため、1/10を返しますか?しかし、その後、それは入力を必要としません... 誰かが実際に何が起こっているのか簡単に説明できますか?
17 hlsl 

1
法線と法線マップ
Assimp Asset Importer(http://assimp.sourceforge.net/lib_html/index.html)を使用して3Dモデルを解析しています。 これまでのところ、メッシュの各頂点に定義されている法線ベクトルを単純に引き出しました。それでも、法線マップに関するさまざまなチュートリアルを見つけました... 法線マップについて理解しているように、法線ベクトルは法線マップの各テクセルに格納されており、これらをシェーダーの法線テクスチャから引き出します。 法線を取得するのに2つの方法があるのはなぜですか?

9
新しいプレーヤーを長年のプレーヤーと効果的に競争させるにはどうすればよいですか?
新しいプレイヤーが私の戦略ゲームに参加するとき、彼らは他のプレイヤーが攻撃するのを3日間保護しますが、それは長い間プレイしているプレイヤーに追いつくのに十分な時間ではありません。 どうすれば解決できますか? 保護時間を延長することを考えましたが、それを行うと、プレーヤーは攻撃せずに進行できなくなります(より速く進行するためにリソースを増やす)。 このゲームは、PHPバックエンドを備えたブラウザベースです。

4
組み合わせることができる多くの異なる攻撃タイプをどのように設計できますか?
トップダウンの2Dゲームを作成しています。さまざまな種類の攻撃が必要です。The Binding of Isaacが機能するように、攻撃を非常に柔軟で組み合わせ可能にしたいと思います。ゲーム内のすべてのグッズのリストを次に示します。良い例を見つけるために、スプーンベンダーのアイテムを見てみましょう。 スプーンベンダーは、Isaacにホーミング涙を放つ能力を与えます。 「相乗効果」セクションを見ると、興味深いが直感的な効果を得るために他の収集品と組み合わせることができることがわかります。たとえば、Inner Eyeと組み合わせると、「Isaacが複数のホーミングショットを一度に発射できるようになります」。これは理にかなっています アイザックにトリプルショットを与える このようなものを設計するのに適したアーキテクチャは何ですか?これがブルートフォースソリューションです。 if not spoon bender and not the inner eye then ... if spoon bender and not the inner eye then ... if not spoon bender and the inner eye then ... if spoon bender and the inner eye then ... しかし、それは非常に早く手に負えなくなります。このようなシステムを設計するより良い方法は何ですか?

1
GLSL Light(減衰、色、強度)の式
ボクセルエンジンにポイントライトを実装していますが、光源の近くで100%から光の半径で0%まで、適切な光の流れを得るのに苦労しています。 関数には5つの引数があります。 明るい色(Vec3) 光の強度(光から減衰が100%になる距離までの距離) ライトからフラグメントまでの距離 ライトに垂直なフラグメントからの角度 ライトの位置 フラグメントの色を計算するための関数を作成するために、誰かが私を正しい方向に押すことができますか? 私の実験の1つの画像: 編集(Byteによって要求された現在のコード)これは私の側からの単なる実験コードであることに注意してください。私はウェブサイトからフロート属性を取得しましたが、それは動作しますが、完璧からはほど遠いです。: void main() { // Light color vec3 torchColor = vec3(1.0f, 1.0f, 1.0f); float lightAdd = 0.0f; for (int i=0; i<5; i++) { vec3 pos = lights[i]; if (pos.x == 0.0f) continue; float dist = distance(vertex_pos, pos); if (dist < 9) …
17 opengl  glsl  lwjgl  lighting  pixel 

2
バックグラウンドミュージックをスムーズに変更する
現在取り組んでいるゲームの5つのサウンドがあります。ゲームでは、大きな戦いで他の文明と戦うことができますが、平和に惑星に定着することもできます。 一部の曲はより暴力的であり、他の曲は非常に穏やかです。問題は、曲を変更するためのベストプラクティスは何かということです。古い曲が終了してから新しい曲を再生するときに「平和かどうか」を確認するか、すべてのフレームを実行してすぐに曲を変更する必要があります。 最初の選択肢は、戦闘中に無音の曲を再生する場合があります(曲は戦闘の前に開始され、まだ終了していないため)。2番目の選択肢は、間違ったタイミングで異なる高速の曲に適切に切り替えて、プレーヤーにカットが聞こえるようにします。 それで、私はプレーヤーにとってより自然なもの、または異なる可能性があるかどうかを知りたいです。 PS:曲の長さは300〜500秒です。
17 music 


2
OpenGL:シェーダーを配置する場所
私はOpenGL ES 2.0を学ぼうとしていますが、シェーダーを「管理」するための最も一般的なプラクティスは何だろうと思っています。 私がこの質問をしているのは、私が見つけた例(Android SDKで提供されているAPIデモに含まれている例など)で、通常、GLRendererクラス内のすべてが表示され、私ができるように物事をかなり分けたいからです。たとえば、OpenGL ES 1.0コードと同じように、テクスチャ付きのクワッドを描画したいときに再利用できるGLImageオブジェクト(現時点では2Dのみに焦点を当てています)。私が見つけたほとんどすべての例で、シェーダーはクラス属性として定義されています。例えば: public class Square { public final String vertexShader = "uniform mat4 uMVPMatrix;\n" + "attribute vec4 aPosition;\n" + "attribute vec4 aColor;\n" + "varying vec4 vColor;\n" + "void main() {\n" + " gl_Position = uMVPMatrix * aPosition;\n" + " vColor = aColor;\n" + "}\n"; public …

2
Mathematicaでの空の色の計算が間違っているのはなぜですか?
この論文(Perezモデル)に基づいて空の色を計算するアルゴリズムを実装しようとしています。シェーダーのプログラミングを始める前に、Mathematicaで概念をテストしたかったのです。私は取り除くことができないいくつかの問題が既にあります。誰かがすでにアルゴリズムを実装しているかもしれません。 私は絶対zenital輝度のための方程式を開始しYz、xzそしてyzなど紙(22ページ)で提案されています。の値はYz妥当なようです。次の図はYz、濁度Tが5の場合の太陽の天頂距離の関数として示しています。 関数gamma(zenith、azimuth、solarzenith、solarazimuth)は、指定された天頂距離と方位角を持つポイントと指定された位置の太陽の間の角度を計算します。この機能も機能しているようです。次の図は、この角度を示しているsolarzenith=0.5とsolarazimuth=0。zenith上から下へ(0からPi / 2へ)azimuth成長し、左から右へ(-PiからPiへ)成長します。太陽の位置をはっきりと見ることができます(輝点、角度はゼロになります): Perez関数(F)と係数は、論文に記載されているとおりに実装されています。その場合、色値Yxyはになりますabsolute value * F(z, gamma) / F(0, solarzenith)。これらの値は[0,1]の範囲内にあると考えています。ただし、これはYコンポーネントの場合ではありません(詳細については、以下の更新を参照してください)。サンプル値は次のとおりです。 {Y, x, y} {19.1548, 0.25984, 0.270379} {10.1932, 0.248629, 0.267739] {20.0393, 0.268119, 0.280024} 現在の結果は次のとおりです。 すべての計算が記載された Mathematicaノートブックはここにあり、PDFバージョンはこちらにあります。 誰も私が論文と同じ結果を得るために何を変更しなければならないか考えていますか? Cのようなコード // this function returns the zenital Y component for // a given solar zenital distance z and turbidity T float …
17 algorithm  sky 

2
六角形のグリッドでタイルのリングを取得
この投稿のおかげで:六角形のタイルとそれらの隣接する隣人を見つける、私は与えられたタイルに隣接するタイルを収集することができます。しかし、オフセットで指定されたタイルの「リング」のみを提供するアルゴリズムにかなりこだわっています。そのStack Overflowポストで与えられたアルゴリズムは、タイルを収集する順序を正確に気にしません。 オフセットごとに6タイルが追加されることを知っています。 オフセット1は、6つのタイル(最初の隣接タイル)を提供します。 オフセット2は12です。 オフセット3は18などです。 オフセットごとに6の一定の成長があります。したがって、これらのオフセットに適応するルールがあるはずだと思います。これを正確に把握することはできません。誰でも?

1
DEJUS評価を取得するプロセス(ブラジル)
FirefoxマーケットプレイスでHTML5ゲームのDEJUSレーティングを取得したいので、ブラジルのユーザーがゲームを利用できるようにMozillaに指示できます。ゲームの評価をLivre(一般)にしたい ブラジル人以外の市民はDEJUSにレーティングをリクエストできますか?その場合、どのドキュメントをどの言語で提供する必要がありますか? 私がこれまでに見つけたもの: 英語の提出フォーム(住所フォームには国フィールドがないため、CPF / CNPJを指定する必要があります) ポルトガル語の手順の説明。 ポルトガル語のプロセスフローチャート。 英語の評価システムの実用ガイド。

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