texture size limit as a setting
tracked
Lorcy
It would be nice to have this as a settings option in VrChat since a full Vram is a major issue in bigger lobbies, and nothing more ruins the overall experience than needing to hide people's avatars and look at grey robots.
A texture size limit is applied to all textures.
Setting this to one uses the first mipmap of each texture (so all textures are half size), setting this to two uses the second mipmap of each texture (so all textures are quarter size), etc.. This can be used to decrease video memory requirements on low-end computers.
Log In
AetherCLion
VR Chat has existed since January 16, 2014, and the Quality texture setting hasn't existed since then, seriously?
u-Kotovsky
Is there going to be any update on this? it's been like 820 days since it was posted and 310 days since post being tracked.
FairlySadPanda
Upvoting but IMO the mipmap solution is not great: the solution is to make an estimation of VRAM usage part of avatar performance ranking, which I think is a goal for VRChat given their movement in that direction and their goal of server-side avatar construction starting with the impostors feature.
Lorcy
FairlySadPanda: post is kinda out of date and got kinda solved with the vram limitation for the avatar performance rank system
DarkSwordsman
Lorcy: It doesn't because then you need to block avatars that are very poor. What if someone has an avatar that is 70,001 polygons? What if they have a few lights that are disabled? What if they have a bunch of materials, but they manage them well?
Texture memory is a hard limit on GPUs. It's not like overall performance where things just slow down a bit. People straight up freeze and crash from texture memory, and it is not fair to restrict this safety feature to people that don't have very poor avatars.
Lorcy
DarkSwordsman: turn off the overwrite options for avatar hider and limit it to, lets say the 10 closest avatars. i was fine on desktop with my laptop i7 1280p 16gb ddr5 (no dedicated gpu, only the Xe Graphics from intel) i was still getting stable 20 to 30 fps with safety settings none, in a lobby with 30 to 50 people most in very poor.
If you or a friend has crashing issues, you might want to reconsider a clean install of windows to make sure all the drivers are fully functional and behave how they should.
DarkSwordsman
Lorcy: Please trust me that I've tested this extensively. Even if you have avatar hider, there are moments where you may accidentally load 20+ avatars at once while walking through a venue, and it can cause a VRAM overflow and it swaps with system RAM, causing <1 FPS.
Sure, I could manually show avatars, but that's not avatars. That's the user themselves. The current systems of "show avatar" vs "safety settings" are relatively bulky for certain groups and scenarios.
I would love to just disable shaders and custom animators to be able to see people's avatars and have better performance, but that is impossible without VRAM limits. I should be able to just set a VRAM limit per-avatar of like 100 MB. IDK why people like you are trying to hand-wave this.
kawashirov
Lorcy: This is not a solution either. It seems, VRC does not unload textures from memory immediately after avatars are hidden, but also causes some lag and CPU/bus overhead by sending same textures again and again into VRAM too often. This feature helps when a lot of performance-heavy avatars around in terms of polys/skinning/shaders, but not memory usage.
kawashirov
DarkSwordsman: Actual solution may be to allow users to actually adjust performance rank limits, at least for poor and very poor. It breaks unified logic of performance ranks but can solve a lot of issues like this.
~Babo~
The only workaround for now is to limit download size to something reasonable like 50 MB. This is a pretty crap solution too though for multiple reasons.
- Crunch compression reduces download size but not VRAM usage.
- Other things like audio increase download size but not VRAM usage.
- Applies to everyone unless you explicitly show their avatar.
- Can be overridden per player by temporarily setting their avatar to "show", but then you can't unload their avatar without explicitly blocking it (or clearing cache and restarting the game).
DarkSwordsman
~Babo~: Even then, even without crunch and just using DXT1/BC7, an avatar can still be 35-50 MB download, but can expand to 150-300+ MB of VRAM due to the compression that is used for images on bundle. I believe this happens with flatter textures.
owlboy
DarkSwordsman: Right. All textures are compressed. But Crunch is extra crunchy compressed.
DarkSwordsman
owlboy: Yeah, I wish they could get rid of crunch altogether. The compression they use in the bundle (I assume PNG or something similar) is good enough if you use a reasonable texture size. Most avatars should not be over 30 MB if you have medium or better rating, even with 150 MB of textures.
ghostt
I wonder if it could be setup to never load textures larger than n, using only the mipmaps.
e.g. setting a max texture size of 4k would prevent 8k textures from loading or ever being in VRAM.
Scout - VRChat Head of Quality Assurance
tracked
Mage_Enderman
It'd be even better if it could selectively apply this to specific resolutions like if the texture is 4k+ half it but if it's 2048 or lower it's fine
SaphiGoat
Espacially with the latesest patch this will be more in peoples mind.
rollthered
In the meantime, this is already a feature sort of (Just for worlds currently as far as i am aware). Its just that most world developers do not set their quality settings and LOD distance management. Setting your graphics options in the safety settings will switch between the world's quality settings currently. At least for LOD's and textures. My world "Grass" does this.
We should try to inform world developers of this in the meantime.
Lorcy
rollthered: main issues are avatars sadly and not worlds most of the time
DarkSwordsman
rollthered: As far as I was aware, VRChat did not support LOD for anything, unless I missed something?
But yes. Avatars are the main issue, and there is currently no optimization done to where you can show lower quality versions of existing avatars. The only option is fallback avatars, but that is worse than trying to optimize for quest.
rollthered
DarkSwordsman: "My world "Grass" does this."
owlboy
rollthered: please elaborate on what “quality settings” I am not setting regarding mip maps. I’d like to understand.
rollthered
owlboy: Under Edit > Project Settings > Quality there are different graphics tiers that a lot of worlds are not utilizing, but could be benefitting from using.
Oddly enough, the more recent updates to the graphics settings in game has made these settings even less useful since now there is less options in game to select and you can only select low or high.
Texture size limits could help a lot with Vram usage. Since VRC forces mipmaps on anyways when uploading.
Elreen
It would just be great if someone from the VRC team could comment on this.
kawashirov
Now this importnant for real, after no more optimization mods available.
Load More
→