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

📄 igeometry.h

📁 墨香最新私服
💻 H
📖 第 1 页 / 共 2 页
字号:
	virtual		DWORD		__stdcall	GetVertexListWithScreenCoord(HFIELD_POS* pVertexList,DWORD dwMaxVertexNum,RECT* pRect,DWORD dwViewportIndex) = 0;
	virtual		BOOL		__stdcall	GetVertexPosWithScreenCoord(DWORD* pdwPosX, DWORD* pdwPosZ, VECTOR3 OUT *pWhere, POINT* ptCursor, float fVertexRadius,DWORD dwViewportIndex) = 0;
	virtual		DWORD		__stdcall	GetObjectPosWithScreenCoord(VECTOR3* pv3IntersectPoint,POINT* ptCursor,DWORD dwViewportIndex) = 0;
	virtual		BOOL		__stdcall	GetTilePosWithScreenCoord(VECTOR3* pv3IntersectPoint,float* pfDist,DWORD* pdwPosX,DWORD* pdwPosZ,POINT* ptCursor,DWORD dwViewportIndex) = 0;
	virtual		BOOL		__stdcall	GetTileRectWithScreenCoord(VECTOR3* pv3IntersectPoint,float* pfDist,RECT* pRect,POINT* ptCursor,DWORD dwBrushSize,DWORD dwViewportIndex) = 0;
	virtual		BOOL		__stdcall	GetIntersectPointWithScreenCoord(VECTOR3* pv3IntersectPoint,float*pfDist,POINT* ptCursor,DWORD dwViewportIndex) = 0;
	virtual		BOOL		__stdcall	GetIntersectPointWithRay(VECTOR3* pv3IntersectPoint,float* pfDist,DWORD* pdwPosX,DWORD* pdwPosZ,VECTOR3* pv3Orig,VECTOR3* pv3Dir) = 0;
	
	virtual		BOOL		__stdcall	GetY(float* pfHeight,float x,float z) = 0;
	
	virtual		void		__stdcall	CalcXZ(float* px,float* pz,DWORD dwPosX,DWORD dwPosZ) = 0;
	virtual		void		__stdcall	CalcY(float* py,DWORD dwPosX,DWORD dwPosZ) = 0;
	virtual 	BOOL		__stdcall	ResetCollisionMesh() = 0;
	virtual		void		__stdcall	ResetHeight(float h) = 0;
	virtual		void		__stdcall	MakeHeightFieldHigh(DWORD dwX, DWORD dwZ, float fHeight, float fRadius,DWORD dwActionType) = 0;
	virtual 	BOOL		__stdcall	AdjustHeight(HFIELD_POS* pVertexList,DWORD dwVertexNum,float fValue,DWORD dwActionType) = 0;
	virtual		BOOL		__stdcall	InterpolateField(DWORD dwX, DWORD dwZ, float fBias, float fRadius) = 0;
	virtual		BOOL		__stdcall	SetTile(DWORD dwPosX,DWORD dwPosZ,WORD wTileIndex) = 0;
	virtual		BOOL		__stdcall	GetTile(WORD* pwTileIndex,DWORD dwPosX,DWORD dwPosZ) = 0;
	virtual		BOOL		__stdcall	SetTileRect(RECT* pRect,WORD wTileIndex) = 0;
	virtual		BOOL		__stdcall	SetTileList(HFIELD_POS* phfStart,HFIELD_POS* pTileList,WORD* pTexTileIndexList,DWORD dwTileNum,WORD wTileIndex) = 0;
	virtual		void		__stdcall	SetVertexColor(DWORD dwColor) = 0;

	virtual		BOOL		__stdcall	RenderVertex(HFIELD_POS* pVertexList,DWORD dwVertexNum,DWORD dwColor) = 0;
	virtual		BOOL		__stdcall	RenderTile(HFIELD_POS* phfStart,HFIELD_POS* pTileList,DWORD dwTileNum,WORD* pwTileIndexList,DWORD dwColor) = 0;
	virtual 	void		__stdcall	SetHeightFieldDetail(DWORD dwDetailLevel) = 0;
	virtual 	void		__stdcall	EnableRender(DWORD dwObjIndex) = 0;
	virtual		void		__stdcall	DisableRender(DWORD dwObjIndex) = 0;
	virtual		void		__stdcall	FreezeDetailLevel(DWORD dwObjIndex,DWORD dwDetailLevel) = 0;
	virtual		void		__stdcall	UnFreezeDetailLevel(DWORD dwObjIndex) = 0;
	virtual		BOOL		__stdcall	SetLightVertexel(POINT* ptCursor,VECTOR3* pv3IntersectPoint,float fRs,DWORD dwColor,DWORD dwViewportIndex) = 0;
	virtual		BOOL		__stdcall	GetLightVertexel(DWORD* pdwColor,POINT* ptCursor,VECTOR3* pv3IntersectPoint,DWORD dwViewportIndex) = 0;
	virtual 	void		__stdcall	Optimize() = 0;
	virtual 	DWORD		__stdcall	GetXZFrom3DCoord(HFIELD_POS* phfPos,DWORD dwMaxHFPosNum,VECTOR3* pv3IntersectPoint,float fRs) = 0;
	virtual		BOOL		__stdcall	SetAlphaTexel(POINT* ptCursor,VECTOR3* pv3IntersectPoint,float fRs,DWORD dwTileIndex,DWORD dwActionFlag,DWORD dwViewportIndex) = 0;
	virtual 	DWORD		__stdcall	GetExtTileIndexTop(POINT* ptCursor,VECTOR3* pv3IntersectPoint,DWORD dwViewportIndex) = 0;
	virtual		void		__stdcall	EnableBlend(BOOL bEnable) = 0;
	virtual 	void		__stdcall	UpdateAllTiles() = 0;
	
	virtual		void		__stdcall	ClearAlphaMapAll() = 0;
	virtual		void		__stdcall	ClearAlphaMapWithObjectIndex(DWORD dwObjIndex) = 0;
	virtual		void		__stdcall	ClearAlphaMapWithTileIndex(DWORD dwObjIndex,DWORD dwTileIndex) = 0;
	virtual		void		__stdcall	GetAlphaMapResourceStatus(DWORD* pdwMapNum,DWORD* pdwMemSize) = 0;

	virtual		DWORD		__stdcall	QueryNeedTriNumWithAABB(DWORD* pdwStartX,DWORD* pdwStartZ,DWORD* pdwWidthNum,DWORD* pdwHeightNum,MAABB* pAABB) = 0;
	virtual		DWORD		__stdcall	GetTriListWithAABB(VECTOR3* pv3TriListOut, DWORD dwMaxTriCount, MAABB* pAABB) = 0;

};

interface ISkyMesh : public IUnknown
{
	virtual		BOOL	__stdcall		Render(DWORD dwFlag) = 0;
	virtual		void	__stdcall		SetViewportIndex(DWORD dwViewportIndex) = 0;
	virtual		void	__stdcall		SetOffset(VECTOR3* pv3Offset) = 0;
	
	virtual		BOOL	__stdcall		CreateMotionList(DWORD dwNum) = 0;
	virtual		DWORD	__stdcall		AddMotion(char* szFileName,DWORD dwMotionIndex) = 0;	
	virtual		DWORD	__stdcall		GetMotionNum() = 0;
	virtual		BOOL	__stdcall		GetMotionDesc(MOTION_DESC* pMotionDesc,DWORD dwMotionIndex) = 0;
	virtual		DWORD	__stdcall		GetCurrentMotionIndex() = 0;
	virtual		void	__stdcall		SetCurrentMotionIndex(DWORD dwMotionIndex) = 0;
	virtual		DWORD	__stdcall		GetCurrentFrame() = 0;
	virtual		void	__stdcall		SetCurrentFrame(DWORD dwFrame) = 0;
	virtual		DWORD	__stdcall		GetAlpha() = 0;
	virtual		void	__stdcall		SetAlpha(DWORD dwAlpha) = 0;
	virtual		void	__stdcall		IncreaseFrame(DWORD dwIncFrame) = 0;
};
interface I4DyuchiGXGeometry : public IUnknown
{
	virtual		BOOL			__stdcall	Initialize(I4DyuchiGXRenderer* pRenderer,I4DyuchiFileStorage* pFileStorage,DWORD dwViewportNum,DWORD dwMaxFileNum,DWORD dwMaxBucketNum,ErrorHandleProc pErrorHandleFunc) = 0;
	virtual		ULONG			__stdcall 	LoadModel(I3DModel** ppModel,char* szFileName,DWORD dwFlag) = 0;
	virtual		BOOL			__stdcall	IsLoadedModel(I3DModel** ppModel,char* szFileName) = 0;
	virtual		ULONG			__stdcall	CreateHeightField(IHeightField** ppHeightField,DWORD dwFlag) = 0;
	virtual 	ULONG			__stdcall	CreateStaticModel(I3DStaticModel** ppStaticModel,DWORD dwMaxObjectNum,DWORD dwMaxMtlNum,DWORD dwFlag) = 0;
	virtual		ULONG			__stdcall	CreateSkyMesh(ISkyMesh** ppSkyMesh,char* szFileName,DWORD dwFlag) = 0;
	
	virtual		BOOL			__stdcall	BeginRender(DWORD dwViewportIndex,DWORD dwColor,DWORD dwFlag) = 0;
	virtual		void			__stdcall	EndRender() = 0;
	virtual		void			__stdcall	Present(HWND hWnd) = 0;
		
	virtual		BOOL			__stdcall 	RenderModel(I3DModel* pModel,DWORD dwRefIndex,MATRIX4* pParentMat,MATRIX4* pTransformMat,DWORD dwFrame,DWORD dwMotionIndex,DWORD dwAlpha,DWORD dwMtlSetIndex,DWORD dwEffectIndex,DWORD dwFlag) = 0;
	virtual		BOOL			__stdcall	RenderStaticModel(I3DStaticModel* pModel,DWORD dwObjIndex,DWORD dwAlpha,DWORD dwMtlSetIndex,DWORD dwFlag) = 0;
	virtual		BOOL			__stdcall	RenderHField(IHeightField* pHField,DWORD dwObjIndex,DWORD dwAlpha,DWORD dwFlag) = 0;
	virtual		BOOL			__stdcall	RenderSprite(IDISpriteObject* pSprite,VECTOR2* pv2Scaling,float fRot,VECTOR2* pv2Trans,RECT* pRect,DWORD dwColor,int iZOrder,DWORD dwFlag) = 0;
	virtual		BOOL			__stdcall	RenderFont(IDIFontObject* pFont,TCHAR* str,DWORD dwLen,RECT* pRect,DWORD dwColor,CHAR_CODE_TYPE type,int iZOrder,DWORD dwFlag) = 0;
	virtual 	BOOL			__stdcall	RenderLight(LIGHT_DESC* pLightDesc,DWORD dwAlphaFlag,DWORD dwRenderFlag) = 0;
	virtual		void			__stdcall	RenderSphere(VECTOR3* pv3Point,float fRs,DWORD dwColor) = 0;
	virtual		void			__stdcall	RenderBox(VECTOR3* pv3Oct,DWORD dwColor) = 0;
	virtual		BOOL			__stdcall	RenderSkyMesh(ISkyMesh* pSkyMesh,DWORD dwFlag) = 0;

	

	virtual		DWORD			__stdcall	CreateDynamicLight(DWORD dwRS,DWORD dwColor,char* szFileName) = 0;
	virtual		BOOL			__stdcall	DeleteDynamicLight(DWORD dwIndex) = 0;
	virtual		BOOL			__stdcall	AddLight(LIGHT_DESC* pLight,DWORD dwFlag) = 0;
	
	virtual		void			__stdcall	SetShadowFlag(DWORD dwFlag) = 0;
	virtual		DWORD			__stdcall	GetShadowFlag() = 0;
	virtual 	void			__stdcall	SetLightFlag(DWORD dwFlag) = 0;
	virtual		DWORD			__stdcall	GetLightFlag() = 0;


	virtual		void			__stdcall	GetProjectionMatrix(MATRIX4* pMatrix,DWORD dwViewportIndex) = 0;
	virtual		void			__stdcall	GetViewMatrix(MATRIX4* pMatrix,DWORD dwViewportIndex) = 0;
	virtual		void			__stdcall	GetViewVolume(VIEW_VOLUME* pVolume,DWORD dwViewportIndex) = 0;
	virtual		BOOL			__stdcall	GetRayWithScreenCoord(VECTOR3* pv3Pos,VECTOR3* pv3Dir,POINT* pt,DWORD dwViewportIndex) = 0;
	virtual		void			__stdcall	GetViewport(SHORT_RECT* pClipRect,WORD* pwWidth,WORD* pwHeight,DWORD dwViewportIndex) = 0;
	virtual		void			__stdcall	SetViewport(SHORT_RECT* pRect,DWORD dwViewportIndex) = 0;
	
	virtual		BOOL			__stdcall	ResetCamera(VECTOR3* pv3Eye,float fNear,float fFar,float fFovX,DWORD dwViewportIndex) = 0;
	virtual		BOOL			__stdcall	MoveCamera(VECTOR3* pv3Trans,DWORD dwViewportIndex) = 0;
	virtual		BOOL			__stdcall	SetCameraPos(VECTOR3* pv3Eye,DWORD dwViewportIndex) = 0;
	virtual		BOOL			__stdcall	SetCameraViewDistance(float fNear,float fFar,DWORD dwViewportIndex) = 0;
	virtual		BOOL			__stdcall	SetCameraFitModel(I3DModel* pModel,DWORD dwRefIndex,float fNear,float fFar,float fFovX,DWORD dwViewportIndex) = 0;
	virtual		BOOL			__stdcall	SetCameraFitCollisionMesh(COLLISION_MESH_OBJECT_DESC* pColMeshDesc,float fNear,float fFar,float fFovX,DWORD dwViewportIndex) = 0;
	virtual		void			__stdcall	SetFog(FOG_DESC* pFogDesc,DWORD dwViewportIndex) = 0;
	virtual		void			__stdcall	EnableFog(DWORD dwViewportIndex) = 0;
	virtual		void			__stdcall	DisableFog(DWORD dwViewportIndex) = 0;
	
	virtual		void			__stdcall	SetDirectionalLight(DIRECTIONAL_LIGHT_DESC* pLight,DWORD dwViewportIndex) = 0;
	virtual		void			__stdcall	GetDirectionalLight(DIRECTIONAL_LIGHT_DESC* pLight,DWORD dwViewportIndex) = 0;
	virtual		void			__stdcall	EnableDirectionalLight(DWORD dwViewportIndex) = 0;
	virtual		void			__stdcall	DisableDirectionalLight(DWORD dwViewportIndex) = 0;

	virtual		void			__stdcall	GetCameraDesc(CAMERA_DESC* pCamera,DWORD dwViewportIndex) = 0;
	virtual		void			__stdcall	SetCameraDesc(CAMERA_DESC* pCamera,DWORD dwViewportIndex) = 0;

	virtual		void			__stdcall	SetCameraAngleRad( VECTOR3* pv3Rotate,DWORD dwViewportIndex) = 0;	/// 眠啊. 2002/02/05
	virtual		void			__stdcall	RotateCameraRad( VECTOR3* pv3Rotate,DWORD dwViewportIndex) = 0;
	virtual		void			__stdcall	GetCameraAngleRad(VECTOR3* pv3Angle,DWORD dwViewportIndex) = 0;
	
	virtual		BOOL			__stdcall	GetIntersectPointWithScreenCoord(VECTOR3* pv3Pos,PLANE* pPlane,POINT* ptCursor,DWORD dwViewportIndex) = 0;
	

	virtual		void			__stdcall	SetAmbientColor(DWORD dwViewportIndex,DWORD dwColor) = 0;
	virtual		DWORD			__stdcall	GetAmbientColor(DWORD dwViewportIndex) = 0;
	
	virtual		void			__stdcall	SetEmissiveColor(DWORD dwViewportIndex,DWORD dwColor) = 0;
	virtual		DWORD			__stdcall	GetEmissiveColor(DWORD dwViewportIndex) = 0;

	virtual		void			__stdcall	SetDrawDebugFlag(DWORD dwFlag) = 0;
	virtual		DWORD			__stdcall	GetDrawDebugFlag() = 0;

	virtual		void			__stdcall	EnableViewVolumeClip() = 0;
	virtual		void			__stdcall	DisableViewVolumeClip() = 0;
	virtual		void			__stdcall	GetSystemStatus(SYSTEM_STATUS* pStatus) = 0;
	virtual		void			__stdcall	UpdateWindowSize() = 0;
	virtual		BOOL			__stdcall	PreLoadModel(char* szFileName) = 0;
	virtual		BOOL			__stdcall	PreLoadMotion(char* szFileName) = 0;
	virtual 	BOOL			__stdcall	PreLoadMaterial(char* szFileName) = 0;
	virtual		void			__stdcall	UnloadAllPreLoadedItem(DWORD dwFlag) = 0;
	virtual		BOOL			__stdcall	DisableUnloadPreLoadedResource(char* szFileName) = 0;
	virtual		BOOL			__stdcall	EnableUnloadPreLoadedResource(char* szFileName) = 0;

	virtual 	DWORD			__stdcall	GetReadCountInMOD(char* szFileName) = 0;
	virtual		DWORD			__stdcall	GetReadCountInSTM(char* szFileName) = 0;
	virtual		DWORD			__stdcall	GetReadCountInHField(char* szFileName) = 0;
	virtual 	void			__stdcall	CalcViewVolume(VIEW_VOLUME* pVV,RECT* pRect,DWORD dwViewportIndex) = 0;
	virtual		void			__stdcall 	GetCameraEyePlane(PLANE* pPlane,DWORD dwViewportIndex) = 0;
	virtual 	void			__stdcall	GetBillBoardMatrix(MATRIX4* pMat,DWORD dwViewportIndex) = 0;
	virtual		void			__stdcall	GetCameraAttachedMatrix(MATRIX4* pMat,DWORD dwViewportIndex,float fDist) = 0;
	virtual		void			__stdcall	SetTickCount(DWORD dwTick,BOOL bGameFrame) = 0;
	virtual		void			__stdcall	SetRadiusForLoadResource(float fRS) = 0;


};



⌨️ 快捷键说明

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