• 
    

    
    

      99热精品在线国产_美女午夜性视频免费_国产精品国产高清国产av_av欧美777_自拍偷自拍亚洲精品老妇_亚洲熟女精品中文字幕_www日本黄色视频网_国产精品野战在线观看 ?

      基于FL+FB碰撞類游戲框架原理設(shè)計(jì)與實(shí)現(xiàn)

      2017-11-20 09:22:15顧鳳梅
      電腦知識(shí)與技術(shù) 2017年27期
      關(guān)鍵詞:碰撞檢測(cè)圓形矩形

      顧鳳梅

      摘要:針對(duì)目前網(wǎng)絡(luò)上眾多的碰撞類游戲,給出三種游戲碰撞檢測(cè)設(shè)計(jì)原理。根據(jù)原理,使用FL和FB軟件和ActionScript3.0語言完成了游戲框架設(shè)計(jì),實(shí)現(xiàn)了其功能,給游戲編程初學(xué)者提供了一定的幫助,提高了游戲的開發(fā)效率。

      關(guān)鍵詞:FL+FB;碰撞;游戲;ActionScript3.0

      中圖分類號(hào):TP311 文獻(xiàn)標(biāo)識(shí)碼:A 文章編號(hào):1009-3044(2017)27-0079-02

      Abstract:In view of the current many collision games on the network, three game collision detection design principles are given.According to the principle, using Fl and FB software and ActionScript3.0 language complete the design of the game framework, realized its function.It provides some help for game programming beginners, and improves the efficiency of game development.

      Key words:FL+FB; collision; game; ActionScript3.0

      1 概述

      隨著電子技術(shù)以及網(wǎng)絡(luò)的發(fā)展,各種游戲隨處可見,碰撞類游戲不管是在網(wǎng)絡(luò)版還是單機(jī)版都比較多,本文就是講述了碰撞類游戲幾種碰撞框架原理,并且利用FL和FB,實(shí)現(xiàn)了這幾種碰撞原理。

      FL就是Flash軟件,更側(cè)重于設(shè)計(jì),適合設(shè)計(jì)人員使用,也可以利用FL軟件,和ActionScript3.0語言結(jié)合做出碰撞類游戲,但只是基本的ActionScript編輯操作,而FB是Flash Builder側(cè)重于腳本編程,適合開發(fā)人員使用,可以對(duì)ActionScript進(jìn)行高級(jí)編輯操作,如果若是使用FL軟件,對(duì)于編程人員可能要求的也更多一些,對(duì)于人物角色,設(shè)計(jì)的理論也要懂得更多,對(duì)高級(jí)ActionScript編輯操作也只有使用FB。在之前的文中都是利用FL軟件來制作碰撞類游戲,本文利用FL+FB這兩種軟件結(jié)合完成碰撞類游戲幾種框架原理的設(shè)計(jì)與實(shí)現(xiàn),給游戲編程的初學(xué)者提供了幫助,也提高了游戲的開發(fā)效率。

      利用FL+FB制作實(shí)現(xiàn)游戲界面的設(shè)計(jì)和ActionScript3.0代碼書寫,在FL+FB碰撞類游戲中,兩個(gè)物體碰撞,這兩個(gè)物體有的是矩形,有的是圓形,有的是不規(guī)則的圖形,越復(fù)雜的圖形碰撞原理越復(fù)雜,本文主要是對(duì)規(guī)則的圖形進(jìn)行分析其原理并利用FL和FB進(jìn)行實(shí)現(xiàn)。

      2 物體碰撞檢測(cè)原理

      2.1 矩形對(duì)象碰撞原理

      在大多數(shù)碰撞類游戲制作中,要進(jìn)行碰撞原理檢測(cè)大多數(shù)都處理成矩形碰撞,就是檢測(cè)兩個(gè)矩形的坐標(biāo)位置,有沒有相交叉的地方,重合的地方。在FL中左上角原點(diǎn)坐標(biāo)是(0,0),譬如假如設(shè)置其中一個(gè)矩形的左上角的坐標(biāo)是(XA,YA),寬度高度分別是WA,HA,把另一個(gè)矩形的左上角的坐標(biāo)是(XB,YB),寬度高度分別是WB,HB,如圖1矩形碰撞示例。

      2.2 圓形對(duì)象碰撞原理

      檢測(cè)兩個(gè)圓形是否發(fā)生碰撞,首先計(jì)算兩個(gè)圓心之間的距離,如果小于兩個(gè)圓形對(duì)象半徑之和,則認(rèn)為這兩個(gè)圓形對(duì)象發(fā)生碰撞了。

      假設(shè)第一個(gè)圓形的左上角坐標(biāo)是(XC,YC),半徑是RC,另一個(gè)圓形的左上角的坐標(biāo)是(XD,YD),半徑為RD,則第一個(gè)圓形圓中心坐標(biāo)是(XC+RC,YC+RC),第二個(gè)圓中心坐標(biāo)是(XD+RD,YD+RD),如圖2圓形碰撞示例。

      3 FL+FB碰撞原理框架實(shí)現(xiàn)

      3.1 矩形碰撞原理框架實(shí)現(xiàn)

      先在FL中畫個(gè)矩形物體 Rectangle 類,如圖3Rectangle 類,生成SWC文件,在FB中導(dǎo)入文件,代碼中創(chuàng)建了兩個(gè)Rectangle類的實(shí)例rectangle1和rectangle2,其中設(shè)置rectangle2是為能拖動(dòng)的。在FB中使用ActionScript代碼hitTestObject方法判斷兩個(gè)矩形對(duì)象是否發(fā)生了碰撞。

      3.2 圓形物體碰撞框架原理實(shí)現(xiàn)

      在FL中建立了一個(gè)Circle類(如Recangle類),兩個(gè)圓對(duì)象發(fā)生了碰撞,每個(gè)圓都占80像素寬,半徑就是40。對(duì)于兩個(gè)大小相同的圓球來說,如果距離小于直徑,不同的話就是兩個(gè)半徑的和,就會(huì)產(chǎn)生碰撞,不再使用hitTestObject方法。如圖5圓形碰撞實(shí)現(xiàn)實(shí)例,ActionScript3.0代碼為(兩個(gè)相同的圓,半徑為40,dist為兩個(gè)圓心之間的距離):

      3.3 對(duì)象與點(diǎn)框架碰撞實(shí)現(xiàn)

      但在真正應(yīng)用中很多物體不是矩形的,也不是圓形物體碰撞,有的是點(diǎn)與物體的碰撞,如射擊子彈的碰撞,這個(gè)點(diǎn)可以是很小的對(duì)象也可以是鼠標(biāo)。

      4 總結(jié)

      本文總結(jié)了基于FL+FB的碰撞類游戲框架三種原理并用代碼實(shí)現(xiàn)了,在碰撞類游戲制作中,可以利用這三種框架原理進(jìn)行碰撞檢測(cè)來設(shè)計(jì),減少了編程初學(xué)者在碰撞類游戲程序設(shè)計(jì)開發(fā)的時(shí)間,提高了開發(fā)碰撞類游戲的效率。

      參考文獻(xiàn):

      [1] 賀曉霞,方寧.ActionScript3.0編程特效實(shí)戰(zhàn)[M].北京:清華大學(xué)出版社,2010.

      [2] Gary Rosenzweig. ActionScript 3.0游戲編程[M].胡蓉, 張東寧, 朱栗華.北京:人民郵電出版社,2012.

      [3] 郭禧珍.基于ActionScript3.0的碰撞類游戲的設(shè)計(jì)與實(shí)現(xiàn)[J].網(wǎng)絡(luò)安全技術(shù)與應(yīng)用,2013(8):16-17.

      [4] 碰撞檢測(cè)(as3.0) [EB/OL]. http://blog.sina.com.cn/s/blog_69d4b0ec0100vb9l.html.endprint

      猜你喜歡
      碰撞檢測(cè)圓形矩形
      全新預(yù)測(cè)碰撞檢測(cè)系統(tǒng)
      兩矩形上的全偏差
      基于BIM的鐵路信號(hào)室外設(shè)備布置與碰撞檢測(cè)方法
      化歸矩形證直角
      Unity3D中碰撞檢測(cè)問題的研究
      為什么窨井蓋大多都是圓形的
      從矩形內(nèi)一點(diǎn)說起
      肥皂泡為什么是圓形?
      圓形題
      圓形變身喵星人
      吉木乃县| 鹤峰县| 革吉县| 苍山县| 防城港市| 高密市| 鄯善县| 伽师县| 江达县| 宁南县| 阳江市| 晋城| 格尔木市| 海安县| 北宁市| 共和县| 万盛区| 鹤峰县| 彝良县| 信宜市| 玛曲县| 保康县| 盐源县| 嘉黎县| 南平市| 朝阳区| 衡南县| 普格县| 中山市| 井研县| 隆尧县| 郁南县| 会理县| 漯河市| 汝阳县| 济南市| 荔浦县| 长沙市| 大余县| 城口县| 金川县|