Orbiter-Forum  

Go Back   Orbiter-Forum > Orbiter Space Flight Simulator > General Questions & Help
Register Blogs Orbinauts List Social Groups FAQ Projects Mark Forums Read

General Questions & Help General & Advanced Orbiter flight questions, Orbiter installation questions, to all other help topics here.

Reply
 
Thread Tools
Old 08-08-2018, 04:46 AM   #1
Orbi
Orbinaut
Question Help on starting programming in orbiter

I want to program my own MFDs and other things and I have basic knowledge of C like upto 2D arrays and pointers. So how should I proceed to work on my own MFDs and do I have to read some physics book or have a
concept on space science along with it. Please explain this to me as I am really eager to work on this.
Sorry for such a long question and thank you for all your help.
Orbi is offline   Reply With Quote
Old 08-08-2018, 02:25 PM   #2
kuddel
Donator
Default

  1. You've already made the most important step: curiosity!
  2. It might be helpful if you extend your language knowledge a little from C to C++ (mostly get familiar with concepts like class / object). The more nifty bits (polymorphism, abstract classes, etc.) are not needed for a general approach, but will help to understand some things later on.
  3. Physics is only needed if the MFD has to display / act with something Physics would describe. If you -for example- create a "Black & White Flash"-MFD(tm) , you would possibly not need much Physics background.
  4. I would recommend to take a look at the simplest MFD example source code you can find... and then try to understand (not copy!!!) what's going on there.
kuddel is offline   Reply With Quote
Thanked by:
Old 08-09-2018, 12:49 AM   #3
ADSWNJ
Scientist
 
ADSWNJ's Avatar
Default

+1 for kuddel's reply. Good for you Orbi - there's nothing like getting your first MFD to work, even if it's just a simple Hello World (i.e. a classic starting program in any language).

My suggestions would be:

1. Figure out how to install and use Visual Studio Community Edition (free!), to make simple C programs to run a command line app.

2. Learn the basics of C++. You will need this to work with the Orbiter API. Nothing to be scared of here: if you can do basic C, then simple C++ is a small step. (Now: doing C++ intuitively and properly takes a long time and a lot of work, but once you get there, you will see that C++ is the king of languages).

3. Understand what a DLL is, and how it differs from a .EXE. DLL is the type of file you need to create to dynamically link into Orbiter, so your MFD appears on the configuration screen, and your MFD comes to life.

4. Read about the Orbiter programming model (i.e. read the API guide, read through the API reference, have a look at the types of objects and how things plug together).

5. Come back here and ask a ton of questions. Don't just take shortcuts to put code together and ask people to debug it for you. Instead, come here with questions about how Orbiter calls your code, how the init module hooks into Orbiter, how the pre step and post steps differ, how you persist your MFD when your user presses F8 (as this destroys your instance), and then tons more things as you work up the learning tree.

But yeah - a single button on your MFD "HLO" and a nice centrally aligned H e l l o W o r l d !!! and you will feel top of the world!
ADSWNJ is offline   Reply With Quote
Thanked by:
Old 08-09-2018, 07:04 AM   #4
Orbi
Orbinaut
Default

I really am grateful for your replies sirs. Thank you. I will try to do my best.
Orbi is offline   Reply With Quote
Old 08-09-2018, 06:38 PM   #5
Urwumpe
Certain Super User
 
Urwumpe's Avatar

Default

And there are also example projects for MFDs that you can use for learning how others did it.

And of course, there is the forum with lots of questions and problems that others experienced. Like always in life: The smart learns from his mistakes, the wise learns from the mistakes of others.
Urwumpe is online now   Reply With Quote
Reply

  Orbiter-Forum > Orbiter Space Flight Simulator > General Questions & Help


Thread Tools

Posting Rules
BB code is On
Smilies are On
[IMG] code is On
HTML code is Off
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts
Forum Jump


All times are GMT. The time now is 06:58 PM.

Quick Links Need Help?


About Us | Rules & Guidelines | TOS Policy | Privacy Policy

Orbiter-Forum is hosted at Orbithangar.com
Powered by vBulletin® Version 3.8.6
Copyright ©2000 - 2018, Jelsoft Enterprises Ltd.
Copyright 2007 - 2017, Orbiter-Forum.com. All rights reserved.