タグ付けされた質問 「c++」

C ++は、静的に型付けされた自由形式のマルチパラダイムでコンパイルされた汎用プログラミング言語です。

1
STLを使用してC ++でゲームの保存ファイル形式を作成する方法
STLのI / Oの部分、具体的にはfstreamについて学びました。ハードドライブに作成したバイナリ情報とクラスを保存できるようになりましたが、情報の読み取り方法を定義する方法がわかりません。 [this] [1]の投稿からファイル形式を作成するための答えを見つけました: 通常、BITMAPINFOHEADERなどの多数のレコード/構造を定義し、それらが来る順序、それらをどのようにネストするかを指定します。また、多くのインデックスとルックアップテーブルを作成する必要がある場合があります。このようなファイルは、多数のレコード(たぶん寄り添う)、ルックアップテーブル、マジックワード(構造の開始、構造の終了などを示す)、およびカスタム定義の形式の文字列で構成されます。 特に私が知りたいのは、STLとC ++でこれを行う方法です... このフォーマットは単にゲームを使用するためのものなので、はるかに簡単だと思います。形式は次のとおりです。 トラバース可能であること(私はそれを見て、構造の開始点を見つけ、名前を確認することができます 1つのファイルに複数のクラスとデータを保持できる テキストファイル内のスペースなど、セクションの開始と終了を識別できる 多分それを表す独自のアイコンがあるのでしょうか? C ++でこれを行うにはどうすればよいですか?

2
キャラクターアニメーションライブラリ[終了]
閉まっている。この質問はトピックから外れています。現在、回答を受け付けていません。 この質問を改善してみませんか? 質問を更新して、ゲーム開発スタック交換のトピックになるようにします。 2年前休業。 ゲームエンジンに含めることができるキャラクターアニメーションライブラリを探しています。 私はFOSSを好みますが、価格がリーズナブルな場合は有料です。 したがって、私が見つけたのはCal3dです。 他のオプションは何ですか? Havokの無料バンドルに含まれるHavok Animationにも興味があります。これについて何か考えはありますか?
7 c++  animation 

2
SFML / C ++での要素のアニメーションの改善
これは個々のキャラクターや要素をアニメーション化することではありません。そのためのスプライトシートに満足しています。私が探しているのは、画面上の要素のアニメーションです。 たとえば、私のゲームが始まり、ロゴがランダムな方向から飛んで来て、それから回転するか何かで1つの位置で止まると、ゲームキャラクター(1人以上)が横から来て何らかのアクションを実行します。 私はまだ多くのプロジェクトを行っていません。完全なゲームを1つだけ書いたので、質問に正しく答えたかどうかわかりません。 私がやっていることは、要素に最初と最後の位置を与え、それに応じて要素を動かし、ステータスフラグを使用してその状態をチェックすることです。問題は、複数の方法で移動したい場合です。もちろん、状態変数を使用して移動させることもできますが、そのためのエレガントな方法が必要だと考えていました 編集:私は、World of Gooなどのアニメーションを見ています。
7 c++  animation  sfml 

4
ゲームプログラミングを学習コンテキストとして使用するC / C ++の学習/学習資料はありますか?[閉まっている]
閉まっている。この質問はトピックから外れています。現在、回答を受け付けていません。 この質問を改善してみませんか? 質問を更新して、ゲーム開発スタック交換のトピックになるようにします。 4年前休業。 ほとんどのゲームプログラミングは完了しているので(このサイトで読む)、C / C ++で、特にゲームプログラミングを対象とするC / C ++の学習/学習資料があるかどうか疑問に思いました。 私は「ゲームの開発」や「ゲームのソフトウェアアーキテクチャ」に関する資料を探しているのではなく、C / C ++機能、イディオム、プログラミング手法などを導入および説明するためのCONTEXTとして「ゲームプログラミング」を使用する資料を探しています。 類義語:デザインパターンに関するGOFの本を考えてください。そこでは、デザインパターンを導入するためのコンテキストとして「テキストエディターの開発」を使用しましたが、この本は「テキストエディターの開発」に関する本ではありません。 編集:本には、独自のテクノロジーに依存しないコード例が含まれている必要があります(例:DirectXではなくOpenGL、特定の商用コンパイラーを必要とせずにgccに知られているCの方言などを使用する必要があります)。 お時間とアドバイスをよろしくお願いします! PS:私のバックグラウンド:私はOOスクリプト言語での確かな経験と、Cおよびアセンブラー(AVRマイクロコントローラー)での経験が少ししかないプログラマーなので、初心者向けのチュートリアルではなく、中級から上級レベルの資料を考えています。他に何も利用できない場合は、後者を調べるのは興味深いかもしれません。

3
ジョイスティック/ゲームパッドの構成はどのように標準化されていますか?
現在、ゲームの入力に取り組んでいます。 私が所有する唯一のコントローラーはXBOX 360コントローラーです。 私が見ることができることから、コントローラーのスティックにZ軸がある場合、これらは実際にはトリガーです。 基本的に、あるコントローラーから次のコントローラーまで、これは一貫しているのでしょうか?

4
C ++のWavefront * .objローダー
OpenGL(SDL経由)とC ++(Visual Studios 2010 Professional経由)を使用してゲームを作成しています。ゲーム中は3Dキャラクターアニメーションを使用します。すべての3Dモデル(地形を除く)にwavefront * .objファイルを使用したいと思います。キャラクターは、250〜500フレーム(歩行、ランニング、全力疾走、ジャンプ、しゃがみ、這うなど)で、滑らかな動き(リアル)を持っている必要があります。md2またはmd3を使用したいのですが、使用する3Dモデリング/アニメーションツール(Blender 3D 2.57)はどちらもサポートしていません。ゲームはWindowsでのみ実行されます。 私が必要としているのは、アニメーションをサポートする小さくてパワフルな* .objローダーとパーサーです。C ++で記述され、SDLで使用できる必要があります。 ありがとう Blenderがエクスポートできるすべてのファイル形式を確認した後...デフォルトのキューブをエクスポートすると、最小のファイル形式が生成されるため、3DSを使用することにしました。3DSを推奨してくれて@Danielに感謝!
7 c++  opengl  animation  sdl 

2
Irrlichtでマルチサンプリングを有効にしますか?
Irrlichtを使用する小さなゲームに取り組んでいます。私はIrrlichtにかなり慣れていないので、どうすればマルチサンプリングを有効にできるのかと思っていました。デバイスドライバーは次のようにEDT_OPENGL開始されます。 IrrlichtDevice *device = createDevice(video::EDT_OPENGL, core::dimension2d<u32>(800, 700), 16, NO); マルチサンプリングを有効にするにはどうすればよいですか?

3
コンポーネントベースのエンティティシステムAPIの命名の問題
私のエンジンはコンポーネントベースのエンティティシステムを内部で使用しており、スクリプト用にLuaにバインドしたいと考えています。 今、私はそれをタイピングするためのスクリプトを書く人々を救いたいと思います。C ++では、エンティティの位置を設定するには、次のようにします。 pEntity->GetComponent< CPoint >()->SetPos( Vector( X, Y ) ); つまり、Lua 1:1にバインドする場合は、次のことも行う必要があります。 ent:GetComponent( CP_POINT ):SetPos( 123, 456 ) しかし、正直に言って、エンティティの位置を設定するためだけに多くの文字を入力しますか? 私はそうは思わない、それが私がLuaからコンポーネントシステムを「隠した」理由です。 今、あなたがしていることは ent:SetPos( 123, 456 ) コンポーネントのものは内部的に処理されます。ent:AddComponentやent:RemoveComponentなどを使用して、Luaのコンポーネントを手動で追加および削除することもできます。 今、これも完璧ではないようです: エンティティメタテーブルは、すべてのコンポーネントのすべての機能を実行する必要があるため、乱雑になります ネーミングの問題:ent:SetJointMotorEnabled()やはりちょっと悪いようです スクリプトの快適性を危険にさらすことなく、コンポーネント関数のより良い命名体系をどのように見つけることができるかについてのアイデアはありますか?

2
プレーヤーの座標を追跡するためにフォグをどのように設定しますか?
プレイヤーの座標にフォグを設定することが可能かどうか(プレイヤーの周りにフォグがあり、それをよりサードパーソンにすることができるか)疑問に思う主な理由は、プレイヤーの右上隅に向かっているためです。スクリーン ここに私があなたに何をしているのかのガイドを与えることができるいくつかのコードがあります: glEnable(GL_FOG) GLfloat FogColor[] = {0.8,0.8,0.8,1.0}; glFogfv(GL_FOG_COLOR,FogColor); glFogi(GL_FOG_MODE,GL_LINEAR); glFogf(GL_FOG_START,30); glFogf(GL_FOG_END,); glHint(GL_FOG_HINT,GL_NICEST); そして私は霧が言ったような位置でプレイヤーを追跡したいです posX,posY,posZ 誰かがこれを非常に役立ついくつかのサンプルコードに変えることができるなら、ありがとう これが不可能な場合は、カメラの特定の位置の周囲に霧を設定するにはどうすればよいですか。たとえば、中央ではなく、カメラの右上隅に表示します。 これがゲーム画面の写真なので、私が話していることを確認できます。
7 opengl  c++  rendering 

5
グラフィックモジュール:私は正しい方向に進んでいますか?
エンジンのグラフィックスモジュールを記述しようとしています。つまり、コードのこの部分は、画像、フォントなどをロードして画面に描画するためのインターフェースのみを提供します。また、私が使用しているライブラリ(この場合はSDL)のラッパーでもあります。 これがImage、FontとGraphicsRendererクラスのインターフェースです。私が正しい方向に進んでいるかどうか教えてください。 画像 class Image { public: Image(); Image(const Image& other); Image(const char* file); ~Image(); bool load(const char* file); void free(); bool isLoaded() const; Image& operator=(const Image& other); private: friend class GraphicsRenderer; void* data_; }; フォント class Font { public: Font(); Font(const Font& other); Font(const char* file, int ptsize); ~Font(); …

6
タイルマップ構造の2D配列の代替
長い間探していたところ、この質問がまだ出されていないことに驚いています。2Dタイルマップゲームでは、マップをどのように処理しますか?私はC ++の実装にもっと興味がありますが、どの言語でもあなたの見解を示していただければ幸いです。 2D配列、2Dベクトル、座標を処理するアドホックコンピューティングでリンクリストを処理するクラス、boost :: matrix ...?どのソリューションを使用していますか。その理由は何ですか。

2
滑らかな地形レンダリング
Direct3Dで滑らかな地形をレンダリングしようとしています。すべてのy値が0の50 * 50グリッドと、グリッド上の位置と「谷」または「丘」の深さまたは高さを示す一連の3Dポイントがあります。各3Dポイントにどれだけ近いかによって、グリッドの頂点のy値を高くしたり低くしたりする必要があります。したがって、最終的にはスムーズなテレインレンダラーが必要です。 どうすればいいのかよくわかりません。次の基本的な式を使用して、各ポイントまでの距離に基づいて頂点の高さを変更してみました。 dist = sqrt(a² + b² + c²) ここで、a、b、cは、頂点から3D点までのx、y、z距離です。私がこれで得た結果はまったくスムーズではありません。 おそらくもっと良い方法があると思います。 ここに私が今持っているもののスクリーンショットがあります:https : //dl.dropbox.com/u/2562049/terrain.jpg

1
Luaを静的にリンクされたlibとして実行する場合とスタンドアロンのインタープリターとして実行する場合の大幅な速度低下
私はLuaでいくつかのアルゴリズムを開発しています。これらは主にLuaで実行され(C ++への呼び出しはほとんどありません)、デフォルトのLuaインタープリターではなくアプリから実行すると、大幅な速度低下に気づきます。スクリプトはインタプリタで約11秒、プログラムで約5 分以上で戻ります。 C ++関数の呼び出しに問題があるとは思わない。スクリプト内の空の関数でその関数を無効にしても、時間に対する顕著な影響はない。 Luaとプログラムの両方がVisual Studio 2010でコンパイルされている(私はLuaの新しいソリューションを作成し、インタープリターと静的ライブラリの両方のプロジェクトを作成しました) 私はコードでプロファイラーを実行しました(Very SleepyプロファイラーはLuaプロファイラーを動作させることはできませんが、あまり試みていません)。私のアプリケーションでは、時間の約50%がmallocに費やされています。両方ともLuaガベージコレクターから呼び出され、40%が無料です(これをチェックして無効にしようとしましたが、大量のメモリを使用すると(当然)、Luaインタープリターが約4MBのRAM使用率でピークします)。 私はLuaの初心者なので、どこかで何か間違ったことをした可能性があります。誰かがいくつかのヒントを試してみましたか?
7 c++  lua 

4
オンラインリーダーボードのコーディングはどこから始めますか?
私は決してC ++であらゆる種類のネットワークコードを実行したことはありません。存在するライブラリすら知りませんが、私のゲームに対する一般的な需要はオンラインリーダーボードです... では、どのような種類のライブラリを調査する必要がありますか? 私のゲームはマルチプラットフォーム(win、gnu、mac)で、C ++、ClanLib 1.0、Luaを使用しています。また、エンジンはzlibです(そのため、ソースをリリースできない独自のものは機能しません)


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