• 0

How to be a game programmer and developer?


Question

Hello :) .I am new in this forum and i am really interested in programming.I really want to learn to program with Cuda, C++ you know. I want to make my own game engines and 3D games with stunning grafiks. I saw really interesting things in the Nvidia developer zone like Nvidia PhysX SDK, OpenGL, OpenCL, DirectX and many other stuff. I want to learn how to program with them and for what and how can i use it? What i must learn first? From what i must start? What book's i must read of i am new to software and game programming? I am really confused. Thank's :D .

Recommended Posts

  • 0
Ok now where to go? What to learn or what to code. For learning i think to finish C++ and STL and start win32 and DirectX. For coding i have no idea. Some suggestions?
So I take it you're learning C++? Well just keep making more complex programs with it. Learn the libraries/technologies you need to build the programs you want. If games is your thing, you can stay with something simple like SFML for quite some time. What graphics library did you use to make your Tic-Tac-Toe? It's probably good enough to do way better than a Tic-Tac-Toe, so just keep using it. There are plenty of games you can make for fun: Tetris, Space Invaders, Breakout, etc.
  • 0

My Tic-Tac-Toe is a console application xD.I will upgrade it with the windows api. Then with DirectX :) .Ok by learning how to use these libraries and augorithms eveything is ok, but how DirectX was created. I don't think it's just C++. Am i right? Because it must comunicate with the GPU for graphics instructions. So it must use assembly language? So everything cool like these libraries is created using assembly language?

PS:I am making a Chess with the code of my Tic-Tac-Toe for a base ;) .

  • 0

I recommend you stay away from Win32 and DirectX. They are very difficult to use and require a high level of expertise in C/C++. You don't need to interact directly with these, except maybe if you're one of the few engine coders for the next Crysis (which you aren't). Instead, you should use higher-level libraries such as SFML. Oh and did I mention you should check out SFML? I thought I did. But just in case I forgot: use a simple, high-level multimedia library like SFML and forget about the low-level APIs, while you're just getting started programming.

To answer your question, DirectX is probably coded in C++, C and ASM.

  • 0

I know alot more than the simple stuff. Don't you read that i created a Tic-Tac-Toe.

You said it was 2 players, try to implement a computer AI so you can also have a one player mode (maybe even with different AI difficulties) .... that should be fun

  • 0

Thank you for the answers. I will check this librarie. And i have thinked for adding AI for the Tic-tac-Toe, but it's a little too complicated. When i am a little more comfortable with C++ i will add AI :) . And i will check the SFML librarie.

  • 0

My first serious program was a Tic-Tac-Toe and the computer's AI was one huge function with several if statements. The idea was basically:

if (/* we can play a particularly good move*/)
{
     // play that move
}
else
{
    // play a random move
}

The "easy" AI had the following rules:

if (/*there exists a move that immediatly the game */)
{
    // play there
}
else
{
    // play a random move
}

The "medium" AI was WAY more sophisticated:

if (/*there exists a move that immediatly the game */)
{
    // play there
}
else if (/* there exists a move that the other player could do to immediatly win the game */)
{
    // play there
}
else
{
    // play a random move
}

With just these two simple rules it played quite believably. Well, in a 1st-grader kinda way, but still.

Then the hard AI had the following rules as additional "else if"s:

else if the center is free, play there

else if one of the corners is free, play there

And that made it almost unbeatable. But it was beatable.

Today I'd implement it with a mini-max search of course. :p

  • 0

Yes and my first serious program is Tic-tac-Toe :) , but i have another program that is written in BASIC.NET and uses the Dot Net Bar librarie. It has more than 3000 lines of code, but it isn't complicated at all. Tic-Tac-Toe without help writing it was a real problem solving challenge for me and i can say that it's my first serious program. And thank you for telling me how to make the AI. I've read before time how the logic works and i had the same idea for making the AI, but i don't knowed how to make different difficulties. And i've read for the minimax augorithm. It's really interesting. Ok Then i will implent an AI. I will post when i am ready.

  • 0

I have 15 years+ experience behind me...

OK, more - I was making Tic Tac Toe games when I was about 12 and would never have even previously counted that time but for the sake of this thread it's 15+ years fully commercial and lets call it 21 years since I made such games.

As such, let me share a bit of knowledge:

1) Stop assuming you know what you need to know. You don't. I don't. Nobody does. There are so many unknowns in the world that you will always learn.

2) Don't make claims that something "works perfectly" based upon your own testing. I 100% guarantee you - it doesn't.

3) Books mean ****! Experience means so much more.

4) You can't program anything even remotely like AI with simple IF statements and certainly not in about 5 hours!

  • 0

1st: I don't think i know everything at all. I haven't saied something like this in this topic.

2nd: It works perfectly. I know perfectly what i am doing and how i have coded it and tested it. PS: And it's still in developing.

3th: Books can help you really, but won't help you really much for problem solving. Problem solving is the biggest part in programming.

4th: AI is aritificial inteligence. I think you know this perfectly, because you are a 15+ programmer. If you don't know, this is a type of AI. So it is AI. It isn't complicated like path finding or in Crysis 2 they use a special system that tells the enemy where is the best position to shoot Alcaraz. Do you think this is nessecerly for a Tic-Tac-Toe!?

PS: I am 13 years old.

  • 0
4) You can't program anything even remotely like AI with simple IF statements and certainly not in about 5 hours!
Well... yes, depending on how simple that AI is. As I just illustrated, you can make a very potent Tic-Tac-Toe AI with a few if statements. It doesn't answer unmodified Jeopardy questions in real-time but you still have to try pretty hard to beat it. :p
  • 0

One distinct feature of AI is it's learning ability. NOT done with IF statements!

If you have programmed something with a whole shedload of IF statements in 5 hours, then you have written some convoluted logic but not an AI algorithm.

1st: I don't think i know everything at all. I haven't saied something like this in this topic.

Sigh... I said don't think you know what you need to know. There are 3 areas of knowledge:

* What you know

* What you know that you don't know

* What you don't know that you don't know

You seem to be ignoring the 3rd!

2nd: It works perfectly. I know perfectly what i am doing and how i have coded it and tested it. PS: And it's still in developing.

If it works "perfectly well" then it doesn't need further development. And it's very very arrogant and foolhardy for any developer to claim anything works perfectly well. I have faith in my code but am open to the idea that it can be improved.

3th: Books can help you really, but won't help you really much for problem solving. Problem solving is the biggest part in programming.

And that comes from experience.

4th: AI is aritificial inteligence. I think you know this perfectly, because you are a 15+ programmer. If you don't know, this is a type of AI. So it is AI. It isn't complicated like path finding or in Crysis 2 they use a special system that tells the enemy where is the best position to shoot Alcaraz. Do you think this is nessecerly for a Tic-Tac-Toe!?

I know what AI is thank you very much. I started AI programming and learning the theory when I was 17. Drop your obsession with Crysis for a minute... AI is NOT simple decision making, AI is not path finding or such - those things are logic. AI is defined (as I was taught) by the ability to learn from trial.

  • 0

I know what AI is thank you very much. I started AI programming and learning the theory when I was 17. Drop your obsession with Crysis for a minute... AI is NOT simple decision making, AI is not path finding or such - those things are logic. AI is defined (as I was taught) by the ability to learn from trial.

Remember the context of this discussion and how AI is commonly used in the gaming industry.

  • 0
I know what AI is thank you very much. I started AI programming and learning the theory when I was 17. Drop your obsession with Crysis for a minute... AI is NOT simple decision making, AI is not path finding or such - those things are logic. AI is defined (as I was taught) by the ability to learn from trial.
A lot of what is commonly referred to as AI, including most video game AI (chess engines, fps bots, rts computers, monster behaviors in RPGs, etc.), has little or no ability to learn. You probably know more about the subject than me, but you should acknowledge that these static algorithms are still widely referred to as AI.

This is an interesting discussion though. If one follows this definition from Wikipedia:

AI textbooks define the field as "the study and design of intelligent agents"[2] where an intelligent agent is a system that perceives its environment and takes actions that maximize its chances of success.[3]

then most video game AI can rightfully be called so.

  • 0
You probably know more about the subject than me, but you should acknowledge that these static algorithms are still widely referred to as AI.

I probably don't. I got quite lost as that course went on. I understood the theory but was terrible at implementing it. And yes, AI in games often means things that aren't true AI.

This topic is now closed to further replies.
  • Recently Browsing   0 members

    • No registered users viewing this page.
  • Posts

    • If you are willing to go to approx $200, then as mentioned in your other thread I think a refurbished Pixel 8 will be a great deal that will last you for years. I recently recommended that to someone at work, he was on a strict £200 budget, which got him an excellent conditioned refurbished Pixel 8 here. He's since told me its the best phone he's ever had and feels its a massive upgrade over his old Samsung A series device. I don't know the sites which deal in refurbished devices in the US, however I’m sure you will have some options like we do here. Failing that Ebay is also quite good in my experience. If you wanted something a bit cheaper, then you could maybe go for an older Pixel 7, these will still get security updates until the end of 2027. Even after that you have good third party OS support from LineageOS. It doesn't have to be a Pixel though, you can buy many older devices for a good deal that would be better than a new $100 phone and flash LineageOS to them: https://wiki.lineageos.org/devices/
    • I don't use one drive, but then I don't use any cloud storage, not even Icloud on my mac. If I did use cloud storage, then I would not use One drive, not because there is anything wrong with it, but because I can use Icloud. The only reason I see to use one drive is if your job requires you to have access to it
    • Not built in, which is not a bad thing. There are ways of adding cloud storage to it, Dropbox is the most well know that also have a client for Linux, but there are others.
    • My advice, dont use teams, use the web version if possible. https://teams.microsoft.com/v2/
  • Recent Achievements

    • Collaborator
      WndSks went up a rank
      Collaborator
    • One Month Later
      Sopa flores earned a badge
      One Month Later
    • First Post
      StaticMatrix earned a badge
      First Post
    • Week One Done
      StaticMatrix earned a badge
      Week One Done
    • Rookie
      lamborghiniv10 went up a rank
      Rookie
  • Popular Contributors

    1. 1
      +primortal
      506
    2. 2
      PsYcHoKiLLa
      209
    3. 3
      +Edouard
      152
    4. 4
      Steven P.
      89
    5. 5
      ATLien_0
      79
  • Tell a friend

    Love Neowin? Tell a friend!