Project Orbiter Galaxy

Oh well...worst case test :).....yeah GPU is the graphics processing unit which is on the graphics card if you have one. Its better at parallel algorithms, texturing quads etc. than the CPU.

Feature request : I wish there was a search box for finding particular stars by typing in their name.....there are so many of them that finding the typical ones like say deneb or rigel can be time consuming - say setting focus on the star with the nearest match ?
 
Last edited:
Ah, good thing Christmas is around the corner :D

I hope Orbiter Galaxy 0.6.5 is also ready by Christmas :P

Also, there is a search box :D Move your mouse to the right side of the window.
 
Yes thanks!!...all the moons and planets have textures now...I set a minimum level of 7 and it took about 20 minutes to generate the textures for the Barnard star system...trying hard to reach the habitable world now with the DG :thumbup:
62284026.png

Oh, so THIS is what it should look like :D

How can I regenerate textures for a system? I think I interrupted the generation process the first time and I don't have textures for most of the planets and when I set this system as the target once more, it didn't generate them again - looks like it thought all of the textures are there, since some of them are.
 
How can I regenerate textures for a system? I think I interrupted the generation process the first time and I don't have textures for most of the planets and when I set this system as the target once more, it didn't generate them again - looks like it thought all of the textures are there, since some of them are.

Yes, once a system is written to the cache, Orbiter Galaxy will not export it again until it's deleted from the cache. (which automatically happens if the cache is full: the oldest system gets removed from your harddrive. Read the chapter on configuration in the manual, the parameter "cache size").

To solve your problem, simply open cache.txt in the OrbiterGalaxy directory, and remove the apropriate system. Make sure that the number in the first line of the file shows the correct number of systems in the cache when you're finished (if you remove one system, lower that number by one). Orbiter Galaxy will then export the system again.

Although that might be a programming impossiblity or at least terribly inconvenient.

Well, there already IS dynamic texture loading in there since 2010, all we'd need is a pointer to the texture and a reload call, but I might oversimplify things a bit...

If you want to get your textures gradually, you can start the export process in the standalone aplication, then run orbiter, target the system, fly to it and restart Orbiter whenever you see that a new texture arrived in your textures folder :P (I guess I really have to be working on that status display...)

Feature request : I wish there was a search box for finding particular stars by typing in their name.....there are so many of them that finding the typical ones like say deneb or rigel can be time consuming - say setting focus on the star with the nearest match ?

RTFM ;)
read the chapter about the star map, the whole GUI is explained in there. You can search for any stars in the catalogue, and for generated stars in the currently visible cubes.

In the galaxy map, you can even define and save hotspots for places you like especially.
 
Last edited:
Ah yes...the search box is there :thumbup:..my bad . So I finally finished generating textures on the CPU after 4 hours and 20 minutes :cheers: !!

And the planets look much better now. I however found out that I clicked on the wrong star :lol:....so its back to the star chart again >>>>

By the way....I did experience some random ctd when selecting the star category and then moving the map around. Also if i typed something in the box and then moved the map around a bit and then got back to typing again it was crashing. It doesnt happen always..but some sequence of those events causes it to stop when I finally try to reuse the GUI. This only happens inside orbiter...the stand alone can be used for a long time with no crashes and I am using that now to save a system for use inside orbiter. Its a lot more stable for extensive search and save :)

------

Also with no orbiter running, my cores are at about 50% max, so the export process appears to be running faster at least in terms of the files appearing every few minutes in the textures folder. I guess I cannot start Orbiter now and target this system as after targeting the MFD will start generating textures too.

-----

The visual c++ express debugger allows checking for memory leaks and can tell you the file name at the least, where the problem is. You have to start orbiter from inside visual c++ of course, in debug mode.

Orbiter Debugger
-----

One more thing came to mind, in every system the stars should look different ....but I guess its quite tough to generate a dynamic texture to match how the stars will look from a target system and have planetarium view use that instead......umm let me RTFM....just in case...
 
Last edited:
Probably a memory leak somewhere that's got to do with GUI and filters. In Orbiter, what with Orbiter itself and all the add-ons running in parallel, such things can ruin your day much faster than when you run it alone.

I guess I finally need to find me a sensible method to check for memory leaks...

Also, I just re-read large parts of this whole thread... It's amazing how most people have stuck around here, giving input and advice, and just waited, waited... until now finally we have a playable release. It's kind of touching. Thanks guys!

---------- Post added at 06:34 PM ---------- Previous post was at 04:48 PM ----------

"Captain, iceberg... errr... I mean memory leak ahead!"

Turns out that, when switching location by the search function or by clicking on the galaxy map, the stars never got the call to delete their systems, letting them rot away in memory for all eternity... most probably the cause of the frequent crashes when using the search funtion and the galaxy map, but we'll see. While looking through those old pieces of code, I also noticed that there is much room for performance improvement. In a lot of cases I'm copying whole elements instead of just passing their pointers on (Hey, I was learning...), so I'll have a look if I can streamline the speed of the whole thing a bit before putting another patch up (no, that won't affect texture generation speed, don't get your hopes up! it might be possible to make the loading of new cubes a tiny bit faster, but that's about it).

One more thing came to mind, in every system the stars should look different ....

It took me a while to understand what you're saying there. Yes, I agree, that would be a great feature, and I even have some ideas to pull it off, but... there's always a but.
Exporting the catalogue into a bin file that orbiter can open isn't really a problem. However, that's only so much of the galaxy. For exporting an "alien sky" for a star at the other end of the galaxy, I'd have to generate the WHOLE surroundings (a thousand lightyears or so), check for apearant magnitude relative to the centralized star, do a few tens of thousands of euler rotations, and then write the whole afair into a .bin file.

Now, the last two points are not really an issue here. Even a low end graphics card can do those rotations quicker than I can google "Lokomotivheizerpausenbrotbeleger", and calculating the aparent magnitudes is a breeze, but generatting the whole surroundings to know what stars there are isn't. Ever notice that short loading time when you click on a place in the galaxy map? that's the whole time it takes to generate the 27 cubes you see on the screen afterwards. Now multiply that by a few thousand, and I will have a serious rival for the texture export!

It's a problem of the architecture I chose... I decided for an easy solution that fits my abilities rather than a multi-thread LOD that would have alowed me to generate the galaxy more dynamically. Improving oversight was also an issue, but it all comes at the price that the program never has an idea of its actual surroundings.

The visual c++ express debugger allows checking for memory leaks and can tell you the file name at the least, where the problem is. You have to start orbiter from inside visual c++ of course, in debug mode.

I'm running the add-on in the debugger the whole time of course, how would I find my bugs otherwise? But until now I have failed to understand how the debugger actually helps me detecting memory leaks...

Also with no orbiter running, my cores are at about 50% max, so the export process appears to be running faster at least in terms of the files appearing every few minutes in the textures folder. I guess I cannot start Orbiter now and target this system as after targeting the MFD will start generating textures too.

Nope, if you click "save to cache" in the standalone, first action of the day is writing the system to the cache, then exporting cfgs, then textures. So you can target the system inside orbiter while export is running in the standalone. It will look up the cache, see that the system's listed, and not give a damn about wheather or not all the textures are already exported (if the cfg export isn't finished, that will result in a crash, but you'd be a hero in my book if you can target the system and hit the jump button before those are exported).
 
Last edited:
Ugh, I can imagine memory leaks being annoying (especially while running Photoshop :P).

Also, I think there should be an option on whether or not the Map MFD BMP files are saved, because I'd imagine most people don't use the old version of Map MFD.
 
Since there's no way of generating a vector file of those surfaces (at least I think so, unless someone has me a free to use Bitmap-to- vector-converter source code), I think most people will change their map MFD for use with Orbiter Galaxy.

The Maps are currently exported by default by the library when the textures are produced, so I'd have to ask Artlav to put a flag in for it, but I have no doubt he'll do it if there's real demand for it.

Also, some crash related with the redraw function in the Galaxy Map spotted. very misterious circumstances, maybe a Mendelbug on the irrlicht side, although I have a lot more checking to do before considering that possibility seriously.
 
Just wondering dose anyone have a link to the latest GPU driver? I wan't to speed up the generation time and quality.
 
Orbiter Galaxy works flawlessly for me. I don't think I've found a single bug in all of my travels throughout the galaxy. I have the default settings for min/max textures, GPU, and simplified textures. Takes about 5 minutes per system.
 
Shader.log, not much to it. Or so it appears.
So it is. Apparently that card just fails quietly and covers the failure in black.

The possible generation/use of "rings" for planets, gas giant or otherwise.
Would be in.

As it seems, the flashing unresponsive window after GPU generation is quite a common problem, although so far I have only heard of cases where the generator falls back on the CPU. Can you reproduce it on your machine?
Apparently i can.
The window suddenly appear and start flashing on and off.
That's the one?

No idea what could cause it on my side, are you sure yours is clean?

I was wondering if this can be made faster on machines with more cores...like say on the i7 perhaps 6 textures can be generated in parallel as they are not interdependent (I assume).
Quite possible, but not very practical, since we're still talking 5-10 miutes CPU vs 1.8 seconds GPU.

Since there's no way of generating a vector file of those surfaces
Wait a second, the new map mfd uses some kind of new map format?

Just wondering dose anyone have a link to the latest GPU driver? I wan't to speed up the generation time and quality.
Depends on your GPU (graphic card), googling it's vendor+drivers usually does the trick.

I'm running the add-on in the debugger the whole time of course, how would I find my bugs otherwise? But until now I have failed to understand how the debugger actually helps me detecting memory leaks...
For example it can try to trace where the memory-to-memory pointer is being freed without freeing it's contents, or when an object is being lost by losing it's pointer, etc.

None of these are even remotely error-proof, however.

The best way of fighting memory leaks is to keep your memory structure in your head as you code, and not to forget what is happening around it.

Try, for example, to write down a complete system design of the program you're making. Not general words, but the whole conceptual scheme.

You want to draw a solar system?
Describe what parts would that window be made of, where the data is coming from, how would the re-drawing be achieved. Then, how do you draw the planets, how do you draw the text, do you re-gen the data each frame or buffer it, where does the pointer to that buffer stored for latter memory release, what happens on that button press, etc.

If something takes more time to describe than you can fit in details in your head, type it out.

The important point is not the typing itself, but that in the process of such typing you think your design over in precise details, leaving no place for bugs to appear in the first place.

And, if you do the typing, you'll end up with a few 100kb's of text you can then just type the C code by, while listening to some nice music without excessive thinking strain.
 
Meanwhile here is the Cygnus 61 system...generated in 3 hrs with max settings....we need some spaceports to get the view from the ground :)

















 
That gas giant looks amazing!

Also, kind of unrelated, but can anyone recommend a good GPU (specifically for texture generation such as this)?

And one more idea: An toggleable option for adding an extremely tiny atmosphere to planets with no atmospheres, so they can be rendered by the GPU for those of us whose GPU fails at generating textures otherwise.
 
Interesting... after commenting a bit around in my code, Irrlicht is pretty much the only thing still running, and the crash still happens. In ALL GUIs, pretty randomly. I'd say this is most probably an Irrlicht Bug, so small that noone noticed it until I had the bright idea to run it within orbiter, where things are a bit more... volatile.

I put the problem up on the Irrlicht forum, I hope they can help. For now, try to not move your mouse around over the GUIs too much. The crash comes really unpredictable, I had instances where it crased after one sec, but also where I was good for several minutes. Be carefull out there, and save often!
 
darn, I missed a whole page :lol:

That gas giant looks amazing!

That Gas Giant is actually a bug! :lol: It's those gas dwarfs that somehow get classified as gas dwarfs although they are not, so they end up with an actual atmosphere exported...

I'm planning to make Gas Giants similiar to the way they are in the outer planets add-on, but I need to revise the atmosphere model first.

And one more idea: An toggleable option for adding an extremely tiny atmosphere to planets with no atmospheres, so they can be rendered by the GPU for those of us whose GPU fails at generating textures otherwise.

Wouldn't even need to go that far, I would only have to tell the Generator that the planet has an atmosphere. No need to actually export it to orbiter. Will include something like that in the next patch, but That will take a bit longer, see above post for reason.

Apparently i can.
The window suddenly appear and start flashing on and off.
That's the one?

No idea what could cause it on my side, are you sure yours is clean?

Well, "suddenly" on my machine (and others, as far as I've read here) is exclusively after finishing a texture export with GPU set to on. If I export on the CPU it doesn't happen, so I'm kind of convinced that it's got something to do with it.

Wait a second, the new map mfd uses some kind of new map format?

:lol: Yeah, it's all vectors now. But you can still activate the old one with the bitmaps.

Try, for example, to write down a complete system design of the program you're making. Not general words, but the whole conceptual scheme.

I'll try that next time, thanks for the tips. Major problem is, when I started this thing I didn't even know what a pointer IS, so there's some weird stuff left over in the older parts of the code...

Orbiter Galaxy works flawlessly for me. I don't think I've found a single bug in all of my travels throughout the galaxy. I have the default settings for min/max textures, GPU, and simplified textures. Takes about 5 minutes per system.

Very glad to hear that. I'd be obliged if you could answer me two questions: Does the map window flash and is it unresponsive after texture export? and second... what GPU are you using? I'm on the lookout for a new one, but Artlavs recommendation turned out to be a bit outside my budget...
 
Last edited:
I still can't get this to work, I pressed Map then didn't touch anything else for 10 minutes straight and it still did nothing. I understand that it is in Alpha and bugs are to be expected, but it should probably work a little better than this.
I am running it with Orbiter 2010 P1, and I'm using Windows 7 if that matters.

Darren
 
Back
Top