X-Git-Url: http://git.tdb.fi/?p=libs%2Fgl.git;a=blobdiff_plain;f=source%2Feffects%2Fenvironmentmap.cpp;h=c714a56f6c300b03da24c2ed1576e55e5ae24c96;hp=d9812c49bc0943d508b2f50ee4b5348c8dcd3fde;hb=fea00ed;hpb=bb4638a8470b0be2f960709368ec0d360a64f8ac 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) {