X-Git-Url: http://git.tdb.fi/?a=blobdiff_plain;f=source%2Feffects%2Fenvironmentmap.cpp;h=c714a56f6c300b03da24c2ed1576e55e5ae24c96;hb=fea00edfb3b4274cb87e131743415e1fd22d0c1a;hp=d9812c49bc0943d508b2f50ee4b5348c8dcd3fde;hpb=7db40551e9197142b0b6cb7fd883b325684bb8c2;p=libs%2Fgl.git diff --git a/source/effects/environmentmap.cpp b/source/effects/environmentmap.cpp index d9812c49..c714a56f 100644 --- a/source/effects/environmentmap.cpp +++ b/source/effects/environmentmap.cpp @@ -12,14 +12,28 @@ namespace GL { EnvironmentMap::EnvironmentMap(Resources &resources, unsigned s, Renderable &r, Renderable &e): Effect(r), - size(s), environment(e), - sampler(resources.get("_linear_clamp.samp")), - rendered(false), - update_interval(1), - update_delay(0) + sampler(resources.get("_linear_clamp.samp")) { - env_tex.storage(RGB8, size, 1); + init(s, RGB8); +} + +EnvironmentMap::EnvironmentMap(Resources &resources, unsigned s, PixelFormat f, Renderable &r, Renderable &e): + Effect(r), + environment(e), + sampler(resources.get("_linear_clamp.samp")) +{ + init(s, f); +} + +void EnvironmentMap::init(unsigned s, PixelFormat f) +{ + size = s; + rendered = false; + update_interval = 1; + update_delay = 0; + + env_tex.storage(f, size); depth_buf.storage(DEPTH_COMPONENT32F, size, size); for(unsigned i=0; i<6; ++i) {