Help Wanted

Need help with C++ and DirectX 9.0 and Open-GL – mellonamin

mellonamin

Member

Posts: 119
From: Maryville, TN, United States
Registered: 11-16-2004
Hello everyone! I am new here, this is my very first post. Anyway, to the good stuff. I have a goal for my life to become a computer programmer that makes Christian games. I asked Eric Slick, who is working on Project X, what I should do to get involved in this type of programming early in my life so I can be educated enough to do this as a career. He said I should learn C++ and DirectX and Open GL. I have no idea about any of these except C++ which I TRIED to learn a few months ago. It was so daunting though, that I stopped and tried to find an easier source to learn it from. If any of you have any suggestions, I would greatly appreciate it! Thanks and God Bless!
Nomad
Member

Posts: 63
From:
Registered: 06-29-2004
Hello, and welcome.

One resource I've gotten use out of for learning C++ is http://www.cplusplus.com/ - a series of tutorials that range from the basics of functions and all to more advanced stuff that the computer science classes I've had never got to. You can also download it to your computer so that you don't always have to log on to read it.

Definitely get that under your belt before moving on to http://www.ultimategameprogramming.com/ - a site with game-oriented tutorials on DirectX and all. I'm sure there are other good ones, but this is a decent start.

Another good way to go is to first try out a demo of Blitz, downloadable from http://www.blitzbasic.com/ - a programming language basically made with games in mind. You can very quickly put games together with this without any real prior knowledge of programming.

Anyway, I hope all that goes well for you; the people here are generally happy to help where possible.


[This message has been edited by Nomad (edited November 16, 2004).]

[This message has been edited by Nomad (edited November 16, 2004).]

CobraA1

Member

Posts: 926
From: MN
Registered: 02-19-2001
When you want to learn about OpenGL, head over to NeHe

http://nehe.gamedev.net/

But I suggest learning C++ first.

------------------
Reasoning with non-believers without encouraging them to read the Bible, I have found, is quite useless. God's word convinces - not our own reason.
--CobraA1

Switch Mayhem now available! Get it here
Codename: Roler - Writing object code and GUI.

GUMP

Member

Posts: 1335
From: Melbourne, FL USA
Registered: 11-09-2002
Do you really want to be a programmer or do you just want to be involved in the emerging Christian game industry? If it's the latter there are plenty of other technical fields and specialties involved in the game making process other than graphics programmers (which is what I am with Two Guys Software).

- Animators
- 3D modelers
- Script Writers (as in scripted events; not the script for the plot)
- Management (Finance, Marketing, Sells, Website, etc)
- Technical and Game Design Leads (a different, more fun type of management)
- Programming (Renderer, Sound, Networking, Engine Architecture, Scripting, Physics, Device Input, etc)
- AI Programming/Scripting (I list it separately because it's pretty much its own field
- Story Plot Writers (unfortunately the caliber of these hasn't been that great so far...)
- Level Designers (mappers)
- Sound/Recording Artists
- 2D Texture Artists
- Shader Artists (generate Shader code for various surfaces using art tools and possibly the help of a graphics programmer)
- Playtesters
- Musicians

HanClinto

Administrator

Posts: 1828
From: Indiana
Registered: 10-11-2004
Another one of the posters recommended BlitzBasic. I've heard very good things about that, though I haven't used it personally.

Here's something that not a lot of people know about:
http://lab.msdn.microsoft.com/express/default.aspx

It's Visual Studio Express -- they're beta products from Microsoft that are currently free and aimed at hobbyists and students who want to learn how to use these applications. If you can't afford a full copy of Visual Studio, this is a great place to start on the Windows platform.


Another great tool is SharpDevelop.
http://www.icsharpcode.net/OpenSource/SD/

It's a free, open source IDE for C#.NET and VB.NET. It's still in development, but I can almost always compile sample games and sample DirectX applications in SharpDevelop that I can in Visual Studio.


As far as how to actually learn graphics programming, a great game engine that has very good tutorials and samples is TrueVision 3D
http://www.truevision3d.com/
I *highly* recommend downloading this.

DirectX and OpenGL are great, but they're very "guts". If you want to get an overview of how games work and how to put one together, it's often best to start with a pre-made game engine like TrueVision3D or something like that.

Take note that I have tried the TrueVision3D tutorials in SharpDevelop and they compile and run just fine. It's a great way to get started in 3d programming with $0 invested.

In Christ,
clint

P.S. If you have any more questions, feel free to see if I'm online with AIM or ICQ. My AOL Instant Messenger screen name is HanClinto, and my ICQ# is 11462056. Ciao!

------------------
http://www.includingjudas.com/christiangame.html

Klumsy

Administrator

Posts: 1061
From: Port Angeles, WA, USA
Registered: 10-25-2001
for learning game development (and to program it), i suggest a bottom up and top down way concurrently, this WAY you don't get discouraged over the difficulty and steep learning curve of the programming.

so from the bottom up, you learn how to program in C, C++ , mostly in isolated cases (not to do with graphics /games), to get all the concepts.. then you learn the basics of graphics programming and theory, as well as mess with little games.. eventually learning d3d or GL etc.

and on the other hand at the sametime.. you download something like 3d game studio - http://www.conitec.net/a4info.htm , and learn how to use it, first from point and click in the editor games, to editing maps/levels etc, and doing all the high level game design stuff, doing some tutorials etc, then experiment with its scripting language.
and then your skillsets meet in the middle and you are a well rounded programmer, and game developer.

------------------
Karl /GODCENTRIC
Visionary Media
the creative submitted to the divine.
Husband of my amazing wife Aleshia
Klumsy@xtra.co.nz

mellonamin

Member

Posts: 119
From: Maryville, TN, United States
Registered: 11-16-2004
Thanks so much for your info guys! And yes, I really do want to be a programmer. I love learning any kind of new language and using it whether it's computer languages or spoken languages. Anyway, thanks again!!

May God Bless you all!

mellonamin

Briant

Member

Posts: 742
From: Stony Plain, Alberta, Canada
Registered: 01-20-2001
There's some excellent advice and links given so far, but I just wanted to repeat that C/C++ knowledge must take priority. OpenGL and especially DirectX will be completely overwhelming until you have a working knowledge of C/C++.

Another great resource for learning these things is right here! We have a great range of people with experience willing to answer questions, provide examples, etc. Just ask!

Brian

------------------
Brian

d000hg
Member

Posts: 144
From: Durham, UK
Registered: 07-27-2004
Yeah, even windows programming I'd leave out until you can do pure C++. Whether to learn C first is one question, but I think I wouldn't.
mellonamin

Member

Posts: 119
From: Maryville, TN, United States
Registered: 11-16-2004
Grr...I downloaded the Dev-C++ compiler by Bloodshed Software. When I try to compile source files, an error comes up that says it is unable to run the program file....I've tried to fix it by moving the file it was saved in, etc. but I still don't know what to do...can anyone help??
Nomad
Member

Posts: 63
From:
Registered: 06-29-2004
Which version are you using? If you got the newest, it could just be a bug that hasn't been found yet.

What is it you're trying to compile? If it's just a console program, just make sure you have all the right includes for the functions you use. If you use a lot of dll libraries, make sure that the paths are all correct; this can be a problem with moving files around.

mellonamin

Member

Posts: 119
From: Maryville, TN, United States
Registered: 11-16-2004
It is just a simple "Hello world" program in the tutorial I downloaded.....

------------------
Vita sine amore est mors.

HanClinto

Administrator

Posts: 1828
From: Indiana
Registered: 10-11-2004
Interesting. I remember I installed Dev C++ last year and got a simple console application to run just fine. Your program runs along the lines of:
quote:

#include <stdio.h>

void main(void)
{
printf("Hello World!");
}


Right? That's odd that it would give you an error off of a fresh install.

--clint

------------------
http://www.includingjudas.com/christiangame.html

mellonamin

Member

Posts: 119
From: Maryville, TN, United States
Registered: 11-16-2004
the program is this:

#include <iostream.h>
int main()
{
cout << "Hello World!";
return 0;
}

------------------
Vita sine amore est mors.

Briant

Member

Posts: 742
From: Stony Plain, Alberta, Canada
Registered: 01-20-2001
<iostream.h> should be <iostream> (<iostream.h> is "the old way")

What exactly is the error message you are getting?

------------------
Brian

Nomad
Member

Posts: 63
From:
Registered: 06-29-2004
One oddity of Dev-C++ is that you need arguments in the main() function, something like:

int main(int argc, char** argv);

It's either that, or the other way around. It's weird that their default didn't have that, though.

mellonamin

Member

Posts: 119
From: Maryville, TN, United States
Registered: 11-16-2004
I go to File/New/Source File and type that in and then I press compile and at the very bottom it says there is an error in line 2 and then to the right under "message" it says "unable to open program file"

------------------
Vita sine amore est mors.

[This message has been edited by mellonamin (edited November 19, 2004).]

Conan

Member

Posts: 69
From: the world
Registered: 06-27-2004
You forgot to put:

using namespace std

before the main() function, or at least, i think that's the prob...

Briant

Member

Posts: 742
From: Stony Plain, Alberta, Canada
Registered: 01-20-2001
mellonamin, I'm not sure how Dev-C++ works, but with the Microsoft compilers you first have to create a project that your source file is a part of - i.e. you can't just create a stand-alone .cpp file and compile it to an .exe without first adding it to a project. Perhaps something similar is going on with Dev-C++. Perhaps someone familiar with Bloodshed can provide more insight.

------------------
Brian

bennythebear

Member

Posts: 1225
From: kentucky,usa
Registered: 12-13-2003
what exactly do script writers use? i've messed with modding dugeon siege, and that involves messing with all the scripts. like changing the attack modifier of certain "enchantment" type things. like instead of a "long sword", you'll have a "long sword of the warrior". and the "of the worrior" will add like 120 minimum damage and 120 maximum damage. i like scripting a lot more than i do programming, it seems to be simpler, at least the languages, and it makes more sense to me. so any info on the languages and tools script writers use would be nice, i might not get heavily into it, but i do want to check it out.

------------------
proverbs 17:28
Even a fool, when he holdeth his peace, is counted wise: and he that shutteth his lips is esteemed a man of understanding.

www.gfa.org - Gospel for Asia

www.persecution.com - Voice of the Martyrs

[This message has been edited by bennythebear (edited November 19, 2004).]

bennythebear

Member

Posts: 1225
From: kentucky,usa
Registered: 12-13-2003
actually that would be an interesting mod to make. make a mod for a popular game that turns it into a Christian game, or even a "Christian friendly" game. of course you couldn't sell what you made, but i would have fun trying something like that with dungeon siege 2.

------------------
proverbs 17:28
Even a fool, when he holdeth his peace, is counted wise: and he that shutteth his lips is esteemed a man of understanding.

www.gfa.org - Gospel for Asia

www.persecution.com - Voice of the Martyrs

ArchAngel

Member

Posts: 3450
From: SV, CA, USA
Registered: 01-29-2002
I was thinking about that. (I also have the editor for DS).
but I prefer to make a stand-alone game. a personal thing of mine.

P.S. Dungeon Siege 2 looks tight!

------------------
Soterion Studios

bennythebear

Member

Posts: 1225
From: kentucky,usa
Registered: 12-13-2003
yep ...i wonder if the old skritpad and all that will work on the new game? hopefully someone will put out some new tools if they won't work with the new one. i'm more intersted in modding the game than i am playing it...mainly because i spent way too much time playing the last one, way way too much time.

------------------
proverbs 17:28
Even a fool, when he holdeth his peace, is counted wise: and he that shutteth his lips is esteemed a man of understanding.

www.gfa.org - Gospel for Asia

www.persecution.com - Voice of the Martyrs

mellonamin

Member

Posts: 119
From: Maryville, TN, United States
Registered: 11-16-2004
Just so you know, I figured out what the problem was...I just downloaded the Dev-C++ IDE and not all the bin files...I downloaded those yesterday and now it works fine except that my C++ tutorial is out of date so it still has all the ".h" and "main()" errors...ON TO A NEW TUTORIAL!!

------------------
Vita sine amore est mors.

HanClinto

Administrator

Posts: 1828
From: Indiana
Registered: 10-11-2004
Great!

Glad to hear you got it up and running. If you have any programming questions, again, please feel free to post them here or ask me over instant messenger.

--clint

------------------
http://www.includingjudas.com/christiangame.html

mellonamin

Member

Posts: 119
From: Maryville, TN, United States
Registered: 11-16-2004
Hey everyone...I am doing excellent in learning C++...I have already made an opening screen for a MUD that when the player creates a new character, it will verify that that is the name they want to use and ask for the desired password and verify it. Now I just need to figure out how to know if some other person already has that character name....I thought about using a dictionary, but I don't know if C++ has dictionaries so..... any help???

------------------
Vita sine amore est mors.

graynod

Member

Posts: 17
From: richmond, VA, USA
Registered: 09-28-2004
hi,
Here's an example using the string class that should be pretty easy to use in your code. You'll need some way to get the character name from the list of characters so you can compare them if you haven't already done that. You can also write your own string & comparison code if you like, it's not too hard, use character pointers and be careful about resources. I used Dev-C++ for this, and used "File-->New-->Source File" in version 4.9.9.0. Keep learning, let us know how it goes, and may God continue to bless us all.
graynod

//////////////////////////////////////////////////////////////////////
#include <iostream>
#include <string>

using namespace std;

int main() {
char stopper('_');
string s1, s2;
s1 = "graynod";
s2 = "graynod";

if (s1 == s2) {
cout << s1 << " == " << s2 << endl;
}
else {
cout << s1 << " != " << s2 << endl;
}
s2 = "mellonamin";
if (s1 == s2) {
cout << s1 << " == " << s2 << endl;
}
else {
cout << s1 << " != " << s2 << endl;
}
while (('y' != stopper) && ('Y' != stopper)) {
cout << "ready to quit? y/n:" << endl;
cin >> stopper;
}
return 0;
}
//////////////////////////////////////////////////////////////////////

------------------
graynod -> "my head was feeling scared but my heart was feeling free" -- the Pixies

[This message has been edited by graynod (edited November 24, 2004).]

mellonamin

Member

Posts: 119
From: Maryville, TN, United States
Registered: 11-16-2004
I figured out how to implement a name/password system in my program...I am making a MUD based on The Circle Trilogy by Ted Dekker(Black, Red, and White are the names of the books). Now I just need to figure out how to make the action part of the game and how to allow multiple players to be in the world at once...ANY information on making a MUD would be GREATLY appreciated! Thanks again!

------------------
Vita sine amore est mors.

Briant

Member

Posts: 742
From: Stony Plain, Alberta, Canada
Registered: 01-20-2001
Articles on multiplayer, networking and mud developement:

http://www.gamedev.net/reference/list.asp?categoryid=30

------------------
Brian

mellonamin

Member

Posts: 119
From: Maryville, TN, United States
Registered: 11-16-2004
Thanks BrianT, those were helpful, but I still have no idea how to allow players to interact with the MUD, make object, or properly use functions...anyone that can help??

------------------
Vita sine amore est mors.

HanClinto

Administrator

Posts: 1828
From: Indiana
Registered: 10-11-2004
Make an object? You mean in code? Or in the game, like when you log in and want to create an object? Or are you talking about creating an instance of an object in code, such as:

myType* myInstance;
myInstance = new myType();

Something like that?

Sorry I didn't reply sooner, but your question was kindof vague.

--clint

------------------
http://www.includingjudas.com/christiangame.html

mellonamin

Member

Posts: 119
From: Maryville, TN, United States
Registered: 11-16-2004
yeah, sorry about that. I mean creating objects in the code that the user can interact with. Such as a longsword or something that has the member variables like attack power and member functions like slash(), hack(), etc., but I don't know how to make those kind of things and make them do something when you type that in. I also need to know how to change a "character" object variable so it will stay what I change it to after I exit the game. For example, I have a variable that tells where the player is at in the tutorial and when the character reaches a certain stage in teh tutorial, it changes, but I don't know how to keep the variable as the new value...Any help out there??

------------------
Vita sine amore est mors.