ライブラリ「entityx」(https://github.com/alecthomas/entityx)をダウンロードしてC++プロジェクトで使用しました。私のプロジェクトでEntityXを使用するには?
私は新しいプロジェクトを作成しました。プロジェクトのインクルードディレクトリに置いた "entityx"というフォルダを取得しました。 「entityx」で、私はconfig.h
にconfig.h.in
を変更し、私はその後、私はファイルをインクルードする./includeレパートリーに見て私のプロジェクトを構成し
static const size_t MAX_COMPONENTS = 64;
typedef double TimeDelta;
で2つのcmakeの行を置き換えます。私はうまく働いた#include "entityx/entityx.h"
を含め、その後、私は新しい世界をこのように作成しました:
entityx::EntityX* world = new entityx::EntityX();
しかし、今回はそれがコンパイルされませんでした、それは言って、コンストラクタライン上quick.h
に私をリダイレクトします。
undefined reference to entityx::EventManager::EventManager()
を
undefined reference to entityx::EntityManager::EntityManager(entityx::EventManager&)
などあなたがgithubの上で見ることができるように、コンストラクタが存在し、ファイルが含まれていますが、私はコンパイルエラーを得なかっました。
これはどこから来たのでしょうか?
ライブラリはヘッダーのみではありません。あなたは実際にそれを作りましたか? – ildjarn
ああ、まあいいえ、私はそれをどうやって行うのかわからない、私はコンパイルしなければならなかったライブラリを一度も使用していない。これは、Githubでの操作方法についてはほとんど説明されていませんが、Windowsでは何も説明されていません。私はCMakeをインストールしようとしましたが(ソースフォルダにはbtw、フォルダ全体を取るか、またはentityxかmabe cmakeしか必要ないのですか?)、エラーが出ます。他の方法はありますか? – Urefeu
[this](https://github.com/skypjack/entt)が役に立つかもしれません。 [EnTT](https://github.com/skypjack/entt)はクリーンなインターフェイスを備えた、高速のヘッダーのみのECSライブラリです。ベンチマークは上記のリンクと[ここ](https://github.com/)で見つけることができます。 abeimler/ecs_benchmark);すぐに_master_サポートが中止されるため、あなたは_experimental_ブランチを利用することをお勧めします。 –