diff --git a/DXE/App.cpp b/DXE/App.cpp index d70bc5f..36ddf2c 100644 --- a/DXE/App.cpp +++ b/DXE/App.cpp @@ -359,10 +359,10 @@ bool App::Initialize() { mScene = std::make_unique(md3dDevice.Get(), mClientWidth, mClientHeight); mScene->initScene(); - float modelScale = 4.5; + float modelScale = 0.1; float ww2Scale = 10.11; DirectX::XMStoreFloat4x4(&mScene->getObjectInfos()["ww2.obj"]->World, DirectX::XMMatrixScaling(ww2Scale, ww2Scale, ww2Scale)); - //DirectX::XMStoreFloat4x4(&mScene->getObjectInfos()["castle.obj"]->World, DirectX::XMMatrixScaling(modelScale, modelScale, modelScale)); + //DirectX::XMStoreFloat4x4(&mScene->getObjectInfos()["sponza.obj"]->World, DirectX::XMMatrixScaling(modelScale, modelScale, modelScale)); //DirectX::XMStoreFloat4x4(&mScene->getObjectInfos()["area"]->World, DirectX::XMMatrixScaling(1,1,1) * DirectX::XMMatrixRotationRollPitchYaw(0, MathUtils::Pi / 2.0,0) * DirectX::XMMatrixTranslation(50, 60, 40) ); diff --git a/DXE/App.h b/DXE/App.h index 2529824..b063537 100644 --- a/DXE/App.h +++ b/DXE/App.h @@ -150,7 +150,7 @@ class App : public Core { struct ImguiParameters { std::vector LightPos; std::vector l2pos = { 20,10,10 }; - std::vector groundpos = { 0,3,0 }; + std::vector groundpos = { 0,-100,0 }; }mImguiPara; diff --git a/DXE/Assets/Model.cpp b/DXE/Assets/Model.cpp index cc4e977..f6f9804 100644 --- a/DXE/Assets/Model.cpp +++ b/DXE/Assets/Model.cpp @@ -146,10 +146,10 @@ void Model::buildGeometryAssimp(){ - ThrowIfFailed(D3DCreateBlob(vbByteSize, VertexBufferCPU.GetAddressOf())); - CopyMemory(VertexBufferCPU->GetBufferPointer(), vertices.data(), vbByteSize); - ThrowIfFailed(D3DCreateBlob(ibByteSize, IndexBufferCPU.GetAddressOf())); - CopyMemory(IndexBufferCPU->GetBufferPointer(), indices.data(), ibByteSize); + //ThrowIfFailed(D3DCreateBlob(vbByteSize, VertexBufferCPU.GetAddressOf())); + //CopyMemory(VertexBufferCPU->GetBufferPointer(), vertices.data(), vbByteSize); + //ThrowIfFailed(D3DCreateBlob(ibByteSize, IndexBufferCPU.GetAddressOf())); + //CopyMemory(IndexBufferCPU->GetBufferPointer(), indices.data(), ibByteSize); VertexBufferByteSize = vbByteSize; VertexByteStride = sizeof(Vertex); diff --git a/DXE/Shaders/pix.hlsl b/DXE/Shaders/pix.hlsl index db4cc67..a838d56 100644 --- a/DXE/Shaders/pix.hlsl +++ b/DXE/Shaders/pix.hlsl @@ -376,10 +376,12 @@ float4 PS(VertexOut pin) : SV_Target } //col.xyz = diffuseCol * lit; - diffusOcclusion = 1.0 - diffusOcclusion * 0.26; + diffusOcclusion = 1.0 - diffusOcclusion * 0.32; //col.xyz *= float3(1.0,0.5,0.1); + float3 skyLight = 1.0 * diffusOcclusion * Alb.rgb; + //col.xyz += skyLight; //col.xyz *= diffusOcclusion; - // + //col.xyz = float3(diffusOcclusion, diffusOcclusion, diffusOcclusion) * 2.0; float gamma = 0.9; diff --git a/DXE/Shaders/voxelizer.hlsl b/DXE/Shaders/voxelizer.hlsl index c78facf..c43686f 100644 --- a/DXE/Shaders/voxelizer.hlsl +++ b/DXE/Shaders/voxelizer.hlsl @@ -157,7 +157,8 @@ void PS(PS_INPUT pin) //imageAtomicRGBA8Avg(gVoxelizerAlbedo, texIndex, diffuseAlbedo); //diffuseAlbedo = float4(1, 1, 1, 1); float4 writeCol = diffuseAlbedo.xyzw; - writeCol = (diffuseAlbedo.a == 0) ? float4(0, 0, 0, 0) : float4(diffuseAlbedo.xyz, 1.0); + + writeCol = (diffuseAlbedo.a == 0) ? float4(0, 0, 0, 0) : float4(diffuseAlbedo.xyz * gRoughness, 1.0); float4 writeColEmissive = writeCol; writeColEmissive.a = 0.0; diff --git a/DXE/imgui.ini b/DXE/imgui.ini index 5f328c0..a1cab0b 100644 --- a/DXE/imgui.ini +++ b/DXE/imgui.ini @@ -4,8 +4,8 @@ Size=400,400 Collapsed=0 [Window][Hello, world!] -Pos=20,819 -Size=619,201 +Pos=-11,805 +Size=1395,220 Collapsed=0 [Window][Dear ImGui Demo] diff --git a/DXE/x64/Release/App.obj b/DXE/x64/Release/App.obj index a5ddd55..599e372 100644 Binary files a/DXE/x64/Release/App.obj and b/DXE/x64/Release/App.obj differ diff --git a/DXE/x64/Release/DXE.iobj b/DXE/x64/Release/DXE.iobj index cde9a81..f9df798 100644 Binary files a/DXE/x64/Release/DXE.iobj and b/DXE/x64/Release/DXE.iobj differ diff --git a/DXE/x64/Release/DXE.ipdb b/DXE/x64/Release/DXE.ipdb index f0a1bad..a3e3084 100644 Binary files a/DXE/x64/Release/DXE.ipdb and b/DXE/x64/Release/DXE.ipdb differ diff --git a/DXE/x64/Release/DXE.log b/DXE/x64/Release/DXE.log index 2eca586..bd49bac 100644 --- a/DXE/x64/Release/DXE.log +++ b/DXE/x64/Release/DXE.log @@ -1,9 +1,15 @@ - Scene.cpp -E:\DX12\DXE\DXE\DXE\Assets\Scene.cpp(107,27): warning C4305: '=': truncation from 'double' to 'float' -E:\DX12\DXE\DXE\DXE\Assets\Scene.cpp(246,31): warning C4244: '=': conversion from 'INT64' to 'UINT', possible loss of data -E:\DX12\DXE\DXE\DXE\Assets\Scene.cpp(256,52): warning C4244: '=': conversion from 'INT64' to 'UINT', possible loss of data -E:\DX12\DXE\DXE\DXE\Assets\Scene.cpp(270,31): warning C4244: '=': conversion from 'INT64' to 'UINT', possible loss of data -E:\DX12\DXE\DXE\DXE\Assets\Scene.cpp(280,52): warning C4244: '=': conversion from 'INT64' to 'UINT', possible loss of data + App.cpp +E:\DX12\DXE\DXE\DXE\App.cpp(24,129): warning C4267: '=': conversion from 'size_t' to 'UINT', possible loss of data +E:\DX12\DXE\DXE\DXE\App.cpp(36,119): warning C4244: 'argument': conversion from 'INT64' to 'UINT', possible loss of data +E:\DX12\DXE\DXE\DXE\App.cpp(314,197): warning C4244: 'argument': conversion from 'double' to 'float', possible loss of data +E:\DX12\DXE\DXE\DXE\App.cpp(314,173): warning C4244: 'argument': conversion from 'double' to 'float', possible loss of data +E:\DX12\DXE\DXE\DXE\App.cpp(362,27): warning C4305: 'initializing': truncation from 'double' to 'float' +E:\DX12\DXE\DXE\DXE\App.cpp(363,27): warning C4305: 'initializing': truncation from 'double' to 'float' +E:\DX12\DXE\DXE\DXE\App.cpp(1135,85): warning C4244: 'argument': conversion from 'double' to 'UINT', possible loss of data +E:\DX12\DXE\DXE\DXE\App.cpp(1135,77): warning C4244: 'argument': conversion from 'double' to 'UINT', possible loss of data +E:\DX12\DXE\DXE\DXE\App.cpp(1135,48): warning C4244: 'argument': conversion from 'double' to 'UINT', possible loss of data +E:\DX12\DXE\DXE\DXE\App.cpp(1160,23): warning C4018: '<': signed/unsigned mismatch +E:\DX12\DXE\DXE\DXE\App.cpp(1168,29): warning C4018: '>=': signed/unsigned mismatch Generating code 1 of 4958 functions (<0.1%) were compiled, the rest were copied from previous compilation. 0 functions were new in current compilation diff --git a/DXE/x64/Release/DXE.tlog/CL.command.1.tlog b/DXE/x64/Release/DXE.tlog/CL.command.1.tlog index 367edd1..960335c 100644 Binary files a/DXE/x64/Release/DXE.tlog/CL.command.1.tlog and b/DXE/x64/Release/DXE.tlog/CL.command.1.tlog differ diff --git a/DXE/x64/Release/DXE.tlog/CL.read.1.tlog b/DXE/x64/Release/DXE.tlog/CL.read.1.tlog index 4bd7653..90507d7 100644 Binary files a/DXE/x64/Release/DXE.tlog/CL.read.1.tlog and b/DXE/x64/Release/DXE.tlog/CL.read.1.tlog differ diff --git a/DXE/x64/Release/DXE.tlog/CL.write.1.tlog b/DXE/x64/Release/DXE.tlog/CL.write.1.tlog index f390002..4eb04ae 100644 Binary files a/DXE/x64/Release/DXE.tlog/CL.write.1.tlog and b/DXE/x64/Release/DXE.tlog/CL.write.1.tlog differ diff --git a/DXE/x64/Release/DXE.tlog/DXE.write.1u.tlog b/DXE/x64/Release/DXE.tlog/DXE.write.1u.tlog index 661c386..6ba563d 100644 Binary files a/DXE/x64/Release/DXE.tlog/DXE.write.1u.tlog and b/DXE/x64/Release/DXE.tlog/DXE.write.1u.tlog differ diff --git a/DXE/x64/Release/DXE.tlog/link.read.1.tlog b/DXE/x64/Release/DXE.tlog/link.read.1.tlog index 9cc8ca5..a942344 100644 Binary files a/DXE/x64/Release/DXE.tlog/link.read.1.tlog and b/DXE/x64/Release/DXE.tlog/link.read.1.tlog differ diff --git a/DXE/x64/Release/Model.obj b/DXE/x64/Release/Model.obj index 7cb7501..6b98fc3 100644 Binary files a/DXE/x64/Release/Model.obj and b/DXE/x64/Release/Model.obj differ diff --git a/DXE/x64/Release/Scene.obj b/DXE/x64/Release/Scene.obj index ca924bd..02d5c1d 100644 Binary files a/DXE/x64/Release/Scene.obj and b/DXE/x64/Release/Scene.obj differ diff --git a/DXE/x64/Release/main.obj b/DXE/x64/Release/main.obj index 07f3718..270e941 100644 Binary files a/DXE/x64/Release/main.obj and b/DXE/x64/Release/main.obj differ diff --git a/DXE/x64/Release/vc142.pdb b/DXE/x64/Release/vc142.pdb index 13bf7d5..f15d10d 100644 Binary files a/DXE/x64/Release/vc142.pdb and b/DXE/x64/Release/vc142.pdb differ diff --git a/README.md b/README.md index 3fc9eb1..1325d41 100644 --- a/README.md +++ b/README.md @@ -9,6 +9,7 @@ ![](sc/small.PNG) ![](sc/addy1.gif) ![](sc/addy2.gif) +![](sc/reflect.gif) ![](sc/imgg.PNG) ### red diffuse reflection ![](sc/diffreflect.PNG) diff --git a/sc/reflect.gif b/sc/reflect.gif new file mode 100644 index 0000000..39113db Binary files /dev/null and b/sc/reflect.gif differ diff --git a/x64/Release/DXE.exe b/x64/Release/DXE.exe index b2adac9..d44e8b0 100644 Binary files a/x64/Release/DXE.exe and b/x64/Release/DXE.exe differ diff --git a/x64/Release/DXE.pdb b/x64/Release/DXE.pdb index 3099b7c..1f5a650 100644 Binary files a/x64/Release/DXE.pdb and b/x64/Release/DXE.pdb differ