• 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

    • Vivaldi 8.0.4033.46 by Razvan Serea Vivaldi is a cross-platform web browser built for – and with – the web. A browser based on the Blink engine (same in Chrome and Chromium) that is fast, but also a browser that is rich in functionality, highly flexible and puts the user first. A browser that is made for you. Vivaldi is produced with love by a founding team of browser pioneers, including former CEO Jon Stephenson von Tetzchner, who co-founded and led Opera Software. Vivaldi’s interface is very customizable. Vivaldi combines simplicity and fashion to create a basic, highly customizable interface that provides everything a internet user could need. The browser allows users to customize the appearance of UI elements such as background color, overall theme, address bar and tab positioning, and start pages. Vivaldi features the ability to "stack" and "tile" tabs, annotate web pages, add notes to bookmarks and much more. Vivaldi 8.0.4033.46 fixes: [Chromium] Update to 148.0.7778.263 ESR (includes security fixes from 149.0.7827.102/103) Download: Vivaldi 64-bit | 139.0 MB (Freeware) Download: Vivaldi 32-bit | ARM64 View: Vivaldi Home Page | Screenshot Get alerted to all of our Software updates on Twitter at @NeowinSoftware
    • I'm surprised they haven't found a way to fix that. As much as I don't like software wasting memory, a file manager is the kind of thing that makes sense to keep running in active memory for super-fast recall. I suspect that is why MS makes their File Explorer part of the main explorer.exe shell, so that it is guaranteed to always be running.
    • Seriously 1.8gig....so what. Any computer, if you are going to do serious work on, in 2026 should have a mimimum of 16gig and I would say 32-64gig is the way to go.
    • So again, you'd consider "I'm happy with my LG TV" to be a valid response to an article about PlayStation? I get the "I don't like any of their products" but how does that in any way invoke Linux? It just feels very random.
  • Recent Achievements

    • Week One Done
      FBSPL earned a badge
      Week One Done
    • One Year In
      Jim Dugan earned a badge
      One Year In
    • One Month Later
      Tommi118 earned a badge
      One Month Later
    • One Month Later
      sjbousquet earned a badge
      One Month Later
    • Week One Done
      sjbousquet earned a badge
      Week One Done
  • Popular Contributors

    1. 1
      +primortal
      485
    2. 2
      PsYcHoKiLLa
      198
    3. 3
      +Edouard
      155
    4. 4
      Steven P.
      83
    5. 5
      ATLien_0
      69
  • Tell a friend

    Love Neowin? Tell a friend!