These are my headers from before I updated to the new SDK:
#pragma once
#ifndef _EXTERNAL_DEPENDENCIES_H_
#define _EXTERNAL_DEPENDENCIES_H_
#if defined(DEBUG) || defined(_DEBUG)
#define _CRTDBG_MAP_ALLOC
#include <crtdbg.h>
#endif
#include <windows.h>
#include <time.h>
#include <mmsystem.h>
#include <cassert>
#include <ctime>
#include <algorithm>
#include <string>
#include <sstream>
#include <fstream>
#include <vector>
#include <assert.h>
#include <fcntl.h>
#include <pdh.h>
#include <stack>
#include <map>
#include <memory>
#include <random>
#include <xaudio2.h>
#include <x3daudio.h>
#include <xaudio2fx.h>
#include <ogg\ogg.h>
#include <ogg\os_types.h>
#include <vorbis\codec.h>
#include <vorbis\vorbisenc.h>
#include <vorbis\vorbisfile.h>
#include "d3dx11Effect.h"
#include <d3dx11.h>
#include <xnamath.h>
#include <dxerr.h>
#include <dinput.h>
#include <d3dcommon.h>
#include <dxgi.h>
#include <d3d11.h>
#include <d3dcompiler.h>
#include <d3dx10math.h>
#include <d3dx11async.h>
#include <D3DX11tex.h>
#include <gdiplus.h>
#pragma comment (lib, "gdiplus.lib")
#pragma comment (lib, "winmm.lib")
#pragma comment (lib, "dxguid.lib")
#pragma comment (lib, "d3dx9d.lib")
#pragma comment (lib, "d3dx10d.lib")
#pragma comment (lib, "d3d11.lib")
#pragma comment (lib, "d3dx11.lib")
#pragma comment (lib, "dxgi.lib")
#pragma comment (lib, "dxgi.lib")
#pragma comment (lib, "dxerr.lib")
#pragma comment (lib, "d3dx10.lib")
#pragma comment (lib, "wsock32.lib")
#pragma comment (lib, "dinput8.lib")
#pragma comment (lib, "dxguid.lib")
#pragma comment (lib, "pdh.lib")
#pragma comment (lib, "comctl32.lib")
#pragma comment (lib, "xaudio2.lib")
#pragma comment (lib, "x3daudio.lib")
#pragma comment (lib, "libogg.lib")
#pragma comment (lib, "libogg_static.lib")
#pragma comment (lib, "libvorbis.lib")
#pragma comment (lib, "libvorbisfile.lib")
#pragma warning (disable : 4482)
#endif
Atleast half of them are missing in the new SDK...
Most of the core DirectX headers are renamed, I got around that, but half of them are just missing, like Dxerr.h and d3dx11async.h and even d3dx10math.h/xnamath.h (oh and when I include DirectXMath.h it still says that XMFLOAT3 is undefined). I don't know what to do now, does it say anywhere how to migrate from the June 2010 DirectX SDK to the Windows SDK 8.0?
Have you tried the notes from http://msdn.microsoft.com/en-us/library/windows/desktop/ee663275(v=vs.85).aspx#sdk_vs11 ? especially points 5 and 7,8,9,10 are important.
XMFLOAT3 in DirectXMath.h is in namespace DirectX.
Try adding the following in the header file:
using namespace DirectX;
You can also include <xnamath.h>
instead of directly including <DirectXMath.h>
or <D3DX10Math.h>
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With