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

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

?? 構(gòu)建高級(jí)粒子系統(tǒng).htm

?? 3D圖象編程中粒子系統(tǒng)相關(guān)的一些資料。包括通用粒子系統(tǒng)的原理
?? HTM
?? 第 1 頁(yè) / 共 3 頁(yè)
字號(hào):

<HTML><HEAD><TITLE>構(gòu)建高級(jí)粒子系統(tǒng)</TITLE></HEAD>
<BODY>

<TABLE align=center bgColor=#000000 border=0 cellPadding=0 cellSpacing=0 
height=1 width="99%">
  <TBODY>
  <TR>
    <TD width="100%"></TD></TR></TBODY></TABLE><!-- #EndEditable -->
<TABLE align=center bgColor=#000000 border=0 cellPadding=2 cellSpacing=0 
width="99%">
  <TBODY>
  <TR class=BGGray>
    <TD width="100%"> <!-- #BeginEditable "%B6%A8%CE%BB" -->

       <!-- #EndEditable --></TD></TR></TBODY></TABLE><BR>
<TABLE align=center border=0 cellPadding=0 cellSpacing=0 width="99%">
  <TBODY>
  <TR>
    <TD class=BGRed width="1%"></TD>
    <TD class=BGRed vAlign=top width="17%"><!-- #BeginEditable "%B5%BC%BA%BD" -->

<!-- #EndEditable --></TD>
    <TD class=BGGray width="1%"></TD>
    <TD width="1%"></TD>
    <TD bgColor=#ff9933 width=0%></TD>
    <TD colSpan=3 vAlign=top width="84%">
      <TABLE border=0 cellPadding=2 cellSpacing=1 width="100%">
        <TBODY>
        <TR>
          <TD class=BGRed width="100%"><B>&gt;&gt; </B><!-- #BeginEditable "%B1%EA%CC%E2" --><A class=YellowLink 
            href="http://mays.soage.com/develop/effect/200111/AParSystem.htm">構(gòu)建高級(jí)粒子系統(tǒng)</A> 2001-11-22 
            <A class=BlackLink href="http://www.extremeworkteam.com/" 
            target=_blank>極限工作組</A> <A class=BlackLink 
            href="mailto:rick_yin@mail.china.com">Rick Cart </A><!-- #EndEditable -->
            <TABLE align=center bgColor=#ff9933 border=0 cellPadding=0 
            cellSpacing=0 width="100%">
              <TBODY>
              <TR>
                <TD width="100%"><IMG height=1 
        width=1></TD></TR></TBODY></TABLE></TD></TR>
        <TR vAlign=top>
          <TD class=BGGrayMain width="100%"><!-- #BeginEditable "%C4%DA%C8%DD" --><BR>  <B>目 
            錄</B><BR>  1 <A class=BlackLink 
            href="http://mays.soage.com/develop/effect/200111/AParSystem.htm#1.0">性能和需要</A><BR>  2 
            <A class=BlackLink 
            href="http://mays.soage.com/develop/effect/200111/AParSystem.htm#2.0">創(chuàng)建數(shù)據(jù)結(jié)構(gòu)</A><BR>  3 
            <A class=BlackLink 
            href="http://mays.soage.com/develop/effect/200111/AParSystem.htm#3.0">函數(shù)</A><BR>  4 
            <A class=BlackLink 
            href="http://mays.soage.com/develop/effect/200111/AParSystem.htm#4.0">粒子管理器</A><BR>  5 
            <A class=BlackLink 
            href="http://mays.soage.com/develop/effect/200111/AParSystem.htm#5.0">小結(jié)</A><BR><BR>
            <HR align=center noShade SIZE=1 width="95%">
            <BR>  請(qǐng)大家想象游戲中的這樣一個(gè)場(chǎng)景:一枚火箭拖著尾煙劃過(guò)天際,突然火箭爆炸了,碎片四處飛濺。其中,一具生物的尸體向你飛來(lái),它的碎片飛散開(kāi)來(lái),帶起蓬蓬血霧,然后在鏡頭上留下混亂的血肉痕跡。這個(gè)場(chǎng)景中的所有這些元素的共同點(diǎn)是什么呢?<BR>  是的,多數(shù)元素都是混亂的。但從技術(shù)的角度講,本場(chǎng)景中的大多數(shù)效果得益于一個(gè)優(yōu)秀的粒子系統(tǒng)。煙,火花,血這些現(xiàn)代游戲中的效果通常使用粒子系統(tǒng)來(lái)創(chuàng)建。<BR>  為了實(shí)現(xiàn)這些效果,你需要構(gòu)件一個(gè)粒子系統(tǒng),而且不僅僅是一個(gè)簡(jiǎn)單的系統(tǒng)。你所需要的是一個(gè)高級(jí)粒子系統(tǒng),一個(gè)快速,便捷,可擴(kuò)展的系統(tǒng)。如果你是初次接觸粒子系統(tǒng),我推薦你先閱讀Jeff 
            Lander的文章(<SPAN class=English>The Ocean Spray in Your Face, Graphic 
            Content, July 
            1998</SPAN>)。Lander的文章和本文的區(qū)別在于,前者描述了粒子系統(tǒng)的基本概念,而這里我著重于如何構(gòu)建更高級(jí)的系統(tǒng)。我將會(huì)隨本文提供完整的源代碼,你可以下載以驗(yàn)證本系統(tǒng)。<BR><A 
            name=1.0></A><BR><B>1、性能和需要</B><BR>  高級(jí)粒子系統(tǒng)可能會(huì)需要大量的代碼,所以設(shè)計(jì)好數(shù)據(jù)結(jié)構(gòu)是非常重要的。此外必須牢記如果設(shè)計(jì)欠佳,粒子系統(tǒng)會(huì)大幅降低刷新率,并且大多數(shù)的性能問(wèn)題是由粒子系統(tǒng)帶來(lái)的內(nèi)存管理問(wèn)題引起的。<BR>  設(shè)計(jì)粒子系統(tǒng)時(shí)首先應(yīng)該明白粒子系統(tǒng)大大增加每幀的可見(jiàn)多邊形數(shù)量。每個(gè)粒子可能需要四個(gè)頂點(diǎn)和兩個(gè)三角形。以此計(jì)算,一個(gè)場(chǎng)景中的2,000個(gè)可見(jiàn)的雪花粒子將增加4,000個(gè)可見(jiàn)的三角形。又因?yàn)榇蠖鄶?shù)粒子是運(yùn)動(dòng)的,我們不能預(yù)先計(jì)算頂點(diǎn)緩沖,所以每一幀,定點(diǎn)緩沖都需要被改變。<BR>  技巧在于只執(zhí)行盡量少的內(nèi)存操作(分配和釋放)。這樣,如果一個(gè)粒子在一定時(shí)間后消亡,不要急著從內(nèi)存中釋放。相反,用一個(gè)標(biāo)志來(lái)記錄它是死亡還是重生(重新初始化)。然后當(dāng)所有的粒子都被標(biāo)為死亡時(shí),釋放整個(gè)粒子系統(tǒng)。(包括系統(tǒng)中的所有粒子),如果系統(tǒng)是定常的,那么使系統(tǒng)保持存活。如果你想要重建系統(tǒng)或只想假入一個(gè)新的粒子,你應(yīng)該根據(jù)粒子所屬的系統(tǒng)使用相應(yīng)的默認(rèn)設(shè)置/屬性來(lái)自動(dòng)初始化粒子。<BR>  例如,我們?cè)跇?gòu)建一個(gè)“煙”系統(tǒng)。當(dāng)你創(chuàng)建或重建一個(gè)粒子時(shí),你可能按表1中的值來(lái)設(shè)定(當(dāng)然,血和煙的初始顏色,能量,大小,速度是不同的)。注意各個(gè)值亦依賴于系統(tǒng)本身的設(shè)定。如果你為煙系統(tǒng)設(shè)定風(fēng)以使煙飄向左方,那么新粒子的速度必然不同于不受風(fēng)影響的垂直升起的煙系統(tǒng)。如果你有一個(gè)定常的煙系統(tǒng),且煙粒子的能量是零(如此你就看不見(jiàn)它了),你會(huì)想重新初始化它的設(shè)定以使它滿載能量地又從底部升起。有的粒子系統(tǒng)可能需要粒子以不同的方式被渲染。例如,你或許會(huì)想要幾種血系統(tǒng),例如噴血,濺血,血池和濺在鏡頭上的血痕,等等。每個(gè)效果包含特定的粒子。“噴血”將渲染血在空中噴射的景象,當(dāng)這些血噴在墻壁上,會(huì)調(diào)用“濺血”系統(tǒng),營(yíng)造出血跡在墻和地板濺開(kāi)的效果。血池系統(tǒng)創(chuàng)建出某人被擊斃后地板上的幾灘血跡。<BR><BR>
            <TABLE align=center bgColor=#000000 border=0 cellPadding=2 
            cellSpacing=1 width="70%">
              <TBODY>
              <TR class=BGRed>
                <TD width="18%"><B><FONT color=#cccccc>數(shù)據(jù)類型</FONT></B></TD>
                <TD width="26%"><B><FONT color=#cccccc>名稱</FONT></B></TD>
                <TD width="56%"><B><FONT color=#cccccc>描述</FONT></B></TD></TR>
              <TR bgColor=#ffffff>
                <TD class=ColorCode vAlign=top width="18%">Vector3</TD>
                <TD class=ColorCode vAlign=top width="26%">position</TD>
                <TD vAlign=top width="56%">空間中的粒子位置</TD></TR>
              <TR bgColor=#ffffff>
                <TD class=ColorCode vAlign=top width="18%">Vector3</TD>
                <TD class=ColorCode vAlign=top width="26%">oldPos</TD>
                <TD vAlign=top width="56%">粒子的先前位置,有時(shí)有用</TD></TR>
              <TR bgColor=#ffffff>
                <TD class=ColorCode vAlign=top width="18%">Vector3</TD>
                <TD class=ColorCode vAlign=top width="26%">velocity</TD>
                <TD vAlign=top width="56%">粒子速度(position += velocity)</TD></TR>
              <TR bgColor=#ffffff>
                <TD class=ColorCode vAlign=top width="18%">dword</TD>
                <TD class=ColorCode vAlign=top width="26%">color</TD>
                <TD vAlign=top width="56%">粒子顏色(頂點(diǎn)顏色)</TD></TR>
              <TR bgColor=#ffffff>
                <TD class=ColorCode vAlign=top width="18%">int</TD>
                <TD class=ColorCode vAlign=top width="26%">energy</TD>
                <TD vAlign=top width="56%">粒子的能量</TD></TR>
              <TR bgColor=#ffffff>
                <TD class=ColorCode vAlign=top width="18%">float</TD>
                <TD class=ColorCode vAlign=top width="26%">size</TD>
                <TD vAlign=top width="56%">粒子的大小</TD></TR>
              <TR bgColor=#ffffff>
                <TD class=BGRed colSpan=3 vAlign=top>
                  <DIV align=center><B><FONT color=#cccccc>表1 
                  粒子屬性</FONT></B></DIV></TD></TR></TBODY></TABLE><BR>  每個(gè)粒子系統(tǒng)都以一種獨(dú)特的方式工作。濺血和煙霧的渲染方式是有很大區(qū)別的。煙霧粒子通常面對(duì)活動(dòng)鏡頭,而濺血?jiǎng)t映射到血濺到的平面上。<BR>  當(dāng)構(gòu)建粒子系統(tǒng)時(shí),必須考慮到游戲中所有可能的可變參數(shù),并把他們靈活地建入系統(tǒng)。讓我們?cè)俅我詿熿F系統(tǒng)為例。我們可能會(huì)想改變風(fēng)的方向向量以使當(dāng)汽車駛過(guò)煙霧時(shí),煙粒子受到汽車帶起的風(fēng)的影響。從這點(diǎn)你會(huì)意識(shí)到每一個(gè)系統(tǒng)對(duì)于自己的作用而言都是很特殊的。但如果我們想要以某種方式控制系統(tǒng)中還不被系統(tǒng)規(guī)則支持的粒子時(shí),該怎么辦?為了達(dá)到這個(gè)目的,我們還需要?jiǎng)?chuàng)建一個(gè)“手工”粒子系統(tǒng),以使我們能夠每幀刷新所有的粒子屬性。<BR>  最后我們要考慮的是在引擎層次中連接粒子系統(tǒng)的能力。或許我們想要為一支香煙連接一個(gè)煙霧系統(tǒng)或發(fā)光系統(tǒng)。如果角色移動(dòng),連接到香煙的粒子系統(tǒng)應(yīng)該得到正確的刷新。這就是高級(jí)粒子系統(tǒng)的一些基本要求。在下一節(jié),我將講述如何設(shè)計(jì)一個(gè)性能優(yōu)良的數(shù)據(jù)結(jié)構(gòu)以實(shí)現(xiàn)上述的所有特性。<BR><A 
            name=2.0></A><BR><B>2、創(chuàng)建數(shù)據(jù)結(jié)構(gòu)</B><BR>  現(xiàn)在我們知曉我們需要什么樣的特性。圖1顯示了將要?jiǎng)?chuàng)建的系統(tǒng)的概貌。請(qǐng)注意在圖中有一個(gè)粒子管理器(<SPAN 
            class=English>Particle Manager</SPAN>),稍候我將對(duì)此做出解釋。<BR><BR>
            <TABLE align=center border=0 cellPadding=2 cellSpacing=0 
class=BGRed>
              <TBODY>
              <TR align=middle>
                <TD><IMG height=212 src="AParSystem-1.gif" 
                  width=354></TD></TR>
              <TR align=middle>
                <TD><FONT color=#cccccc><B>圖1 
            粒子管理器</B></FONT></TD></TR></TBODY></TABLE><BR>  在此我們采用從下到上的步驟來(lái)設(shè)計(jì)類,首先是粒子類(<SPAN 
            class=English>Particle 
            Class</SPAN>)。<BR>  粒子類。如果你曾經(jīng)建過(guò)粒子系統(tǒng),你會(huì)知道粒子必需的屬性。表1列出了其中一些常見(jiàn)的屬性。注意粒子的先前位置也可能有用。例如,你可能會(huì)想在一個(gè)粒子的先前和當(dāng)前位置之間畫(huà)它。火花就是一個(gè)從中受益的好例子。你可以在圖2中看到我創(chuàng)造的火花效果。<BR><BR>
            <TABLE align=center border=0 cellPadding=2 cellSpacing=0 
class=BGRed>
              <TBODY>
              <TR align=middle>
                <TD><IMG height=160 src="AParSystem-2.jpg" 
                  width=387></TD></TR>
              <TR align=middle>
                <TD><FONT color=#cccccc><B>圖2 
            火花效果</B></FONT></TD></TR></TBODY></TABLE><BR>  色彩和能量屬性也能夠用來(lái)創(chuàng)建一些有趣的特效。在前一個(gè)粒子系統(tǒng)中,我在煙系統(tǒng)中使用色彩,這樣我能夠在場(chǎng)景中動(dòng)態(tài)地為粒子進(jìn)行光照渲染。能量值也是非常重要的。能量是與粒子的生命周期相關(guān)的-你可以利用這一點(diǎn)來(lái)判斷一個(gè)粒子是否消亡。而且由于某些粒子的色彩和強(qiáng)度隨時(shí)間變化(例如火花),你或許會(huì)想把它與定點(diǎn)色彩的Alpha通道值聯(lián)系起來(lái)。<BR>  我強(qiáng)烈推薦把粒子類的構(gòu)造函數(shù)設(shè)為空,因?yàn)槟悴⒉幌朐跇?gòu)造的時(shí)候使用默認(rèn)值,這是由于對(duì)大多數(shù)的例子系統(tǒng)來(lái)說(shuō),這些值總是不同的。<BR>  粒子系統(tǒng)類(<SPAN 
            class=English>The Particle System 
            Class</SPAN>)這個(gè)類是整個(gè)系統(tǒng)的核心。刷新粒子的屬性和設(shè)置粒子的形狀都在這個(gè)類中進(jìn)行。我現(xiàn)有的粒子系統(tǒng)類使用我的3D引擎的節(jié)點(diǎn)類,其中包含例如位置向量、旋轉(zhuǎn)四元數(shù)和比例值的數(shù)據(jù)。由于我繼承了這個(gè)節(jié)點(diǎn)類的所有成員,我能夠在引擎的層次結(jié)構(gòu)中連接我的粒子系統(tǒng),使得引擎能夠改變粒子系統(tǒng)的位置,就如同上面討論過(guò)的香煙系統(tǒng)一樣。但如果你的引擎沒(méi)有層次支持,或者如果你在構(gòu)建一個(gè)獨(dú)立的粒子系統(tǒng),這就不需要了。表2列出了在粒子系統(tǒng)基類中你所需要的屬性。<BR><BR>
            <TABLE align=center bgColor=#000000 border=0 cellPadding=2 
            cellSpacing=1 width="95%">
              <TBODY>
              <TR class=BGRed>
                <TD width="18%"><B><FONT color=#cccccc>數(shù)據(jù)類型</FONT></B></TD>
                <TD width="19%"><B><FONT color=#cccccc>名稱</FONT></B></TD>
                <TD width="63%"><B><FONT color=#cccccc>描述</FONT></B></TD></TR>
              <TR bgColor=#ffffff>
                <TD class=ColorCode vAlign=top width="18%">Texture</TD>
                <TD class=ColorCode vAlign=top width="19%">*texture</TD>
                <TD class=EtoC vAlign=top width="63%">A pointer to a texture, 
                  which all particles will use. For performance reasons, we only 
                  use one texture for each individual particle system; all 

?? 快捷鍵說(shuō)明

復(fù)制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號(hào) Ctrl + =
減小字號(hào) Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
国产精品不卡在线| 欧美视频中文字幕| 国产精品每日更新| 9i在线看片成人免费| 亚洲精品中文在线影院| 欧美在线一区二区三区| 午夜电影久久久| 日韩欧美在线网站| 国产精品99久久久久久宅男| 欧美国产精品一区二区三区| 9色porny自拍视频一区二区| 亚洲综合在线第一页| 欧美一三区三区四区免费在线看| 久久99国产精品久久99果冻传媒| 精品国产3级a| 91麻豆蜜桃一区二区三区| 亚洲国产精品久久艾草纯爱| 欧美一区二区三区在线观看视频| 极品瑜伽女神91| 亚洲视频在线观看一区| 欧美在线一二三四区| 久久精品噜噜噜成人av农村| 国产精品亲子乱子伦xxxx裸| 欧美色涩在线第一页| 精品亚洲国产成人av制服丝袜| 日本一区二区三区dvd视频在线 | av在线这里只有精品| 一区二区三区免费网站| 日韩精品自拍偷拍| 成人av在线资源网| 青青草国产成人99久久| 中文字幕精品一区| 91精品国产欧美一区二区成人| 大胆亚洲人体视频| 午夜欧美一区二区三区在线播放| 久久久久97国产精华液好用吗| 在线观看av一区| 国产主播一区二区三区| 亚洲国产成人porn| 欧美激情中文字幕一区二区| 欧美日韩亚洲综合在线| 岛国一区二区在线观看| 奇米精品一区二区三区在线观看 | 日韩av不卡一区二区| 中文字幕在线观看不卡| 欧美大片拔萝卜| 日本高清不卡视频| 国产成人免费高清| 久久爱www久久做| 亚洲一二三级电影| 亚洲视频 欧洲视频| 欧美精品一区二区高清在线观看| 日本丰满少妇一区二区三区| 国产98色在线|日韩| 久久精品国产网站| 一区二区久久久| 国产精品久久一级| 国产嫩草影院久久久久| 精品福利一区二区三区免费视频| 欧美网站一区二区| 一本一道综合狠狠老| 成人污视频在线观看| 韩国毛片一区二区三区| 蜜臀精品久久久久久蜜臀 | 久久精品国产亚洲高清剧情介绍 | 欧美精品丝袜中出| 在线这里只有精品| 99精品视频一区| 成人动漫av在线| 岛国精品在线观看| 国产成人精品亚洲日本在线桃色| 久久er精品视频| 日本欧美久久久久免费播放网| 亚洲自拍另类综合| 亚洲国产精品久久久久婷婷884| 亚洲男人天堂av网| 亚洲蜜臀av乱码久久精品| 亚洲欧美一区二区视频| 国产精品久久久久久久久久久免费看 | 99久久免费视频.com| 成人网页在线观看| 91在线播放网址| 一本到不卡精品视频在线观看| 91免费视频观看| 色综合久久综合| 欧美日韩一级片在线观看| 9191国产精品| 日韩欧美一区二区三区在线| 亚洲精品一区在线观看| 久久网这里都是精品| 国产精品污www在线观看| 亚洲色图清纯唯美| 亚洲一区国产视频| 免播放器亚洲一区| 黄色资源网久久资源365| 国产夫妻精品视频| 91免费视频大全| 欧美日韩视频第一区| 日韩欧美在线影院| 欧美成人官网二区| 欧美激情一区不卡| 亚洲一区免费视频| 久久99最新地址| 国产成人欧美日韩在线电影| 色综合网色综合| 久久久精品2019中文字幕之3| 欧美精品一区二区三区在线| 国产精品欧美精品| 亚洲一区中文日韩| 奇米在线7777在线精品| 国产真实乱偷精品视频免| 99精品一区二区| 337p亚洲精品色噜噜噜| 久久久久久久久久久99999| 亚洲人成网站在线| 日本va欧美va瓶| av一区二区三区四区| 欧美日韩mp4| 欧美国产日韩精品免费观看| 亚洲午夜精品在线| 国产99精品视频| 欧美乱熟臀69xxxxxx| 国产女主播视频一区二区| 亚洲国产精品嫩草影院| 国内精品国产成人国产三级粉色| 91丨porny丨中文| 日韩欧美国产精品| 伊人夜夜躁av伊人久久| 欧美亚洲免费在线一区| 欧美精品一区二区在线观看| 亚洲最大色网站| 国产不卡在线视频| 日韩欧美中文字幕公布| 亚洲久本草在线中文字幕| 国产真实乱子伦精品视频| 欧美三级资源在线| 国产精品午夜电影| 国产在线精品一区二区不卡了 | 肉肉av福利一精品导航| 99久久久久久99| 久久久久久久久蜜桃| 日韩二区在线观看| 欧美日韩精品一区二区在线播放| 国产精品青草综合久久久久99| 久久国产成人午夜av影院| 欧美日韩在线三级| 中文字幕视频一区| 国产精品一区二区免费不卡| 日韩欧美色综合网站| 首页亚洲欧美制服丝腿| 在线免费av一区| 中文字幕一区二区三区在线不卡 | 国产精品久久99| 国产一区二区三区蝌蚪| 欧美一区二区三区在| 亚欧色一区w666天堂| 欧洲生活片亚洲生活在线观看| 国产欧美在线观看一区| 国产一区二区不卡老阿姨| 精品日韩欧美一区二区| 久久国内精品自在自线400部| 91精品欧美久久久久久动漫| 午夜精品久久久久久久| 欧美美女黄视频| 丝袜美腿亚洲色图| 4438x亚洲最大成人网| 天天操天天综合网| 制服丝袜亚洲精品中文字幕| 偷拍日韩校园综合在线| 91 com成人网| 蜜桃精品视频在线| 精品va天堂亚洲国产| 国产一区二区三区黄视频 | 不卡av在线免费观看| 美女视频一区在线观看| 欧美大片日本大片免费观看| 极品尤物av久久免费看| 久久精品视频一区二区| 成人高清伦理免费影院在线观看| 国产精品免费久久久久| 97精品电影院| 一二三四区精品视频| 欧美日韩国产a| 另类小说视频一区二区| 久久久久久久久久久久久夜| 粉嫩一区二区三区性色av| 中文字幕视频一区二区三区久| 色呦呦日韩精品| 日韩精品一二三| 欧美精品一区二区蜜臀亚洲| 国产91精品一区二区| 樱花影视一区二区| 3atv在线一区二区三区| 国产精品综合一区二区| 国产精品视频线看| 欧美日韩精品一区二区三区蜜桃| 日本一区中文字幕| 国产精品狼人久久影院观看方式| 色88888久久久久久影院按摩 | 一道本成人在线|