mirror of
https://github.com/Blinue/Magpie.git
synced 2026-06-24 02:04:10 +00:00
refactor: 只在程序启动时创建一次 D3D Device
This commit is contained in:
parent
f102a9ba4b
commit
8cd2f5afd8
15 changed files with 313 additions and 258 deletions
|
|
@ -89,7 +89,7 @@ ComPtr<ID3D11Texture2D> LoadImg(const wchar_t* fileName) {
|
|||
return nullptr;
|
||||
}
|
||||
|
||||
switch (App::GetInstance().GetRenderer().GetFeatureLevel()) {
|
||||
switch (Renderer::GetInstance().GetFeatureLevel()) {
|
||||
case D3D_FEATURE_LEVEL_10_0:
|
||||
case D3D_FEATURE_LEVEL_10_1:
|
||||
if (width > 8192 || height > 8192) {
|
||||
|
|
@ -130,7 +130,7 @@ ComPtr<ID3D11Texture2D> LoadImg(const wchar_t* fileName) {
|
|||
initData.SysMemPitch = stride;
|
||||
|
||||
ComPtr<ID3D11Texture2D> result;
|
||||
hr = App::GetInstance().GetRenderer().GetD3DDevice()->CreateTexture2D(&desc, &initData, &result);
|
||||
hr = Renderer::GetInstance().GetD3DDevice()->CreateTexture2D(&desc, &initData, &result);
|
||||
if (FAILED(hr)) {
|
||||
SPDLOG_LOGGER_ERROR(logger, MakeComErrorMsg("CreateTexture2D 失败", hr));
|
||||
return nullptr;
|
||||
|
|
@ -144,7 +144,7 @@ ComPtr<ID3D11Texture2D> LoadDDS(const wchar_t* fileName) {
|
|||
|
||||
DirectX::DDS_ALPHA_MODE alphaMode = DirectX::DDS_ALPHA_MODE_STRAIGHT;
|
||||
HRESULT hr = DirectX::CreateDDSTextureFromFileEx(
|
||||
App::GetInstance().GetRenderer().GetD3DDevice().Get(),
|
||||
Renderer::GetInstance().GetD3DDevice().Get(),
|
||||
fileName,
|
||||
0,
|
||||
D3D11_USAGE_DEFAULT,
|
||||
|
|
@ -161,7 +161,7 @@ ComPtr<ID3D11Texture2D> LoadDDS(const wchar_t* fileName) {
|
|||
|
||||
// 第二次尝试,不作为渲染目标
|
||||
hr = DirectX::CreateDDSTextureFromFileEx(
|
||||
App::GetInstance().GetRenderer().GetD3DDevice().Get(),
|
||||
Renderer::GetInstance().GetD3DDevice().Get(),
|
||||
fileName,
|
||||
0,
|
||||
D3D11_USAGE_DEFAULT,
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue