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

📄 glbprocess.h

📁 里面包含了许多实用的游戏开发包
💻 H
📖 第 1 页 / 共 2 页
字号:
/*************************[ Glb数据处理模块 ]*************************\
\*************************[      Start      ]*************************/

//	版权(Copyright):
//		Copyright by Verdure programming group.  All Rights Reserved.
//     	新绿软件制作群. 版权所有。
//	模块名(MODULE):
//		GlbProcess.cpp
//	用途(PURPOSE):
//		一些处理GLB数据的输出等函数
//	平台(PLATFORMS):
//     	运行平台:Windows95 + DirectX 5.0
//		编译平台:Visual C++ 6.0
//	函数(FUNCTIONS):
//-----------------------------------------------------------------
//		glbFreeEachFrameImageData:	
//			释放GLB中的一帧图像数据占用的内存
//-----------------------------------------------------------------
//		glbFreeImageData:
//			释放一套GLB图像数据占用的内存
//-----------------------------------------------------------------
//		AlphaBlend565:
//			计算透明色			
//-----------------------------------------------------------------
//		glbFastShowImage:
//			在指定位置根据图像实际宽度和高度(也就是不考虑裁剪)显示GLB数
//			据中的不带Alpha通道的图像数据(图像数据必须为行压缩(RLE))
//-----------------------------------------------------------------
//		glbShowImage:
//			在指定位置根据指定的宽度和高度(也就是考虑裁剪)显示GLB数
//			据中的不带Alpha通道的图像数据(图像数据必须为行压缩(RLE))
//-----------------------------------------------------------------
//		glbFastShowAlphaImage:
//			在指定位置根据图像实际宽度和高度(也就是不考虑裁剪)显示GLB数
//			据中的带Alpha通道的图像数据(图像数据必须为行压缩(RLE))
//-----------------------------------------------------------------
//		glbShowAlphaImage:
//			在指定位置根据指定的宽度和高度(也就是考虑裁剪)显示GLB数
//			据中的带Alpha通道的图像数据(图像数据必须为行压缩(RLE))
//-----------------------------------------------------------------
//		glbFastShowShadow:
//			在指定位置根据阴影实际宽度和高度(也就是不考虑裁剪)显示GLB数
//			据中的阴影(阴影数据必须为行压缩(RLE))
//-----------------------------------------------------------------
//		glbShowShadow:
//			在指定位置根据指定的宽度和高度(也就是考虑裁剪)显示GLB数
//			据中的阴影(阴影数据必须为行压缩(RLE))
//-----------------------------------------------------------------
//		glbCheckImageColorKey:
//			校验GLB图像数据的指定位置是否为透明色(图像数据必须为行压缩(RLE)
//-----------------------------------------------------------------
//		glbShowImageFringe:
//			在指定位置根据指定的宽度和高度(也就是考虑裁剪)显示GLB数
//			据中的不带Alpha通道的图像数据(图像数据必须为行压缩(RLE)),
//			并显示出边缘的轮廓
//-----------------------------------------------------------------
//		glbFastAddFilmShowImage:
//		在指定位置根据图像实际宽度和高度(也就是不考虑裁剪),用指定的颜色与
//		GLB数据中的不带Alpha通道的图像数据(图像数据必须为行压缩(RLE))的颜色
//		值进行透明显示
//-----------------------------------------------------------------
//		glbAddFilmShowImage
//		在指定位置根据指定位置(也就是考虑裁剪),用指定的颜色与GLB数据中的不带
//		Alpha通道的图像数据(图像数据必须为行压缩(RLE))的颜色值进行透明显示
//-----------------------------------------------------------------
//		glbGetFileImageNum:
//			读取GLB文件图像数
//		glbLoadImage:
//			读取一套GLB图像
//		
//	说明(COMMENTS):
//		主要是一些GLB数据的读取、显示处理

/*----------------------------------------------------------------*\
函  数:
		void glbFreeEachFrameImageData(GLB_EACH_FRAME *stpGlbEachFrameDataBuff)
功  能:
		释放GLB中的一帧图像数据占用的内存
参  数:
		stpGlbEachFrameDataBuff:    GLB中的一帧图像数据缓冲区
返回值:
最后修改日期:
	1999 05.13
\*----------------------------------------------------------------*/
DllExport void glbFreeEachFrameImageData(GLB_EACH_FRAME *stpGlbEachFrameDataBuff);

/*----------------------------------------------------------------*\
函  数:
		void glbFreeImageData(GLB_DATA_HEAD **stpGlbImageDataBuff)
功  能:
		释放GLB图像数据占用的内存
参  数:
		stpGlbImageDataBuff:    GLB图像数据缓冲区
返回值:
最后修改日期:
	1999 05.13
\*----------------------------------------------------------------*/
DllExport void glbFreeImageData(GLB_DATA_HEAD **stpGlbImageDataBuff);

/*---------------------------------------------------------------*\
函数:
	void glbFastShowImage(	WORD cxStartX,
                    		WORD cyStartY,
							LPDIRECTDRAWSURFACE3 stpDestBuff,
							RECT *stpRect,
							WORD *wpSrcBuff)
功能:
	在指定位置根据图像实际宽度和高度(也就是不考虑裁剪)显示GLB数
	据中的不带Alpha通道的图像数据(图像数据必须为行压缩(RLE))
参数:
	(1) cxStartX:		显示的X开始位置
	(2) cyStartY:		显示的Y开始位置
	(3) stpDestBuff:	输出缓冲区
	(4) stpRect:		图像的大小
	(5) wpSrcBuff:		图像数据
返回值:
	没有
最后修改日期:
	1999 05.13
\*---------------------------------------------------------------*/
DllExport void glbFastShowImage(	WORD cxStartX,
                    		WORD cyStartY,
							LPDIRECTDRAWSURFACE3 stpDestBuff,
							RECT *stpRect,
							WORD *wpSrcBuff);

/*----------------------------------------------------------------------------------------*\
函数:
	void glbShowImage(WORD cxStartX,WORD cyStartY,LPDIRECTDRAWSURFACE3 stpDestBuff,RECT *stpRect, WORD *wpSrcBuff)
功能:
	在指定位置根据指定的宽度和高度(也就是考虑裁剪)显示GLB数
	据中的不带Alpha通道的图像数据(图像数据必须为行压缩(RLE))
参数:
	(1) cxStartX:		显示的X开始位置
	(2) cyStartY:		显示的Y开始位置
	(3) stpDestBuff:	输出缓冲区
	(4) stpRect:		需显示的大小
	(5) wpSrcBuff:		图像数据
返回值:	
	没有
最后修改日期:
	1999 05.13
\*---------------------------------------------------------------------------------------*/
DllExport void glbShowImage(	WORD cxStartX,
							WORD cyStartY,
							LPDIRECTDRAWSURFACE3 stpDestBuff,
							RECT *stpRect, 
							WORD *wpSrcBuff);

/*---------------------------------------------------------------*\
函数:
	void glbFastShowAlphaImage(	WORD cxStartX,
									WORD cyStartY,LPDIRECTDRAWSURFACE3  stpDestBuff,
									RECT *stpRect,
									WORD *wpSrcBuff,
									BYTE *bpAlpha)
功能:
	在指定位置根据图像实际宽度和高度(也就是不考虑裁剪)显示GLB数
	据中的带Alpha通道的图像数据(图像数据必须为行压缩(RLE))
参数:
	(1) cxStartX:		显示的X开始位置
	(2) cyStartY:		显示的Y开始位置
	(3) stpDestBuff:	输出缓冲区
	(4) stpRect:		图像的大小
	(5) spSrcBuff:		图像数据
	(6) bpAlpha:		Alpha通道
返回值:	
	没有
最后修改日期:
	1999 05.13
\*---------------------------------------------------------------*/
DllExport void glbFastShowAlphaImage(WORD cxStartX,
                    WORD cyStartY,
					LPDIRECTDRAWSURFACE3  stpDestBuff,
					RECT *stpRect,
					WORD *wpSrcBuff,
					BYTE *bpAlpha);

/*----------------------------------------------------------------------------------------*\
函数:
	void glbShowAlphaImage(WORD 	cxStartX,
				  			WORD 	cyStartY,
				  			LPDIRECTDRAWSURFACE3  stpDestBuff,
				  			RECT 	*stpRect, 
				  			WORD 	*wpSrcBuff,
				  			BYTE 	*bpAlpha)
功能:
	在指定位置根据指定的宽度和高度(也就是考虑裁剪)显示GLB数
	据中的带Alpha通道的图像数据(图像数据必须为行压缩(RLE))
参数:
	(1) cxStartX:			显示的X开始位置
	(2) cyStartY:			显示的Y开始位置
	(3) stpDestBuff:		输出缓冲区
	(4) stpRect:			需显示的大小
	(5) wpSrcBuff:			图像数据缓冲区
	(6) bpAlpha:			Alpha通道数据缓冲区
返回值:	
	没有
最后修改日期:
	1999 05.13
\*---------------------------------------------------------------------------------------*/
DllExport void glbShowAlphaImage(WORD 	cxStartX,
				  			WORD 	cyStartY,
				  			LPDIRECTDRAWSURFACE3  stpDestBuff,
				  			RECT 	*stpRect, 
				  			WORD 	*wpSrcBuff,
				  			BYTE 	*bpAlpha);

/*---------------------------------------------------------------*\
函数:
	void glbFastShowShadow(WORD cxStartX,
                    	WORD cyStartY,
						LPDIRECTDRAWSURFACE3  stpDestBuff,
						RECT *stpRect,
						WORD *wpShadowBuff)
功能:
	在指定位置根据阴影实际宽度和高度(也就是不考虑裁剪)显示GLB数
	据中的阴影(阴影数据必须为行压缩(RLE))
参数:
	(1) cxStartX:		显示的X开始位置
	(2) cyStartY:		显示的Y开始位置
	(3) stpDestBuff		输出缓冲区
	(4) stpRect:		阴影的大小
	(5) cpShadowBuff:	阴影数据缓冲区
返回值:	
	没有
最后修改日期:
	1999 05.13
\*---------------------------------------------------------------*/
DllExport void glbFastShowShadow(	WORD cxStartX,
                    	WORD cyStartY,
						LPDIRECTDRAWSURFACE3  stpDestBuff,
						RECT *stpRect,
						WORD *wpShadowBuff);

/*----------------------------------------------------------------------------------------*\
函数:
	void glbShowShadow(WORD cxStartX,
				  WORD cyStartY,
				  LPDIRECTDRAWSURFACE3  stpDestBuff,
				  RECT *stpRect, 
				  WORD *wpShadowBuff)
功能:
	在指定位置根据指定的宽度和高度(也就是考虑裁剪)显示GLB数
	据中的阴影(阴影数据必须为行压缩(RLE))
参数:
	(1) cxStartX:		显示的X开始位置
	(2) cyStartY:		显示的Y开始位置
	(3) stpDestBuff:	输出缓冲区
	(4) stpRect:		需显示的大小
	(5) cpShadowBuff:	阴影数据缓冲区
返回值:	
	没有
最后修改日期:
	1999 05.13
\*---------------------------------------------------------------------------------------*/
DllExport void glbShowShadow(WORD cxStartX,
				  WORD cyStartY,
				  LPDIRECTDRAWSURFACE3  stpDestBuff,
				  RECT *stpRect, 
				  WORD *wpShadowBuff);

/*----------------------------------------------------------------------------------------*\
函数:
BOOL glbCheckImageColorKey(	WORD cxStartX,
						WORD cyStartY,
						WORD *wpSrcBuff)
功能:
	校验GLB图像数据的指定位置是否为透明色(图像数据必须为行压缩(RLE)
参数:
	cxStartX:		X开始位置
	cyStartY:		Y开始位置
	wpSrcBuff:	图像缓冲区
返回值:	
	FALSE:
		为透明色
	TRUE:
		有颜色
最后修改日期:
	1999 05.13
\*---------------------------------------------------------------------------------------*/
DllExport BOOL glbCheckImageColorKey(	WORD cxStartX,
						WORD cyStartY,
						WORD *wpSrcBuff);

/*----------------------------------------------------------------------------------------*\
函数:
	void glbShowImageFringe(	WORD cxStartX,
										WORD cyStartY,
										LPDIRECTDRAWSURFACE3  stpDestBuff,
										RECT *stpRect, 
										WORD *wpSrcBuff,
										WORD wFringeColor)
功能:
	在指定位置根据指定的宽度和高度(也就是考虑裁剪)显示GLB数
	据中的不带Alpha通道的图像数据(图像数据必须为行压缩(RLE)),
	并显示出边缘的轮廓
参数:
	cxStartX:		显示的X开始位置
	cyStartY:		显示的Y开始位置
	stpDestBuff:	输出缓冲区
	stpRect:		需显示的大小
	wpSrcBuff:		图像数据缓冲区
	wFringeColor:	边缘颜色
返回值:	
	没有
最后修改日期:
	1999 05.13
\*---------------------------------------------------------------------------------------*/
DllExport void glbShowImageFringe(	WORD cxStartX,
									WORD cyStartY,
									LPDIRECTDRAWSURFACE3  stpDestBuff,
									RECT *stpRect, 
									WORD *wpSrcBuff,
									WORD wFringeColor);

/*---------------------------------------------------------------*\
函数:
	void glbFastAddFilmShowImage(	WORD cxStartX,
                    						WORD cyStartY,
											LPDIRECTDRAWSURFACE3 stpDestBuff,
											RECT *stpRect,
											WORD *wpSrcBuff,
											WORD wTransparentColor,
											BYTE byTransparentScale)
功能:
	在指定位置根据图像实际宽度和高度(也就是不考虑裁剪),用指定的颜色与
	GLB数据中的不带Alpha通道的图像数据(图像数据必须为行压缩(RLE))的颜色
	值进行透明显示
参数:
	(1) cxStartX:		显示的X开始位置
	(2) cyStartY:		显示的Y开始位置
	(3) stpDestBuff:	输出缓冲区
	(4) stpRect:		图像的大小
	(5) wpSrcBuff:		图像数据
	(6) wTransparentColor:	透明的颜色值
	(7)	byTransparentScale:	透明的比例

返回值:
	没有

⌨️ 快捷键说明

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