⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 caps.c

📁 Lido PXA270平台开发板的最新BSP,包括源代码
💻 C
📖 第 1 页 / 共 2 页
字号:
			D3DMUSAGE_LOCKABLE
		},
		32,
		FALSE,
		0,
		0, 
		0, 
		0, 
		0, 
		0,     
		0,     
		0,     
		0,     
		0
	},
	/*
		Vertex buffer format.
	*/
	{
		{
			D3DMFMT_VERTEXDATA, 
			D3DMRTYPEFLAG_VERTEXBUFFER,
			D3DMUSAGE_LOCKABLE
		},
		0,
		FALSE,
		0,
		0, 
		0, 
		0, 
		0, 
		0,     
		0,     
		0,     
		0,     
		0
	},
};

/* Number of formats supported */
DWORD dwPVRNumSupportedFormats  = sizeof(psPVR_Formats) / sizeof(PVR_DEVFORMAT);

/*****************************************************************************
	Supported D3DM Multisample Types
*****************************************************************************/

D3DMMULTISAMPLE_TYPE psPVRSupportedMultiSample[] = 
{
    D3DMMULTISAMPLE_NONE,
    D3DMMULTISAMPLE_2_SAMPLES,
    D3DMMULTISAMPLE_4_SAMPLES
};

DWORD dwPVRNumSupportedMultiSample = sizeof(psPVRSupportedMultiSample) / sizeof(D3DMMULTISAMPLE_TYPE);

/*****************************************************************************
	Supported D3DM Display modes 
	- FIXME - Only supports one mode currently - In future - Rotated?
*****************************************************************************/

D3DMDISPLAYMODE psPVRSupportedDisplayModes[] = 
{
	{
		/* 
			Default to  320 x 240 @ 16bpp - Will be modded dynamically
		*/
		320,
		240,
		60,
		D3DMFMT_R5G6B5
	}
};

DWORD dwPVRNumSupportedDisplayModes = sizeof(psPVRSupportedDisplayModes) / sizeof(D3DMDISPLAYMODE);

/*****************************************************************************
	Supported D3DM Stretch rect format conversion types

  Dest FrameBuffer formats

  #define MBX1_FBCTL_PACKMODE565				0x00000001
  #define MBX1_FBCTL_PACKMODE4444				0x00000002
  #define MBX1_FBCTL_PACKMODE1555				0x00000003
  #define MBX1_FBCTL_PACKMODEK888				0x00000005
  #define MBX1_FBCTL_PACKMODE8888				0x00000006

  Source Formats

	D3DMFMT_A8R8G8B8               =  2,
	D3DMFMT_X8R8G8B8               =  3,
	D3DMFMT_R5G6B5                 =  4,
	D3DMFMT_X1R5G5B5               =  5,
	D3DMFMT_A1R5G5B5               =  6,
	D3DMFMT_A4R4G4B4               =  7,
	D3DMFMT_A8R3G3B2               =  9,
	D3DMFMT_X4R4G4B4               = 10,

	- FIXME - 3D HW blit only - add sw blit support types?
*****************************************************************************/
PVR_D3DMFORMATCONVERSION psPVRSupportedFormatConversion[] = 
{
	{
		D3DMFMT_A8R8G8B8,
		STRETCH_RECT_DEST_CONV_FMT_COUNT,
		D3DMFMT_R5G6B5,
		D3DMFMT_X8R8G8B8,
		D3DMFMT_A1R5G5B5,
		D3DMFMT_A4R4G4B4,
		D3DMFMT_A8R8G8B8
	},
	{
		D3DMFMT_X8R8G8B8,
		STRETCH_RECT_DEST_CONV_FMT_COUNT,
		D3DMFMT_R5G6B5,
		D3DMFMT_X8R8G8B8,
		D3DMFMT_A1R5G5B5,
		D3DMFMT_A4R4G4B4,
		D3DMFMT_A8R8G8B8
	},
	{
		D3DMFMT_R5G6B5,
		STRETCH_RECT_DEST_CONV_FMT_COUNT,
		D3DMFMT_R5G6B5,
		D3DMFMT_X8R8G8B8,
		D3DMFMT_A1R5G5B5,
		D3DMFMT_A4R4G4B4,
		D3DMFMT_A8R8G8B8
	},
	{
		D3DMFMT_X1R5G5B5,
		STRETCH_RECT_DEST_CONV_FMT_COUNT,
		D3DMFMT_R5G6B5,
		D3DMFMT_X8R8G8B8,
		D3DMFMT_A1R5G5B5,
		D3DMFMT_A4R4G4B4,
		D3DMFMT_A8R8G8B8
	},
	{
		D3DMFMT_A1R5G5B5,
		STRETCH_RECT_DEST_CONV_FMT_COUNT,
		D3DMFMT_R5G6B5,
		D3DMFMT_X8R8G8B8,
		D3DMFMT_A1R5G5B5,
		D3DMFMT_A4R4G4B4,
		D3DMFMT_A8R8G8B8
	},
	{
		D3DMFMT_A4R4G4B4,
		STRETCH_RECT_DEST_CONV_FMT_COUNT,
		D3DMFMT_R5G6B5,
		D3DMFMT_X8R8G8B8,
		D3DMFMT_A1R5G5B5,
		D3DMFMT_A4R4G4B4,
		D3DMFMT_A8R8G8B8
	},
	{
		D3DMFMT_X4R4G4B4,
		STRETCH_RECT_DEST_CONV_FMT_COUNT,
		D3DMFMT_R5G6B5,
		D3DMFMT_X8R8G8B8,
		D3DMFMT_A1R5G5B5,
		D3DMFMT_A4R4G4B4,
		D3DMFMT_A8R8G8B8
	},
	{
		D3DMFMT_A8R3G3B2,
		STRETCH_RECT_DEST_CONV_FMT_COUNT,
		D3DMFMT_R5G6B5,
		D3DMFMT_X8R8G8B8,
		D3DMFMT_A1R5G5B5,
		D3DMFMT_A4R4G4B4,
		D3DMFMT_A8R8G8B8
	}
};

DWORD dwPVRNumSupportedFormatConversion = sizeof(psPVRSupportedFormatConversion) / sizeof(PVR_D3DMFORMATCONVERSION);

/*****************************************************************************
	Supported Profiles
	- FIXME - Only base exists currently 
*****************************************************************************/

D3DMPROFILE psPVRSupportedProfiles[] =
{
	D3DMPROFILE_BASE
};

DWORD dwPVRNumSupportedProfiles = sizeof(dwPVRNumSupportedProfiles) / sizeof(D3DMPROFILE);

/*****************************************************************************
	D3DM Caps
*****************************************************************************/

D3DMCAPS sPVRD3DMCaps =
{
	/* DeviceType */
	D3DMDEVTYPE_DEFAULT,
		
	/* AdapterOrdinal */
	0,												

	/* PresentationIntervals */
	D3DMPRESENT_INTERVAL_ONE			|			
	D3DMPRESENT_INTERVAL_TWO			|
	D3DMPRESENT_INTERVAL_THREE			|
	D3DMPRESENT_INTERVAL_FOUR			|
	D3DMPRESENT_INTERVAL_IMMEDIATE,

	/* DevCaps */
///	D3DMDEVCAPS_D3DMCURSOR				|			
/////	D3DMDEVCAPS_HWCURSOR				|
	D3DMDEVCAPS_CANRENDERDURINGPRESENT	|
#if defined (SUPPORT_VGP) || defined (SUPPORT_VGP_LITE)
	D3DMDEVCAPS_HWTRANSFORMANDLIGHT		|
#endif
	D3DMDEVCAPS_HWRASTERIZATION			|
#if defined (D3DM_NATIVE_FLOAT)
	D3DMDEVCAPS_NATIVEFLOAT				|
#endif
	D3DMDEVCAPS_TEXTURE					|
	D3DMDEVCAPS_SPECULAR,

	/* SurfaceCaps */
#if defined (UMA_SYSTEM)
	D3DMSURFCAPS_SYSFRONTBUFFER			|
	D3DMSURFCAPS_SYSBACKBUFFER			|
	D3DMSURFCAPS_SYSDEPTHBUFFER			|
	D3DMSURFCAPS_SYSTEXTURE				|
	D3DMSURFCAPS_SYSIMAGESURFACE		|
#else

	D3DMSURFCAPS_VIDFRONTBUFFER			|
	D3DMSURFCAPS_VIDBACKBUFFER			|
	D3DMSURFCAPS_VIDDEPTHBUFFER			|
	D3DMSURFCAPS_VIDTEXTURE				|
	D3DMSURFCAPS_VIDIMAGESURFACE		|
#endif
	D3DMSURFCAPS_SYSVERTEXBUFFER		|
	D3DMSURFCAPS_SYSINDEXBUFFER			|
/*	D3DMSURFCAPS_MANAGEDPOOL			|
	D3DMSURFCAPS_LOCKDEPTHBUFFER		|
*/	D3DMSURFCAPS_LOCKTEXTURE			|
	D3DMSURFCAPS_LOCKRENDERTARGET,

	/* PrimitiveMiscCaps */
/*	D3DMPMISCCAPS_COLORWRITEENABLE		|
	D3DMPMISCCAPS_TSSARGTEMP			|
*/	D3DMPMISCCAPS_ALPHABLEND			|
	D3DMPMISCCAPS_ALPHACMP				|
	D3DMPMISCCAPS_CULLNONE				|
	D3DMPMISCCAPS_CULLCW				|
	D3DMPMISCCAPS_CULLCCW,

	/* RasterCaps */
/*	D3DMPRASTERCAPS_ANISOTROPY				|
	D3DMPRASTERCAPS_ZFOG					|
	D3DMPRASTERCAPS_WFOG					|
	D3DMPRASTERCAPS_FOGTABLE				|
	D3DMPRASTERCAPS_STENCIL					|
	D3DMPRASTERCAPS_STRETCHBLTMULTISAMPLE	|
*/	D3DMPRASTERCAPS_DITHER					|
#if !defined(SUPPORT_VGP) && !defined (SUPPORT_VGP_LITE)
	D3DMPRASTERCAPS_SLOPESCALEDEPTHBIAS		|
#endif
	D3DMPRASTERCAPS_DEPTHBIAS				|
	D3DMPRASTERCAPS_FOGVERTEX				|
	D3DMPRASTERCAPS_EXPFOG					|
	D3DMPRASTERCAPS_EXP2FOG					|
	D3DMPRASTERCAPS_FOGRANGE				|
	D3DMPRASTERCAPS_MIPMAPLODBIAS			|
	D3DMPRASTERCAPS_WBUFFER					|
	D3DMPRASTERCAPS_ZBUFFERLESSHSR			|      
	D3DMPRASTERCAPS_COLORPERSPECTIVE,

  	/* ZCmpCaps */
	D3DMPCMPCAPS_NEVER					|
	D3DMPCMPCAPS_LESS					|
	D3DMPCMPCAPS_EQUAL					|
	D3DMPCMPCAPS_LESSEQUAL				|
	D3DMPCMPCAPS_GREATER				|
	D3DMPCMPCAPS_NOTEQUAL				|
	D3DMPCMPCAPS_GREATEREQUAL			|
	D3DMPCMPCAPS_ALWAYS,

	/* SrcBlendCaps */
/*	D3DMPBLENDCAPS_SRCCOLOR          |
	D3DMPBLENDCAPS_INVSRCCOLOR       |
	D3DMPBLENDCAPS_SRCALPHASAT		 |
*/	D3DMPBLENDCAPS_ZERO              |
	D3DMPBLENDCAPS_ONE               |
	D3DMPBLENDCAPS_SRCALPHA          |
	D3DMPBLENDCAPS_INVSRCALPHA       |
	D3DMPBLENDCAPS_DESTALPHA         |
	D3DMPBLENDCAPS_INVDESTALPHA      |
	D3DMPBLENDCAPS_DESTCOLOR         |
	D3DMPBLENDCAPS_INVDESTCOLOR,

	/* DestBlendCaps */
/*	D3DMPBLENDCAPS_SRCALPHASAT		 |
	D3DMPBLENDCAPS_DESTCOLOR         |
	D3DMPBLENDCAPS_INVDESTCOLOR		 |
*/	D3DMPBLENDCAPS_ZERO              |
	D3DMPBLENDCAPS_ONE               |
	D3DMPBLENDCAPS_SRCCOLOR          |
	D3DMPBLENDCAPS_INVSRCCOLOR       |
	D3DMPBLENDCAPS_SRCALPHA          |
	D3DMPBLENDCAPS_INVSRCALPHA       |
	D3DMPBLENDCAPS_DESTALPHA         |
	D3DMPBLENDCAPS_INVDESTALPHA,

	/* BlendOpCaps */
/*	D3DMBLENDOPCAPS_REVSUBTRACT      |
	D3DMBLENDOPCAPS_MIN              |
	D3DMBLENDOPCAPS_SUBTRACT		 |
	D3DMBLENDOPCAPS_MAX              |
*/	D3DMBLENDOPCAPS_ADD,

	/* AlphaCmpCaps */
	D3DMPCMPCAPS_NEVER				|
	D3DMPCMPCAPS_LESS				|
	D3DMPCMPCAPS_EQUAL				|
	D3DMPCMPCAPS_LESSEQUAL			|
	D3DMPCMPCAPS_GREATER			|
	D3DMPCMPCAPS_NOTEQUAL			|
	D3DMPCMPCAPS_GREATEREQUAL		|
	D3DMPCMPCAPS_ALWAYS,              

	/* ShadeCaps */
	D3DMPSHADECAPS_COLORGOURAUDRGB		 | 
	D3DMPSHADECAPS_SPECULARGOURAUDRGB    |
	D3DMPSHADECAPS_ALPHAGOURAUDBLEND     |
	D3DMPSHADECAPS_FOGGOURAUD,

	/* TextureCaps */
/*	D3DMPTEXTURECAPS_PROJECTED				|
	D3DMPTEXTURECAPS_ALPHAPALETTE			|
	D3DMPTEXTURECAPS_SQUAREONLY				|
*/	D3DMPTEXTURECAPS_POW2					|
#if !defined(SUPPORT_VGP) && !defined (SUPPORT_VGP_LITE) // FIXME We should be able to do this for VGP but not lite
	D3DMPTEXTURECAPS_PROJECTEDSUPPORT		|
#endif
	D3DMPTEXTURECAPS_ALPHA					|
	D3DMPTEXTURECAPS_MIPMAP					|
	D3DMPTEXTURECAPS_PERSPECTIVE,
              
	/* TextureFilterCaps */
/*	D3DMPTFILTERCAPS_MAGFANISOTROPIC		|
	D3DMPTFILTERCAPS_MINFANISOTROPIC		|
*/	D3DMPTFILTERCAPS_MINFPOINT				|     
	D3DMPTFILTERCAPS_MINFLINEAR				|
	D3DMPTFILTERCAPS_MIPFPOINT				|
	D3DMPTFILTERCAPS_MIPFLINEAR				|
	D3DMPTFILTERCAPS_MAGFPOINT				|
	D3DMPTFILTERCAPS_MAGFLINEAR,

	/* StretchRectFilterCaps */
	D3DMPTFILTERCAPS_MINFPOINT				|
	D3DMPTFILTERCAPS_MINFLINEAR				|
	D3DMPTFILTERCAPS_MAGFPOINT				|
	D3DMPTFILTERCAPS_MAGFLINEAR,

	/* TextureAddressCaps */
/*	D3DMPTADDRESSCAPS_BORDER         |
*/	D3DMPTADDRESSCAPS_WRAP           |
	D3DMPTADDRESSCAPS_MIRROR         |
	D3DMPTADDRESSCAPS_CLAMP          |
	D3DMPTADDRESSCAPS_INDEPENDENTUV,

	/* LineCaps */
	D3DMLINECAPS_TEXTURE	|            
	D3DMLINECAPS_BLEND      |         
	D3DMLINECAPS_ALPHACMP,    

	/* MaxTextureWidth */ 
	2048,

	/* MaxTextureHeight */
	2048,										

	/* MaxTextureRepeat */
	1024,
	
	/* MaxTextureAspectRatio */
	256,
	
	/* MaxAnisotropy */
	2,

	/* MaxVertexW */
	0x7149F2CA,	/* 1.0e30f */				

	/* GuardBandLeft */
	-4096,			

	/* GuardBandTop */
	-4096,			
	
	/* GuardBandRight */
	4096, 
	
	/* GuardBandBottom */
	4096, 							

	/* ExtentsAdjust */
	0,										

	/* StencilCaps */
	0,											

	/* StencilCmpCaps */
	0,

	/* TextureOpCaps */
/*	D3DMTEXOPCAPS_MULTIPLYADD                |
	D3DMTEXOPCAPS_LERP						 |
*/	D3DMTEXOPCAPS_PREMODULATE                |
	D3DMTEXOPCAPS_SELECTARG1                 |
	D3DMTEXOPCAPS_SELECTARG2                 |
	D3DMTEXOPCAPS_MODULATE                   |
	D3DMTEXOPCAPS_MODULATE2X                 |
	D3DMTEXOPCAPS_MODULATE4X                 |
	D3DMTEXOPCAPS_ADD                        |
	D3DMTEXOPCAPS_ADDSIGNED                  |
	D3DMTEXOPCAPS_ADDSIGNED2X                |
	D3DMTEXOPCAPS_SUBTRACT                   |
	D3DMTEXOPCAPS_ADDSMOOTH                  |
	D3DMTEXOPCAPS_BLENDDIFFUSEALPHA          |
	D3DMTEXOPCAPS_BLENDTEXTUREALPHA          |
	D3DMTEXOPCAPS_BLENDFACTORALPHA           |
	D3DMTEXOPCAPS_BLENDTEXTUREALPHAPM        |
	D3DMTEXOPCAPS_BLENDCURRENTALPHA          |
	D3DMTEXOPCAPS_MODULATEALPHA_ADDCOLOR     |
	D3DMTEXOPCAPS_MODULATECOLOR_ADDALPHA     |
	D3DMTEXOPCAPS_MODULATEINVALPHA_ADDCOLOR  |
	D3DMTEXOPCAPS_MODULATEINVCOLOR_ADDALPHA  |
	D3DMTEXOPCAPS_DOTPRODUCT3,
                      
	/* MaxTextureBlendStages */
	2,		
	
	/* MaxSimultaneousTextures */
	2,											
	
	/* VertexProcessingCaps */
/*	D3DMVTXPCAPS_CLIPSTATUS*/
	D3DMVTXPCAPS_TEXGEN              | 
	D3DMVTXPCAPS_MATERIALSOURCE      |
	D3DMVTXPCAPS_DIRECTIONALLIGHTS   |
	D3DMVTXPCAPS_POSITIONALLIGHTS    |
	D3DMVTXPCAPS_LOCALVIEWER,

	/* MaxActiveLights */
	MAX_LIGHTS,
	
	/* MaxPrimitiveCount */
	65535,										 

	/* MaxVertexIndex */
	65535,		
	
	/* MaxBackBuffer*/
    MAX_FLIP_SURFACES -1
};
/*****************************************************************************
  End of file (Caps.c)
*****************************************************************************/

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -