锘??xml version="1.0" encoding="utf-8" standalone="yes"?>欧美超级免费视 在线,久久精品国产99,亚洲精品美女91http://www.shnenglu.com/wc250en007/category/14563.html鍓嶈繘鐨勮礬涓?/description>zh-cnSat, 17 Mar 2012 04:31:19 GMTSat, 17 Mar 2012 04:31:19 GMT60鎶鑳藉悷鍞變箣Client/Server娑堟伅嫻佺▼http://www.shnenglu.com/wc250en007/archive/2012/03/16/168078.htmlLet me see seeLet me see seeFri, 16 Mar 2012 07:23:00 GMThttp://www.shnenglu.com/wc250en007/archive/2012/03/16/168078.htmlhttp://www.shnenglu.com/wc250en007/comments/168078.htmlhttp://www.shnenglu.com/wc250en007/archive/2012/03/16/168078.html#Feedback0http://www.shnenglu.com/wc250en007/comments/commentRss/168078.htmlhttp://www.shnenglu.com/wc250en007/services/trackbacks/168078.htmlClient
1.鎶鑳藉揩鎹烽敭
2.鍒ゆ柇鎶鑳紺D錛岃寖鍥達紝鏍規嵁鎶鑳界被鍨嬭緗妧鑳界洰鏍囷紝eg.浠ヨ嚜韜負涓績鐨凙OE鎶鑳斤紝鐩爣鏄嚜韜?br />3.鍚慡erver鍙戦乀ryUseSkill娑堟伅

Server
1.鏀跺埌Client娑堟伅,浣跨敤鐨勬妧鑳藉帇鍏ュ埌‘鎶鑳藉鐞嗗垪琛?#8216;涓?br /> m_skillTaskMgr.Push( TaskType_Skill, target, position, skillID, skillLvl )
2.鍦ㄧ帺瀹舵瘡涓甯т腑璋冪敤 m_skillTaskMgr.GetTask() 澶勭悊鎵鏈夌被鍨嬬殑浠誨姟錛屽寘鎷妧鑳?/p>

3.鍒ゆ柇浣跨敤鎶鑳界殑涓浜涙潯浠訛紝eg.鎶鑳界洰鏍囷紝鎶鑳借寖鍥?..
  閮芥弧瓚沖悜Client鍙戦丮sgIntonateStart寮濮嬪悷鍞辨秷鎭?br /> 
 
Server:
1.鐩爣榪涘叆瑙嗛噹錛屽鏋滅洰鏍囨鍦ㄥ悷鍞辨垨緇存寔欖旀硶錛屽皢姝ょ姸鎬佹秷鎭疢sgSkillStatus鍙戠粰鑷繁
  EnterMySight(pTarget)
  if ( pTarget->IsIntonate() || pTarget->IsHoldSkill() )
 pTarget->SendSkillStatusTo( pMe )


Client
1.鎺ュ彈鍒癝erver鎶鑳藉悷鍞辨秷鎭?MsgIntonateStart MsgSkillStatus
  鍙傛暟:iSkillID, iSkillLvl, srcPlayerID, tagPlayerID, iPercent
  1). 鑻ユ槸鑷繁鍚熷敱錛屾樉紺哄悷鍞辮繘搴︽潯 UIProgressBar::Show(...)
  2). 鍔犲叆鍒板姩浣滈槦鍒椾腑絳夊緟澶勭悊 GetActionQueue()->Push_Intonate(...)
 
2. 姣忓撫 HandleActionQueue 涓鐞?‘鎶鑳藉悷鍞?#8217;Intonate
 1錛変繚瀛樺悷鍞辯殑鎶鑳?skillID, skillLvl
 2錛夋挱鏀懼茍璁板綍鍚熷敱鐨勭壒鏁?iSkillEffectID = PlayEffect(...)
 3錛夊垏鎹㈠埌鍚熷敱鍔ㄤ綔 SwitchActionStatus( Intonate, ...)

3. 鍚熷敱緇撴潫 鏉′歡璇稿錛欵ndIntonate IntonateInterrupt HoldSkillEnd HoldSkillCancel Dead
   1).鍒囨崲鍔ㄤ綔鍒癷dle鐘舵?br />   2).娓呴櫎鎾斁涓殑鍚熷敱鐗規晥 GetEffectMgr()->ReleaseEffect( iSkillEffectID )


 



]]>
涓栫晫鍧愭爣緋誨埌灞忓箷鍧愭爣緋葷殑杞崲http://www.shnenglu.com/wc250en007/archive/2012/03/03/167050.htmlLet me see seeLet me see seeSat, 03 Mar 2012 06:41:00 GMThttp://www.shnenglu.com/wc250en007/archive/2012/03/03/167050.htmlhttp://www.shnenglu.com/wc250en007/comments/167050.htmlhttp://www.shnenglu.com/wc250en007/archive/2012/03/03/167050.html#Feedback0http://www.shnenglu.com/wc250en007/comments/commentRss/167050.htmlhttp://www.shnenglu.com/wc250en007/services/trackbacks/167050.html

鏈漢鎯蟲墜鍔ㄥ疄鐜頒粠涓栫晫鍧愭爣緋諱腑鐨勪竴鐐瑰埌灞忓箷鍧愭爣緋葷殑杞崲 緗戜笂鐨勮祫鏂欓兘鏄湪璁茶В鍥哄畾綆$嚎鐨勬覆鏌撹繃紼?span style="line-height: normal"> 鏈漢鐨勯渶姹傚茍涓嶉渶瑕佸仛 鑳岄潰鎷i夎鍓瓑鎿嶄綔 鎵浠ヨ嚜宸辨潵鍐欎竴涓?span style="line-height: normal"> ,鎬諱綋嫻佺▼鏄?span style="line-height: normal">

 

涓栫晫鍧愭爣緋?span style="line-height: normal">->瑙嗗浘鍧愭爣緋?span style="line-height: normal">->鎶曞獎騫抽潰鍧愭爣緋?span style="line-height: normal">->灞忓箷鍧愭爣緋?span style="line-height: normal">

 

涓栫晫鍧愭爣緋?/span>->瑙嗗浘鍧愭爣緋?/span>

瑙佹湰浜虹殑鍙﹀涓綃?br style="line-height: normal" />

 璇﹁堪涓栫晫鍧愭爣緋誨埌瑙嗗浘鍧愭爣緋?鎽勫儚鏈哄潗鏍囩郴)鐨勭煩闃靛彉鎹?/a>

瑙嗗浘鍧愭爣緋?/span>->鎶曞獎騫抽潰鍧愭爣緋?/span>(閫忚鎶曞獎)

鎶曞獎騫抽潰鍦?span style="line-height: normal">D3D涓?span style="line-height: normal">Z = 1 涓斾笌X, Y杞村鉤琛岀殑騫抽潰 鐢變簬閫忚鎶曞獎鐏偣鍦ㄨ鍥懼潗鏍囩郴鐨勫師鐐?span style="line-height: normal">, 浠繪剰涓鐐瑰湪璇ュ鉤闈㈢殑鎶曞獎涓?span style="line-height: normal"> .

 

 宸茬煡瑙嗗浘鍧愭爣緋葷殑涓鐐?span style="line-height: normal">P(Y , Z) , 姹?鍦ㄦ姇褰卞鉤闈㈢殑鐐?span style="line-height: normal">P(Y’ , Z’) , 瑙?span style="line-height: normal">a鏈煡 ,鍒?span style="line-height: normal">

 鐢變笁瑙掑艦鐩鎬技鍙緱 , (X Z鐨勫潗鏍囪醬涓庝笂鍥劇浉鍚?span style="line-height: normal"> 鍙槸鎶?span style="line-height: normal">Y鎹㈡垚X鑰屽凡)

Y’=  Y * Z’ / Z

X’=  X * Z’ / Z

D3D涓姇褰卞鉤闈?span style="line-height: normal">Z’ =1, 鎵浠?span style="line-height: normal">

Y’=  Y / Z

X’=  X / Z

Z’=  1

 

鐢變笂鍙緱鍙樻崲鐭╅樀涓?span style="line-height: normal">

1 0 0 0

0 1 0 0

0 0 1 1

0 0 0 0

 

 

 

鎶曞獎騫抽潰鍧愭爣緋?/span>->灞忓箷鍧愭爣緋?/span>

璁炬姇鎶曞獎騫抽潰鏈澶ч珮瀹戒負Ph ,Pw ,閫氳繃Y杞寸殑鏈澶у彲瑙嗚搴?span style="line-height: normal">a , 瑙嗘埅浣撶殑鏈榪?span style="line-height: normal">Z鍊?span style="line-height: normal"> Zf 鍒欏彲寰楀嚭 鎶曞獎騫抽潰鐨勬渶澶ч珮搴?span style="line-height: normal">Ph(Y杞存柟鍚?span style="line-height: normal">)

 

Ph= tan( a/2 ) * Zf

閫氳繃灞忓箷楂樺姣?span style="line-height: normal">Aspect, 姹傚嚭鏈澶у搴?span style="line-height: normal">Pw

Pw= Ph * Aspect

 

姹傚緱Ph , Pw , 鎴戜滑鍙互寰楀埌鎶曞獎騫抽潰鍒板睆騫曞鉤闈㈢殑杞崲姣斾緥(鐢變簬Ph , Pw浠呮槸鏁翠釜鏈澶ч珮瀹界殑涓鍗?span style="line-height: normal"> 鎵浠ュ睆騫曟渶澶ч珮瀹戒篃闄や簩)

Yscale= (Sh/2)/Ph

Xscale= (Sw/2)/Pw

 

鍒欐姇褰遍潰涓婁換鎰忎竴鐐?span style="line-height: normal">P(X, Y) 鍒板睆騫曞鉤闈?span style="line-height: normal">P’(X’ , Y’)鐨勮漿鎹負

X’= Sw/2 + X * Xscale

Y’= Sh/2 - Y * Yscale

PS.灞忓箷鍧愭爣鍘熺偣鍦ㄥ乏涓婅

 

鐢變笂鍙緱鍙樻崲鐭╅樀涓?span style="line-height: normal">

Xscale  0       00

0      -Yscale  0 0

0       0        1 0

Sw/2    Sh/2    0 1

瑙嗗彛榛樿浣嶇疆涓?span style="line-height: normal">(0 , 0) , 涓嶆帓闄や綘浼氫慨鏀?span style="line-height: normal"> , 鎵浠ヨ繕瑕佸姞涓婅鍙e湪windows紿楀彛鐨勮搗濮嬩綅緗?span style="line-height: normal"> , 鍙互閫氳繃getviewport鑾峰緱 鎵浠ョ煩闃靛簲涓?span style="line-height: normal">

Xscale  0       0 0

0      -Yscale  0 0

0       0          1 0

Port.x +Sw/2    Port.y +Sh/2    0 1



]]>
3D緙栫▼鏂囩珷錛堥《鐐瑰潗鏍囪漿鎹級http://www.shnenglu.com/wc250en007/archive/2011/08/19/153834.htmlLet me see seeLet me see seeFri, 19 Aug 2011 01:59:00 GMThttp://www.shnenglu.com/wc250en007/archive/2011/08/19/153834.htmlhttp://www.shnenglu.com/wc250en007/comments/153834.htmlhttp://www.shnenglu.com/wc250en007/archive/2011/08/19/153834.html#Feedback0http://www.shnenglu.com/wc250en007/comments/commentRss/153834.htmlhttp://www.shnenglu.com/wc250en007/services/trackbacks/153834.html闃呰鍏ㄦ枃

]]>
DirectX涓殑鎶曞獎鍙樻崲http://www.shnenglu.com/wc250en007/archive/2011/08/18/153722.htmlLet me see seeLet me see seeThu, 18 Aug 2011 06:58:00 GMThttp://www.shnenglu.com/wc250en007/archive/2011/08/18/153722.htmlhttp://www.shnenglu.com/wc250en007/comments/153722.htmlhttp://www.shnenglu.com/wc250en007/archive/2011/08/18/153722.html#Feedback0http://www.shnenglu.com/wc250en007/comments/commentRss/153722.htmlhttp://www.shnenglu.com/wc250en007/services/trackbacks/153722.html

DirectX涓姇褰卞彉鎹3DXMatrixPerspectiveFovLH錛堬級鍏跺疄浜х敓鐨勫彉鎹㈢煩闃典笉鏄皢3D鐗╀綋杞崲涓?D騫抽潰鐢婚潰鐨勫彉鎹€傚疄闄呬笂鏄妸3D涓栫晫鐨勭墿浣撳彉鎹㈠埌(1,1,0) (-1,1,0) (-1,-1,0) (1,-1,0) (1,1,1) (-1,1,1) (-1,-1,1) (1,-1,1)榪欎釜灝忕洅瀛愪腑銆傚湪Jim Adams 鐨勮憲浣?lt;Role playing games with DriectX 8.0>鍜孎rank Luna 鐨勮憲浣滀腑<Introduction to 3D Game Programming with DirectX9.0>閮芥妸榪欎釜鍙樻崲鐭╅樀璁叉垚浠?D鍒?D鐨勫彉鎹€傚疄闄呬笂鍦―irectX涓?D鍒?D鐨勫彉鎹㈡槸鐢盨DK鑷繁瀹屾垚鐨勩傝屾垜浠鍋氱殑鏄妸3D涓栫晫鍙樻崲鍒頒笂闈㈤偅涓皬鐩掑瓙涓?/p>

榪欎釜鍙樻崲鐭╅樀鏄姇褰卞彉鎹㈢殑棰勫彉鎹€?/span>

     鍦―irectX涓紝鎶婅鍙g殑楂樹綔涓?D涓栫晫閲岄潰鐨勯暱搴︼細2.0f鏉ヤ嬌鐢ㄧ殑錛屼竴涓鐐硅瀵熶笘鐣岀殑瑙嗛噹鑼冨洿鍦╕杞翠笂鏃犺浠涔堟儏鍐典笅閮芥槸 -1.0f鍒?.0f錛堣繖涓鐐瑰湪鍚庨潰鏉ヨ瘉鏄庯級銆傛妸瑙嗗彛鐨勯珮浣滀負y杞達紝欏剁鍧愭爣涓猴紙x錛?錛夛紝搴曠鍧愭爣涓猴紙x錛?1錛夈?/span>

 

     瑙嗗彛錛氬湪紿椾綋涓樉紺?D鐨勭煩褰㈣寖鍥達紝鍙互閫氳繃D3DDevice鐨凷etViewPort錛堬級鏉ヨ緗ぇ灝忥紝榛樿鐨勫ぇ灝忎負紿椾綋鐨勫ぇ灝忋?/span>

 

     鍙樻崲鐨勮繃紼嬪氨鏄妸鐐圭殑鍚戦噺涔樹互鍙樻崲鐭╅樀錛屽彲浠ュ緱鍒拌繖涓偣鍦ㄦ柊鍧愭爣緋葷殑瀵瑰簲鍚戦噺錛屽湪鎶曞獎鍙樻崲鐭╅樀涓璟杞寸殑鍊艱惤鍦?~1涔嬪唴錛屼篃灝辨槸璇?D涓栫晫閲屾墍鏈夌殑鐐歸兘浼氳鎶曞獎鍒頒互涓婃弿榪扮殑灝忕洅瀛愪腑銆?/span>

鎴戜滑鐢ㄥ嚱鏁癉3DXMatrixPerspectiveFovLH鏉ヨ幏寰楄“鎶曞獎鍙樻崲”鐭╅樀銆?/span>

D3DXMATRIX * D3DXMatrixPerspectiveFovLH(

 D3DXMATRIX *pOut,

 FLOAT fovy,

 FLOAT Aspect,

 FLOAT zn,

 FLOAT zf

);

鍏朵腑鍙傛暟fovy涓簓杞翠笂鐨勮瑙掞紝Aspect涓洪珮瀹芥瘮錛寊n涓鴻繎瑁侀潰錛寊f涓鴻繙瑁侀潰銆?/span>

 

Y杞寸殑瑙嗚錛氬湪DirectX鐨勫府鍔╂枃妗d腑鎻忚堪fovy涓篺iled of view in y direction銆?/p>

 

楂樺姣旓細涓鑸敤浜庡叏灞忔樉紺猴紝濡傛灉鎴戜滑瑕佽3D涓栫晫鍏呮弧鏁翠釜紿楀彛錛屽氨蹇呴』璁╅珮瀹芥瘮絳変簬紿楀彛鐨勯珮瀹芥瘮錛屼緥濡傝鎴戜滑鐨勭獥鍙f甯告樉紺?#8221;鏍囧噯瑙嗛噹”[2X2 鐨勪竴涓潰,欏剁偣鍧愭爣涓猴紙1錛?錛夛紝錛?1錛?錛夛紝錛?1錛?1錛夛紝錛?錛?1錛塢錛屾垜浠繀欏繪妸紿楀彛鐨勯珮瀹芥瘮璁劇疆鎴?錛?錛岃繖鏍鳳紝鏍囧噯瑙嗛噹灝卞彲浠ュ厖婊℃暣涓獥鍙o紝鍚﹀垯 浼氬湪宸﹀彸鐣欏嚭絀虹櫧錛岃繖涓┖鐧芥槸鏃犳硶鐢╒IEW錛學ORLD鍙樻崲鎵鑳藉~鍏呯殑錛岀浉褰撲簬word鏂囨。閲囩敤“鏂囨。”瑙嗗浘閲岄潰鐨勪袱杈圭殑鐏拌壊鍖哄煙錛屾槸鏃犳硶緙栬緫鐨勶紝鍦ㄤ竴鑸殑3D紼嬪簭閲岄潰鏄笉鍏佽鍑虹幇榪欑鎯呭喌鐨勶紝浣嗘槸鎴戜滑鐨勬樉紺哄櫒鐨勯珮瀹芥瘮涓嶆槸1錛?錛岃屼笖澶ч儴鍒嗙殑鐢ㄦ埛涔熶笉涔犳儻鐢?錛?鐨勭獥鍙f潵浣跨敤紼嬪簭錛屾垜浠渶瑕佽皟鏁磋繖涓爣鍑嗚閲庯紝鏉ラ傚簲鎴戜滑鐨勭獥鍙eぇ灝忥紝Aspect灝辨槸榪欎釜浣滅敤錛屾湁涓鐐歸渶瑕佽鏄庣殑Aspect涓嶇瓑浜?錛屼笉浠h〃鏍囧噯瑙嗛噹灝變笉鏄紙1錛?錛夛紝錛?1錛?錛夛紝錛?1錛?1錛夛紝錛?錛?1錛夛紝濡傛灉Aspect = 0.5 鏍囧噯瑙嗛噹涔熻繕鏄紙1錛?錛夛紝錛?1錛?錛夛紝錛?1錛?1錛夛紝錛?錛?1錛夛紝鍙笉榪噚杞翠笂鐨勫崟浣嶉暱搴︾殑鍍忕礌鍊?鏄?y杞翠笂鍗曚綅闀垮害鐨勫儚绱犲肩殑2鍊嶃?/p>

 

瑁侀潰鐨勪綔鐢? 鍦╖杞存柟鍚戜笂錛屼笉鏄劇ずz鍧愭爣灝忎簬zn鐨勬垨鑰呭ぇ浜?zf鐨勭偣銆?/span>

     鍦ㄤ笂鍥句腑錛岀傳綰㈣壊鐨勭嚎涓烘垜浠鏄劇ず鐨勯潰錛岀孩鑹茬殑寮у氨鏄笂闈㈠嚱鏁癴ovy鐨勫す瑙掞紝褰撹繖涓す瑙掍負90°鐨勬椂鍊欙紝鎴戜滑紿楀彛鐨勮閲庝負鏍囧噯瑙嗛噹錛屽綋澶硅緙╁皬鏃訛紝鍙鑼冨洿灝卞彉灝忥紝濡傚浘錛屼粠90°鍙樹負60°鐨勬椂鍊欙紝鍙鑼冨洿鍙樺皬浜嗭紝瑕佹樉紺虹殑闈紝鐩稿浜庡彲浠ヨ寖鍥村彉澶т簡錛岀敱浜庢垜浠殑紿楀彛鏄笉鍙樼殑錛屼篃灝辨槸璇村疄闄呮樉紺虹殑鍍忕礌鍊間笉鍙橈紝瑕佹樉紺虹殑闈㈠氨鐩稿浜庡彉澶э紝fovy鐨勫煎彉灝忕殑緇撴灉灝辨槸鎶婅鏄劇ず鐨勯潰鍙樺ぇ銆?/span>

     褰?/span>fovy涓?/span>0鐨勬椂鍊欏憿錛岃閲庡氨涓?/span>0錛屽氨鏄浠涔堥兘鐪嬩笉鍒幫紝紿楀彛涓樉紺虹殑灝辨槸搴曡壊銆?/span>

     褰?/span>fovy鍙樺ぇ鑷?/span>180°鐨勬椂鍊欏憿錛?/span>瑙嗛噹鐨勮寖鍥翠負瑙嗙嚎澶硅涓婄殑鍨傜洿浜?/span>Z杞寸殑涓旇繃鐐癸紙0錛?/span>0錛?/span>1錛夌殑榪炵嚎銆傚綋瑙嗙嚎澶硅鍙樺ぇ瑙嗛噹鑼冨洿涔熷彉澶э紝澶硅瓚嬭繎浜?/span>180°鐨勬椂鍊欒閲庤寖鍥磋秼榪戜簬鏃犵┓澶э紝瑕佹樉紺虹殑闈㈢浉瀵逛簬瑙嗛噹鑼冨洿灝辨槸0錛屼篃灝辨槸璇寸緝灝忓埌鏈灝忓氨鏄?/span>0.鎵浠ユ垜浠湪璁懼畾fovy鐨勫間負180°鐨勬椂鍊欎篃鏄粈涔堥兘鐪嬩笉瑙侊紝涓哄簳鑹層?/span>

     閭eぇ浜?/span>180°鐨勬儏鍐靛憿錛熷湪鎴戜滑鐨勮閲庣悊璁轟笂鏄笉瀛樺湪榪欑鎯呭喌鐨勶紝褰撹瑙掑ぇ浜?/span>180°鏃訛紝瑙嗚浜?/span>Z杞村瀭鐩寸殑榪炵嚎鏄笉浼氳繃鐐癸紙0錛?/span>0錛?/span>1錛夌殑銆備絾鏄嚱鏁版斁鍦ㄦ垜浠潰鍓嶏紝鎴戜滑鏄彲浠ヨ緭鍏ュぇ浜?/span>180°鐨勬暟鍊鹼紝緇撴灉浼氬浣曞憿錛?/span>

闈炲父紲炲鐨勪簨鎯呭彂鐢熶簡錛屾垜浠殑鍥句互鍘熺偣涓轟腑蹇冩棆杞簡180°錛佽繖鏄棤娉曠敤鎴戜滑鐨勮閲庣悊璁烘潵瑙i噴鐨?/span>,鍥犱負180°鐨勮閲庤寖鍥村氨宸茬粡鏄釜鏋侀檺浜嗭紝“瓚呰秺鏋侀檺”鏄彧鑳藉湪騫垮憡涓嚭鐜扮殑璇嶆眹錛堝鏋滆兘瓚呰秺錛岄偅灝變笉鍙瀬闄愪簡錛?/span>P錛夈?/span>

     鍦?/span>MSDN鐨勬枃妗d腑鏈夎繖鏍蜂竴涓暟瀛﹀叕寮忥細y-scale = cot錛?/span>fovy/2錛?/span>

     榪欎笅灝辨槑鐧戒簡錛屽綋鎴戜滑杈撳叆澶т簬180°鐨勬椂鍊?/span>cot鐨勫間負璐熸暟銆傝?/span>x-scale = y-scale/ Aspect銆?/span>.

涔熷氨鏄錛屼竴涓?/span>3D涓栫晫鐨勭偣錛屽湪瑙嗛噹澶т簬180°鐨勪綔鐢ㄤ笅錛屽畠鐨勬斁澶?/span>/緙╁皬鍊嶆暟涓嶅彉錛屼絾鏄渶瑕佸X杞村仛涓嬈″縐板彉鎹紝榪樿瀵?/span>Y杞村仛涓嬈″縐板彉鎹€傜浉褰撲簬瀵瑰師鐐瑰仛涓嬈″縐板彉鎹€?/span>

鎷垮埌榪欎釜鍏紡錛屾垜浠氨鍙互瀵瑰墠闈㈢殑鏍囧噯鍋氫竴涓瘉鏄庯細

褰?/span>fovy涓?/span>90° Aspect = 1鐨勬椂鍊欙紝灝辨槸璇?/span>y-scale = cot錛?/span>45°錛?/span> = 1

x-scale = 1錛岃繖鏃?/span>y鍜?/span>x鐨勭緝鏀炬瘮閮戒負1錛屾病鏈夌緝鏀俱傛垜浠樉紺鴻繖鏍蜂竴涓潰

              {-1.0f, -1.0f, 0.0f},

              {-1.0f, 1.0f, 0.0f},

              { 1.0f, 1.0f, 0.0f},

              {-1.0f, -1.0f, 0.0f},

              { 1.0f, 1.0f, 0.0f},

              { 1.0f,-1.0f, 0.0f}

鎴戜滑浼氬彂鐜版棤璁烘庝箞鏀瑰彉紿楀彛鐨勯珮搴︼紝榪欎釜鐢婚潰鐨?/span>Y杞存柟鍚戜笂閮戒細鍏呮弧鏁翠釜瑙嗗彛銆傦紙濡傛灉鎴戜滑鎶婅鍙g殑楂樺害鍜屽搴﹁緗垚涓鏍風殑錛屽湪X杞翠笂涔熶細鍏呮弧鏁翠釜瑙嗗彛錛夋墍浠?/span>DirectX浼氫互瑙嗗彛鐨勯珮搴︾殑浜屽垎涔嬩竴浣滀負Y杞寸殑鍗曚綅闀垮害銆?/span>



]]>
MipMaphttp://www.shnenglu.com/wc250en007/archive/2011/08/06/152653.htmlLet me see seeLet me see seeSat, 06 Aug 2011 09:51:00 GMThttp://www.shnenglu.com/wc250en007/archive/2011/08/06/152653.htmlhttp://www.shnenglu.com/wc250en007/comments/152653.htmlhttp://www.shnenglu.com/wc250en007/archive/2011/08/06/152653.html#Feedback0http://www.shnenglu.com/wc250en007/comments/commentRss/152653.htmlhttp://www.shnenglu.com/wc250en007/services/trackbacks/152653.html棣栧厛浠嶮IPMAP鐨勫師鐞嗚璧鳳紝瀹冩槸鎶婁竴寮犺創鍥炬寜鐓?鐨勫嶆暟榪涜緙╁皬銆傜洿鍒?X1銆傛妸緙╁皬鐨勫浘閮藉瓨鍌ㄨ搗鏉ャ傚湪娓叉煋鏃訛紝鏍規嵁涓涓儚绱犵鐪肩潧涓轟箣鐨勮窛紱伙紝鏉ュ垽鏂粠涓涓悎閫傜殑鍥懼眰涓彇鍑簍exel棰滆壊璧嬪肩粰鍍忕礌銆傚湪D3D鍜孫GL閮芥湁鐩稿搴旂殑API鎺у埗鎺?br />鍙?img height="208" alt="" src="http://www.shnenglu.com/images/cppblog_com/wc250en007/D3D/MipMap.jpg" width="428" border="0" longdesc="" />

閫忚繃瀹冪殑宸ヤ綔鍘熺悊鎴戜滑鍙互鍙戠幇錛岀‖浠舵繪槸鏍規嵁鐪肩潧鍒扮洰鏍囩殑璺濈錛屾潵鐜勫鏈閫傚悎褰撳墠灞忓箷鍍忕礌鍒嗚鯨鐜囩殑鍥懼眰銆傚亣璁句竴寮?2768x32768鐨刴ipmap璐村浘錛屽綋鍓嶅睆騫曞垎杈ㄧ巼涓?024*1024銆傜溂鐫涜窛紱葷墿浣撴瘮杈冭繎鏃訛紝mipmap鏈澶т篃鍙彲鑳戒粠1024*1024鐨凪ipmap鍥懼眰閫夊彇texel銆傚啀嬈★紝褰撲嬌鐢ㄤ笁綰挎ц繃婊わ紙trilinear錛夋椂錛屾渶澶т篃鍙兘璁塊棶2048*2048鐨勫浘灞傞夊彇texel錛屾潵鍜?024*1024鍥懼眰涓殑鍍忕礌榪涜綰挎ф彃鍊箋?img height="144" alt="" src="http://www.shnenglu.com/images/cppblog_com/wc250en007/D3D/MipMap1.jpg" width="514" border="0" />

涓轟簡鍔犲揩娓叉煋閫熷害鍜屽噺灝戝浘鍍忛敮榻匡紝璐村浘琚鐞嗘垚鐢變竴緋誨垪琚鍏堣綆楀拰浼樺寲榪囩殑鍥劇墖緇勬垚鐨勬枃浠?榪欐牱鐨勮創鍥捐縐頒負 MIP map 鎴栬?mipmap

 

澶氱駭娓愯繘綰圭悊鐢變竴緇勫垎杈ㄧ巼閫愭笎闄嶄綆鐨勭汗鐞嗗簭鍒楃粍鎴愶紝姣忎竴綰х汗鐞嗗搴﹀拰楂樺害閮芥槸涓婁竴綰х汗鐞嗗搴﹀拰楂樺害鐨勪竴鍗娿傚鍜岄珮涓嶄竴瀹氱浉絳夛紝涔熷氨鏄錛岃繖浜涚汗鐞嗕笉涓瀹氶兘鏄鏂瑰艦銆?/p>

Direct3D鍦ㄧ汗鐞嗘槧灝勬椂錛岃嚜鍔ㄩ夋嫨涓騫呬笌鐗╀綋澶у皬鏈鎺ヨ繎鐨勭汗鐞嗚繘琛屾覆鏌撱傚綋鐗╀綋紱繪姇褰卞鉤闈㈣緝榪滄椂錛孌irect3D浼氶夋嫨涓寮犲昂瀵歌緝灝忋佸垎杈ㄧ巼杈冧綆鐨勭汗鐞嗚繘琛屾覆鏌擄紱褰撶墿浣撶鎶曞獎騫抽潰杈冭繎鏃訛紝Direct3D浼氶夋嫨涓寮犲昂瀵歌緝澶с佸垎杈ㄧ巼杈冮珮鐨勭汗鐞嗚繘琛屾覆鏌撱侱irect3D灝嗙汗鐞嗗簭鍒楃湅鎴愪竴鏉″綰ф笎榪涚汗鐞嗛摼銆傞摼澶村綰圭悊鐨勫垎杈ㄧ巼鏈楂橈紝涓嬩竴綰у線鍚庝緷嬈¢掑噺錛岄摼灝懼綰圭悊鐨勫垎杈ㄧ巼鏈浣庛?/p>

Direct3D鑳戒及璁″嚭澶氱駭娓愯繘綰圭悊閾句腑鍝箙綰圭悊鐨勫垎杈ㄧ巼鏈鎺ヨ繎鎯寵鐨勮緭鍑虹粨鏋滐紝鐒跺悗瀹冨皢鍍忕礌鏄犲皠鍒扮汗鐞嗙┖闂淬傚綋鏈緇堟樉紺虹殑鍥懼艦澶у皬浠嬩簬浠繪剰涓ょ駭綰圭悊鍥懼艦涔嬮棿鏃訛紝Direct3D灝嗕袱綰х汗鐞嗙殑鐩稿簲鍏冪礌榪涜娣峰悎鍚庢樉紺恒?/span>

澶氱駭娓愯繘綰圭悊榪囨護鑳藉鏈夋晥鍦?span style="color: red">鎻愰珮鍥懼艦娓叉煋閫熷害錛?span style="color: red">褰撶墿浣撶鎶曞獎騫抽潰杈冭繙鏃訛紝Direct3D浼氶夋嫨涓寮犲昂瀵歌緝灝忕殑綰圭悊榪涜娓叉煋錛岃屾棤闇緇忚繃澶嶆潅鐨勮濡傚悇欏瑰紓鎬х汗鐞嗚繃婊?/span>錛屽茍涓旂敱浜庤繖鏃剁汗鐞嗛渶瑕佺殑鏄懼瓨姣斾笉浣跨敤澶氱駭娓愯繘綰圭悊鏃跺皬錛屽洜姝よ兘鏈夋晥鍦?span style="color: red">鍑忓皯綰圭悊杞藉叆鏄懼瓨鐨勬椂闂淬?/span>緙虹偣鏄鍐呭瓨鐨勮姹傛瘮杈冮珮


璁劇疆澶氱駭娓愯繘綰圭悊榪囨護鏂瑰紡

褰撴渶緇堟樉紺虹殑綰圭悊璐村浘澶у皬浠嬩簬浠繪剰涓ょ駭綰圭悊涔嬮棿鏃訛紝Direct3D鑳藉鍙栧緱涓ょ駭綰圭悊鍏冪礌榪涜娣峰悎鍚庢樉紺猴紝鍏蜂綋鐨勬販鍚堟柟寮忕敱鎸囧畾鐨勫綰ф笎榪涚汗鐞嗚繃婊ゆ柟寮忓喅瀹氥傚彲浠ヨ皟鐢ㄥ嚱鏁癐Direct3DDevice9::SetSamplerState()璁劇疆澶氱駭娓愯繘綰圭悊榪囨護鏂瑰紡錛屽皢絎竴涓弬鏁拌涓虹汗鐞嗗眰搴忓彿錛岀浜屼釜鍙傛暟璁句負D3DSAMP_MIPFILTER琛ㄧず澶氱駭娓愯繘綰圭悊榪囨護錛岀涓変釜鍙傛暟璁句負鍦ㄧ浉閭葷汗鐞嗙駭涔嬮棿鐨勮繃婊ゆ柟寮忥紝鍙彇鏋氫婦綾誨瀷D3DTEXTUREFILTERTYPE鐨勪換鎰忓箋備笅闈㈢殑紺轟緥浠g爜璁劇疆鐩擱偦綰圭悊綰т箣闂寸殑榪囨護鏂瑰紡涓虹嚎鎬ц繃婊ゃ?/p>

g_device->SetSamplerState(0, D3DSAMP_MIPFILTER, D3DTEXF_LINEAR);

濡傛灉灝嗙涓変釜鍙傛暟璁句負D3DTEXF_NONE錛岄偅涔堝氨浼氫竴鐩翠嬌鐢ㄦ渶楂樹竴綰х殑綰圭悊錛屽嵆紱佺敤澶氱駭娓愯繘綰圭悊榪囨護銆傚鏋滃皢鍏惰涓篋3DTEXF_POINT錛屽氨浼氬彧浣跨敤涓庡浘鍏冨ぇ灝忔渶鍖歸厤鐨勪竴綰х汗鐞嗐傚鏋滃皢鍏惰涓篋3DTEXF_LINEAR錛孌irect3D灝卞皢涓庡浘鍏冨ぇ灝忔渶鍖歸厤鐨勪袱綰х汗鐞嗕互綰挎ф柟寮忔販鍚堛?/font>

闇瑕佹敞鎰忕殑鏄紝澶氱駭綰圭悊榪囨護鏄緝灝忓拰鏀懼ぇ榪囨護鍣ㄧ殑緇撳悎銆備緥濡傦紝濡傛灉灝嗙緝灝忓拰鏂規硶榪囨護鍣ㄨ涓虹嚎鎬ц繃婊わ紝浣嗘槸澶氱駭綰圭悊榪囨護鏂瑰紡璁句負鏈榪戠偣閲囨牱錛孌irect3D灝變細閫夋嫨涓庤鏄劇ず鐨勭汗鐞嗚創鍥懼ぇ灝忔渶鎺ヨ繎鐨勭汗鐞嗙駭鍒紝鍦ㄨ綰х汗鐞嗕笂瀹屾垚鍙岀嚎鎬х汗鐞嗚繃婊わ紝騫跺皢緇撴灉浣滀負鍍忕礌鐨勫箋傚鏋滃皢緙╁皬銆佹斁澶ц繃婊ゅ櫒鍜屽綰ф笎榪涚汗鐞嗛兘璁劇疆涓虹嚎鎬ц繃婊わ紝鍒橠irect3D灝變細鍦ㄤ袱涓渶鎺ヨ繎鐨勭汗鐞嗙駭鍒笂閮借繘琛屽弻綰挎х汗鐞嗚繃婊わ紝鐒跺悗鍐嶅鐩擱偦涓ょ駭綰圭悊鍥懼艦涓婂搴旂殑涓や釜綰圭悊棰滆壊榪涜鍔犳潈騫沖潎錛屾渶鍚庣殑緇撴灉浣滀負鍗曚釜鍍忕礌鍊箋傝繖縐嶄負浜嗗浘鍏冧腑鐨勪竴涓儚绱狅紝鑰岀粨鍚堜簡涓ゅ箙綰圭悊錛屽叡8涓儚绱犵殑鎶鏈紝縐頒負“涓夌嚎鎬ц繃婊?#8221;錛屽洜涓哄畠鍦ㄧ汗鐞嗙殑涓変釜鏂瑰悜----u銆?v鍜岀汗鐞嗙駭鍒笂閮借繘琛屼簡綰挎ц繃婊ゃ?/font>

鍙互閫氳繃IDirect3DDevice9::SetSamplerState()鍑芥暟璁劇疆瀹為檯娓叉煋鏃剁汗鐞嗚繃婊ょ殑鏈澶х駭鏁幫紝鍏朵腑闇瑕佸皢絎簩涓弬鏁拌涓篋3DSAMP_MAXMIPLEVEL錛岀涓変釜鍙傛暟璁句負瀹為檯娓叉煋鏃剁汗鐞嗚繃婊ょ殑鏈澶х駭鏁般備笅闈㈢殑紺轟緥浠g爜璁劇疆綰圭悊灞?鐨勬渶澶у綰х汗鐞嗚繃婊ょ駭鏁頒負16銆?/p>

g_device->SetSamplerState(0, D3DSAMP_MAXMIPLEVEL, 16);

榪樺彲浠ラ氳繃灝咺Direct3DDevice9::SetSamplerState()鐨勭浜屼釜鍙傛暟璁句負D3DSAMP_MIPMAPLODBIAS錛岃緗綰х汗鐞嗘槧灝勭駭鏁板亸縐誨箋傚鏋滃鏌愪釜綰圭悊鏄犲皠璁劇疆姝e亸縐誨鹼紝寰楀埌鐨勫浘褰㈢粨鏋滃氨浼氭瘮鍘熸潵鐨勬洿娓呮櫚錛屼絾閿嬌鏇村錛涘弽涔嬭涓鴻礋鍋忕Щ鍊鹼紝寰楀埌鐨勫浘褰㈢粨鏋滃氨浼氭洿妯$硦銆?/p>

浠g爜錛?a title="瀹炰緥涓嬭澆" href="/Files/wc250en007/D3D/TextQuad綰圭悊鏄犲皠.rar">瀹炰緥涓嬭澆



]]>
鎺ㄥ鐩告満鍙樻崲鐭╅樀(杞?http://www.shnenglu.com/wc250en007/archive/2011/07/31/152124.htmlLet me see seeLet me see seeSun, 31 Jul 2011 02:02:00 GMThttp://www.shnenglu.com/wc250en007/archive/2011/07/31/152124.htmlhttp://www.shnenglu.com/wc250en007/comments/152124.htmlhttp://www.shnenglu.com/wc250en007/archive/2011/07/31/152124.html#Feedback1http://www.shnenglu.com/wc250en007/comments/commentRss/152124.htmlhttp://www.shnenglu.com/wc250en007/services/trackbacks/152124.html

-娼樺畯
-2009.12.31

-鏈漢姘村鉤鏈夐檺錛岀枏蹇介敊璇湪鎵闅懼厤錛岃繕璇峰悇浣嶆暟瀛﹂珮鎵嬨佺紪紼嬮珮鎵嬩笉鍚濊祼鏁?/span>

-email: popyy@netease.com

鍘熸枃鍦板潃錛?a >http://blog.csdn.net/popy007/article/details/5120158

 

涓浜涚綉鍙嬪啓淇$粰鎴戝笇鏈涜兘澶熶簡瑙e浐瀹氭祦姘寸嚎涓笘鐣岀┖闂村埌鐩告満絀洪棿鍙樻崲鐭╅樀鐨勫叿浣撴帹瀵艱繃紼嬨傚叾瀹炰箣鍓嶆垜鍦ㄣ婂悜閲忓嚑浣曞湪娓告垙緙栫▼涓殑浣跨敤6銆嬩腑宸茬粡綆鍗曠殑鎶婄浉鏈哄彉鎹綔涓轟竴涓嬌鐢ㄥ熀鐞嗚鐨勪緥瀛愯繘琛屼簡璇存槑錛屼絾鍙兘浠嶇劧涓嶅鍏蜂綋銆傝繖綃囨枃绔犱腑錛屾垜浼氬敖鍔涢槓榪扮浉鏈哄彉鎹㈢殑鏁翠釜鏉ラ緳鍘昏剦銆傚笇鏈涜兘澶熷姝e湪瀛︿範鍥哄畾嫻佹按綰跨殑鏈嬪弸浠湁鎵甯姪銆傝繖閲屾垜浠粛鐒朵細鍦ㄦ帹瀵肩浉鏈哄彉鎹箣鍓嶄粙緇嶅嚑涓悊璁虹煡璇嗭紝鐩殑鏄負浜嗘洿濂界殑鐞嗚В鎺ㄥ榪囩▼銆傛垜浠┈涓婂紑濮嬶紒

浠涔堟槸鐩告満鍙樻崲錛?/span>

鍦ㄦ祦姘寸嚎涓紝褰撶墿浣撲粠妯″瀷鍧愭爣閫氳繃涓栫晫鐭╅樀鍙樻崲鍒頒笘鐣岀┖闂翠箣鍚庯紝瀹冨皢閫氳繃鐩告満鍙樻崲浠庝笘鐣岀┖闂村彉鎹㈠埌鐩告満絀洪棿銆備笅鍥劇殑鍥哄畾嫻佹按綰夸腑錛岃摑鑹叉涓殑閮ㄥ垎灝辨槸榪欎釜榪囩▼銆?/span>

 

 

 

 

 

 

鍏跺疄錛屾墍璋撶殑鐩告満絀洪棿錛屽氨鏄互鐩告満浣滀負鍧愭爣鍘熺偣鐨勪竴涓弬鑰冪郴錛屾墍浠ワ紝浠庝笘鐣岀┖闂村彉鎹㈠埌鐩告満絀洪棿錛屽氨鏄妸鐗╀綋浠庝笘鐣屽潗鏍囩郴錛屽彉鎹㈠埌鐩告満涓哄師鐐圭殑鐩告満鍧愭爣緋伙紝濡備笅鍥炬墍紺恒?/span>

 

 

 

 

宸﹀崐閮ㄥ垎鏄皬浜哄湪涓栫晫絀洪棿涓殑浣嶇疆錛屽彸鍗婇儴鍒嗘槸灝忎漢鍙樻崲鍒扮浉鏈虹┖闂村悗鐨勪綅緗傝繖鏍風殑涓涓彉鎹㈠彲浠ユ湁寰堝縐嶆柟寮忔潵瀹炵幇錛氭鎷夌浉鏈虹郴緇熴?/span>UVN緋葷粺銆?/span>Two Points & A Twist絳夌瓑銆傝繖閲屾垜浠璁烘渶涓哄箍娉涚殑UVN緋葷粺鏋勫緩鐩告満鐭╅樀錛屽鏋滆鑰呭鍏朵粬鏂規硶鎰熷叴瓚o紝鍙互鏌ユ壘鐩稿叧鐨勮祫鏂欍傛垜浠粛鐒惰璁?/span>OpenGL鐨勭浉鏈虹煩闃電殑鎺ㄥ錛屽叾浠?/span>API鍙互綾諱技鐨勬帹瀵箋?/span>

鍧愭爣杞崲鍏紡

鎴戜滑鍦ㄣ婂悜閲忓嚑浣曞湪娓告垙緙栫▼涓殑浣跨敤6銆嬩腑鎻愬埌浜嗘浜ょ煩闃碉紝榪欐槸鍦ㄥ熀鐞嗚鍩虹涓婄殑涓涓蹇碉紙濡傛灉瀵瑰熀鐞嗚涓嶆槸寰堢啛鎮夛紝璇峰弬鑰冦婂悜閲忓嚑浣曞湪娓告垙緙栫▼涓殑浣跨敤6銆嬶級銆傛浜ょ煩闃墊墍鏈夊垪錛堣錛夊悜閲忔瀯鎴愪簡涓涓?strong>鏍囧噯姝d氦鍩?/strong>錛堝畠鐨勫垪鍚戦噺閮芥槸浜掔浉姝d氦錛屽茍涓旈暱搴︿負1錛夛紝鍥犳錛屽彲浠ユ妸姝d氦鐭╅樀鐪嬫垚鏄涓涓潗鏍囩郴鐨勬弿榪般傚悓鏃訛紝鎴戜滑鐭ラ亾錛?strong>鍚屼竴涓悜閲忥紝鍦ㄤ笉鍚岀殑鍩轟笅闈㈢殑鍧愭爣鏄笉鍚岀殑銆傚洜姝わ紝鍙互鐢ㄦ浜ょ煩闃墊潵浠h〃鍧愭爣緋伙紙涔熷彲浠ョ湅浣滃熀錛変粠鑰屽啓鍑哄湪緇熶竴鐨勫弬鑰冪郴錛堝叏灞鍧愭爣緋伙級涓嬪悓涓涓悜閲忓湪涓嶅悓鍩轟腑鐨勫潗鏍囥?/span>

 

 

 

涓婇潰鐨勫紡瀛愯〃紺猴紝鍙傝冪郴涓悜閲?/span>v鍦ㄥ熀Q涓殑鍧愭爣鏄?/span>v’錛屽湪鍩?/span>R涓殑鍧愭爣鏄?/span>v’’錛堟敞鎰忚繖閲岀殑鐜涓嬪熀鐭╅樀鏄敤鍒楀悜閲忚〃紺虹殑錛岃繖鏍風浉涔樹箣鍚庣殑緇撴灉琛ㄧず鐨勬槸鍩哄悜閲忕殑綰挎х粍鍚堬級銆傚涓嬪浘錛岄粦鑹插熀琛ㄧず鐨勬槸鍙傝冪郴錛岀孩鑹叉槸鍩?/span>Q錛岃摑鑹叉槸鍩?/span>R錛?/span>v鏄弬鑰冪郴涓殑涓涓悜閲忋?/span>

 

 

涓轟簡璁╁ぇ瀹舵洿娓呮錛屾垜涓句竴涓緥瀛愶細

 

 

涓婂紡鐨勬剰鎬濇槸錛氬弬鑰冪郴涓殑鍚戦噺v錛屽湪鍩?/span>Q( 1 0 0 ), ( 0 1 0 ), ( 0 0 1)涓嬬殑鍧愭爣鏄?/span>( 1 2 6 )錛屽湪鍩?/span>R( 0 1 0 ), ( 0 0 1 ), ( 1 0 0 )涓嬬殑鍧愭爣鏄?/span>( 2 6 1 )銆傛敞鎰忥紝鎴戜滑鎵璁ㄨ鐨勬墍鏈夊熀鍜屽悜閲忕殑鍏崇郴閮藉彧鏄嚎鎬ц〃紺虹殑鍏崇郴錛屾病鏈変綅縐誨叧緋伙紝鍥犳鎴戜滑鐢?/span>3D鍚戦噺琛ㄧず錛岃屼笉鏄?/span>4D鐨勯綈嬈¤〃紺猴紙濡傛灉瀵歸綈嬈″潗鏍囦笉鏄緢鐔熸倝錛岃鍙傝冦婃繁鍏ユ帰绱㈤忚鎶曞獎鍙樻崲銆嬩腑鐨勯綈嬈″潗鏍囬儴鍒嗭級銆?/span>

榪欐牱錛屽凡鐭ヤ竴涓熀Q鍜屽悜閲?/span>v鍦ㄥ畠涔嬩腑鐨勫潗鏍?/span>v’錛屼互鍙婂彟澶栦竴涓熀R錛屾垜浠彲浠ラ氳繃v=Qv’=Rv’’鍏紡鏉ヨ綆?/span>v’’銆?/span>

 

 

 

涓婇潰灝辨槸姹?/span>v’’鐨勫叕寮忥紝娉ㄦ剰鍒板彸杈歸渶瑕佽綆楀熀R鐨勯嗙煩闃?/span>R^-1錛屽洜涓哄熀R鏄浜ょ煩闃碉紝鑰屾浜ょ煩闃電殑涓涓噸瑕佹ц川灝辨槸閫嗙瓑浜庤漿緗傚洜姝わ紝鎴戜滑鍙互鎶婂畠鍐欐垚

 

榪欎釜鍏紡灝辨槸鍧愭爣杞崲鍏紡銆傜壒鍒湴錛屽鏋?/span>Q鏄拰鍙傝冪郴鐩稿悓鐨勫潗鏍囩郴錛?/span>3D緙栫▼涓ぇ澶氭暟鎯呭喌涓嬪姝わ級錛屾瘮濡備笘鐣屽潗鏍囩郴錛屽垯Q鏄竴涓崟浣嶇煩闃?/span>I錛屽垯鎴戜滑鍙互鎶婂畠鍐欐垚

 

 

榪欎釜鍧愭爣杞崲鍏紡鍙互瑙i噴涓猴細瀵逛簬涓栫晫鍧愭爣緋諱腑鐨勫悜閲?/span>v’錛屽畠鍦ㄥ潗鏍囩郴R涓殑鍧愭爣鏄?/span>v’’銆傛垜浠湪鍚庨潰浼氱敤鍒拌繖涓叕寮忋?/span>

    闄や簡鐢ㄦ浜ょ煩闃墊潵闃愯堪鍧愭爣杞崲錛屾垜浠繕鍙互浣跨敤鐐圭Н鎵浠h〃鐨?strong>鍏辯嚎紼嬪害錛?/span>colinear amount錛夋潵鎻忚堪鍧愭爣杞崲錛?/span>AndréLaMothe鐨勩?/span>Tricks Of The 3D Game Programming Gurus銆嬶級銆傝繖涓悊璁哄熀浜庣偣縐殑鍑犱綍鎰忎箟錛氫竴涓悜閲忓湪鍙︿竴涓悜閲忎笂鐨勫叡綰跨▼搴︺傛瘮濡備袱涓悜閲?/span>v鍜?/span>s鐐圭Н

 

 

鍑犱綍鎰忎箟灝辨槸v鍦?/span>s鏂瑰悜涓婄殑鎶曞獎闀垮拰s鐨勯暱鐨勪箻縐紝鎴栬呮槸s鍦?/span>v鏂瑰悜涓婄殑鎶曞獎闀垮拰v鐨勯暱鐨勪箻縐紙縐殑絎﹀彿涓猴細鑻?/span>v鍜?/span>s鐨勮搴﹀皬浜?/span>90搴︼紝縐負姝o紝濡傛灉鏄洿瑙掞紝縐負闆訛紝鍚﹀垯涓鴻礋錛夈?/span>

 

榪涗竴姝ュ湴錛屽鏋?/span>v鏄竴涓崟浣嶅悜閲忥紝鍒欒繖涓偣縐彲浠ヨВ閲婁負s鍦?/span>v鏂瑰悜涓婄殑鎶曞獎闀匡紱濡傛灉s鏄竴涓崟浣嶅悜閲忥紝鍒欏彲浠ヨВ閲婁負v鍦?/span>s鏂瑰悜涓婄殑鎶曞獎闀褲傜幇鍦紝鎴戜滑鎶婄偣縐帹騫垮埌鍩虹殑灞傛涓婏紝鎶婁竴涓悜閲?/span>v’鍜屼竴涓熀R鐨勪笁涓崟浣嶈醬鍚戦噺榪涜鐐圭Н錛岀偣縐緱鍒扮殑涓変釜鍊煎垯琛ㄧず榪欎釜鍚戦噺鍦ㄨ繖涓熀涓嬬殑鍧愭爣v’’

 

 

鏁板琛ㄨ揪涓?/span>

 

 

璇鋒敞鎰忥紝涓轟簡璁?/span>v’鑳藉鍜屽熀鐨勬瘡涓涓醬鍚戦噺榪涜鐐圭Н錛屾垜浠繀欏繪妸鍩哄啓鎴愯漿緗艦寮忥紝鍗寵鍚戦噺涔樻硶錛屽惁鍒欏氨鍙樻垚浜嗙嚎鎬х粍鍚堢殑褰㈠紡銆傝繖涓叕寮忕殑鎰忎箟灝辨槸涓栫晫絀洪棿涓殑鍚戦噺v’鍜屽熀R鐨勮醬鍚戦噺榪涜鐐圭Н浠庤屽緱鍒?/span>v’鍦?/span>R涓嬬殑鍏辯嚎紼嬪害——鍧愭爣v’’銆傝繖涓叕寮忓拰涓婇潰鎴戜滑寰楀埌鐨勫潗鏍囪漿鎹㈠叕寮忎竴妯′竴鏍楓傚疄闄呬笂鎴戜滑鏄粠涓や釜涓嶅悓鐨勬柟鍚戣В閲婂悓涓涓叕寮忥紝甯屾湜浣犺兘澶熸妸涓や釜鏂瑰悜閮界悊瑙c?/span>

UVN緋葷粺

UVN緋葷粺鏈韓鏄竴涓熀銆傚涓嬪浘鎵紺猴紝涓変釜鍩哄悜閲?/span>U錛?/span>V錛?/span>N鍒嗗埆鎸囧悜鐩告満鐨勫彸鏂廣佷笂鏂瑰拰鍚庢柟浠庤屾瀯鎴愬彸鎵嬪潗鏍囩郴錛岀浉鏈哄垯澶勪簬鍧愭爣鍘熺偣銆?/span>

 

 

浣跨敤UVN緋葷粺鍙互闈炲父鏂逛究鐨勮緗浉鏈烘湞鍚戙傚畠鐨勬瀯寤鴻繃紼嬪涓嬪鎵紺?/span>

 

鍦ㄥ弬鑰冪郴涓嬶紙榪欓噷鏄笘鐣屽潗鏍囩郴錛夛紝鎴戜滑緇欏畾鐩告満鐨勪綅緗?#8212;—eye錛岃瑙傚療鐨勫皬浜虹殑浣嶇疆——lookat錛屼互鍙婁竴涓緟鍔╁悜閲?#8212;—鍙傝冪郴涓〃紺?#8220;涓婃柟”鐨勫悜閲?/span>up錛岃繖涓悜閲忎細褰卞搷U鍜?/span>V鐨勭敓鎴愶紝鍥犱負浠ュ悗姹傚嚭鐨?/span>V鍚戦噺浼氬湪up鍜?/span>N鍚戦噺鎵鍐沖畾鐨勫鉤闈笂錛堟湁鍏磋叮鍙互鑷繁璇佹槑涓涓嬶級錛屾墍浠ュ彲浠ラ氳繃榪欎釜鍚戦噺璁╃浉鏈轟駭鐢熶笉鍚岀殑鍋忚漿銆?/span>

 

 

棣栧厛鎴戜滑姹傚嚭鍚戦噺N

 

 

寰堢畝鍗曪紝鐢ㄧ洰鏍囦綅緗噺鍘葷浉鏈虹殑浣嶇疆錛屽氨鏄浘涓殑姝ラ2銆傜3姝ワ紝鎴戜滑姹傚嚭鍚戦噺U銆傝繖涓姝ラ渶瑕佷嬌鐢ㄨ緟鍔╁悜閲?/span>up錛屽鏋滀笉甯屾湜鐩告満浜х敓鍋忚漿錛屼竴鑸彇(0, 1, 0)

 

 

 

U浣跨敤鍚戦噺鐨勫弶涔樺疄鐜幫紝灝辨槸鍥句腑鐨勬楠?/span>3銆傛渶鍚庯紝浣跨敤N鍜?/span>U璁$畻鍑哄悜閲?/span>V

 

 

鏈鍚庡皢璁$畻鍑虹殑U錛?/span>V鍜?/span>N榪涜鍗曚綅鍖栵紝灝卞緱鍒頒簡鐩告満鐨?/span>UVN緋葷粺銆傜粨鍚堜笂闈㈡垜浠皥鍒扮殑鍧愭爣杞崲鐞嗚錛屾垜浠彲浠ユ妸UVN緋葷粺鐪嬩綔鏄浉鏈虹殑鍩猴紝浠庤屽彲浠ユ柟渚跨殑鎶婁竴涓悜閲忓湪涓栫晫鍧愭爣鍜岀浉鏈哄潗鏍囪繘琛岃漿鎹€?/span>

OpenGL鐨?/span>gluLookAt(eyex, eyey, eyez, lookatx, lookaty, lookatz, upx, upy, upz)鏂規硶灝辨槸浣跨敤鐨勪笂闈㈢殑姝ラ榪涜鐩告満鐭╅樀鐨勮緗傚畠鐨勫墠涓変釜鍙傛暟灝辨槸鐩告満鐨勪綅緗悜閲忥紝涓棿涓変釜鍙傛暟鏄墍瑙傚療鐨勭洰鏍囦綅緗悜閲忥紝鏈鍚庝笁涓弬鏁板氨鏄緟鍔╁悜閲?/span>up銆?/span>

鐩告満鐭╅樀鐨勬帹瀵?/span>

涓婇潰鎴戜滑宸茬粡璇存槑浜?/span>UVN緋葷粺錛屾爣鍑嗘祦姘寸嚎涓氨鏄嬌鐢ㄤ簡UVN緋葷粺鏉ユ弿榪扮浉鏈恒?/span>U, V, N鍒嗗埆瀵瑰簲鐩告満鍧愭爣緋葷殑涓変釜鍩哄悜閲忋?/span>

姝ゅ錛屽浜庝竴涓浉鏈烘潵璇達紝瀹冨湪寮濮嬬殑鏃跺欏拰涓栫晫鍧愭爣緋繪槸閲嶅悎鐨勶紝鐢ㄦ埛鎺у埗鐩告満鍦ㄤ笘鐣岀┖闂翠腑縐誨姩涔嬪悗錛岀浉鏈虹殑鐘舵佸彲浠ョ敤涓や釜灞炴ф潵鎻忚堪——鏈濆悜鍜屼綅緗備篃灝辨槸璇達紝鏈変簡榪欎袱涓睘鎬э紝涓涓浉鏈烘ā鍨嬪湪涓栫晫涓殑鐘舵佸氨紜畾浜嗐傝岃繖涓や釜灞炴э紝鎴戜滑鐢ㄥ彉鎹㈢殑鐞嗚鏉ユ弿榪幫紝灝辨槸鏃嬭漿鍜屽鉤縐匯傚彲浠ユ兂璞★紝瀵逛簬涓栫晫涓殑浠諱綍涓涓浉鏈虹姸鎬侊紝鎴戜滑閮藉彲浠ユ妸瀹冪湅鎴愭槸錛氱浉鏈哄厛鍥寸粫鑷韓鍩哄師鐐規棆杞竴瀹氱殑瑙掑害錛岀劧鍚庡鉤縐誨埌涓栫晫絀洪棿鐨勬煇涓湴鏂廣備笅鍥懼睍紺轟簡榪欎釜榪囩▼

 

 

 

鍥句腑錛岀孩鑹叉槸鐩告満鐨勫熀錛岃岄粦鑹叉槸涓栫晫鐨勫熀錛屼篃灝辨槸鍙傝冪郴銆傚皬浜烘槸涓栫晫涓殑涓涓墿浣撱傜浉鏈哄湪縐誨姩涔嬪墠錛屼袱涓熀鏄噸鍚堢殑銆傚綋鐩告満鍦ㄥ睆騫曚腑瀹氫綅鏃訛紝瀹冮鍏堜細榪涜鏈濆悜鐨勭‘瀹?#8212;—鏃嬭漿錛岀劧鍚庤繘琛屼綅緗殑紜畾——騫崇Щ銆傚浘涓殑Rotation鍜?/span>Translation涓ゆ灝辨槸鐩告満瀹氫綅鏃舵墍鍙戠敓鐨勫彉鎹€傚彲浠ョ湅鍒扮浉鏈虹浉瀵逛簬灝忎漢鐨勮繍鍔ㄣ傝屽綋榪涜鐩告満鍙樻崲鐨勬椂鍊欙紝灝忎漢搴旇浠庝笘鐣屽熀鍙樻崲鍒扮浉鏈虹殑鍩洪噷闈€傝繖鏍鳳紝浠栧簲璇ヨ繘琛屼竴涓浉鏈哄畾浣嶇殑閫嗗畾浣嶏紝鍏堥嗗鉤縐誨皬浜哄拰鐩告満錛岀劧鍚庡啀閫嗘棆杞皬浜哄拰鐩告満錛屾渶鍚庣浉鏈哄綊浣嶏紝灝忎漢闅忕浉鏈哄彉鍒頒簡鐩告満絀洪棿銆傝繖鏄敱Inverse Translation鍜?/span>Inverse Rotation涓や釜姝ラ瀹屾垚鐨勶紝榪欎袱涓楠ゅ氨鏄浉鏈哄彉鎹€傜幇鍦ㄦ垜浠帹瀵艱繖涓彉鎹€傛垜浠妸鍏崇郴鍐欏嚭鏉ワ紝鐩告満鏈韓鐨勫彉鎹?/span>C鍖呮嫭涓や釜鍏冪礌

 

鍏朵腑T鏄鉤縐誨彉鎹紝R鏄棆杞彉鎹€傝岀浉鏈哄彉鎹㈡槸鐩告満鏈韓鍙樻崲鐨勯嗗彉鎹?/span>

 

 

榪欎釜C^-1灝辨槸鎴戜滑瑕佹眰鍑虹殑鐩告満鍙樻崲銆傚叾涓?/span>T^-1寰堝鏄撴眰鍑猴紝鍗?/span>

 

 

鑰?/span>R^-1灝辨病鏈夎繖涔堝鏄撴眰鍑烘潵浜嗐傛墍浠ワ紝鎴戜滑涓嶆眰瀹冿紝鎴戜滑鐢?/span>UVN緋葷粺銆備粈涔堟剰鎬濓紵璇風湅涓婇潰鐨勯偅寮犵浉鏈哄彉鎹㈢殑鍥撅紝褰撶浉鏈哄彉鎹㈣繘琛屽畬Inverse Translation榪欎竴姝ヤ箣鍚庯紝鐩告満鐨勫師鐐瑰拰涓栫晫鍘熺偣灝遍噸鍚堜簡錛屼篃灝辨槸澶勭悊瀹屼簡鍏充簬騫崇Щ鐨勫彉鎹€傛帴涓嬫潵鎴戜滑瑕佸仛鐨勬槸閫嗘棆杞紝鑰屽叾瀹?strong>閫嗘棆杞殑鐩殑錛屽氨鏄寰楀埌鐩墠涓栫晫鍧愭爣涓粡榪囬嗗鉤縐?/strong>鐨勫皬浜哄湪鐩告満鍧愭爣緋諱腑鐨勫潗鏍?/strong>銆傛槸涓嶆槸浼兼浘鐩歌瘑錛熸垜浠殑鍧愭爣鍙樻崲鐞嗚灝辨淳涓婄敤鍦轟簡銆傛垜浠洖蹇嗕笂闈㈠潗鏍囧彉鎹㈢殑鍏紡

 

 

榪欎釜鍧愭爣杞崲鍏紡鍙互瑙i噴涓猴細瀵逛簬涓栫晫鍧愭爣緋諱腑鐨勫悜閲?/span>v’錛屽畠鍦ㄥ潗鏍囩郴R涓殑鍧愭爣鏄?/span>v’’銆傞偅涔堬紝鎴戜滑鍙互濂楃敤鍦ㄨ繖閲岋細瀵逛簬涓栫晫鍧愭爣涓殑宸茬粡緇忚繃閫嗗鉤縐葷殑鍧愭爣v’錛屽畠鍦ㄧ浉鏈哄潗鏍囩郴R涓殑鍧愭爣鏄?/span>v’’銆備粈涔堟槸鐩告満鍧愭爣緋?/span>R錛熷氨鏄垜浠殑鐩告満UVN緋葷粺錛佸氨鏄?/span>

 

 

鍒欑浉鏈哄彉鎹㈢殑瀹屾暣鍏紡灝辨槸

 

 

榪欓噷錛?/span>v鏄皬浜哄湪涓栫晫絀洪棿涓殑鍧愭爣錛?/span>v’’鏄皬浜哄湪鐩告満絀洪棿涓殑鍧愭爣銆傚垯鐩告満鍙樻崲鐭╅樀灝辨槸

 

鑷蟲錛屾垜浠氨瀹屾垚浜嗙浉鏈虹煩闃電殑鎺ㄥ銆傜墿浣撶粡榪囪繖涓煩闃靛氨浠庝笘鐣岀┖闂村彉鎹㈠埌浜嗙浉鏈虹┖闂達紝絳夊緟嫻佹按綰垮瀹冭繘琛屾姇褰卞彉鎹€?/span>OpenGL灝變嬌鐢ㄤ簡涓婇潰鎺ㄥ鍑虹殑鏈鍚庣殑閭d釜鐭╅樀銆傚笇鏈涗綘鑳藉鐞嗚В榪欎釜鎺ㄥ榪囩▼錛屽鏋滀綘鏈変粈涔堥棶棰樻垨鑰呬笉鍚岀殑鐪嬫硶錛岃涓瀹氱粰鎴戝彂淇?/span>J涓嬫瑙侊紒



]]>
[緲昏瘧]DirectX 鐘舵? 杞?http://www.shnenglu.com/wc250en007/archive/2011/06/05/148113.htmlLet me see seeLet me see seeSun, 05 Jun 2011 07:32:00 GMThttp://www.shnenglu.com/wc250en007/archive/2011/06/05/148113.htmlhttp://www.shnenglu.com/wc250en007/comments/148113.htmlhttp://www.shnenglu.com/wc250en007/archive/2011/06/05/148113.html#Feedback0http://www.shnenglu.com/wc250en007/comments/commentRss/148113.htmlhttp://www.shnenglu.com/wc250en007/services/trackbacks/148113.html闃呰鍏ㄦ枃

]]>
灝勭嚎涓庝笁瑙掑艦鐩鎬氦鍒ゆ柇鍑芥暟 (澶囧繕)http://www.shnenglu.com/wc250en007/archive/2010/08/18/123826.htmlLet me see seeLet me see seeWed, 18 Aug 2010 06:23:00 GMThttp://www.shnenglu.com/wc250en007/archive/2010/08/18/123826.htmlhttp://www.shnenglu.com/wc250en007/comments/123826.htmlhttp://www.shnenglu.com/wc250en007/archive/2010/08/18/123826.html#Feedback0http://www.shnenglu.com/wc250en007/comments/commentRss/123826.htmlhttp://www.shnenglu.com/wc250en007/services/trackbacks/123826.htmlBOOL D3DXIntersectTri(
        CONST D3DXVECTOR3
* p0,                           //欏剁偣1
        CONST D3DXVECTOR3
* p1,
        CONST D3DXVECTOR3
* p2,
        CONST D3DXVECTOR3
* pRayPos,               //灝勭嚎璧峰浣嶇疆
        CONST D3DXVECTOR3
* pRayDir,               //灝勭嚎鏂瑰悜
        FLOAT
*             pU,                                          //涓変釜鐐規瘮閲?br>        FLOAT*             pV,
        FLOAT
*             pDist                                       //灝勭嚎璧風偣鍒頒氦鐐逛綅緗?br>        );

para 錛?/font>鍏朵腑p0, p1, p2鍒嗗埆鎸囧悜涓夎褰㈢殑涓変釜欏剁偣錛宲osition涓哄皠綰胯搗鐐癸紝direction涓哄皠綰挎柟鍚戝悜閲忥紝u,v,涓轟氦鐐歸噸蹇冨潗鏍囷紝鍥犱負涓嶅彲鑳藉彧鐐瑰埌欏剁偣涓婏紝鍙兘鐐瑰湪涓夎褰㈣寖鍥村唴錛宒istance涓鴻搗鐐瑰埌浜ょ偣璺濈錛屾垚鍔熻繑鍥濼RUE錛屽け璐ヨ繑鍥濬ALSE銆?br>
vPickPos = v0 * ( 1-u-v) + v1*u + v2*v = v0 + u * (v1 - v0) + v * (v3 - v0); 

鐗瑰埆娉ㄦ剰錛氭柟鍚戝悜閲忓繀欏諱負鍗曚綅鍚戦噺錛屽嵆pRayDir - pRayPos  涓哄崟浣嶅悜閲忓惁鍒欙紝pDist鐨勫煎拰鍚戦噺闀垮害鎴愭姣斿叧緋?/span>


eg:
    D3DXVECTOR3    rayDir;
    D3DXVECTOR3 vDest( 
10,200,0.f);
    D3DXVECTOR3 vSour( 
10,200,-10.f );
    rayDir 
= vDest - vSour;
    D3DXVec3Normalize( 
&rayDir, &rayDir );                                    //灝嗘柟鍚戝悜閲忓寲
    BOOL bHit 
= D3DXIntersectTri( &D3DXVECTOR3(0.0f,  0.0f0.5f),
                                
&D3DXVECTOR3(250.0f250.0f0.5f),
                                
&D3DXVECTOR3(0.0f250.0f0.5f),        //pos
                                &D3DXVECTOR3(10,200,-10.f ),            //dir
                                &rayDir, 
                                
&fu, 
                                
&fv, 
                                
&t );

娓告垙涓簲鐢?br>
    float CTerrain::GetZByXY( float fx,float fy  )
    
{
        
//姹傚嚭絎嚑涓柟鏍?/span>
        int x,y;
        x 
= fx / MAPTILESIZE;
        y 
= fy / MAPTILESIZE;
        
if( x < 0 || x >= m_iMapWidth-1  )
            
return 0;
        
if( y < 0 || y >= m_iMapHeight-1 )
            
return 0;    
        
        
//鏂規牸鍥涢《鐐?/span>
        D3DXVECTOR3 *pos[4];
        pos[
0= &m_ppPointPos[ y ][ x ];
        pos[
1= &m_ppPointPos[ y ][ x + 1];
        pos[
2= &m_ppPointPos[ y + 1][ x + 1];
        pos[
3= &m_ppPointPos[ y + 1][ x ];

        
float fMaxZ;
        fMaxZ 
= pos[ 0 ]->z ;
        
int iLoop;
        
for( iLoop = 1 ; iLoop < 4 ; iLoop ++ )
        
{
            
if( fMaxZ < pos[ iLoop ]->z )
                fMaxZ 
= pos[ iLoop ]->z;
        }


        
// 姹傜溂鐫涘拰鍦板艦鐩鎬氦浣嶇疆錛屾敞鎰忓崟浣嶅寲鏂瑰悜鍚戦噺
        D3DXVECTOR3 vEye,vDir(0,0,-1);

        vEye.x 
= fx;
        vEye.y 
= fy;
        vEye.z 
= fMaxZ + 10;

        
float fU,fV,fDis;

        
if!D3DXIntersectTri( pos[0],pos[1] ,pos[2],&vEye,&vDir,            //涓夎褰?
            &fU,&fV,&fDis ) )
        
{    
            
if!D3DXIntersectTri( pos[2],pos[3],pos[0],&vEye,&vDir,        //涓夎褰?
                &fU,&fV,&fDis ) )
            
{
                
return 0.0f;
            }

            
else
            
{
                
return vEye.z - fDis;
            }

        }

        
else
        
{
            
return vEye.z - fDis;
        }

    }


 鍙傝?
鍦板艦紕版挒璁$畻:
涓.濡傛灉鏄紶鏍囩偣鍑誨湴闈?
鍙皢灝勭嚎鍥哄畾闀垮害騫跺垎孌?鐒跺悗鐢ㄥ皠綰夸笌姣忎竴涓垎孌典笂鐨勭偣鎵钀藉湪鐨勫湴闈ile(涓や釜涓夎褰?榪涜姹備氦,
鐩鎬氦鍒欒繑鍥炲搴斾綅緗?鍚﹀垯緇х畫涓庝笅涓涓涓婄殑鐐規墍钀藉湪鐨勫湴闈ile姹備氦
/*
      0      1
       ---->
      | \  |
      |  \ |
    2 V ---  3   
*/
榪欓噷涓嶈璁虹偣鍑誨睆騫曟眰灝勭嚎鏂規硶涓庡皠綰垮垎孌靛鐞?鍙畻姹備氦
濡備笅d3d姹備氦寰楀嚭uv,鍐嶆眰浣嶇疆:
 VECTOR3 vPickPos;
 // 鍙寵竟:
 if( D3DXIntersectTri(&v0, &v1, &v3, &vOrig, &vDir, &u, &v, NULL) == TRUE)
 {
  vPickPos = v0 + u * (v1 - v0) + v * (v3 - v0); 
  return vPickPos.z;
 }
 // 宸﹁竟:
 if( D3DXIntersectTri(&v0, &v3, &v2, &vOrig, &vDir, &u, &v, NULL) == TRUE)
 {
  vPickPos = v0 + u * (v3 - v0) + v * (v2 - v0);  
  return vPickPos.z;
 }

浜?濡傛灉鏄粎鏄眰鍦拌〃鏌愮偣楂樺害
鍒欏彲鐢╱v閲嶅績姹傛硶(娉ㄦ剰涓婅堪絎竴鐐圭殑d3d鐨勯偅涓猽v閲嶅績姹傛硶涓嶅お涓鏍?浠栫殑uv璺熶粬鐨勫悜閲忚蛋?)
 float u = (fX-(int)fX);
 float v = (fY-(int)fY);

 float p0 = fHeight[0];
 float p1 = fHeight[1];
 float p2 = fHeight[2];
 float p3 = fHeight[3];

 if(u>v){ // 鍙寵竟
  return p0 + u * (p1 - p0) + v * (p3 - p1);; 
 }
 else{  // 宸﹁竟
  return  p0 + u * (p3 - p2) + v * (p2 - p0);
 }


http://flipcode.spaces.live.com/blog/cns!8E578E7901A88369!1052.entry

]]>
楂樼駭綰圭悊娣峰悎http://www.shnenglu.com/wc250en007/archive/2010/08/12/123253.htmlLet me see seeLet me see seeThu, 12 Aug 2010 14:51:00 GMThttp://www.shnenglu.com/wc250en007/archive/2010/08/12/123253.htmlhttp://www.shnenglu.com/wc250en007/comments/123253.htmlhttp://www.shnenglu.com/wc250en007/archive/2010/08/12/123253.html#Feedback0http://www.shnenglu.com/wc250en007/comments/commentRss/123253.htmlhttp://www.shnenglu.com/wc250en007/services/trackbacks/123253.html闃呰鍏ㄦ枃

]]>
青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品
  • <ins id="pjuwb"></ins>
    <blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote>
      <noscript id="pjuwb"></noscript>
            <sup id="pjuwb"><pre id="pjuwb"></pre></sup>
              <dd id="pjuwb"></dd>
              <abbr id="pjuwb"></abbr>
              中文一区二区| 亚洲精品免费观看| 99国产精品久久久久久久久久| 另类尿喷潮videofree| 欧美综合77777色婷婷| 亚洲美女视频| 国产欧美91| 久久久国产精品一区二区中文| 亚洲欧美色婷婷| 在线日韩成人| 日韩视频中午一区| 国产色婷婷国产综合在线理论片a| 欧美在线看片a免费观看| 久久精品国产在热久久| 亚洲精品久久久久久一区二区| 亚洲精品在线免费观看视频| 亚洲人成绝费网站色www| 国产精品成人国产乱一区| 久久精品人人做人人爽| 美国十次成人| 亚洲在线中文字幕| 亚洲国产成人porn| 国产精品久久国产精品99gif | 亚洲国产婷婷香蕉久久久久久99| 亚洲国产精品va在线看黑人动漫 | 欧美色播在线播放| 久久大逼视频| 欧美高清视频在线播放| 欧美中文字幕第一页| 免费久久99精品国产| 欧美一级免费视频| 欧美激情在线| 亚洲国产高清在线观看视频| 亚洲最黄网站| 91久久久一线二线三线品牌| 小处雏高清一区二区三区| 亚洲精品1区2区| 欧美在线观看一区二区| 亚洲在线成人| 欧美激情视频网站| 老司机精品视频网站| 国产精品超碰97尤物18| 亚洲国产欧美精品| 激情成人综合| 欧美一区二区三区男人的天堂| 99精品视频免费| 久久综合网hezyo| 久久av一区二区三区亚洲| 欧美日韩在线综合| 亚洲欧洲在线免费| 亚洲欧洲日产国产网站| 蜜桃久久av| 免费观看国产成人| 激情视频一区二区| 欧美在线免费视屏| 久久久久久久久伊人| 国产精品一区在线观看| 亚洲天堂av在线免费观看| 一区二区三区四区五区视频| 欧美黄色一区| 亚洲激情在线| 一区二区动漫| 欧美日韩午夜精品| 99视频精品免费观看| 亚洲婷婷在线| 国产精品热久久久久夜色精品三区| 日韩亚洲不卡在线| 午夜视频在线观看一区二区| 国产精品成人一区| 午夜精品久久久久久久99热浪潮| 亚洲欧美日本国产有色| 国产欧美日韩三区| 欧美在线视频播放| 蜜桃伊人久久| 亚洲日本一区二区三区| 欧美区高清在线| 99国产精品久久久久老师| 午夜激情综合网| 国产欧美一区二区三区在线老狼 | 亚洲国产欧美日韩| 一区二区三区日韩| 国产精品日韩在线一区| 午夜视频一区| 免费久久99精品国产| 亚洲欧洲精品一区二区三区不卡| 欧美国产综合视频| 亚洲图片在线| 久久嫩草精品久久久久| 91久久精品美女高潮| 国产精品九色蝌蚪自拍| 欧美在线视频日韩| 亚洲第一黄网| 午夜精品久久久| 亚洲成色777777女色窝| 欧美视频一区二区三区…| 欧美一区二区三区婷婷月色| 欧美高清视频www夜色资源网| 宅男精品导航| 一区二区三区我不卡| 欧美日韩亚洲国产精品| 欧美在线视频观看免费网站| 亚洲精品黄色| 老巨人导航500精品| 亚洲一级片在线观看| 久久久久久网址| 99成人免费视频| 欧美高清不卡在线| 久久九九久精品国产免费直播| 日韩午夜在线视频| 樱桃视频在线观看一区| 欧美日韩在线三级| 麻豆国产精品va在线观看不卡| 在线视频精品| 亚洲国产高清在线观看视频| 久久久青草青青国产亚洲免观| 亚洲一二三区精品| 亚洲精品一区在线观看香蕉| 黄色成人av网| 国产视频精品xxxx| 国产精品大全| 欧美日韩国产免费观看| 免费亚洲一区二区| 久久久久久久97| 亚洲欧美久久久久一区二区三区| 91久久久久久| 亚洲国产成人在线播放| 每日更新成人在线视频| 久久精品国产第一区二区三区最新章节| 日韩网站在线观看| 最新精品在线| 亚洲国产精品成人va在线观看| 国产一区二三区| 国产亚洲女人久久久久毛片| 久久黄金**| 欧美一区二区三区的| 亚洲欧美www| 亚洲欧美三级伦理| 午夜一区在线| 欧美一区二区私人影院日本| 亚洲欧美日韩精品| 亚洲综合色在线| 午夜精品免费视频| 先锋影音网一区二区| 性色一区二区| 久久综合综合久久综合| 美脚丝袜一区二区三区在线观看| 久久综合福利| 免费成人av资源网| 欧美连裤袜在线视频| 欧美日韩国产不卡| 国产精品久久77777| 国产毛片久久| 激情五月综合色婷婷一区二区| 欧美激情亚洲综合一区| 欧美精品乱码久久久久久按摩| 99热这里只有精品8| 亚洲欧美日韩一区在线| 亚洲影视中文字幕| 欧美在线免费| 欧美a级片网| 亚洲精品中文字幕在线观看| 亚洲丝袜av一区| 欧美伊人久久久久久久久影院| 久久阴道视频| 欧美日韩一区二区精品| 国产美女精品人人做人人爽| 国产午夜精品在线观看| 在线高清一区| 亚洲一二三级电影| 蜜臀va亚洲va欧美va天堂| 最新69国产成人精品视频免费| 亚洲视频在线观看| 久久久青草青青国产亚洲免观| 欧美大片专区| 国产日产精品一区二区三区四区的观看方式 | 欧美日本中文字幕| 国产精品影视天天线| 亚洲观看高清完整版在线观看| 夜夜精品视频一区二区| 久久精品成人一区二区三区蜜臀| 欧美国产综合| 午夜视频一区| 欧美体内she精视频| 91久久国产精品91久久性色| 午夜精品视频| 亚洲欧洲一区二区在线观看| 久久不见久久见免费视频1| 欧美日韩精品高清| 在线观看日韩专区| 性做久久久久久| 91久久黄色| 开心色5月久久精品| 国产乱码精品| 亚洲视频www| 亚洲第一精品久久忘忧草社区| 亚洲欧美成人网| 欧美图区在线视频| 亚洲毛片在线观看| 欧美成人激情视频免费观看| 亚洲欧美日韩国产另类专区|