Does anyone have any recommendations/advice on decoupling game objects from directx? For example my current game object looks like so
struct MyGameObject
{
void CreateDeviceDependentResources(ComPtr<ID2D1DeviceContext> const & renderTarget)
{
// Create Device Specific stuff like brush my game object wants to use
}
void CreateDeviceIndependentResources(ComPtr<ID2D1Factory2> const & factory)
{
// Create Brush Stroke Style
}
void Render(ComPtr<ID2D1DeviceContext> const & renderTarget)
{
renderTarget->DrawLine(...)
}
}