+ added support for the isVisible flag on images

Signed-off-by: Alexis Maiquez <almamu@almamu.com>
This commit is contained in:
Alexis Maiquez 2021-08-31 02:51:10 +02:00
parent dd76439901
commit 8bc19b20ae
5 changed files with 6 additions and 14 deletions

View File

@ -182,7 +182,7 @@ const std::vector<uint32_t>& CObject::getDependencies () const
return this->m_dependencies;
}
bool CObject::isVisible ()
const bool CObject::isVisible () const
{
return this->m_visible;
}

View File

@ -34,7 +34,7 @@ namespace WallpaperEngine::Core
const glm::vec3& getAngles () const;
const std::string& getName () const;
bool isVisible ();
const bool isVisible () const;
protected:
CObject (
bool visible,

View File

@ -22,13 +22,8 @@ CScene::CScene (Core::CScene* scene, CContainer* container) :
auto cur = scene->getObjects ().begin ();
auto end = scene->getObjects ().end ();
int highestId = 0;
for (; cur != end; cur ++)
{
if ((*cur)->getId () > highestId)
highestId = (*cur)->getId ();
CObject* object = nullptr;
if ((*cur)->is<Core::Objects::CImage>() == true)
@ -50,11 +45,6 @@ CCamera* CScene::getCamera () const
return this->m_camera;
}
int CScene::nextId ()
{
return this->m_nextId ++;
}
void CScene::render ()
{
auto cur = this->m_objects.begin ();

View File

@ -18,7 +18,6 @@ namespace WallpaperEngine::Render
CScene (Core::CScene* scene, CContainer* container);
CCamera* getCamera () const;
int nextId ();
void render () override;
@ -31,7 +30,6 @@ namespace WallpaperEngine::Render
private:
CCamera* m_camera;
uint32_t m_nextId;
std::vector<CObject*> m_objects;
};
}

View File

@ -121,6 +121,10 @@ CImage::CImage (CScene* scene, Core::Objects::CImage* image) :
void CImage::render ()
{
// ensure this image is visible first
if (this->getImage ()->isVisible () == false)
return;
GLuint drawTo = 0;
GLuint inputTexture = this->m_texture->getTextureID ();
// get the orthogonal projection