Witam, właśnie rozpoczynam swoją przygodę z programowaniem przy użyciu DirectX. Zacząłem czytać książkę: Wordware Introduction to 3D Game Programming with DirectX 10. Jednak już na samym początku pojawił się problem. Ściągnąłem kody źródłowe dołączone do książki jednak nie mogę ich uruchomić. Kod programu wygląda następująco:

 
//=======================================================================================
// d3dxvec3.cpp by Frank Luna (C) 2008 All Rights Reserved.
//
// Illustrates the D3DXVECTOR3 class.
//=======================================================================================


// Remember to link d3dx10.lib.

#include <d3dx10.h>
#include <iostream>
using namespace std;

// Overload the  "<<" operators so that we can use cout to 
// output D3DXVECTOR3 objects.

ostream& operator<<(ostream& os, D3DXVECTOR3& v)
{
	os << "(" << v.x << ", " << v.y << ", " << v.z << ")";
	return os;
}

int main()
{
	// Using constructor, D3DXVECTOR3(FLOAT x, FLOAT y, FLOAT z);
	D3DXVECTOR3 u(1.0f, 2.0f, 3.0f);

	// Using constructor, D3DXVECTOR3(CONST FLOAT *);
	float x[3] = {-2.0f, 1.0f, -3.0f};
	D3DXVECTOR3 v(x);

	// Using constructor, D3DXVECTOR3() {};
	D3DXVECTOR3 a, b, c, d, e;  

	// Vector addition: D3DXVECTOR3 operator + 
	a = u + v;

	// Vector subtraction: D3DXVECTOR3 operator - 
	b = u - v;

	// Scalar multiplication: D3DXVECTOR3 operator * 
	c = u * 10;

	// ||u||
	float L = D3DXVec3Length(&u);

	// d = u / ||u||
	D3DXVec3Normalize(&d, &u);

	// s = u dot v
	float s = D3DXVec3Dot(&u, &v);

	// e = u x v
	D3DXVec3Cross(&e, &u, &v);

	cout << "u             = " << u << endl;
	cout << "v             = " << v << endl;
	cout << "a = u + v     = " << a << endl;
	cout << "b = u - v     = " << b << endl;
	cout << "c = u * 10    = " << c << endl;
	cout << "d = u / ||u|| = " << d << endl;
	cout << "e = u x v     = " << e << endl;
	cout << "L = ||u||     = " << L << endl;
	cout << "s = u.v       = " << s << endl;

	return 0;
}

Kiedy klikam na "Start Debugging" otrzymuję następujący komunikat:

 
1>------ Build started: Project: D3DXVec3, Configuration: Debug Win32 ------
1>Compiling...
1>d3dxvec3.cpp
1>g:\directx\include\d3d10.h(35) : fatal error C1083: Cannot open include file: 'rpc.h': No such file or directory
1>Build log was saved at "file://c:\Documents and Settings\xxx\Pulpit\directx\PartI\D3DXVec3\Debug\BuildLog.htm"
1>D3DXVec3 - 1 error(s), 0 warning(s)
========== Build: 0 succeeded, 1 failed, 0 up-to-date, 0 skipped ==========

Na stronie autorów wyczytałem, że ich przykładowe programy działają bez zarzutu po uruchomieniu pliku z rozszerzeniem ".vcproj" więc błąd ze strony autorów raczej nie wchodzi w grę. Używam Visual C++ 2005 Express Edition, Windowsa XP i uprzednio oczywiście zainstalowałem DirectX SDK z marca 2009r. Czy ktoś wie może co jest nie tak? Z góry dzięki za wszelkie podpowiedzi i wskazówki.