View Issue Details
ID | Project | Category | Date Submitted | Last Update | |
---|---|---|---|---|---|
0020037 | AI War 2 | GUI | Aug 29, 2018 2:38 pm | Sep 29, 2018 9:03 pm | |
Reporter | Ovalcircle | Assigned To | Chris_McElligottPark | ||
Status | resolved | Resolution | fixed | ||
Product Version | 0.762 Spreadshot | ||||
Fixed in Version | 0.777 First Impressions | ||||
Summary | 0020037: If there are a bunch of space docks on a planet, only three of them will show up. | ||||
Description | ^ Edit: there is a specific way to do this. Just making them on your homeworld does not make this happen. 1. Destroy all the AI structures and ships on an adjacent planet. 2. Construct 3 space docks. Extra ( I construct a starship constructor after the 3 space docks. Not sure if you need to do this.) 3. After they are built, build as many space docks as you want. They will not show up. Also: As Badger said below: going to another planet will fix it. The bug will not show up in my save below, as it fixes itself after quitting., you will have to take another planet. | ||||
Tags | No tags attached. | ||||
child of | 0020152 | resolved | Chris_McElligottPark | Various sidebar bugs (parent). |
|
|
|
Note that if you click away to another planet, then click back then all the space docks will show up. |
|
Should be fixed now! * Major surgery in part of the ui code, specifically relating to "when to tell something to draw." ** Previously it was telling things to draw, once when it was time to change states, and then assuming it would actually DO that and thus it could not bother telling it again until things changed. Aka, "draw yourself until I say otherwise." ** Unity UI has a "fun" thing, however, where if an element is a child of a disabled element, then telling it to draw won't properly flip it's internal flag. Apparently. There may be some other funkiness in there, too. ** At any rate, there was quite a bit of "huh?" and "I didn't hear you" going on in the sidebar in particular, leading to things updating slowly or not at all. Things like the objectives menu getting garbled when you had more elements added, or things like space docks beyond the third not displaying unless you went to another planet and back (and sometimes not even then). ** Now we just take the approach of saying "STAY ON" every frame, or "YOU BETTER BE TURNED OFF NOW," as the case may be. Turns out that's just the sort of special tone the Unity UI requires in order for it to do its job. Yes, the snark is heavy, but this has made life intermittently frustrating for the better part of a year. ** The concern with this method had been that us telling hundreds or thousands of ui controls STAY ON or BE OFF every frame would be a performance hog. We would have to trust that the Unity UI itself had an "early out" in there saying "I'm already on, we're good" and thus not doing a whole bunch of work whenever we say STAY ON and it's already on. It seems that is the case, happily, because we still get 180+ fps in our test case with plenty going on in the UI. *** It's also worth noting that since our UI is hierarchical by nature, we wind up doing a lot fewer of the STAY ON calls than we had been thinking might happen. A lot of things early-out at the window/canvas level, and don't go any deeper than that, which makes the actual number of redundant calls per frame far lower. ** What we did NOT expect was that this would bork up various of our GUIs, most notably the main menu, tooltips, and a few other floating text windows. We had to normalize how those windows report "I should be on" or "I should be off" to match the technique of the rest of the windows. Now they do, and so it all works fine. But that did lead to some rewriting of bits of the tooltip display code, which makes how they turn on have a slightly different delay than before. Possibly faster? The sidebar reacts faster, for sure. Some of the tooltips might be slightly slower to react. We'll sort it out later, because it's pretty close to what it was before. ** The TLDR, at any rate, is that the UI actually does what we tell it now, so far as we can tell, and there aren't random missing elements on the sidebars, or elements that draw over and under other elements until you switch tabs and back. (Now the things that still draw wrong, draw wrong consistently; which is much easier to fix as well as far less prevalent!). |
Date Modified | Username | Field | Change |
---|---|---|---|
Aug 29, 2018 2:38 pm | Ovalcircle | New Issue | |
Aug 29, 2018 2:38 pm | Ovalcircle | File Added: 20180829143456_1.jpg | |
Aug 29, 2018 2:38 pm | Ovalcircle | File Added: Docks not showing up.savemet | |
Aug 29, 2018 2:38 pm | Ovalcircle | File Added: Docks not showing up.save | |
Aug 29, 2018 3:01 pm | BadgerBadger | Note Added: 0048507 | |
Aug 29, 2018 3:14 pm | Ovalcircle | Description Updated | |
Sep 5, 2018 8:30 pm | Chris_McElligottPark | Assigned To | => Chris_McElligottPark |
Sep 5, 2018 8:30 pm | Chris_McElligottPark | Status | new => assigned |
Sep 5, 2018 8:32 pm | Chris_McElligottPark | Relationship added | child of 0020152 |
Sep 29, 2018 9:03 pm | Chris_McElligottPark | Status | assigned => resolved |
Sep 29, 2018 9:03 pm | Chris_McElligottPark | Resolution | open => fixed |
Sep 29, 2018 9:03 pm | Chris_McElligottPark | Fixed in Version | => 0.777 First Impressions |
Sep 29, 2018 9:03 pm | Chris_McElligottPark | Note Added: 0049629 |