home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Tricks of the Windows Gam…ming Gurus (2nd Edition)
/
Disc2.iso
/
msdn_vcb
/
samples
/
vc98
/
atl
/
direct3d
/
d3dwnd.cpp
< prev
next >
Wrap
C/C++ Source or Header
|
1998-03-26
|
3KB
|
75 lines
// d3dwnd.cpp : implementation of CDirect3DWindow & CD3DMatrix
//
// This is a part of the Active Template Library.
// Copyright (C) 1996-1998 Microsoft Corporation
// All rights reserved.
//
// This source code is only intended as a supplement to the
// Active Template Library Reference and related
// electronic documentation provided with the library.
// See these sources for detailed information regarding the
// Active Template Library product.
#include "stdafx.h"
#include "d3dwnd.h"
// Globals used for selecting the Direct3D device. They are
// globals as it makes it easy for the enumeration callback
// to read and write from them.
BOOL fDeviceFound = FALSE;
DWORD dwDeviceBitDepth = 0UL;
GUID guidDevice;
char szDeviceName[MAX_DEVICE_NAME];
char szDeviceDesc[MAX_DEVICE_DESC];
D3DDEVICEDESC d3dHWDeviceDesc;
D3DDEVICEDESC d3dSWDeviceDesc;
CDirect3DWindow::CDirect3DWindow() :
d3dWorldMatrix(
D3DVAL( 1.0), D3DVAL( 0.0), D3DVAL( 0.0), D3DVAL( 0.0),
D3DVAL( 0.0), D3DVAL( 1.0), D3DVAL( 0.0), D3DVAL( 0.0),
D3DVAL( 0.0), D3DVAL( 0.0), D3DVAL( 1.0), D3DVAL( 0.0),
D3DVAL( 0.0), D3DVAL( 0.0), D3DVAL( 0.0), D3DVAL( 1.0)),
d3dViewMatrix(
D3DVAL( 1.0), D3DVAL( 0.0), D3DVAL( 0.0), D3DVAL( 0.0),
D3DVAL( 0.0), D3DVAL( 1.0), D3DVAL( 0.0), D3DVAL( 0.0),
D3DVAL( 0.0), D3DVAL( 0.0), D3DVAL( 1.0), D3DVAL( 0.0),
D3DVAL( 0.0), D3DVAL( 0.0), D3DVAL( 5.0), D3DVAL( 1.0)),
d3dProjMatrix(
D3DVAL( 2.0), D3DVAL( 0.0), D3DVAL( 0.0), D3DVAL( 0.0),
D3DVAL( 0.0), D3DVAL( 2.0), D3DVAL( 0.0), D3DVAL( 0.0),
D3DVAL( 0.0), D3DVAL( 0.0), D3DVAL( 1.0), D3DVAL( 1.0),
D3DVAL( 0.0), D3DVAL( 0.0), D3DVAL(-1.0), D3DVAL( 0.0))
{
m_bShuttingDown = FALSE;
m_bIsSuspended = FALSE;
m_bIsActive = TRUE;
m_bDebug = FALSE;
// DirectDraw interfaces
lpdd = NULL;
lpddPrimary = NULL;
lpddDevice = NULL;
lpddZBuffer = NULL;
lpddPalette = NULL;
// Direct3D interfaces
lpd3d = NULL;
lpd3dDevice = NULL;
lpd3dMaterial = NULL;
lpd3dBackgroundMaterial = NULL;
lpd3dViewport = NULL;
lpd3dLight = NULL;
lpd3dExecuteBuffer = NULL;
// Direct3D handles
hd3dWorldMatrix = 0UL;
hd3dViewMatrix = 0UL;
hd3dProjMatrix = 0UL;
hd3dSurfaceMaterial = 0UL;
hd3dBackgroundMaterial = 0UL;
m_dAngleOfRotation = 0.0;
}