Page 1 of 2

Where to start ... (C++) ?

Posted: Wed Oct 12, 2011 1:57 pm
by L3V147H4N
Hi ppl,,, im new here, just activated my account, im really interested in game dev,,, A LOT.. and im looking for some guidance

like 6 month ago i started learning Blender (check it out: www.blender.org) i still need a lot of practice, but its really intuitive and easy to learn, (plus is free and Open) :D

I also a little Java, (more for desktop programming than game dev) and a bit of Python for scripting into Blender.

anyways, i just started with C++, coz u know, industry standard .... plus I really like it :D. and i have a few books on C++, bunch of tutorials (www.thenewboston.com), and whole lots of other books for reference.

My actual question is: what do you recommend???? ... have you found some few books oriented to game dev that you can point me, tutorials, anything.

I know C++ is more complicated than Java, Python, or else,,, but i have a solid understanding of Algorithms, OOP and Pseudo-Code.

Right now im trying UDK, nice, powerful engine, and im trying to work around importing my projects from Blender to UDK,,, ( i still refuse to learn 3DMax, :P awful learning curve, heavy, expensive, bla bla)

and im planning to dive in this Summer ( im from Argentina, its summer :D ) completely in C++ and Blender, maybe OpenGl and try to make some simple projects. Pong or Chess maybe.

So if you have advice,,, any advice that would help me face the right direction, ill thank you...

Anyways,, see ya ...

Re: Where to start ... (C++) ?

Posted: Wed Oct 12, 2011 2:06 pm
by ibly31
To whoever can control these types of things - can we make a new subforum about where to start, or beginner help stuff? There's been a LOT of posts that are all very similar about where to start, and I feel like rather than having all the newbies hear "USE THE SEARCH!" or "WHY DID YOU MAKE A NEW THREAD?", they should just have a place to post this type of thing.

It's just kind of frustrating when you help a newbie and then a month later someone asks the same question.

But - on to your question. Although it is REALLY complicated and isn't actually the thing I learned first - I would just dive into OpenGL. It truly gives you a good sense of how everything works, and will help you figure out what each 3D engine actually does if you understand the basics. For example, I tried out just about every 3D engine (irrlicht, unity, ogre, etc) and I never understood a single one... until I created a really simple rendering engine. Now I am so much more knowledgeable about how an engine works down under the surface, and this definitely is reflected in my speed/quality of production.

Re: Where to start ... (C++) ?

Posted: Wed Oct 12, 2011 2:26 pm
by Ginto8
I just have 2 things to say: C++ is difficult, and OpenGL is moreso. If you're willing to do it, by all means do it, but not everyone is up to it; usually, people start just by making non-graphical programs, then start graphics with a simpler library like SDL or SFML before moving onto the somewhat monstrous library that is OpenGL. I don't mean to scare you off from doing awesome things, but if you choose to do so, be prepared for failure; I don't think many people succeed on their first experience with OpenGL, much less without prior graphics programming experience.

Whatever you do, good luck! ;)

Re: Where to start ... (C++) ?

Posted: Wed Oct 12, 2011 4:34 pm
by SPR_Phantom
I'm by no means qualified to talk on the subject, but I've made simple things in DirectX and bits and bobs in pure C++ standard lib.
AntiRTFM(yt channel)
Great guy to learn from watching all of his videos ( or the new boston's like you talked about ) should give you a good starting point!

A few things I suggest you learn: (not necessarily right now, just before you move on to things like openGL and DirectX (and even SDL))
Pointers
2dArrays
dynamic memory
2d dynamic arrays
classes
template classes(I'm learning these atm, very useful for making clean 2d dynamic arrays)
matrix maths ( not C++, simply a field of mathematics)
vector maths (again, not C++)

by no means a completed list or post, but oh well, take it or leave it! :P

Re: Where to start ... (C++) ?

Posted: Wed Oct 12, 2011 4:51 pm
by treyrust
Again, shouldn't this be in programming discussion?

I'm by no means a master at C++, but I would say you just need to do it. Don't put it off like I did for a year, don't bead around the bush asking questions about when where and how (well, ask how that's what these forums are for but) just do it. I don't mean to sound harsh here, I just wanted to point out this aspect because I didn't just do it and it took me a year of procrastination to get into it. Mostly from intimidation, but I wouldn't let that stop you... Everything will make perfect since soon enough.

I certainly wouldn't say dive into openGL first for one reason, openGL *just* a graphics library, you still need to use something like SDL or if you're really masochistic, win32 (not to scare you away from learning win32) to handle input, something like that or openAL for sound. You can't just create a window in openGL, you can only do graphics which is why most people recommend SDL first, because that's multi-platform, really fast (when used with openGL) and can handle everything... You learn a bit with it, then you move to openGL.

As far as books go, I'd recommend Accelerated C++ since you already have a programming background. It's the book I read because I'm also extremely impatient and it's a great one! But if you have a book you like then by all means, read it. I'm just pointing out the particular book I prefer. But in the end, they are all just books, don't let which book you have sway you from learning (I did).

As far as game programming specific books go, I'm gonna be that guy and say you should just figure the game design aspects out yourself. You're the programmer, it's up to YOU to implement. There's no right or wrong (well, maybe wrong) way to do it, just whatever works best for you. I think if you should focus on honing your style, this is why they say make small games, because you can't start out amazing at your program flow, you make a few small games (pong, space invaders etc) and it'll be clear as day how you like to implement stuff.

Re: Where to start ... (C++) ?

Posted: Wed Oct 12, 2011 6:14 pm
by Aleios
As people have stated above, grab a good book (really any set of books!), stick your head in it for a few hours, grab an IDE, Visual C++ express or otherwise. Write the standard set of crap, you know, Hello, World! for example. And don't forget to analyze what the hell you wrote when doing:

Code: Select all

#include <iostream>
using namespace std;

int main(int argc, char* argv[])
{
cout << "Hello, World!" << endl;
return 0;
}
There are a crap tonne of resources out there on this vast space named the "Internet", a quick google search of "C++" will bring you such resources as http://www.cplusplus.com

C++ whilst seen as a complex is really simple (sort of), the API's make it seem hard. C++ is just a few keywords and symbols. Sure, pointers to a newcomer are a bitch, but you learn, as long as you have a brain, you can learn shit.... hopefully...

Re: Where to start ... (C++) ?

Posted: Wed Oct 12, 2011 7:21 pm
by L3V147H4N
Helloooooo, I just got back and its really amazing how many of you answered so quickly,,, i wasnt really expecting replies so fast (was ready to w8 a few days)... but its really cool.

Im sorry if i annoyed you ibly31, i just didnt figured to post this somewhere else,,, but you are right,, there should be a subforum for noobs... :D

Thank you for all the answers,, ill look into that book (acelerated C++ and check out the AntiRTFM channel)

Treyrust,,, i really got what u said,,, i also delay things so much sometimes, and its frustrating... that's why im starting tonight with some basics C++ (already know control flow, array and stuff) but is good to refresh my memory.

Whenever i get a good grasp on things im gonna post some proyects out there so i can get criticized :D
I was mainly thinking in prototyping in BGE (Blender Game Engine) and few other things with UDK, coz its looks somewhat easy to do silly things.
And then... maybe in ....4 ... 5 ...6 months... maybe... try to build a small game engine (keeping simple stupid) because like Ibly31 said, its also important for me to understand what's under the hood.... and it may open my head for some other things that right now seem out of reach.

Also,,, another thing (different topic)... although im sure you guys went through all of this... i was reading yesterday about OpenGl, and found out that win 7 and Xp dont really have Support for OpenGl and that it runs on the CPU (or something like that),,,, which i find extremely inneficient... i just got a 6870 and was hoping to exploit its capabilities :p ... anyway i dont know if this is entirely true, as i said i red it yesterday,,, and was wondering if you also stumble upon this. I've already looked in AMD.com the catalyst for OpenGl 4.0 but ...surprisingly i got FILE NOT FOUND............ REALLY ANNOYING....
So Please, if know this to be true,, plz tell me if you have found any solutions... :3

Thank You again for all the support... i really appreciate the quick replies :D

( .... What is the proper subforum about 3D graphics suite???? i'd like post something about 3DMax and Blender, etc ) :D

Bye All,, take care

Re: Where to start ... (C++) ?

Posted: Wed Oct 12, 2011 10:56 pm
by dandymcgee
ibly31 wrote:To whoever can control these types of things - can we make a new subforum about where to start, or beginner help stuff? There's been a LOT of posts that are all very similar about where to start, and I feel like rather than having all the newbies hear "USE THE SEARCH!" or "WHY DID YOU MAKE A NEW THREAD?", they should just have a place to post this type of thing.
I feel like that would just cause people to disregard anything in that section and let the posts go unanswered. I think new users should know better than to post without searching, but nonetheless I think each topic opens up more personalized discussions. If you don't want to answer the question again.. simply don't. Or post a link to your answer the first time. Nobody forces, or even expects, you to post.

Re: Where to start ... (C++) ?

Posted: Thu Oct 13, 2011 4:46 pm
by szdarkhack
C++ is a tricky language to learn. Not because it's hard, because it's perhaps TOO powerful for new programmers. It gives you a lot of opportunities to screw up somewhere. If i were you, i would get a couple of good books, the best of which (in my opinion) would be The C++ Programming Language by Bjarne Stroustrup (the creator of the language). That would give you the "technical" knowledge of using the language. A very good online source is http://www.parashift.com/c++-faq-lite/, although it deals with mostly advanced issues that i guess can wait until you have a solid understanding and a bit of experience.

So, how do you go about learning to develop games? That's quite the undertaking, if you want to do it properly that is, but it's really rewarding in the end. So, as a start, get a nice IDE, something like Visual C++ Express (Windows), that doesn't require too much hassle to get it to work. Then get your book on the side, create a nice and simple console project and start coding away. Anything new that you learn, code it, just to see it at work and to get a feel for it. Find code that other people have written, see what is good to use and what isn't , what is fast and what is slow, what is large and what is small.

After you are done playing with the standard libraries and creating console applications, you can look for some graphics libraries, such as SDL/SFML (SDL is pure C, SFML is C++) and start playing with graphics, making little 2D games like pong or something. There, you will start to figure out how to best structure your code in a game, as well as what things are good to use and what things are not. After you're feeling confident there too, you're ready for the Big Boys' Toys: OpenGL/DirectX. Or are you? Take a little break from programming and go dig up that old Linear Algebra book. You see, in simple 2D you can get away without math, but not here.

Once you've brushed up your skills a bit, get back on your computer, get an Opengl or DirectX book on your side, and start coding. At first, it will seem hell just to get a colored triangle on the screen, but after a while you will be able to port your 2D projects easily, and give them a nice boost in performance as well. When you're ready to move to 3D, it's time to study how the big guys do things. There are many 3D engines out there, quite a few allow you to look at least at their interface, and some are even open source. Dive in and see what these guys do. You will have to understand a whole bunch of new stuff that is necessary for your game to run faster than 10 fps. PVS, Portal rendering, Forward vs Deferred rendering etc.

At this point, nothing is set in stone. New techniques are always invented, new hardware is always coming out, offering more and more power each time, allowing for more and more techniques to work. At this point, it's a race. You need to catch up with the changes, or you'll find that your games are already surpassed even before they are ready. At this point, you either make something to put you on the map, or something that no one cares for. At this point, it's all or nothing.

It's a long, long road...


OK, now that my weird late-night inspiration is over with, i apologize for this post being completely ridiculous, and i'll save you the trouble of reading it by summing it up here:
-Write console programs to get familiar with the language and standard libraries.
-Move to some basic graphics using some simple library like SDL and/or SFML.
-Take the leap to the hard stuff, OpenGL and/or DirectX. Start with simple 2D stuff, move on to 3D.

So, there. That's it. Time consuming, but not that hard.

Re: Where to start ... (C++) ?

Posted: Fri Oct 14, 2011 1:42 am
by Obscurity
L3V147H4N wrote:Hi ppl,,, im new here, just activated my account, im really interested in game dev,,, A LOT.. and im looking for some guidance
Welcome to the forums, L3V147H4N. :)

If you're interested in developing games, I suggest you learn to program, as that's all a game is (a program)!

I would highly suggest you NOT ever look at AntiRTFM's YouTube channel! He has shown some of the WORST programming practices out there!!
If you are wanting to learn programming on your computer, I advise you read this tutorial: http://www.cplusplus.com/doc/tutorial/

Personally, the best method of learning programming on your own is reading books. There are PLENTY of beginner books on programming.
The language(s) you learn are not important. Programming concepts will apply to ALL languages. You will carry over techniques from one to another.
There are some languages that have unique paradigms, and those (like SmallTalk) are still influential even today (Java!).

Good luck! :)

Re: Where to start ... (C++) ?

Posted: Sat Oct 15, 2011 12:49 pm
by L3V147H4N
Hello Again.. :3 ... thx szdarkhack for your insight, its indeed my plan to go step by step on this, specially to get a good grasp a actually understand the code i will be doing. As far as math goes, im not that worried, I'm currently studying Systems Engineering in University and i'm going through Mathematical Analysis, Algebra, Discrete Mathematics, Physics and Lots of Algorithm related Subjects.
Also im require to learn, PASCAL, JAVA, SmallTalk ( puke! ) Prolog, Probabbly VB and perhaps some DB. i think also next year i have a Class in C.
But yes, i understand it is a big trip in a harsh road :P. I once downloaded a "HOw to Make a Game Engine" Book, and it was entirely Math Analysis in 3D and stuff.
So im starting small as i should be. But i really appreciate ur comments.

Obscurity, if you dont mind me asking,, why is it that you think AntiRTFM is bad. (I just want to get a concise opinion ).

Also ... What do you think guys is the best to work,, or the best to start, or why and else :P between OpenGL and DirectX. I've been researching and obviously D3D is Microsoft standard, because they prefer that we all stay inside their house, never to leave or see the outside (which in my opinion is not entirely right), but there is no point to argue with an uber-mega-corp. :P FYI: I dont have any conflict to code with either OpenGl or DirectX. My Wish is to develop Games, and if D3D is the way to go, by all Means Lets Go!

Anywaym thx again for all your support, ty for the concise replies, and im looking forward to hear from you again...

Bye !.. take care :3

Re: Where to start ... (C++) ?

Posted: Sat Oct 15, 2011 1:14 pm
by Light-Dark
SDL,Allegro, if you know C++ well enough then start learing if you go SDL check out lazyfoos tutorials.

Re: Where to start ... (C++) ?

Posted: Sat Oct 15, 2011 1:19 pm
by L3V147H4N
Yelloww... My Uni has a very interesting agreement with publishers and all sort of companies (like Autodesk and else) ... and i was able to compile a list of books that are available to me for Free. If you have red any of this and you would like to recommend me one... :D ill be pleased. Here is the List:

Thx again:

3D Computer Graphics - A Mathematical Introduction with OpenGL.pdf
3D Game Engine Architecture.pdf
3D Game Engine Design .pdf
3D Game Engine Programming .pdf
3D Game Programming All In One.pdf
3D Geometry Tuts.rar
3D Math Primer for Graphics and Game Development Souce Code.rar
3D Math Primer for Graphics and Game Development.pdf
3ds Max 2009 Beyond the Basics.rar
3DS Max 2009 Bible.pdf
3DS Max 2009 Essential Training.rar
3ds Max 6 Bible.pdf
A First Course in Linear Algebra.pdf
A Theory Of Fun In Game Design.pdf
Adobe Creative Suite 2 Classroom In A Book.chm
Adobe GoLive CS2 Classroom in a Book.chm
Adobe Illustrator CS2 Classroom in a Book.chm
Adobe InDesign CS2 Classroom in a Book.chm
Adobe Photoshop CS2 Classroom in a Book.chm
Advanced 3D Game Programming All in One.pdf
Advanced 3D Game Programming with DirectX 9.0.pdf
Advanced Animation with DirectX.pdf
Advanced Graphics Programming Techniques Using Opengl.pdf
Advanced Graphics Programming Using OpenGL.pdf
Advanced WinSock Multiplayer Game Programming Multicasting.pdf
AI for Game Developers - David M. Bourg, Glenn Seeman.pdf
AI for Game Developers Examples.rar
AI For Game Developers.pdf
AI Game Development - Synthetic Creatures with Learning and Reactive Behaviors.chm
AI Game Development.chm
AI Game Engine Programming.pdf
AI Game Wisdom.pdf
Algorithms And Networking For Computer Games.pdf
Animating Real-Time Game Characters.pdf
Artificial Intelligence for Games Source Code.rar
Artificial Intelligence for Games.pdf
Beginning 3D Game Programming.chm
Beginning C# Game Programming Source Code.rar
Beginning C# Game Programming.pdf
Beginning C++ Game Programming.pdf
Beginning C++ Game Programming.chm
Beginning Direct3D Game Programming, Second Edition.pdf
Beginning DirectX 9.pdf
Beginning Game Art In 3DS Max 8.pdf
Beginning Game Audio Programming.chm
Beginning Game Level Design.pdf
Beginning Game Programming.pdf
Beginning Math and Physics for Game Programmers .chm
Beginning Math and Physics for Game Programmers.chm
Beginning OpenGL Game Programming Source Code.rar
Beginning OpenGL Game Programming.pdf
C++ Module I.pdf
C++ Module II.pdf
Character Development and Storytelling for Games.pdf
Chris Crawford on Game Design.chm
Collision Detection in Interactive 3D Environments.pdf
Computer Gaming World - Mar 2006.pdf
Computer Organization And Design The Hardware Software Interface.pdf
Core Techniques And Algorithms in Game Programming.chm
Core Techniques and Algorithms in Game Programming.pdf
Creating Games In C++ - A Step By Step Guide.chm
Creating Professional Animation with 3ds Max, Lightwave, and Maya.pdf
CryENGINE 2 Features.pdf
Cutting Edge Direct3D Programming.chm
Data Structures for Game Programmers.pdf
Deconstructing the Elements with 3ds Max 2nd Ed.pdf
Digital Animation Bible.pdf
Digital Character Design & Painting The Photoshop CS Edition.chm
Digital Lighting and Rendering.pdf
DirectX 3D Graphics Programming Bible.pdf
DirectX 8.1 Programming for C PlusPlus.chm
DirectX 8.1 Programming for C++.chm
DirectX 9 Graphics - The Definitive Guide to Direct3D.pdf
Directx 9 User Interfaces - Design and Implementation.pdf
DotNET Game Programming with DirectX 9.0.pdf
Easy Guide to Photoshop CS2 Image Editing.pdf
Essential Mathematics for Games and Interactive Applications 2nd Edition.pdf
Essential Mathematics for Games and Interactive Applications.pdf
Evolution of GPUs.pdf
Example Design Documents.rar
Facial Modeling and Animation Done Right.pdf
Focus On 3D Models.pdf
Focus on Mod Programming In Quake III Arena.pdf
Focus On Photon Mapping.chm
Focus on SDL.pdf
Fundamentals of Audio and Video Programming for Games.chm
Game Architecture and Design.pdf
Game Character Design Complete.pdf
Game Coding Complete 2nd ed.chm
Game Coding Complete.chm
Game Design Foundations.chm
Game Design Theory and Practice.chm
Game Developer - Game Career Guide Fall 2005.pdf
Game Developer - Game Career Guide Fall 2008.pdf
Game Development and Production.pdf
Game Engine Toolset Development.pdf
Game Physics Engine Development Source Code.rar
Game Physics Engine Development.pdf
Game Physics.pdf
Game Programming All in One.pdf
Game Programming Gems 1.pdf
Game Programming Gems 2.pdf
Game Programming Gems 3.pdf
Game Programming Gems 4.pdf
Game Programming Gems 6.pdf
Game Programming Golden Rules.pdf
Game Programming Tricks of the Trade.pdf
Game Programming with DirectX 9.0.pdf
Game Programming with Python, Lua, and Ruby.chm
Game Scripting Mastery.pdf
GameProgrammingGems5-CDROM.rar
GameProgrammingGems6-CDROM.rar
GeForce 8800 GPU Architecture Technical Brief .pdf
GPU Gems 1.djvu
GPU Gems 2.djvu
GPU Gems 3.chm
GPU Programming Guide.pdf
Graphics Gems 1.pdf
Graphics Gems 2.pdf
Graphics Gems 3.pdf
Graphics Gems 4.pdf
Graphics Gems 5.pdf
Graphics Gems Series Source Code.rar
Graphics Programming Black Book.pdf
Graphics Programming with DirectX 9 Module I.pdf
Graphics Programming with DirectX 9 Module II.pdf
Hacking Photoshop CS2.pdf
Half Life 2 Mods For Dummies.pdf
Hardcore AI for Computer Games and Animation.pdf
How GPUs Work.pdf
Inside Direct3D.chm
Introducing 3ds Max 2008.pdf
Introducing 3ds Max 9.pdf
Introduction to 3D Game Programming with DirectX 9.0 Source Code.rar
Introduction to 3D Game Programming with DirectX 9.0c Shader Approach Source Code.rar
Introduction to 3D Game Programming with DirectX 9.0c Shader Approach.chm
Introduction to 3D Game Programming with DirectX 9.pdf
Introduction to Game Programming with C++.chm
Isometric Game Programming With DirectX 7.pdf
Learn Vertex and Pixel Shader Programming With DirectX 9.pdf
Level of Detail for 3D Graphics.pdf
Level of Detail for 3D Graphics.pdf
Linear Algebra Demystified.pdf
Linux 3D Graphics Programming.pdf
Linux Games Programming.pdf
Lumenex Engine Technical Brief.pdf
Managed DirectX 9 Kick Start - Graphics and Game Programming.chm
Math Course Description.pdf
Mathematical Physics - A Modern Introduction To It's Foundations.pdf
Mathematics for 3D Game Programming and Computer Graphics, Second Edition.pdf
Mathematics for Computer Graphics.pdf
Mathematics for Game Developers.pdf
Memory Management - Algorithms And Implementation In C-C++.pdf
Microsoft DirectX 10 Technical Brief.pdf
Model Rig Animate With 3ds Max 7.chm
Modeling a Character in 3DS Max, 2nd Edition.pdf
MUD Game Programming.chm
Multiplayer Game Programming.pdf
Networking and Online Games - Understanding and Engineering Multiplayer Internet Games.pdf
OpenGL Game Development.pdf
OpenGL Programming Guide.pdf
OpenGL Red Book and Blue Book.rar
OpenGL Reference Manual.pdf
OpenGL Shading Language 2nd Edition.chm
OpenGL Shading Language.chm
OpenGL Super Bible.pdf
OpenGL SuperBible 4th Edition.pdf
OpenGL.Shading.Language.2nd.Edition.(Orange.Book).2006.pdf
Physically-Based Rendering - From Theory To Implementation.pdf
Physics Course Description.pdf
Physics for Game Developers.pdf
Polygon Collision Tutorials.rar
Postmortems From Game Developers.pdf
Probability for Dummies.pdf
Probability Theory - The Logic of Science.pdf
Programming AI by Example Source Code.rar
Programming Game AI by Example.pdf
Programming Multiplayer Games.pdf
Programming Role Playing Games with DirectX, 2nd Edition.pdf
Programming Role-Playing Games With DirectX 8.pdf
Quake 4 Mods For Dummies.pdf
Real Time Shader Programming.chm
Real-Time Collision Detection.pdf
Real-time Rendering 2nd ed.djvu
Real-Time Rendering Tricks and Techniques in DirectX.pdf
Real-Time Shader Programming.chm
Shaders for Game Programming and Artists.pdf
ShaderX1 - Vertex and Pixel Shader Tips and Tricks.pdf
ShaderX2 - Introductions and Tutorials with DirectX9.pdf
Shaderx2 - Shader Programming Tips & Tricks With Directx 9.pdf
ShaderX3 - Advanced Rendering with DirectX and OpenGL.pdf
Software Engineering - for Game Developers.pdf
Software Engineering and Computer Games.chm
Source Engine Infosheet.pdf
Special Effects Game Programming With DirectX Source Code.rar
Special Effects Game Programming with DirectX.pdf
Strategy Game Programming With Directx 9.0.chm
Teach Yourself Game Programming in 24 Hours.chm
The Elements of Euclid.pdf
The Game Animator's Guide To Maya.pdf
The Official Guide to Learning Opengl Programming.pdf
The Official Guide to Learning OpenGL, Version 2.1.pdf
The Official Guide to Learning OpenGL.pdf
Tricks of the 3D Game Programming Gurus - Advanced 3D Graphics and Rasterization.pdf
Tricks of the Windows Game Programming Gurus - Fundamentals of 2D and 3D Game Programming.pdf
Tricks of the Windows Game Programming Gurus, Second Edition.chm
Ultimate Game Design Building Game Worlds.pdf
Using Opengl In Visual C++.pdf
Vector Game Math Processors Source Code.rar
Vector Game Math Processors.pdf
Visualizing Quaternions.pdf
Zen of Graphics Programming - Michael Abrash.rar

Re: Where to start ... (C++) ?

Posted: Sun Oct 16, 2011 6:22 am
by szdarkhack
My personal recommendation would be to start with OpenGL, just because it's a pure C interface, thus allowing you to structure your engine any way you like around it. Direct3D also "suffers" from hard initialization, while in OpenGL you can simply use SDL to prepare the context. This way, you get to focus on the important stuff faster.

And wow, that's a LONG list of books. The ones that i am familiar with are the "Gems" series and the "ShaderX" series. They focus at cutting edge (at the time) techniques though, so you should postpone reading them until you have a firm understanding of the programmable graphics pipeline. Of course you will need the red book if you go with OpenGL, just make sure you get an up to date version describing OpenGL 3 or above. You may want the orange book too (GLSL reference). Finally i would suggest the OpenGL superbible, just make sure to get the 5th edition, it focuses on the programmable pipeline exclusively (no fixed function). Unfortunately i haven't found a book this good for Direct3D, just some introductory stuff. But the basic ideas are the same, so you can "transfer" techniques you have learned to any of the 2 APIs. That should get you started nicely.

Re: Where to start ... (C++) ?

Posted: Mon Oct 17, 2011 11:24 pm
by L3V147H4N
:D .. its indeed a long long list... My intentions first hand was to start with OpenGl, first of all, because its Open... :P ... and should make some things easier,,, but on the other side... im working on Windows. i dont the necesary knowledge to fully work on Linux, just a basic understanding,,, and i wanted to know, because , you seem to code around OpenGl,,, is it good to work with OpenGl in Windows???? I know some of the AAA games out there are using OpenGl,,,, in fact,, one of the First Medal of Honor (dont remember which exactly) used OpenGl as Graphics Lib.

As i promised myself i started with C++ few days ago,,, and today,,,, .... as hard as it looks like (actually the feeling is overwhelming), i finally started learning 3ds Max Basic, i want to exploit the Student's Licence :3 and ofc i was overruned by its enormous set of tools and menus and bla!... but i think i'll get used to it.

But im drifting off here,,, my interest rest now in Graphic Lib. from your perspective,, how hard is OpenGl and D3D,,, and how difficult is too go from OpenGl to D3D... if you have done this... :3

Thx again szdarkhack, im very pleased :D ....

If any of you plays HoN or SC2,,, my nick is L3V147H4N (LEVIATHAN for SC2) :D byeee! cya later