android小游戲開發
1. 用android編出來的小游戲有哪些
小鳥、水果忍著什麼的就不用說了,想必你也玩爛了。
我推薦幾個我在玩的:
1、stupidzombies(幾個子彈內打死所有屏幕上的僵屍,子彈會在屏幕上彈來彈去)
2、ageofwind2(中世紀海盜游戲,出去炸翻海上的船,然後撿桶子回去賣錢,修船買新船,挺有意思,重力感應操作方向,剛開始有點不熟,熟練了可以風箏n只船)
3、whackyourboss(只有20關,中文名好像叫老闆的20種死法,如果你在工作,說不定你會喜歡)
4、三國殺。這個就不用說了吧
5、beats。跳舞機游戲。
6、battleheart(中文名勇者之心,打怪升級的,有法師、獵人、戰士、dk、野蠻人、盜賊幾種職業)
7、canknockdown(踢罐子,拿球砸罐子,有點意思)
8、where『smywater?(鱷魚愛洗澡)
9、三劍之舞(棒子的游戲,類似於地下城與勇士)
10、deathrally(死亡拉力賽,賽車咯)
11、游戲發展國(這個會玩上癮的,不過很快就通關了,通關後還是可以繼續玩)
12、streetball(街頭籃球,挺容易的,基本上隨便選一個人物都能完爆對手,我每場得分28+,蓋帽18個,兩雙啊,哈哈)
13、skaterboy(滑板游戲)
14、cheesetower(某些網站上排名靠前的游戲,玩了覺得一般般)
好了就這些,還有很多刪了都不記得了。
2. 安卓開發問題:本人自學安卓,做了一個小游戲(java寫的),surfaceview繪制的,但是發現
android每個程序都會有一個虛擬機,每個虛擬機都有內存大小限制,android中載入大圖片會導致虛擬機內存不足,虛擬機會一直回收垃圾,直到崩潰,有可能是你用的圖片資源太大或者有什麼資源沒有釋放,例如io流沒有close,資料庫沒有close,等等都會造成內存溢出,你沒有詳細描述,只能做出這樣的推測了。
3. 安卓系統的游戲用什麼語言開發的
安卓游戲主要還是Java語言。
Java編寫小軟體還是很輕松,如果想做安卓游戲就非常回復雜了。
都是用答eclipse+ADT+android SDK開發的安卓游戲,還要有一定的美工基礎。
推薦游戲引擎,可以自動封裝成apk的,小的文字類或者RPG可以用renpy引擎,引擎語言官網上有,純文字類的推薦onscripter,編寫相對簡單。
編寫一個好的安卓手機游戲客戶端需要很長的過程和完善的團隊,自己一個人的力量是十分有限的,自己可以做比如挖掘機之類的小游戲。
4. 怎麼學習android游戲開發
android游戲開發開發比較難,因為它需要學習的內容比較多,而且比較難。除非你找到自學android游戲的方法。給你看看一個中專生自學android到找到工作的經歷。
………………………………………………………………………………
我是一名中專生,在學校里讀的是計算機專業,但是由於學校不好大部分同學都不愛學習來這里幾乎大部分都是在混日子的,雖然我中考的成績不差,但是因為家裡窮考慮到以後沒錢讀大學我毅然來到這里,雖然是中專,但是我相信只有努力以後也會出頭,但是我被這里的學習氣氛給感染了,慢慢的變得不喜歡學習,後來還經常逃課,三年時間里就渾渾噩噩的過了,到了畢業,由於我學歷低和打了三年的醬油什麼也沒學到,後來只能到電腦城裡工作一個月辛辛苦苦的工作,只能賺到幾百元,每次想起農村裡的爸媽辛辛苦苦的賺錢給我讀書最後我白白浪費了他們的血汗錢我感到很痛苦很內疚,經常晚上坐在天台上,眼淚不自然地流下了,難道自己一輩子都這樣了嗎,一次偶然的機會我在網上看到了一段新聞說安卓現在特別火有一年工作已經的工資可以達到8000元左右就算沒工作經驗起薪也有5000元,5000元對我來說簡直就是個天文數字,於是我決定學習安卓,後來我到書店找了一些安卓的書但是由於基礎太差,很多都看不明白,網上看到可以報培訓班都是幾乎每所都要上萬大洋,對於我一個一個月只能賺幾百元的中專生來說簡直是個天文數字,後來在IT學習聯盟這個網站看到了一套安卓視頻叫<<安卓就業班>>(喜歡《安卓就業班》的可以復制 sina.lt/brxC 粘貼瀏覽器地址欄按回車鍵即打開)。價格還挺合理的。覺得內容挺不錯的於是我決定買下來,我想既然我看書看不明白,看視頻應該容易看明白吧,自從我把視頻買下來後就就天天看,因為自己基礎太差了,所以每天至少學習5個小時以上,那段日子真的很辛苦但又很充實,覺得我的人生最有意義的時間段。我拿到光碟後首先跟著他要求的學習順序學習(因為他已經偏好了學習的順序)從第一塊開始到第十七塊,首先學的是JAVA,是一個培訓視頻,總共十幾G,但老師幽默風趣而又輕松的課堂教課,使我發現原來學習JAVA並不是一件很難的事情,但我的基礎太差了有些地方還是不容易看懂,於是有些地方重復看了兩,三篇,甚至四,五篇,大概這樣過了一個月我就把JAVA給學會了,這個月因為要上班所以經常學到晚上1,2點早上6點多就起床,星期六,星期天的話就從早上看到晚上,所以有段時間眼睛經常通紅通紅的,但是我知道天道酬勤這個成語,你努力付出就一定得到回報的,於是我堅持了下來,到了第二階段,學習android了,他有基礎篇和深入篇,基礎篇比較容易,深入篇的話還是有點難度的,但是我覺得JAVA學好了,android並不難學,學起來還覺得挺容易的,心裡不由自主的笑了,覺得是不是我的付出有了回報,到了第三階段也是最難的了,是基於linux的嵌入式,因為android的是由linux底層開發的再加上界面是JAVA,所以學好linux的嵌入式也比較重要(如果你以後想成為android內核移植這個方向走的非常重要,工資可是很高的哦,如果你只想做界面的話了解一下也不錯),他首先從C語言開始教,然後到linux嵌入式,我覺得這部分太難理解了,很多都是硬著頭皮看完的,因為有不地方看不明白,斷斷續續的來到了第四階段項目階段這里總共有22個大項目,一開的時候還是跟不上老師的腳步但是後來就慢慢的跟上了,我覺得項目很重要,他把之前的所有的東西都復習了一遍而且讓你熟悉了真正企業項目實線,使你以後工作的時候更容易上手,學習了大概4個多月。終於學完了。就開始找工作。最後找到一份在小公司工作,待遇也有4500元,感覺還行。但是這4500元對我只有中專文聘來說已經很多很多了,我很滿足了,我覺得只有肯努力,也會有成功的一天的。
………………………………………………………………
5. 學習開發安卓小游戲,剛剛起步需要學習哪些,c++還是別的
Java,C++是開發電腦游戲的,安卓系統上運行的軟體都是Java開發的
6. 請問 安卓游戲是怎麼開發的 能不能舉個最簡單的游戲開發例子
android開發建議你先從java學起,java的好書有很多,但是我建議您先專注研究一本,等把這本吃透了再看其他的就容易的多了
Java類的推薦書籍:
HeadFirst java、 Java編程思想、Java2核心技術、Java程序設計經典教程
Android類的推薦書籍:
Android應用開發詳解、 Android應用開發揭秘、 Android游戲開發詳解
Java類的書我建議您先看HeadFirst Java,這本書是美國人寫的有中文版,文風詼諧幽默又不失專業,有助於培養學習的興趣
Android類的書我建議您先看 Android應用開發詳解,內容很細代碼也全,注釋很多,可讀性強
所有人在學習任何新知識時都是從零開始,head first java這本書有很多例子,至少可以通過復制書上代碼編寫一兩個小程序,這就是很好的開始啊。
你從書上內容實踐成功1個小程序到10個小程序是開始的第一步
你從獨立編寫1個小程序到獨立編寫5個小程序是第二步
你從讀懂1個復雜程序源代碼到讀懂20個復雜程序源代碼是第三步
第四步你學成出山了
7. 安卓手機游戲開發需要學什麼
游戲開發需要學習:基礎公共課、專業技能課、游戲程序方向。
1、基礎公共課
Direct 3D程序開發基礎、3D游戲開發技術實戰、游戲引擎的修改與使用網路通訊、資料庫及游戲伺服器、行業規劃及職業素質、游戲綜合項目實戰訓練、基地頂崗項目實訓。
8. 基於android系統的雷電小游戲開發源代碼,比較簡單的那種!
r3er
9. 基於android系統的手機游戲的開發
如果你有興趣為Android平台開發游戲,有很多你需要了解的東西。如果你有過游戲開發經驗,那麼轉移到移動平台上來將不是特別困難。你主要只需學習其架構以及API就行了。如果你是一名游戲開發新手,我總結了一張列表,上面有你必需知道的東西,供你起步用。這些知識適用於很多類型的游戲,包括動作類、策略類、模擬類和益智類。 Android是一個基於Java的環境。這對初學者來說是個好消息,因為相對於C++,Java被廣泛認為是一門更容易上手的語言,它是移動開發的規范。Google也做了一件出色的工作,它將API文檔化並提供示例代碼供使用。其中有個叫做API Demos的示例幾乎展示了所有API的功能。如果你熟悉Java並且用過Eclipse,要讓你的第一個應用跑起來那是相當簡單。如果你以前從沒寫過代碼,在你前進路上還要學習很多,但別氣餒。
獲取SDK
新手上路的第一步便是獲取Android SDK(軟體開發工具包)。SDK里有一個核心類庫,一個模擬器,一些工具和示例代碼。我強烈建議使用Eclipse和Android Eclipse插件。如果你玩Android的話,Eclipse IDE對Java開發者來說很好用。如果這是你第一次開發Java項目,你可能會需要下載全套JDK,它裡麵包括簽名和部署你的應用程序的一些工具。
學習應用程序架構
別急著一頭扎進開發的海洋里,理解Android應用程序架構是很重要的。如果你不學一下,你設計出來的游戲在線下將很難調試。你將需要理解Applications、Activities、Intents以及它們怎樣相互聯系。Google提供了很多有用的架構信息。真正重要的是要理解為什麼你的游戲需要多於一個的Activity,以及什麼才是設計一個有良好用戶體驗的游戲。要理解這些,首先要了解什麼是Activity生命周期。
學習Activity生命周期
Activity生命周期由Android操作系統來管理。你的activity創建、恢復、暫停、銷毀都受操作系統的支配。正確處理這些事件是很重要的,這樣應用程序才能表現良好,做用戶認為正確的事。在你設計你的游戲之前了解所有這些是如何工作的是件好事,因為以後你可以為自己節省調試時間和昂貴的重新設計時間。對大多數應用來說,默認的設置將工作正常,但對於游戲,你可能需要考慮將SingleInstance標志打開。當設置為默認時,Android在它認為合適時會創建activity的新實例。對於游戲來說,你可能只需要一個游戲activity的實例。這對於你要怎樣管理事務的狀態有些影響,但對於我來說,這解決了一些資源管理的問題,應予以考慮。
主循環
根據你寫的游戲的類型,你可能需要也可能不需要一個主循環。如果你的游戲不依賴於時間或者它僅僅對用戶所做的加以回應,並且不做任何視覺上的改變,永遠等待著用戶的輸入,那麼你就不需要主循環。如果你寫的是動作類游戲或者帶有動畫、定時器或任何自動操作的游戲,你應該認真考慮下使用主循環。
游戲的主循環以一個特定的順序通常盡可能多的在每秒鍾內「滴答」提醒子系統運行。你的主循環需要在它自己的線程里運行,原因是Android有一個主用戶界面線程,如果你不運行自己的線程,用戶界面線程將會被你的游戲所阻塞,這會導致Android操作系統無法正常的更新任務。執行的順序通常如下:狀態,輸入,人工智慧,物理,動畫,聲音,錄像。
更新狀態意思是管理狀態轉換,例如游戲的結束、人物的選擇或下一個級別。很多時候你需要在某個狀態上等上幾秒鍾,而狀態管理應該處理這種延遲,並且在時間過了之後設置成下一個狀態。
輸入是指用戶按下的任何鍵、對於滾動條的移動或者用戶的觸摸。在處理物理之前處理這些是很重要的,因為很多時候輸入會影響到物理層,因而首先處理輸入將會使游戲的反應更加良好。在Android里,輸入事件從主用戶界面線程而來,因此你必須寫代碼將輸入放入緩沖區,這樣你的主循環可以在需要的時刻就從緩沖區里取到它。這並非難事。首先為下一個用戶輸入定義一個域,然後將onKeyPressed或onTouchEvent函數設為接到一個用戶動作就放到那個域里,有這兩步就夠了。如果對於給定游戲的狀態,這是一個合法的輸入操作,那麼所有輸入需要在那一刻做的更新操作都已經定下來了,剩下來就讓物理去關心怎樣響應輸入吧。
人工智慧所做的類似於用戶在決定下一個要「按」哪個按鈕。學習怎樣寫人工智慧程序超出了這篇文章的范圍,但大體的意思是人工智慧會按照用戶的意圖來按按鈕。這些也有待物理去處理和響應吧。
物理可能是也可能不是真正的物理。對於動作類游戲來說,關鍵點是要考慮到上一次更新的時間、正在更新的當前時間、用戶輸入以及人工智慧,並且決定它們朝著什麼方向發展和是否會發生沖突。對於一個你可視化地抓取一些部件並滑動它們的游戲來說,物理就是這個游戲中滑動部件或者使之放入合適的位置的部分。對於一個小游戲來說,物理即使這個游戲中決定答案是錯還是對的部分。你可能將其命名為其他東西,但每個游戲都有一個作為游戲引擎的紅肉部分(譯者註:可能是主體部分的意思),在這篇文章里,我把這部分稱為物理。
動畫並非像在游戲里放入會動的gif圖片那樣簡單。你需要使得游戲能在恰當的時間畫出每一幀。這並沒有聽起來那麼困難。保留一些像isDancing、danceFrame和lastDanceFrameTime那樣的狀態域,那樣動畫更新便能決定是否可以切換到下一幀去了。動畫更新真正做的事就那麼多。真正來顯示動畫的變化是由錄像更新來處理的。
聲音更新要處理觸發聲音、停止聲音、音量變化以及音調變化。正常情況下當寫游戲的時候,聲音更新會產生一些傳往聲音緩沖區的位元組流,但是Android能夠管理自己的聲音,因而你的選擇將是使用SoundPool或者MediaPlayer。它們都需要小心處理以免出錯,但你要知道,因為一些底層實現細節,小型、低比特率的聲音文件將帶來最佳的性能和穩定性。
錄像更新要考慮游戲的狀態、角色的位置、分數、狀態等等,並將一切畫到屏幕上。如果使用主循環,你可能需要使用SurfaceView,並做一個「推」繪制。對於其他視圖,視圖本身能夠調用繪制操作,主循環不必處理。SurfaceView每秒產生的幀數最多,最適合於一些有動畫或屏幕上有運動部件的游戲。錄像更新所要做的工作是獲取游戲的狀態,並及時地為這個狀態繪制圖像。其他的自動化操作最好由不同的更新任務來處理。
代碼看起來是什麼樣的?這兒有個例子。
1: public void run() {
2: while (isRunning) {
3: while (isPaused && isRunning) {
4: sleep(100);
5: }
6: update();
7: }
8: }
9:
10: private void update() {
11: updateState();
12: updateInput();
13: updateAI();
14: updatePhysics();
15: updateAnimations();
16: updateSound();
17: updateVideo();
18: }
3D還是2D?
在開始寫游戲之前,你要決定是做3D的還是2D的。2D游戲有一個低得多的學習曲線,一般更容易獲得良好的性能。3D游戲需要更深入的數學技能,並且如果你不在意的話會有性能問題產生。如果你打算畫比方框和圓圈更復雜的圖形,還需要會使用3D Studio和Maya那樣的建模工具。Android支持OpenGL用來3D編程,並且在OpenGL方面有很多很好的教程可供學習。
建立簡單、高質量的方法
上手時,要確保你整個游戲不要就用一個龐大而冗長的方法。如果你遵循我上面描述的主循環模式,這將相當簡單。每個你寫的方法應當完成一個非常特定的任務,並且它就應該無差錯地那樣做。舉例來說,如果你需要洗一副紙牌,你應該寫一個「shuffleCards」的方法,並且該方法就應該只做這一件事。
這是一個適用於任何軟體開發的編碼實踐,但對於游戲開發來說這尤為重要。在一個有狀態的、實時的系統里,調試將變得非常困難。使你的方法盡量的小,一般的經驗法則是每個方法有且僅有一個目的(譯者註:完成且僅完成一個功能)。如果你要為一個場景用編程方式畫一個背景,你可能需要一個叫做「drawBackground」的方法。諸如此類的任務能夠很快完成,因而你可以按照搭積木的方法來開發你的游戲,而你能夠繼續添加你要的功能,並且不會使得這一切難以理解。
最重要的是效率!
性能是任何游戲的主要問題。我們的目標是使得游戲的反應越快越好,看起來越流暢越好。某些方法如Canvas.drawLine比較慢。並且要將屏幕大小的點陣圖畫到主畫布上,每一幀都是代價昂貴的。如何權衡對於達到最佳性能很有必要。確保管理好你的資源,使用技巧來以最少量的CPU資源完成你的任務。如果性能不好的話,即使是最好的游戲玩起來也沒勁。人們一般對於游戲卡或者響應慢幾乎難以容忍。
提示和技巧
看一下SDK中的示例LunarLander。它使用SurfaceView,這對於一個每秒需要處理最多幀的游戲來說是合適的。如果你要做3D,示例中有GLView可以處理3D顯示的很多初始化工作。對LightRacer來說,我不得不優化把所有東西都畫出來這種方法,否則幀率將會大大地降低。我只在視圖初始化的時候把背景畫進一個點陣圖里一次。路徑放在它們自己的點陣圖里,隨著車手的前進而更新。這兩個點陣圖在每一幀里都被畫進主畫布中去,車手畫在頂端,到最後會有一個爆炸。這種技術使得游戲運行在一個可以玩的程度。
如果適用的話,使得你的點陣圖的大小精確等於你打算畫到屏幕上的大小,這也是個好的實踐。這么做了以後就需要縮放,可以節省CPU資源。
在游戲中始終一致的點陣圖配置(如RGBA8888)。這將會通過減少不同格式之間轉換的時間來節省圖形庫的CPU時間。
如果你決定開發3D游戲但沒有3D方面的知識,你需要挑選一兩本3D游戲編程方面的書並學習線性代數。你最少要理解點積、叉積、向量、單元向量、法線、矩陣和變換。這方面我遇到的最好的書是叫《3D游戲編程和計算機圖形學數學》。
聲音文件要小而且低比特率。需要載入的越少,載入速度越快,游戲所需內存越少。
聲音使用OGG文件,圖片使用PNG文件。
確保釋放所有媒體播放器,當Activity銷毀時空出所有的資源。這能保證垃圾收集器清除了所有東西,也能保證在兩次游戲開始之間沒有內存泄露。
加入Android谷歌小組,尋求社區支持。這里有人可以在開發過程中給你幫助。
最重要的是,花時間測試再測試,確保每一小部分都如你所願地工作。改善游戲是整個開發中最耗時最困難的部分。如果你匆匆將其推向市場,你很可能會使用戶們失望,你會感到你的努力都白費了。你不可能使所有人都喜歡你寫的東西,但你至少要盡量發布你最高質量的作品。
Google在這里有幫助你上手的絕佳的文檔。
電驢上也有很多不錯的書籍和視頻教程~希望對你有幫助
10. 如何從android開發轉行游戲開發
有段時間我一直在想我喜歡熱愛的到底是什麼? 想想當初是什麼動機或者夢想讓我進入這個行業? 我越來越堅定的了解到 我想去做游戲開發, 每當想到開發一個游戲就激情澎湃,像打了雞血一樣,每次和朋友聊到游戲行業的事情我發現我就像變了一個人一樣,我覺得這才是我熱愛的東西。
雖然做了2年的程序員,但是對游戲開發應該說只知道個大概。
做了這么久android開發,我真是覺得對於android開發者來說付出和所獲的成就感不成正比,android開發者需要考慮各種各樣的解析度的適配,修改各種山寨機可能出現的bug,付出了很多很多往往不一定能達到理想的效果。
談談最近很火的Unity3D,我趕腳這和當初Android剛爆發時候一樣很多人紛紛開始搞android開發(我也是其中之一),但是現在看起來我們都是在人家的操作系統上或者游戲引擎上做開發,產品的體驗一定程度上是你無法改變的。
其實我還是比較傾向於去做游戲引擎開發,覺得這個才是真正有技術含量的東東。
我的理想就是能參與到幾款成功的游戲的開發過程中,將來能夠有自己的游戲工作室,呵呵。