锘??xml version="1.0" encoding="utf-8" standalone="yes"?>欧美日韩一区二区免费视频,乱中年女人伦av一区二区,亚洲国产成人av好男人在线观看http://www.shnenglu.com/ming81/category/15287.htmlzh-cnSun, 23 Oct 2011 09:58:08 GMTSun, 23 Oct 2011 09:58:08 GMT60(鍦板熀宸?Ogre鍔ㄧ敾鎷懼彇鍑芥暟浼樺寲鐗堟湰http://www.shnenglu.com/ming81/archive/2011/09/28/157090.html灝忚儢濡?/dc:creator>灝忚儢濡?/author>Wed, 28 Sep 2011 08:39:00 GMThttp://www.shnenglu.com/ming81/archive/2011/09/28/157090.htmlbool GraphicalWorld::pickPoint(const Ray& ray, Vector3 &hitpoint,&nbs...  闃呰鍏ㄦ枃

]]>
(鎼繍宸?Ogre鍔ㄧ敾鎷懼彇鍑芥暟http://www.shnenglu.com/ming81/archive/2011/09/20/156312.html灝忚儢濡?/dc:creator>灝忚儢濡?/author>Tue, 20 Sep 2011 06:22:00 GMThttp://www.shnenglu.com/ming81/archive/2011/09/20/156312.htmlIEntity* GraphicalWorld::pickEntity(const Ray& ray, uint32 mask) &nb...  闃呰鍏ㄦ枃

]]>
(鍦板熀宸?OgreNode鏃嬭漿銆佷綅縐?/title><link>http://www.shnenglu.com/ming81/archive/2011/04/27/145157.html</link><dc:creator>灝忚儢濡?/dc:creator><author>灝忚儢濡?/author><pubDate>Wed, 27 Apr 2011 08:54:00 GMT</pubDate><guid>http://www.shnenglu.com/ming81/archive/2011/04/27/145157.html</guid><description><![CDATA[<p> </p> <div style="BORDER-RIGHT: #cccccc 1px solid; PADDING-RIGHT: 5px; BORDER-TOP: #cccccc 1px solid; PADDING-LEFT: 4px; FONT-SIZE: 13px; PADDING-BOTTOM: 4px; BORDER-LEFT: #cccccc 1px solid; WIDTH: 98%; WORD-BREAK: break-all; PADDING-TOP: 4px; BORDER-BOTTOM: #cccccc 1px solid; BACKGROUND-COLOR: #eeeeee"><span style="COLOR: #000000">  </span><span style="COLOR: #0000ff">void</span><span style="COLOR: #000000"> Node::rotate(</span><span style="COLOR: #0000ff">const</span><span style="COLOR: #000000"> Quaternion</span><span style="COLOR: #000000">&</span><span style="COLOR: #000000"> q, TransformSpace relativeTo)<br>    {<br>        </span><span style="COLOR: #008000">//</span><span style="COLOR: #008000"> Normalise quaternion to avoid drift</span><span style="COLOR: #008000"><br></span><span style="COLOR: #000000">        Quaternion qnorm </span><span style="COLOR: #000000">=</span><span style="COLOR: #000000"> q;<br>        qnorm.normalise();<br><br>        </span><span style="COLOR: #0000ff">switch</span><span style="COLOR: #000000">(relativeTo)<br>        {<br>        </span><span style="COLOR: #0000ff">case</span><span style="COLOR: #000000"> TS_PARENT:<br>            </span><span style="COLOR: #008000">//</span><span style="COLOR: #008000"> Rotations are normally relative to local axes, transform up</span><span style="COLOR: #008000"><br></span><span style="COLOR: #000000">            mOrientation </span><span style="COLOR: #000000">=</span><span style="COLOR: #000000"> qnorm </span><span style="COLOR: #000000">*</span><span style="COLOR: #000000"> mOrientation;<br>            </span><span style="COLOR: #0000ff">break</span><span style="COLOR: #000000">;<br>        </span><span style="COLOR: #0000ff">case</span><span style="COLOR: #000000"> TS_WORLD:<br>            </span><span style="COLOR: #008000">//</span><span style="COLOR: #008000"> Rotations are normally relative to local axes, transform up</span><span style="COLOR: #008000"><br></span><span style="COLOR: #000000">            mOrientation </span><span style="COLOR: #000000">=</span><span style="COLOR: #000000"> mOrientation </span><span style="COLOR: #000000">*</span><span style="COLOR: #000000"> _getDerivedOrientation().Inverse()<br>                </span><span style="COLOR: #000000">*</span><span style="COLOR: #000000"> qnorm </span><span style="COLOR: #000000">*</span><span style="COLOR: #000000"> _getDerivedOrientation();<br>            </span><span style="COLOR: #0000ff">break</span><span style="COLOR: #000000">;<br>        </span><span style="COLOR: #0000ff">case</span><span style="COLOR: #000000"> TS_LOCAL:<br>            </span><span style="COLOR: #008000">//</span><span style="COLOR: #008000"> Note the order of the mult, i.e. q comes after</span><span style="COLOR: #008000"><br></span><span style="COLOR: #000000">            mOrientation </span><span style="COLOR: #000000">=</span><span style="COLOR: #000000"> mOrientation </span><span style="COLOR: #000000">*</span><span style="COLOR: #000000"> qnorm;<br>            </span><span style="COLOR: #0000ff">break</span><span style="COLOR: #000000">;<br>        }<br>        needUpdate();<br>    }</span></div> 鏃嬭漿鏄湰鍦板潗鏍囨棆杞?br><br> <div style="BORDER-RIGHT: #cccccc 1px solid; PADDING-RIGHT: 5px; BORDER-TOP: #cccccc 1px solid; PADDING-LEFT: 4px; FONT-SIZE: 13px; PADDING-BOTTOM: 4px; BORDER-LEFT: #cccccc 1px solid; WIDTH: 98%; WORD-BREAK: break-all; PADDING-TOP: 4px; BORDER-BOTTOM: #cccccc 1px solid; BACKGROUND-COLOR: #eeeeee"><span style="COLOR: #000000">    </span><span style="COLOR: #008000">//</span><span style="COLOR: #008000">-----------------------------------------------------------------------</span><span style="COLOR: #008000"><br></span><span style="COLOR: #000000">    </span><span style="COLOR: #0000ff">void</span><span style="COLOR: #000000"> Node::translate(</span><span style="COLOR: #0000ff">const</span><span style="COLOR: #000000"> Vector3</span><span style="COLOR: #000000">&</span><span style="COLOR: #000000"> d, TransformSpace relativeTo)<br>    {<br>        </span><span style="COLOR: #0000ff">switch</span><span style="COLOR: #000000">(relativeTo)<br>        {<br>        </span><span style="COLOR: #0000ff">case</span><span style="COLOR: #000000"> TS_LOCAL:<br>            </span><span style="COLOR: #008000">//</span><span style="COLOR: #008000"> position is relative to parent so transform downwards</span><span style="COLOR: #008000"><br></span><span style="COLOR: #000000">            mPosition </span><span style="COLOR: #000000">+=</span><span style="COLOR: #000000"> mOrientation </span><span style="COLOR: #000000">*</span><span style="COLOR: #000000"> d;<br>            </span><span style="COLOR: #0000ff">break</span><span style="COLOR: #000000">;<br>        </span><span style="COLOR: #0000ff">case</span><span style="COLOR: #000000"> TS_WORLD:<br>            </span><span style="COLOR: #008000">//</span><span style="COLOR: #008000"> position is relative to parent so transform upwards</span><span style="COLOR: #008000"><br></span><span style="COLOR: #000000">            </span><span style="COLOR: #0000ff">if</span><span style="COLOR: #000000"> (mParent)<br>            {<br>                mPosition </span><span style="COLOR: #000000">+=</span><span style="COLOR: #000000"> (mParent</span><span style="COLOR: #000000">-></span><span style="COLOR: #000000">_getDerivedOrientation().Inverse() </span><span style="COLOR: #000000">*</span><span style="COLOR: #000000"> d)<br>                    </span><span style="COLOR: #000000">/</span><span style="COLOR: #000000"> mParent</span><span style="COLOR: #000000">-></span><span style="COLOR: #000000">_getDerivedScale();<br>            }<br>            </span><span style="COLOR: #0000ff">else</span><span style="COLOR: #000000"><br>            {<br>                mPosition </span><span style="COLOR: #000000">+=</span><span style="COLOR: #000000"> d;<br>            }<br>            </span><span style="COLOR: #0000ff">break</span><span style="COLOR: #000000">;<br>        </span><span style="COLOR: #0000ff">case</span><span style="COLOR: #000000"> TS_PARENT:<br>            mPosition </span><span style="COLOR: #000000">+=</span><span style="COLOR: #000000"> d;<br>            </span><span style="COLOR: #0000ff">break</span><span style="COLOR: #000000">;<br>        }<br>        needUpdate();<br><br>    }</span></div> 鍙樻崲鏄浉瀵逛簬鐖跺潗鏍囧彉鎹?br> <div style="BORDER-RIGHT: #cccccc 1px solid; PADDING-RIGHT: 5px; BORDER-TOP: #cccccc 1px solid; PADDING-LEFT: 4px; FONT-SIZE: 13px; PADDING-BOTTOM: 4px; BORDER-LEFT: #cccccc 1px solid; WIDTH: 98%; WORD-BREAK: break-all; PADDING-TOP: 4px; BORDER-BOTTOM: #cccccc 1px solid; BACKGROUND-COLOR: #eeeeee"><span style="COLOR: #008000">//</span><span style="COLOR: #008000">-----------------------------------------------------------------------</span><span style="COLOR: #008000"><br></span><span style="COLOR: #000000">    </span><span style="COLOR: #0000ff">void</span><span style="COLOR: #000000"> Node::updateFromParentImpl(</span><span style="COLOR: #0000ff">void</span><span style="COLOR: #000000">) </span><span style="COLOR: #0000ff">const</span><span style="COLOR: #000000"><br>    {<br>        </span><span style="COLOR: #0000ff">if</span><span style="COLOR: #000000"> (mParent)<br>        {<br>            </span><span style="COLOR: #008000">//</span><span style="COLOR: #008000"> Update orientation</span><span style="COLOR: #008000"><br></span><span style="COLOR: #000000">            </span><span style="COLOR: #0000ff">const</span><span style="COLOR: #000000"> Quaternion</span><span style="COLOR: #000000">&</span><span style="COLOR: #000000"> parentOrientation </span><span style="COLOR: #000000">=</span><span style="COLOR: #000000"> mParent</span><span style="COLOR: #000000">-></span><span style="COLOR: #000000">_getDerivedOrientation();<br>            </span><span style="COLOR: #0000ff">if</span><span style="COLOR: #000000"> (mInheritOrientation)<br>            {<br>                </span><span style="COLOR: #008000">//</span><span style="COLOR: #008000"> Combine orientation with that of parent</span><span style="COLOR: #008000"><br></span><span style="COLOR: #000000">                mDerivedOrientation </span><span style="COLOR: #000000">=</span><span style="COLOR: #000000"> parentOrientation </span><span style="COLOR: #000000">*</span><span style="COLOR: #000000"> mOrientation;<br>            }<br>            </span><span style="COLOR: #0000ff">else</span><span style="COLOR: #000000"><br>            {<br>                </span><span style="COLOR: #008000">//</span><span style="COLOR: #008000"> No inheritence</span><span style="COLOR: #008000"><br></span><span style="COLOR: #000000">                mDerivedOrientation </span><span style="COLOR: #000000">=</span><span style="COLOR: #000000"> mOrientation;<br>            }<br><br>            </span><span style="COLOR: #008000">//</span><span style="COLOR: #008000"> Update scale</span><span style="COLOR: #008000"><br></span><span style="COLOR: #000000">            </span><span style="COLOR: #0000ff">const</span><span style="COLOR: #000000"> Vector3</span><span style="COLOR: #000000">&</span><span style="COLOR: #000000"> parentScale </span><span style="COLOR: #000000">=</span><span style="COLOR: #000000"> mParent</span><span style="COLOR: #000000">-></span><span style="COLOR: #000000">_getDerivedScale();<br>            </span><span style="COLOR: #0000ff">if</span><span style="COLOR: #000000"> (mInheritScale)<br>            {<br>                </span><span style="COLOR: #008000">//</span><span style="COLOR: #008000"> Scale own position by parent scale, NB just combine<br>                </span><span style="COLOR: #008000">//</span><span style="COLOR: #008000"> as equivalent axes, no shearing</span><span style="COLOR: #008000"><br></span><span style="COLOR: #000000">                mDerivedScale </span><span style="COLOR: #000000">=</span><span style="COLOR: #000000"> parentScale </span><span style="COLOR: #000000">*</span><span style="COLOR: #000000"> mScale;<br>            }<br>            </span><span style="COLOR: #0000ff">else</span><span style="COLOR: #000000"><br>            {<br>                </span><span style="COLOR: #008000">//</span><span style="COLOR: #008000"> No inheritence</span><span style="COLOR: #008000"><br></span><span style="COLOR: #000000">                mDerivedScale </span><span style="COLOR: #000000">=</span><span style="COLOR: #000000"> mScale;<br>            }<br><br>            </span><span style="COLOR: #008000">//</span><span style="COLOR: #008000"> Change position vector based on parent's orientation & scale</span><span style="COLOR: #008000"><br></span><span style="COLOR: #000000">            mDerivedPosition </span><span style="COLOR: #000000">=</span><span style="COLOR: #000000"> parentOrientation </span><span style="COLOR: #000000">*</span><span style="COLOR: #000000"> (parentScale </span><span style="COLOR: #000000">*</span><span style="COLOR: #000000"> mPosition);<br><br>            </span><span style="COLOR: #008000">//</span><span style="COLOR: #008000"> Add altered position vector to parents</span><span style="COLOR: #008000"><br></span><span style="COLOR: #000000">            mDerivedPosition </span><span style="COLOR: #000000">+=</span><span style="COLOR: #000000"> mParent</span><span style="COLOR: #000000">-></span><span style="COLOR: #000000">_getDerivedPosition();<br>        }<br>        </span><span style="COLOR: #0000ff">else</span><span style="COLOR: #000000"><br>        {<br>            </span><span style="COLOR: #008000">//</span><span style="COLOR: #008000"> Root node, no parent</span><span style="COLOR: #008000"><br></span><span style="COLOR: #000000">            mDerivedOrientation </span><span style="COLOR: #000000">=</span><span style="COLOR: #000000"> mOrientation;<br>            mDerivedPosition </span><span style="COLOR: #000000">=</span><span style="COLOR: #000000"> mPosition;<br>            mDerivedScale </span><span style="COLOR: #000000">=</span><span style="COLOR: #000000"> mScale;<br>        }<br><br>        mCachedTransformOutOfDate </span><span style="COLOR: #000000">=</span><span style="COLOR: #000000"> </span><span style="COLOR: #0000ff">true</span><span style="COLOR: #000000">;<br>        mNeedParentUpdate </span><span style="COLOR: #000000">=</span><span style="COLOR: #000000"> </span><span style="COLOR: #0000ff">false</span><span style="COLOR: #000000">;<br><br>    }</span></div> // <img src ="http://www.shnenglu.com/ming81/aggbug/145157.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.shnenglu.com/ming81/" target="_blank">灝忚儢濡?/a> 2011-04-27 16:54 <a href="http://www.shnenglu.com/ming81/archive/2011/04/27/145157.html#Feedback" target="_blank" style="text-decoration:none;">鍙戣〃璇勮</a></div>]]></description></item><item><title>(鎼繍宸?OGRE鐨勭┖闂村彉鎹?translate()鐨勯櫡闃?/title><link>http://www.shnenglu.com/ming81/archive/2011/04/27/145155.html</link><dc:creator>灝忚儢濡?/dc:creator><author>灝忚儢濡?/author><pubDate>Wed, 27 Apr 2011 08:31:00 GMT</pubDate><guid>http://www.shnenglu.com/ming81/archive/2011/04/27/145155.html</guid><description><![CDATA[<span id="hvzpftn" class=Apple-style-span style="WORD-SPACING: 0px; FONT: medium Simsun; TEXT-TRANSFORM: none; COLOR: rgb(0,0,0); TEXT-INDENT: 0px; WHITE-SPACE: normal; LETTER-SPACING: normal; BORDER-COLLAPSE: separate; orphans: 2; widows: 2; -webkit-border-horizontal-spacing: 0px; -webkit-border-vertical-spacing: 0px; -webkit-text-decorations-in-effect: none; -webkit-text-size-adjust: auto; -webkit-text-stroke-width: 0px"><span id="hvzpftn" class=Apple-style-span style="FONT-SIZE: 14px; LINE-HEIGHT: 21px; FONT-FAMILY: verdana, sans-serif; TEXT-ALIGN: left"> <p style="PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: 1em 0px 0.5em; PADDING-TOP: 0px"><span style="LINE-HEIGHT: 21px; FONT-FAMILY: arial, helvetica, sans-serif">GRE鐨勭┖闂村彉鎹?瀵逛簬鏂版墜鏉ヨ鏄竴涓ご鐤肩殑闂,鑰屽叾涓殑闄烽槺涔熸槸涓鍫嗕竴鍫?鍗充嬌鎴戝凡緇忕埇鍑鴻繖浜涢櫡闃?鎴戣繕鏄寰楁湁蹇呰璁蹭竴涓?</span></p> <p style="PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: 1em 0px 0.5em; PADDING-TOP: 0px"><span style="LINE-HEIGHT: 21px; FONT-FAMILY: arial, helvetica, sans-serif">translate()榪欎釜紲炵鐨勫嚱鏁?緗戜笂鍙戠幇涓涓湅鍙嬩腑浜嗛櫡闃?</span></p> <p style="PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: 1em 0px 0.5em; PADDING-TOP: 0px"><span style="LINE-HEIGHT: 21px; FONT-FAMILY: arial, helvetica, sans-serif">浠ヤ笅榛戜綋瀛椾負璁哄潧鏌愪釜緗戝弸鐨勯敊璇悊瑙?</span></p> <p style="PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: 1em 0px 0.5em; PADDING-TOP: 0px"><span style="LINE-HEIGHT: 21px; FONT-FAMILY: arial, helvetica, sans-serif"><strong>----------------------------------------------------------------------------------------------------------------------------------</strong></span></p> <p style="PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: 1em 0px 0.5em; PADDING-TOP: 0px"><span style="LINE-HEIGHT: 21px; FONT-FAMILY: arial, helvetica, sans-serif"><strong>鍦–SDN鍜実ameres涓婇兘鍙戜簡榪欎釜闂錛屼竴鐩存病浜鴻В絳旓紝涓嶇煡閬撹繖鍎挎庝箞鏍鳳紵<br>void createScene() {<span id="hvzpftn" class=Apple-converted-space> </span><br>... //絎竴涓墿浣?鍧愭爣鍘熺偣)  <br>Entity* head = mSceneMgr->createEntity("object1", "ogrehead.mesh");   <br>head->setMaterialName("Examples/Rockwall");<span id="hvzpftn" class=Apple-converted-space> </span><br>SceneNode* node1 = rootNode->createChildSceneNode();<br>node1->attachObject(head);<br><br>//絎簩涓墿浣?span class=Apple-converted-space> </span><br>head = mSceneMgr->createEntity("object2", "ogrehead.mesh");<span id="hvzpftn" class=Apple-converted-space> </span><br>SceneNode* node2 = node1->createChildSceneNode();<span id="hvzpftn" class=Apple-converted-space> </span><br>node2->attachObject(head);<span id="hvzpftn" class=Apple-converted-space> </span><br>node2->translate(Vector3(50, 0, 0), SceneNode::TS_PARENT);<span id="hvzpftn" class=Apple-converted-space> </span><br><br>//絎笁涓墿浣?span class=Apple-converted-space> </span><br>head = mSceneMgr->createEntity("object3", "ogrehead.mesh");<br>SceneNode* node3 = node2->createChildSceneNode();<span id="hvzpftn" class=Apple-converted-space> </span><br>node3->attachObject(head);<br>node3->translate(Vector3(0, 50, 0), SceneNode::TS_WORLD);<span id="hvzpftn" class=Apple-converted-space> </span><br>node3->yaw(Degree(90), SceneNode::TS_LOCAL);<span id="hvzpftn" class=Apple-converted-space> </span><br>}<br>鎸夌収絀洪棿鍙樻崲鍒嗘瀽錛宯ode1鍦ㄥ師鐐癸紝node2鐨勪笘鐣屽潗鏍囨槸(50, 0, 0)錛宯ode3鐨勪笘鐣屽潗鏍囨槸(0, 50, 0)錛?br>浣嗘槸浠庢樉紺虹殑緇撴灉鏉ョ湅node3鏄?50, 50, 0)錛?br>鏃犺鐢ㄥ摢涓猅ransformSpace鍊鹼紝緇撴灉閮芥槸涓鏍風殑錛歵ranslate閮芥槸鐩稿浜巔arent錛屾棆杞兘鏄湪loacal涓?/strong></span></p> <p style="PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: 1em 0px 0.5em; PADDING-TOP: 0px"><span style="LINE-HEIGHT: 21px; FONT-FAMILY: arial, helvetica, sans-serif"><strong> </strong></span></p> <p style="PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: 1em 0px 0.5em; PADDING-TOP: 0px"><span style="LINE-HEIGHT: 21px; FONT-FAMILY: arial, helvetica, sans-serif"><strong>鎴戝榪欎釜鍙傛暟鐨勭悊瑙f槸錛?br>TS_WORLD錛氫笉綆″綋鍓嶈妭鐐規槸鍦ㄥ摢涓妭鐐逛笅錛屼粬鐨勬搷浣滈兘鏄浉瀵逛簬涓栫晫鍧愭爣緋葷殑鍘熺偣鐨勩?br>    濡俷ode3鏄湪node2涓嬮潰錛屾墍浠ヤ粬鐨勫垵濮嬩笘鐣屽潗鏍囧簲璇ユ槸(50,0,0)錛?br>    濡傛灉瀹僼ranslate(Vector3(0, 50, 0), SceneNode::TS_LOCAL)錛?涓栫晫鍧愭爣搴旇鏄?50, 50, 0)<br>    濡傛灉瀹僼ranslate(Vector3(0, 50, 0), SceneNode::TS_WORLD)錛?鐩稿浜庝笘鐣屽潗鏍囧師鐐圭殑騫崇Щ錛屼笘鐣屽潗鏍囧簲璇ユ槸(0, 50, 0)</strong></span></p> <p style="PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: 1em 0px 0.5em; PADDING-TOP: 0px"><span style="LINE-HEIGHT: 21px; FONT-FAMILY: arial, helvetica, sans-serif"><strong>-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------</strong></span></p> <p style="PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: 1em 0px 0.5em; PADDING-TOP: 0px"><span style="LINE-HEIGHT: 21px; FONT-FAMILY: arial, helvetica, sans-serif"> </span></p> <p style="PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: 1em 0px 0.5em; PADDING-TOP: 0px"><span style="LINE-HEIGHT: 21px; FONT-FAMILY: arial, helvetica, sans-serif">榪欎釜緗戝弸閬囧埌鐨勯棶棰?鍏跺疄灝辨槸translate鍙樻崲鐨勯棶棰?涓轟粈涔堜粬浼氳繖涔堢悊瑙?鎴戜滑鎱㈡參鍒嗘瀽:</span></p> <p style="PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: 1em 0px 0.5em; PADDING-TOP: 0px"><span style="LINE-HEIGHT: 21px; FONT-FAMILY: arial, helvetica, sans-serif"> </span></p> <p style="PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: 1em 0px 0.5em; PADDING-TOP: 0px"><span style="LINE-HEIGHT: 21px; FONT-FAMILY: arial, helvetica, sans-serif">translate()榪欎釜鍑芥暟,鍏跺疄鏄浉瀵逛簬鐖惰妭鐐圭殑鐩稿縐誨姩,鑰屼笉鏄偅涓綉鍙嬬悊瑙g殑緇濆縐誨姩.</span></p> <p style="PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: 1em 0px 0.5em; PADDING-TOP: 0px"><span style="LINE-HEIGHT: 21px; FONT-FAMILY: arial, helvetica, sans-serif">浣嗘槸濡傛灉鏄浉瀵逛簬鐖惰妭鐐圭殑鐩稿縐誨姩,榪樿閫夋嫨3涓弬鑰冪┖闂村共鍢???</span></p> <p style="PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: 1em 0px 0.5em; PADDING-TOP: 0px"><span style="LINE-HEIGHT: 21px; FONT-FAMILY: arial, helvetica, sans-serif">榪欏氨鏄叧閿墍鍦?榪?涓弬鑰冪┖闂?鏄喅瀹氱浉瀵圭Щ鍔ㄩ噺鐨勬柟鍚戠殑,鑰屼笉鏄偅涓綉鍙嬬悊瑙f垚鐨勭Щ鍔ㄧ殑浣嶇疆!!!</span></p> <p style="PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: 1em 0px 0.5em; PADDING-TOP: 0px"><span style="LINE-HEIGHT: 21px; FONT-FAMILY: arial, helvetica, sans-serif"> </span></p> <p style="PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: 1em 0px 0.5em; PADDING-TOP: 0px"><span style="LINE-HEIGHT: 21px; FONT-FAMILY: 'arial black', 'avant garde'"><span style="LINE-HEIGHT: 21px; FONT-FAMILY: arial, helvetica, sans-serif">涓轟粈涔堜粬鐨勪唬鐮佷腑鐨勭3涓妭鐐規棤璁烘庝箞鏀瑰彉鍙傝冪┖闂寸粨鏋滈兘涓鏍?濡傛灉鐞嗚В鎴愭柟鍚?灝辮眮鐒跺紑鏈椾簡.<br>鍥犱負涓栫晫鍘熺偣,鐖惰妭鐐?浠栨湰韜?榪?涓妭鐐圭殑闈㈠悜鐨勬柟鍚戦兘鏄竴鏍風殑(榛樿-Z鏂瑰悜),鎵浠ョ浉瀵圭Щ鍔ㄧ殑鍊兼槸涓鏍?閮芥槸Y鏂瑰悜鐩稿縐誨姩50</span></span><span style="LINE-HEIGHT: 21px; FONT-FAMILY: 'arial black', 'avant garde'"><span style="LINE-HEIGHT: 21px; FONT-FAMILY: arial, helvetica, sans-serif"><br><br><span style="LINE-HEIGHT: 21px; FONT-FAMILY: arial, helvetica, sans-serif">濡傛灉涓栫晫鍘熺偣,鐖惰妭鐐歸兘鏄粯璁ら潰鍚慫姝f柟鍚?鏈韓鑺傜偣鏃嬭漿90搴﹂潰鍚慪鐨勬柟鍚?br>濡傛灉浠栧湪鏈湴絀洪棿translate(Vector3(0, 50, 0),SceneNode::TS_LOCAL),<br>鍥犱負浠栨湰韜湞鍚慪, 鍦ㄦ湰鍦扮┖闂碮鏂瑰悜縐誨姩50, 鍦ㄤ笘鐣岀┖闂?鍏跺疄灝辨槸-Z鏂瑰悜縐誨姩浜?0.</span></span></span></p> <p style="PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: 1em 0px 0.5em; PADDING-TOP: 0px"><span style="LINE-HEIGHT: 21px; FONT-FAMILY: 'arial black', 'avant garde'"><span style="LINE-HEIGHT: 21px; FONT-FAMILY: arial, helvetica, sans-serif">涓鍙ヨ瘽:閮芥槸鐩稿鐖惰妭鐐圭Щ鍔?0鍗曚綅,鑰屽弬鑰冪┖闂村彧鏄喅瀹氳繖50涓崟浣嶇Щ鍔ㄧ殑鏂瑰悜!<br><br>鎵浠ュ弬鑰冪┖闂寸悊瑙f垚鏈濆悜,灝卞浜?br>涓栫晫絀洪棿----------璁ゅ畾涓栫晫鍘熺偣鐨勬湞鍚戜負鏍囧噯鏈濆悜,榛樿-Z鏂瑰悜<br>鐖惰妭鐐圭┖闂?---------璁ゅ畾鐖惰妭鐐圭殑鏈濆悜涓烘爣鍑嗘湞鍚?br>鏈湴絀洪棿--------------璁ゅ畾鏈韓鑺傜偣鐨勬湞鍚戜負鏍囧噯鏈濆悜</span></span></p> <p style="PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: 1em 0px 0.5em; PADDING-TOP: 0px"><span style="LINE-HEIGHT: 21px; FONT-FAMILY: arial, helvetica, sans-serif"> </span></p> <p style="PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: 1em 0px 0.5em; PADDING-TOP: 0px"><span style="LINE-HEIGHT: 21px; FONT-FAMILY: 'arial black', 'avant garde'"><span style="LINE-HEIGHT: 21px; FONT-FAMILY: arial, helvetica, sans-serif">閭d釜緗戝弸鐨勭悊瑙?鍏跺疄鍚堟儏鍚堢悊,浠栫殑鐞嗚В鍏跺疄灝辨槸涓嬮潰鍋囨兂鐨勫嚱鏁?</span></span></p> <p style="PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: 1em 0px 0.5em; PADDING-TOP: 0px"><span style="LINE-HEIGHT: 21px; FONT-FAMILY: 'arial black', 'avant garde'"><span style="LINE-HEIGHT: 21px; FONT-FAMILY: arial, helvetica, sans-serif">setPosition(TS_WORLD);<span id="hvzpftn" class=Apple-converted-space> </span><br>setPosition(TS_PARENT);<span id="hvzpftn" class=Apple-converted-space> </span><br>setPosition(TS_LOCAL);</span></span></p> <p style="PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: 1em 0px 0.5em; PADDING-TOP: 0px"><span style="LINE-HEIGHT: 21px; FONT-FAMILY: 'arial black', 'avant garde'"><span style="LINE-HEIGHT: 21px; FONT-FAMILY: arial, helvetica, sans-serif">鍙儨榪欏彧鏄亣鎯?璁劇疆浣嶇疆鐨勫嚱鏁板茍娌℃湁鍙傝冪┖闂村彲浠ラ墌~~</span></span></p> <p style="PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: 1em 0px 0.5em; PADDING-TOP: 0px"><span style="LINE-HEIGHT: 21px; FONT-FAMILY: 'arial black', 'avant garde'"><span style="LINE-HEIGHT: 21px; FONT-FAMILY: arial, helvetica, sans-serif">OGRE涓轟粈涔堜笉璁劇疆榪欐牱鐨勫嚱鏁板憿?鍥犱負鍏跺疄宸茬粡鏈夋浛浠g殑鍑芥暟浜?</span></span><span style="LINE-HEIGHT: 21px; FONT-FAMILY: 'arial black', 'avant garde'"><span style="LINE-HEIGHT: 21px; FONT-FAMILY: arial, helvetica, sans-serif"><br><span style="LINE-HEIGHT: 21px; FONT-FAMILY: arial, helvetica, sans-serif">setPosition()   // 鐩稿鐖剁┖闂村潗鏍?/span></span></span></p> <p style="PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: 1em 0px 0.5em; PADDING-TOP: 0px"><span style="LINE-HEIGHT: 21px; FONT-FAMILY: 'arial black', 'avant garde'"><span style="LINE-HEIGHT: 21px; FONT-FAMILY: arial, helvetica, sans-serif">setDerivedPosition()  // 涓栫晫絀洪棿緇濆鍧愭爣</span></span></p> <p style="PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: 1em 0px 0.5em; PADDING-TOP: 0px"><span style="LINE-HEIGHT: 21px; FONT-FAMILY: 'arial black', 'avant garde'"><span style="LINE-HEIGHT: 21px; FONT-FAMILY: arial, helvetica, sans-serif">鑰屾湰鍦扮┖闂寸殑璁劇疆浣嶇疆鍑芥暟鏍規湰涓嶉渶瑕?...</span></span><span style="LINE-HEIGHT: 21px; FONT-FAMILY: 'arial black', 'avant garde'"><span style="LINE-HEIGHT: 21px; FONT-FAMILY: arial, helvetica, sans-serif"><br></span></span></p> <p style="PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: 1em 0px 0.5em; PADDING-TOP: 0px"><span style="LINE-HEIGHT: 21px; FONT-FAMILY: arial, helvetica, sans-serif"> </span></p> <p style="PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: 1em 0px 0.5em; PADDING-TOP: 0px"><span style="LINE-HEIGHT: 21px; FONT-FAMILY: arial, helvetica, sans-serif">鏈鍚?鍥炲ご涓鎯?涓轟粈涔堝鏄撴妸translate()鐞嗚В閿?...鍘熷洜灝辨槸translate(TS_PARENT)鐩稿鐖剁┖闂寸Щ鍔?br>鐨勬椂鍊?濡傛灉鎶婂弬鑰冪┖闂寸埗絀洪棿鐞嗚В鎴愭柟鍚戞垨鑰呬綅緗?2縐嶆儏鍐典笅緇撴灉鏄濂芥槸涓鏍風殑,宸у悎鍟?br>灝辨槸榪欑宸у悎,鏆楄棌浜嗕竴涓櫡榪?璁╁緢澶氫漢璁や負鐞嗚В鎴愪綅緗濂芥槸瀵圭殑...</span></p> <p style="PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: 1em 0px 0.5em; PADDING-TOP: 0px"><span style="LINE-HEIGHT: 21px; FONT-FAMILY: arial, helvetica, sans-serif">涓嶄俊鐪嬫簮鐮?</span></p> <p style="PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: 1em 0px 0.5em; PADDING-TOP: 0px"><span style="LINE-HEIGHT: 21px; FONT-FAMILY: arial, helvetica, sans-serif"> </span></p> <p style="PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: 1em 0px 0.5em; PADDING-TOP: 0px"></p> <span style="LINE-HEIGHT: 21px; FONT-FAMILY: arial, helvetica, sans-serif"></span> <p> </p> <div style="BORDER-RIGHT: #cccccc 1px solid; PADDING-RIGHT: 5px; BORDER-TOP: #cccccc 1px solid; PADDING-LEFT: 4px; FONT-SIZE: 13px; PADDING-BOTTOM: 4px; BORDER-LEFT: #cccccc 1px solid; WIDTH: 98%; WORD-BREAK: break-all; PADDING-TOP: 4px; BORDER-BOTTOM: #cccccc 1px solid; BACKGROUND-COLOR: #eeeeee"><span style="COLOR: #0000ff">void</span><span style="COLOR: #000000"> Node::translate(</span><span style="COLOR: #0000ff">const</span><span style="COLOR: #000000"> Vector3</span><span style="COLOR: #000000">&</span><span style="COLOR: #000000"> d, TransformSpace relativeTo)  <br>{  <br>    </span><span style="COLOR: #0000ff">switch</span><span style="COLOR: #000000">(relativeTo)  <br>    {  <br>    </span><span style="COLOR: #0000ff">case</span><span style="COLOR: #000000"> TS_LOCAL:  <br>        </span><span style="COLOR: #008000">//</span><span style="COLOR: #008000"> position is relative to parent so transform downwards  </span><span style="COLOR: #008000"><br></span><span style="COLOR: #000000">        mPosition </span><span style="COLOR: #000000">+=</span><span style="COLOR: #000000"> mOrientation </span><span style="COLOR: #000000">*</span><span style="COLOR: #000000"> d;  <br>        </span><span style="COLOR: #0000ff">break</span><span style="COLOR: #000000">;  <br>    </span><span style="COLOR: #0000ff">case</span><span style="COLOR: #000000"> TS_WORLD:  <br>        </span><span style="COLOR: #008000">//</span><span style="COLOR: #008000"> position is relative to parent so transform upwards  </span><span style="COLOR: #008000"><br></span><span style="COLOR: #000000">        </span><span style="COLOR: #0000ff">if</span><span style="COLOR: #000000"> (mParent)  <br>        {  <br>            mPosition </span><span style="COLOR: #000000">+=</span><span style="COLOR: #000000"> (mParent</span><span style="COLOR: #000000">-></span><span style="COLOR: #000000">_getDerivedOrientation().Inverse() </span><span style="COLOR: #000000">*</span><span style="COLOR: #000000"> d)  <br>                </span><span style="COLOR: #000000">/</span><span style="COLOR: #000000"> mParent</span><span style="COLOR: #000000">-></span><span style="COLOR: #000000">_getDerivedScale();  <br>        }  <br>        </span><span style="COLOR: #0000ff">else</span><span style="COLOR: #000000">  <br>        {  <br>            mPosition </span><span style="COLOR: #000000">+=</span><span style="COLOR: #000000"> d;  <br>        }  <br>        </span><span style="COLOR: #0000ff">break</span><span style="COLOR: #000000">;  <br>    </span><span style="COLOR: #0000ff">case</span><span style="COLOR: #000000"> TS_PARENT:  <br>        mPosition </span><span style="COLOR: #000000">+=</span><span style="COLOR: #000000"> d;  <br>        </span><span style="COLOR: #0000ff">break</span><span style="COLOR: #000000">;  <br>    }  <br>    needUpdate();  <br>  <br>}  <br></span></div> <p> </p> <p style="PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: 1em 0px 0.5em; PADDING-TOP: 0px"><span style="LINE-HEIGHT: 21px; FONT-FAMILY: arial, helvetica, sans-serif"> </span></p> <p style="PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: 1em 0px 0.5em; PADDING-TOP: 0px"><span style="LINE-HEIGHT: 21px; FONT-FAMILY: arial, helvetica, sans-serif"> </span></p> <p style="PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: 1em 0px 0.5em; PADDING-TOP: 0px"><span style="LINE-HEIGHT: 21px; FONT-FAMILY: arial, helvetica, sans-serif">鍥犱負mPosition鐩稿浜庣埗鑺傜偣鐨勪綅緗拰鏂瑰悜,</span></p> <p style="PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: 1em 0px 0.5em; PADDING-TOP: 0px"><span style="LINE-HEIGHT: 21px; FONT-FAMILY: arial, helvetica, sans-serif">鎵浠ヨ綆楃粨鏋滈兘瑕佹崲綆楁垚鐖剁┖闂寸浉鍔?</span></p> <p style="PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: 1em 0px 0.5em; PADDING-TOP: 0px"><span style="LINE-HEIGHT: 21px; FONT-FAMILY: arial, helvetica, sans-serif"> </span></p> <p style="PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: 1em 0px 0.5em; PADDING-TOP: 0px"><span style="LINE-HEIGHT: 21px; FONT-FAMILY: arial, helvetica, sans-serif">鏈湴絀洪棿,鏈濇湰韜妭鐐圭殑鏈濆悜縐誨姩d,鎹㈠埌mPosition鐨勬墍鍦ㄧ殑鐖剁┖闂村彧闇瑕佹棆杞竴瀹氳搴?</span></p> <p style="PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: 1em 0px 0.5em; PADDING-TOP: 0px"><span style="LINE-HEIGHT: 21px; FONT-FAMILY: arial, helvetica, sans-serif">榪欎釜瑙掑害搴旇鏄湰韜妭鐐規柟鍚戝拰鐖惰妭鐐圭殑鏂瑰悜鐨勫す瑙?姝eソ鏄痬Orientation</span></p> <p style="PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: 1em 0px 0.5em; PADDING-TOP: 0px"><span style="LINE-HEIGHT: 21px; FONT-FAMILY: arial, helvetica, sans-serif">mPosition += mOrientation * d;</span></p> <p style="PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: 1em 0px 0.5em; PADDING-TOP: 0px"><span style="LINE-HEIGHT: 21px; FONT-FAMILY: arial, helvetica, sans-serif"> </span></p> <p style="PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: 1em 0px 0.5em; PADDING-TOP: 0px"><span style="LINE-HEIGHT: 21px; FONT-FAMILY: arial, helvetica, sans-serif">涓栫晫絀洪棿,鏈濅笘鐣屽師鐐圭殑鏈濆悜縐誨姩d ,鎹㈠埌mPosition鐨勬墍鍦ㄧ埗絀洪棿鍙渶瑕佹棆杞竴瀹氳搴?</span></p> <p style="PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: 1em 0px 0.5em; PADDING-TOP: 0px"><span style="LINE-HEIGHT: 21px; FONT-FAMILY: arial, helvetica, sans-serif">榪欎釜瑙掑害搴旇鏄笘鐣屽師鐐規柟鍚戝拰鐖惰妭鐐圭殑鏂瑰悜鐨勫す瑙?姝eソ鏄埗鑺傜偣涓栫晫緇濆瑙掑害鍐嶅彇鍙?</span></p> <p style="PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: 1em 0px 0.5em; PADDING-TOP: 0px"><span style="LINE-HEIGHT: 21px; FONT-FAMILY: arial, helvetica, sans-serif">(涓轟粈涔堣鍙栧弽,2涓洓鍏冩暟鐩鎬箻鏄笉鑳戒氦鎹㈢殑,鍥犱負涓栫晫鑺傜偣鍜岀埗鑺傜偣澶硅 != 鐖惰妭鐐瑰拰涓栫晫鑺傜偣澶硅,姝eソ鐩稿弽)</span></p> <p style="PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: 1em 0px 0.5em; PADDING-TOP: 0px"><span style="LINE-HEIGHT: 21px; FONT-FAMILY: arial, helvetica, sans-serif">       mPosition += (mParent->_getDerivedOrientation().Inverse() * d)<br>                    / mParent->_getDerivedScale();</span></p> <p style="PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: 1em 0px 0.5em; PADDING-TOP: 0px"><span style="LINE-HEIGHT: 21px; FONT-FAMILY: arial, helvetica, sans-serif"> </span></p> <p style="PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: 1em 0px 0.5em; PADDING-TOP: 0px"><span style="LINE-HEIGHT: 21px; FONT-FAMILY: arial, helvetica, sans-serif">鐖惰妭鐐圭┖闂?鏈濈埗鑺傜偣鐨勬湞鍚戠Щ鍔╠ ,鎹㈠埌mPosition鐨勬墍鍦ㄧ埗絀洪棿鍙渶瑕佹棆杞竴瀹氳搴?</span></p> <p style="PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: 1em 0px 0.5em; PADDING-TOP: 0px"><span style="LINE-HEIGHT: 21px; FONT-FAMILY: arial, helvetica, sans-serif">鐖剁┖闂磋漿鍒扮埗絀洪棿....鍏跺疄瑙掑害灝辨槸涓鑷寸殑</span></p> <p style="PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: 1em 0px 0.5em; PADDING-TOP: 0px"><span style="LINE-HEIGHT: 21px; FONT-FAMILY: arial, helvetica, sans-serif">搴旇鏄痬Position += Quaternion::IDENTITY * d;</span></p> <p style="PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: 1em 0px 0.5em; PADDING-TOP: 0px"><span style="LINE-HEIGHT: 21px; FONT-FAMILY: arial, helvetica, sans-serif">絳変環浜巑Position +=  d;</span></p> </span></span> <img src ="http://www.shnenglu.com/ming81/aggbug/145155.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.shnenglu.com/ming81/" target="_blank">灝忚儢濡?/a> 2011-04-27 16:31 <a href="http://www.shnenglu.com/ming81/archive/2011/04/27/145155.html#Feedback" target="_blank" style="text-decoration:none;">鍙戣〃璇勮</a></div>]]></description></item><item><title>(鍦板熀宸?OIS 闂http://www.shnenglu.com/ming81/archive/2010/12/15/136500.html灝忚儢濡?/dc:creator>灝忚儢濡?/author>Wed, 15 Dec 2010 07:29:00 GMThttp://www.shnenglu.com/ming81/archive/2010/12/15/136500.html
void MouseDeviceOgreOIS::poll()
{
        
if (mMouse)
        {
            mMouse
->capture();
            OIS::MouseState
& state = mMouse->getMouseState();
            
//璁劇疆榧犳爣鏃犳硶鏀瑰彉OIS搴曞眰GetDeviceData鐨勬暟鎹紝閫犳垚bug錛岄渶瑕佽В鍐熾?/span>
            POINT point;
            GetCursorPos(
&point);
            ScreenToClient((HWND)mWhd, 
&point);
            Vector3 pos(point.x 
* 1.0f, point.y * 1.0f0.0f);
    
            mPosition.x 
= state.X.abs *  1.0f;
            mPosition.y 
= state.Y.abs *  1.0f;
            mPosition.z 
= state.Z.abs *  1.0f;
            
if ((mPosition.x != pos.x) || (mPosition.y != pos.y))
            {
                mPosition.x 
= pos.x;    
                mPosition.y 
= pos.y;
            }
            
if (!mActualClip.contains(mPosition))//淇敼OISBug錛屽綋鍦ㄦ渶灝忓寲鍚庯紝鍗曞嚮鍙湁鎸変笅鏃犲脊璧蜂簨浠躲?/span>
            {
                
if(mButtons[MBT_LEFT])
                    mButtons[MBT_LEFT] 
= state.buttonDown(OIS::MB_Left);
                
else
                    state.buttons 
&= ~(1 << OIS::MB_Left); //turn the bit flag off
                
                
if(mButtons[MBT_RIGHT])
                    mButtons[MBT_RIGHT] 
= state.buttonDown(OIS::MB_Right);
                
else
                   state.buttons 
&= ~(1 << OIS::MB_Right); //turn the bit flag off

                
if(mButtons[MBT_MIDDLE])
                    mButtons[MBT_MIDDLE] 
= state.buttonDown(OIS::MB_Middle);
                
else
                    state.buttons 
&= ~(1 << OIS::MB_Middle); //turn the bit flag off                
                return;
            }
            mButtons[MBT_LEFT] 
= state.buttonDown(OIS::MB_Left);
            mButtons[MBT_RIGHT] 
= state.buttonDown(OIS::MB_Right);
            mButtons[MBT_MIDDLE] 
= state.buttonDown(OIS::MB_Middle);
            
        }
}

2.浣跨敤SetCursorPos鍚庯紝鏃犵Щ鍔ㄩ紶鏍囷紝OIS鏃犳硶鍙栧緱榧犳爣縐誨姩淇℃伅
void Win32Mouse::capture()
{
    
//Clear old relative values
    mState.X.rel = mState.Y.rel = mState.Z.rel = 0;

    DIDEVICEOBJECTDATA diBuff[MOUSE_DX_BUFFERSIZE];
    DWORD entries 
= MOUSE_DX_BUFFERSIZE;

    HRESULT hr 
= mMouse->GetDeviceData( sizeof(DIDEVICEOBJECTDATA), diBuff, &entries, 0 );
    
if( hr != DI_OK )
    {
        hr 
= mMouse->Acquire();
        
while( hr == DIERR_INPUTLOST ) 
            hr 
= mMouse->Acquire();

        hr 
= mMouse->GetDeviceData( sizeof(DIDEVICEOBJECTDATA), diBuff, &entries, 0 );
        
        
//Perhaps the user just tabbed away, and coop settings
        
//are nonexclusive..so just ignore
        if( FAILED(hr) )
            
return;
    }

    
bool axesMoved = false;
    
//Accumulate all axis movements for one axesMove message..
    
//Buttons are fired off as they are found
    for(unsigned int i = 0; i < entries; ++i )
    {
        
switch( diBuff[i].dwOfs )
        {
            
case DIMOFS_BUTTON0:
                
if(!_doMouseClick(0, diBuff[i])) return;
                
break;
            
case DIMOFS_BUTTON1:
                
if(!_doMouseClick(1, diBuff[i])) return;
                
break;
            
case DIMOFS_BUTTON2:
                
if(!_doMouseClick(2, diBuff[i])) return;
                
break;
            
case DIMOFS_BUTTON3:
                
if(!_doMouseClick(3, diBuff[i])) return;
                
break;
            
case DIMOFS_BUTTON4:
                
if(!_doMouseClick(4, diBuff[i])) return;
                
break;    
            
case DIMOFS_BUTTON5:
                
if(!_doMouseClick(5, diBuff[i])) return;
                
break;
            
case DIMOFS_BUTTON6:
                
if(!_doMouseClick(6, diBuff[i])) return;
                
break;
            
case DIMOFS_BUTTON7:
                
if(!_doMouseClick(7, diBuff[i])) return;
                
break;
            
case DIMOFS_X:
                mState.X.rel 
+= diBuff[i].dwData;
                axesMoved 
= true;
                
break;
            
case DIMOFS_Y:
                mState.Y.rel 
+= diBuff[i].dwData;
                axesMoved 
= true;
                
break;
            
case DIMOFS_Z:
                mState.Z.rel 
+= diBuff[i].dwData;
                axesMoved 
= true;
                
break;
            
defaultbreak;
        } 
//end switch
    }//end for

    
if( axesMoved )// 鏈夊亸縐諱俊鎭墠浼氳緗紶鏍囦綅緗?/span>
    {
        
if( coopSetting & DISCL_NONEXCLUSIVE )
        {
            
//DirectInput provides us with meaningless values, so correct that
            POINT point;
            GetCursorPos(
&point);
            ScreenToClient(mHwnd, 
&point);
            mState.X.abs 
= point.x;
            mState.Y.abs 
= point.y;
        }
        
else
        {
            mState.X.abs 
+=  mState.X.rel;
            mState.Y.abs 
+=  mState.Y.rel;
        }
        mState.Z.abs 
+=  mState.Z.rel;

        
//Clip values to window
        if( mState.X.abs < 0 )
            mState.X.abs 
= 0;
        
else if( mState.X.abs > mState.width )
            mState.X.abs 
= mState.width;
        
if( mState.Y.abs < 0 )
            mState.Y.abs 
= 0;
        
else if( mState.Y.abs > mState.height )
            mState.Y.abs 
= mState.height;

        
//Do the move
        if( mListener && mBuffered )
            mListener
->mouseMoved( MouseEvent( this, mState ) );
    }
}


]]>
(鍦板熀宸?浜虹墿鎺у埗闃熷垪鎯蟲硶http://www.shnenglu.com/ming81/archive/2010/11/22/134287.html灝忚儢濡?/dc:creator>灝忚儢濡?/author>Mon, 22 Nov 2010 08:20:00 GMThttp://www.shnenglu.com/ming81/archive/2010/11/22/134287.html鍔ㄤ綔鍒囨崲搴忓垪鎬濊礬妯℃嫙錛?/p>

浜虹墿鐨勫姩浣滃垎涓轟笂鍗婅韓錛屼笅鍗婅韓鍔ㄤ綔

涓婂崐韜姩浣滐細浼戦棽銆佽蛋璺紙鍚戝墠銆佸悜鍚庛佸悜宸︺佸悜鍙籌級銆佽窇姝ワ紙鍚戝墠銆佸悜鍚庛佸悜宸︺佸悜鍙籌級銆佸噯澶囨垬鏂椼佽煩錛堝紑濮嬭煩錛岃煩寰幆銆佺粨鏉熻煩錛?br>涓嬪崐韜姩浣滐細浼戦棽銆佽蛋璺紙鍚戝墠銆佸悜鍚庛佸悜宸︺佸悜鍙籌級銆佽窇姝ワ紙鍚戝墠銆佸悜鍚庛佸悜宸︺佸悜鍙籌級銆佸噯澶囨垬鏂椼佽煩錛堝紑濮嬭煩錛岃煩寰幆銆佺粨鏉熻煩錛?/p>

鎺у埗閫昏緫錛?/p>


*******************************************************鎮蹭激鐨勫垎鍓茬嚎****************************************************************
闃熷垪鍛戒護闂錛?br>1.璧拌礬鐨勬椂鍊欓槦鍒楀垱寤哄お棰戠箒錛岃繘琛岃В鍐籌紙浣跨敤闃熷垪姹狅級
2.涓婇潰涓涓槦鍒楁墽琛屽畬姣曞悗鎵ц涓嬩竴涓槦鍒椼?br>3.闃熷垪瑕佽兘澶熷悓鏃跺鐞嗕袱涓懡浠わ紝鍥犱負鍦ㄨ繍鍔ㄧ殑鏃跺欐槸涓涓懡浠わ紝鎴樻枟鐨勬椂鍊欐槸鍙﹀涓涓懡浠ゃ?br>4.鍒濇鍐沖畾浣跨敤涓や釜闃熷垪錛屽垎鍒帶鍒朵笂鍗婅韓鍜屼笅鐝韓鍔ㄤ綔銆?/p>

絎竴縐嶈В鍐蟲柟妗堟濊礬鏁寸悊錛堣蛋璺?鏀誨嚮錛夛細
1.鍛戒護鍒嗙被錛屽閮ㄦ牴鎹懡浠ゅ線闃熷垪閲岄潰鎻掑叆鍛戒護
2.鍛戒護寮濮嬫墽琛岋紝鎴愬憳鍙橀噺璁頒綇鍛戒護鐨勫弬鏁幫紝騫跺湪娓叉煋鐨勬瘡涓甯ф墽琛屽懡浠ゃ?br>3.鎵ц鐨勬瘡涓甯ф彃鍊鹼紝澶勭悊鍛戒護

涓句緥錛?br>1.寰鍛戒護闃熷垪涓彃鍏ヨ蛋璺懡浠ゃ?nbsp;                                                                      1 
2.鍦ㄦ瘡涓甯т腑鎵ц璧拌礬鍛戒護錛屼繚瀛樼洰鏍囦綅緗拰婧愪綅緗紝騫惰繘琛屾彃鍊箋?br>3.寰鍛戒護闃熷垪涓彃鍏ュ噯澶囨敾鍑誨懡浠?nbsp;                                                                  2 鏈変竴甯т笉璧板姩浜嗐傝В鍐蟲濊礬錛氭墽琛屾敾鍑葷殑鏃跺欎篃鎵ц璧拌礬鎻掑箋傦紵錛熸湁鍙兘娌℃湁闂錛屽洜涓洪熷害榪囧揩
4.寮濮嬫墽琛屽噯澶囨敾鍑誨懡浠?nbsp;                                                                                  
5.鍦ㄦ瘡涓甯т腑鎵ц鍑嗗鏀誨嚮鍛戒護                                                                       3 
6.寰鍛戒護闃熷垪涓彃鍏ヨ蛋璺懡浠ゃ?nbsp;                                                
7.鍦ㄦ瘡涓甯т腑鎵ц璧拌礬鍛戒護錛屼繚瀛樼洰鏍囦綅緗拰婧愪綅緗紝騫惰繘琛屾彃鍊?nbsp;    4 

鎯蟲硶錛?br>1.涓婂崐韜拰涓嬪崐韜棤浠諱綍褰卞搷錛堟垬鏂楋細濡傛灉涓嬪崐韜繘琛屼紤闂插姩浣滄墠鏀瑰彉錛屽惁鍒欏彧鏀瑰彉鍔ㄤ綔銆傜Щ鍔細濡傛灉涓婂崐韜紤闂叉墠鏀瑰彉錛屽惁鍒欎笉鏀瑰彉錛?br>2.涓婂崐韜姩浣滃獎鍝嶄笅鍗婅韓.錛堟柦娉曪細鐩存帴淇敼涓婁笅鍗婅韓鍔ㄤ綔涓烘柦娉曪級
3.鍔ㄤ綔鎾斁緇撴潫鍚庡鐞嗕負

闃熷垪褰卞搷錛?br>絎簩縐嶆儏鍐電洿鎺ョ敤闃熷垪涓涓竴涓鐞嗐?br>絎竴縐嶆儏鍐墊瘮杈冮毦澶勭悊錛堝湪澶勭悊鎴樻枟鏃跺欙紝澶勭悊鎹㈠姩浣滃懡浠わ紝鐒跺悗澶勭悊縐誨姩鍛戒護錛?br>//StartAction鍒嗕負鍏ㄨ韓鍜屼笂鍗婅韓銆傘傘傘傘?/p>

鍔ㄤ綔鍒嗙粍錛?br>浼戦棽鍔ㄤ綔錛屼笉鎵撴柇鍔ㄤ綔錛岃繘搴︽潯鍔ㄤ綔錛?鍔ㄤ綔鎾斁瀹屾瘯銆?/p>

涓嶅彲琛岋細鍥犱負鍙湁涓涓槦鍒楋紝鎵浠ユ墽琛岃蛋璺懡浠ょ殑鏃跺欎笉鑳藉鐞嗘垬鏂楃殑鍛戒護銆?姝ゆ柟娉曟姏寮冦?/p>

*******************************************************甯屾湜鐨勫垎鍓茬嚎****************************************************************
楹葷儲錛?br>瑙e喅鏂規錛?br>瀵瑰鎺ュ彛錛氬閮ㄥ弬鏁頒笉綆′笂鍗婅韓錛屼笅鍗婅韓鍔ㄤ綔錛屾牴鎹懡浠ょ被鍨嬪垎閰嶅埌涓婂崐韜拰涓嬪崐韜槦鍒椾腑鍘伙紝鎺у埗涓婂崐韜拰涓嬪崐韜紤闂詫紝鎴樻枟銆?/鍏ㄨ韓鍔ㄤ綔鎴栬呬笂鍗婅韓鍔ㄤ綔銆?/p>

1.鍒嗕負涓婂崐韜紝涓嬪崐韜姩浣滀袱涓懡浠ら槦鍒楀垎鍒鐞嗕笂鍗婅韓鍜屼笅鍗婅韓鍔ㄤ綔銆?/p>

涓句緥錛?br>璧拌礬+鎴樻枟錛?br>1.鍛戒護闃熷垪涓彃鍏ヨ蛋璺懡浠?br>2.鍚戜笂鍗婅韓錛屼笅鍗婅韓闃熷垪涓垎鍙戝悇鍒嗗彂涓涓蛋璺懡浠ゃ?br>3.浼氬悓鏃跺鐞嗚蛋璺懡浠ゃ?br>4.鍛戒護闃熷垪涓鍔犳垬鏂楀懡浠ゃ?br>5.鍒ゆ柇涓嬪崐韜椂鍊欎紤闂詫紝涓嶆槸鐨勮瘽鍒嗗彂鎴樻枟鍛戒護錛屽悜涓婂崐韜槦鍒椾腑鍒嗗彂鎴樻枟鍛戒護銆?br>6.澶勭悊涓婂崐韜紝涓嬪崐韜姩鐢繪挱鏀捐繃紼嬩腑鐨勫鐞嗐?/p>

娉ㄦ剰錛?br>1.涓婂崐韜殑鍔ㄤ綔鍜屼笅鍗婅韓涓鏍風殑鏃跺欍傛牴鎹笅鍗婅韓鐨勫姩浣滃撫鏁版帶鍒躲?br>2.鍒嗗彂鍣紝鏍規嵁涓嶅悓鐨勬父鎴忔湁涓嶅悓鐨勫垎鍙戝師鍒欍?/p>

*******************************************************甯屾湜鐨勫垎鍓茬嚎****************************************************************



]]>
(鍦板熀宸? DirectX甯哥敤 閫夐」http://www.shnenglu.com/ming81/archive/2010/11/12/133441.html灝忚儢濡?/dc:creator>灝忚儢濡?/author>Fri, 12 Nov 2010 09:26:00 GMThttp://www.shnenglu.com/ming81/archive/2010/11/12/133441.html鍐呭瓨姹?/p>

琛ㄩ潰鍜屽叾瀹冧竴浜汥irect3D璧勬簮琚斁鍦ㄥ縐嶅唴瀛樻睜涓傚唴瀛樻睜鐨勭綾葷敱D3DPOOL鏋氫婦綾誨瀷鐨勪竴涓垚鍛樻潵鎸囧畾銆傚彲鐢ㄥ埌鐨勫唴瀛樻睜鏈変笅鍒楀嚑縐嶏細

D3DPOOL_DEFAULT鈥斺旇〃紺篋irect3D灝嗘牴鎹祫婧愮殑綾誨瀷鍜岀敤閫旀妸瀹冧滑鏀懼湪鏈鍚堥傜殑鍦版柟銆傝繖鏈夊彲鑳芥槸鏄懼瓨銆丄GP鍐呭瓨鎴栬呯郴緇熷唴瀛樹腑銆傚煎緱娉ㄦ剰鐨勬槸錛岃繖縐嶅唴瀛樻睜涓殑璧勬簮蹇呴』瑕佸湪IDirect3DDevice9::Reset琚皟鐢ㄤ箣鍓嶆秷姣佹帀錛屽茍涓斿啀嬈′嬌鐢ㄦ椂蹇呴』閲嶆柊鍒濆鍖栥?/p>

鐞嗚В錛?緋葷粺鑷姩鍒嗛厤鍐呭瓨錛屾爤鍐呭瓨涓鏍鳳紝緋葷粺鑷姩鍒嗛厤鍐呭瓨浣嶇疆銆?/p>

D3DPOOL_MANAGED鈥斺旇祫婧愬皢鐢盌irect3D綆$悊騫朵笖鎸夎澶囩殑闇瑕佹潵鎸囧畾鏀懼湪鏄懼瓨榪樻槸鏀懼湪AGP鍐呭瓨涓傚綋搴旂敤紼嬪簭璁塊棶鍜屾敼鍙樿祫婧愭椂瀹冨厛鎶婅繖浜涜祫婧愭嫹璐濆埌緋葷粺鍐呭瓨涓紝褰撻渶瑕佹椂Direct3D浼氳嚜鍔ㄦ妸瀹冧滑鎷瘋礉鍒版樉瀛橀噷銆?/p>

鐞嗚В錛氱洿鎺ユ斁鍦ㄦ樉瀛樹腑錛屽綋鏀瑰彉璧勬簮鏃訛紝鎷瘋礉浼氬唴瀛橈紝淇敼瀹屽啀鍥炴樉瀛橈紝涓嶉渶鏀瑰彉鐨勮祫婧愭瘮杈冮傚悎銆?/p>

D3DPOOL_SYSTEMMEM鈥斺旀寚瀹氳祫婧愭斁鍦ㄧ郴緇熷唴瀛樹腑銆?/p>

D3DPOOL_SCRATCH鈥斺旀寚瀹氳祫婧愭斁鍦ㄧ郴緇熷唴瀛樹腑錛屽畠涓嶥3DPOOL_SYSTEMMEM涓嶅悓涔嬪鍦ㄤ簬浣跨敤榪欎簺璧勬簮涓嶅繀鍙楀浘褰㈣澶囩殑闄愬埗銆傚洜姝わ紝鍙傛暟浣垮浘褰㈣澶囦笉鑳借闂鍐呭瓨姹犵殑璧勬簮錛屼絾璧勬簮鍙互鐩鎬簰鎷瘋礉銆?/p>


鐞嗚В錛氭斁鍦ㄥ唴瀛樹腑錛屽綋鍥懼艦璁懼涓嶈兘璁塊棶錛岀粡甯歌闂拰淇敼鐨勮祫婧愩?/p>


鍐呭瓨閿佸畾鏂瑰紡

D3DLOCK_DISCARD鈥斺旇繖涓弬鏁頒粎浠呬細鍦ㄥ姩鎬佺紦瀛樻椂琚嬌鐢ㄣ傚畠鎸囩ず紜歡涓㈠純緙撳瓨騫惰繑鍥炰竴涓寚鍚戞柊鍒嗛厤鐨勭紦瀛樼殑鎸囬拡銆傝繖鏄緢鏈夌敤錛屽洜涓哄綋鎴戜滑瀛樺彇涓涓柊鍒嗛厤鐨勭紦瀛樻椂瀹冨厑璁哥‖浠剁戶緇粠涓㈠純鐨勭紦瀛樻覆鏌撱傝繖闃叉浜嗙‖浠跺歡榪熴?/p>

鍔ㄦ佺紦瀛樼殑鏃跺欎嬌鐢紝鍘熸湁鐨勪細琚涪寮冦?/p>

D3DLOCK_NOOVERWRITE鈥斺旇繖涓弬鏁頒粎浠呬細鍦ㄥ姩鎬佺紦瀛樻椂琚嬌鐢ㄣ傚畠澹版槑浣犲皢鍚戠紦瀛樹腑娣誨姞鏁版嵁銆傚嵆浣犱笉鑳藉悜宸茬粡娓叉煋鐨勫唴瀛樹腑鍐欐暟鎹傝繖鏄湁濂藉鐨勫洜涓轟粬鍏佽浣犲湪娣誨姞鏂版暟鎹埌緙撳瓨鐨勫悓鏃惰紜歡緇х畫娓叉煋銆?/p>

鍙悜緙撳瓨涓鍔犳暟鎹?/p>

D3DLOCK_READONLY鈥斺旇繖涓弬鏁板0鏄庝綘閿佸畾鐨勭紦瀛樺彧鑳戒粠涓鍙栨暟鎹屼笉鑳藉啓鏁版嵁銆傝繖鍏佽涓浜涘唴鍦ㄧ殑浼樺寲銆?/p>

鐢ㄥ弬鏁癉3DLOCK_DISCARD鍜孌3DLOCK_NOOVERWRITE琛ㄦ槑緙撳瓨鐨勪竴閮ㄥ垎琚攣瀹氫箣鍚庤兘緇х畫琚嬌鐢ㄣ傚亣濡傜‖浠墮厤緗厑璁歌繖浜涙爣璁拌浣跨敤錛屽垯鍦ㄥ緙撳瓨榪涜閿佸畾鏃訛紝鍏朵粬鐨勬樉紺烘搷浣滃氨涓嶄細涓柇銆?/p>


浜ゆ崲緙撳啿綾誨瀷

D3DSWAPEFFECT_DISCARD錛?nbsp;   鍚庡彴鐨勭紦鍐插尯澶嶅埗鍒板睆騫曚笂錛屼涪寮冨悗澶囩紦鍐插尯
D3DSWAPEFFECT_FLIP錛?nbsp;      鍚庡彴緙撳啿鍖哄拰鍓嶅彴緙撳啿鍖鴻皟鎹?br>D3DSWAPEFFECT_COPY錛?nbsp;      鍚庡彴緙撳啿鍖哄鍒跺埌鍓嶅彴緙撳啿鍖?nbsp;   


緙撳瓨鍒涘緩鏍囧織

3DUSAGE_DYNAMIC鈥斺旇緗繖涓弬鏁板彲浠ヤ嬌緙撳瓨鏄姩鎬佺殑銆?br>D3DUSAGE_POINTS鈥斺旇繖涓弬鏁版寚瀹氱紦瀛樺瓨鍌ㄥ師濮嬬偣銆傝繖涓弬鏁頒粎浠呯敤鍦ㄩ《鐐圭紦鍐蹭腑銆?br>D3DUSAGE_SOFTWAREPROCESSING鈥斺斾嬌鐢ㄨ蔣浠墮《鐐瑰鐞?br>D3DUSAGE_WRITEONLY鈥斺旀寚瀹氬簲鐢ㄧ▼搴忓彧鑳藉啓緙撳瓨銆傚畠鍏佽椹卞姩紼嬪簭鍒嗛厤鏈閫傚悎鐨勫唴瀛樺湴鍧浣滀負鍐欑紦瀛樸傛敞鎰忓鏋滀粠鍒涘緩濂界殑榪欑緙撳瓨涓鏁版嵁錛屽皢浼氳繑鍥為敊璇俊鎭?/p>


 



]]>
(鎼繍宸?Render to Texture錛堟覆鏌撳埌綰圭悊錛?http://www.shnenglu.com/ming81/archive/2010/11/12/133429.html灝忚儢濡?/dc:creator>灝忚儢濡?/author>Fri, 12 Nov 2010 07:24:00 GMThttp://www.shnenglu.com/ming81/archive/2010/11/12/133429.html
·main.cpp
銆銆棣栧厛鎴戜滑寰楀0鏄庢墍闇瑕佺殑瀵硅薄銆傚綋鐒舵垜浠渶瑕佷竴寮犵敤鏉ユ覆鏌撶殑綰圭悊銆傛澶栵紝鎴戜滑榪橀渶瑕佷袱涓猄urface瀵硅薄銆備竴涓槸鐢ㄦ潵瀛樺偍鍚庡彴緙撳啿鍖猴紝涓涓敤鏉ュ綋綰圭悊鐨勬覆鏌撳璞°傚悗闈㈡垜鍐嶈緇嗕粙緇嶅畠浠傚彟澶栨垜浠繕闇瑕佷袱涓煩闃碉紝涓涓槸鐢ㄦ潵褰撶汗鐞嗙殑鎶曞獎鐭╅樀錛屽彟涓涓槸瀛樺偍鍘熸潵鐨勭煩闃點?br>
LPDIRECT3DTEXTURE9 pRenderTexture = NULL;
LPDIRECT3DSURFACE9 pRenderSurface = NULL,pBackBuffer = NULL;
D3DXMATRIX matProjection,matOldProjection;

銆銆鐜板湪鎴戜滑鏉ュ垱寤虹汗鐞嗐傚墠涓や釜鍙傛暟鏄汗鐞嗙殑瀹藉害鍜岄珮搴︼紝絎笁涓弬鏁版槸綰圭悊鐨勫綰ф笎榪涚汗鐞嗗簭鍒楀弬鏁幫紝鍦ㄨ繖閲屾槸璁句負1錛岀鍥涗釜鍙傛暟闈炲父閲嶈鑰屼笖蹇呴』璁句負D3DUSAGE_RENDERTARGET錛岃〃鏄庢垜浠墍鍒涘緩鐨勭汗鐞嗘槸鐢ㄦ潵娓叉煋鐨勩傚墿涓嬬殑鍙傛暟灝辨槸鎸囩汗鐞嗘牸寮忥紝欏剁偣緙撳啿鍖虹殑鍐呭瓨浣嶇疆錛屽拰涓涓寚鍚戠汗鐞嗙殑鎸囬拡銆傚綋綰圭悊鏄敤鏉ュ綋娓叉煋瀵硅薄鏃訛紝欏剁偣緙撳啿鍖虹殑鍐呭瓨浣嶇疆蹇呴』璁句負D3D_DEFAILT銆?

g_App.GetDevice()->CreateTexture(256,256,1,D3DUSAGE_RENDERTARGET,D3DFMT_R5G6B5,D3DPOOL_DEFAULT,&pRenderTexture,NULL);

銆銆涓轟簡璁塊棶綰圭悊鍐呭瓨瀵硅薄錛屾垜浠渶瑕佷竴涓猄urface瀵硅薄錛屽洜涓篋3D涓殑綰圭悊鏄敤榪欐牱鐨勪竴涓猄urface鏉ュ瓨鍌ㄧ汗鐞嗘暟鎹殑銆備負浜嗗緱鍒扮汗鐞嗚〃闈㈢殑Surface,鎴戜滑闇瑕佽皟鐢ㄦ柟娉旼etSurfaceLevel() 銆傜涓涓弬鏁版垜浠涓?錛岀浜屼釜鍙傛暟涓轟竴涓寚鍚憇urface瀵硅薄鐨勬寚閽堛?br>
pRenderTexture->GetSurfaceLevel(0,&pRenderSurface);

涓嬩竴姝ュ氨鏄垱寤轟竴涓傚悎綰圭悊緇存暟鐨勬姇褰辯煩闃碉紝鍥犱負綰圭悊鐨勬í綰墊瘮鍜屽悗鍙扮紦鍐插尯鐨勪笉涓鏍楓?br>
D3DXMatrixPerspectiveFovLH(&matProjection,D3DX_PI / 4.0f,1,1,100);

鍦ㄦ垜浠殑寰幆娓叉煋涔嬪墠錛屾垜浠繀欏諱繚瀛樺悗鍙扮紦鍐插尯鍜屽畠鐨勬姇褰辯煩闃點?br>
g_App.GetDevice()->GetTransform(D3DTS_PROJECTION,&matOldProjection);
g_App.GetDevice()->GetRenderTarget(0,&pBackBuffer);

銆銆娓叉煋寰幆鍑芥暟鍙互鍒嗕負涓や釜閮ㄥ垎銆傜涓閮ㄥ垎鏄覆鏌撳埌綰圭悊鐨勮繃紼嬨傚洜姝わ紝娓叉煋瀵硅薄蹇呴』璁句負綰圭悊琛ㄩ潰銆傜劧鍚庢垜浠氨鍙互鎶婁笢瑗挎覆鏌撳埌榪欎釜瀵硅薄涓婁簡銆傛覆鏌撳埌鍙︿竴涓〃闈笂鍜屾甯稿湴娓叉煋鍒板悗鍙扮紦鍐插尯宸笉澶氥傚彧鏈変竴鐐逛笉鍚岋紝閭e氨鏄厛涓嶈皟鐢≒rensent錛堬級鍑芥暟錛屽洜涓虹汗鐞嗕笂鐨勫唴瀹瑰茍涓嶉渶瑕佹樉紺哄湪灞忓箷涓娿傝薄騫蟲椂涓鏍鳳紝鎴戜滑鍏堣閲嶇疆琛ㄩ潰棰滆壊緙撳啿鍖猴紝騫朵笖璋冪敤BeginSence()鍜孍ndSence()鏂規硶銆備負浜嗚兘澶熼傚綋鐨勬覆鏌擄紝鎴戜滑蹇呴』璁劇疆鍜岀汗鐞嗚〃闈㈢浉絎︾殑鎶曞獎鐭╅樀銆傚惁鍒欐渶鍚庣殑鍥捐薄鍙兘琚壄鏇?br>
//render-to-texture
g_App.GetDevice()->SetRenderTarget(0,pRenderSurface); //set new render target
g_App.GetDevice()->Clear(0,NULL,D3DCLEAR_TARGET | D3DCLEAR_ZBUFFER,D3DCOLOR_XRGB(100,100,100),1.0f,0); //clear texture
g_App.GetDevice()->BeginScene();

g_App.GetDevice()->SetTexture(0,pPyramideTexture);

D3DXMatrixRotationY(&matRotationY,fRotation);
D3DXMatrixTranslation(&matTranslation,0.0f,0.0f,5.0f);
g_App.GetDevice()->SetTransform(D3DTS_WORLD,&(matRotationY * matTranslation));
g_App.GetDevice()->SetTransform(D3DTS_PROJECTION,&matProjection); //set projection matrix

g_App.GetDevice()->SetStreamSource(0,pTriangleVB,0,sizeof(D3DVERTEX));
g_App.GetDevice()->DrawPrimitive(D3DPT_TRIANGLELIST,0,4);

g_App.GetDevice()->EndScene();

銆銆娓叉煋寰幆鐨勭浜岄儴鍒嗗氨鏄覆鏌撴渶鍚庡満鏅殑榪囩▼錛堜篃灝辨槸鏄劇ず鍒板睆騫曚笂鐨勮繃紼嬶級銆傛覆鏌撳璞¢噸鏂拌涓哄悗鍙扮紦鍐插尯錛屾姇褰辯煩闃甸噸鏂拌涓哄師鏉ョ殑鎶曞獎鐭╅樀銆傜敱浜庣汗鐞嗗凡緇忓噯澶囧ソ浜嗭紝鎵浠ュ畠鍜岀汗鐞嗗眰0鐩稿叧鑱斻?br>
//render scene with texture
g_App.GetDevice()->SetRenderTarget(0,pBackBuffer); //set back buffer
g_App.GetDevice()->Clear(0,NULL,D3DCLEAR_TARGET | D3DCLEAR_ZBUFFER,D3DCOLOR_XRGB(0,0,0),1.0f,0);
g_App.GetDevice()->BeginScene();

g_App.GetDevice()->SetTexture(0,pRenderTexture); //set rendered texture

g_App.GetDevice()->SetTransform(D3DTS_WORLD,&matTranslation);
g_App.GetDevice()->SetTransform(D3DTS_PROJECTION,&matOldProjection); //restore projection matrix

g_App.GetDevice()->SetStreamSource(0,pQuadVB,0,sizeof(D3DVERTEX));
g_App.GetDevice()->DrawPrimitive(D3DPT_TRIANGLESTRIP,0,2);

g_App.GetDevice()->EndScene();
g_App.GetDevice()->Present(NULL,NULL,NULL,NULL);

鏈鍚庢垜浠氳繃璋冪敤Release()鏂規硶閲婃斁Surface瀵硅薄銆?br>
pRenderSurface->Release();
pRenderSurface = NULL;

pBackBuffer->Release();
pBackBuffer = NULL;


]]>
(鎼繍宸?AnimationBlender - Ogre瀹炵幇涓嶅悓鍔ㄧ敾涔嬮棿鐨勬販鍚?/title><link>http://www.shnenglu.com/ming81/archive/2010/11/08/133018.html</link><dc:creator>灝忚儢濡?/dc:creator><author>灝忚儢濡?/author><pubDate>Mon, 08 Nov 2010 11:01:00 GMT</pubDate><guid>http://www.shnenglu.com/ming81/archive/2010/11/08/133018.html</guid><description><![CDATA[     鎽樿: 鑻辨枃鍘熸枃: http://test.ogitor.org/tiki/AnimationBlender 鍔ㄧ敾娣峰悎 -- 瀹炵幇涓や釜鍔ㄧ敾鐨勫垏鎹? 涓涓姩鐢婚愭笎娑堥? 鍙︿竴涓姩鐢婚愭笎鏄劇ず鏉ュ疄鐜? 涓昏閫氳繃鍔ㄧ敾鐘舵佺殑鏉冮噸鏉ュ疄鐜伴氳繃涓夌鏂瑰紡鏉ュ疄鐜頒袱涓姩鐢葷殑娣峰悎:    - BlendSwitch - 鐩存帴鍒囨崲鑷崇洰鏍囧姩鐢?nbsp;   - BlendWhil...  <a href='http://www.shnenglu.com/ming81/archive/2010/11/08/133018.html'>闃呰鍏ㄦ枃</a><img src ="http://www.shnenglu.com/ming81/aggbug/133018.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.shnenglu.com/ming81/" target="_blank">灝忚儢濡?/a> 2010-11-08 19:01 <a href="http://www.shnenglu.com/ming81/archive/2010/11/08/133018.html#Feedback" target="_blank" style="text-decoration:none;">鍙戣〃璇勮</a></div>]]></description></item><item><title>(鎼繍宸?鎶奃3D鐢婚潰娓叉煋鍒版闈紒涓嶇敤鍒涘緩浠諱綍紿楀彛 http://www.shnenglu.com/ming81/archive/2010/11/05/132534.html灝忚儢濡?/dc:creator>灝忚儢濡?/author>Fri, 05 Nov 2010 03:27:00 GMThttp://www.shnenglu.com/ming81/archive/2010/11/05/132534.html鍏跺疄榪欎釜寰堢畝鍗曪紝鍙槸鍒涘緩璁懼鐨勬椂鍊欓偅涓猦wnd鏈夌偣涓嶄竴鏍鳳紒
鍙兘鏈変漢灝變細璇達紝鐢℅etDesktopWindows()鑾峰緱妗岄潰鐨勫彞鏌勪笉灝辮浜嗭紵閭e氨閿欎簡錛佽繖鏍蜂細娌℃湁鏁堟灉鐨勶紒姝g‘鐨勪唬鐮佸涓嬶細

    HWND hWnd  =  FindWindowEx(GetDesktopWindow() ,  0  ,  " Progman "  ,  " Program Manager " );
    hWnd  
=  FindWindowEx(hWnd ,  0  ,  " SHELLDLL_DefView "  ,  0 );
    hWnd  
=  FindWindowEx(hWnd ,  0  ,  " SysListView32 "  ,  " FolderView " );
     
//  鍒濆鍖?nbsp;D3D 璁懼 
    InitD3D(hWnd);

鏄笉鏄緢綆鍗曪紒鍝堝搱銆?br>
鏄劇ず鐨勬椂鍊欙紝濡傛灉鎯蟲覆鏌撳湪妗岄潰鐨勪竴瑙掞紝鍒欏彲浠ヨ繖鏍峰啓錛?br>

// 鏄劇ず鍦ㄥ乏涓婅錛?28×128瀹?/span>
 RECT rect;
  rect.left =
 0;
  rect.right 
= 128;
  rect.top 
= 0;
  rect.bottom 
= 128;
  
// 鏄劇ず
 
 g_pd3dDevice->Present(0 , &rect , 0 , 0);
       


]]>
青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品
  • <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>
            一区二区三区国产| 久久香蕉国产线看观看网| 久久精品国产2020观看福利| 亚洲资源av| 欧美在线影院| 久久精选视频| 久久久免费观看视频| 欧美在线一二三区| 裸体一区二区| 亚洲国产精品成人综合| 麻豆精品在线观看| 亚洲国产精品一区二区久 | 欧美va天堂在线| 欧美高潮视频| 99日韩精品| 新67194成人永久网站| 久久久免费精品视频| 欧美日韩不卡在线| 国产日韩精品久久| 日韩视频永久免费观看| 香蕉视频成人在线观看| 欧美多人爱爱视频网站| 宅男噜噜噜66国产日韩在线观看| 久久激情网站| 国产精品成人播放| 亚洲人成网站色ww在线| 久久国产精彩视频| 日韩视频国产视频| 玖玖国产精品视频| 国产性做久久久久久| 一本色道久久99精品综合| 久久综合九色综合欧美狠狠| 亚洲最黄网站| 欧美成人亚洲成人日韩成人| 国产亚洲精品bv在线观看| 一区二区三区日韩欧美精品| 免费不卡在线视频| 亚洲女人天堂成人av在线| 欧美全黄视频| 亚洲精品女人| 欧美国产欧美亚洲国产日韩mv天天看完整| 亚洲图片你懂的| 欧美日本亚洲| 国产精品成人免费精品自在线观看| 亚洲精品视频在线播放| 久久国产88| 亚洲视频一二三| 欧美欧美天天天天操| 亚洲国产日韩欧美一区二区三区| 欧美一区日韩一区| 亚洲视频1区2区| 欧美日韩亚洲一区二区三区在线观看 | 国产精品久久久久久久久久三级| 亚洲美女视频网| 亚洲黄色三级| 美女精品在线观看| 一区二区亚洲精品国产| 久久视频在线视频| 久久精品色图| 亚洲成在线观看| 你懂的视频欧美| 另类人畜视频在线| 亚洲三级免费电影| 亚洲精品国产精品乱码不99按摩| 亚洲综合不卡| 欧美亚洲日本一区| 欧美一级久久久| 欧美一级视频免费在线观看| 最新国产乱人伦偷精品免费网站| 久久天天躁夜夜躁狠狠躁2022 | 国产精品女人久久久久久| 亚洲一区二区三区在线看| 这里只有精品在线播放| 国产美女搞久久| 久久久国产一区二区三区| 欧美制服第一页| 亚洲国产高清一区| 亚洲精品日韩一| 国产伦精品一区二区三区高清 | 久久性天堂网| 蜜乳av另类精品一区二区| 最新精品在线| 一本久久综合亚洲鲁鲁五月天| 国产精品福利网站| 久久久一区二区三区| 欧美成人自拍| 久久www免费人成看片高清| 久久五月激情| 亚洲无限av看| 欧美在线视频导航| 亚洲精品美女久久7777777| 一区二区三区四区国产| 国产一区二三区| 亚洲精品色婷婷福利天堂| 国产欧美1区2区3区| 亚洲高清一区二| 国产欧美日韩亚洲| 久久一日本道色综合久久| 亚洲人成网站999久久久综合| av成人激情| 麻豆精品精品国产自在97香蕉| 亚洲电影自拍| 麻豆免费精品视频| 亚洲午夜av在线| 亚洲电影免费观看高清完整版在线观看| 欧美精品在线网站| 麻豆久久婷婷| 久久综合九色九九| 欧美一级久久久久久久大片| 亚洲精品久久久久| 免播放器亚洲| 女人香蕉久久**毛片精品| 亚洲第一区在线观看| 欧美日韩国产高清视频| 亚洲精品国产精品久久清纯直播| 亚洲欧洲精品一区二区三区波多野1战4 | 99在线精品视频| 亚洲国产精品久久久久久女王| 国产三级欧美三级日产三级99| 国产精品久久久久久久浪潮网站 | 免费观看日韩| 久久一区激情| 女女同性女同一区二区三区91| 久久国产黑丝| 老司机午夜免费精品视频 | 亚洲一级免费视频| 欧美精品在线免费| 亚洲福利视频三区| 国产精品久线观看视频| 亚洲国产视频一区二区| 永久域名在线精品| 欧美在线一级视频| 久久国产欧美日韩精品| 国产精品日产欧美久久久久| 在线视频一区观看| 亚洲视频精品| 99re6热在线精品视频播放速度| 国产一区二区视频在线观看| 亚洲精品久久久久久久久久久久久| 亚洲福利小视频| 亚洲欧美精品中文字幕在线| 一区二区欧美亚洲| 欧美精品一区二区三区在线播放| 欧美激情一级片一区二区| 亚洲国产成人精品久久| 牛人盗摄一区二区三区视频| 亚洲国产精品va在线观看黑人| 亚洲精品视频二区| 欧美日韩一区在线播放| 亚洲视频网站在线观看| 欧美在线观看视频一区二区三区| 国产欧美日韩在线视频| 欧美中文在线字幕| 免费一区二区三区| 99精品国产99久久久久久福利| 欧美日韩在线播放一区二区| 亚洲女ⅴideoshd黑人| 久久九九久久九九| 91久久久国产精品| 国产精品裸体一区二区三区| 欧美一级视频免费在线观看| 女人天堂亚洲aⅴ在线观看| 亚洲精品欧美专区| 国产精品jvid在线观看蜜臀 | 99国产麻豆精品| 国产精品v日韩精品| 欧美在线一级视频| 亚洲黄色免费电影| 亚洲欧美制服另类日韩| 激情久久中文字幕| 欧美日韩精品| 久久久91精品国产| 亚洲看片免费| 久久中文久久字幕| 在线一区亚洲| 在线精品视频免费观看| 欧美日韩免费观看一区二区三区| 午夜精品一区二区三区在线| 亚洲第一区中文99精品| 欧美一站二站| 日韩午夜中文字幕| 国内视频精品| 国产精品分类| 欧美高清在线一区二区| 欧美一区二视频| 一区二区三区免费观看| 欧美高清视频一区| 久久国产乱子精品免费女| 一本一本久久a久久精品牛牛影视| 国产欧美日韩综合精品二区| 欧美日本一区二区三区| 久久免费视频网站| 欧美一区二区三区免费大片| 99re6热只有精品免费观看| 欧美国产日本| 免费在线观看日韩欧美| 久久激情网站| 欧美在线免费一级片| 亚洲免费人成在线视频观看| 日韩视频免费观看高清完整版|