summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAndrew Opalach <andrew@akon.city> 2024-10-24 15:34:55 -0400
committerAndrew Opalach <andrew@akon.city> 2024-10-24 15:34:55 -0400
commitf789c1103856a253871846da6e41fcdf7aacd78b (patch)
treea380c0b63f91fba1465d639301860782d66c0fec
parent5cea6f91921c9c0963952609cecb1e28dd7bde12 (diff)
downloadmauri-f789c1103856a253871846da6e41fcdf7aacd78b.tar.gz
mauri-f789c1103856a253871846da6e41fcdf7aacd78b.tar.bz2
mauri-f789c1103856a253871846da6e41fcdf7aacd78b.zip
Always load but don't draw invisible objects
Signed-off-by: Andrew Opalach <andrew@akon.city>
-rw-r--r--flake.lock6
-rw-r--r--flake.nix2
-rwxr-xr-xscripts/random.sh4
-rw-r--r--src/objects/object.cc2
-rw-r--r--src/objects/scene.cc4
5 files changed, 10 insertions, 8 deletions
diff --git a/flake.lock b/flake.lock
index cb5aefe..be75f57 100644
--- a/flake.lock
+++ b/flake.lock
@@ -20,11 +20,11 @@
},
"nixpkgs": {
"locked": {
- "lastModified": 1729070438,
- "narHash": "sha256-KOTTUfPkugH52avUvXGxvWy8ibKKj4genodIYUED+Kc=",
+ "lastModified": 1729665710,
+ "narHash": "sha256-AlcmCXJZPIlO5dmFzV3V2XF6x/OpNWUV8Y/FMPGd8Z4=",
"owner": "NixOS",
"repo": "nixpkgs",
- "rev": "5785b6bb5eaae44e627d541023034e1601455827",
+ "rev": "2768c7d042a37de65bb1b5b3268fc987e534c49d",
"type": "github"
},
"original": {
diff --git a/flake.nix b/flake.nix
index 4a0f83d..a9a8a1a 100644
--- a/flake.nix
+++ b/flake.nix
@@ -109,7 +109,7 @@
vulkan-headers
vulkan-loader
glslang
- libseat
+ seatd
libdisplay-info
libliftoff
hwdata
diff --git a/scripts/random.sh b/scripts/random.sh
index 2f097cb..44a00a1 100755
--- a/scripts/random.sh
+++ b/scripts/random.sh
@@ -1,7 +1,7 @@
#! /usr/bin/env bash
BUILD_DIR=build
-WALLPAPERS_PATH=workshop_wallpapers
+WALLPAPERS_PATH=workshop_wallpapers_11-8-21
while : ; do
DIR=$(find $WALLPAPERS_PATH -mindepth 1 -maxdepth 1 -type d -print0 | shuf -zn1 | xargs --null)
@@ -21,5 +21,5 @@ done
echo $DIR
cd $BUILD_DIR
-./mauri -p ../$DIR/scene.pkg -w 1600 -h 900
+./mauri -p ../$DIR/scene.pkg -a /mnt/hdd/SteamLibrary/steamapps/common/wallpaper_engine/assets -w 1600 -h 900
cd ..
diff --git a/src/objects/object.cc b/src/objects/object.cc
index d648b63..4cf9790 100644
--- a/src/objects/object.cc
+++ b/src/objects/object.cc
@@ -209,7 +209,7 @@ auto Object::draw_internal(Engine *engine) -> void
for (Effect *effect : this->effects)
{
- effect->draw(engine);
+ if (effect->visible) effect->draw(engine);
}
}
diff --git a/src/objects/scene.cc b/src/objects/scene.cc
index 21a2449..b9728c7 100644
--- a/src/objects/scene.cc
+++ b/src/objects/scene.cc
@@ -57,6 +57,7 @@ auto Scene::get_object_by_id(u32 id) -> Object *
auto Scene::load(Engine *engine) -> void
{
+ /* NOTE: Removing objects here is known to cause issues.
if (this->objects.size() > 0)
{
for (auto it = this->objects.begin(); it != this->objects.end();)
@@ -65,6 +66,7 @@ auto Scene::load(Engine *engine) -> void
else it++;
}
}
+ */
for (Object *object : this->objects)
{
@@ -76,7 +78,7 @@ auto Scene::draw(Engine *engine) -> void
{
for (Object *object : this->objects)
{
- if (!object->loaded_as_dep) object->draw(engine);
+ if (!object->loaded_as_dep && object->visible) object->draw(engine);
}
}