ゲーム開発

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



4
3Dの手続き型地形:何が行われたか?共通のアルゴリズムや理論はありますか?[閉まっている]
休業。この質問には、より焦点を当てる必要があります。現在、回答を受け付けていません。 この質問を改善してみませんか?質問を更新して、この投稿を編集するだけで1つの問題に焦点を当てます。 5年前休業。 プログラミング以外にも、環境のモデリングにはかなりの時間がかかります。 WoWダンジョンレベルや、その他の美しい都市のような未来の環境、ジャングル、ファンタジーなど、関係する作業時間についてはわかりませんが、この種の作業はアーティストがゼロから作成しています。 TorchLightレベルランダマイザーに含まれる手法は何ですか?他のタイトルはこれと類似していますか?そのような技術に姓はありますか?

2
Bulletを学ぶために、Box2Dの代わりにBulletを2D物理学に使用する価値はありますか?
質問にはこれ以上ありません。どちらも私の目的には問題ないので、オーバーヘッドについては気にしていません。基本的に、Farseer Physics EngineのおかげでBox2Dの概念に精通していますが、3DにジャンプするときにBulletを使用したいと思います。おそらく、Bulletは2Dの領域でも私にいくつかの教育的価値を持っていますか? 質問の一般化されたバージョンは次のとおりです。将来3D物理エンジンを利用する予定がある場合、2Dゲームに3D物理エンジンを使用する必要がありますか?または、これは教育的価値を提供しない時間の無駄ですか?

3
マインクラフトの世界の照明
Minecraftは主に高さマップに基づいており、そのheigtmap情報を使用して世界に光を当てるゲームです。私の理解から、ハイトマップの最高点は太陽光の影響を受けた領域の終わりです。その上にあるものはすべて日光に照らされ、その下にあるものはすべて、半径8ブロックの近くにある光の影響を受けます。 したがって、世界の最上部に浮島がある場合、その下にあるすべてのものは本質的に洞窟と見なされます。2つのライトが同じポイントに影響を与える場合、より明るいライトが優先されます(それについては不明です)。 どちらの方法でも、Minecraftsライティ​​ングモデルにはいくつかの問題があります。まず、世界にハイトマップがない場合、太陽光を放出するはずであるものとそうでないものを正確に把握するのが難しくなります。単純な方法は、世界が(私の場合)浮遊岩であると仮定し、各軸を両方向からトラバースし、岩の始点と終点を理解することです。しかし、岩のへこみが暗闇にあるはずがないので、これは問題を完全に排除しません。 Minecraft自体は、ブロックのマテリアルに関する情報と一緒に、チャンク内のライト情報をキャッシュします。したがって、世界が変更された場合にのみ、照明を更新する必要があります。残念ながら、そのプロセスは、更新やライトの迅速な変更では依然としてかなり遅く、照明の遅れが見られます。これは、多くのブロック(TNT、日没など)が変更され、最速のコンピューター(またはMac上のJava)を実行していない場合に特に当てはまります。 私の3Dグラフィックス照明についてのまだ限られた理解から、Minecraftのような世界は最大の問題ではないはずです。どのように問題に取り組みますか? ボクセルの世界での照明の基本的な要件は 単一フレームで発生する可能性があるほど速く更新します。グラフィックデバイスでライティングを行い、変更されたライト情報をメインRAMにダウンロードできる場合があります。 ライト情報はメインゲームロジックですぐに利用できる必要があるため、グラフィックデバイスに完全に基づいているわけではありません。 ライトの更新はチャンクに対してローカルであるか、他の制限がある必要があるため、サイズが非常に大きい可能性のある世界全体を再ライトする必要はありません。 主なアイデアは、ライトの更新を高速にすることです。必ずしもより美しくする必要はありません。一般的なライトレンダリングのパフォーマンスを向上させるために、SSAOを簡単に追加することができます。
10 opengl  maps  lighting 

2
大きなタイルマップ上のエリアとダンジョンを「ゾーニング」
私のゲームは、疑似無限でランダムに生成される方法で、Minecraftのようなマップを持っています。そして大きい。ユーザーが1000x1000ゾーン(ここでは2D)を探索したとすると、1,000,000タイルになります。 もちろん、すべてをメモリに保存することはできません。また、10タイルまたはすべての半径からすべてを無視したくありません。どちらも更新されず(すべてのNPC、おそらくリアクティブタイル)、1382、12918のような厄介な位置で作業する必要があります。 したがって、チャンクやゾーン、または64x64タイルなどに分割する場合、各タイルとオブジェクトの位置を次のように保存する必要があります。 チャンクa、b。位置x、y。 しかし、マップにダンジョンなどが必要な場合はどうなりますか?つまり、それぞれが40x40の面積を持つ40階のダンジョンにつながる単一のタイルです。それらを同じマップに正確に格納することはできません。 そして、記憶の側面があります。どのくらいの量を同時に合理的に同時にメモリに格納できますか?IDでタイルを簡単に作成でき、そこに通常の2D配列を配置できます。または、タイルタイプのデータファイルよりも効果的な解決策はありますか?したがって、64x64の場合は、20K程度になるでしょう。最も現実的な更新のために、できるだけ多くの環境が読み込まれるようにしたいと思います。しかし、私は、メモリの浪費になることなく、どのような制限に達することができるのかわかりません。

3
グラフのエッジの数を減らし、接続を維持する
私はランダムに生成されたダンジョンでゲームをデザインしています。これを、ノードが部屋であり、エッジがドアまたは廊下である、接続された無向グラフとして表示したいと思います。次に、ダンジョンの入口として「サイド」ノードを選択し、この入口と他のすべてのノードとの間の距離を計算し、最も遠いノードの1つをダンジョンの「ゴール」(宝物、ボス、プリンセスなど)。 最終的なダンジョンの地形を生成する2つの方法を見ました。 最初にランダムグラフを生成し、エッジの接続を尊重して、ランダムな場所にある部屋で2Dワールドを塗りつぶします。部屋の生成が不可能な場所に部屋を適合させようと「ロック」される可能性があるため、これは時々困難になると考えました。 最初の部屋を生成し、それらが収まる場所にランダムに配置してから、結果をノードとエッジにマッピングします。私はこれを試すことにしました。 私の考えは次のとおりです。 最初に、ダンジョン全体を含む大きな部屋を生成します。 大きな部屋の内側のランダムな場所に壁を置き、大きな部屋を異なる面積の2つの小さな部屋に分割します。 次に、部屋が小さすぎるか、部屋の総数が最大(またはその他の条件)に達するまで、各部屋を2つに分割し続けます。新しい部屋はそれぞれノードです。 終了したら、各部屋をチェックして、隣接する他のすべての部屋を見つけ、2つのノードをエッジで接続されているものとしてマークします。 そうすることで、すべての部屋が2Dの世界で可能な場所に配置され、接続されたグラフによって正しくマッピングされるようにします。 私の問題は、部屋をつなぐドアと廊下が多すぎることです。 したがって、接続された無向グラフのエッジの数を減らし、最終的には接続されたまま(すべてのノードが到達可能なまま)のアルゴリズムが必要です。

2
XNAを使用したゲーム内レベルの設計ですか?
ゲーム内レベルのデザインについて知りたいです。私の現在の状況はタイル張りを中心に展開しています-私はさまざまな種類のオブジェクトを含む多くの異なるレイヤーを持っています(タイル張りに詳しくない人にとって、オブジェクトはそれに割り当てられた任意のプロパティを持つ座標にすぎません)。 現在、マップファイルに少し変更を加えるたびにゲームを再コンパイルして、すべてが適切に配置されているかどうかを確認しています。マップファイルの変更が検出された場合、ゲームにレベルを自動的に再ロードさせる方法はありますか?XNAはこれを可能にしますか、それともコンテンツパイプラインの動作が動的コンテンツをそのような方法で許可しないのですか?ヒントや提案は大歓迎です。
10 xna-4.0  tiles 

3
モバイルゲームのグラフィックデザイナーをどこに雇えばいいですか?
私のモバイルゲーム用のカートで一連の2Dグラフィックを作成できる才能のある人を見つける必要があります。私のグラフィックスは印象的ではありませんが、ゲームのプレイはしっかりしていて楽しいです。 これは一種のマルチパートの質問です: どこで誰かを探し始めますか? カスタムスプライトと背景には何を支払う必要がありますか? 完成したアートワークの独占的で使用料無料の所有権を得るには、どのような種類の用語を使用すればよいですか?

3
オンラインボードゲームエンジン[終了]
現在のところ、この質問はQ&A形式には適していません。回答は事実、参考文献、専門知識によって裏付けられると期待していますが、この質問は、議論、議論、投票、または拡張ディスカッションを求める可能性があります。この質問を改善でき、再開できると思われる場合は、ヘルプセンターにアクセスしてください。 7年前休業。 ボードゲームのオンライン実装を作成したいと思います。ゲームを作成して、できるだけ多くの人が簡単にアクセスできるようにするには、どのエンジンを使用できますか? できるだけ広くアクセスできるようにしたいので、個別にダウンロードしたアプリではなく、ブラウザーでユーザーインターフェイスを実行するのが最善です。同様に、単一のプラットフォームに限定されず、クロスプラットフォームである必要があります。純粋なJavaScript / HTMLが最適です。これにより、iPadでも使用できるようになりますが、FlashまたはJavaでもかまいません。Silverlightは市場に浸透しておらず(たとえば、インストールされていません)、XNAは非常に制限されています。 良い他の機能は、優れたチャットとソーシャル機能(または他のチャットまたはソーシャルネットワークシステムとの統合)、リーダーボードまたはトーナメントシステム、およびボットの簡単な統合で、十分な人間のプレーヤーがいない場合にAI対戦相手を提供します。ゲームタイマーも、適切な速度で人々を動かし続けるのに適しています。ゲームの記録を保存し、人々が研究のために記録を再生およびレビューできるようにすることもいいでしょうが、チェスやGoなどのゲーム用の専用エンジンにのみ表示される傾向があるので、あまり期待していません。 フリー/オープンソースソフトウェアであることは大きなプラスになるので、自分で拡張することもできますが、上記の機能を十分に提供したり拡張する手段を提供したりする場合は、クローズドソリューションまたはホステッドソリューションでも構いません。 私のニーズを満たすようなシステムはありますか?または、完全に一致していなくても近いものはありますか? 私のニーズを完全に満たしていないいくつかの同様のシステムには、次のものがあります。 Yahoo GamesはWebベースですが、自分でゲームを作成することはできません(またはそのカテゴリにある類似のサーバーのいずれか)。 Volityは、SVGおよびXMPPに基づいて構築されています。それはオープンソースであり、オープンスタンダードになるように設計されており、ボットなどをサポートしていますが、別途クライアントをダウンロードする必要があり、積極的に開発または使用されていないようです。 SuperDuperGamesは、ターンベースの(メールでプレイする)ゲームを行うためのオープンソースのオンラインシステムです。つまり、それはライブでもリアルタイムでもありませんが、代わりにあなたはあなたの動きを提出し、誰かがそれらを提出するのを翌日かそこら以内に待ちます。活発なコミュニティですが、数週間または数か月ではなく、ライブでゲームをプレイできる場所が欲しいです。

6
2D惑星テクスチャの3Dイリュージョン
数年前、私はユーザーに2Dテクスチャを使用して回転する惑星のような錯覚を与えるテクニックを耳にしました。ユーザーがその位置やビューポートを変更できないと仮定します。 このテクニックの名前は何ですか?
10 2d  3d  terminology  planet 

1
C64ゲームを開発するためのツール
現在、Commodore 64 Gamesを開発するために人々が何を使用しているのか疑問に思っていますか? プログラマーズリファレンスガイドを入手して詳細を確認しましたが、現代では、実際のC64自体で開発を行う必要がないと思いますか? WindowsやMac OS Xで動作するツールの中で、ヘルプやデバッグ機能(エミュレーターに接続するなど)や.d64ディスクイメージへの簡単なパッケージングを提供するIDEに少し似ていますか? 6502アセンブラーが1つの選択された言語ですか、それともC開発が可能ですか?(ここではBASICは無視されます)
10 tools 

1
現実的なゆっくりと降る雪のアルゴリズム?
降雪をシミュレートする優れたアルゴリズムはありますか?特にゆっくりと降る雪に興味があるので、一直線にはならないが少しズレる。多分、小惑星(風のドラフト)、可変サイズなどのシミュレーションも含まれます。実際の雪の動きを模倣したり、ゲームのコンテキストでシミュレーションしたりするアルゴリズムに関する論文や記事はありますか? 特に2Dアルゴリズムに興味がありますが、どのアルゴリズムでも簡単に3Dに変換できると思います。

5
ローグライク迷路生成のための最長経路アルゴリズム
次のように、部屋で構成されたシンプルなグリッドベースのマップがあります(A =入り口、B =出口): 0 1 2 3 ######### 0#B###### ######### 1##### ######### 2### ### 3### ######### 4##### ######### 5 ### A# #### 6 #### ######### そして、プレイヤーが出口を見つける前にマップの大部分を探索しなければならないような方法で、部屋の間にドアのパスを作成するための適切なアルゴリズムを作成しようとするのに行き詰まっています。 つまり、AからBへの可能な最長のパスを見つけようとしています。 (この問題は非循環グラフでも解決できることは承知していますが、この場合は循環が発生する可能性があります。) 編集:塗りつぶしを使用して部屋が接続され、出口が入口から最も遠い部屋として選択されている別の例: 0 1 2 3 ######### 0#B## ##-##### 1#| ## ##### 2 ##### ###-#-### 3#| ### #-####### 4 #A | # ### …

4
シャドウマッピングと透明なクワッド
シャドウマッピングでは、深度バッファーを使用して、シャドウを描画する場所を計算します。 私の問題は、いくつかの半透明のテクスチャクワッドに影を落としてほしいということです。深度値は、表示されている部分だけでなく、すべてのクワッドに設定されるため、クワッドシャドウが投影されますが、これは私が望んでいることではありません。 シャドウマッピングを使用して、透明なクワッドに正しいシャドウをキャストさせるにはどうすればよいですか?

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