Author Topic: (Chris notes) Well, these icons are kicking my butt for the moment.  (Read 15016 times)

Offline x4000

  • Chris McElligott Park, Arcen Founder and Lead Dev
  • Arcen Staff
  • Zenith Council Member Mark III
  • *****
  • Posts: 31,651
BadgerBadger, I know you in particular are going to be really disappointed by this news.  As you can probably guess by the title, there's not going to be a release today.  I'm going to see if I can get in some extra weekend hours and finish this up, but even so there's a fair bit more to code on Monday.

The problem with the icons is that I can't do it in little chunks and then test it.  It's hundreds upon hundreds of lines of code, then testing to see if anything works, and then iterating over the various problems that arise.  Then building back up from there.

I also underestimated how much architecture work I'd have to do for this to support both fake-mipmapping and strong moddability of these parts of the display.  It's nothing disastrous -- please don't get that impression.  But it does throw me off by a day or two.

I probably should have released what is already done on the other parts of the game first, then put in the icons stuff.  But I was working on the icons stuff off and on all week, and thought I could just finish that up and get it all rolled out today.  Oops. :(

So that's my misjudgement, sorry about that.  On the bright side, I'm super pleased what what I've figured out for it, and it's substantially more advanced than I had originally planned.  Now it's just a matter of finishing making it work and scale right, etc.  But it's a really good system, and we'll be able to update how the icons actually look and where the things go around them (all that stuff that we were debating so heavily) at basically whatever speed Blue can create them.

Overall this was a good end to this week, because these icons have been a major bugbear hanging over me for a while.  And I'm probably 80% of the way done with them, depending on how much more debugging trouble they give me.

Like I said, I apologies on the lack of updates this week, though.  Next week will be better!
Have ideas or bug reports for one of our games?  Mantis for Suggestions and Bug Reports. Thanks for helping to make our games better!

Offline BadgerBadger

  • Arcen Volunteer
  • Hero Member Mark III
  • *****
  • Posts: 1,229
  • BadgerBadgerBadgerBadger

Offline treyra

  • Newbie Mark III
  • *
  • Posts: 32
Re: (Chris notes) Well, these icons are kicking my butt for the moment.
« Reply #2 on: March 24, 2017, 06:37:15 pm »
Honestly, you would be hard pressed to come up with a more chaotic two weeks for Arcen to go through. All said I'm impressed you managed to get anything done with everything going to pieces around you.

Offline Chthon

  • Sr. Member Mark II
  • ****
  • Posts: 398
Re: (Chris notes) Well, these icons are kicking my butt for the moment.
« Reply #3 on: March 24, 2017, 09:12:44 pm »
I am saddened to know that icons weren't part of an external art file that could just be replaced :(

Anyways, I look forward to the new icons. Did you do something special for shield and cloak instead of just putting the words there?

Offline x4000

  • Chris McElligott Park, Arcen Founder and Lead Dev
  • Arcen Staff
  • Zenith Council Member Mark III
  • *****
  • Posts: 31,651
Re: (Chris notes) Well, these icons are kicking my butt for the moment.
« Reply #4 on: March 27, 2017, 11:51:01 am »
Cheers guys -- it's coming along, and I'll show you things with it shortly.  For the icons and whatnot, you'll be able to replace a lot of that sort of thing pretty easily no matter what.  Yeah you'll need a copy of unity (which is free), but it should be no great shakes in the main.  We also definitely are not using the word shield and cloak on the icons, no worries there.
Have ideas or bug reports for one of our games?  Mantis for Suggestions and Bug Reports. Thanks for helping to make our games better!

Offline z99-_

  • Full Member
  • ***
  • Posts: 112
Re: (Chris notes) Well, these icons are kicking my butt for the moment.
« Reply #5 on: March 27, 2017, 02:50:30 pm »
Hmmm ... I think I smell an AIWC mod coming ;)

Not that I don't love the current models, I just think it would be a really cool thing to have :D

Offline BadgerBadger

  • Arcen Volunteer
  • Hero Member Mark III
  • *****
  • Posts: 1,229
  • BadgerBadgerBadgerBadger
Re: (Chris notes) Well, these icons are kicking my butt for the moment.
« Reply #6 on: March 27, 2017, 05:37:10 pm »
Have you vanquished the Icons of Doom today? Or are they still laying siege to your sanity?

Offline x4000

  • Chris McElligott Park, Arcen Founder and Lead Dev
  • Arcen Staff
  • Zenith Council Member Mark III
  • *****
  • Posts: 31,651
Re: (Chris notes) Well, these icons are kicking my butt for the moment.
« Reply #7 on: March 27, 2017, 06:59:51 pm »
You know, I thought I had them on the ropes, but it kept throwing thing after thing at me.  I did fix several unrelated bugs that were suddenly apparent, though, so that's good.  It's really frustrating how long this has been taking, but in fairness (I guess) this is the single biggest overhaul on my todo list.  Everything else is incremental stuff, but this is an entirely new rendering pipeline, loading framework, display and input layer, and so on.  The list of things this touches, even at this early stage, kinda surprised me to say the least.

It's getting soooo close.  I want to say that it will be out tomorrow, but it just depends on what sort of other bugs or gotchas I run into in the meantime.  I thought I was going to be done today, but then a lot of my time was spent hunting down some bugs that were in my way (and now fixed) that just weren't so aggravating in the old gimbal system.
Have ideas or bug reports for one of our games?  Mantis for Suggestions and Bug Reports. Thanks for helping to make our games better!

Offline Chthon

  • Sr. Member Mark II
  • ****
  • Posts: 398
Re: (Chris notes) Well, these icons are kicking my butt for the moment.
« Reply #8 on: March 27, 2017, 09:42:58 pm »
You know, I thought I had them on the ropes, but it kept throwing thing after thing at me.  I did fix several unrelated bugs that were suddenly apparent, though, so that's good.  It's really frustrating how long this has been taking, but in fairness (I guess) this is the single biggest overhaul on my todo list.  Everything else is incremental stuff, but this is an entirely new rendering pipeline, loading framework, display and input layer, and so on.  The list of things this touches, even at this early stage, kinda surprised me to say the least.

It's getting soooo close.  I want to say that it will be out tomorrow, but it just depends on what sort of other bugs or gotchas I run into in the meantime.  I thought I was going to be done today, but then a lot of my time was spent hunting down some bugs that were in my way (and now fixed) that just weren't so aggravating in the old gimbal system.

Sounds like me wresting with SikuliX to get it running on CentOS right now. I've narrowed the problem down to the OpenCV library we have. Apparently we have the 32-bit library, but need the 64-bit one, and I don't know where to get that at the moment.

Offline BadgerBadger

  • Arcen Volunteer
  • Hero Member Mark III
  • *****
  • Posts: 1,229
  • BadgerBadgerBadgerBadger
Re: (Chris notes) Well, these icons are kicking my butt for the moment.
« Reply #9 on: March 28, 2017, 03:41:33 pm »
You know, if I'd had so much trouble dealing with an icon system I probably would have just taken after Huldrych Zwingli and become a full fledged iconoclast!

Offline x4000

  • Chris McElligott Park, Arcen Founder and Lead Dev
  • Arcen Staff
  • Zenith Council Member Mark III
  • *****
  • Posts: 31,651
Re: (Chris notes) Well, these icons are kicking my butt for the moment.
« Reply #10 on: March 28, 2017, 03:58:26 pm »
Ahahaha.

At this point I now successfully have white boxes drawing at the proper location, and doing so efficiently in my own form of batching that is on top of the post-processing stack rather than under it, so that's... lots of progress.  Something is up with how I'm handling the uv offsets to actually make the proper icons appear, but one thing at a time, heh.

Then actually getting things like the health bars and all that jazz showing, sigh.  And the icons on the galaxy map back in there again.

But it's been most of this low-level gl/matrix/math stuff that's been the huge slowdown today.  I was using some raw GL.Begin quads stuff, but it doesn't batch like I'd expected, and was causing choppiness.  And there's some sort of stupid something I was doing with my orthographic camera that is causing it to display in a different set of units than I'm accustomed to.

For some reason, a lot of the results of things that used to give pixels are now instead giving me 0-1 ranges for percentage across the screen.  That works fine if I know to expect it, but it's counter to how all our other games have functioned and counter to the documentation... so it certainly was a surprise.  And yes I've been adjusting the projection matrix as usual, before anyone asks. ;)

Anyhow... it's moving finally.  Literally just got them to line up properly.  It's been absolutely endless guess and check today.  I absolutely loathe those kinds of days. ;)
Have ideas or bug reports for one of our games?  Mantis for Suggestions and Bug Reports. Thanks for helping to make our games better!

Offline BadgerBadger

  • Arcen Volunteer
  • Hero Member Mark III
  • *****
  • Posts: 1,229
  • BadgerBadgerBadgerBadger
Re: (Chris notes) Well, these icons are kicking my butt for the moment.
« Reply #11 on: March 28, 2017, 04:36:37 pm »
I've never really understood how the whole "graphics" thing worked, but as far as I can make out you just said "Hopefully it will be done by Thursday." Does that sound like a reasonable translation?

Offline x4000

  • Chris McElligott Park, Arcen Founder and Lead Dev
  • Arcen Staff
  • Zenith Council Member Mark III
  • *****
  • Posts: 31,651
Re: (Chris notes) Well, these icons are kicking my butt for the moment.
« Reply #12 on: March 28, 2017, 04:42:05 pm »
Well, I've just had some pretty solid progress FINALLY.  I've got all the uvs and whatnot figured out, so it's drawing properly in the locations that I want.  Current things still on my list for this:

- Drawing the things that go "around the icons" such as the health bars, etc.
- Making it so that the icons are properly sorted by depth, whereas right now they are on top of everything (which was on purpose, but I didn't think that through).
- Getting them back on the galaxy map.
- Making these scale the way I want so that they are screen-resolution-independent (the framework is set up for this).

At this rate it might be done tomorrow.  That said, it's a big question if I can use the depth buffer properly with an orthographic overlay camera the way I am right now.  I _think_ I can, but I've never tried blending those two modes and didn't think about the fact that I'd need to until now.  So if that fails, I'll have to move this stuff into a perspective camera and hope for the best.

Knock on wood that's not needed!
Have ideas or bug reports for one of our games?  Mantis for Suggestions and Bug Reports. Thanks for helping to make our games better!

Offline BadgerBadger

  • Arcen Volunteer
  • Hero Member Mark III
  • *****
  • Posts: 1,229
  • BadgerBadgerBadgerBadger
Re: (Chris notes) Well, these icons are kicking my butt for the moment.
« Reply #13 on: March 29, 2017, 11:58:50 am »
I'm actually very excited to be able to see the health bars! I had too many arks die because I didn't realize they were so low in health.

Also, I remember a few of your videos to Cinth talked about missile turrets. When are we getting those? They were always my favourite kind of turret.

Offline x4000

  • Chris McElligott Park, Arcen Founder and Lead Dev
  • Arcen Staff
  • Zenith Council Member Mark III
  • *****
  • Posts: 31,651
Re: (Chris notes) Well, these icons are kicking my butt for the moment.
« Reply #14 on: March 29, 2017, 02:01:39 pm »
We've got about 10ish ships/turrets/etc that have not yet been integrated into the prep project by Cinth or myself, but those will be something he starts tackling on next Wednesday.  For some of the ones that are already done, like I think missile turrets, that's more of a Keith thing -- the model is there, but I'm not sure if the code isn't ready for it or what the deal is.

In other news, this sprite stuff has continued to be a real pain.  However, there are three separate approaches I could take.  One of them, which is by far the most efficient in all regards, includes some pretty funky math that is throwing me for a loop.  For a long while it was a laundry list of other issues on that path, but now it's just down to some math (but really complex transformations between multiple types of camera, etc).

The second approach is more brute-forcey on the CPU, but actually something that the previous gimbals were already doing without killing the machine, so it's not something that would be a tragedy.  Actually now that I think of it, I may have been shooting myself in the foot more than a little bit here by trying to be too clever for my own good on that front, so to speak. :/

The third approach kills batching, but not setpass calls, and I'm not sure exactly what the load difference would be between this and approach #2.  This one involves complex vertex shaders on the GPU side that do billboarding.  I've gotten that working, but can't figure out a way around the batching issues since that's kind of opaque.  It's possible that I could combine this with approach #1 and get something that would work... but I might as well just finish approach #1 if I were to do that.

Approach #2 could have some other advantages in terms of things like keeping with a simpler method for doing raycasting/hovering over ships, etc.  Though definitely less efficient... unless culling gets taken into account, I guess.  Sigh.

Approaches 1 and 3 also allow me to dodge the bloom and whatnot... although come to think of it I could do that with approach #2 as well.

Humbug!  I probably will go with approach #2 for now, and just save my work from #1 and #3.  If we're later having a huge CPU drain or something from this, then I can take another swing at #1.  But #2 should be better on the GPU than #3, I think, and that's probably the most important thing to me out of this.  It's also a lot less error-prone on my end regarding setup, so that's also good.

Wow what a waste of time in some respects.  I could have shaved 1.5 days off of this if I didn't swing for the fences and go for approach #1 and then now #3.  I'm going to go get some lunch and then start plugging away at #2.  I didn't actually come to that decision until sitting here writing out this post, so that was a really helpful time actually. :)
Have ideas or bug reports for one of our games?  Mantis for Suggestions and Bug Reports. Thanks for helping to make our games better!