C++ Resources

Updated on January 7 2017



C++RESOURCES

Deborah R. Fowler



Resources for C++ - Introduction

Updated on May 17  2015

click here for syntax quick reference

click here for summary table of compiling

click here for OpenGL

click here for Houdini HDK

click here for Raytracing in C++ (thank you to Zephyr Mann for sharing his links to useful resources)

Another reason to learn C++ ... Unreal Engine 4 with tutorials as well


Why C++?


Examples and resources:

Textbook for VSFX Special Topics class being offered Winter 2013 is C++ Programming in easy steps, Fourth Edition by Mike McGrath (July 12, 2011), ISBN 978-1-84078-432-9. This textbook is an excellent crash course in C++ and is relatively concise.

Another recommended textbook used in previous quarters for ITGM 315 class is Beginning C++ Through Game Programming, Third Edition by Michael Dawson, ISBN 1-4354-5742-0. (also available at Safari books online through the SCAD library). This textbook has an excellent summary and Q & A section at the end of each chapter, and is written more in a games flavor than visual effects but the content is solid.

The MATERIALS folder in the dropbox will be filled with materials appropriate for the beginning C++ programmer.
Also, if you would like to see an example RPG there is one here.

Excellent online tutorials exist at
A vast number of online code sites exist. Please look at the examples in the dropbox and in your textbook first as these are specifically geared toward the material covered in class.

If you are interested in other textbooks that delve more deeply into C++ there are a number on the market. The following may be of interest but are NOT required:

C++ Primer, Fourth Edition, by Stanley b. Lippman, Josee Lajoie, Barbara E. Moo. ISBN (0-201-72148-1).

Interesting reading about the development and FAQ on Bjarne Stroustrup's page (pronunciation file here).


IDE and Compilers:

C++ code is contained in a cpp file which will then be compiled. Various ways exist to create this code. On linux you can simply use a text editor (gedit at Monty) and compile using the gnu (g++) compiler or you can use Eclipse. On Windows you can also use the gnu compiler (c++), use Visual Studios IDE or use Eclipse IDE. Documentation is provided for all of these options below.

For information on how to set up the gnu compiler on your own WINDOWS 7 machine: click here.

Eclipse can also be run on Windows: click here.

Eclipse on linux: Is now available in Monty. For instructions on how to include openGL compiling click here.

Microsoft Visual Studio 2010: is the IDE (Integrated Development Environment) that we have used in ITGM 315.
It is available in Windows on the machines in Montgomery Hall and at home.  It is very robust and a great IDE especially for beginning programmers.
Remember when practicing with examples from the textbook or online sources that you must use #include "stdafx.h" at the top of the file for Visual Studio to work properly.

Using C++ and Visual Studios at home?
The full professional version is free to SCAD students (find it under MyScad / Resources / MSDN Software Center / software). You will need a DVD during installation, to burn and install.

Zip tips:
To view zip files properly: copy the zip file to your Visual Studios 2010/Projects directory and right-click on the file. Select Extract all from the menu. You will now have a working project. This is the method you will use when copying files from the _MATERIALS folder.

To zip a directory: right-click on the folder and select 7-Zip then select "FolderName.zip" from the menu where Folder Name is what your particular folder is called. This is the method you will use to hand in your assignments.


Click here for a summary table


Aside: Recently I also found a cool example comparing C++ to Python on ubuntu forums:
In the C++ version, I reduced the includes to just <GL/glut.h> and include the code here and here. I was on Windows and tested this with eclipse (zip here) as well as command line as described in the summary table. I have tested the python code posted as well (here are the first and second samples of the ubuntu forum thread). It took a bit of work to set up - but this should be easy now if you follow the instructions here (under the heading Using Python with OpenGL/GLUT on Windows).

Python is a great language to learn as well and I would strongly advise learning both languages!


APIs

Houdini HDK

Maya API

How to Get Started with Maya Plug-ins by Ali Jafargholi. Excellent step by step documentation on how to set up the build environment and compile C++ code in Eclipse (linux).

Unreal Engine 4

Another reason to learn C++ ... Unreal Engine 4 with tutorials as well