Easy3D::CubeMeshRenderer

Uploads CubeMesh data to CNA VertexBuffer/IndexBuffer and issues the draw call.

Overview

The real CNA draw-path adapter (task E3D-MIG-052) — uploads a CubeMeshData once, then issues DrawIndexedPrimitives via a caller-configured BasicEffect, matching CNA's own examples/house3d_demo.cpp pattern. Lives in ../easy-3d, namespace Easy3D.

Header: include/Easy3D/CubeMeshRenderer.hpp. Implementation: src/CubeMeshRenderer.cpp (in ../easy-3d).

API (as used by GalaxyEggbertCNA)

namespace Easy3D {

class CubeMeshRenderer {
public:
    CubeMeshRenderer(Microsoft::Xna::Framework::Graphics::GraphicsDevice& device,
                      const CubeMeshData& mesh);   // uploads once

    void Draw(Microsoft::Xna::Framework::Graphics::GraphicsDevice& device,
               Microsoft::Xna::Framework::Graphics::BasicEffect& effect);
};

}

Used By

GETerrainRenderer owns two instances: one for the static (non-animated) terrain mesh, one for the currently-animated-tile subset, rebuilt only when the animation phase changes.

Roadmap

A billboard-batch equivalent (vertex builder + CNA renderer adapter for Easy3D::BillboardBatch) does not exist yet — tasks E3D-MIG-061 and E3D-MIG-062 in plan.md. This is the main blocker for rendering Blupi and mobile-eggbert objects as sprites.