diff options
Diffstat (limited to 'gfx')
| -rw-r--r-- | gfx/gl/billboardPainter.cpp | 7 | ||||
| -rw-r--r-- | gfx/gl/billboardPainter.h | 3 | ||||
| -rw-r--r-- | gfx/gl/shadowStenciller.cpp | 7 | ||||
| -rw-r--r-- | gfx/gl/shadowStenciller.h | 3 |
4 files changed, 6 insertions, 14 deletions
diff --git a/gfx/gl/billboardPainter.cpp b/gfx/gl/billboardPainter.cpp index 58fdce6..38c4d3e 100644 --- a/gfx/gl/billboardPainter.cpp +++ b/gfx/gl/billboardPainter.cpp @@ -38,11 +38,10 @@ BillboardPainter::getAngle() const return angle; } -glTextures<3> -BillboardPainter::createBillBoardTextures(GLsizei width, GLsizei height) +void +BillboardPainter::configureBillBoardTextures(glTextures<3> & textures, GLsizei width, GLsizei height) { glDebugScope _ {0}; - glTextures<3> textures; glPixelStorei(GL_UNPACK_ALIGNMENT, 1); const auto configuregdata = [width, height](const auto & texture, const GLint iformat, const GLenum format) { @@ -56,8 +55,6 @@ BillboardPainter::createBillBoardTextures(GLsizei width, GLsizei height) configuregdata(textures[0], GL_DEPTH_COMPONENT, GL_DEPTH_COMPONENT); configuregdata(textures[1], GL_RGB8_SNORM, GL_RGB); configuregdata(textures[2], GL_RGB5_A1, GL_RGBA); - - return textures; } void diff --git a/gfx/gl/billboardPainter.h b/gfx/gl/billboardPainter.h index 33c807c..0f6334a 100644 --- a/gfx/gl/billboardPainter.h +++ b/gfx/gl/billboardPainter.h @@ -13,8 +13,7 @@ public: BillboardPainter(); - [[nodiscard]] - static glTextures<3> createBillBoardTextures(GLsizei width, GLsizei height); + static void configureBillBoardTextures(glTextures<3> &, GLsizei width, GLsizei height); void setView(Angle angle, const glm::mat4 &); [[nodiscard]] Angle getAngle() const; void renderBillBoard(const glTextures<3> &, const MeshBase &, Texture::AnyPtr texture) const; diff --git a/gfx/gl/shadowStenciller.cpp b/gfx/gl/shadowStenciller.cpp index 19c8bef..cc25f30 100644 --- a/gfx/gl/shadowStenciller.cpp +++ b/gfx/gl/shadowStenciller.cpp @@ -36,10 +36,9 @@ ShadowStenciller::getLightDirection() const return lightDir; } -glTexture -ShadowStenciller::createStencilTexture(GLsizei width, GLsizei height) +void +ShadowStenciller::configureStencilTexture(glTexture & stencil, GLsizei width, GLsizei height) { - glTexture stencil; stencil.bind(GL_TEXTURE_2D_ARRAY); glPixelStorei(GL_UNPACK_ALIGNMENT, 1); @@ -50,8 +49,6 @@ ShadowStenciller::createStencilTexture(GLsizei width, GLsizei height) glTexImage3D(GL_TEXTURE_2D_ARRAY, 0, GL_DEPTH_COMPONENT, width, height, STENCIL_ANGLES<GLint>, 0, GL_DEPTH_COMPONENT, GL_UNSIGNED_BYTE, nullptr); - - return stencil; } void diff --git a/gfx/gl/shadowStenciller.h b/gfx/gl/shadowStenciller.h index 27ad9f9..028bfa1 100644 --- a/gfx/gl/shadowStenciller.h +++ b/gfx/gl/shadowStenciller.h @@ -13,8 +13,7 @@ public: ShadowStenciller(); - [[nodiscard]] - static glTexture createStencilTexture(GLsizei width, GLsizei height); + static void configureStencilTexture(glTexture &, GLsizei width, GLsizei height); void setLightDirection(const LightDirection & lightDir); [[nodiscard]] Direction2D getLightDirection() const; void renderStencil(const glTexture &, const MeshBase &, Texture::AnyPtr texture) const; |
