亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? terrain.h

?? game programing code
?? H
?? 第 1 頁 / 共 2 頁
字號:
	// Description:		A function to get the true height value (0-255) at a point
	// Arguments:		-iX, iZ: which height value to retrieve
	// Return Value:	An float value: the true height at
	//					the given point
	//--------------------------------------------------------------
	inline unsigned char GetTrueHeightAtPoint( int x, int z )
	{	return ( m_heightData.m_ucpData[( z*m_iSize )+x] );	}

	//--------------------------------------------------------------
	// Name:			CTERRAIN::GetScaledHeightAtPoint - public
	// Description:		Retrieve the scaled height at a given point
	// Arguments:		-iX, iZ: which height value to retrieve
	// Return Value:	A float value: the scaled height at the given
	//					point.
	//--------------------------------------------------------------
	inline float GetScaledHeightAtPoint( int x, int z )
	{	return ( ( float )( m_heightData.m_ucpData[( z*m_iSize )+x] )*m_vecScale[1] );	}

	//--------------------------------------------------------------
	// Name:			CTERRAIN::SaveTextureMap - public
	// Description:		Save the current texture map to a file
	// Arguments:		-szFilename: Name of the file to save to
	// Return Value:	A boolean value: -true: successful save
	//									 -false: unsuccessful save
	//--------------------------------------------------------------
	inline bool SaveTextureMap( char* szFilename )
	{
		//first check to see if a texture is loaded, if so, save it!
		if( m_texture.IsLoaded( ) )
			return ( m_texture.Save( szFilename ) );

		return false;
	}

	//--------------------------------------------------------------
	// Name:			CTERRAIN::LoadTexture - public
	// Description:		Load a texture map for the terrain
	// Arguments:		-szFilename: Name of the file to load
	// Return Value:	A boolean value: -true: successful load
	//									 -false: unsuccessful load
	//--------------------------------------------------------------
	inline bool LoadTexture( char* szFilename )
	{	return m_texture.Load( szFilename, GL_LINEAR, GL_LINEAR, false );	}

	//--------------------------------------------------------------
	// Name:			CTERRAIN::UnloadTexture - public
	// Description:		Unload the terrain's texture
	// Arguments:		None
	// Return Value:	None
	//--------------------------------------------------------------
	inline void UnloadTexture( void )
	{	m_texture.Unload( );	}

	//--------------------------------------------------------------
	// Name:			CTERRAIN::LoadDetailMap - public
	// Description:		Load a detail map to add realism to the terrain
	// Arguments:		-szFilename: Name of the file to load
	// Return Value:	A boolean value: -true: successful load
	//									 -false: unsuccessful load
	//--------------------------------------------------------------
	inline bool LoadDetailMap( char* szFilename )
	{	return m_detailMap.Load( szFilename, GL_LINEAR_MIPMAP_LINEAR, GL_LINEAR, true );	}

	//--------------------------------------------------------------
	// Name:			CTERRAIN::UnloadDetailMap - public
	// Description:		Unload the terrain's detail map
	// Arguments:		None
	// Return Value:	None
	//--------------------------------------------------------------
	inline void UnloadDetailMap( void )
	{	m_detailMap.Unload( );	}

	//--------------------------------------------------------------
	// Name:			CTERRAIN::DoDetailMapping - public
	// Description:		Do a detail map texture pass (which is much more
	//					economical if we can use hardware multitexturing)
	// Arguments:		-bDo: Do detail mapping or not
	// Return Value:	None
	//--------------------------------------------------------------
	inline void DoDetailMapping( bool bDo, int iRepeatNum )
	{
		m_bDetailMapping  = bDo;
		m_iRepeatDetailMap= iRepeatNum;
	}

	//--------------------------------------------------------------
	// Name:			CTERRAIN::DoTextureMapping - public
	// Description:		Do texturing (large color map)
	// Arguments:		-bDo: Do texture mapping or not
	// Return Value:	None
	//--------------------------------------------------------------
	inline void DoTextureMapping( bool bDo )
	{	m_bTextureMapping= bDo;	}

	//--------------------------------------------------------------
	// Name:			CTERRAIN::DoMultitexturing - public
	// Description:		Do hardware multitexturing
	// Arguments:		-bDo: Use hardware multitexturing or not
	// Return Value:	None
	//--------------------------------------------------------------
	inline void DoMultitexturing( bool bDo )
	{	m_bMultitexture= bDo;	}

	//--------------------------------------------------------------
	// Name:			CTERRAIN::LoadTile - public
	// Description:		Load a single tile for the texture generation
	// Arguments:		-tileType: the tile type to load
	//					-szFilename: filename of the tile to load in
	// Return Value:	A boolean value: -true: successful load
	//									 -false: unsuccessful load
	//--------------------------------------------------------------
	inline bool LoadTile( ETILE_TYPES tileType, char* szFilename )
	{	return m_tiles.textureTiles[tileType].LoadData( szFilename );	}

	//--------------------------------------------------------------
	// Name:			CTERRAIN::UnloadTile - public
	// Description:		Unload a single tile
	// Arguments:		-tileType: the texture which is currently loaded
	//							   for this tile type
	// Return Value:	None
	//--------------------------------------------------------------
	inline void UnloadTile( ETILE_TYPES tileType )
	{	m_tiles.textureTiles[tileType].Unload( );	}

	//--------------------------------------------------------------
	// Name:			CTERRAIN::UnloadAllTiles - public
	// Description:		Unload all tiles for the texture generation
	// Arguments:		None
	// Return Value:	None
	//--------------------------------------------------------------
	inline void UnloadAllTiles( void )
	{
		UnloadTile( LOWEST_TILE );
		UnloadTile( LOW_TILE );
		UnloadTile( HIGH_TILE );
		UnloadTile( HIGHEST_TILE );
	}

	//--------------------------------------------------------------
	// Name:			CTERRAIN::SetLightingType - public
	// Description:		Set the lighting technique to be used
	// Arguments:		-lightingType: which lighting technique to use
	// Return Value:	None
	//--------------------------------------------------------------
	inline void SetLightingType( ELIGHTING_TYPES lightingType )
	{	m_lightingType= lightingType;	}

	//--------------------------------------------------------------
	// Name:			CTERRAIN::SetBrightnessAtPoint - public
	// Description:		A function to set the brightness value at a
	//					certain point in a lightmap
	// Arguments:		-x, z: which height value to set
	//					-ucBrightness: value to set the lightmap pixel to
	// Return Value:	None
	//--------------------------------------------------------------
	inline void SetBrightnessAtPoint( int x, int z, unsigned char ucBrightness )
	{	m_lightmap.m_ucpData[( z*m_lightmap.m_iSize )+x]= ucBrightness;	}

	//--------------------------------------------------------------
	// Name:			CTERRAIN::GetBrightnessAtPoint - public
	// Description:		A function to get the brightness value at a
	//					certain point in a lightmap
	// Arguments:		-x, z: which height value to retrieve
	// Return Value:	An unsigned char value: the brightness
	//--------------------------------------------------------------
	inline unsigned char GetBrightnessAtPoint( int x, int z )
	{	return ( m_lightmap.m_ucpData[( z*m_lightmap.m_iSize )+x] );	}

	//--------------------------------------------------------------
	// Name:			CTERRAIN::SetLightColor - public
	// Description:		Set the color of the terrain's lighting system
	// Arguments:		-vecColor: the color of the light
	// Return Value:	None
	//--------------------------------------------------------------
	inline void SetLightColor( CVECTOR vecColor )
	{	m_vecLightColor= vecColor;	}

	//--------------------------------------------------------------
	// Name:			CTERRAIN::CustomizeSlopeLighting - public
	// Description:		Customize the parameters for slope lighting
	// Arguments:		-iDirX, iDirZ: direction of the light, which can only
	//					               be a whole number.
	//					-fSoftness: the softness of the shadows
	//					-fMinBrightness, fMaxBrightness: the min/max brightness
	//													 of the light
	// Return Value:	None
	//--------------------------------------------------------------
	inline void CustomizeSlopeLighting( int iDirX, int iDirZ, 
										float fMinBrightness, float fMaxBrightness, float fSoftness )
	{
		//set the light direction
		m_iDirectionX= iDirX;
		m_iDirectionZ= iDirZ;

		//set the min/max shading values
		m_fMinBrightness= fMinBrightness;
		m_fMaxBrightness= fMaxBrightness;

		//the light's softness
		m_fLightSoftness= fSoftness;
	}

	CTERRAIN( void ) : m_vecLightColor( 1.0f, 1.0f, 1.0f ), m_vecScale( 1.0f, 1.0f, 1.0f )
	{	}
	~CTERRAIN( void )
	{	}
};

#endif	//__TERRAIN_H__

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
国产激情一区二区三区四区| 成人av第一页| 国产精品少妇自拍| 91精品国产高清一区二区三区| 成人午夜精品在线| 精品影视av免费| 视频一区二区欧美| 亚洲激情男女视频| 中文字幕免费观看一区| 日韩片之四级片| 欧美美女bb生活片| 91精品1区2区| 成人免费视频app| 国产综合一区二区| 日韩成人精品在线观看| 亚洲一区二区三区影院| 国产精品伦理一区二区| 久久久久久久久蜜桃| 制服丝袜亚洲色图| 欧美日韩免费一区二区三区 | 69成人精品免费视频| 91麻豆6部合集magnet| 国产成人精品免费| 国产精品自拍网站| 国产美女在线观看一区| 激情国产一区二区| 奇米影视一区二区三区小说| 亚洲高清在线视频| 一区二区三区小说| 亚洲欧美一区二区三区极速播放| 国产精品伦理一区二区| 国产精品丝袜久久久久久app| 欧美精品一区二区蜜臀亚洲| 日韩欧美综合在线| 久久夜色精品一区| 久久亚洲精精品中文字幕早川悠里| 日韩午夜三级在线| 精品国产成人在线影院| 久久婷婷久久一区二区三区| www久久精品| 日本一区二区在线不卡| 欧美极品另类videosde| 国产精品麻豆欧美日韩ww| 欧美国产欧美综合| 亚洲欧洲性图库| 一区二区三区高清不卡| 午夜天堂影视香蕉久久| 三级久久三级久久| 老司机精品视频一区二区三区| 精品一区二区av| 成人小视频免费在线观看| 成人在线视频首页| 91小视频免费看| 欧美三级日本三级少妇99| 欧美另类久久久品| 精品日韩一区二区| 中文字幕欧美区| 夜夜嗨av一区二区三区四季av| 一区二区三区中文字幕电影| 性欧美大战久久久久久久久| 青青草一区二区三区| 国产一区二区在线观看视频| 成人高清视频在线观看| 欧美婷婷六月丁香综合色| 91精品国产全国免费观看 | 国产精品美女久久久久av爽李琼| 成人欧美一区二区三区1314| 一区二区在线观看视频| 免费观看91视频大全| 国产成人免费在线观看| 日本韩国欧美在线| 日韩午夜在线观看| 亚洲欧美自拍偷拍色图| 亚洲成av人影院在线观看网| 国产一区二区福利| 91传媒视频在线播放| 欧美videossexotv100| 中文天堂在线一区| 天堂成人国产精品一区| 高清成人在线观看| 欧美午夜电影一区| 久久精品一区二区三区av| 亚洲免费观看高清完整| 麻豆精品精品国产自在97香蕉| 成人午夜av电影| 在线播放国产精品二区一二区四区 | 国产精品久久久久久久蜜臀| 天天做天天摸天天爽国产一区| 国产毛片精品视频| 欧美人动与zoxxxx乱| 国产色91在线| 免费观看日韩av| 在线视频综合导航| 国产网站一区二区| 日韩av电影免费观看高清完整版 | 欧美激情资源网| 日韩高清不卡一区| 99精品视频在线观看免费| 日韩一区二区视频在线观看| 亚洲天堂成人网| 国产乱人伦偷精品视频免下载| 欧美日韩国产123区| 国产精品伦一区| 精品一区二区三区在线播放视频 | 亚洲视频图片小说| 激情五月播播久久久精品| 欧美午夜寂寞影院| 亚洲视频香蕉人妖| 成人午夜视频在线| 久久久美女艺术照精彩视频福利播放 | 国产精品三级av| 国内精品免费在线观看| 91精品国产福利| 午夜伦理一区二区| 一本大道久久a久久综合婷婷| 国产日韩精品一区| 国内成人免费视频| 日韩美女视频在线| 亚洲成人自拍网| 色婷婷激情久久| 亚洲三级小视频| 99精品久久99久久久久| 欧美韩日一区二区三区| 国产乱子轮精品视频| 久久综合九色综合97_久久久| 日韩黄色小视频| 欧美精品一卡两卡| 五月天一区二区三区| 精品视频免费看| 天天操天天干天天综合网| 欧美日韩精品一区二区三区四区 | 久久99蜜桃精品| 日韩三级伦理片妻子的秘密按摩| 日韩精品亚洲专区| 欧美一区二区三区视频| 日韩黄色免费电影| 日韩欧美色综合| 黄页网站大全一区二区| 精品国产乱码久久久久久闺蜜 | 色婷婷久久久久swag精品| 亚洲天堂精品视频| 欧美性xxxxxxxx| 亚洲一二三四区| 欧美久久久久久蜜桃| 日本亚洲三级在线| 欧美精品一区二区精品网| 极品尤物av久久免费看| 久久久一区二区| 成人av在线影院| 一区二区三区中文免费| 欧美精品1区2区| 激情综合网最新| 国产精品三级电影| 91久久精品网| 免费观看成人av| 国产日韩欧美在线一区| 99久久精品久久久久久清纯| 亚洲国产综合人成综合网站| 欧美一级淫片007| 国产白丝网站精品污在线入口| 综合色中文字幕| 69p69国产精品| 成人永久看片免费视频天堂| 亚洲精品乱码久久久久久 | 亚洲精品免费电影| 一片黄亚洲嫩模| 国产99久久久精品| 韩国女主播成人在线观看| 三级一区在线视频先锋| 亚洲欧美精品午睡沙发| 亚洲免费在线观看| 久久精品国产澳门| 成人黄色小视频| 成人免费看片app下载| 国产精品一区二区果冻传媒| 国产一区二区美女| 国产精品影视在线观看| 国产曰批免费观看久久久| 麻豆精品新av中文字幕| 久久不见久久见中文字幕免费| 国内精品国产三级国产a久久| 国产一区二区女| 色综合久久综合网欧美综合网| 日本久久电影网| 欧美极品少妇xxxxⅹ高跟鞋| 亚洲国产电影在线观看| 一个色综合网站| heyzo一本久久综合| 欧美视频一二三区| 一区二区三区在线免费观看 | 自拍偷拍亚洲综合| 中文乱码免费一区二区| ...xxx性欧美| 日本欧美一区二区| 国产精品一区一区三区| 亚洲国产精华液网站w | 久久se精品一区精品二区| 国产成人午夜高潮毛片| 亚洲成年人影院| 国产精品第五页|