light: BounceLightsForFaceNum: avoid an unnecessary std::vector copy
This commit is contained in:
parent
b8f015d452
commit
154158ddba
|
|
@ -44,7 +44,7 @@ typedef struct {
|
|||
// public functions
|
||||
|
||||
const std::vector<bouncelight_t> &BounceLights();
|
||||
std::vector<bouncelight_t> BounceLightsForFaceNum(int facenum);
|
||||
const std::vector<bouncelight_t> &BounceLightsForFaceNum(int facenum);
|
||||
void MakeTextureColors (const bsp2_t *bsp);
|
||||
void MakeBounceLights (const globalconfig_t &cfg, const bsp2_t *bsp);
|
||||
/** Returns color components in [0, 255] */
|
||||
|
|
|
|||
|
|
@ -261,13 +261,15 @@ const std::vector<bouncelight_t> &BounceLights()
|
|||
return radlights;
|
||||
}
|
||||
|
||||
std::vector<bouncelight_t> BounceLightsForFaceNum(int facenum)
|
||||
const std::vector<bouncelight_t> &BounceLightsForFaceNum(int facenum)
|
||||
{
|
||||
const auto &vec = radlightsByFacenum.find(facenum);
|
||||
if (vec != radlightsByFacenum.end()) {
|
||||
return vec->second;
|
||||
}
|
||||
return {};
|
||||
|
||||
static std::vector<bouncelight_t> empty;
|
||||
return empty;
|
||||
}
|
||||
|
||||
glm::vec3 Palette_GetColor(int i)
|
||||
|
|
|
|||
|
|
@ -1644,7 +1644,7 @@ LightFace_BounceLightsDebug(const lightsurf_t *lightsurf, lightmapdict_t *lightm
|
|||
// reset all lightmaps to black (lazily)
|
||||
Lightmap_ClearAll(lightmaps);
|
||||
|
||||
std::vector<bouncelight_t> vpls = BounceLightsForFaceNum(Face_GetNum(lightsurf->bsp, lightsurf->face));
|
||||
const std::vector<bouncelight_t> &vpls = BounceLightsForFaceNum(Face_GetNum(lightsurf->bsp, lightsurf->face));
|
||||
if (vpls.size()) {
|
||||
Q_assert(vpls.size() == 1); // for now only 1 vpl per face
|
||||
|
||||
|
|
|
|||
Loading…
Reference in New Issue