Sorry your browser is not supported!

You are using an outdated browser that does not support modern web technologies, in order to use this site please update to a new browser.

Browsers supported include Chrome, FireFox, Safari, Opera, Internet Explorer 10+ or Microsoft Edge.

Geek Culture / Interested in Visual C++ developement

Author
Message
Satchmo
20
Years of Service
User Offline
Joined: 29th May 2005
Location:
Posted: 29th Mar 2009 06:45
So I want to get into pure direct x C++ development, but I need a good starting point in C++. I've been using Darkbasic for a long time and don't plan to stop anytime soon, but I want to start looking forward. I've looked at DarkGDK.net but I don't think it's what I'm looking for, I'd rather do some more raw Direct X programming.

A problem I'm having is that the structure of TGC's language has been burnt into my mind and confuses me greatly when trying to learn C++. So some tutorials on the basics would be really helpful.

I'm using Visual C++ express.

dark coder
22
Years of Service
User Offline
Joined: 6th Oct 2002
Location: Japan
Posted: 29th Mar 2009 07:01
Satchmo
20
Years of Service
User Offline
Joined: 29th May 2005
Location:
Posted: 29th Mar 2009 07:03
Is this tutorial based around the standard MS code?

Jeku
Moderator
21
Years of Service
User Offline
Joined: 4th Jul 2003
Location: Vancouver, British Columbia, Canada
Posted: 29th Mar 2009 07:40
Go into the Programming forum and you'll see a Free Programming Resources thread. It lists a bunch of tutorials.

Aaron Miller
19
Years of Service
User Offline
Joined: 25th Feb 2006
Playing: osu!
Posted: 31st Mar 2009 02:56
Quote: "standard MS code?"

LOL! It's funny 'standard' and 'MS' should be mentioned in the same sentence. Microsoft has in the past failed to comply with the standard ISO C++, which is what you SHOULD learn, rather than getting another language burnt into your mind that's unstandard. Get Code::Blocks with MinGW installed, then learn OpenGL. I don't mean to say OpenGL is better than DirectX, I mean to say it's easier to learn than DirectX, and learning it will make learning DirectX (and when I refer to DirectX I don't mean just Direct3D) easier.

OpenGL is easiest to learn first.
It comes with MinGW.
MinGW comes with CodeBlocks.
CodeBlocks is awsome.

Here's the first program you can make


If you need any help learning C++ (even if you use VC++), I'd be happy to help you out. You can email me or IM me over MSN or Yahoo.

Cheers,

-naota

I'm not a dictator to those that do stuff for me by will. Only those who don't.
Benjamin
22
Years of Service
User Offline
Joined: 24th Nov 2002
Location: France
Posted: 31st Mar 2009 03:05 Edited at: 31st Mar 2009 03:08
Quote: "which is what you SHOULD learn"

What exactly is so non-standard that would be an issue if you switched to a lesser IDE?

Aaron Miller
19
Years of Service
User Offline
Joined: 25th Feb 2006
Playing: osu!
Posted: 31st Mar 2009 03:28 Edited at: 31st Mar 2009 03:28
Benjamin, C++ isn't an IDE, it's a language. Code::Blocks isn't lesser, it's cross platform. Is Visual Studio cross-platform, BESIDES two or three Windows versions? It has all the features Visual Studio offers, from what I can see. And it's easier to work with.

I'm not a dictator to those that do stuff for me by will. Only those who don't.
Benjamin
22
Years of Service
User Offline
Joined: 24th Nov 2002
Location: France
Posted: 31st Mar 2009 03:38
Quote: "Benjamin, C++ isn't an IDE, it's a language."

What are you talking about? You're saying some nonsense about MS not following standards when this is completely irrelevant to your argument that one IDE should be used over another? Alright then.

I don't really think cross-compatibility is a feature unless you actually plan to develop for some obscure OS such as Linux (I doubt the OP wants to do this), and even then it's not that much of an issue just using a separate setup to compile the project for another system. Writing the actual code to make it cross-platform is a far bigger issue. Next you'll be telling me it's better because it's open source or something.

Jeku
Moderator
21
Years of Service
User Offline
Joined: 4th Jul 2003
Location: Vancouver, British Columbia, Canada
Posted: 31st Mar 2009 03:51 Edited at: 31st Mar 2009 03:52
Sweet, a grudge match!

Quote: "Is Visual Studio cross-platform, BESIDES two or three Windows versions?"


Most definitely yes! You can use Visual C++ to develop for all of the major consoles.

Quote: "Microsoft has in the past failed to comply with the standard ISO C++"


Explain, please. I too would be interested in why you're giving said advice. You are the first developer I've read recommend Code Blocks over VS.NET, so please enlighten me

By the way, Visual Studio's compiler will compile standard C++ code.

Satchmo
20
Years of Service
User Offline
Joined: 29th May 2005
Location:
Posted: 31st Mar 2009 03:54 Edited at: 31st Mar 2009 03:54
Quote: " Code::Blocks isn't lesser, it's cross platform. Is Visual Studio cross-platform"


I'm not interested in cross platform development. One program---one operating system.

Anyways, I'll take your word for it and start with OpenGL, when I get to that point. I'm reading up on VC++ though and have already gotten into it, as well as I plan on learning for my future and I think it's probably the best choice.

Quirkyjim
16
Years of Service
User Offline
Joined: 18th Oct 2008
Location: At my computer
Posted: 31st Mar 2009 20:53
I haven't used Code::Blocks before, but I like Dev C++.

~QJ
That's what they WANT you to think...
kaedroho
17
Years of Service
User Offline
Joined: 21st Aug 2007
Location: Oxford,UK
Posted: 31st Mar 2009 21:34
The best C++ tutorial I know is the one posted by Dark Coder.

This is the best DX tutorial I know:
http://www.drunkenhyena.com/cgi-bin/dx9.pl

Your signature has been erased by a mod because it's larger than 600x120
Michael P
19
Years of Service
User Offline
Joined: 6th Mar 2006
Location: London (UK)
Posted: 31st Mar 2009 21:44 Edited at: 31st Mar 2009 21:51
Visual Studio is probably the best free IDE and is very much suited to beginners as it is easy to use.

The things I found most difficult when starting C++ were C strings and pointers, so make sure you get your head round them to avoid future problems.

Aaron Miller
19
Years of Service
User Offline
Joined: 25th Feb 2006
Playing: osu!
Posted: 31st Mar 2009 21:58
Benjamin, you referenced the IDE, I meant the compiler. VC++ just uses the VC++ compiler (obviously), and if you want to use a different compiler, then all hell breaks lose.

Quote: "I don't really think cross-compatibility is a feature unless you actually plan to develop for some obscure OS such as Linux"

Linux is open-source and far less error prone, and actually makes it easy to access things programming-wise and user-wise. Get the right distribution and setup will be easy, clean, and fast. Without working like a trial product... I'd develop more software for it if the audience was wider, not that I don't develop for it (I do). IMO Windows and Linux are both nice, but if (somehow) I got to choose which OS everybody used, I'd choose Linux.

@Jeku
- Well, yes, you can use VC++ to compiler for PlayStation 2, XBox, XBox 360, (GameCube/Wii?), etc. But you can also use GCC for all of those, and in fact it's far easier (and cheaper) to do.
- As for being unstandard, I don't mean it's unstandard now (Although it still has an abundance of extensions that other compilers just don't offer, ex: #pragma, __forceinline, etc. Those are nice features, but they're unstandard and seen in almost all code). The standard C library isn't the same for VC++ as it is for other platforms/compilers, same with the C++ library. Ex: strcmpi/_strcmpi versus strcasecmp (Which I have not yet seen in VC++). Besides, in the past it was playing catch-up with the standards (I remember seeing "Now supporting..." occur a few times...

I have to finish up this post tomorrow, I don't have enough time to continue it now. :/

Cheers,

-naota

I'm not a dictator to those that do stuff for me by will. Only those who don't.
Jeku
Moderator
21
Years of Service
User Offline
Joined: 4th Jul 2003
Location: Vancouver, British Columbia, Canada
Posted: 1st Apr 2009 02:08 Edited at: 1st Apr 2009 02:11
A few things:

Quote: "Well, yes, you can use VC++ to compiler for PlayStation 2, XBox, XBox 360, (GameCube/Wii?), etc. But you can also use GCC for all of those, and in fact it's far easier (and cheaper) to do."


Wha---!? Not to sound like a jerk, but I highly doubt you actually have experience developing on an Xbox or Xbox 360. It couldn't be easier hooking it up to your network, installing the XDK, and having the little My Xbox Neighbourhood icon on your desktop. Dragging and dropping files and deploying straight into the dev kit, it couldn't be easier. Sure you can use CodeWarrior for PS2/PSP/PS3 dev, but it's unstable as all hell and you'll see your memory usage balloon if you leave the IDE running. Nothing comes close to Visual Studio for game dev, sorry.

Quote: "VC++ just uses the VC++ compiler (obviously)"


Actually the compiler is completely separate from the IDE. Anyone can compile code from the command line without using the IDE if they feel like it.

As for "standard" compilation, I have read my fair share of C and C++ books, and I will tell you that I've *never* had issues compiling any of the source. To say that Visual Studio C++ code is "unstandard" and that learning it will teach you bad habits as you suggested in your first post is nothing short of fear-mongering.

NeX the Fairly Fast Ferret
20
Years of Service
User Offline
Joined: 10th Apr 2005
Location: The Fifth Plane of Oblivion
Posted: 1st Apr 2009 02:15
I prefer Code::Blocks myself simply because it's very lightweight compared to VC++ but if I had the disk space and a decent system I'd be using VC++.

Code::Blocks, GCC and MingW are a good combination for making simple programs. Except GDB seems absolutely useless and Windows catches more errors than it does.

You do often find things in the Code::Blocks IDE that just plain don't work though. Sometimes adding stuff to your project will work, other times there's no alternative to placing an #include in your main source file. I always found VC++'s IDE to be a little bewildering, throwing posh words around like "Solutions" and "Resources". For big projects, I'd imagine this sort of thing gets useful for teams. In other words, they're both good but for different purposes.

Satchmo
20
Years of Service
User Offline
Joined: 29th May 2005
Location:
Posted: 1st Apr 2009 04:45 Edited at: 3rd Apr 2009 05:58
Edited

Jeku
Moderator
21
Years of Service
User Offline
Joined: 4th Jul 2003
Location: Vancouver, British Columbia, Canada
Posted: 1st Apr 2009 18:03
Quote: "other times there's no alternative to placing an #include in your main source file"


How else would you include a file in your source files?

NeX the Fairly Fast Ferret
20
Years of Service
User Offline
Joined: 10th Apr 2005
Location: The Fifth Plane of Oblivion
Posted: 1st Apr 2009 18:05
It's meant to automatically add .h files, but it doesn't always. It's probably better to include it in the source for cross compiler compatability which is what I do anyway.

Benjamin
22
Years of Service
User Offline
Joined: 24th Nov 2002
Location: France
Posted: 1st Apr 2009 18:18
Quote: "It's meant to automatically add .h files"

Sounds like a rather worrying feature.

David R
21
Years of Service
User Offline
Joined: 9th Sep 2003
Location: 3.14
Posted: 1st Apr 2009 18:32
Quote: "I always found VC++'s IDE to be a little bewildering, throwing posh words around like "Solutions" and "Resources"."


Solution = A 'super project' containing multiple other projects (that can build/rebuild at the same time, and into the same folder hierarchy by default)

Resources = That's not a posh term. If you haven't come across resources in other IDEs then you may want to ditch what ever you were using


09-f9-11-02-9d-74-e3-5b-d8-41-56-c5-63-56-88-c0

Login to post a reply

Server time is: 2025-06-05 21:39:59
Your offset time is: 2025-06-05 21:39:59