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

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關(guān)于我們
? 蟲蟲下載站

?? d3dutility.h

?? Introduction to directx9 3d game programming 一書的源代碼
?? H
字號(hào):
//////////////////////////////////////////////////////////////////////////////////////////////////
// 
// File: d3dutility.h
// 
// Author: Frank Luna (C) All Rights Reserved
//
// System: AMD Athlon 1800+ XP, 512 DDR, Geforce 3, Windows XP, MSVC++ 7.0 
//
// Desc: Provides utility functions for simplifying common tasks.
//          
//////////////////////////////////////////////////////////////////////////////////////////////////

#ifndef __d3dUtilityH__
#define __d3dUtilityH__

#include <d3dx9.h>
#include <string>
#include <limits>

namespace d3d
{
	//
	// Init
	//
	bool InitD3D(
		HINSTANCE hInstance,       // [in] Application instance.
		int width, int height,     // [in] Backbuffer dimensions.
		bool windowed,             // [in] Windowed (true)or full screen (false).
		D3DDEVTYPE deviceType,     // [in] HAL or REF
		IDirect3DDevice9** device);// [out]The created device.

	int EnterMsgLoop( 
		bool (*ptr_display)(float timeDelta));

	LRESULT CALLBACK WndProc(
		HWND hwnd,
		UINT msg, 
		WPARAM wParam,
		LPARAM lParam);

	//
	// Cleanup
	//
	template<class T> void Release(T t)
	{
		if( t )
		{
			t->Release();
			t = 0;
		}
	}
		
	template<class T> void Delete(T t)
	{
		if( t )
		{
			delete t;
			t = 0;
		}
	}

	//
	// Colors
	//
	const D3DXCOLOR      WHITE( D3DCOLOR_XRGB(255, 255, 255) );
	const D3DXCOLOR      BLACK( D3DCOLOR_XRGB(  0,   0,   0) );
	const D3DXCOLOR        RED( D3DCOLOR_XRGB(255,   0,   0) );
	const D3DXCOLOR      GREEN( D3DCOLOR_XRGB(  0, 255,   0) );
	const D3DXCOLOR       BLUE( D3DCOLOR_XRGB(  0,   0, 255) );
	const D3DXCOLOR     YELLOW( D3DCOLOR_XRGB(255, 255,   0) );
	const D3DXCOLOR       CYAN( D3DCOLOR_XRGB(  0, 255, 255) );
	const D3DXCOLOR    MAGENTA( D3DCOLOR_XRGB(255,   0, 255) );

	const D3DXCOLOR BEACH_SAND( D3DCOLOR_XRGB(255, 249, 157) );
	const D3DXCOLOR DESERT_SAND( D3DCOLOR_XRGB(250, 205, 135) );

	const D3DXCOLOR LIGHTGREEN( D3DCOLOR_XRGB( 60, 184, 120) );
	const D3DXCOLOR  PUREGREEN( D3DCOLOR_XRGB(  0, 166,  81) );
	const D3DXCOLOR  DARKGREEN( D3DCOLOR_XRGB(  0, 114,  54) );

	const D3DXCOLOR LIGHT_YELLOW_GREEN( D3DCOLOR_XRGB(124, 197, 118) );
	const D3DXCOLOR  PURE_YELLOW_GREEN( D3DCOLOR_XRGB( 57, 181,  74) );
	const D3DXCOLOR  DARK_YELLOW_GREEN( D3DCOLOR_XRGB( 25, 123,  48) );

	const D3DXCOLOR LIGHTBROWN(D3DCOLOR_XRGB(198, 156, 109));
	const D3DXCOLOR DARKBROWN( D3DCOLOR_XRGB(115, 100,  87));

	//
	// Lights
	//

	D3DLIGHT9 InitDirectionalLight(D3DXVECTOR3* direction, D3DXCOLOR* color);
	D3DLIGHT9 InitPointLight(D3DXVECTOR3* position, D3DXCOLOR* color);
	D3DLIGHT9 InitSpotLight(D3DXVECTOR3* position, D3DXVECTOR3* direction, D3DXCOLOR* color);

	//
	// Materials
	//

	D3DMATERIAL9 InitMtrl(D3DXCOLOR a, D3DXCOLOR d, D3DXCOLOR s, D3DXCOLOR e, float p);

	const D3DMATERIAL9 WHITE_MTRL  = InitMtrl(WHITE, WHITE, WHITE, BLACK, 2.0f);
	const D3DMATERIAL9 RED_MTRL    = InitMtrl(RED, RED, RED, BLACK, 2.0f);
	const D3DMATERIAL9 GREEN_MTRL  = InitMtrl(GREEN, GREEN, GREEN, BLACK, 2.0f);
	const D3DMATERIAL9 BLUE_MTRL   = InitMtrl(BLUE, BLUE, BLUE, BLACK, 2.0f);
	const D3DMATERIAL9 YELLOW_MTRL = InitMtrl(YELLOW, YELLOW, YELLOW, BLACK, 2.0f);

	//
	// Bounding Objects
	//

	struct BoundingBox
	{
		BoundingBox();

		bool isPointInside(D3DXVECTOR3& p);

		D3DXVECTOR3 _min;
		D3DXVECTOR3 _max;
	};

	struct BoundingSphere
	{
		BoundingSphere();

		D3DXVECTOR3 _center;
		float       _radius;
	};

	//
	// Constants
	//

	const float INFINITY = FLT_MAX;
	const float EPSILON  = 0.001f;

	//
	// Drawing
	//

	// Function references "desert.bmp" internally.  This file must
	// be in the working directory.
	bool DrawBasicScene(
		IDirect3DDevice9* device,// Pass in 0 for cleanup.
		float scale);            // uniform scale 

	//
	// Vertex Structures
	//

	struct Vertex
	{
		Vertex(){}
		Vertex(float x, float y, float z, 
			float nx, float ny, float nz,
			float u, float v)
		{
			_x  = x;  _y  = y;  _z  = z;
			_nx = nx; _ny = ny; _nz = nz;
			_u  = u;  _v  = v;
		}
		float _x, _y, _z;
		float _nx, _ny, _nz;
		float _u, _v;

		static const DWORD FVF;
	};

	//
	// Randomness
	//

	// Desc: Return random float in [lowBound, highBound] interval.
	float GetRandomFloat(float lowBound, float highBound);
	

	// Desc: Returns a random vector in the bounds specified by min and max.
	void GetRandomVector(
		D3DXVECTOR3* out,
		D3DXVECTOR3* min,
		D3DXVECTOR3* max);

	//
	// Conversion
	//
	DWORD FtoDw(float f);

	//
	// Interpolation
	//

	float Lerp(float a, float b, float t);
}

#endif // __d3dUtilityH__

?? 快捷鍵說明

復(fù)制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號(hào) Ctrl + =
減小字號(hào) Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
久久新电视剧免费观看| 97se亚洲国产综合在线| 欧美一级欧美一级在线播放| 亚洲一区二区中文在线| 欧美日本韩国一区二区三区视频| 偷窥少妇高潮呻吟av久久免费| 欧美日韩在线播| 日本大胆欧美人术艺术动态| 欧美一级午夜免费电影| 黄色小说综合网站| 中文字幕第一区第二区| 日本福利一区二区| 日韩av一级片| 国产欧美一区二区精品性色| 91欧美一区二区| 日韩高清在线观看| 欧美r级在线观看| 懂色中文一区二区在线播放| 亚洲视频在线观看三级| 欧美精品乱码久久久久久按摩| 麻豆成人av在线| 亚洲国产精品ⅴa在线观看| 91九色02白丝porn| 久久av中文字幕片| 亚洲欧美日韩中文字幕一区二区三区| 欧美性xxxxxx少妇| 国产一区二区主播在线| 亚洲精品中文字幕乱码三区| 5月丁香婷婷综合| 成人黄页在线观看| 美女视频一区二区| 亚洲视频 欧洲视频| 精品少妇一区二区三区 | gogo大胆日本视频一区| 亚洲电影一级黄| 久久精品人人做人人爽97| 欧美午夜影院一区| 成人av电影在线网| 日韩精品亚洲一区| 中文字幕在线不卡| 亚洲精品一区二区三区香蕉| 欧美偷拍一区二区| 成人久久久精品乱码一区二区三区| 亚洲午夜精品17c| 久久精品亚洲麻豆av一区二区 | 日韩精品乱码免费| 中文字幕亚洲一区二区av在线| 欧美大片一区二区| 精品视频色一区| 99re在线精品| 国产成人av一区| 久久精工是国产品牌吗| 婷婷久久综合九色国产成人| 亚洲欧洲无码一区二区三区| 2021中文字幕一区亚洲| 欧美日韩国产小视频| 91福利国产成人精品照片| 成人精品一区二区三区四区 | 国产性色一区二区| 日韩亚洲欧美综合| 91精品免费观看| 欧美亚洲国产一区在线观看网站 | 久久久精品国产免费观看同学| 欧美精品日日鲁夜夜添| 欧美色图激情小说| 在线免费一区三区| 色婷婷综合久久久久中文一区二区| 国产精品一二三区在线| 国产一区二区精品久久91| 喷水一区二区三区| 日韩电影免费在线| 日本欧美在线看| 五月天一区二区三区| 亚洲一区二区三区四区在线| 亚洲男人天堂一区| 亚洲乱码国产乱码精品精可以看| 国产精品福利电影一区二区三区四区| 国产婷婷精品av在线| 久久久www成人免费无遮挡大片 | av高清久久久| 91啪在线观看| 欧美视频自拍偷拍| 欧美精品123区| 欧美一区二区三区视频免费播放 | 欧美极品aⅴ影院| 国产精品美女久久久久久久久 | 久久99热99| 韩国女主播一区| 国产不卡一区视频| www.亚洲色图.com| 欧美这里有精品| 7777精品伊人久久久大香线蕉的 | 国产成人精品免费一区二区| 国产精品亚洲午夜一区二区三区| 国产曰批免费观看久久久| 国产精品中文字幕欧美| 成人午夜精品在线| 色综合久久中文字幕综合网| 欧美色视频一区| 欧美一区二区视频在线观看2022| 日韩欧美一级精品久久| 国产欧美在线观看一区| 一区二区三区在线观看网站| 丝袜诱惑亚洲看片| 国产一区二区不卡| 91在线视频18| 在线成人小视频| 国产亚洲欧美激情| 国产原创一区二区| 色一情一伦一子一伦一区| 欧美一区二区三级| 国产精品蜜臀av| 日本视频免费一区| av一区二区三区| 7777精品伊人久久久大香线蕉经典版下载 | 99久久久免费精品国产一区二区| 色综合色狠狠综合色| 欧美一区二区三区爱爱| 国产精品超碰97尤物18| 亚洲福利电影网| 国产成人在线电影| 欧美肥大bbwbbw高潮| 久久精品人人做人人综合 | 欧美最猛性xxxxx直播| 日韩视频一区二区三区在线播放| 国产农村妇女精品| 亚洲mv在线观看| 国产成人精品亚洲日本在线桃色| 欧美视频在线不卡| 久久精品欧美日韩精品| 五月激情综合婷婷| 成人久久视频在线观看| 日韩免费一区二区| 亚洲国产日韩一级| 菠萝蜜视频在线观看一区| 日韩午夜小视频| 一区二区三区加勒比av| 国产福利一区在线| 日韩一区二区三区电影在线观看| 国产精品成人免费精品自在线观看| 另类人妖一区二区av| 欧美在线观看一二区| 国产精品卡一卡二卡三| 久久国产尿小便嘘嘘| 欧美日韩国产区一| 一区二区三区免费| 99r精品视频| 国产精品毛片高清在线完整版| 极品美女销魂一区二区三区免费| 欧美日韩五月天| 亚洲女人的天堂| 91在线你懂得| 1024亚洲合集| 粉嫩av一区二区三区| 国产三级久久久| 黄色成人免费在线| 精品乱人伦小说| 蜜臀av一级做a爰片久久| 欧美久久久久久蜜桃| 亚洲成人第一页| 欧美欧美午夜aⅴ在线观看| 亚洲一区视频在线| 欧美在线观看视频一区二区三区| 一区二区三区四区亚洲| 91久久精品一区二区| 一区二区三区在线影院| 在线免费观看日本欧美| 亚洲激情男女视频| 在线观看亚洲a| 亚洲国产日日夜夜| 欧美日韩国产精品自在自线| 午夜精品久久久久久不卡8050| 欧美综合在线视频| 日韩国产精品久久久久久亚洲| 欧美一级午夜免费电影| 久草中文综合在线| 国产亚洲精品中文字幕| 99国产精品久久久| 一区二区三区日韩精品| 欧美日本乱大交xxxxx| 奇米影视一区二区三区| 久久综合av免费| 成人av综合一区| 亚洲图片激情小说| 在线观看免费视频综合| 日韩av不卡在线观看| 精品国产乱码久久久久久图片 | 三级一区在线视频先锋| 欧美一区二区三区男人的天堂| 国产最新精品免费| 中文字幕不卡一区| 欧美伊人久久久久久久久影院| 亚洲动漫第一页| 精品国产一区久久| 91在线视频观看| 美女一区二区在线观看| 国产欧美日韩激情| 在线免费观看成人短视频| 热久久一区二区| 亚洲国产综合视频在线观看|