Jump to content

[1.10.0] NanoGauges - tiny ana1og gauges for kerbalnauts -1.10.0-3463


Nereid

Recommended Posts

NanoGauges 0.4.12 is online

  • Terminal velocity deviation gauge added.
  • Copy/paste buttons in config window added.
  • Some minor bugs fixed
  • The Out-Of-Limits flag on the Max-Gee gauge is still broken (but this is a minor and a pure cosmetic issue).

Edited by Nereid
Link to comment
Share on other sites

would it be possible to add another gauge indicating the ÃŽâ€v percentage of a burn when you place a maneuver node?

You mean for the next/current manouver node? I will have to check this.

Link to comment
Share on other sites

NanoGauges 0.5.2 is online

  • By holding RIGHT-CTRL clustered gauges can be dragged together
  • Tooltips for gauges
  • New camera mode gauge
  • Gauges can be disabled in EVA, IVA, Map or Flight.

Edited by Nereid
Link to comment
Share on other sites

If you wouldn't mind integrating with another mod or two, gauges I could definitely use would be a Machmeter and Q-gauge (from FAR), and maybe an ablative-shield-remaining gauge (via Deadly Reentry). Then I could have every number I need for launch and landing as a nanogauge!

(Maybe also charge/amp-type meters for the megajoule resource from Interstellar, too?)

-c

Link to comment
Share on other sites

If you wouldn't mind integrating with another mod or two, gauges I could definitely use would be a Machmeter and Q-gauge (from FAR), and maybe an ablative-shield-remaining gauge (via Deadly Reentry). Then I could have every number I need for launch and landing as a nanogauge!

(Maybe also charge/amp-type meters for the megajoule resource from Interstellar, too?)

-c

I have already thought of this. The problem is: I have no clue yet how to add this without to add dependencies to those mods, too. I have done something like this for FinalFrontier, but I have created a wrapper dll. This solution is way to complicated for more than one plugin. I know there must be another solution but there was no time yet to get this done.

EDIT: LOL, the forum hast stripped of "ana?" in "ana?og". Not only in this thread but for the SteamGauges, too. :rolleyes:

Edited by Nereid
Link to comment
Share on other sites

I have already thought of this. The problem is: I have no clue yet how to add this without to add dependencies to those mods, too. I have done something like this for FinalFrontier, but I have created a wrapper dll. This solution is way to complicated for more than one plugin. I know there must be another solution but there was no time yet to get this done.

It looks like the ablative shielding is just implemented as a resource of that name, so I'm guessing the same solution as works for the TAC-LS/Kethane resources would work for it, too.

As for the FAR figures... yeah, I take the point. Hm. On the other hand, though, I might be able to help out a bit there - I had to come up with a solution for my greenhouse mod to let it pull numbers from two different TAC-LS versions without having a dependency on either, and it seems to me that something similar to that (using reflection) might work to get the numbers out of FAR without making your mod explicitly dependent on it. Want me to take a look at it?

-c

Link to comment
Share on other sites

It looks like the ablative shielding is just implemented as a resource of that name, so I'm guessing the same solution as works for the TAC-LS/Kethane resources would work for it, too.

Ah, ok. I will see what I can do.

As for the FAR figures... yeah, I take the point. Hm. On the other hand, though, I might be able to help out a bit there - I had to come up with a solution for my greenhouse mod to let it pull numbers from two different TAC-LS versions without having a dependency on either, and it seems to me that something similar to that (using reflection) might work to get the numbers out of FAR without making your mod explicitly dependent on it. Want me to take a look at it?

-c

I have found a solution. The new Adapter class handles this with reflection. Yes, reflection is slow, but I have done some performance tests and calling the method that calculates the mach number using reflection 100,000 times costs about 100 ms. So calling it each frame (about 100 times a second), costs 0.1 ms per second. I think we could spend this easily. ;)

The mach number gauge is implemented in 0.5.8.

EDIT: What do you mean by "Q-gauge"?

Edited by Nereid
Link to comment
Share on other sites

It looks like the ablative shielding is just implemented as a resource of that name, so I'm guessing the same solution as works for the TAC-LS/Kethane resources would work for it, too.

-c

Consider it done. I will upload 0.5.9 in a few minutes.

Link to comment
Share on other sites

Is there a possibility to add the a max-temperature readout for DeadlyReentery's temper? it reports different temps than the thermometer module, and for purposes of that mod, max temp over whole ship would be very useful - that flightpanel mod for FAR does that.

Link to comment
Share on other sites

Is there a possibility to add the a max-temperature readout for DeadlyReentery's temper? it reports different temps than the thermometer module, and for purposes of that mod, max temp over whole ship would be very useful - that flightpanel mod for FAR does that.

I will have to check the source of DE for that...

EDIT: if I understand the source correctly, DE is managing the temperature for each part independently. So yes, it's possible to add a gauge, but this would have a major drawback: All parts have to be scanned over and over again. I already have solved problems that were caused by this and I don't want to introduce them again.

Edited by Nereid
Link to comment
Share on other sites

The mach number gauge is implemented in 0.5.8.

Thanks muchly for this, and for the ablative shielding!

EDIT: What do you mean by "Q-gauge"?

It's one of the figures that shows up in the FAR flight data window - Q, meaning dynamic pressure. I've got into the habit of using it quite a lot when making gravity turns/preparing early for orbital insertion or when re-entering to figure out just how radically I can maneuver and how fast without tearing the ship up - but that's a big window to have up just to get that one number, so you can see why I'd want it as a nanogauge. :) Probably wants to be a log scale, seeing as I routinely see it exceed 60,000 Pa on launches, but it's from 5,000 Pa down into the hundreds and tens where I pretty much care about accuracy.

-c

Link to comment
Share on other sites

I will have to check the source of DE for that...

EDIT: if I understand the source correctly, DE is managing the temperature for each part independently. So yes, it's possible to add a gauge, but this would have a major drawback: All parts have to be scanned over and over again. I already have solved problems that were caused by this and I don't want to introduce them again.

Ah... I understand.

Link to comment
Share on other sites

It's one of the figures that shows up in the FAR flight data window - Q, meaning dynamic pressure.

-c

I have tried to read this value. But at the moment my knowledge of reflection in C# is quite low. I can't get to this value, because it's private field in an instance (well, the access restriction is not the problem, but to access the instance is). Maybe at a later time I can access this value. but a better solution would be some kind of public access in FAR.

Edited by Nereid
Link to comment
Share on other sites

So I thought I'd have a fiddle with this myself, as I've has a fair bit of practice with reflection on one project or another, and I think I may have it working. Here's my revised version of the FARAdapter class:

https://gist.github.com/cerebrate/8e635c7f2d791d1f8027

...in which I'm grabbing the instance we need from FAR's own ActiveControlSys static field, which should always give us the current control system of the active vessel, and then reflecting on that to grab the mach number/Q rather than recomputing the mach number as before.

I've compiled a version of the plugin from source with this change and given it a test, and it seems to work, at least so far as I've gone. This rough version does have one quirk in that the mach number gauge doesn't actually appear until either you open the FAR panel _or_ you start moving, either of which presumably is what makes FAR create its FARControlSys module, and which I think is causing a NullReferenceException in GetMachNumber() that I'd track down except that, well, it's half-three in the morning here.

Hope this is useful, anyway.

-c

Link to comment
Share on other sites

So I thought I'd have a fiddle with this myself, as I've has a fair bit of practice with reflection on one project or another, and I think I may have it working. Here's my revised version of the FARAdapter class:

https://gist.github.com/cerebrate/8e635c7f2d791d1f8027

...in which I'm grabbing the instance we need from FAR's own ActiveControlSys static field, which should always give us the current control system of the active vessel, and then reflecting on that to grab the mach number/Q rather than recomputing the mach number as before.

Hope this is useful, anyway.

-c

Ah, thank you. Maybe we could get this to work. I was also thinking about calculating Q myself, because it seems to be not that difficult. I will try your modified class later this day, but I'm currently at work.

EDIT: I will revert the changes GetMachNumber method, because I need the call with parameters in FF and maybe in NG later (horizontal mach number).

Edited by Nereid
Link to comment
Share on other sites

I just updated the gist to one that fixes that NullReferenceError I was ignoring last night, BTW.

And, just a suggestion, but why not keep both versions of GetMachNumber around? Using the unparametered one for the current Machgauge saves the program overhead of calculating again what FAR's already calculating for itself each frame (and guarantees that, even if FAR changes its internals in future, the Machgauge always shows the exact same number FAR's display does), and having them both only adds something like one reflection call's worth of overhead when the adapter starts up. A thought, anyway.

-c

Link to comment
Share on other sites

Thank you so much for bringing back the Bucky gauges! I loved using them for flying in external view so I could keep vert speed and radar alt next to the nav ball.

If there's remotely a chance to drag them bigger/smaller, it would be great. As it is, they're just barely small enough to not easily read. :)

My addiction to Steam Gauges may finally be broken --except of course for the full-screen HUD.

Link to comment
Share on other sites

This thread is quite old. Please consider starting a new thread rather than reviving this one.

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

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.

×
×
  • Create New...