changed the skybox, and added precomputed irradiance and radiance maps

This commit is contained in:
Anselme 2017-08-25 15:57:00 +02:00
parent 69b84faf58
commit d25dffa8d4
63 changed files with 195 additions and 32 deletions
deploy/data/skybox
craterlake_bk.tgacraterlake_dn.tgacraterlake_ft.tgacraterlake_lf.tgacraterlake_rt.tgacraterlake_up.tga
irradiance
negx.jpgnegy.jpgnegz.jpgposx.jpgposy.jpgposz.jpg
radiance
skybox.xcf
src/test

@ -1,3 +0,0 @@
version https://git-lfs.github.com/spec/v1
oid sha256:e916551b97b12ebd31228fe8ccc06523cc7ac98eee1daa76032b8fee1b0cee11
size 769437

@ -1,3 +0,0 @@
version https://git-lfs.github.com/spec/v1
oid sha256:47a24fd77edac34fbd9b9031754624e1fca3c047830b0820654b74e202969891
size 757939

@ -1,3 +0,0 @@
version https://git-lfs.github.com/spec/v1
oid sha256:b7b25f9cfdaa42f9ea37596e07edc120df9261c0c695ab3cead68d7c646c2a73
size 737349

@ -1,3 +0,0 @@
version https://git-lfs.github.com/spec/v1
oid sha256:c1d5aee7e0a4041674f1ce844fbfd194972e6968002e05570c098e65530c862b
size 766552

@ -1,3 +0,0 @@
version https://git-lfs.github.com/spec/v1
oid sha256:037b77efe579a762a1acc920388d4da1d16658893179502324ee89598eb69cff
size 704063

@ -1,3 +0,0 @@
version https://git-lfs.github.com/spec/v1
oid sha256:cc2c22f138ad728700079827f0202a91dcd7c5be10d683c887c0b2970def5d95
size 626448

@ -0,0 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:c1baaa3242ba7698b15abc9aaf5c7c3204e58292f59228824279fa52cdb89b05
size 49196

@ -0,0 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:8f4b359239337835920df3a5daccce444dcf460042b98d2fa3939fe9547b8b80
size 49196

@ -0,0 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:f4121e8341bfab6af25dfdb1c7a53fe21fd43f2096dc36418c0d6829575b609a
size 49196

@ -0,0 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:f7e278b2b3ca38f5dd9cd23e8f515414c164674f423a0647d370235691de6392
size 49196

@ -0,0 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:00b22806b3a4c783ef2940a41b737e3cc3514f61c132d572570b667cec9fe267
size 49196

@ -0,0 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:bc714292c57032f7b2240406895e1ac615e4a6712e20d8eea7bf6bda9f06fe80
size 49196

@ -0,0 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:6efcbf14235195b091b931afe485161faec35e00387d09f26f95bc11a7576d7f
size 984770

@ -0,0 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:ebfc03ca277689fa7599d13bd68e87504f6a5a567096b87ca3bd275612ef110c
size 920695

@ -0,0 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:01b5ffa6298bbf3ce0c18ac64a6a0f26fc41b9e0f97f621c0e1ce24912571335
size 969866

@ -0,0 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:8a0859370df4e5c0344b4aac3b3d560a2c2028e3d39157a5b4b9c73a13558c2f
size 828251

@ -0,0 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:64d1fe87044df58be2684c6e23d22bb26bade269967b696c329fd2aa8f1e9c15
size 441172

@ -0,0 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:f54c2adf921ff84237b09192cb4264ea61702930f5c7359b13561f4b19ee08e1
size 874231

@ -0,0 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:333fecf8797a6544af2e52322d1eb008157dd85e94e6f79db041a6ba4f9336d2
size 196652

@ -0,0 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:08f71d708e9d5d59a494950c75449dc28c67b6506d870402f8a666cf7a997efe
size 49196

@ -0,0 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:2c25024509999c76ad9efe170738e1483ea17ca2db9b8524e052956eeeaaedbf
size 12332

@ -0,0 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:7097ad8a89a6f3af9647f700f0d26ac087840e52a84099510e1b80fb003fa84d
size 3116

@ -0,0 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:4a7a2b4e2292d84840020583caa71c402ca126ae6428351fda4f035327487090
size 812

@ -0,0 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:7b56b99b2544af4ee9d59c8a8dba10187da143f25402b3acdb139995ff52cbfd
size 236

@ -0,0 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:416310b4a3f4d37ed6504457bb8190d20b5272d75c12eb1413a5bae8cd74c48e
size 92

@ -0,0 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:373f8428acfefda452bf911c1ebfb2f350df3209b1e4b282992fa10105588c60
size 196652

@ -0,0 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:5af91cbc5db96a8b88bb4e551d0ba0dea7bb5bf45b8c1c72c1653de7286427fa
size 49196

@ -0,0 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:2377e72db989c13092b75a315578e6db558fc3b321457d4de4c15df97abc7540
size 12332

@ -0,0 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:e651764a88659811d324142561ac6aa1af3f7715101ecde0d4f6bf543c0e903a
size 3116

@ -0,0 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:5a3ada5ab96b4527391564c32623de9edacaf3e9b09bd85bd5124a3c55825ae6
size 812

@ -0,0 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:3b72bde41cea39f7bb135c7e8a417b77c18d43adcc22d5c6b25cd70dd6eda69f
size 236

@ -0,0 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:3bf3ffc2ea6e6c26aeae7c5604ed5faa2e34c645c0dd93008a7de2a6cec15019
size 92

@ -0,0 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:4e45c458624b60f6643b792bae38d9fdb0e2ce09e0017e57413cac6d088526a6
size 196652

@ -0,0 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:93dc1b44a9e8c4d97936a3d6905f1f05487c9d7f40a06b1671aea4b63687629f
size 49196

@ -0,0 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:88ab3af933739bbaa9249e0280fef5133e9880c72cb8ffd37bc9dacc4c71b691
size 12332

@ -0,0 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:5d421cb3efd11a343e14d2a6554c68c70c8f6dbb290bfe6bf360d63d052a5823
size 3116

@ -0,0 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:947ea79f3e73b0abf28be86765cd856a6fb563aabe32c5da5d501b20dac95d7a
size 812

@ -0,0 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:d28cbd7ebddab169c2173978c9c81e74061b224e5855b199ca6537bf3a239e70
size 236

@ -0,0 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:6d472dfce75085ff25ba3e23829f23d2447b247b78c615ad8cec10da04169558
size 92

@ -0,0 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:60be6c064bcb36d3d762547e8698e5f68f084071a3ed66721c915afc9a8e6f21
size 196652

@ -0,0 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:c277d76ba3899b71db2e4eae36a23188db4537aaeeaa8332c2e2a3332458a5fd
size 49196

@ -0,0 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:29e252f5dc01e7268af321662d983fd04ae034ff95c87da1a84352b6c39cea8a
size 12332

@ -0,0 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:e6329d770f72439a9972be6c7924f62815894a21dd64fcb5d9655319a32d01f1
size 3116

@ -0,0 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:b0f067a63e0a07bb3b46d1aa41b7e9af4bc9c9a646d891390c12dceb4789fcf3
size 812

@ -0,0 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:7013ee41b72266d21185a7dd0a9befa330687db228b13e63a4a08b9f4b1016ec
size 236

@ -0,0 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:ea743089b0a17b78595995eda9a52e2915585c22bb1489b00a72c0a8bd4e53e6
size 92

@ -0,0 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:3d5beee5ddf88e9adeba84cb7210e6855f8f8cbb9b902afdf4dbd06419a53537
size 196652

@ -0,0 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:a0449d6dbafc88beb246817625317893b9926ee9cf10860b3a10ddf43d239f2b
size 49196

@ -0,0 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:6f1808e3adc6abfbab52e9d972cccd9ffd04f4903ebd3e794d628bdd62030e2a
size 12332

@ -0,0 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:7f4eac30e58b0dc2d05d392b8fe3c4019012e41a8745bbdf104903490efec650
size 3116

@ -0,0 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:bb236d64b7e41e297e6b5553c9660fcee9eaf6dde03da8f642102dff163b7cf0
size 812

@ -0,0 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:f742960ac07dba64a8ca5fc8e1b8c73565e175b8e35b19ad61a316cd48fb4ab5
size 236

@ -0,0 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:18d6f1b5259741b319bfea4736da0832448beb1e02dcdbff108bd87125f2ae31
size 92

@ -0,0 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:10d29620fed7c07a8106501d3079f917e64b66447850f3f3d89069f9e0a4be72
size 196652

@ -0,0 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:28b757b41ad55e7b008e599832063c3e206f14b3d1cd10c3c1e531ef08b03f54
size 49196

@ -0,0 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:4032c4118ba7c21636405a9cd70d82e210de016090b155be5f5546b637c6abb4
size 12332

@ -0,0 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:1ad4a9a7848931af6d42719cc8ee1f6347a8f20621e4e14b7519c4ae072ad202
size 3116

@ -0,0 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:bd569691d35e6968f8a0baa4326b4ca4af2602880ad879d0b853fee97124c101
size 812

@ -0,0 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:1251d21c9e3f07f0f1c27c09b17be7b5aeaae51d60809a4432007d5f5ca6463c
size 236

@ -0,0 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:f6b1b62b71cb4d758b1f0712a227e23795346d94ccd101b57a4a31be9ac044ff
size 92

Binary file not shown.

@ -202,8 +202,8 @@ public:
scene->getRootObject()->addChild(potator);
//lighting
Texture* skyboxTexture = RESOURCE_GET(Texture, "skybox");
Texture* ambientTexture = RESOURCE_GET(Texture, "ambient");
Texture* skyboxTexture = RESOURCE_GET(Texture, "radiance");
Texture* ambientTexture = RESOURCE_GET(Texture, "irradiance");
LightNode *ambientLight = new LightNode(new AmbientLight(ambientTexture, skyboxTexture));
DeferredPipeline* pipeline = dynamic_cast<DeferredPipeline*>(scene->getPipeline());
@ -322,14 +322,33 @@ int main(){
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
imgs[0] = Loader::loadImage("skybox/posx.jpg", 24, false); // right
imgs[1] = Loader::loadImage("skybox/negx.jpg", 24, false); // left
imgs[2] = Loader::loadImage("skybox/posy.jpg", 24, false); // top
imgs[3] = Loader::loadImage("skybox/negy.jpg", 24, false); // bottom
imgs[4] = Loader::loadImage("skybox/posz.jpg", 24, false); // front
imgs[5] = Loader::loadImage("skybox/negz.jpg", 24, false); // back
RESOURCE_ADD(new Texture(imgs), Texture, "skybox");
RESOURCE_ADD(new Texture(imgs), Texture, "ambient");
for(int i=0; i<6; ++i)
delete imgs[i];
imgs[0] = Loader::loadImage("skybox/irradiance/output_iem_posx.tga", 24, false); // right
imgs[1] = Loader::loadImage("skybox/irradiance/output_iem_negx.tga", 24, false); // left
imgs[2] = Loader::loadImage("skybox/irradiance/output_iem_posy.tga", 24, false); // top
imgs[3] = Loader::loadImage("skybox/irradiance/output_iem_negy.tga", 24, false); // bottom
imgs[4] = Loader::loadImage("skybox/irradiance/output_iem_posz.tga", 24, false); // front
imgs[5] = Loader::loadImage("skybox/irradiance/output_iem_negz.tga", 24, false); // back
RESOURCE_ADD(new Texture(imgs, false), Texture, "irradiance");
for(int i=0; i<6; ++i)
delete imgs[i];
imgs[0] = Loader::loadImage("skybox/radiance/output_pmrem_posx_0_256x256.tga", 24, false); // right
imgs[1] = Loader::loadImage("skybox/radiance/output_pmrem_negx_0_256x256.tga", 24, false); // left
imgs[2] = Loader::loadImage("skybox/radiance/output_pmrem_posy_0_256x256.tga", 24, false); // top
imgs[3] = Loader::loadImage("skybox/radiance/output_pmrem_negy_0_256x256.tga", 24, false); // bottom
imgs[4] = Loader::loadImage("skybox/radiance/output_pmrem_posz_0_256x256.tga", 24, false); // front
imgs[5] = Loader::loadImage("skybox/radiance/output_pmrem_negz_0_256x256.tga", 24, false); // back
RESOURCE_ADD(new Texture(imgs), Texture, "radiance");
for(int i=0; i<6; ++i)
delete imgs[i];

@ -69,8 +69,8 @@ Potator::Potator(PlayerCharacterNode * player,
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;
mat->roughness = 0.95f;
mat->metallic = 0.01f;
m_cubeMesh->setMaterial(mat);
@ -83,9 +83,9 @@ Potator::Potator(PlayerCharacterNode * player,
// creating sphere
mat = new PBRMaterial();
mat->albedo = glm::vec3(0.1f);
mat->roughness = 0.1f;
mat->metallic = 0.9f;
mat->albedo = glm::vec3(0.1f, 0.1f, 0.2f);
mat->roughness = 0.01f;
mat->metallic = 0.95f;
SphereGenerator sphereGen;
m_sphereMesh = sphereGen.generateGeodesicMesh(mat, 2, sphereRadius);