ゲーム開発

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

1
プレイヤーキャラクターがエリアの内外に出たときに、どのようにフェードアウトできますか?
プレイヤーがエリアから出たときにプレイヤーをフェードアウトさせたい。 たとえば、人が建物に入ったとします。人が建物の外にいるとき、彼は見られるべきではありませんが、彼が入ったとき、彼は徐々に見えます(フェード効果を使用して)。 象が緑のエリア内にいるとき、彼のアルファは1でなければなりません 象が緑のエリアの外にいるとき、彼のアルファは0でなければなりません
17 unity  shaders 

1
Unity 2017.2タイルマップのサイズ制限は何ですか?
Unity 2017.2のタイルマップ機能に関するドキュメントを掘り下げてきました。 Unityは、特定のタイルマップメッシュでサポートするタイルの最大数を制限していますか? 各タイルは1回インスタンス化され、実行時にTilemapメッシュのクワッドをテクスチャリングするために使用されることを知っているので、メッシュクワッドカウントの制限は最終的にハードウェアに依存し、多かれ少なかれ任意に高くなると思います。 それは正しい仮定ですか、それともエンジンにハードキャップがありますか?
17 unity  2d  tilemap 

3
不規則な形状の面積を計算する方法は?
面積を計算する必要があるループ線セグメントのコレクションによって定義された部屋オブジェクトがあります。クラスは次のように記述できます(擬似コードで)。 class Point { float x; float y; ... float distanceFrom(Point p); } class Segment { Point start; Point end; ... float length(); } class Room { List<Segment> walls; ... float area(); } 部屋の壁はどこでも交差することはできませんが、セグメントの端点と作成された「サブループ」も新しい部屋に分離されます。解は完全に正確である必要はなく(10%の誤差が許容されます)、あまり頻繁に計算されません(<1 / s)。

1
Unrealでは、C ++のfloatとFFloat32の違いは何ですか?
私はUE4のより深い側面を学ぼうとしていますが、多くのサンプルコードとエンジンのソースベースを読んでいると、人々(およびソースコード)が標準のC ++ floatプリミティブを使用するが、UE4のカスタム実装を使用することがあることに気付きましたFFloat32。 その後、私は好奇心が強くなりました:Unrealでゲームをプログラミングするとき、これら2つのオプションを使用することの違いは何ですか?また、エンジンの実装を支持して標準C ++プリミティブをドロップすべき主なケースは何ですか?

1
ボタンを押したときに壁にぶつかるプレーヤー
だから、私はトップダウンRPGを作っています。 すべてが順調に進んでいますが、この問題は非常に厄介です。今、キャラクターが壁に向かって移動すると、プレイヤーは前後に揺れます。プレイヤーが壁に移動しようとしているので、壁の衝突がそれを押し戻しているためだと思います。私の質問は、明らかに、これをどうやって止めるのですか? ありがとう! PS:私はtransform.translateを使用してプレーヤーを移動し、C#を使用しています。 編集:私も2D Rigidbodyと2Dboxコライダーの両方を使用しています。
17 unity  c# 

1
オーディオファイルを2倍速でエクスポートすると、ゲームエンジンが半速で再生されるという欠点がありますか?
ゲームのファイルサイズを削減したいのですが、音楽とSFXがかなりの部分を占めています。 120bpmで曲またはサウンドエフェクトを作成し、DAWまたはスタンドアロンプ​​ログラムを使用してテンポとピッチを2倍にした後、新しい倍速オーディオファイルを録音すると、元のファイルサイズの半分になります(曲の長さが半分)。次に、ゲームエンジン(Unity)を使用して240bpmオーディオファイルを半分の速度で再生するので、今では正常に聞こえます。アーチファクトや歪みはありません。 そこで質問があります:半分の速度でプレイするために処理能力のようなものを犠牲にしているのですか?私は半分のサイズのファイルを読み込んでいるので、どこかで何らかのトレードオフが必要になりますか?私は彼らの正しい心の誰もこれをしないだろうと感じていますが、なぜですか?

2
レーシングゲームのドライバーAI
レースゲームでどうやって車をコントロールできるのか興味があります。 AIエージェントは、「0.35でスロットル、0.5でステアリングホイール、0.0でブレーキ」などのコマンドで車を制御する必要がありますか?それとも、車が固執するカーブを事前に計算する必要があります。前輪の回転のようなビジュアルは、すべてが一貫して見えるようにするためのものですか?または、他の方法はありますか?
17 game-design  ai 

3
MBTIなどのパーソナリティシステムをゲームに統合することはどの程度実現可能ですか?
具体的には、インディー開発者がMBTIに似たシステムを実装して、割り当てられたMBTIタイプに応じて、プレイヤーキャラクターのダイアログ、アクション、および選択肢を変更することはどれほど難しいでしょうか? これは、プレイヤーキャラクターの反応の不気味さ、キャラクターが社交イベントに行くことを嫌がる、キャラクターが批評にどれだけうまく反応するかなどに限定される場合があります。 これまたは類似したことを行ったゲームを参照すると役立ちます。 編集:知らない人のために、マイヤーズブリッグスタイプインジケーターは、16(または最後の変数を含む32)を取得するために、5つの変数(最後は通常無視されます)に基づいて誰かの性格を測定する方法です異なる原型。 E xtraversion対I ntroversion決まりますが、他の人との相互作用などの注意の中心であるか、または、一人でいる歩行などの活動を行って、読んで、そしてイントロスペクションによって「エネルギーを取り戻す」場合。 S ensing対I Nのあなたは、事実、統計、および詳細に焦点を当てた実用的なアプリケーションとの考えを好む、または可能性を想像し、自分自身のためのコンセプトを探求し、より深い意味を見ることで、新しい情報を吸収することを好む場合は授業料が決まります。 T hinking対Fのあなたは、ロジック、値の正義を使用して意思決定を行う欠陥を発見し、悪魔の提唱者を再生する、または個人の価値観のベース意思決定楽しみ、より多くの物事がどの程度であればeelingが決定しなければならないこと。 J udging対知覚は、あなたが使用している場合を決定するT / Fはあなた、または周りの世界と対話する属性S / Iは属性。 知覚は、人々が選択肢を開いたままにしておき、事前にではなくその場で外部取引の決定をしたくなる傾向がありますが、判断は計画を立ててそれに固執する傾向があります。 その後、ありますssertive対Tの意思決定に自信を決定urbulentは、。断定的な個人はストレスによる影響が少ないと考えられますが、それはパフォーマンスにそれほど影響を与えないという副作用がありますが、乱流は完全主義、補完主義、パニックに関連しています。 多くの人々がいくつかの変数の中心に近いため、人々を32の異なるカテゴリにきちんと適合させることはできません。左右だけでなく、32の人格の代わりに「中間」の分類もある場合、243になります。 問題のパーソナリティシステムは、マイヤーズブリッグスである必要はなく、実際、著作権上の理由からいくつかの領域でそれから逸脱する必要があります。PCにゲーム内パーソナリティを与える目的は、プレイヤーがプレイヤーをエミュレートできるようにするのではなく、プレイヤーがそれらに関係できるようにするためです。 したがって、このようなシステムをRPGなどのゲームに統合することはどの程度実現可能ですか?
17 ai  character 

1
エディターを使用せずに、Unreal Engineを大きなC ++ライブラリとして使用することは可能ですか?
完全にC ++でゲームを作成したいのですが、特にグラフィックスと物理学の面で、Unreal Engineが提供する可能性から利益を得たいと思います。それにもかかわらず、私はその視覚的なエディターを強く嫌います:私はそれが重く、遅く、直感的でないと思います。最後に、お気に入りのC ++ IDEの代わりにVisual Studioを使用せざるを得ません。 Unreal EngineをC ++プロジェクトに単純に含めることができる大きなライブラリとして使用する方法はありますか、それともUnreal Editorを使用せざるを得ませんか? Unityに関する関連質問:ビジュアルエディターを最小限/使用せずにUnityでゲームをビルドするにはどうすればよいですか?
17 c++  unreal-4  unreal 

2
ゲームデザインのコンテキストで「凸凹」とは何ですか?
私はと呼ばれるものに言及ゲームデザイナー耳にしている凸ゲームでは。これは、ゲームデザイン固有の概念であり、ジオメトリやゲーム理論の概念とは異なります(関連している場合もあります)。残念ながら、定義については言うまでもなく、オンラインで言及している情報源はほとんどありません。私が収集できるものから、それはプレイヤーの選択に関係しています。 それでは、凸性とは何ですか?ゲームではどのように現れますか?それの例、またはそれの欠如は何ですか?それは良いことなのか、悪いことなのか、それとも依存する場合、いつ良いのか、いつ悪いのか?

2
マウスを動かすと、スプライトプレーヤーの動きが速くなるのはなぜですか?
Pygame(Pythonライブラリ)で作られたシンプルなゲームを開発しようとしています。 のspriteオブジェクトがあり、player矢印キーを使用して移動します。マウスを動かさないと、スプライトは普通に動きますが、マウスを動かすと、スプライトは速く動きます(x2やx3など)。playerオブジェクトが内部にあるcharsGroupVAR。 ゲームをW7とUbuntuで実行しました。両方のOSで同じことが起こります。 NPCや弾丸のように動くエンティティがもっとありますが、影響を受けるのはプレイヤーだけです。これを考えると、問題はおそらくプレイヤーの移動システム(矢印キー)と直接関係があると思います。 オブジェクトのupdate()メソッドは次のplayerとおりです。 def update(self): for event in pygame.event.get(): key = pygame.key.get_pressed() mouseX, mouseY = pygame.mouse.get_pos() if event.type == pygame.MOUSEBUTTONDOWN: self.bulletsGroup.add(Bullet(pygame.image.load("bullet.png"), self.rect.x + (self.image.get_width()/2), self.rect.y + (self.image.get_height()/2), mouseX, mouseY, 50, 50)) if key[pygame.K_RIGHT]: if not self.checkCollision(): self.rect.x += 10 else: self.rect.x -= 10 if key[pygame.K_LEFT]: if not self.checkCollision(): …

11
RTSゲームの新規プレイヤー向けの公正な戦闘システム
この投稿を改善したいですか?引用や回答が正しい理由の説明など、この質問に対する詳細な回答を提供します。十分な詳細のない回答は、編集または削除できます。 機能分析の後に開発したいマルチプレイヤーゲームのアイデア/コンセプトに取り組んでいますが、まだ新しいプレイヤーと既存のプレイヤーの間に適切で公平な戦闘システムを実装する方法を考えています。 プレイヤーは、マップ上の任意の場所に1回、新しい村/町を作成できます(これが重要です!)。プレイヤーがお互いを攻撃できる攻撃期間がありますが、より進歩したプレイヤーが初心者を攻撃して成長を妨げる可能性を制限したいと思います。たとえば、部族戦争は、より進歩したプレイヤーからさらに離れた新しい村を作成することでこれを行います。私の場合、ユーザーはマップ上の任意の場所に自分の町を作成できるため、すべてのプレイヤーに公平なソリューションを探しています。 私が考えた他のゲームで使用されている戦闘システムのいくつかの例: ルーンスケープ 荒野では、戦闘レベルの特定のレベル範囲内のプレーヤーを攻撃できます。範囲は、現在の戦闘レベルを取得し、現在の荒野レベルを加算または減算することにより計算されます。 部族戦争 すべての新しいプレーヤーには、前のプレーヤーからの境界で新しい村が割り当てられます。そのため、年長の長いプレーヤーが中心にいますが、新しいプレーヤーは遠ざかっています。戦闘システムは2つの村の間の距離に基づいているため、古いプレイヤーが新しいプレイヤーを攻撃したい場合、それらのプレイヤーを攻撃して報酬を少なくするためにかなり長い時間がかかります。

1
フォン照明-鏡面照明には非常に奇妙なものがあります
Phongライティングを実装しました。トーラスと球体は予想どおりに点灯するなど、すべてが機能しているように見えます。しかし、指向性ライトの鏡面照明に関して奇妙なことに気付きます。 以下に2つのスクリーンショットを示します。 最初: 第二: ご覧のように、カメラがオブジェクトから遠い場合、より多くの領域に鏡面照明があります。 以下は、単純化された頂点シェーダーです。 #version 330 core layout(location = 0) in vec3 vertexPos; layout(location = 1) in vec3 vertexNorm; layout(location = 2) in vec2 vertexUV; uniform mat4 MVP; uniform mat4 M; out vec2 fragmentUV; out vec3 fragmentNormal; out vec3 fragmentPos; void main() { fragmentUV = vertexUV; fragmentNormal = …


4
コード全体で1回限りのフラグとチェックを回避するにはどうすればよいですか?
Hearthstoneなどのカードゲームを検討してください。 多種多様なことを行う何百ものカードがあり、そのうちのいくつかは単一のカードにさえユニークです!例えば、プレイヤーのターンをわずか15秒に短縮するカード(Nozdormuと呼ばれる)があります! このようなさまざまな潜在的な効果がある場合、コード全体でマジックナンバーと1回限りのチェックを回避するにはどうすればよいですか?PlayerTurnTimeクラスの「Check_Nozdormu_In_Play」メソッドをどのように回避できますか?そして、さらに多くの効果を追加するときに、以前はサポートする必要がなかったものをサポートするためにコアシステムをリファクタリングする必要がないように、どのようにコードを編成できますか?

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