C gauges help

#1
Hi everybody, I need some help about C gauges, here's the thing:

I'm only 14 y/o, and I'm trying to learn C gauges, problem is, I can't understand somethings about it, I downloaded the sd2gau and I read it until Token Variables, around that part things started to get messy and I get frustated 'cause I want to build gauges and I don't know how. Ok, XML Gauges you're thinking, I have read some things about it, and like one post says here on this Forum, XML aren't very safe and so on. Now you're asking why do I want my gauges to me safe, answer is that me and some friends of mine are >>trying<< to build an a/c.

Can anyone help me trying to understand? Someone with much pacience... lol;)

P.S.:still about C language, I have some knowledge of VB.NET, and knowledge of internet languages, which won't help much, I think.
 
#3
It's not unwillingness (does that word exist?), it's time. Most gauge programmers are working hard to make their stuff compatible with FSX. Why don't you just start with the demo gauges from the SDK and ask us questions here when they come up?:)
 
#4
I'm still working on FS9 gauges...:cool:

And I don't know where to find FSX SDK (I still didn't looked too much :p ), I'm trying to build a Fokker-100 with some friends of mine, we'll release it for fs9 and afterwords to fsx, I'm trying to learn C programming so I can make something pretty nice on the inside, and outside too... ('cause I' building model and panel).

I think I'll start with model, since I have this doughts about C language, I don't want to give up, so I'll "forget it" for a while, maybe later on I can understand it better...
 
#7
Hi,

Learning to program C++ gauges is not easy.
First of all you need to know some basics of the C and C++ language (yes you can also use C++), not much but at least know about the basic syntax or you will get completely lost !

Next you can download Microsoft Visual C Express edition for free here:

http://msdn.microsoft.com/vstudio/express/visualc/

Then you can start looking at sample gauges like the ones included in the Dragonflight package. The clue is to focus on the basics and not get carried away by wanting to capture the keyboard and that kind of stuff.

In the first few pages of the dragonflight document it is very well explained how to start using MS VC++ for gauge building.

And from then on, it is a matter of stamina, trial and error and spending hours and hours looking why your gauge is:
- compiling fine but still crashing FS
- not compiling while you think they should
- acting exactly opposite as to what you told it to do
- etc... ;)

I don't want to discourage you but like I said, it is not simple.
I learned to program gauges from using EasyGauge, developer edition. It is a wysiwyg type of software that makes creating basic gauges easier, the people who wrote the program however have completely lost interest in it and are not giving any support anymore. Multiple request to release the program as freeware/open source have not been answered so I'm afraid this path is no longer available.

The most important thing to know when you start programming gauges is that almost nothing in FS can be used as/is.
Almost all the data that you get out of FS needs to be transformed in a different unit (e.g. from radials to degrees, from m/s to knots, ...). And if you want to make your panel/gauge better than the average Joe's work (na dthere is a lot of crap out there) then you will need to step away from FS and start doing your own calculations and creating your own autopilot routines etc... but that's another story...

Good luck ! ;)
Björn
 
#8
Hi,
Learning to program C++ gauges is not easy.
First of all you need to know some basics of the C and C++ language (yes you can also use C++), not much but at least know about the basic syntax or you will get completely lost !
Best of luck to you guys. But to clarify one thing: Learning C++ is easy. It is making your gauge talk to FS that is the hard part. But take it from me, you must have a solid knowledge of C++ before you can do gauges.

C++, and programming languages in general, are not that hard to learn. Just learn the language first before you try to develop something for FS. You have to learn things 1 step at a time. Linking with FS uses some very advanced C++ concepts that can confuse even experienced programmers.

Your first program will look something like this (please excuse the crudeness, I haven't worked with the stdio library in a long time):

Code:
int main()
{
cout<<"My first program"<<"\n";
return(NULL);
}
Anyways, joaogodinho, don't get discouraged. I learned my first programming language (VB3) at about your age and now I'm 26 and I know at least ten. If you are motivated enough then it is not that hard.

A knowledge of VB.net will help. It is syntactically very different from C-based languages, but the programming concepts will carry over. If you are familiar with datatypes, loops, subroutines, if/elses, etc., all you have to do is learn the syntax for them in C++.

As far as gauges, Trial and Error will be your best friend. It may take you a long time to understand how to communicate with the FSAPI, but once you understand how then it starts becoming much easier.
 
#9
Why giving the 'Hello World' sample in C++ output class theisomizer? Personally I think the easiest way to learn the language is starting with the most simple/oldfashioned Kernigan & Ritchie C book you can find. It gives you the basic but most important aspects of the language. Functions and what they are and how to use. The basic reserved words such as: for, if..then, etc.; the operators such as + or ++ or << (this one (binary shift left) is deliberately mentioned because in your sample it is an overlayed-function for 'append to stream', far beyond newbies world). Basic datatypes: ints and chars and such, as scalars and in arrays, but most important, the struct. And if you are lucky in the secondhand bookstore, it tells you even about such niceties as precooked code called libraries. Nothing difficult nor wrong with C(++), apart from the fact that nowadays about everybody feels obliged to make additions to the language. They come in the way(?). And I'm a bit fedup with container templates.
Sparks

main()

{ printf("Hello World\n");
}
 
Last edited:

n4gix

Resource contributor
#10
What is the point of replying to a 2+ year old post? The bread of this thread is long past stale, it's fossilized! :D
 
Top