diff --git a/deploy/data/ambient/1_posX.tga b/deploy/data/ambient/1_posX.tga new file mode 100644 index 0000000..4f6fe3d --- /dev/null +++ b/deploy/data/ambient/1_posX.tga @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:45812db95bd21535b6a14db30c949d67aa39545b9dd1866c103da6b74e1c62b1 +size 49196 diff --git a/deploy/data/ambient/2_negX.tga b/deploy/data/ambient/2_negX.tga new file mode 100644 index 0000000..97c95c7 --- /dev/null +++ b/deploy/data/ambient/2_negX.tga @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:daf58d6d059395121cfff3340645b1790fce56c988d5414b29d393e5f64c90cc +size 49196 diff --git a/deploy/data/ambient/3_posY.tga b/deploy/data/ambient/3_posY.tga new file mode 100644 index 0000000..a4aaddf --- /dev/null +++ b/deploy/data/ambient/3_posY.tga @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:904069dc6c60ed9823d6379827fe6434b3a05a7331631a508f6f4b96eb208a7a +size 49196 diff --git a/deploy/data/ambient/4_negY.tga b/deploy/data/ambient/4_negY.tga new file mode 100644 index 0000000..7623b5e --- /dev/null +++ b/deploy/data/ambient/4_negY.tga @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:3f4864454868b3c5b7625e82584e6a28adb1b8727e96266984c4dfc23850f25d +size 49196 diff --git a/deploy/data/ambient/5_posZ.tga b/deploy/data/ambient/5_posZ.tga new file mode 100644 index 0000000..f6df846 --- /dev/null +++ b/deploy/data/ambient/5_posZ.tga @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:08a8539cdb09329b5404e2aef67265c4bade0d7761474cd650450d94cb2b9493 +size 49196 diff --git a/deploy/data/ambient/6_negZ.tga b/deploy/data/ambient/6_negZ.tga new file mode 100644 index 0000000..295f66a --- /dev/null +++ b/deploy/data/ambient/6_negZ.tga @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:d835a097cb53d3e43ffb3e4be852c2047c8fdfed8c9d8eb218cefb2147bf3f74 +size 49196 diff --git a/deploy/data/consolas.fnt b/deploy/data/font/consolas.fnt similarity index 100% rename from deploy/data/consolas.fnt rename to deploy/data/font/consolas.fnt diff --git a/deploy/data/consolas.png b/deploy/data/font/consolas.png similarity index 100% rename from deploy/data/consolas.png rename to deploy/data/font/consolas.png diff --git a/deploy/data/ibl_brdf_lut.png b/deploy/data/ibl_brdf_lut.png new file mode 100644 index 0000000..35b1f4b --- /dev/null +++ b/deploy/data/ibl_brdf_lut.png @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:98fc63eada3ca5549bd74d518fd3e2fd5f84abcbe54366771f9c0224fa2c19f1 +size 35823 diff --git a/deploy/data/sandbox.mtl b/deploy/data/sandbox.mtl index 2324019..8bdd151 100644 --- a/deploy/data/sandbox.mtl +++ b/deploy/data/sandbox.mtl @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:5952d768c5e6d96a52c4029d441c87cd2fb84141958eadd569ec9f582813e229 -size 74 +oid sha256:8e2729d1b53d001080f0e4709b597a8103a98564c7e8b40753158c7a8c0744a2 +size 75 diff --git a/deploy/data/skybox/1_posX.tga b/deploy/data/skybox/1_posX.tga new file mode 100644 index 0000000..3ea5b7f --- /dev/null +++ b/deploy/data/skybox/1_posX.tga @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:936d3c5ea0589cb0600ae0d7116cafd2792e025055e0a3b7eb4ecfda2291e93b +size 12582930 diff --git a/deploy/data/skybox/2_negX.tga b/deploy/data/skybox/2_negX.tga new file mode 100644 index 0000000..89bd1e8 --- /dev/null +++ b/deploy/data/skybox/2_negX.tga @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:68288c1a11df99056d5009ddf67accc5f52677ceff0c990152ef4b643ee2e8c4 +size 12582930 diff --git a/deploy/data/skybox/3_posY.tga b/deploy/data/skybox/3_posY.tga new file mode 100644 index 0000000..8dc3621 --- /dev/null +++ b/deploy/data/skybox/3_posY.tga @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:4ce096e0ce8da69464a183c9d80ea9e7937b4e960ef2774237f2a6ade2bddf50 +size 241711 diff --git a/deploy/data/skybox/4_negY.tga b/deploy/data/skybox/4_negY.tga new file mode 100644 index 0000000..de517e4 --- /dev/null +++ b/deploy/data/skybox/4_negY.tga @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:7bce18ac878bf0df16f9a55d881ab076a074c257b7c24f40249ddd77d43d36c6 +size 2848272 diff --git a/deploy/data/skybox/5_posZ.tga b/deploy/data/skybox/5_posZ.tga new file mode 100644 index 0000000..aeec736 --- /dev/null +++ b/deploy/data/skybox/5_posZ.tga @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:58192d9fa5dcbc58884d90db48469197561b4b8d49d7a39c71b4521743fdc4b2 +size 12582930 diff --git a/deploy/data/skybox/6_negZ.tga b/deploy/data/skybox/6_negZ.tga new file mode 100644 index 0000000..e8c245e --- /dev/null +++ b/deploy/data/skybox/6_negZ.tga @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:087883d665611ebec43e4b3e10abb10595a40bdd1084dbd350c1f0b4f59f542e +size 12582930 diff --git a/deploy/data/skybox/craterlake_bk.tga b/deploy/data/skybox/craterlake_bk.tga new file mode 100644 index 0000000..ac7bff3 --- /dev/null +++ b/deploy/data/skybox/craterlake_bk.tga @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:e916551b97b12ebd31228fe8ccc06523cc7ac98eee1daa76032b8fee1b0cee11 +size 769437 diff --git a/deploy/data/skybox/craterlake_dn.tga b/deploy/data/skybox/craterlake_dn.tga new file mode 100644 index 0000000..0c3146e --- /dev/null +++ b/deploy/data/skybox/craterlake_dn.tga @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:47a24fd77edac34fbd9b9031754624e1fca3c047830b0820654b74e202969891 +size 757939 diff --git a/deploy/data/skybox/craterlake_ft.tga b/deploy/data/skybox/craterlake_ft.tga new file mode 100644 index 0000000..10dfccb --- /dev/null +++ b/deploy/data/skybox/craterlake_ft.tga @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:b7b25f9cfdaa42f9ea37596e07edc120df9261c0c695ab3cead68d7c646c2a73 +size 737349 diff --git a/deploy/data/skybox/craterlake_lf.tga b/deploy/data/skybox/craterlake_lf.tga new file mode 100644 index 0000000..e7224de --- /dev/null +++ b/deploy/data/skybox/craterlake_lf.tga @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:c1d5aee7e0a4041674f1ce844fbfd194972e6968002e05570c098e65530c862b +size 766552 diff --git a/deploy/data/skybox/craterlake_rt.tga b/deploy/data/skybox/craterlake_rt.tga new file mode 100644 index 0000000..f415f14 --- /dev/null +++ b/deploy/data/skybox/craterlake_rt.tga @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:037b77efe579a762a1acc920388d4da1d16658893179502324ee89598eb69cff +size 704063 diff --git a/deploy/data/skybox/craterlake_up.tga b/deploy/data/skybox/craterlake_up.tga new file mode 100644 index 0000000..cdd495e --- /dev/null +++ b/deploy/data/skybox/craterlake_up.tga @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:cc2c22f138ad728700079827f0202a91dcd7c5be10d683c887c0b2970def5d95 +size 626448 diff --git a/deploy/data/sponza.mtl b/deploy/data/sponza.mtl index 3f182bd..1b5724c 100644 --- a/deploy/data/sponza.mtl +++ b/deploy/data/sponza.mtl @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:cd740556a0e8e853532bb3df7642fc9f5f0f2a409f6a0831148db304ad445b1c -size 5295 +oid sha256:cd6ccb4673fb99d8ee5780b60e63f307d8e839bed88df0ba5d1eab8f35239128 +size 4393 diff --git a/deploy/data/sponza/Background_Albedo.tga b/deploy/data/sponza/Background_Albedo.tga new file mode 100644 index 0000000..93c8c4a --- /dev/null +++ b/deploy/data/sponza/Background_Albedo.tga @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:618d9dea98ee7f09b8ae157866800161db24a0ab53baa7dbbbaa5f84ddfa8d46 +size 4194348 diff --git a/deploy/data/sponza/Background_Normal.tga b/deploy/data/sponza/Background_Normal.tga new file mode 100644 index 0000000..ff11181 --- /dev/null +++ b/deploy/data/sponza/Background_Normal.tga @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:09042d1134d331ab3f231c2bd0033c7d770e5c070353fe1339af29129c1d36d5 +size 4194348 diff --git a/deploy/data/sponza/Background_Roughness.tga b/deploy/data/sponza/Background_Roughness.tga new file mode 100644 index 0000000..3b7a6c3 --- /dev/null +++ b/deploy/data/sponza/Background_Roughness.tga @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:ed37a704b5cec18ec5ab2f6862a2bd21adc2d2bb329a608a79a5bcd2ada642ec +size 1048620 diff --git a/deploy/data/sponza/ChainTexture_Albedo.tga b/deploy/data/sponza/ChainTexture_Albedo.tga new file mode 100644 index 0000000..e45e320 --- /dev/null +++ b/deploy/data/sponza/ChainTexture_Albedo.tga @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:3c5c70113f006dd2d7d37f200a0e83d4eed29977a714e3c194b1368a83365a2d +size 4194348 diff --git a/deploy/data/sponza/ChainTexture_Metallic.tga b/deploy/data/sponza/ChainTexture_Metallic.tga new file mode 100644 index 0000000..4df0fff --- /dev/null +++ b/deploy/data/sponza/ChainTexture_Metallic.tga @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:fff0d58ecb1804947aaac5f290cfc3cdf3744ec2f4d7451ad66f43990d0f0e69 +size 1048620 diff --git a/deploy/data/sponza/ChainTexture_Normal.tga b/deploy/data/sponza/ChainTexture_Normal.tga new file mode 100644 index 0000000..b8de754 --- /dev/null +++ b/deploy/data/sponza/ChainTexture_Normal.tga @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:21a672d94a32f8971063fd9b4c0fad967cc7d92617a8a544f80d253c9db966b5 +size 4194348 diff --git a/deploy/data/sponza/ChainTexture_Roughness.tga b/deploy/data/sponza/ChainTexture_Roughness.tga new file mode 100644 index 0000000..bef5555 --- /dev/null +++ b/deploy/data/sponza/ChainTexture_Roughness.tga @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:89f7770251a80537661f19cce6dccc87376df662b39550f38e61df43f9fc46e6 +size 1048620 diff --git a/deploy/data/sponza/Dielectric_metallic.tga b/deploy/data/sponza/Dielectric_metallic.tga new file mode 100644 index 0000000..5a074df --- /dev/null +++ b/deploy/data/sponza/Dielectric_metallic.tga @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:b2255256f2be0e5ac02a9cfe796b6aaf153b3f793782833eedce84d8a9201304 +size 1048620 diff --git a/deploy/data/sponza/Lion_Albedo.tga b/deploy/data/sponza/Lion_Albedo.tga new file mode 100644 index 0000000..b344cc1 --- /dev/null +++ b/deploy/data/sponza/Lion_Albedo.tga @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:1c3caf37a33546ac3e4f9d357f72097cbe1d516f67a71782af6d23060b869511 +size 4194348 diff --git a/deploy/data/sponza/Lion_Normal.tga b/deploy/data/sponza/Lion_Normal.tga new file mode 100644 index 0000000..98ca0b7 --- /dev/null +++ b/deploy/data/sponza/Lion_Normal.tga @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:54aa45c9f7f594bad78d0b4c8c6e7eb5e59f5e0990d76adc82ca2c888826eb68 +size 4194348 diff --git a/deploy/data/sponza/Lion_Roughness.tga b/deploy/data/sponza/Lion_Roughness.tga new file mode 100644 index 0000000..6f153df --- /dev/null +++ b/deploy/data/sponza/Lion_Roughness.tga @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:d9a65608a5e7a9bdfccc61e257584b0b40345a7c1e0d6fa29be270d29a2fe048 +size 1048620 diff --git a/deploy/data/sponza/Metallic_metallic.tga b/deploy/data/sponza/Metallic_metallic.tga new file mode 100644 index 0000000..06794ea --- /dev/null +++ b/deploy/data/sponza/Metallic_metallic.tga @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:2147045af41c65d6df6f6d36be6e6bf7f9fcc9c6273e4da6d745d18da190d59a +size 1048620 diff --git a/deploy/data/sponza/Sponza_Arch_diffuse.tga b/deploy/data/sponza/Sponza_Arch_diffuse.tga new file mode 100644 index 0000000..17e0bc2 --- /dev/null +++ b/deploy/data/sponza/Sponza_Arch_diffuse.tga @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:cbfa887b19e049cd57fbc6a0b8910a96087fc5229c60c0a3f49a2946e629b3d6 +size 4194348 diff --git a/deploy/data/sponza/Sponza_Arch_normal.tga b/deploy/data/sponza/Sponza_Arch_normal.tga new file mode 100644 index 0000000..123633b --- /dev/null +++ b/deploy/data/sponza/Sponza_Arch_normal.tga @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:54548f4fc29b8aee3fa11fe173a0a85afced41da856124b325e5a4df894fb505 +size 4194348 diff --git a/deploy/data/sponza/Sponza_Arch_roughness.tga b/deploy/data/sponza/Sponza_Arch_roughness.tga new file mode 100644 index 0000000..af8af6e --- /dev/null +++ b/deploy/data/sponza/Sponza_Arch_roughness.tga @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:600cf82eb86ea037886297f2613dd481fc859fc70e5231e7d06394806942ff78 +size 1048620 diff --git a/deploy/data/sponza/Sponza_Bricks_a_Albedo.tga b/deploy/data/sponza/Sponza_Bricks_a_Albedo.tga new file mode 100644 index 0000000..5645f2b --- /dev/null +++ b/deploy/data/sponza/Sponza_Bricks_a_Albedo.tga @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:8b17b3ff47ef041e9a25cb99a9b0b1b7060c8a9453228c1d9e807adaab57c337 +size 4194348 diff --git a/deploy/data/sponza/Sponza_Bricks_a_Normal.tga b/deploy/data/sponza/Sponza_Bricks_a_Normal.tga new file mode 100644 index 0000000..6ef5aed --- /dev/null +++ b/deploy/data/sponza/Sponza_Bricks_a_Normal.tga @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:c63b64c11e9ed9fdd2527b9d33418473ca198a802d17efa45dafa9d6f554e6ed +size 4194348 diff --git a/deploy/data/sponza/Sponza_Bricks_a_Roughness.tga b/deploy/data/sponza/Sponza_Bricks_a_Roughness.tga new file mode 100644 index 0000000..0f22e7c --- /dev/null +++ b/deploy/data/sponza/Sponza_Bricks_a_Roughness.tga @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:94781a3f9bb0de90c31f21be56592ead521fbd7633dbfb4dda293161807d62b6 +size 1048620 diff --git a/deploy/data/sponza/Sponza_Ceiling_diffuse.tga b/deploy/data/sponza/Sponza_Ceiling_diffuse.tga new file mode 100644 index 0000000..e86d1b3 --- /dev/null +++ b/deploy/data/sponza/Sponza_Ceiling_diffuse.tga @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:3d33be43f978df01bd123ab26823f7803a090206a1288c9735b2856eeabf7b81 +size 4194348 diff --git a/deploy/data/sponza/Sponza_Ceiling_normal.tga b/deploy/data/sponza/Sponza_Ceiling_normal.tga new file mode 100644 index 0000000..b884c55 --- /dev/null +++ b/deploy/data/sponza/Sponza_Ceiling_normal.tga @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:0dd812d2d78f3a26110cc3784f31bb5dcd4a1490ced9d643f6957ea06620643d +size 4194348 diff --git a/deploy/data/sponza/Sponza_Ceiling_roughness.tga b/deploy/data/sponza/Sponza_Ceiling_roughness.tga new file mode 100644 index 0000000..a4f12c5 --- /dev/null +++ b/deploy/data/sponza/Sponza_Ceiling_roughness.tga @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:472597f9a691d9bcac70397afb51330beefbf207b8450f16401e85d9fe0d49ad +size 1048620 diff --git a/deploy/data/sponza/Sponza_Column_a_diffuse.tga b/deploy/data/sponza/Sponza_Column_a_diffuse.tga new file mode 100644 index 0000000..6a023c9 --- /dev/null +++ b/deploy/data/sponza/Sponza_Column_a_diffuse.tga @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:ec1725ca19928398fc06841c5b528d34ba460f8e274d1511d4ebc682ab6f0289 +size 4194348 diff --git a/deploy/data/sponza/Sponza_Column_a_normal.tga b/deploy/data/sponza/Sponza_Column_a_normal.tga new file mode 100644 index 0000000..3ef72da --- /dev/null +++ b/deploy/data/sponza/Sponza_Column_a_normal.tga @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:54820fc64740cd5d1a2e99e658aef8914e3e2ca47077679695bb9a6ebe760ddd +size 4194348 diff --git a/deploy/data/sponza/Sponza_Column_a_roughness.tga b/deploy/data/sponza/Sponza_Column_a_roughness.tga new file mode 100644 index 0000000..b70e2cd --- /dev/null +++ b/deploy/data/sponza/Sponza_Column_a_roughness.tga @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:0319016ade12c981fcf70f7075913317064ace995fe885abe691c4850a4bb316 +size 1048620 diff --git a/deploy/data/sponza/Sponza_Column_b_diffuse.tga b/deploy/data/sponza/Sponza_Column_b_diffuse.tga new file mode 100644 index 0000000..11fb5ae --- /dev/null +++ b/deploy/data/sponza/Sponza_Column_b_diffuse.tga @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:600500392f42e678921a5b762bd6351ff27dfbab8fecfad9d87da774aaa40cca +size 4194348 diff --git a/deploy/data/sponza/Sponza_Column_b_normal.tga b/deploy/data/sponza/Sponza_Column_b_normal.tga new file mode 100644 index 0000000..4f05c5e --- /dev/null +++ b/deploy/data/sponza/Sponza_Column_b_normal.tga @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:f473a9963e4ef6eda61da01791d8007eb617c699b149e6c033c739d707a061e0 +size 4194348 diff --git a/deploy/data/sponza/Sponza_Column_b_roughness.tga b/deploy/data/sponza/Sponza_Column_b_roughness.tga new file mode 100644 index 0000000..ff0f17d --- /dev/null +++ b/deploy/data/sponza/Sponza_Column_b_roughness.tga @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:aaf3b369d27c2fedb18df22ce794e643694dee8f4c992590dfa52a477abe4b6b +size 1048620 diff --git a/deploy/data/sponza/Sponza_Column_c_diffuse.tga b/deploy/data/sponza/Sponza_Column_c_diffuse.tga new file mode 100644 index 0000000..b69f4b0 --- /dev/null +++ b/deploy/data/sponza/Sponza_Column_c_diffuse.tga @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:b2d76257bad197dae9b5ffaf79b8eea1364d36e8504ae77e7acbfa1cca11b0b3 +size 4194348 diff --git a/deploy/data/sponza/Sponza_Column_c_normal.tga b/deploy/data/sponza/Sponza_Column_c_normal.tga new file mode 100644 index 0000000..149295a --- /dev/null +++ b/deploy/data/sponza/Sponza_Column_c_normal.tga @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:e3519bf4199fb18ddde3bf8298d47fb63bb1ea0ee508169a60a598142fc3c9d1 +size 4194348 diff --git a/deploy/data/sponza/Sponza_Column_c_roughness.tga b/deploy/data/sponza/Sponza_Column_c_roughness.tga new file mode 100644 index 0000000..2ff697c --- /dev/null +++ b/deploy/data/sponza/Sponza_Column_c_roughness.tga @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:988807465ada7d5875a93f88fc2cbbd96a668a12f955507f2c9d4cdaebee41f8 +size 1048620 diff --git a/deploy/data/sponza/Sponza_Curtain_Blue_diffuse.tga b/deploy/data/sponza/Sponza_Curtain_Blue_diffuse.tga new file mode 100644 index 0000000..12819e2 --- /dev/null +++ b/deploy/data/sponza/Sponza_Curtain_Blue_diffuse.tga @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:3e6f2d6d8a99365e26477cd64c7c41a4fd4a2e920fc7f8575bc71c9fdcedd6a3 +size 4194348 diff --git a/deploy/data/sponza/Sponza_Curtain_Blue_normal.tga b/deploy/data/sponza/Sponza_Curtain_Blue_normal.tga new file mode 100644 index 0000000..7622725 --- /dev/null +++ b/deploy/data/sponza/Sponza_Curtain_Blue_normal.tga @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:31de3bbd96f37738da7b5a615807c6273f535ec3a15c4cf3d2de933af750bf8a +size 4194348 diff --git a/deploy/data/sponza/Sponza_Curtain_Green_diffuse.tga b/deploy/data/sponza/Sponza_Curtain_Green_diffuse.tga new file mode 100644 index 0000000..ac3bac4 --- /dev/null +++ b/deploy/data/sponza/Sponza_Curtain_Green_diffuse.tga @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:39e3d023b364dd4d52bc1c37dd1b1d4d6e91a1013acd52767fac6110366a131a +size 4194348 diff --git a/deploy/data/sponza/Sponza_Curtain_Green_normal.tga b/deploy/data/sponza/Sponza_Curtain_Green_normal.tga new file mode 100644 index 0000000..7622725 --- /dev/null +++ b/deploy/data/sponza/Sponza_Curtain_Green_normal.tga @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:31de3bbd96f37738da7b5a615807c6273f535ec3a15c4cf3d2de933af750bf8a +size 4194348 diff --git a/deploy/data/sponza/Sponza_Curtain_Red_diffuse.tga b/deploy/data/sponza/Sponza_Curtain_Red_diffuse.tga new file mode 100644 index 0000000..f7cc563 --- /dev/null +++ b/deploy/data/sponza/Sponza_Curtain_Red_diffuse.tga @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:a82d94d77b0b58238aca6e29cd03346e9a595a6642d995f47c4ca1c4b811fd30 +size 4194348 diff --git a/deploy/data/sponza/Sponza_Curtain_Red_normal.tga b/deploy/data/sponza/Sponza_Curtain_Red_normal.tga new file mode 100644 index 0000000..7622725 --- /dev/null +++ b/deploy/data/sponza/Sponza_Curtain_Red_normal.tga @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:31de3bbd96f37738da7b5a615807c6273f535ec3a15c4cf3d2de933af750bf8a +size 4194348 diff --git a/deploy/data/sponza/Sponza_Curtain_metallic.tga b/deploy/data/sponza/Sponza_Curtain_metallic.tga new file mode 100644 index 0000000..04fe981 --- /dev/null +++ b/deploy/data/sponza/Sponza_Curtain_metallic.tga @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:53dc590606e983eae0bbeb005b94c77b9c3e60d544f127e94fad3ca01b8b1844 +size 1048620 diff --git a/deploy/data/sponza/Sponza_Curtain_roughness.tga b/deploy/data/sponza/Sponza_Curtain_roughness.tga new file mode 100644 index 0000000..22f9a09 --- /dev/null +++ b/deploy/data/sponza/Sponza_Curtain_roughness.tga @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:561ecc0c5fb13335d529d3713b0bd1e50557e2a829ced4be6b1c425f6c694e13 +size 1048620 diff --git a/deploy/data/sponza/Sponza_Details_diffuse.tga b/deploy/data/sponza/Sponza_Details_diffuse.tga new file mode 100644 index 0000000..21d3408 --- /dev/null +++ b/deploy/data/sponza/Sponza_Details_diffuse.tga @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:d507c9ea83a4d8647c8a12faaf67266ff8cfb7866c7500ee566a94710b52cf8c +size 4194348 diff --git a/deploy/data/sponza/Sponza_Details_metallic.tga b/deploy/data/sponza/Sponza_Details_metallic.tga new file mode 100644 index 0000000..743092f --- /dev/null +++ b/deploy/data/sponza/Sponza_Details_metallic.tga @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:4ff494a1e6cc9e85c824814bad475043dd017cd176ec7e7f6afe8888202972ce +size 1048620 diff --git a/deploy/data/sponza/Sponza_Details_normal.tga b/deploy/data/sponza/Sponza_Details_normal.tga new file mode 100644 index 0000000..74f0e7a --- /dev/null +++ b/deploy/data/sponza/Sponza_Details_normal.tga @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:47de6e66368ca4046ffe6a6ad23bc9c23cbf3c86d98b5060f0e16b3e071d55a7 +size 4194348 diff --git a/deploy/data/sponza/Sponza_Details_roughness.tga b/deploy/data/sponza/Sponza_Details_roughness.tga new file mode 100644 index 0000000..5dfd3a7 --- /dev/null +++ b/deploy/data/sponza/Sponza_Details_roughness.tga @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:0d3dd567ed89d97fe21a8341f20e947b97287297c3a18779c9d390ddbfdd305e +size 1048620 diff --git a/deploy/data/sponza/Sponza_Fabric_Blue_diffuse.tga b/deploy/data/sponza/Sponza_Fabric_Blue_diffuse.tga new file mode 100644 index 0000000..b101890 --- /dev/null +++ b/deploy/data/sponza/Sponza_Fabric_Blue_diffuse.tga @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:9c5353fa87304b42dd347ac124cd884a8ce1d5b5bb78130a9615712477c87d07 +size 4194348 diff --git a/deploy/data/sponza/Sponza_Fabric_Blue_normal.tga b/deploy/data/sponza/Sponza_Fabric_Blue_normal.tga new file mode 100644 index 0000000..20ef226 --- /dev/null +++ b/deploy/data/sponza/Sponza_Fabric_Blue_normal.tga @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:7d42f33dc4a940e203d2843809ae48dd8d8897cac97eb52bdeb5f7046ed8266b +size 4194348 diff --git a/deploy/data/sponza/Sponza_Fabric_Green_diffuse.tga b/deploy/data/sponza/Sponza_Fabric_Green_diffuse.tga new file mode 100644 index 0000000..0763a5d --- /dev/null +++ b/deploy/data/sponza/Sponza_Fabric_Green_diffuse.tga @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:72729cc52475caae9fc236bfb4856a19b37ae2c37af745c061cf9023d9c4fac0 +size 4194348 diff --git a/deploy/data/sponza/Sponza_Fabric_Green_normal.tga b/deploy/data/sponza/Sponza_Fabric_Green_normal.tga new file mode 100644 index 0000000..20ef226 --- /dev/null +++ b/deploy/data/sponza/Sponza_Fabric_Green_normal.tga @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:7d42f33dc4a940e203d2843809ae48dd8d8897cac97eb52bdeb5f7046ed8266b +size 4194348 diff --git a/deploy/data/sponza/Sponza_Fabric_Red_diffuse.tga b/deploy/data/sponza/Sponza_Fabric_Red_diffuse.tga new file mode 100644 index 0000000..da031bb --- /dev/null +++ b/deploy/data/sponza/Sponza_Fabric_Red_diffuse.tga @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:3e1256c6a67543e74abb3a7b8c3f0176ea08cb650945b3cd172edaedd4817512 +size 4194348 diff --git a/deploy/data/sponza/Sponza_Fabric_Red_normal.tga b/deploy/data/sponza/Sponza_Fabric_Red_normal.tga new file mode 100644 index 0000000..20ef226 --- /dev/null +++ b/deploy/data/sponza/Sponza_Fabric_Red_normal.tga @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:7d42f33dc4a940e203d2843809ae48dd8d8897cac97eb52bdeb5f7046ed8266b +size 4194348 diff --git a/deploy/data/sponza/Sponza_Fabric_metallic.tga b/deploy/data/sponza/Sponza_Fabric_metallic.tga new file mode 100644 index 0000000..2df5677 --- /dev/null +++ b/deploy/data/sponza/Sponza_Fabric_metallic.tga @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:2aa93767d145ffc689df848ca10d793645da8e167e7101b76515a6ebc54ef850 +size 1048620 diff --git a/deploy/data/sponza/Sponza_Fabric_roughness.tga b/deploy/data/sponza/Sponza_Fabric_roughness.tga new file mode 100644 index 0000000..5e0eb47 --- /dev/null +++ b/deploy/data/sponza/Sponza_Fabric_roughness.tga @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:e3e7c976af11855803c48c33cc74d64f566675e0fc1f926ff287c88ded95f672 +size 1048620 diff --git a/deploy/data/sponza/Sponza_FlagPole_diffuse.tga b/deploy/data/sponza/Sponza_FlagPole_diffuse.tga new file mode 100644 index 0000000..1a8518b --- /dev/null +++ b/deploy/data/sponza/Sponza_FlagPole_diffuse.tga @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:9852428b447b169978da56660d6fd53b6830fa18d87aafcca99f8b2f47bf1a00 +size 4194348 diff --git a/deploy/data/sponza/Sponza_FlagPole_normal.tga b/deploy/data/sponza/Sponza_FlagPole_normal.tga new file mode 100644 index 0000000..fe07610 --- /dev/null +++ b/deploy/data/sponza/Sponza_FlagPole_normal.tga @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:2507dfe1b5db751bc84d8701c21b6d31654bcc7e2c08d552b2da64aaaba9234d +size 4194348 diff --git a/deploy/data/sponza/Sponza_FlagPole_roughness.tga b/deploy/data/sponza/Sponza_FlagPole_roughness.tga new file mode 100644 index 0000000..229a84c --- /dev/null +++ b/deploy/data/sponza/Sponza_FlagPole_roughness.tga @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:a078fdbd0da1379235e9061f60ea8674e1a97f3f09b5f0877025431ac76448d0 +size 1048620 diff --git a/deploy/data/sponza/Sponza_Floor_diffuse.tga b/deploy/data/sponza/Sponza_Floor_diffuse.tga new file mode 100644 index 0000000..4bb07cf --- /dev/null +++ b/deploy/data/sponza/Sponza_Floor_diffuse.tga @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:6b050223b50846b5a18df81e7fb686a182403801ba6ebd01524962440c89c8f7 +size 4194348 diff --git a/deploy/data/sponza/Sponza_Floor_normal.tga b/deploy/data/sponza/Sponza_Floor_normal.tga new file mode 100644 index 0000000..19eefea --- /dev/null +++ b/deploy/data/sponza/Sponza_Floor_normal.tga @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:90197f561e5bee113e32d9c15960b6a83a4ba7d5126561d7145234e4ccd8d73c +size 4194348 diff --git a/deploy/data/sponza/Sponza_Floor_roughness.tga b/deploy/data/sponza/Sponza_Floor_roughness.tga new file mode 100644 index 0000000..df3f41e --- /dev/null +++ b/deploy/data/sponza/Sponza_Floor_roughness.tga @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:706c1598e406badaf5677aa8a2d5e7362479ac8a77dcef440844089ee954e45b +size 1048620 diff --git a/deploy/data/sponza/Sponza_Roof_diffuse.tga b/deploy/data/sponza/Sponza_Roof_diffuse.tga new file mode 100644 index 0000000..daa991c --- /dev/null +++ b/deploy/data/sponza/Sponza_Roof_diffuse.tga @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:2393198434201e294dacecc2b2c8909d20d38d7b68cd3c320bf6968f6b025d02 +size 4194348 diff --git a/deploy/data/sponza/Sponza_Roof_normal.tga b/deploy/data/sponza/Sponza_Roof_normal.tga new file mode 100644 index 0000000..da4021c --- /dev/null +++ b/deploy/data/sponza/Sponza_Roof_normal.tga @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:c662604d5e305be882c2c86d0f73d88a0a5173b3e082c6ff3cb69db8fd004796 +size 4194348 diff --git a/deploy/data/sponza/Sponza_Roof_roughness.tga b/deploy/data/sponza/Sponza_Roof_roughness.tga new file mode 100644 index 0000000..eac510f --- /dev/null +++ b/deploy/data/sponza/Sponza_Roof_roughness.tga @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:28e8f7740700de5a16002afea65a77c64bd0d728fcfa3b398cb2dd0a21577457 +size 1048620 diff --git a/deploy/data/sponza/Sponza_Thorn_diffuse.tga b/deploy/data/sponza/Sponza_Thorn_diffuse.tga new file mode 100644 index 0000000..4caaee3 --- /dev/null +++ b/deploy/data/sponza/Sponza_Thorn_diffuse.tga @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:52fb7426545675b27774589ec910ca8bb4ec710db06d12d9d89348ef9c49e26f +size 4194348 diff --git a/deploy/data/sponza/Sponza_Thorn_normal.tga b/deploy/data/sponza/Sponza_Thorn_normal.tga new file mode 100644 index 0000000..d99f82c --- /dev/null +++ b/deploy/data/sponza/Sponza_Thorn_normal.tga @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:36bfc8c0b515f36ce8dd5f4466af9e6a099aeff9966a03bd6e38bd0d1a3bdaf1 +size 4194348 diff --git a/deploy/data/sponza/Sponza_Thorn_roughness.tga b/deploy/data/sponza/Sponza_Thorn_roughness.tga new file mode 100644 index 0000000..4c60bbd --- /dev/null +++ b/deploy/data/sponza/Sponza_Thorn_roughness.tga @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:ad1ea4d08b4a52f5eb28e8968b01991ff9bcf990e71d4e5cf19b7edfaa92c887 +size 1048620 diff --git a/deploy/data/sponza/VaseHanging_diffuse.tga b/deploy/data/sponza/VaseHanging_diffuse.tga new file mode 100644 index 0000000..d083b0d --- /dev/null +++ b/deploy/data/sponza/VaseHanging_diffuse.tga @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:31e4bf92c43cc742638df84739d3e95925fd7756c14081c977b7c30aee023fba +size 4194348 diff --git a/deploy/data/sponza/VaseHanging_normal.tga b/deploy/data/sponza/VaseHanging_normal.tga new file mode 100644 index 0000000..240f1d4 --- /dev/null +++ b/deploy/data/sponza/VaseHanging_normal.tga @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:19168f2f9cd7e3e8e4337569f1f89608ef1ec628a106e45d16b5b18255de2ec5 +size 4194348 diff --git a/deploy/data/sponza/VaseHanging_roughness.tga b/deploy/data/sponza/VaseHanging_roughness.tga new file mode 100644 index 0000000..815a135 --- /dev/null +++ b/deploy/data/sponza/VaseHanging_roughness.tga @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:061b205040af9909c5987a66945d7dddd696afba22cbd7219810b807ff2c1c8f +size 1048620 diff --git a/deploy/data/sponza/VasePlant_diffuse.tga b/deploy/data/sponza/VasePlant_diffuse.tga new file mode 100644 index 0000000..5e4bbd2 --- /dev/null +++ b/deploy/data/sponza/VasePlant_diffuse.tga @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:f44cccc4f549d919a4053d2fb725f392ffd9ecd638e5eeb1fa73a2db5c55aa1e +size 4194348 diff --git a/deploy/data/sponza/VasePlant_normal.tga b/deploy/data/sponza/VasePlant_normal.tga new file mode 100644 index 0000000..396201b --- /dev/null +++ b/deploy/data/sponza/VasePlant_normal.tga @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:d4d2395d2f7527bbb104a5502cd0c3a14100d3a21ab6f72c88355ddf43053aeb +size 4194348 diff --git a/deploy/data/sponza/VasePlant_roughness.tga b/deploy/data/sponza/VasePlant_roughness.tga new file mode 100644 index 0000000..ac974eb --- /dev/null +++ b/deploy/data/sponza/VasePlant_roughness.tga @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:bb2f02ab52deccaa233f80683cd88cebe3d360e191c6f3ba0a9c34a2b62bd84f +size 1048620 diff --git a/deploy/data/sponza/VaseRound_diffuse.tga b/deploy/data/sponza/VaseRound_diffuse.tga new file mode 100644 index 0000000..ab2035d --- /dev/null +++ b/deploy/data/sponza/VaseRound_diffuse.tga @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:ccce7168176800cea718ac76b0b780934a85fd815eeedb50518dd6165d800056 +size 4194348 diff --git a/deploy/data/sponza/VaseRound_normal.tga b/deploy/data/sponza/VaseRound_normal.tga new file mode 100644 index 0000000..5532ebb --- /dev/null +++ b/deploy/data/sponza/VaseRound_normal.tga @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:8925c2ddbd2043aeb7569687f46e4b9d84d73ae9b6c0d8ba0277be0e5970938b +size 4194348 diff --git a/deploy/data/sponza/VaseRound_roughness.tga b/deploy/data/sponza/VaseRound_roughness.tga new file mode 100644 index 0000000..224685e --- /dev/null +++ b/deploy/data/sponza/VaseRound_roughness.tga @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:5841baf2aace722b207b83f634f8664eccfb63dd27406eb4f2daddab979a6b32 +size 1048620 diff --git a/deploy/data/sponza/Vase_diffuse.tga b/deploy/data/sponza/Vase_diffuse.tga new file mode 100644 index 0000000..172aa9f --- /dev/null +++ b/deploy/data/sponza/Vase_diffuse.tga @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:deea435bf6907d4c85c245ea62a35064e8cccd11ee206637036df7d158d33251 +size 4194348 diff --git a/deploy/data/sponza/Vase_normal.tga b/deploy/data/sponza/Vase_normal.tga new file mode 100644 index 0000000..5ba0eea --- /dev/null +++ b/deploy/data/sponza/Vase_normal.tga @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:4ed257534665c2461ad1b6aa0cf98654425d910479ddd02a3134fcb16c6cce34 +size 4194348 diff --git a/deploy/data/sponza/Vase_roughness.tga b/deploy/data/sponza/Vase_roughness.tga new file mode 100644 index 0000000..cc63b6a --- /dev/null +++ b/deploy/data/sponza/Vase_roughness.tga @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:7cc8317f84604d42ca90fa4e7adad72aab0995ca840e1b59ae37fa3789e8e17d +size 1048620 diff --git a/deploy/data/sponza/background.jpg b/deploy/data/sponza/background.jpg deleted file mode 100644 index 4654d33..0000000 --- a/deploy/data/sponza/background.jpg +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:71c21508d528da03a08390f6788df085b5ee214bdc537eb28c926bc6f80b4bed -size 221460 diff --git a/deploy/data/sponza/background_ddn.jpg b/deploy/data/sponza/background_ddn.jpg deleted file mode 100644 index f7eb677..0000000 --- a/deploy/data/sponza/background_ddn.jpg +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:9a144a818ee28358575c39958c5c49338c5fa24d3a60c0653cd93a96c6488a73 -size 181441 diff --git a/deploy/data/sponza/chain_texture.jpg b/deploy/data/sponza/chain_texture.jpg deleted file mode 100644 index c704e82..0000000 --- a/deploy/data/sponza/chain_texture.jpg +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:84bc3ae33b309adda45942f04933e5d8ffc31711217afb613dbf3cee4d47b4bb -size 60520 diff --git a/deploy/data/sponza/chain_texture_ddn.jpg b/deploy/data/sponza/chain_texture_ddn.jpg deleted file mode 100644 index 4068d66..0000000 --- a/deploy/data/sponza/chain_texture_ddn.jpg +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:d795ffbf233015c010b723095a687a7ba1b8477ee85c384b90ad34ee3838cfbb -size 32648 diff --git a/deploy/data/sponza/copyright.txt b/deploy/data/sponza/copyright.txt new file mode 100644 index 0000000..a71ea1b --- /dev/null +++ b/deploy/data/sponza/copyright.txt @@ -0,0 +1,31 @@ +PBR textures for the Sponza model. +For more informations: www.alexandre-pestana.com + + +Original copyright: + +July 14, 2011 Morgan McGuire modified the model from Crytek's OBJ +export to correct some small errors. He computed bump maps from the +normal maps using normal2bump.cpp (since +MTL files expect height bumps, not normals), put the "mask" textures +into the alpha channel of the associated diffuse texture, cleaned up +noise in the masks, created the missing gi_flag.tga texture, and +removed the long untextured banner floating in the middle of the +atrium that appears in the file but in none of the published images of +the model. The banner is in banner.obj. + + + +http://www.crytek.com/cryengine/cryengine3/downloads + + +Sponza Model +August 19, 2010 +The Atrium Sponza Palace, Dubrovnik, is an elegant and improved model created by Frank Meinl. The original Sponza model was created by Marko Dabrovic in early 2002. Over the years, the Sponza Atrium scene has become one of the most popular 3D scenes for testing global illumination and radiosity due to it's specific architectural structure which is particularly complex for global illumination light. + +However, nowadays it is considered as a simple model, thus it was decided to crate a new model with highly improved appearance and scene complexity. It is donated to the public for radiosity and is represented in several different formats (3ds, Obj) for use with various commercial 3D applications and renderers. + + +Screenshot from the I3D paper +http://crytek.com/sites/default/files/20100301_lpv.pdf diff --git a/deploy/data/sponza/gi_flag.tga b/deploy/data/sponza/gi_flag.tga new file mode 100644 index 0000000..0b59a8a --- /dev/null +++ b/deploy/data/sponza/gi_flag.tga @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:15eb675ca87eb9989f377f4e399fde97b213890562d35d60a9d7aa7edcfb7b1d +size 49196 diff --git a/deploy/data/sponza/lion.jpg b/deploy/data/sponza/lion.jpg deleted file mode 100644 index a8d621c..0000000 --- a/deploy/data/sponza/lion.jpg +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:a02775b85f91bb4066845e6a72d6b898ba08f53a7bff467fe605c59d0469363e -size 373716 diff --git a/deploy/data/sponza/lion_ddn.jpg b/deploy/data/sponza/lion_ddn.jpg deleted file mode 100644 index 60395ea..0000000 --- a/deploy/data/sponza/lion_ddn.jpg +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:3ee30e192ba5ee60a93f1d0c1d68f1c5bca32f503a6d1be4b80515f997da448d -size 252023 diff --git a/deploy/data/sponza/spnza_bricks_a_ddn.jpg b/deploy/data/sponza/spnza_bricks_a_ddn.jpg deleted file mode 100644 index be901cf..0000000 --- a/deploy/data/sponza/spnza_bricks_a_ddn.jpg +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:ede75922579030cc5d89e1ef0920137bb7ef75147e511e95c91d5593da6c4a87 -size 159314 diff --git a/deploy/data/sponza/spnza_bricks_a_diff.jpg b/deploy/data/sponza/spnza_bricks_a_diff.jpg deleted file mode 100644 index 52f6b81..0000000 --- a/deploy/data/sponza/spnza_bricks_a_diff.jpg +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:6e4317d554e56a4a368da51eb4735a4afa5b5ab944cd4fac3cff1ea2ec920c6a -size 366857 diff --git a/deploy/data/sponza/spnza_bricks_a_spec.jpg b/deploy/data/sponza/spnza_bricks_a_spec.jpg deleted file mode 100644 index 2f8a15e..0000000 --- a/deploy/data/sponza/spnza_bricks_a_spec.jpg +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:8218f69bb29cdbb0fb0eb2befb58fc4e0619fec18a5bd00a0f62e8dcbf221fb4 -size 296434 diff --git a/deploy/data/sponza/sponza_arch_ddn.jpg b/deploy/data/sponza/sponza_arch_ddn.jpg deleted file mode 100644 index b53be67..0000000 --- a/deploy/data/sponza/sponza_arch_ddn.jpg +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:e9924b75178787cbaec0be13fc214f9913102604c775e182ceb15754387ba3b5 -size 98854 diff --git a/deploy/data/sponza/sponza_arch_diff.jpg b/deploy/data/sponza/sponza_arch_diff.jpg deleted file mode 100644 index ee3e504..0000000 --- a/deploy/data/sponza/sponza_arch_diff.jpg +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:165a93ac306ec005028d5e981535b185e96920e5647cf146a4b3b186da4dba7a -size 338608 diff --git a/deploy/data/sponza/sponza_arch_spec.jpg b/deploy/data/sponza/sponza_arch_spec.jpg deleted file mode 100644 index 6e0ae78..0000000 --- a/deploy/data/sponza/sponza_arch_spec.jpg +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:4378cfeda2d5065bbf68367eb570608c7ac852d4130a164cafec76a7c4c9fbfa -size 288147 diff --git a/deploy/data/sponza/sponza_ceiling_a_diff.jpg b/deploy/data/sponza/sponza_ceiling_a_diff.jpg deleted file mode 100644 index c49ea76..0000000 --- a/deploy/data/sponza/sponza_ceiling_a_diff.jpg +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:9c0837816e645b4b68c5ffb2781fcabef759142e6413f147d72b3d4f75d29150 -size 305420 diff --git a/deploy/data/sponza/sponza_ceiling_a_spec.jpg b/deploy/data/sponza/sponza_ceiling_a_spec.jpg deleted file mode 100644 index dc74e26..0000000 --- a/deploy/data/sponza/sponza_ceiling_a_spec.jpg +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:0d73c686345e17bd24bba7a426ccf9670c69c3c0204bdc55012aa06c0a6ffca8 -size 303721 diff --git a/deploy/data/sponza/sponza_column_a_ddn.jpg b/deploy/data/sponza/sponza_column_a_ddn.jpg deleted file mode 100644 index 813e0fe..0000000 --- a/deploy/data/sponza/sponza_column_a_ddn.jpg +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:fe102abf9b3528cf865467509ec84f410adf49ddd94a7aad798146ae72024c82 -size 252886 diff --git a/deploy/data/sponza/sponza_column_a_diff.jpg b/deploy/data/sponza/sponza_column_a_diff.jpg deleted file mode 100644 index 96cbcf5..0000000 --- a/deploy/data/sponza/sponza_column_a_diff.jpg +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:28d85264f4af85047ea2a0502ab19b1639c0983ec6d0415fc20b6badb4387ab5 -size 336229 diff --git a/deploy/data/sponza/sponza_column_a_spec.jpg b/deploy/data/sponza/sponza_column_a_spec.jpg deleted file mode 100644 index 39a2108..0000000 --- a/deploy/data/sponza/sponza_column_a_spec.jpg +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:6d9293b8c006a4bff56f2f931b3f455cbb7dc2afc7ff7185c28c75f6713fd8fb -size 317628 diff --git a/deploy/data/sponza/sponza_column_b_ddn.jpg b/deploy/data/sponza/sponza_column_b_ddn.jpg deleted file mode 100644 index 11cab3b..0000000 --- a/deploy/data/sponza/sponza_column_b_ddn.jpg +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:26deb98e9355c876a6954340c7f6a1152b96e82f7cbff648f6e805e7482445a1 -size 299910 diff --git a/deploy/data/sponza/sponza_column_b_diff.jpg b/deploy/data/sponza/sponza_column_b_diff.jpg deleted file mode 100644 index ea33f1b..0000000 --- a/deploy/data/sponza/sponza_column_b_diff.jpg +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:fada637fa1690c6b7ee7418cc8a32dafb99eee0e0322c935fbb4803753199307 -size 416387 diff --git a/deploy/data/sponza/sponza_column_b_spec.jpg b/deploy/data/sponza/sponza_column_b_spec.jpg deleted file mode 100644 index 54182d4..0000000 --- a/deploy/data/sponza/sponza_column_b_spec.jpg +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:ca3d5b741f7597c447abbaa4e1a4133661f83484855a03f99ea2053505e09cfb -size 317559 diff --git a/deploy/data/sponza/sponza_column_c_ddn.jpg b/deploy/data/sponza/sponza_column_c_ddn.jpg deleted file mode 100644 index b6a21eb..0000000 --- a/deploy/data/sponza/sponza_column_c_ddn.jpg +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:6e39b23216a8f796f572e3237a43fc33fa1b9f3c2d43dd293e4bc904a52b7fed -size 321554 diff --git a/deploy/data/sponza/sponza_column_c_diff.jpg b/deploy/data/sponza/sponza_column_c_diff.jpg deleted file mode 100644 index dae7f45..0000000 --- a/deploy/data/sponza/sponza_column_c_diff.jpg +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:f179f0279f6904de4bf74e5438426995621bf6e1178ea14b747ad8ebe1f4de8d -size 441261 diff --git a/deploy/data/sponza/sponza_column_c_spec.jpg b/deploy/data/sponza/sponza_column_c_spec.jpg deleted file mode 100644 index 0117623..0000000 --- a/deploy/data/sponza/sponza_column_c_spec.jpg +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:27794665e72f3ac577d95bc47d51d27d7d51d6a668c761b891013918d8504f7a -size 364839 diff --git a/deploy/data/sponza/sponza_curtain_blue_diff.jpg b/deploy/data/sponza/sponza_curtain_blue_diff.jpg deleted file mode 100644 index bba5e07..0000000 --- a/deploy/data/sponza/sponza_curtain_blue_diff.jpg +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:f1b6094ca8aa88d824a01c1115c029138d612b5b046ffafc7a998c2f732151ac -size 2131808 diff --git a/deploy/data/sponza/sponza_curtain_diff.jpg b/deploy/data/sponza/sponza_curtain_diff.jpg deleted file mode 100644 index 51db9bf..0000000 --- a/deploy/data/sponza/sponza_curtain_diff.jpg +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:239e87923d98e7d722c08290f567633f817b1868eaa4c2eb0fe229c3192b19b1 -size 2047994 diff --git a/deploy/data/sponza/sponza_curtain_green_diff.jpg b/deploy/data/sponza/sponza_curtain_green_diff.jpg deleted file mode 100644 index fcea1c7..0000000 --- a/deploy/data/sponza/sponza_curtain_green_diff.jpg +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:2df9ab155f39ff901d41bdcab0e2ef5a8c591ab7cf936021964f51fb5fdcdffd -size 1982011 diff --git a/deploy/data/sponza/sponza_details_diff.jpg b/deploy/data/sponza/sponza_details_diff.jpg deleted file mode 100644 index bccaf42..0000000 --- a/deploy/data/sponza/sponza_details_diff.jpg +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:8bbb9625e7b64669827272575d7ec3a144c419edaa7ec621478457538a23be79 -size 201736 diff --git a/deploy/data/sponza/sponza_details_spec.jpg b/deploy/data/sponza/sponza_details_spec.jpg deleted file mode 100644 index 7f4f39d..0000000 --- a/deploy/data/sponza/sponza_details_spec.jpg +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:03db4c5213f000078ec35f9ca404e99e026a9016d8b403eed66b47cbeb40f81d -size 301578 diff --git a/deploy/data/sponza/sponza_fabric_blue_diff.jpg b/deploy/data/sponza/sponza_fabric_blue_diff.jpg deleted file mode 100644 index 00a12c4..0000000 --- a/deploy/data/sponza/sponza_fabric_blue_diff.jpg +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:d923b7e955cf16b910ef4d5df33f312597ec9d6dd94866a5863ea3a9454dfd52 -size 430283 diff --git a/deploy/data/sponza/sponza_fabric_diff.jpg b/deploy/data/sponza/sponza_fabric_diff.jpg deleted file mode 100644 index 2f7091b..0000000 --- a/deploy/data/sponza/sponza_fabric_diff.jpg +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:d0a448878d89ddb8035242ab5452af1ffc8d6979b4f10b343551c9389b2c6097 -size 466634 diff --git a/deploy/data/sponza/sponza_fabric_green_diff.jpg b/deploy/data/sponza/sponza_fabric_green_diff.jpg deleted file mode 100644 index ab67231..0000000 --- a/deploy/data/sponza/sponza_fabric_green_diff.jpg +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:c41642a8e47950d92abaafc6de5f8b8374d16f3868a27549082cf1fe9724735b -size 435794 diff --git a/deploy/data/sponza/sponza_fabric_spec.jpg b/deploy/data/sponza/sponza_fabric_spec.jpg deleted file mode 100644 index 90b1c4a..0000000 --- a/deploy/data/sponza/sponza_fabric_spec.jpg +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:7ee375ff556647ab24725b210eed05f99caaa1218a36f3a18efc6fa94f570176 -size 418902 diff --git a/deploy/data/sponza/sponza_flagpole_diff.jpg b/deploy/data/sponza/sponza_flagpole_diff.jpg deleted file mode 100644 index 67c9c15..0000000 --- a/deploy/data/sponza/sponza_flagpole_diff.jpg +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:e17023ab9879ecde5b216cf34c1ef399d20c58cc57a5a254d7fa9eb2e4e04785 -size 248780 diff --git a/deploy/data/sponza/sponza_flagpole_spec.jpg b/deploy/data/sponza/sponza_flagpole_spec.jpg deleted file mode 100644 index 1f1e7ad..0000000 --- a/deploy/data/sponza/sponza_flagpole_spec.jpg +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:4b36b4e13e770fe9e4920b091918a3e5c6e62e40dda9b595321806124fa0df49 -size 360542 diff --git a/deploy/data/sponza/sponza_floor_a_ddn.jpg b/deploy/data/sponza/sponza_floor_a_ddn.jpg deleted file mode 100644 index ee33e8f..0000000 --- a/deploy/data/sponza/sponza_floor_a_ddn.jpg +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:915b62499d589d04b4146ff39d47f1b8e154bcc98dd798ddb7c23809683500bb -size 102390 diff --git a/deploy/data/sponza/sponza_floor_a_diff.jpg b/deploy/data/sponza/sponza_floor_a_diff.jpg deleted file mode 100644 index ef5f60e..0000000 --- a/deploy/data/sponza/sponza_floor_a_diff.jpg +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:f1ebc760034fe7be2f92f3a1c5ab25d20a182c83f442c4f7f8501b5181b99b6e -size 344863 diff --git a/deploy/data/sponza/sponza_floor_a_spec.jpg b/deploy/data/sponza/sponza_floor_a_spec.jpg deleted file mode 100644 index 76429e4..0000000 --- a/deploy/data/sponza/sponza_floor_a_spec.jpg +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:087c3f6399daf515500268db4cb2bdd9bb5f999c5a476175b67dc8aff892fa36 -size 224829 diff --git a/deploy/data/sponza/sponza_roof_diff.jpg b/deploy/data/sponza/sponza_roof_diff.jpg deleted file mode 100644 index e8f6a74..0000000 --- a/deploy/data/sponza/sponza_roof_diff.jpg +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:b8c53ef97c23706f62df7088d01b56b2ae608f33eba44898a32761092ef2b4e0 -size 552593 diff --git a/deploy/data/sponza/sponza_thorn_ddn.jpg b/deploy/data/sponza/sponza_thorn_ddn.jpg deleted file mode 100644 index 8e1a7c3..0000000 --- a/deploy/data/sponza/sponza_thorn_ddn.jpg +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:14b7dcb2728c3c19f6e7fd60005ff89f32fafbf294c6a0c484faf7c10c23dd4e -size 41072 diff --git a/deploy/data/sponza/sponza_thorn_diff.jpg b/deploy/data/sponza/sponza_thorn_diff.jpg deleted file mode 100644 index 6df969d..0000000 --- a/deploy/data/sponza/sponza_thorn_diff.jpg +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:3d9bafc41554f6caae32909049a12b0ace082cba46402314ab5cbd9ba682406c -size 82425 diff --git a/deploy/data/sponza/vase_ddn.jpg b/deploy/data/sponza/vase_ddn.jpg deleted file mode 100644 index 70bedf1..0000000 --- a/deploy/data/sponza/vase_ddn.jpg +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:30d24dd383b45ca98d26ea8a3c273b59108cf8e7423d4fc2ac93a7b5c19575d6 -size 418483 diff --git a/deploy/data/sponza/vase_dif.jpg b/deploy/data/sponza/vase_dif.jpg deleted file mode 100644 index 27c3ff1..0000000 --- a/deploy/data/sponza/vase_dif.jpg +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:90453a5d13cce6abe874181c78b12f1d189f63564957c9b55f240e5e483c3d25 -size 341785 diff --git a/deploy/data/sponza/vase_hanging.jpg b/deploy/data/sponza/vase_hanging.jpg deleted file mode 100644 index 1b76c28..0000000 --- a/deploy/data/sponza/vase_hanging.jpg +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:55df8c4b921dd60ec9a164c28b01480def625989e8badb33f195663c44d29320 -size 191476 diff --git a/deploy/data/sponza/vase_plant.jpg b/deploy/data/sponza/vase_plant.jpg deleted file mode 100644 index 2ac4b13..0000000 --- a/deploy/data/sponza/vase_plant.jpg +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:6618e5e4c1f5768cdf8eec7e3180cbc81b2fb8ec00cd734696db65ed9885ea24 -size 182011 diff --git a/deploy/data/sponza/vase_round.jpg b/deploy/data/sponza/vase_round.jpg deleted file mode 100644 index 5c9f7b4..0000000 --- a/deploy/data/sponza/vase_round.jpg +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:e03fb62b74f59e98b1e9d1a62cabfd385fa36a91c38ce6976bedc7e7bc5ff027 -size 367075 diff --git a/deploy/data/sponza/vase_round_ddn.jpg b/deploy/data/sponza/vase_round_ddn.jpg deleted file mode 100644 index 50195a4..0000000 --- a/deploy/data/sponza/vase_round_ddn.jpg +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:c27f89c31930664d8b3d8a9dfa0804eb08a6fb3f18b75b9014f11b653b67b946 -size 108210 diff --git a/deploy/data/sponza/vase_round_spec.jpg b/deploy/data/sponza/vase_round_spec.jpg deleted file mode 100644 index 873f140..0000000 --- a/deploy/data/sponza/vase_round_spec.jpg +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:86599ab6e0d1fa21bc6ab25e21ea913328ff7ce6eb8450cebf9194c93aec6fe3 -size 271638 diff --git a/deploy/data/sword.mtl b/deploy/data/sword.mtl index c5cf077..88e8262 100644 --- a/deploy/data/sword.mtl +++ b/deploy/data/sword.mtl @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:c4a6427eb082c3e19637ebdc5fb49699cdbc6a9f7e5a0b0a814036794779bc10 -size 100 +oid sha256:21173927cb0e81a2acbc0e4e8382293c08d8e633f47caa3ce76f870b56b6d561 +size 129 diff --git a/src/engine.cpp b/src/engine.cpp index 05c6e0b..ecf45d8 100644 --- a/src/engine.cpp +++ b/src/engine.cpp @@ -12,6 +12,7 @@ #include "sparrowshell/sparrowshell.h" #include "scene/physicsdebugnode.h" #include "imgui/imgui.h" +#include "tools/loader.h" Engine::Engine() : m_window(nullptr), diff --git a/src/scene/gui/backgroundnode.cpp b/src/scene/gui/backgroundnode.cpp index fcdf5be..7358055 100644 --- a/src/scene/gui/backgroundnode.cpp +++ b/src/scene/gui/backgroundnode.cpp @@ -7,7 +7,7 @@ #include "glm/vec3.hpp" #include "SparrowRenderer/mesh.h" -#include "SparrowRenderer/phongmaterial.h" +#include "SparrowRenderer/pbrmaterial.h" BackGroundNode::BackGroundNode(glm::vec2 dimension, glm::vec3 color, float opacity,float depth): m_dimension(dimension), @@ -18,9 +18,9 @@ BackGroundNode::BackGroundNode(glm::vec2 dimension, glm::vec3 color, float opaci { Mesh* mesh = new Mesh("background"); mesh->addRectangle2D(glm::vec2(0),dimension); - PhongMaterial *mat = new PhongMaterial(); - mat->diffuse = color; - mat->m_opacity = opacity; + PBRMaterial *mat = new PBRMaterial(); + mat->albedo = color; + mat->opacity = opacity; mesh->setMaterial(mat); mesh->setDepth(depth); mesh->initGL(); @@ -30,13 +30,13 @@ BackGroundNode::BackGroundNode(glm::vec2 dimension, glm::vec3 color, float opaci void BackGroundNode::update(){ if(m_color_updated){ - PhongMaterial* mat = (PhongMaterial*) m_mesh->getGeometryNode()->mesh->getMaterial(); - mat->diffuse = m_color; + PBRMaterial* mat = (PBRMaterial*) m_mesh->getGeometryNode()->mesh->getMaterial(); + mat->albedo = m_color; m_color_updated = false; } if(m_opacity_updated){ - PhongMaterial* mat = (PhongMaterial*) m_mesh->getGeometryNode()->mesh->getMaterial(); - mat->m_opacity = m_opacity; + PBRMaterial* mat = (PBRMaterial*) m_mesh->getGeometryNode()->mesh->getMaterial(); + mat->opacity = m_opacity; m_opacity_updated = false; } GUINode::update(); diff --git a/src/scene/gui/buttonnode.cpp b/src/scene/gui/buttonnode.cpp index 94e2520..ca7d0f8 100644 --- a/src/scene/gui/buttonnode.cpp +++ b/src/scene/gui/buttonnode.cpp @@ -10,7 +10,7 @@ #include "SparrowRenderer/sparrowrenderer.h" #include "SparrowRenderer/mesh.h" -#include "SparrowRenderer/phongmaterial.h" +#include "SparrowRenderer/pbrmaterial.h" #include "sparrowshell/sparrowshell.h" #include "tools/font.h" diff --git a/src/scene/gui/labelnode.cpp b/src/scene/gui/labelnode.cpp index ed72a00..d38a80f 100644 --- a/src/scene/gui/labelnode.cpp +++ b/src/scene/gui/labelnode.cpp @@ -3,7 +3,7 @@ #include "resourcemanager.h" #include "SparrowRenderer/mesh.h" -#include "SparrowRenderer/phongmaterial.h" +#include "SparrowRenderer/pbrmaterial.h" #include @@ -64,8 +64,8 @@ void LabelNode::update(){ } if(m_color_updated){ if(m_text){ - PhongMaterial* mat = (PhongMaterial*) m_text->m_geometry.mesh->getMaterial(); - mat->diffuse = m_color; + PBRMaterial* mat = (PBRMaterial*) m_text->m_geometry.mesh->getMaterial(); + mat->albedo = m_color; m_color_updated = false; } } diff --git a/src/scene/gui/scrollbarnode.cpp b/src/scene/gui/scrollbarnode.cpp index 2abd15e..875c12a 100644 --- a/src/scene/gui/scrollbarnode.cpp +++ b/src/scene/gui/scrollbarnode.cpp @@ -5,7 +5,7 @@ #include "scene/meshnode.h" #include "SparrowRenderer/mesh.h" -#include "SparrowRenderer/phongmaterial.h" +#include "SparrowRenderer/pbrmaterial.h" #include "sparrowshell/sparrowshell.h" ScrollBarNode::ScrollBarNode(glm::vec2 dimension, glm::vec3 bar_color): @@ -22,9 +22,9 @@ ScrollBarNode::ScrollBarNode(glm::vec2 dimension, glm::vec3 bar_color): { Mesh* mesh = new Mesh("scrollbar"); mesh->addRectangle2D(glm::vec2(0),m_dimension); - PhongMaterial* mat = new PhongMaterial(); - mat->diffuse = m_bar_color; - mat->m_opacity = 0.8; + PBRMaterial* mat = new PBRMaterial(); + mat->albedo = m_bar_color; + mat->opacity = 0.8; mesh->setMaterial(mat); mesh->setDepth(SparrowShell::SHELL_DEPTH+1); mesh->initGL(); @@ -63,8 +63,8 @@ void ScrollBarNode::update() } if(m_bar_color_updated) { - PhongMaterial* mat = (PhongMaterial*) m_bar->getGeometryNode()->mesh->getMaterial(); - mat->diffuse = m_bar_color; + PBRMaterial* mat = (PBRMaterial*) m_bar->getGeometryNode()->mesh->getMaterial(); + mat->albedo = m_bar_color; m_bar_color_updated = false; } if(needTransformUpdate) diff --git a/src/scene/gui/scrollbarnode.h b/src/scene/gui/scrollbarnode.h index c6b1348..4f8d6a4 100644 --- a/src/scene/gui/scrollbarnode.h +++ b/src/scene/gui/scrollbarnode.h @@ -10,12 +10,12 @@ class ScrollBarNode : public GUINode protected: glm::vec2 m_dimension; glm::vec2 m_bar_position; - int m_index_position; - int m_bar_size; - int m_total_size; glm::vec2 m_bar_dimension; glm::vec3 m_bar_color; bool m_bar_color_updated; + int m_index_position; + int m_bar_size; + int m_total_size; MeshNode* m_bar; bool m_bar_resized; bool m_bar_moved; diff --git a/src/scene/gui/textinputnode.cpp b/src/scene/gui/textinputnode.cpp index cd8cb64..1103a7d 100644 --- a/src/scene/gui/textinputnode.cpp +++ b/src/scene/gui/textinputnode.cpp @@ -17,8 +17,8 @@ TextInputNode::TextInputNode(glm::vec2 dimension): // Font *shellfont = RESOURCE_GET(Font,"shellfont"); Mesh* mesh = new Mesh(); mesh->addRectangle2D(glm::vec2(0),glm::vec2(2, m_font_size)); - PhongMaterial* mat = new PhongMaterial(); - mat->diffuse = glm::vec3(1,1,1); + PBRMaterial* mat = new PBRMaterial(); + mat->albedo = glm::vec3(1,1,1); mesh->setMaterial(mat); mesh->setDepth(30); mesh->initGL(); diff --git a/src/scene/physicsdebugnode.cpp b/src/scene/physicsdebugnode.cpp index e4492e8..d12f02c 100644 --- a/src/scene/physicsdebugnode.cpp +++ b/src/scene/physicsdebugnode.cpp @@ -1,16 +1,11 @@ #include "physicsdebugnode.h" #include "SparrowRenderer/mesh.h" -#include "SparrowRenderer/phongmaterial.h" +#include "SparrowRenderer/pbrmaterial.h" PhysicsDebugNode::PhysicsDebugNode() : MeshNode(new Mesh()) { - PhongMaterial* mat = new PhongMaterial(); - mat->emission = glm::vec3(1, 0, 0); - mat->diffuse = glm::vec3(0); - mat->specular = glm::vec3(0); - - m_geometry.mesh->setMaterial(mat); + m_geometry.mesh->setMaterial(new PBRMaterial()); m_geometry.mesh->setPrimitiveType(GL_LINES); m_geometry.mesh->setWireframe(true); diff --git a/src/scene/playercharacternode.cpp b/src/scene/playercharacternode.cpp index 0567efe..0bc2edf 100644 --- a/src/scene/playercharacternode.cpp +++ b/src/scene/playercharacternode.cpp @@ -55,13 +55,14 @@ void FirstPersonCamera::setUpVector(const glm::vec3 &up) } const float WALK_SPEED = 5.f; -const float PLAYER_RADIUS = 0.30f; -const float PLAYER_HEIGHT = 1.75f; -const float EYES_OFFSET = 0.775f; +const float TORSO_RADIUS = 0.30f; +const float TORSO_HEIGHT = 0.8f; +const float LEGS_HEIGHT = 1.f; +const float EYES_OFFSET = 0.3f; const float JUMP_VELOCITY = 5.f; -const float EPSILON = 1.5f; PlayerCharacterNode::PlayerCharacterNode(bool noClip) : + m_jumping(false), m_noclipMode(noClip), m_inputActions({NO_ACTION, NO_ACTION, NO_ACTION, NO_ACTION, NO_ACTION}) { @@ -70,7 +71,7 @@ PlayerCharacterNode::PlayerCharacterNode(bool noClip) : m_playerLightNode->m_parent = this; // Create the shape - btCollisionShape *shape = new btCapsuleShape(PLAYER_RADIUS, PLAYER_HEIGHT); + btCollisionShape *shape = new btCapsuleShape(TORSO_RADIUS, TORSO_HEIGHT); // Add mass btVector3 localInertia; @@ -114,6 +115,8 @@ void PlayerCharacterNode::setPosition(float x, float y, float z) void PlayerCharacterNode::update() { Input *input = getEngine().getInput(); + float deltaTime = getEngine().getDeltaTime(); + // get events int walk = 0; int strafe = 0; @@ -140,7 +143,7 @@ void PlayerCharacterNode::update() // update camera position btVector3 pos = m_rigidBody->getCenterOfMassPosition(); - m_playerLight->setPos(glm::vec3(pos.x(), pos.y()+PLAYER_HEIGHT/2.f, pos.z())); + m_playerLight->setPos(glm::vec3(pos.x(), pos.y()+TORSO_HEIGHT/2.f, pos.z())); m_fpsCamera.moveTo(glm::vec3(pos.x(), pos.y()+EYES_OFFSET, pos.z())); // update body movement @@ -174,9 +177,9 @@ void PlayerCharacterNode::update() { bool onGround = false; btVector3 start(pos); - start.setY(start.y() - PLAYER_HEIGHT/2.f); - btVector3 end(pos); - end.setY(end.y() - EPSILON); + start.setY(start.y() - TORSO_HEIGHT/2.f); + btVector3 end(start); + end.setY(end.y() - (LEGS_HEIGHT*2.f)); btCollisionWorld::ClosestRayResultCallback RayCallback(start, end); getEngine().getPhysics()->rayTest(start, end, RayCallback); float controlRatio = 0.f; // 1 = total control, 0 = no control, can be seen as a slipperiness factor @@ -186,11 +189,32 @@ void PlayerCharacterNode::update() btVector3 normal = RayCallback.m_hitNormalWorld; float slope = normal.dot(btVector3(0, 1, 0)); controlRatio = slope > 0.4f ? 0.2f * slope : 0.f; + + if(onGround) + { + float displacement = RayCallback.m_hitPointWorld.y() - (end.y() + start.y())/2.f; + if(abs(displacement) > 0.1f) + pos.setY(pos.y() + deltaTime*0.01f*(displacement > 0 ? 1 : -1)); + else + pos.setY(pos.y() + displacement/4); + btTransform transform = btTransform::getIdentity(); + transform.setOrigin(pos); + m_rigidBody->setWorldTransform(transform); + } + if(jump) + m_jumping = true; + else + m_jumping = false; } btVector3 newVelocity = velocity*(1.f-controlRatio) + targetVelocity*controlRatio; - if(jump && onGround) - newVelocity.setY(JUMP_VELOCITY); + if(onGround) + { + if(m_jumping) + newVelocity.setY(JUMP_VELOCITY); + else + newVelocity.setY(0); + } m_rigidBody->setLinearVelocity(newVelocity); } m_playerLightNode->update(); diff --git a/src/scene/playercharacternode.h b/src/scene/playercharacternode.h index 865e2f9..e83659c 100644 --- a/src/scene/playercharacternode.h +++ b/src/scene/playercharacternode.h @@ -38,6 +38,7 @@ class PlayerCharacterNode : public CameraNode btRigidBody* m_rigidBody; FirstPersonCamera m_fpsCamera; + bool m_jumping; bool m_noclipMode; btVector3 m_noclip_pos; diff --git a/src/scene/textnode.h b/src/scene/textnode.h index b78cd03..eaafe73 100644 --- a/src/scene/textnode.h +++ b/src/scene/textnode.h @@ -4,7 +4,7 @@ #include "meshnode.h" #include "SparrowRenderer/mesh.h" -#include "SparrowRenderer/phongmaterial.h" +#include "SparrowRenderer/pbrmaterial.h" #include "glm/vec2.hpp" diff --git a/src/sparrowshell/shellscrollbar.cpp b/src/sparrowshell/shellscrollbar.cpp index 192beff..f88fb40 100644 --- a/src/sparrowshell/shellscrollbar.cpp +++ b/src/sparrowshell/shellscrollbar.cpp @@ -1,7 +1,7 @@ #include "shellscrollbar.h" #include "sparrowshell.h" #include "SparrowRenderer/mesh.h" -#include "SparrowRenderer/phongmaterial.h" +#include "SparrowRenderer/pbrmaterial.h" #include "scene/meshnode.h" #include "tools/utils.h" #include diff --git a/src/sparrowshell/sparrowshell.cpp b/src/sparrowshell/sparrowshell.cpp index 758c4bf..7f4477a 100644 --- a/src/sparrowshell/sparrowshell.cpp +++ b/src/sparrowshell/sparrowshell.cpp @@ -9,7 +9,7 @@ #include "scriptnode.h" #include "SparrowRenderer/mesh.h" -#include "SparrowRenderer/phongmaterial.h" +#include "SparrowRenderer/pbrmaterial.h" #include "tools/font.h" #include "resourcemanager.h" @@ -33,8 +33,8 @@ SparrowShell::SparrowShell(sf::Window* window): setPosition(glm::vec2(0)); setVisible(false); - Font* fonte_des_neiges = Loader::loadFont("data/consolas.fnt","consolas.png"); - RESOURCE_ADD(fonte_des_neiges,Font,"shellfont"); + Font* fonte_des_neiges = Loader::loadFont("data/font/consolas.fnt", "font/consolas.png"); + RESOURCE_ADD(fonte_des_neiges, Font, "shellfont"); //Create mesh for background m_background = new BackGroundNode(m_dimension,glm::vec3(0.1,0.1,0.1),0.75,SHELL_DEPTH); diff --git a/src/test/main.cpp b/src/test/main.cpp index 51e8c57..2ffaf5a 100644 --- a/src/test/main.cpp +++ b/src/test/main.cpp @@ -2,8 +2,9 @@ #include #include #include +#include #include -#include +#include #include #include #include @@ -87,12 +88,9 @@ void generateTerrain(SceneTree *scene, btDiscreteDynamicsWorld *world) GraphicalContainerNode* terrainContainer = new GraphicalContainerNode(); scene->getRootObject()->addChild(terrainContainer); TestGen gen; - PhongMaterial *mat = new PhongMaterial(); - mat->shininess = 5.f; - mat->diffuse = glm::vec3(0.1f, 0.4f, 0.2f); - mat->specular = glm::vec3(0.1f); + PBRMaterial *mat = new PBRMaterial(); + mat->albedo = glm::vec3(0.1f, 0.4f, 0.2f); - mat->emission = glm::vec3(0.5f, 0.1f, 0.1f); for(int x=-3; x<3; ++x) for(int y=-2; y<2; ++y) for(int z=-3; z<3; ++z) @@ -195,7 +193,7 @@ public: //player m_player = new PlayerCharacterNode(false); m_player->setInputs(DefaultKeysMap::MOVE_FORWARD, DefaultKeysMap::MOVE_BACKWARD, DefaultKeysMap::STRAFE_LEFT, DefaultKeysMap::STRAFE_RIGHT, DefaultKeysMap::JUMP, DefaultKeysMap::TOGGLE_NOCLIP); - SceneTree* scene = RESOURCE_GET(SceneTree,m_demo_scene); + SceneTree* scene = RESOURCE_GET(SceneTree, m_demo_scene); scene->getRootObject()->addChild(m_player); scene->setMainCamera(m_player); @@ -204,7 +202,12 @@ public: scene->getRootObject()->addChild(potator); //lighting - LightNode *ambientLight = new LightNode(new AmbientLight(glm::vec3(0.05f))); + Texture* skyboxTexture = RESOURCE_GET(Texture, "skybox"); + Texture* ambientTexture = RESOURCE_GET(Texture, "ambient"); + LightNode *ambientLight = new LightNode(new AmbientLight(ambientTexture, skyboxTexture)); + + DeferredPipeline* pipeline = dynamic_cast(scene->getPipeline()); + pipeline->setSkybox(RESOURCE_GET(Texture, "craterlake")); DirectionnalLight* sun = new DirectionnalLight(glm::vec3(5, 8, -2), glm::vec3(0.9f)); LightNode *sunLight = new LightNode(sun); @@ -315,6 +318,41 @@ int main(){ engine.createWindow("Sparrow Engine Demo", config->width, config->height, config->mode); engine.getWindow()->setVerticalSyncEnabled(config->vsync); + // opengl context is created, we can initialize the global textures used by the rendering pipeline + Image* img = Loader::loadImage("ibl_brdf_lut.png", 24, false); + AmbientLight::setBrdfLut(new Texture(img, false)); + delete img; + Image * imgs[6]; + imgs[0] = Loader::loadImage("skybox/craterlake_rt.tga", 24, false); // right + imgs[1] = Loader::loadImage("skybox/craterlake_lf.tga", 24, false); // left + imgs[2] = Loader::loadImage("skybox/craterlake_up.tga", 24, false); // top + imgs[3] = Loader::loadImage("skybox/craterlake_dn.tga", 24, false); // bottom + imgs[4] = Loader::loadImage("skybox/craterlake_ft.tga", 24, false); // front + imgs[5] = Loader::loadImage("skybox/craterlake_bk.tga", 24, false); // back + RESOURCE_ADD(new Texture(imgs), Texture, "craterlake"); + for(int i=0; i<6; ++i) + delete imgs[i]; + + imgs[0] = Loader::loadImage("skybox/1_posX.tga", 24, false); // right + imgs[1] = Loader::loadImage("skybox/2_negX.tga", 24, false); // left + imgs[2] = Loader::loadImage("skybox/3_posY.tga", 24, false); // top + imgs[3] = Loader::loadImage("skybox/4_negY.tga", 24, false); // bottom + imgs[4] = Loader::loadImage("skybox/5_posZ.tga", 24, false); // front + imgs[5] = Loader::loadImage("skybox/6_negZ.tga", 24, false); // back + RESOURCE_ADD(new Texture(imgs), Texture, "skybox"); + for(int i=0; i<6; ++i) + delete imgs[i]; + + imgs[0] = Loader::loadImage("ambient/1_posX.tga", 24, false); // right + imgs[1] = Loader::loadImage("ambient/2_negX.tga", 24, false); // left + imgs[2] = Loader::loadImage("ambient/3_posY.tga", 24, false); // top + imgs[3] = Loader::loadImage("ambient/4_negY.tga", 24, false); // bottom + imgs[4] = Loader::loadImage("ambient/5_posZ.tga", 24, false); // front + imgs[5] = Loader::loadImage("ambient/6_negZ.tga", 24, false); // back + RESOURCE_ADD(new Texture(imgs), Texture, "ambient"); + for(int i=0; i<6; ++i) + delete imgs[i]; + // engine.toggleMouseVisibility(); // setting up SparrowEngine diff --git a/src/test/potator.cpp b/src/test/potator.cpp index 0963e47..5421fd9 100644 --- a/src/test/potator.cpp +++ b/src/test/potator.cpp @@ -4,7 +4,7 @@ #include #include "scene/scenetree.h" #include "SparrowRenderer/parametricmesh.h" -#include "SparrowRenderer/phongmaterial.h" +#include "SparrowRenderer/pbrmaterial.h" #include "scene/meshnode.h" #include "tools/loader.h" #include "SparrowRenderer/texture.h" @@ -66,12 +66,11 @@ Potator::Potator(PlayerCharacterNode * player, m_cubeMesh->addTriangle(id+7, id+5, id+6); } - Image* wood = Loader::loadImage("woodbox.jpg", false); - PhongMaterial *mat = new PhongMaterial(); - mat->setTexture(PhongMaterial::DIFFUSE_SLOT, new Texture(wood), "wood_texture"); - mat->specular = glm::vec3(0.3f); - mat->shininess = 5.f; - mat->emission = glm::vec3(0.0f); + Image* wood = Loader::loadImage("woodbox.jpg", 24); + PBRMaterial *mat = new PBRMaterial(); + mat->setTexture(PBRMaterial::ALBEDO_SLOT, new Texture(wood), "wood_texture"); + mat->roughness = 0.8f; + mat->metallic = 0.1f; m_cubeMesh->setMaterial(mat); @@ -83,11 +82,10 @@ Potator::Potator(PlayerCharacterNode * player, m_cubeMass = cubeDim.x*cubeDim.y*cubeDim.z*density; // creating sphere - mat = new PhongMaterial(); - mat->diffuse = glm::vec3(0.1f); - mat->specular = glm::vec3(0.9f); - mat->shininess = 150.f; - mat->emission = glm::vec3(0.0f); + mat = new PBRMaterial(); + mat->albedo = glm::vec3(0.1f); + mat->roughness = 0.1f; + mat->metallic = 0.9f; SphereGenerator sphereGen; m_sphereMesh = sphereGen.generateGeodesicMesh(mat, 2, sphereRadius); diff --git a/src/tools/font.cpp b/src/tools/font.cpp index 8ce7723..98f9ac0 100644 --- a/src/tools/font.cpp +++ b/src/tools/font.cpp @@ -1,5 +1,5 @@ #include "font.h" -#include +#include #include "SparrowRenderer/mesh.h" #include "scene/textnode.h" @@ -38,10 +38,10 @@ TextNode* Font::getTextNode(std::string s, glm::vec3 color, float font_size,bool current_pos.x += charInfo.xadvance; } } - PhongMaterial *mat = new PhongMaterial(); + PBRMaterial *mat = new PBRMaterial(); // TODO : delete this material somewhere (garbage collector ?) - mat->setTexture(PhongMaterial::ALPHA_SLOT, m_tex, "font_texture"); - mat->diffuse = color; + mat->setTexture(PBRMaterial::ALPHA_SLOT, m_tex, "font_texture"); + mat->albedo = color; textmesh->setMaterial((Material*)mat); textmesh->initGL(); TextNode *text = new TextNode(textmesh,ws,font_size,visible); diff --git a/src/tools/loader.cpp b/src/tools/loader.cpp index db9c72e..bce4edf 100644 --- a/src/tools/loader.cpp +++ b/src/tools/loader.cpp @@ -6,7 +6,7 @@ #include "../resourcemanager.h" #include #include -#include +#include #include "SparrowRenderer/texture.h" #include "utils.h" #include "font.h" @@ -64,7 +64,7 @@ std::unordered_map* Loader::loadConfigFile(const std:: return configPtr; } -Image* Loader::loadImage(const std::string &filename, bool hasAlpha, bool reversed) +Image* Loader::loadImage(const std::string &filename, int depth, bool reversed) { sf::Image sfImg; bool ok = sfImg.loadFromFile(tex_directory+filename); @@ -73,19 +73,20 @@ Image* Loader::loadImage(const std::string &filename, bool hasAlpha, bool revers if(reversed) sfImg.flipVertically(); Image* img = new Image(); - img->depth = hasAlpha ? 32 : 24; + img->depth = depth; img->width = sfImg.getSize().x; img->height = sfImg.getSize().y; int size = img->width*img->height*(img->depth/8); img->allocate(size); const sf::Uint8 *pixels = sfImg.getPixelsPtr(); - if(hasAlpha) + if(depth == 32) memcpy(img->pixels.data(), pixels, size); else { + int bytesPerPixel = depth/8; sf::Uint8 *ptr = (sf::Uint8*)img->pixels.data(); for(int i=0; iwidth*img->height; ++i) - memcpy(ptr + i*3, pixels + i*4, 3); + memcpy(ptr + i*bytesPerPixel, pixels + i*4, bytesPerPixel); } return img; } @@ -133,7 +134,7 @@ Font* Loader::loadFont(const std::string &description_file, const std::string &t font->addCharInfo(id,char_info); } - Image* fucking_image_of_doom = loadImage(texture_file, true, false); + Image* fucking_image_of_doom = loadImage(texture_file, 32, false); if(fucking_image_of_doom == NULL) printf("can't load \"%s\".\n", texture_file.c_str()); Texture* texture = new Texture(fucking_image_of_doom, false); // mipmaps are doing a very bad job at interpolating alpha component @@ -155,8 +156,8 @@ std::vector Loader::loadMesh(const std::string &filename){ if(defaultMat == NULL) { - defaultMat = new PhongMaterial(); - RESOURCE_ADD(defaultMat,Material,"default"); + defaultMat = new PBRMaterial(); + RESOURCE_ADD(defaultMat, Material, "default"); } Material* currentMat = defaultMat; std::ifstream file(obj_directory + filename); @@ -260,8 +261,8 @@ std::vector Loader::loadMesh(const std::string &filename){ if(currentMat == NULL) { fprintf(stderr, "cannot find any material named : %s.\n", material_name.c_str()); - currentMat = new PhongMaterial(); - RESOURCE_ADD(currentMat,Material,material_name); + currentMat = new PBRMaterial(); + RESOURCE_ADD(currentMat, Material, material_name); } currentMesh->setMaterial(currentMat); currentMesh->setName(material_name); @@ -288,7 +289,7 @@ std::vector Loader::loadMesh(const std::string &filename){ Mesh* m = meshes[i]; if(m->normals.empty()) m->computeNormals(); - if(m->getFlags() & (1 << Mesh::MATERIAL_PHONG_NORMAL_MAP)) + if(m->getFlags() & (1 << Mesh::MATERIAL_PBR_NORMAL_MAP)) m->computeTangents(); m->mergeVertices(); } @@ -308,7 +309,7 @@ bool Loader::loadMTL(const std::string &filename) return false; } - PhongMaterial* mat = NULL; + PBRMaterial* mat = NULL; bool hasNormalMap = false; std::getline(file,line); @@ -329,63 +330,67 @@ bool Loader::loadMTL(const std::string &filename) } else if((tokens[0] == "newmtl") && tokens.size() == 2) { - mat = new PhongMaterial(); - RESOURCE_ADD(mat,Material,tokens[1]); + mat = new PBRMaterial(); + RESOURCE_ADD(mat, Material, tokens[1]); } - else if((tokens[0].compare("Ka") == 0) && tokens.size() == 4) + else if((tokens[0].compare("emission") == 0) && tokens.size() == 4) { mat->emission.r = std::stof(tokens[1]); mat->emission.g = std::stof(tokens[2]); mat->emission.b = std::stof(tokens[3]); } - else if(tokens[0].compare("Kd") == 0 && tokens.size() == 4) + else if(tokens[0].compare("albedo") == 0 && tokens.size() == 4) { - mat->diffuse.r = std::stof(tokens[1]); - mat->diffuse.g = std::stof(tokens[2]); - mat->diffuse.b = std::stof(tokens[3]); + mat->albedo.r = std::stof(tokens[1]); + mat->albedo.g = std::stof(tokens[2]); + mat->albedo.b = std::stof(tokens[3]); } - else if(tokens[0].compare("Ks") == 0 && tokens.size() == 4) + else if(tokens[0].compare("roughness") == 0 && tokens.size() == 2) { - mat->specular.r = std::stof(tokens[1]); - mat->specular.g = std::stof(tokens[2]); - mat->specular.b = std::stof(tokens[3]); + mat->roughness = std::stof(tokens[1]); } - else if(tokens[0].compare("Ns") == 0 && tokens.size() == 2) + else if(tokens[0].compare("metallic") == 0 && tokens.size() == 2) { - mat->shininess = std::stof(tokens[1]); + mat->metallic = std::stof(tokens[1]); } else if((tokens[0].substr(0,4) == "map_") && tokens.size() == 2) { - if(tokens[0].compare("map_Ka") == 0){ - mat->textures[PhongMaterial::EMISSION_SLOT] = RESOURCE_GET(Texture,tokens[1]); - if (mat->textures[PhongMaterial::EMISSION_SLOT] == NULL){ - mat->textures[PhongMaterial::EMISSION_SLOT] = new Texture(loadImage(tokens[1])); - RESOURCE_ADD(mat->textures[PhongMaterial::EMISSION_SLOT], Texture, tokens[1]); + if(tokens[0].compare("map_emission") == 0){ + mat->textures[PBRMaterial::EMISSION_SLOT] = RESOURCE_GET(Texture,tokens[1]); + if (mat->textures[PBRMaterial::EMISSION_SLOT] == NULL){ + mat->textures[PBRMaterial::EMISSION_SLOT] = new Texture(loadImage(tokens[1], 24)); + RESOURCE_ADD(mat->textures[PBRMaterial::EMISSION_SLOT], Texture, tokens[1]); } - } else if(tokens[0].compare("map_Kd") == 0) { - mat->textures[PhongMaterial::DIFFUSE_SLOT] = RESOURCE_GET(Texture,tokens[1]); - if (mat->textures[PhongMaterial::DIFFUSE_SLOT] == NULL){ - mat->textures[PhongMaterial::DIFFUSE_SLOT] = new Texture(loadImage(tokens[1])); - RESOURCE_ADD(mat->textures[PhongMaterial::DIFFUSE_SLOT],Texture,tokens[1]); + } else if(tokens[0].compare("map_albedo") == 0) { + mat->textures[PBRMaterial::ALBEDO_SLOT] = RESOURCE_GET(Texture,tokens[1]); + if (mat->textures[PBRMaterial::ALBEDO_SLOT] == NULL){ + mat->textures[PBRMaterial::ALBEDO_SLOT] = new Texture(loadImage(tokens[1])); + RESOURCE_ADD(mat->textures[PBRMaterial::ALBEDO_SLOT],Texture,tokens[1]); } - } else if(tokens[0].compare("map_Ks") == 0) { - mat->textures[PhongMaterial::SPECULAR_SLOT] = RESOURCE_GET(Texture,tokens[1]); - if (mat->textures[PhongMaterial::SPECULAR_SLOT] == NULL){ - mat->textures[PhongMaterial::SPECULAR_SLOT] = new Texture(loadImage(tokens[1])); - RESOURCE_ADD(mat->textures[PhongMaterial::SPECULAR_SLOT],Texture,tokens[1]); + } else if(tokens[0].compare("map_roughness") == 0) { + mat->textures[PBRMaterial::ROUGHNESS_SLOT] = RESOURCE_GET(Texture,tokens[1]); + if (mat->textures[PBRMaterial::ROUGHNESS_SLOT] == NULL){ + mat->textures[PBRMaterial::ROUGHNESS_SLOT] = new Texture(loadImage(tokens[1], 8)); + RESOURCE_ADD(mat->textures[PBRMaterial::ROUGHNESS_SLOT],Texture,tokens[1]); } - } else if(tokens[0].compare("map_Normal") == 0) { - mat->textures[PhongMaterial::NORMALS_SLOT] = RESOURCE_GET(Texture,tokens[1]); - if (mat->textures[PhongMaterial::NORMALS_SLOT] == NULL){ - mat->textures[PhongMaterial::NORMALS_SLOT] = new Texture(loadImage(tokens[1])); - RESOURCE_ADD(mat->textures[PhongMaterial::NORMALS_SLOT],Texture,tokens[1]); + } else if(tokens[0].compare("map_metallic") == 0) { + mat->textures[PBRMaterial::METALLIC_SLOT] = RESOURCE_GET(Texture,tokens[1]); + if (mat->textures[PBRMaterial::METALLIC_SLOT] == NULL){ + mat->textures[PBRMaterial::METALLIC_SLOT] = new Texture(loadImage(tokens[1], 8)); + RESOURCE_ADD(mat->textures[PBRMaterial::METALLIC_SLOT],Texture,tokens[1]); + } + } else if(tokens[0].compare("map_normal") == 0) { + mat->textures[PBRMaterial::NORMALS_SLOT] = RESOURCE_GET(Texture,tokens[1]); + if (mat->textures[PBRMaterial::NORMALS_SLOT] == NULL){ + mat->textures[PBRMaterial::NORMALS_SLOT] = new Texture(loadImage(tokens[1], 24)); + RESOURCE_ADD(mat->textures[PBRMaterial::NORMALS_SLOT],Texture,tokens[1]); } hasNormalMap = true; - } else if(tokens[0].compare("map_d") == 0) { - mat->textures[PhongMaterial::ALPHA_SLOT] = RESOURCE_GET(Texture,tokens[1]); - if (mat->textures[PhongMaterial::ALPHA_SLOT] == NULL){ - mat->textures[PhongMaterial::ALPHA_SLOT] = new Texture(loadImage(tokens[1])); - RESOURCE_ADD(mat->textures[PhongMaterial::ALPHA_SLOT],Texture,tokens[1]); + } else if(tokens[0].compare("map_alpha") == 0) { + mat->textures[PBRMaterial::ALPHA_SLOT] = RESOURCE_GET(Texture,tokens[1]); + if (mat->textures[PBRMaterial::ALPHA_SLOT] == NULL){ + mat->textures[PBRMaterial::ALPHA_SLOT] = new Texture(loadImage(tokens[1], 8)); + RESOURCE_ADD(mat->textures[PBRMaterial::ALPHA_SLOT],Texture,tokens[1]); } } else fprintf(stderr, "unsupported material property : \"%s\"\n", tokens[0].c_str()); diff --git a/src/tools/loader.h b/src/tools/loader.h index 9a839d1..59d6f18 100644 --- a/src/tools/loader.h +++ b/src/tools/loader.h @@ -19,7 +19,7 @@ class Loader public: static std::string* loadTextFile(const std::string &filename); static std::unordered_map* loadConfigFile(const std::string &filename); - static Image* loadImage(const std::string &filename, bool hasAlpha = true, bool reversed = true); + static Image* loadImage(const std::string &filename, int depth = 32, bool reversed = true); static std::vector loadMesh(const std::string &filename); static Font* loadFont(const std::string &texture, const std::string &description); static bool loadMTL(const std::string &filename);