Jump to content
The Dark Mod Forums

Testers and reviewers wanted: BFG-style vertex cache


cabalistic

Recommended Posts

Alright.

 

I've been blaming the wrong thing again...

 

The flicker is the not particles effects. It's the fog lights.

 

r_skipFogLights cures all affected maps (and gets rid of fog).

 

Time to look at how the fog is touching cache...

 

Edit

 

I'm not seeing anything obviously wrong there.

 

I tried excluding lightgem from all fog work with conditionals for "backEnd.viewDef->IsLightGem()" ( in draw_common.cpp)

but it didn't improve anything.

  • Like 1

Please visit TDM's IndieDB site and help promote the mod:

 

http://www.indiedb.com/mods/the-dark-mod

 

(Yeah, shameless promotion... but traffic is traffic folks...)

Link to comment
Share on other sites

I have now changed the vertex cache such that the static cache is only as large as it needs to be on the GPU VRAM, and the dynamic frame caches can resize themselves if they ran out in the previous frame. So no more wasted VRAM :)

For the static cache, it means that during level load it will briefly allocate 512 Mb of standard RAM as a shadow buffer to fill the static cache and upload from it to the GPU. Afterwards, that memory is freed again.

 

I'll investigate the remaining issues.

  • Like 3
Link to comment
Share on other sites

Crash report.

Surface material: models/props/misc/lightgem_surface

This happened shortly after vid_restart.

Exception thrown at 0x532268A0 (ig9icd32.dll) in TheDarkModNoTools.exe: 0xC0000005: Access violation reading location 0x0029F110.

 	ig9icd32.dll!532268a0()	Unknown
 	[Frames below may be incorrect and/or missing, no symbols loaded for ig9icd32.dll]	
 	[External Code]	
>	TheDarkModNoTools.exe!RB_DrawElementsWithCounters(const srfTriangles_s * tri) Line 85	C++
 	TheDarkModNoTools.exe!RB_T_FillDepthBuffer(const drawSurf_s * surf) Line 294	C++
 	TheDarkModNoTools.exe!RB_RenderDrawSurfListWithFunction(drawSurf_s * * drawSurfs, int numDrawSurfs, void(*)(const drawSurf_s *) triFunc_) Line 259	C++
 	[Inline Frame] TheDarkModNoTools.exe!RB_STD_FillDepthBuffer(drawSurf_s * *) Line 349	C++
 	TheDarkModNoTools.exe!RB_STD_DrawView() Line 1277	C++
 	TheDarkModNoTools.exe!RB_DrawView(const void * data) Line 881	C++
 	TheDarkModNoTools.exe!RB_ExecuteBackEndCommands(const emptyCommand_t * cmds) Line 587	C++
 	TheDarkModNoTools.exe!R_IssueRenderCommands(frameData_t * frameData) Line 135	C++
 	TheDarkModNoTools.exe!LightGem::Render() Line 348	C++
 	TheDarkModNoTools.exe!idRenderSystemLocal::EndFrame(int * frontEndMsec, int * backEndMsec) Line 646	C++
 	TheDarkModNoTools.exe!idSessionLocal::UpdateScreen(bool outOfSequence) Line 2648	C++
 	TheDarkModNoTools.exe!idCommonLocal::Frame() Line 2454	C++
 	TheDarkModNoTools.exe!WinMain(HINSTANCE__ * hInstance, HINSTANCE__ * hPrevInstance, char * lpCmdLine, int nCmdShow) Line 1368	C++
 	[External Code]	

  • Like 1
Link to comment
Share on other sites

Try this.

Load Inn Business. Set r_fboResolution high enough so that rendering. is GPU-limited.

Execute in console

map innbiz.map
I get this once today

Exception thrown: read access violation.
backEnd.vLight->**lightDef** was 0x3A9369E0.

	TheDarkModNoTools.exe!RB_CreateSingleDrawInteractions(const drawSurf_s * surf) Line 797	C++
 	TheDarkModNoTools.exe!RB_GLSL_CreateDrawInteractions(const drawSurf_s * surf) Line 179	C++
 	TheDarkModNoTools.exe!RB_GLSL_DrawLight_Stencil() Line 261	C++
 	TheDarkModNoTools.exe!RB_GLSL_DrawInteractions() Line 348	C++
 	TheDarkModNoTools.exe!RB_STD_DrawView() Line 1281	C++
 	TheDarkModNoTools.exe!RB_DrawView(const void * data) Line 875	C++
 	TheDarkModNoTools.exe!RB_ExecuteBackEndCommands(const emptyCommand_t * cmds) Line 587	C++
 	TheDarkModNoTools.exe!R_IssueRenderCommands(frameData_t * frameData) Line 135	C++
 	TheDarkModNoTools.exe!idRenderSystemLocal::EndFrame(int * frontEndMsec, int * backEndMsec) Line 648	C++
 	TheDarkModNoTools.exe!idSessionLocal::UpdateScreen(bool outOfSequence) Line 2645	C++
 	TheDarkModNoTools.exe!idSessionLocal::ShowLoadingGui() Line 480	C++
 	TheDarkModNoTools.exe!idSessionLocal::ExecuteMapChange(bool noFadeWipe) Line 1520	C++
 	TheDarkModNoTools.exe!idSessionLocal::MoveToNewMap(const char * mapName) Line 1148	C++
 	TheDarkModNoTools.exe!idSessionLocal::StartNewGame(const char * mapName, bool devmap) Line 1119	C++
 	TheDarkModNoTools.exe!Session_Map_f(const idCmdArgs & args) Line 133	C++
 	TheDarkModNoTools.exe!idCmdSystemLocal::ExecuteTokenizedString(const idCmdArgs & args) Line 482	C++
 	TheDarkModNoTools.exe!idCmdSystemLocal::ExecuteCommandBuffer() Line 663	C++
 	TheDarkModNoTools.exe!idEventLoop::RunEventLoop(bool commandExecution) Line 170	C++
 	TheDarkModNoTools.exe!idCommonLocal::Frame() Line 2426	C++
 	TheDarkModNoTools.exe!WinMain(HINSTANCE__ * hInstance, HINSTANCE__ * hPrevInstance, char * lpCmdLine, int nCmdShow) Line 1367	C++
Basically keep quick loading and it should fail eventually.
  • Like 1
Link to comment
Share on other sites

Can you upload&link the exe?

 

https://www.moddb.com/mods/the-dark-mod/downloads/tdm-206-vertex-buffer-beta

 

Sorry for the delay.

I was waiting for some major issues to be resolved.

 

This should be good enough to make Nvidia players happy. ;)

Please visit TDM's IndieDB site and help promote the mod:

 

http://www.indiedb.com/mods/the-dark-mod

 

(Yeah, shameless promotion... but traffic is traffic folks...)

Link to comment
Share on other sites

I'm getting null ambientCashe spam in console.

Start Inn Business. notarget in console for safe test. Keep watching the whore and in about one minute, when she says "You like what you see?" I got the spam.

Quick save, quick load and it crashes with the stack trace above.

Link to comment
Share on other sites

I don't use AA!

 

This is being looked into.

 

The current design requires you to enable MSAA to avoid a feedback loop in the shader.

 

So 2.06 == Don't use AA, VBO beta (currently) == always use AA

  • Like 1

Please visit TDM's IndieDB site and help promote the mod:

 

http://www.indiedb.com/mods/the-dark-mod

 

(Yeah, shameless promotion... but traffic is traffic folks...)

Link to comment
Share on other sites

About

 

seta r_useBfgPortalCulling

 

we must set it to 1 or not?

 

Not required but it may improve CPU cache behavior. As we move more toward BFG this may become the default or only option.

Please visit TDM's IndieDB site and help promote the mod:

 

http://www.indiedb.com/mods/the-dark-mod

 

(Yeah, shameless promotion... but traffic is traffic folks...)

Link to comment
Share on other sites

Loading Screen of "Down by the Riverside"

 

The_Dark_Modx64_2018_06_18_08_09_14_672.

 

And @starting (=press attack) another mini-tile (1/4) down-left.

After the start FM is allright.

 

As you can see the default-size screen has no bloom applied, the 1/2-size got the bloom.

 

FBO-related problem, I think.

Edited by lowenz
  • Like 1

Task is not so much to see what no one has yet seen but to think what nobody has yet thought about that which everybody see. - E.S.

Link to comment
Share on other sites

Loading Screen of "Down by the Riverside"

 

 

 

And @starting (=press attack) another mini-tile (1/4) down-left.

After the start FM is allright.

 

As you can see the default-size screen has no bloom applied, the 1/2-size got the bloom.

 

FBO-related problem, I think.

Check your r_fboResolution cvar in console.

Set it to 1 if it's not.

Link to comment
Share on other sites

Still getting crashes after a quickload.

If I die and load a savegame AFTER the death there's no crash at all.

Edited by lowenz

Task is not so much to see what no one has yet seen but to think what nobody has yet thought about that which everybody see. - E.S.

Link to comment
Share on other sites

Added an issue 4849 for the whole VBO replacement process.

 

I'd like to second lowenz's report about the view being duplicated in the lower-bottom quarter of the TDM window.

It happens in the "press attack to start mission" screen regardless of FBO setting, and also in-game if r_useFBO 0 is set.

Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.


  • Recent Status Updates

    • Ansome

      Finally got my PC back from the shop after my SSD got corrupted a week ago and damaged my motherboard. Scary stuff, but thank goodness it happened right after two months of FM development instead of wiping all my work before I could release it. New SSD, repaired Motherboard and BIOS, and we're ready to start working on my second FM with some added version control in the cloud just to be safe!
      · 0 replies
    • Petike the Taffer  »  DeTeEff

      I've updated the articles for your FMs and your author category at the wiki. Your newer nickname (DeTeEff) now comes first, and the one in parentheses is your older nickname (Fieldmedic). Just to avoid confusing people who played your FMs years ago and remember your older nickname. I've added a wiki article for your latest FM, Who Watches the Watcher?, as part of my current updating efforts. Unless I overlooked something, you have five different FMs so far.
      · 0 replies
    • Petike the Taffer

      I've finally managed to log in to The Dark Mod Wiki. I'm back in the saddle and before the holidays start in full, I'll be adding a few new FM articles and doing other updates. Written in Stone is already done.
      · 4 replies
    • nbohr1more

      TDM 15th Anniversary Contest is now active! Please declare your participation: https://forums.thedarkmod.com/index.php?/topic/22413-the-dark-mod-15th-anniversary-contest-entry-thread/
       
      · 0 replies
    • JackFarmer

      @TheUnbeholden
      You cannot receive PMs. Could you please be so kind and check your mailbox if it is full (or maybe you switched off the function)?
      · 1 reply
×
×
  • Create New...