Jump to content
  • Advertisement
Sign in to follow this  
The Ice Master

Alright Im new.

This topic is 4837 days old which is more than the 365 day threshold we allow for new replies. Please post a new topic.

If you intended to correct an error in the post then please contact us.

Recommended Posts

When I was 11, I finally was allowed to view web sites by my parents, other than what they had allowed. (Yes, I had to wait a very long time. - I didn't know what I was missing.) When I was 13, I taught myself as much HTML as I could, and tried to learn javascript and CSS. I learned some basic CSS, but nothing fancy. Well I swore that I would be a web designer as my profession in life. Now I am 15, and the whole game programming thing sounds much more interesting. I have two books for dummies right here next to me. One is for javascript, and the other one is for C. I can't get either to work. The javascript one does not work because there are things missing on the CD that the book makes refrence to, and the C one doesn't work because I am too stupid to figure it out. I don't have a compiler. I don't have much money. I really want to learn: BASIC, C , C++, and so much more. I can't seem to learn anything else no matter how much I try, and it is really fustrating. I was wondering if anyone would like to help a programming noob get started. I don't even know what I should TRY to learn first! Any help would be appreciated! Some time, in the near future, I would like to know what stuff like this means.
int surfaceNormalsIndex = 0;
for(int y = -1; y <= mapLength - 1; y++)
{
	
	float height1, height2, height3;
	for(int x = -1; x <= mapWidth - 1; x++)
	{
		if(x == -1 || x == mapWidth - 1 || y == -1 || y == mapLength -1)
		{
			surfaceNormals[surfaceNormalsIndex++] = new float[]{0.0f, 1.0f, 0.0f};
			surfaceNormals[surfaceNormalsIndex++] = new float[]{0.0f, 1.0f, 0.0f};
		}
		else
		{
			height1 = heightBuffer[(y*mapWidth)+x];
			height2 = heightBuffer[((y+1)*mapWidth)+x];
			height3 = heightBuffer[(y*mapWidth)+x+1];
			
			float[] vec1 = {0.0f, height2 - height1, 1.0f};
			float[] vec2 = {1.0f, height3 - height1, 0.0f};

			surfaceNormals[surfaceNormalsIndex++] = GameUtil.crossProduct(vec1, vec2);
			
			height1 = height3;
			height3 = heightBuffer[((y+1)*mapWidth)+x+1];
			
			vec1[1] = height2 - height1;
			vec2[1] = height3 - height1;
			
			surfaceNormals[surfaceNormalsIndex++] = GameUtil.crossProduct(vec1, vec2);
		}
	}
}

Share this post


Link to post
Share on other sites
Advertisement
Get a free compiler.
Write a hello world program.
Compile.
Run.
...
Profit!!!

I personally use mingw as a compiler, MSVC++2005EEBeta2 is good as well if you download the Platform SDK.

You can use notepad to edit source files, but you'll quickly want to move onto a better IDE. Personally I use BorlandCBuilderX. Many People have good luck with. Bloodshed, DevC++, MSVC++2005EEBeta2.

Check out the forum FAQ.

Share this post


Link to post
Share on other sites
If your internet connection can handle it, M$ is offering a beta(?) version of Visual C 2005 for free. Since .NET I've actually grown a little attached to their IDE.

If you have the time / determination for *nix or making Windows compatible with *nix compilers (Cygwin and such), those are always good.

Share this post


Link to post
Share on other sites
I don't understand what you two are saying. What do you mean if my internet connection can handle it? I am that much of a noob!

I get some of it, like what a compiler is, but all those compilers you listed, I don't know the difference between them. And I don't know about making anything compatible with Microsoft. I don't think I want a beta... I don't know enough yet to have use of whatever the beta test program has to offer. I just want something to start out with.

***EDIT***

I think I like graphics design more than anything right now. I think!

Share this post


Link to post
Share on other sites
Quote:
Original post by The Ice Master
... and the C one doesn't work because I am too stupid to figure it out.


That is almost certainly not the case. When I was a wee lad, I tried once or twice to pick up C/C++ but gave it up. Why? I'm not sure; it just seemed to complex and different from QBasic to me, I guess. But a few years later I returned to it, sat down and read tutorials and learned it, and it's my language of choice today. No one is too stupid to figure out C or C++; all it takes is a bit of work -- I don't even say hard work, because all you have to do is start copying out tutorials and reading descriptions.

I would recommend that you chose another language than C or javascript to learn for game programming, however. javascript is, indeed, a scripting language, which gives you control over the elements in web pages and a very small amount of access to other parts of your computer. C is much more powerful, as well as time-tested, but I would recommend C++ over C to you as it is more modern and (IMHO) more beginner friendly. (Ask someone with a bit of experience about C++ std::string versus C-style strings...). So if you can shell out a small amount of cash for a good C++ teaching book (the Beginner's Forum FAQ lists some good choices), I'd highly recommend it. It may even be that your C book is outdated and/or badly written, contributing to your problems. If you can't spare any extra cash, there are a wealth of tutorials online to be found. (Google is, as ever, your friend here.)

Other people will recommend other languages to you; popular picks are Python, Java, and C#.

Whatever you choose, there is almost certainly a free compiler available. C/C++ users can choose from among Microsoft's free VS2005 betas, Microsoft's VC Toolkit 2003, GNU's GCC, and others (and there are free IDEs for GCC and the Toolkit 2003 such as Dev-C++, Code::Blocks, and MinGW Developer Studio). Java users can download the JDK and Netbeans development environment straight from Sun, or get the all-powerful Eclipse platform.

Your choices are many. Don't let me confuse you. Pick a language (it really doesn't matter which; even C is fine), and apply yourself to it.

Good luck,
Twilight Dragon

EDIT (in response to yours): Understanding things like that won't necessarily come in the near future; becoming a pro programmer is a long journey to make. The particular piece of code you chose is a math-heavy portion of a 3d renderer, a complex subject that it takes a long time and a lot of learning to understand. The syntax is universal, and once you know it you can probably make a good guess at what is happening, but programming games requires knowledge of many things other than the syntax of your programming language -- for 3d games, physics, trigonometry/geometry, algebra, and even calculus come into play. But you don't have to start there -- most people (including myself) started with basic games that just display text, and move up gradually from there.

[Edited by - TDragon on August 18, 2005 5:06:13 PM]

Share this post


Link to post
Share on other sites
Dev-C++ is a good compiler for Dev-C++, it's user friendly. [smile]

By when you say BASIC, do you mean the ORIGINAL BASIC? Or do you mean Visual Basic?

Share this post


Link to post
Share on other sites
I would reccomend getting a copy of C++ Primer Plus. Read a chapter, re read the chapter or do whatever it takes till you understand what you are reading. Do the exercises at the end of each chapter and try to understand exactly how they work. Tinker around with C++, it's not gonna bite you. Write some small useless things to test yourself. Do things like... print your name then hit enter and print it out backwards, you know, crap like that.

Go get yourself Dev C++. It's free so no risk. After a while if you decide you like what you are doing and want to continue you can go get MS VC++.NET (my personal favorite).

Just do it, that's all there is. You're not gonna lose anything by trying to learn something, and you can do it. It's not rocket science.

Share this post


Link to post
Share on other sites
Sign in to follow this  

  • Advertisement
×

Important Information

By using GameDev.net, you agree to our community Guidelines, Terms of Use, and Privacy Policy.

We are the game development community.

Whether you are an indie, hobbyist, AAA developer, or just trying to learn, GameDev.net is the place for you to learn, share, and connect with the games industry. Learn more About Us or sign up!

Sign me up!