home *** CD-ROM | disk | FTP | other *** search
- // 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;
- }
-