#include "Render/RenderSystemDX7.h" #include "Render/DeviceOwnerDX7.h" #include "Render/SurfaceDX7.h" #include "Render/TextureDX7.h" #include // OFFSET: 0x0056B5F0 // FUNCTION: fn_02318 CSurface* CRenderSystemDX7::CreateSurface(std::uint32_t width, std::uint32_t height) { return new (std::nothrow) CSurfaceDX7(*this->m_device, static_cast(width), static_cast(height)); } // OFFSET: 0x0056B680 // FUNCTION: fn_02319 CTexture* CRenderSystemDX7::CreateTexture( std::uint32_t width, std::uint32_t height, std::int32_t format, bool /*option1*/, bool /*option2*/ ) { return new (std::nothrow) CTextureDX7( *reinterpret_cast(this->m_device), static_cast(width), static_cast(height), format ); } // OFFSET: 0x0056B710 // FUNCTION: fn_02320 CSurface* CRenderSystemDX7::CreateSurfaceOrTexture(std::uint32_t width, std::uint32_t height) { if (this->m_device->SupportsTextureDimensions(width, height)) { return new CTextureDX7( *reinterpret_cast(this->m_device), static_cast(width), static_cast(height), 0 ); } return new CSurfaceWallpaperDX7( *this->m_device, static_cast(this->m_device->width), static_cast(this->m_device->height) ); } // OFFSET: 0x0056B7C0 // FUNCTION: fn_02321 HRESULT CRenderSystemDX7::Close() { delete this->m_defaultTexture; this->m_defaultTexture = nullptr; this->m_backBuffer.reset(); return this->m_device->Close(); } // OFFSET: 0x0056B870 // FUNCTION: fn_02322 void CRenderSystemDX7::DestroySurface(CSurface* surface) { delete surface; } // OFFSET: 0x0056B880 // FUNCTION: fn_02323 void CRenderSystemDX7::UpdateOption() { if (this->m_device) { const bool trilinear = (this->m_device->caps.dpcTriCaps.dwTextureFilterCaps & D3DPTFILTERCAPS_LINEARMIPLINEAR) != 0; (void)trilinear; } } // OFFSET: 0x0056C290 // FUNCTION: fn_02332 std::int32_t CRenderSystemDX7::Backend() { return 1; } // OFFSET: 0x0056C2A0 // FUNCTION: fn_02333 std::uint32_t CRenderSystemDX7::Width() { return this->m_device->width; }