From c9c03b2d48ecd9fca44337fa786e3f854b8498f9 Mon Sep 17 00:00:00 2001 From: Turanszki Janos Date: Sat, 7 Mar 2020 19:25:30 +0000 Subject: [PATCH] removed some macro use --- Editor/AnimationWindow.cpp | 2 +- Editor/CameraWindow.cpp | 2 +- Editor/DecalWindow.cpp | 2 +- Editor/EmitterWindow.cpp | 2 +- Editor/EnvProbeWindow.cpp | 2 +- Editor/ForceFieldWindow.cpp | 2 +- Editor/HairParticleWindow.cpp | 2 +- Editor/LightWindow.cpp | 2 +- Editor/MaterialWindow.cpp | 2 +- Editor/MeshWindow.cpp | 2 +- Editor/ObjectWindow.cpp | 2 +- Editor/PostprocessWindow.cpp | 2 +- Editor/RendererWindow.cpp | 2 +- Editor/SoundWindow.cpp | 2 +- Editor/WeatherWindow.cpp | 2 +- WickedEngine/CommonInclude.h | 12 +++----- WickedEngine/wiEmittedParticle.cpp | 10 ++----- WickedEngine/wiGraphicsDevice_DX12.cpp | 38 ++++++++++---------------- WickedEngine/wiRenderer.cpp | 26 +++++++----------- WickedEngine/wiResourceManager.cpp | 4 +-- WickedEngine/wiScene.cpp | 2 +- WickedEngine/wiScene.h | 16 +++++------ WickedEngine/wiVersion.cpp | 2 +- WickedEngine/wiWidget.cpp | 4 +-- WickedEngine/wiWidget.h | 2 +- 25 files changed, 60 insertions(+), 86 deletions(-) diff --git a/Editor/AnimationWindow.cpp b/Editor/AnimationWindow.cpp index ed489d453..7fa02e658 100644 --- a/Editor/AnimationWindow.cpp +++ b/Editor/AnimationWindow.cpp @@ -99,7 +99,7 @@ AnimationWindow::~AnimationWindow() animWindow->RemoveWidgets(true); GUI->RemoveWidget(animWindow); - SAFE_DELETE(animWindow); + delete animWindow; } void AnimationWindow::Update() diff --git a/Editor/CameraWindow.cpp b/Editor/CameraWindow.cpp index 93599e797..a66bec60f 100644 --- a/Editor/CameraWindow.cpp +++ b/Editor/CameraWindow.cpp @@ -146,7 +146,7 @@ CameraWindow::~CameraWindow() { cameraWindow->RemoveWidgets(true); GUI->RemoveWidget(cameraWindow); - SAFE_DELETE(cameraWindow); + delete cameraWindow; } void CameraWindow::SetEntity(Entity entity) diff --git a/Editor/DecalWindow.cpp b/Editor/DecalWindow.cpp index 80bc65fdc..7828ddc4c 100644 --- a/Editor/DecalWindow.cpp +++ b/Editor/DecalWindow.cpp @@ -39,7 +39,7 @@ DecalWindow::~DecalWindow() { decalWindow->RemoveWidgets(true); GUI->RemoveWidget(decalWindow); - SAFE_DELETE(decalWindow); + delete decalWindow; } void DecalWindow::SetEntity(Entity entity) diff --git a/Editor/EmitterWindow.cpp b/Editor/EmitterWindow.cpp index b2feb1293..e87444c65 100644 --- a/Editor/EmitterWindow.cpp +++ b/Editor/EmitterWindow.cpp @@ -424,7 +424,7 @@ EmitterWindow::~EmitterWindow() { emitterWindow->RemoveWidgets(true); GUI->RemoveWidget(emitterWindow); - SAFE_DELETE(emitterWindow); + delete emitterWindow; } void EmitterWindow::SetEntity(Entity entity) diff --git a/Editor/EnvProbeWindow.cpp b/Editor/EnvProbeWindow.cpp index 75cfb4be1..06060781b 100644 --- a/Editor/EnvProbeWindow.cpp +++ b/Editor/EnvProbeWindow.cpp @@ -75,7 +75,7 @@ EnvProbeWindow::~EnvProbeWindow() { envProbeWindow->RemoveWidgets(true); GUI->RemoveWidget(envProbeWindow); - SAFE_DELETE(envProbeWindow); + delete envProbeWindow; } void EnvProbeWindow::SetEntity(Entity entity) diff --git a/Editor/ForceFieldWindow.cpp b/Editor/ForceFieldWindow.cpp index 0111622f0..64f991d61 100644 --- a/Editor/ForceFieldWindow.cpp +++ b/Editor/ForceFieldWindow.cpp @@ -118,7 +118,7 @@ ForceFieldWindow::~ForceFieldWindow() { forceFieldWindow->RemoveWidgets(true); GUI->RemoveWidget(forceFieldWindow); - SAFE_DELETE(forceFieldWindow); + delete forceFieldWindow; } void ForceFieldWindow::SetEntity(Entity entity) diff --git a/Editor/HairParticleWindow.cpp b/Editor/HairParticleWindow.cpp index 046de3d40..715380c79 100644 --- a/Editor/HairParticleWindow.cpp +++ b/Editor/HairParticleWindow.cpp @@ -159,7 +159,7 @@ HairParticleWindow::~HairParticleWindow() { hairWindow->RemoveWidgets(true); GUI->RemoveWidget(hairWindow); - SAFE_DELETE(hairWindow); + delete hairWindow; } void HairParticleWindow::SetEntity(Entity entity) diff --git a/Editor/LightWindow.cpp b/Editor/LightWindow.cpp index 3e068aa2a..ae8d2941a 100644 --- a/Editor/LightWindow.cpp +++ b/Editor/LightWindow.cpp @@ -295,7 +295,7 @@ LightWindow::~LightWindow() { lightWindow->RemoveWidgets(true); GUI->RemoveWidget(lightWindow); - SAFE_DELETE(lightWindow); + delete lightWindow; } void LightWindow::SetEntity(Entity entity) diff --git a/Editor/MaterialWindow.cpp b/Editor/MaterialWindow.cpp index 4ea47d751..7dd7b81b1 100644 --- a/Editor/MaterialWindow.cpp +++ b/Editor/MaterialWindow.cpp @@ -760,7 +760,7 @@ MaterialWindow::~MaterialWindow() { materialWindow->RemoveWidgets(true); GUI->RemoveWidget(materialWindow); - SAFE_DELETE(materialWindow); + delete materialWindow; } diff --git a/Editor/MeshWindow.cpp b/Editor/MeshWindow.cpp index 91063ae7f..9913056d2 100644 --- a/Editor/MeshWindow.cpp +++ b/Editor/MeshWindow.cpp @@ -231,7 +231,7 @@ MeshWindow::~MeshWindow() { meshWindow->RemoveWidgets(true); GUI->RemoveWidget(meshWindow); - SAFE_DELETE(meshWindow); + delete meshWindow; } void MeshWindow::SetEntity(Entity entity) diff --git a/Editor/ObjectWindow.cpp b/Editor/ObjectWindow.cpp index fb4ce6ed7..2c25cc232 100644 --- a/Editor/ObjectWindow.cpp +++ b/Editor/ObjectWindow.cpp @@ -581,7 +581,7 @@ ObjectWindow::~ObjectWindow() { objectWindow->RemoveWidgets(true); GUI->RemoveWidget(objectWindow); - SAFE_DELETE(objectWindow); + delete objectWindow; } diff --git a/Editor/PostprocessWindow.cpp b/Editor/PostprocessWindow.cpp index d3d4c1489..60a9e7fa2 100644 --- a/Editor/PostprocessWindow.cpp +++ b/Editor/PostprocessWindow.cpp @@ -342,5 +342,5 @@ PostprocessWindow::~PostprocessWindow() { ppWindow->RemoveWidgets(true); GUI->RemoveWidget(ppWindow); - SAFE_DELETE(ppWindow); + delete ppWindow; } diff --git a/Editor/RendererWindow.cpp b/Editor/RendererWindow.cpp index 075ddd633..0e385422d 100644 --- a/Editor/RendererWindow.cpp +++ b/Editor/RendererWindow.cpp @@ -570,7 +570,7 @@ RendererWindow::~RendererWindow() { rendererWindow->RemoveWidgets(true); GUI->RemoveWidget(rendererWindow); - SAFE_DELETE(rendererWindow); + delete rendererWindow; } UINT RendererWindow::GetPickType() diff --git a/Editor/SoundWindow.cpp b/Editor/SoundWindow.cpp index a5c5370a7..55ccd0073 100644 --- a/Editor/SoundWindow.cpp +++ b/Editor/SoundWindow.cpp @@ -162,7 +162,7 @@ SoundWindow::~SoundWindow() { soundWindow->RemoveWidgets(true); GUI->RemoveWidget(soundWindow); - SAFE_DELETE(soundWindow); + delete soundWindow; } diff --git a/Editor/WeatherWindow.cpp b/Editor/WeatherWindow.cpp index 26272b77a..ea1222add 100644 --- a/Editor/WeatherWindow.cpp +++ b/Editor/WeatherWindow.cpp @@ -453,7 +453,7 @@ WeatherWindow::~WeatherWindow() { weatherWindow->RemoveWidgets(true); GUI->RemoveWidget(weatherWindow); - SAFE_DELETE(weatherWindow); + delete weatherWindow; } void WeatherWindow::Update() diff --git a/WickedEngine/CommonInclude.h b/WickedEngine/CommonInclude.h index 042690b36..c410b0bb2 100644 --- a/WickedEngine/CommonInclude.h +++ b/WickedEngine/CommonInclude.h @@ -10,14 +10,10 @@ #include using namespace DirectX; using namespace DirectX::PackedVector; - -#define arraysize(a) (sizeof(a) / sizeof(a[0])) -#define ALIGN_16 void* operator new(size_t i){return _mm_malloc(i, 16);} void operator delete(void* p){_mm_free(p);} -#define SAFE_DELETE(a) {delete (a);(a)=nullptr;} -#define SAFE_DELETE_ARRAY(a) {delete[](a);(a)=nullptr;} -#define GFX_STRUCT struct alignas(16) -#define NOMINMAX - static const XMFLOAT4X4 IDENTITYMATRIX = XMFLOAT4X4(1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1); +#define arraysize(a) (sizeof(a) / sizeof(a[0])) +#define NOMINMAX +#define ALIGN_16 void* operator new(size_t i){return _mm_malloc(i, 16);} void operator delete(void* p){_mm_free(p);} + #endif //WICKEDENGINE_COMMONINCLUDE_H diff --git a/WickedEngine/wiEmittedParticle.cpp b/WickedEngine/wiEmittedParticle.cpp index 0fada85f4..a544e9acc 100644 --- a/WickedEngine/wiEmittedParticle.cpp +++ b/WickedEngine/wiEmittedParticle.cpp @@ -91,14 +91,10 @@ void wiEmittedParticle::CreateSelfBuffers() // Distance buffer: bd.StructureByteStride = sizeof(float); bd.ByteWidth = bd.StructureByteStride * MAX_PARTICLES; - float* distances = new float[MAX_PARTICLES]; - for (uint32_t i = 0; i < MAX_PARTICLES; ++i) - { - distances[i] = 0; - } - data.pSysMem = distances; + std::vector distances(MAX_PARTICLES); + std::fill(distances.begin(), distances.end(), 0.0f); + data.pSysMem = distances.data(); wiRenderer::GetDevice()->CreateBuffer(&bd, &data, &distanceBuffer); - SAFE_DELETE_ARRAY(distances); data.pSysMem = nullptr; // SPH Partitioning grid indices per particle: diff --git a/WickedEngine/wiGraphicsDevice_DX12.cpp b/WickedEngine/wiGraphicsDevice_DX12.cpp index 6f27585a0..5a5ed5a71 100644 --- a/WickedEngine/wiGraphicsDevice_DX12.cpp +++ b/WickedEngine/wiGraphicsDevice_DX12.cpp @@ -1073,7 +1073,7 @@ using namespace DX12_Internal; } GraphicsDevice_DX12::DescriptorAllocator::~DescriptorAllocator() { - SAFE_DELETE_ARRAY(itemsAlive); + delete[] itemsAlive; } D3D12_CPU_DESCRIPTOR_HANDLE GraphicsDevice_DX12::DescriptorAllocator::allocate() { @@ -1790,8 +1790,8 @@ using namespace DX12_Internal; samplerRange.OffsetInDescriptorsFromTableStart = D3D12_DESCRIPTOR_RANGE_OFFSET_APPEND; { - uint32_t descriptorRangeCount = 3; - D3D12_DESCRIPTOR_RANGE* descriptorRanges = new D3D12_DESCRIPTOR_RANGE[descriptorRangeCount]; + const uint32_t descriptorRangeCount = 3; + D3D12_DESCRIPTOR_RANGE descriptorRanges[descriptorRangeCount]; descriptorRanges[0].RangeType = D3D12_DESCRIPTOR_RANGE_TYPE_CBV; descriptorRanges[0].BaseShaderRegister = 0; @@ -1814,8 +1814,8 @@ using namespace DX12_Internal; - uint32_t paramCount = 2 * (SHADERSTAGE_COUNT - 1); // 2: resource,sampler; 5: vs,hs,ds,gs,ps; - D3D12_ROOT_PARAMETER* params = new D3D12_ROOT_PARAMETER[paramCount]; + const uint32_t paramCount = 2 * (SHADERSTAGE_COUNT - 1); // 2: resource,sampler; 5: vs,hs,ds,gs,ps; + D3D12_ROOT_PARAMETER params[paramCount] = {}; params[0].ParameterType = D3D12_ROOT_PARAMETER_TYPE_DESCRIPTOR_TABLE; params[0].ShaderVisibility = D3D12_SHADER_VISIBILITY_VERTEX; params[0].DescriptorTable.NumDescriptorRanges = descriptorRangeCount; @@ -1884,13 +1884,10 @@ using namespace DX12_Internal; } hr = device->CreateRootSignature(0, rootSigBlob->GetBufferPointer(), rootSigBlob->GetBufferSize(), IID_PPV_ARGS(&graphicsRootSig)); assert(SUCCEEDED(hr)); - - SAFE_DELETE_ARRAY(descriptorRanges); - SAFE_DELETE_ARRAY(params); } { - uint32_t descriptorRangeCount = 3; - D3D12_DESCRIPTOR_RANGE* descriptorRanges = new D3D12_DESCRIPTOR_RANGE[descriptorRangeCount]; + const uint32_t descriptorRangeCount = 3; + D3D12_DESCRIPTOR_RANGE descriptorRanges[descriptorRangeCount]; descriptorRanges[0].RangeType = D3D12_DESCRIPTOR_RANGE_TYPE_CBV; descriptorRanges[0].BaseShaderRegister = 0; @@ -1912,8 +1909,8 @@ using namespace DX12_Internal; - uint32_t paramCount = 2; - D3D12_ROOT_PARAMETER* params = new D3D12_ROOT_PARAMETER[paramCount]; + const uint32_t paramCount = 2; + D3D12_ROOT_PARAMETER params[paramCount]; params[0].ParameterType = D3D12_ROOT_PARAMETER_TYPE_DESCRIPTOR_TABLE; params[0].ShaderVisibility = D3D12_SHADER_VISIBILITY_ALL; params[0].DescriptorTable.NumDescriptorRanges = descriptorRangeCount; @@ -1942,9 +1939,6 @@ using namespace DX12_Internal; } hr = device->CreateRootSignature(0, rootSigBlob->GetBufferPointer(), rootSigBlob->GetBufferSize(), IID_PPV_ARGS(&computeRootSig)); assert(SUCCEEDED(hr)); - - SAFE_DELETE_ARRAY(descriptorRanges); - SAFE_DELETE_ARRAY(params); } @@ -2355,7 +2349,7 @@ using namespace DX12_Internal; if (pInitialData != nullptr) { uint32_t dataCount = pDesc->ArraySize * std::max(1u, pDesc->MipLevels); - D3D12_SUBRESOURCE_DATA* data = new D3D12_SUBRESOURCE_DATA[dataCount]; + std::vector data(dataCount); for (uint32_t slice = 0; slice < dataCount; ++slice) { data[slice] = _ConvertSubresourceData(pInitialData[slice]); @@ -2372,11 +2366,9 @@ using namespace DX12_Internal; uint8_t* dest = textureUploader.allocate(static_cast(RequiredSize), D3D12_TEXTURE_DATA_PLACEMENT_ALIGNMENT); UINT64 dataSize = UpdateSubresources(static_cast(copyCommandList.Get()), internal_state->resource.Get(), - textureUploader.resource.Get(), textureUploader.calculateOffset(dest), 0, dataCount, data); + textureUploader.resource.Get(), textureUploader.calculateOffset(dest), 0, dataCount, data.data()); } copyQueueLock.unlock(); - - SAFE_DELETE_ARRAY(data); } if (pTexture->desc.BindFlags & BIND_RENDER_TARGET) @@ -3647,11 +3639,11 @@ using namespace DX12_Internal; desc.BlendState.RenderTarget[i].RenderTargetWriteMask = _ParseColorWriteMask(pBlendStateDesc.RenderTarget[i].RenderTargetWriteMask); } - D3D12_INPUT_ELEMENT_DESC* elements = nullptr; + std::vector elements; if (pso->desc.il != nullptr) { desc.InputLayout.NumElements = (uint32_t)pso->desc.il->desc.size(); - elements = new D3D12_INPUT_ELEMENT_DESC[desc.InputLayout.NumElements]; + elements.resize(desc.InputLayout.NumElements); for (uint32_t i = 0; i < desc.InputLayout.NumElements; ++i) { elements[i].SemanticName = pso->desc.il->desc[i].SemanticName; @@ -3665,7 +3657,7 @@ using namespace DX12_Internal; elements[i].InstanceDataStepRate = pso->desc.il->desc[i].InstanceDataStepRate; } } - desc.InputLayout.pInputElementDescs = elements; + desc.InputLayout.pInputElementDescs = elements.data(); desc.NumRenderTargets = 0; desc.DSVFormat = DXGI_FORMAT_UNKNOWN; @@ -3765,8 +3757,6 @@ using namespace DX12_Internal; HRESULT hr = device->CreateGraphicsPipelineState(&desc, IID_PPV_ARGS(&newpso)); assert(SUCCEEDED(hr)); - SAFE_DELETE_ARRAY(elements); - pipelines_worker[cmd].push_back(std::make_pair(pipeline_hash, newpso)); pipeline = newpso.Get(); } diff --git a/WickedEngine/wiRenderer.cpp b/WickedEngine/wiRenderer.cpp index c2eeaf034..2d7fc4cce 100644 --- a/WickedEngine/wiRenderer.cpp +++ b/WickedEngine/wiRenderer.cpp @@ -298,11 +298,11 @@ unordered_map frameCullings; vector pendingMaterialUpdates; -GFX_STRUCT Instance +struct Instance { - XMFLOAT4A mat0; - XMFLOAT4A mat1; - XMFLOAT4A mat2; + XMFLOAT4 mat0; + XMFLOAT4 mat1; + XMFLOAT4 mat2; XMUINT4 userdata; inline void Create(const XMFLOAT4X4& matIn, const XMFLOAT4& colorIn = XMFLOAT4(1, 1, 1, 1), float dither = 0, uint32_t subInstance = 0) volatile @@ -330,14 +330,12 @@ GFX_STRUCT Instance userdata.z = 0; userdata.w = 0; } - - ALIGN_16 }; -GFX_STRUCT InstancePrev +struct InstancePrev { - XMFLOAT4A mat0; - XMFLOAT4A mat1; - XMFLOAT4A mat2; + XMFLOAT4 mat0; + XMFLOAT4 mat1; + XMFLOAT4 mat2; inline void Create(const XMFLOAT4X4& matIn) volatile { @@ -356,12 +354,10 @@ GFX_STRUCT InstancePrev mat2.z = matIn._33; mat2.w = matIn._43; } - - ALIGN_16 }; -GFX_STRUCT InstanceAtlas +struct InstanceAtlas { - XMFLOAT4A atlasMulAdd; + XMFLOAT4 atlasMulAdd; InstanceAtlas(){} InstanceAtlas(const XMFLOAT4& atlasRemap) @@ -375,8 +371,6 @@ GFX_STRUCT InstanceAtlas atlasMulAdd.z = atlasRemap.z; atlasMulAdd.w = atlasRemap.w; } - - ALIGN_16 }; diff --git a/WickedEngine/wiResourceManager.cpp b/WickedEngine/wiResourceManager.cpp index 1c442684f..a983414cf 100644 --- a/WickedEngine/wiResourceManager.cpp +++ b/WickedEngine/wiResourceManager.cpp @@ -17,10 +17,10 @@ wiResource::~wiResource() switch (type) { case wiResource::IMAGE: - SAFE_DELETE(texture); + delete texture; break; case wiResource::SOUND: - SAFE_DELETE(sound); + delete sound; break; }; } diff --git a/WickedEngine/wiScene.cpp b/WickedEngine/wiScene.cpp index d18a1b51e..598412d26 100644 --- a/WickedEngine/wiScene.cpp +++ b/WickedEngine/wiScene.cpp @@ -325,7 +325,7 @@ namespace wiScene bd.ByteWidth = (uint32_t)(stride * indices.size()); device->CreateBuffer(&bd, &InitData, &indexBuffer); - SAFE_DELETE_ARRAY(gpuIndexData); + delete[] gpuIndexData; } diff --git a/WickedEngine/wiScene.h b/WickedEngine/wiScene.h index 07fb8f366..f134862ce 100644 --- a/WickedEngine/wiScene.h +++ b/WickedEngine/wiScene.h @@ -614,19 +614,19 @@ namespace wiScene // Non-serialized attributes: - GFX_STRUCT ShaderBoneType + struct ShaderBoneType { - XMFLOAT4A pose0; - XMFLOAT4A pose1; - XMFLOAT4A pose2; + XMFLOAT4 pose0; + XMFLOAT4 pose1; + XMFLOAT4 pose2; inline void Store(const XMMATRIX& M) { XMFLOAT4X4 mat; XMStoreFloat4x4(&mat, M); - pose0 = XMFLOAT4A(mat._11, mat._21, mat._31, mat._41); - pose1 = XMFLOAT4A(mat._12, mat._22, mat._32, mat._42); - pose2 = XMFLOAT4A(mat._13, mat._23, mat._33, mat._43); + pose0 = XMFLOAT4(mat._11, mat._21, mat._31, mat._41); + pose1 = XMFLOAT4(mat._12, mat._22, mat._32, mat._42); + pose2 = XMFLOAT4(mat._13, mat._23, mat._33, mat._43); } inline XMMATRIX Load() const { @@ -637,8 +637,6 @@ namespace wiScene pose0.w, pose1.w, pose2.w, 1 ); } - - ALIGN_16 }; std::vector boneData; wiGraphics::GPUBuffer boneBuffer; diff --git a/WickedEngine/wiVersion.cpp b/WickedEngine/wiVersion.cpp index 488001e67..714a8364c 100644 --- a/WickedEngine/wiVersion.cpp +++ b/WickedEngine/wiVersion.cpp @@ -9,7 +9,7 @@ namespace wiVersion // minor features, major updates const int minor = 38; // minor bug fixes, alterations, refactors, updates - const int revision = 3; + const int revision = 4; long GetVersion() diff --git a/WickedEngine/wiWidget.cpp b/WickedEngine/wiWidget.cpp index 5f3f330d2..aa5331b83 100644 --- a/WickedEngine/wiWidget.cpp +++ b/WickedEngine/wiWidget.cpp @@ -654,7 +654,7 @@ wiSlider::wiSlider(float start, float end, float defaultValue, float step, const } wiSlider::~wiSlider() { - SAFE_DELETE(valueInputField); + delete valueInputField; } void wiSlider::SetValue(float value) { @@ -1473,7 +1473,7 @@ void wiWindow::RemoveWidgets(bool alsoDelete) gui->RemoveWidget(x); if (alsoDelete) { - SAFE_DELETE(x); + delete x; } } diff --git a/WickedEngine/wiWidget.h b/WickedEngine/wiWidget.h index 4cbbaed47..eb16ec233 100644 --- a/WickedEngine/wiWidget.h +++ b/WickedEngine/wiWidget.h @@ -182,7 +182,7 @@ protected: // width of the head of the slider that can be grabbed: float headWidth = 16; - wiTextInputField* valueInputField; + wiTextInputField* valueInputField = nullptr; public: // start : slider minimum value // end : slider maximum value