Difference between revisions of "Microsoft Visual Studio"

From Chilipedia
Jump to: navigation, search
(Download)
(Following the Old Series with VS 2015)
Line 25: Line 25:
 
=== const in Container Template Parameters ===
 
=== const in Container Template Parameters ===
 
The code from the advanced series and the H.U.G.S. series will fail in VS 2015 because of the use of <code>const</code> in container template parameters (e.g. <code>std::vector<const Vec2></code>). This code was apparently defined as ill-formed by the standard, but older versions of the Microsoft compiler permitted it anyways. Microsoft made the compiler stricter in 2015, thus breaking this code. When following along, you should make appropriate modifications to remove <code>const</code> from any std container template arguments.
 
The code from the advanced series and the H.U.G.S. series will fail in VS 2015 because of the use of <code>const</code> in container template parameters (e.g. <code>std::vector<const Vec2></code>). This code was apparently defined as ill-formed by the standard, but older versions of the Microsoft compiler permitted it anyways. Microsoft made the compiler stricter in 2015, thus breaking this code. When following along, you should make appropriate modifications to remove <code>const</code> from any std container template arguments.
 +
=== IDE Differences ===
 +
There will be minor differences in the user interface that might make it a little harder for beginners to follow along, but you'll be okay.
  
# Numbered list item
 
 
== Download and Installation ==
 
== Download and Installation ==
 
The current version is Visual Studio 2015 Community and is available [https://www.visualstudio.com/post-download-vs?sku=community&clcid=0x409 here]. For a walkthrough on how to install this software, see [[Beginner C++ Game Programming Tutorial 0|Beginner Tutorial 0]].
 
The current version is Visual Studio 2015 Community and is available [https://www.visualstudio.com/post-download-vs?sku=community&clcid=0x409 here]. For a walkthrough on how to install this software, see [[Beginner C++ Game Programming Tutorial 0|Beginner Tutorial 0]].

Revision as of 14:35, 22 July 2016

Microsoft Visual Studio is an IDE (integrated development environment) that supports C++, C#, and a bunch of other dumb languages that nobody cares about. It has a sweet-ass debugger and generally gives you the least painful experience for developing Windows applications, so that's what we use in the tutorials. The current version is Visual Studio 2015.

Versions Used in the Tutorials

Visual C++ 2010 Express

  • Old Version of Beginner Series
  • Old Version of Intermediate Series

Unlike later versions versions, Express 2010 shipped without the Windows Platform SDK, so you needed to download the DirectX SDK separately to build Direct3D applications (and thus, to build the Framework and follow the tutorials). It is no longer available for download from Microsoft, and may be difficult to obtain online.

Visual Studio 2013 Express for Windows Desktop

  • Old Version of Advanced Series
  • H.U.G.S. Series
  • SSE Optimization Series

This release has (incomplete) support for C++11 features.

Visual Studio 2015 Community

Visual Studio 2015 Community has (almost) complete support for C++11.

Express and Community Editions

Microsoft provides a free version of their Visual Studio IDE, traditionally in the form of the 'Express' edition. It features the same compiler as the paid versions, but lacks some tools such as a profiler for profile-guided optimization or the ability to use plug-ins. Starting in 2013, Microsoft has provided a second free version called the 'Community' edition, which has more features than Express. The only real downside to Community is that, while the Express edition has no limitation in terms of usage, the Community license only extends to individuals or small groups of less than 5 people.

Following the Old Series with VS 2015

Since VS 2010 and DXSDK June 2010 are becoming hard to locate, those wanting to follow the old tutorials will likely want to use VS 2015. This can be done, but the following problems must be fixed in order to do so.

dxerr.lib

The old beginner and intermediate series required the downloading of the DirectX SDK because VS 2010 did not include it. Newer versions of VS include the Windows Platform SDK which has most of the files from the DXSDK. The problem is, some files were cut from the team, and one of those files -- dxerr.lib -- is included in the old Framework project dependencies. To fix this problem, go into the project properties and remove dxerr.lib from the list of additional libraries.

const in Container Template Parameters

The code from the advanced series and the H.U.G.S. series will fail in VS 2015 because of the use of const in container template parameters (e.g. std::vector<const Vec2>). This code was apparently defined as ill-formed by the standard, but older versions of the Microsoft compiler permitted it anyways. Microsoft made the compiler stricter in 2015, thus breaking this code. When following along, you should make appropriate modifications to remove const from any std container template arguments.

IDE Differences

There will be minor differences in the user interface that might make it a little harder for beginners to follow along, but you'll be okay.

Download and Installation

The current version is Visual Studio 2015 Community and is available here. For a walkthrough on how to install this software, see Beginner Tutorial 0.