ゲーム エンジンのコーディングを行っており、頂点、テクスチャ、フォントなどのリソース ベース クラスを作成しています。
現在、Image (テクスチャを使用)、Text (フォントを使用)、Models (頂点を使用) など、これらの基本クラスを使用する別のプログラマーに公開したいいくつかの基本クラスを作成しています。
ゲームエンジンも公開されているので、その関数などを呼び出してゲームをコーディングすることができます。
しかし、私は彼らが基本クラスにアクセスすることを望んでおらず、クラスと競合することも望んでいません。たとえば、彼らはゲーム内で何かのために「Material」という名前のクラスを作成したいかもしれませんが、私のリソースにはすでに「Material」クラスがあります。どうすれば競合を回避でき、さらに良いことに、これらの基本クラスを非表示にすることができますかそれと何かを破る)?
編集:たとえば、公開されたクラスImageがあります。これにはQuadおよびTexture基本クラスのプライベート インスタンスが含まれており、私のリソース マネージャーは常にこれらの 1 つだけが読み込まれるようにします (したがって、メモリ内にテクスチャ/クワッドが重複することはありません)。
テクスチャ自体は幅/高さを持ち、カードにロードされたデータを管理します。Quadについても同じです。
Imageは、画像のサイズ変更が要求されたときに、変更が必要なすべてのものを変更し、データをカードに再アップロードすることを確認します。
TextureとQuadはほとんどどこでも使用されているため公開されています。モジュールとエフェクトを適用するいくつかのクラスがあります。
彼ら(他のプログラマー) はImageをインスタンスとして、継承のために、またはメンバーとして使用できます。クラスの命名にも干渉しないでください。