Jump to content
  • Advertisement
Sign in to follow this  

3D game dev. What do I need?

This topic is 2381 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

In the "Slightly amibitious I know" thread by Preemo,
josh1billion said (when mentioning that the first step is to figure out exactly WHAT KIND of games you want to make):
"- downloadable 3D games: learn C++ and a 3D engine like Irrlicht or Ogre, or learn Java and look into 3D graphics"

What are the tools that I need to develop 3D games? I am in the process of learning C++ right now in school.
-What are the steps to developing a 3D game.
-What are the programs used in these steps?

How do you get to an actual 3D environment where you can move around?
What are all of these programs I see people moving around in their partially complete game?

I get the modelling programs, and I get the programming compiler environments, but what are these programs
that let developers get into their environment and travel around it in real time?

I just really would like to know what I need to start getting familiar with. I'm tired of sitting on the sideline and watching
all of my ideas stagnate. I'm also working toward a comp science degree in a community college right now.

Any help would be greatly appreciated.

Share this post


Link to post
Share on other sites
Advertisement
Hi gh05t,

First off welcome to 3D game development :)

I think what you're after is a game engine. A game engine nowadays is a powerful program where your super-awesome 3D models and code and other assets come together. Modern game engines have real-time 3D views of your game world. This is where you can construct your levels, play-test your game but also set up your cameras, lighting, AI, particle FX emitters, and all that fun stuff.

Code/Models/Audio = assets (stuff ready to be put into your game engine)
Engine = where the magic happens (the game editor)


Great FREE 3D game engines:
  • Unity (this engine is *awesome face*, brilliant community support and makes stuff for Mac, PC, browsers and mobiles)
  • UDK (with love, this engine is outstanding)
  • CryEngine3 ('nuff sed)
  • ShiVa3D (haven't managed to make a game in it but it seems similar to Unity)

    Hope that helps you. If you get stuck there's always 2D! Trololololol....

    All the best with your games!

Share this post


Link to post
Share on other sites
I'll take it you have no experience with programming at all right? I'd suggest you start with 2D like we all did after we got too ambitious. Make pong then space invaders then arkanoid then a platformer etc. They don't need to be all perfect just so you understand whats going on and learn the process and get familiar with your program, using libraries or even create your own.

Then if you still like it, consider starting 3D, now you will have some experience with vectors and 2D math so 3D won't be that much overwhelming. Still 3D is pretty hard, the math is difficult, you have to add light and create decent shaders, animate the models, etc. All this is much easier with 2D so you can focus on how games are actually working.

Share this post


Link to post
Share on other sites
Thanks very much for the replies. I have no aversion to 2D, but a few of my greater ideas will have to come together in 3D.
I am big on fundamentals and would like have a good foundation and understanding underneath of me.
Start from the bottom and go as high as I can, you know.

I really appreciate the suggestions, the explanation about the engine, and the direction/path structure to follow.
That is what I needed: some advice, direction, and explanation about some tools.

-----(SKIP TO NEXT POST if you don't want to read an unnecessary wall of text)-----

I honestly would be better suited in a "creative director/writer/supervisor" position, because I have some pretty solid
game ideas, and I am always hashing them out and polishing them (the stories, characters, campaign/multiplayer concepts, etc)...
But yeah, nobody can ever just BE that. You have to earn that position.
Besides, if I ever was to get there, I want to know the processes behind all of the positions.

There is one thing I have always trusted in myself and believed in myself. That thing is my vision and creative ability.
I just have never had the ability to bring them to life... and I want to start having that ability. I can through writing,
but so little people can delve into that like you can with a videogame. You literally ARE the story. That is the greatest
thing I have ever seen in my life. When you are trying to get people excited for something, they have to be able to see it,
or touch it. Telling somebody about it just isn't good enough... Apparently out there, there are a lot more people I used to think
that have such small imaginations. I can tell them about something and I would get little response..
But then when I show them the same things, but with sketches, photoshops, etc etc, they have muuuuuch greater interest towards it.
It's kind of frustrating actually.

I have often thought about writing, but writing for the sake of creating a book is a little bit on the uninteresting side for me.
I love the visual power and immersion that video games can command. I love player vs player, and multiplayer balancing and
skill and class creation. I love creating a really detailed story with characters that are solid. I even like the challenge of writing with
class balance and videogame challenges in mind, like writing for a person who can do anything in the game, so you have to
write everything in to account for that.

I am learning C++ right now in school, and I like the logic behind it.
I can draw decently well, when I put my mind to it. And will some development I could be decent at concept art.
But I just don't have the patience for it, and my skill has sort of receded in years of disuse.

I have a basic level of most of the skills that it takes to be in any one of the sections of game development - art, writing, programming, etc.
But I have to pick one, and start getting truly good at it.
Art? No, I'd rather just use my semi-decent drawing skills to come up with a sketch and have some really wickedly good artist draw something
up for me based on detailed descriptions, etc etc.
Writing? I wouldn't want writing to be my life's main skill. I have a stutter and I dont want to have to fall back on being an english teacher, or journalist, or something...
Programming? That seems the best for me. I like the logic behind it, I like computers, and I love games. One problem with that is that I never kept up
with my math in high school. When I'm learning something without knowing the applications for it, I have no willpower for it, and nobody ever
showed me applications for it.. They just threw equations at me and said HERE, dont fail.
I'm in like, well... I never got through "Algebra B."
I have the intelligence for it, I just have to go back and do it now that I have started programming and I found that I like it.

ANYWAYS, that's my shpiel.

I want to make games because I have way too much creative energy flowing out of me and videogames ( I feel) can really catch ALL of that creativity...
Greater than writing books, making movies, or anything else ever could.

The things that have inspired and awestruck me the most are games like Halo, and Warcraft, Diablo, Starcraft, *MASS EFFECT*, etc.
Those games are living breathing worlds, and players can delve into the world and play with or against one another. They are
detailed, well-written worlds that inspire people and force them to notice that there is something really cool going on there.
I want a piece of that, because inside of my brain I HAVE THOSE types of detailed amazing stories and ideas of that caliber
that I wished I could get out.

K, sorry, THAT'S my shpiel. But yeah, that's why I want to make games. If I can learn one skill to set me on that path, I would be happy.

I'm 23. Late bloomer. I'm a boy-man. Probably always will be. My stutter has held me back a lot in life, so I'm finally trying to get it back.
That's me. I'll probably be posting more in here now that I'm getting into this. So I appreciate everything.

Share this post


Link to post
Share on other sites
What type of software should I use to start learning how to develop some 2D games?

What math is involved in making 3D games?

Share this post


Link to post
Share on other sites
All the skills you listed there are very handy to start programming. You will get better in math allong the way, i was a decent math student but like you never did that extra to get more out of it.

I know 3D is awesome and all but you should really stick to 2D for a while or you will be in way over your head, you won't see much results and you will quit programming. Learning to program takes a lot of time luckily there are handy tools out there that saves a lot of headachs when you start out. I like to add XNA, a C# API from microsoft to the list of Jay Rie. I sugest you download that and get started. Since you do have some programming experience it should not be to hard to dig right into a tutorial for drawing and moving stuff around. And 2D is loads of fun, believe me.

You have quite an ambition with the titles you called out. The people there (at least the once that may speak :D) are exceptionally talanted and have decades of experience. True, you can get anywhere with enough willpower and dedication but like i said, set smaller goals, even tiny little once, this will help you a lot more and make sure you see the progress you actually make. If you do want t o look into the future you should aim on the indie market. If you work hard enough to actually make a game (might take only a year) you can turn all your creativity in a indie game. There are plenty of people that struck gold in that market.

You not a late bloomer, i am i'm 31 years old, started just a couple of years ago with things that had to do with game development but just for about a year with programming. I rocked my programming classes back in the day, straight A with the pascal and basic lessons but sincerely regret i didn't work on it any more after school.

3D math are pretty much Vector3's and matrices, tan,sin,cos etc. There are plenty of tools to help you out with it though. Some can even do all of it for you like UDK. With XNA you don't really have to understand the insides of a matrix (although it's handy now and then). A couple of tutorial can help you on your way in 3D after you learned the basics.

Some links to get you on your way, all free and pro stuff.
Microsoft visual studio, you will need the C# version to work with XNA.
XNA 4.0, install this after you installed MS visual studio 2010 express and your ready to go.
And for a little kickstart do this tutorial

Share this post


Link to post
Share on other sites
Yeah, I hear you. And also, I know what you're saying. I was just dropping names so people might be able to understand where I'm coming from and what inspired me.
But I totally understand about the whole starting small, and I am on page with that 100%. It would be too deep for me to just fall into that stuff. Like I said: fundamentals.
I'm all about that, lol.

Yeah, the people at Blizzard, Bunjie, and Bioware and all of that.... They are all there because they are crazyyy talented and have been in the field for a while. I in
NO way expect to jump into that right away. I'm pretty realistic, that's why I'm here. I usually join forums in anything I get interested in or want to follow. It's the best
way to learn about it, to find resources and people, and also it can be a much needed reality check.
I value the input of people who have started something before me, because I can learn from it. So I'm always all ears. (Or eyes, in this case.)

Creating an indie game development company has been on my mind actually. My brother is taking computer science classes with me towards the degree.
We both have loved games ever since we first played Mario when we were super little. We are both taking programming right now. From what I understand about programming is that creativity separates programmers, from good programmers. IE: Being able to code creative solutions to problems while keeping things as low memory usage as you possibly can. And I have other friends
and acquaintances with other valuable skills and resources as well. I think I might call them together one day and see if they might want to start something.
I just am not quite fond of working under somebody else might not let my visions fully come into fruition. And I really would like to work on my own games, you know.

Thanks very much for the resources and information.
The effort is definitely not going to waste. My brain is a sponge for information pertaining to endeavors that are important to me.

What programs exactly should I start some 2D projects on?
I'm guessing VB and XNA? What about Flash?

edit: just some info. I have one space-epic style game I'm writing and hashing out in my spare time as a hobby (being careful to avoid cliches, pitfalls, nonsenses, etc). I hope one day to make it, or at least sell it to somebody. But that is really my only really big-budget blockbuster type of game. If that never goes through, I will write it as a book. Then most of my other ideas are either like smallish downloadable games created by a small team, in the vein of Amnesia: The Dark Descent, or Orcs Must Die!, or Minecraft, or anything like that. And then I have a bunch of fun/cool ideas for some 2D games. I just need knowledge to start.
Lol, actually my biggest dream is to create a franchise universe.... Like Star Wars, Halo, Star Trek, Mass Effect, Lord of the Rings, Warcraft, etc etc. I'm not ever working toward that consciously, because it seems to be that there is quite a bit of luck and timing involved with the creation of franchise universes. But I will do whatever is down my path, and if that one day ever turns into that, then I will die happy. Those are my biggest inspirations lol...

Share this post


Link to post
Share on other sites
Where to start is up to you, i started (and still stuck in :D) C# XNA, some started in Python (you know they created Eve online with that), some in c++ (those companies you named use this most, but it's a hard and harsh language), some in java(some swear by it some stay far away from it), some use SDL or UDK other dig into DirectX and OpenGL. Well you get it, the list is endless.

I like the pad i choose up to now, i have seen some amazing results. So download the programs i gave the links for and do that tutorial. You will have a moving sprite in a hour or maybe 2.

Learning a single language will let you step into other with ease. You will understand basic programming principles like loops, polymorphism, etc. The syntax and the way error handling and debugging is different, thats why i think starting out in a language like c# is the best thing to do. I asked this question too, did some C++, some Java and then decided to pick C# with the XNA api.

Share this post


Link to post
Share on other sites
EVE was made with Python? That's awesome...
Yeah right now me and my brother are learning C++. I think we're going to continue learning about it for a while, so I might as well use it.
But I would like to learn a few more, especially since it would make me more flexible.
I actually started learning C++ with no prior programming or computer science knowledge, so it's sort of trial-by-fire right now for me.
I only found out afterwards that I should of learned a diff language first... But right now I have 105% in my C++ class biggrin.gif, so I'm glad about that.

I will download those, thx ^_^.

I really like this website and forums so far.

Share this post


Link to post
Share on other sites
Well it was one of the main tools they used.

Python quotes

C++ is a very hard and harsh language, most here will tell you not to start in it. Understanding a language like C# which is far more forgivable will help you to get into C++ later on. It sure is the shortest route to take if you want to work at a well known game company but it's very likely that it's not the fastest route.

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.

Participate in the game development conversation and more when you create an account on GameDev.net!

Sign me up!