View Issue Details

IDProjectCategoryView StatusLast Update
0004126Spring engineGeneralpublic2013-11-07 15:10
ReporterBeherith Assigned ToKloot  
PrioritynormalSeveritytweakReproducibilityalways
Status closedResolutionsuspended 
Product Version95.0 
Summary0004126: Split updateextratexture to a separate thread
DescriptionSince the info texture is pretty much unsynced, as no synced operations use it, can it be split into a separate thread from threadpool? Or is it using too many synced inputs for this to be feasible?
Im calling it quite often to have LOS updated in a more natural looking manner. I am aware that LOS is only updated every slowupdate, but taking up to 2 seconds seconds to propagate to the player with the default extratextureupdaterate of 45.
Additional InformationIf this is too much work/infeasible, please close so as not to clutter mantis. Thank you!
TagsNo tags attached.
Checked infolog.txt for Errors

Activities

Kloot

2013-11-06 14:35

developer   ~0011991

Last edited: 2013-11-07 15:06

Define "quite often".

The code complexity would increase N-fold to solve a potential non-issue so you need to show some pretty convincing framerate measurements before I or anyone else will consider it.

On a sidenote, I would like to know why you asked us to implement this callout when (according to http://springrts.com/phpbb/viewtopic.php?p=520175#p520175) you already had a patch last year doing the exact same thing?

("Currently I have added $infotex to gl.Texture, and have an additional unsyncedctrl callin that forces the generation of the los texture even if LOS mode is off.")

Beherith

2013-11-07 14:57

reporter   ~0012000

All I did in my hacky and ugly code, was to add a callout that forced updateextratexture in LOS mode. It had many problems, such as: failed rendering if any other infotex was drawn, it didnt work when LOS mode was on, because I failed to remove the drawing parts in the map shader, and it was all around ugly code (I cant code in C for shit).
In retrospect, Knorke's request to split the info textures made even more sense, as the callout alone would never have been enough to implement it half as good as it works now. I apologize for not sharing my patch, which I deleted months ago when I was cleaning up tons of build folders for space.

I try to call it min(drawframe rate, extratextureupdaterate*2) times per second, so as to get the full updated los tex in time for the next slowupdate.

I will try to make exact measurements of the load this produces, so you are correct; please close this issue until I can come up with a convincing case for its need.

Kloot

2013-11-07 15:10

developer   ~0012001

ok, reopen at your convenience

Issue History

Date Modified Username Field Change
2013-11-06 09:16 Beherith New Issue
2013-11-06 14:35 Kloot Note Added: 0011991
2013-11-06 14:35 Kloot Status new => feedback
2013-11-06 14:37 Kloot Note Edited: 0011991
2013-11-07 14:57 Beherith Note Added: 0012000
2013-11-07 14:57 Beherith Status feedback => new
2013-11-07 15:06 Kloot Note Edited: 0011991
2013-11-07 15:10 Kloot Note Added: 0012001
2013-11-07 15:10 Kloot Status new => closed
2013-11-07 15:10 Kloot Assigned To => Kloot
2013-11-07 15:10 Kloot Resolution open => suspended