On the subject of developing Celestia

The only place for all Non Celestia Discussion/Stuff
Avatar
Topic author
Hungry4info
Posts: 1133
Joined: 11.09.2005
With us: 19 years 4 months
Location: Indiana, United States

On the subject of developing Celestia

Post #1by Hungry4info » 13.01.2008, 04:50

I've played around with Celestia for more than two years now. I want to go further. I want to learn how to modify it, how to work with it to get it to do what I want it to do. How to read and write the underlying code that makes it run. Perhaps if I become fluent with that, helping in development of Celestia.

Where should I start?
Current Setup:
Windows 7 64 bit. Celestia 1.6.0.
AMD Athlon Processor, 1.6 Ghz, 3 Gb RAM
ATI Radeon HD 3200 Graphics

ElChristou
Developer
Posts: 3776
Joined: 04.02.2005
With us: 19 years 11 months

Post #2by ElChristou » 13.01.2008, 10:39

You need to learn C++ first, then have a very good math level, then a very good physics level...

The above is not to be discouraging, it's the requisite to really understand the code of Celestia. Now if you get good enough with C++ I suppose it will already be a very good start.
Image

Avatar
t00fri
Developer
Posts: 8772
Joined: 29.03.2002
Age: 22
With us: 22 years 10 months
Location: Hamburg, Germany

Re: On the subject of developing Celestia

Post #3by t00fri » 13.01.2008, 10:59

Hungry4info wrote:I've played around with Celestia for more than two years now. I want to go further. I want to learn how to modify it, how to work with it to get it to do what I want it to do. How to read and write the underlying code that makes it run. Perhaps if I become fluent with that, helping in development of Celestia.

Where should I start?


Hungry,

as you must have noticed in the meantime, there are many ways to contribute to Celestia development, also without writing code.

If you have been involved with programming before, you will consider learning C++ a not too difficult challenge. Many concepts in programming are rather independent of the particular programming language. There are many (compact )C++ tutorials available in the net. I find this one quite concise, for example.

http://www.cplusplus.com/doc/tutorial/

If you know some C, the change is really not very hard.

I think you have quite a good background in astronomy/astrophysics. Also I think you are well aware meanwhile of the general underlying strategy in the development of Celestia. That's quite important.

Another good idea would be to ask Vincent. He has started pretty much near zero as to programming and meanwhile is a very active member of the dev team.

Bye Fridger
Image

Avatar
cartrite
Posts: 1978
Joined: 15.09.2005
With us: 19 years 4 months
Location: Pocono Mountains, Pennsylvania, USA Greate Grandfother from Irshava, Zakarpattia Oblast Ukraine

Re: On the subject of developing Celestia

Post #4by cartrite » 13.01.2008, 11:19

Hungry4info wrote:I've played around with Celestia for more than two years now. I want to go further. I want to learn how to modify it, how to work with it to get it to do what I want it to do. How to read and write the underlying code that makes it run. Perhaps if I become fluent with that, helping in development of Celestia.

Where should I start?

You could start building cvs if you haven't done so already.
After you get the c++ basics down, you can check out this page.
http://celestia.cvs.sourceforge.net/celestia/celestia/
There, if you click on a file it will bring up the files history and you can browse and see the differences. Each revision has a link to "Diff to previous". If you start following the development, this may give you an idea of what code changes there were and the effect the code changes had.

I got a ways to go yet but I'm getting a basic idea of what is going on.
cartrite
VivoBook_ASUSLaptop X712JA_S712JA Intel(R) UHD Graphics 8gb ram. Intel(R) Core(TM) i5-1035G1 CPU @ 1.00GHz, 1190 Mhz, 4 Core(s), 8 Logical Processor(s) 8 GB ram. Running on Windows 11 and OpenSuse 15.4

Avatar
Topic author
Hungry4info
Posts: 1133
Joined: 11.09.2005
With us: 19 years 4 months
Location: Indiana, United States

Post #5by Hungry4info » 13.01.2008, 14:54

I have a basic understanding of Java, so I've a little programming experience.

t00fri wrote:I think you have quite a good background in astronomy/astrophysics. Also I think you are well aware meanwhile of the general underlying strategy in the development of Celestia. That's quite important.
Well thank-you :D

Thanks, to all three of you, for the guidance.

The scripts that one can download for Celestia, are they in C++ format? I've read over a few and can make sense of it.
Current Setup:
Windows 7 64 bit. Celestia 1.6.0.
AMD Athlon Processor, 1.6 Ghz, 3 Gb RAM
ATI Radeon HD 3200 Graphics

Vincent
Developer
Posts: 1356
Joined: 07.01.2005
With us: 20 years
Location: Nancy, France

Re: On the subject of developing Celestia

Post #6by Vincent » 13.01.2008, 15:16

t00fri wrote:Another good idea would be to ask Vincent. He has started pretty much near zero as to programming and meanwhile is a very active member of the dev team.

Ho ho, I used to build programs in 'Basic' on my Amstrad CPC 6128 when I was a kid ! :wink:

Seriously, you can start making trivial changes to the code and see what happens... The most important thing is to keep in mind that 'It HAS to work'. Learning either Lua or C++ code particularly requires time, concentration and persistency...
@+
Vincent

Celestia Qt4 SVN / Celestia 1.6.1 + Lua Edu Tools v1.2
GeForce 8600 GT 1024MB / AMD Athlon 64 Dual Core / 4Go DDR2 / XP SP3

Avatar
selden
Developer
Posts: 10192
Joined: 04.09.2002
With us: 22 years 4 months
Location: NY, USA

Post #7by selden » 13.01.2008, 17:07

Hungry4info wrote:The scripts that one can download for Celestia, are they in C++ format? I've read over a few and can make sense of it.


One of the things that's important when programming is to use the correct terminology. If you don't, you are bound to misunderstood and get responses which are useless to you.

Scripts are text files which contain commands which are to be interpreted and executed by some program while it's running.

Source code files are translated into binary computer instructions by a compiler and merged into a runnable program by a linker.

Celestia's source code files are written in C++.
Selden

Avatar
t00fri
Developer
Posts: 8772
Joined: 29.03.2002
Age: 22
With us: 22 years 10 months
Location: Hamburg, Germany

Re: On the subject of developing Celestia

Post #8by t00fri » 13.01.2008, 17:33

Vincent wrote:
t00fri wrote:Another good idea would be to ask Vincent. He has started pretty much near zero as to programming and meanwhile is a very active member of the dev team.
Ho ho, I used to build programs in 'Basic' on my Amstrad CPC 6128 when I was a kid ! :wink:
...


Wow ;-) . As the name says Basic is really not much of a programming language ... I think this is almost a fair statement.

Cheers,
F.
Image

Avatar
Topic author
Hungry4info
Posts: 1133
Joined: 11.09.2005
With us: 19 years 4 months
Location: Indiana, United States

Post #9by Hungry4info » 13.01.2008, 20:23

selden wrote:
Hungry4info wrote:The scripts that one can download for Celestia, are they in C++ format? I've read over a few and can make sense of it.

One of the things that's important when programming is to use the correct terminology. If you don't, you are bound to misunderstood and get responses which are useless to you.

Scripts are text files which contain commands which are to be interpreted and executed by some program while it's running.

Source code files are translated into binary computer instructions by a compiler and merged into a runnable program by a linker.

Celestia's source code files are written in C++.


Yes, I am aware of the distinction. I was asking of the scripts were in C++ form. I haven't read over the source code.
Current Setup:
Windows 7 64 bit. Celestia 1.6.0.
AMD Athlon Processor, 1.6 Ghz, 3 Gb RAM
ATI Radeon HD 3200 Graphics

Avatar
selden
Developer
Posts: 10192
Joined: 04.09.2002
With us: 22 years 4 months
Location: NY, USA

Post #10by selden » 13.01.2008, 20:40

Now you really have me confused as to what you're trying to ask.

C++ is a compiled language. It can't be used for interpreted scripts. It's not a scripting language.

Celestia's scripts (i.e. scripts which tell Celestia to do things) are written either in Lua (.celx scripts) or in Celestia's proprietary .cel language. A few such scripts are in the CVS archive.

Windows .bat scripts which tell the Windows command shell how to compile Celestia also are included in the CVS archive.

Several perl scripts which were used to construct some of Celestia's catalogs are also included in the CVS archive.
Selden

Avatar
Topic author
Hungry4info
Posts: 1133
Joined: 11.09.2005
With us: 19 years 4 months
Location: Indiana, United States

Post #11by Hungry4info » 13.01.2008, 23:05

selden wrote:Celestia's scripts (i.e. scripts which tell Celestia to do things) are written either in Lua (.celx scripts) or in Celestia's proprietary .cel language. A few such scripts are in the CVS archive.


This answers my question, thank-you. :)
Current Setup:
Windows 7 64 bit. Celestia 1.6.0.
AMD Athlon Processor, 1.6 Ghz, 3 Gb RAM
ATI Radeon HD 3200 Graphics

Avatar
LordFerret M
Posts: 737
Joined: 24.08.2006
Age: 68
With us: 18 years 5 months
Location: NJ USA

Re: On the subject of developing Celestia

Post #12by LordFerret » 14.01.2008, 06:27

t00fri wrote:
Vincent wrote:
t00fri wrote:Another good idea would be to ask Vincent. He has started pretty much near zero as to programming and meanwhile is a very active member of the dev team.
Ho ho, I used to build programs in 'Basic' on my Amstrad CPC 6128 when I was a kid ! :wink:
...

Wow ;-) . As the name says Basic is really not much of a programming language ... I think this is almost a fair statement.

Cheers,
F.

Wow, I'm surprised to hear you say that!

Don't discount Basic. It's still one of the best elementary programming languages to learn; The concepts it's capable of exemplifying can be applied to any other language - C included.

:D


Return to “Petit Bistro Entropy”