3つの変数を保持するRenderObjectというクラスがあります。位置、ポイントされた配列の長さを保持するint、および「Faces」の配列へのポインターです。
Faceは、そのタイプ(四角形または三角形)、色、および頂点の配列(Vector3fとして格納されている)へのポインターを保持する単なるクラスです。
私のRenderObjectクラスには、位置、面の配列、および配列内の面の数であるintを必要とするコンストラクターがあります。
Cubeというクラスもあります。これはRenderObjectから派生しています(幅、高さ、奥行きの寸法の立方体を簡単に生成できます。
問題は、Cubeのコンストラクターは位置と次元のみを必要とするため、デフォルトのコンストラクターを呼び出す場合は次のようになります。
Cube::Cube( sf::Vector3f *positionVector, float width, float height, float depth ) : RenderObject( positionVector, /*can't supply this*/, 6 ) {
CubeクラスがGenerateFaces()を実行しているため、面の配列を渡すことができません。寸法に応じて面を自動的に作成します。
だから私の質問は、生成された面をRenderObjectのコンストラクターに渡すにはどうすればよいですか?それとも、これを行うためのより良い方法はありますか?