Comments (8)
Looking at radeontop (im using an amd gpu), I do see a fair amount of GPU memory being used by the Godot UI. This may be due to godot itself, as my UI is pretty simple (really just a grouping of 2D UI), but I'll investigate.
A memory leak like you describe sounds like something wrong on your system, like you mentioned.
I'll look into possible solutions. It may be that I can exit the godot UI once a game starts, although the main issue there is that if there's an error that should be displayed, the UI will no longer be available, so that may require some additional investigation.
from luxtorpeda.
I looked into it a bit and I discovered a few things:
- Switching from GLES3 to GLES2
- Lowing Directional Shadow and Shadow Atlas
Other performance tweaks could include:
- Switching to Low Processor Mode
The VRAM usage of Godot is approximately half as much as before with these options.
Also, having the UI close after launching could at least be an option for advanced users who are able to get the log from the terminal if they need it.
from luxtorpeda.
I've created a PR that should have a build for testing shortly if you can try it out, this so far is mainly about adding those godot optimizations: #221
I did also check the godot debugger vram report, and my project is only using about 3mb of vram, which says the rest must be in godot somewhere.
Let me know how that goes and if you still need a close UI once game starts option with that. Thanks!
from luxtorpeda.
It's using about 267MiB of VRAM with that test build.
It's better, but with both Steam and Luxtorpeda and other overheads combined I'm hitting about 25%-50% of my available VRAM before I even start the game and Luxtorpeda is the biggest contributor.
Another idea I had was running OpenGL in software rendering mode, this would prevent Godot from using any VRAM. I tested the below options and it seems to work performantly and accurately.
__GLX_VENDOR_LIBRARY_NAME=mesa
GALLIUM_DRIVER=llvmpipe
MESA_LOADER_DRIVER_OVERRIDE=llvmpipe
LIBGL_ALWAYS_SOFTWARE=1
Other software drivers include softpipe and swr but I had best results with llvmpipe.
from luxtorpeda.
Interesting, I could probably add a env variable like LUX_SOFTWARE_RENDERING that if set would enable those items on the launch of the client. That could cause some confusion with the actual game though, as I believe it inherits those same variables.
It may be easier just to close the client once the game launches, as an by default off config option. This would have a downside of needing to look into the logs, but would free up vram when necessary.
from luxtorpeda.
Let me know what you think of this change: #222
I added the config variable that'll close the client as soon as the game launches. It's defaulted to false.
from luxtorpeda.
I ran this build of luxtorpeda with success. This, combined with the optimizations from before puts luxtorpeda in a much better place for people with low VRAM graphics cards.
Also, I haven't done any benchmarks but anecdotally the launch time between selecting the option and the game starting seems to be faster with this option enabled.
from luxtorpeda.
Great, that's good to hear!
I've released this as a new version here: https://github.com/luxtorpeda-dev/luxtorpeda/releases/tag/v65.1.0
Let me know if you need anything else
from luxtorpeda.
Related Issues (20)
- Include versioning information on github builds HOT 3
- UI scaling too small on Steam Deck desktop HOT 3
- Launcher fails to start (Cannot access non-root filesystem) HOT 8
- Show icon in taskbar HOT 3
- High screen refresh rate causes crash: SdlError("Window is too large.")', src/ui.rs:514:10 HOT 12
- Can't unpack renpy. HOT 5
- Migration to Godot For UI, Using Godot Rust
- Re-implement Management Feature in Godot
- Option to Disable Extraction/Install Step on Each Run HOT 3
- Set recommended controller configuration for certain engines HOT 7
- Reporting a vulnerability HOT 1
- Handle Rust Panics Better HOT 1
- Please allow for Luxtorpeda to install its default configs over a customized one. HOT 7
- Steam Deck Virtual Keyboard not working in game HOT 26
- Cleanup/Improvement Items
- The Apogee Throwback Pack Extraction Error HOT 3
- Manually deleting files causing game to fail to launch due to hash check HOT 1
- Launching Doom 3 causes "no directory" error HOT 10
- Update GZDoom Version HOT 2
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from luxtorpeda.