Skip to content

Conversation

@hemebond
Copy link
Contributor

Updates SCR_DrawScreen to check the value of r_drawworld before rendering the scene, allowing players to change it during gameplay instead of requiring a restart. Suggested by @Baker7. Resolves #107

@Cloudwalk9
Copy link
Contributor

Cloudwalk9 commented Jul 22, 2025

I'm iffy about checking cvar values in the rendering path due to latency and cache locality. This doesn't seem amenable to a cvar callback either.

As an aside, now that I think about it, given the severe performance penalty of drawing all entities in the void where the renderer completely skips visleaf culling, this cvar would be increasingly useless or impractical the more entities you have.

@Baker7
Copy link

Baker7 commented Jul 24, 2025

@Cloudwalk9
Commentarry:

"As an aside, now that I think about it, given the severe performance penalty of drawing all entities in the void where the renderer completely skips visleaf culling, this cvar would be increasingly useless or impractical the more entities you have."

It doesn't skip vis leaf culling in DarkPlaces 2014 or the most recent Xonotic DarkPlaces.

One great use of r_drawworld 0 is often to see what entities are in the current vis by not drawing the world.

r_drawworld 0 is a feature of every modern Quake engine and classic DarkPlaces including current Xonotic DarkPlaces.

You can use r_drawworld to see if a map was crappily vis'd. From a factual basis, if I load up AD_Tears from Arcane Dimensions and type r_drawworld 0, it makes me sad because enormous numbers of monsters are drawn. Very open Q1 maps get terrible vis as a general rule of thumb in Q1 -- and DarkPlaces which does lighting calcs for every entity pays the heaviest price for doing all that extra work.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

r_drawworld 0 fails (fix)

3 participants