6

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?

quetzalcoatl
  • 32,194
  • 8
  • 68
  • 107
Brail Brailov
  • 71
  • 1
  • 2
  • 5
  • (THE SITE BUGGED AND IT DOESNT SHOW THE FULL POST,SO HERE IT IS:) 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 – Brail Brailov Aug 26 '12 at 22:16
  • 1
    Please remove this comment and please watch next time what you are putting in the text. You have used `<` mark and the browsers interpreted the following text as a HTML tag. – quetzalcoatl Aug 27 '12 at 13:11

3 Answers3

10

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>

Loul G.
  • 997
  • 13
  • 27
3

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.

quetzalcoatl
  • 32,194
  • 8
  • 68
  • 107
0

grep through the new headers for functions you use from headers that are now missing. Or else MSDN documentation for the functions might tell you what header file you need.

James
  • 9,064
  • 3
  • 31
  • 49