A Forking Commit Thread.

The place to discuss creating, porting and modifying Celestia's source code.
Topic author
Janus
Posts: 478
Joined: 13.08.2016
With us: 3 years 7 months

Post #81by Janus » 17.12.2019, 16:15

@wmurphy

This is from the VS version, I ignore the QT version.
I have not used the navigation menu, but a quick glance shows a pattern.

'Select Sol' is intended to be a quick go home.

'Tour guide' is a hard coded tour of (sol) our solar system.
This should be fixed, replaced by a dynamic list like solar system browser is.
As well, the ssc & stc files, which should be amended with blurbs for this purpose.
Check on Celestia Origins, those blurbs may be in there already.

Select & Goto both work in current solar system.

The next section all work based on current view/solar system.

'Solar System Browser' displays a list based on current solar system

'Star Browser' while based on current solar system, needs work.
More filters, better sorting, the ability to (un)mark selections.

Perhaps some labels could be cleaned up, but the tour is the only one that really needs real work.
While the browser just needs finishing.

Janus.

onetwothree
Developer
Posts: 416
Joined: 22.09.2018
With us: 1 year 6 months

Post #82by onetwothree » 17.12.2019, 19:58

wmurphy wrote:Continuing the idea of using alternate galaxies, is it possible to replace the references in the navigation menu from Sol to Origin?

In this case you need additional changes to make a new origin, H key and appropriate menu entries use Sun exclusively.

wmurphy
Posts: 7
Joined: 24.11.2019
With us: 4 months 13 days

Post #83by wmurphy » 18.12.2019, 04:08

Thanks for the info and pointers.

Topic author
Janus
Posts: 478
Joined: 13.08.2016
With us: 3 years 7 months

Post #84by Janus » 06.04.2020, 07:54

Okay, been a while, been busy.
With all the fun lately, I have finally caught up.
Also, lots of free time, I mean lots of free time.
Been trying to make good use of it.

As per a request, here is commit 5772, with some of my tweaks.
The first shows Ra, Dex & Dist.
The second, as above, but also has all greeking disabled.
Their names demark them.

I will also be working on my other tweaks, and bringing them forward as I can.
If anyone is interested:

Spoiler

Code: Select all


   // Janus 200406 : Display Ra Dec & now Dist at the bottom of everything not earth.
   Selection Sol_Object = u->find("Sol");
   Selection EarthObject = u->find("Earth", &Sol_Object, 1);
   Body* earth = EarthObject.body();
   if (sel.body() != EarthObject.body())
      {
      UniversalCoord SelPos = sel.getPosition(sim->getTime());
      Vector3d v = sel.getPosition(sim->getTime()).offsetFromUly(Selection(earth).getPosition(sim->getTime()));
      v = XRotation(astro::J2000Obliquity) * v;
      displayRADec(*overlay, v);
      double dist = SelPos.offsetFromUly(EarthObject.getPosition(sim->getTime())).norm();
      *overlay << "Dist:: " << DistanceLyToStr(dist / 1000000) << "\n";
      }

      overlay->endText();
      glPopMatrix();


This goes in /src/celestia/celestiacore.cpp:celestiacore::renderoverlay
After 'case selection:type_location', but before the end of the switch statement.

Once I find the hud detail variable, the RaDecDist will be selectable.

For anyone who cares, enjoy.


Janus.
Attachments
Celestia-5772-txf-RaDecDist.7z
(2.75 MiB) Downloaded 4 times
Celestia-5772-txf-RaDecDist-NoGreek.7z
(2.75 MiB) Downloaded 1 time

Avatar
selden
Developer
Posts: 10109
Joined: 04.09.2002
With us: 17 years 7 months
Location: NY, USA

Post #85by selden » 06.04.2020, 14:10

Thanks!
Selden

onetwothree
Developer
Posts: 416
Joined: 22.09.2018
With us: 1 year 6 months

Post #86by onetwothree » 06.04.2020, 17:50

Janus, in the nearest future we drop dependency on GLEW and will switch to libepoxy because it supports GL ES. But be aware that libepoxy can't be linked statically because it does a lot of things in its DllMain.

Topic author
Janus
Posts: 478
Joined: 13.08.2016
With us: 3 years 7 months

Post #87by Janus » 06.04.2020, 19:21

@onetwothree

Thanks for the warning.
A quick look indicates there is a static link option.
However, I will likely have to create a VS sln/vcxproj for it in order to do anything with it.
The reason is the default build is with mingw.
Which I will not be able to use until I finish making a wxwidgets frontend for celestia in codeblocks.
Chosen because it is multiplatform.

Are you going to a single context of open/glew?
I am so far unable to compile the dome shader outside of the shader manager, and getting frustrated with it.
Having the dome projection available is a goal.

I always run into problems with opengl, so I am not surprised.
I have never been able to do matrix math, and since all opengl discussions use them, I get lost.


Janus.

onetwothree
Developer
Posts: 416
Joined: 22.09.2018
With us: 1 year 6 months

Post #88by onetwothree » Yesterday, 05:21

Yes, it looks like it's possible to build a static version, but I'm totally unfamiliar with Meson. I also have no idea how to generate source files with VS projects.

Janus wrote:Are you going to a single context of open/glew?
I don't understand the question.

Janus wrote:I am so far unable to compile the dome shader outside of the shader manager, and getting frustrated with it.
That standalone shader is not required. All changes are applied in shadermanager.cpp. Standalone one is just a reference implementation.

Markerz
Developer
Posts: 124
Joined: 29.01.2009
Age: 24
With us: 11 years 2 months
Location: Hangzhou, China

Post #89by Markerz » Yesterday, 06:03

I use

Code: Select all

meson --buildtype=release --default-library=static --prefix=`pwd`/output -Dtests=false
to configure a static build of libepoxy

Topic author
Janus
Posts: 478
Joined: 13.08.2016
With us: 3 years 7 months

Post #90by Janus » Yesterday, 06:19

@onetwothree

Sorry, I should have been specific.
I have been trying to get the celestia-dome code to compile.

I got the 1.4.1 code to compile in VS2015.
However, I am unable to do the same with the dome code.

A shader is compiled in initsim using some external library (glx?) in a context I am unable to duplicate.
I can compile it just fine, however, it crashes on run.
I traced it, and it crashed because the address for the shadercompile was null.
Tried initglew, but that didn't work.
Study goes on.
I am patient.


Janus.

Added after 8 hours 52 minutes:
@MarkerZ

Thank you.


Janus.


Return to “Development”

Who is online

Users browsing this forum: pedro_jg