佳礼资讯网

 找回密码
 注册

ADVERTISEMENT

搜索
查看: 10230|回复: 102

Android 游戏制作分享区

[复制链接]
发表于 16-3-2009 10:47 PM | 显示全部楼层 |阅读模式
终于开贴了。
因为本人一直在摸索中,所以迟迟未能开贴。。。。而且我的周末非常有限。。。

这里也有人制作 android 游戏吗? 欢迎分享心得.
看来,我也不用帖什么 link 去哪里下载 SDK 了,相信大家都知道, 教学的地方有很多,
anddev.org, androidforum 等等都有不错的教材。



我的处女作品在此, 只是一个很简陋的 turret defense小游戏, 只是希望可以从中学习一些 android的基础。。。


http://bluecapstudio.blogspot.com




心得分享:
=====
这个小游戏, 也没什么创意的说,因为是处女作,也是因为有一阵子在 kongregate玩那个 DTD 玩到上隐了。
http://www.kongregate.com/games/preecep/desktop-tower-defense-1-5  <-- (是1。5 版本)
所以就觉的自己也想试试看做一个。。。

一开始我是用opengl es 来做画面的,但不晓得为何在emulator上有点慢,可能我放太多glQuad 了,那时我做一个tile一个quad..差不多有 20x18个格子,在加上背景,子弹,怪兽,爆炸各种sprites,各用一个quad,
后来,因为画text有点不方便,而且对GL的设定不熟悉,
所以,又跑去研究画面用基本 canvas 的做法,然后又觉得蛮简单又顺畅的,所以就暂时用着先 。。


其实我比教感兴趣的是那个有用 accelorometer 的,
http://code.google.com/p/openintents/wiki/SensorSimulator

所以还在研究当中, 但目前还没想到什么好游戏点子可以用上。。

[ 本帖最后由 tensaix2j 于 29-4-2009 10:20 AM 编辑 ]
回复

使用道具 举报


ADVERTISEMENT

 楼主| 发表于 18-3-2009 07:55 PM | 显示全部楼层
谢谢。

我也是。 本来去年就该研究的,可是拖下拖下就拖到今年了。。

应该没办法出席了. 人不在KL呢。
回复

使用道具 举报

发表于 18-3-2009 08:57 PM | 显示全部楼层

回复 1# tensaix2j 的帖子

要玩accelerometer嗎?
我有研究這個的喔
我都拿accelerometer來做gesture recognition的說
回复

使用道具 举报

 楼主| 发表于 18-3-2009 09:54 PM | 显示全部楼层
欢迎讨论
回复

使用道具 举报

发表于 19-3-2009 12:46 AM | 显示全部楼层

回复 5# tensaix2j 的帖子

不過都沒有android phone啦
很難玩那個accelerometer的
我是用wiimote來玩的
我的project來的 XD
回复

使用道具 举报

发表于 19-3-2009 09:19 PM | 显示全部楼层
终于等到成品了,bravo!!
android market的审核怎么样?会不会严格?
回复

使用道具 举报

Follow Us
 楼主| 发表于 19-3-2009 10:20 PM | 显示全部楼层
苦哥也来了。。

其实我还没放上去的,因为现在,paid app 还没开放给新家波呢。。。
而且 要$25来注册。。而且,这个游戏还有很多地方要tweak。。


对了,你的iphone app 进展的如何了。

[ 本帖最后由 tensaix2j 于 19-3-2009 11:08 PM 编辑 ]
回复

使用道具 举报

发表于 20-3-2009 10:30 AM | 显示全部楼层

回复 8# tensaix2j 的帖子

这个是类似iPhone的tab defense的游戏吧?简单的idea但是非常好玩

还在摸索当中,还不熟悉objective-c和mac app的开发 目前只能在周末看一看参考书。

还有,我完全不懂game development , 哈哈,希望你可以开一个opengl es的教学

[ 本帖最后由 苦瓜汤 于 20-3-2009 10:32 AM 编辑 ]
回复

使用道具 举报


ADVERTISEMENT

 楼主| 发表于 20-3-2009 10:41 PM | 显示全部楼层
教学就不开了,我研究的也不多,
只能大概大概的分享我的做法还有一些基本的方向。。。


首先就是那个基本的gameloop, 相信很多人都认识的。。不过,在 手机上,不可以用到cpu 太高,不然会很快没电池, 所以那个gameloop 不能太紧


我大概的做法就是
一个thread 会进入系统的 event loop, 负责收event的(例如 touch event),其实就是原本的activity。。
还有一个rendering thread 会负责把game state render 出来成画面的。<-- 这个有蛮多种做法的. 我暂时只用timer。。


也可以参考这个人的做法:
http://www.rbgrn.net/content/54- ... id-game-development

public void run() {
    while (isRunning) {
        while (isPaused && isRunning) {
            sleep(100);
        }
        update();
    }
}

private void update() {
    updateState();               
    updateInput();
    updateAI();
    updatePhysics();
    updateAnimations();
    updateSound();
    updateVideo();
}



接下来,就要讲解 rendering 的做法了。。。

我是从 sample apps 研究起的。。。
在 ..... /samples/ApiDemos/src/com/example/android/apis/graphics
里有蛮多samples 参考。

那个 cubeRenderer 里可以参考到opengl es 的做法
还有那个 lunarlander 可以参考到 canvas 的做法。。

这些有很多 reusable class 可以善用,不用自己重写。。例如 GLrenderer.java 等等。



-----------------------------------------
一般的游戏,假如是2D 画面,  用普通的canvas (就是那种bitblit的做法) 则可, 如果是 3d的话就最好是用GL,

以下是某人(不是我) 的分析关于 canvas vs GL
Canvas:
-Bad: on real device runs a bit slower than the emulator on a C2D 2.4GHz + DDR2@2x400MHz
- around 20fps in that game
- good: very easy to start-up with
- good: directly draw text

OpenGL:
- on emulator that game runs at 2fps, on real device it's over 50+ FPS!
- bad: hard to start-up with
- bad: keep textures in POW sizes
- bad: no text, make spritesheets and custom text-drawing funcs
- bad: 1 cheap Australian Android phone comes-out very soon, with no gpu, with 320x240 screen. Oh well, at least it's just like $50 cheaper, and lacks too many G1 features to be important.
- bad: IntBuffer is buggy, so no streaming dynamic data in GL_FIXED format
- good: again, 50+ FPS.
- good: blending! alpha, additive, multiply, subtract - its' awesome
- good: per-vertex color-modifiers, alpha can specify per-quad opacity.
- good: lets you put the game-code in another thread, so finally a real game-loop. As it should be for games.



OpenGL ES 大致上都有 openGL 的功能, 不过,可能有很多你熟悉的功能不在了(可能是在手机上有 performance issue的关系)

假如是完全没碰过 openGL, 可以去 nehe 那边摸一摸.
假如对GL 已经有一点了解,可以直接去研究ES 。。。

这里好像有一些教学
http://www.imgtec.com/PowerVR/in ... osOpenGLES1xMBX.asp

大概的做法,
3d模型都是由多个 GLtriangle/ GLquad 组成的, 然后,在上 texture.
一个 triangle 有 3个 点(vertex) 每个点有三个coordinate(x,y,z)..
for performance reason, 一般做法是把这些数据都丢到一个 buffer。 (java.nio.buffer) 。
而且,要准备 三个 buffers, 一个是装 vertices ,一个装 indices,一个装 texture的coordinates

然后在run 里 call 这个glDrawElements把它画出来。

那个indices 拿来干嘛的呢? 因为要省vertices, 。。例如一个cube, 假如你用 6个 quads 的话,就有8个点(vertices) overlap,
所以, 那个 indices buffer 就是可以 让你减少 number of vertices 你需要的.

就写到这边先。。。。

唉, 这几天还有些事情要处理。。。
回复

使用道具 举报

 楼主| 发表于 25-3-2009 10:21 PM | 显示全部楼层
android sdk 还有提供monkey 来测试软件呢。。。

http://developer.android.com/guide/developing/tools/monkey.html
  1. adb shell monkey -p your.package.name -v 500
复制代码

[ 本帖最后由 tensaix2j 于 26-3-2009 11:12 PM 编辑 ]
回复

使用道具 举报

 楼主| 发表于 26-3-2009 11:11 PM | 显示全部楼层
丢进slideme 还有 phoload 了。。。。
哈哈,不懂有人会去download 吗。。。
回复

使用道具 举报

 楼主| 发表于 27-3-2009 09:14 AM | 显示全部楼层
唉。。。说的是咯。。
现在还在犹豫要不要买developer phone 还是跟singtel 签约呢。
回复

使用道具 举报

发表于 28-3-2009 07:29 PM | 显示全部楼层
我看到dev phone還滿便宜的說
有點想買
但是我比較期待G2
回复

使用道具 举报

 楼主| 发表于 29-3-2009 01:12 AM | 显示全部楼层
iphone 工程师讲解 push notification.

http://news.zdnet.co.uk/hardware/0,1000000091,39632699,00.htm
回复

使用道具 举报

发表于 30-3-2009 09:30 PM | 显示全部楼层
Game对我来说太难弄了 ,所以只弄了一个Digg阅读软件,迟些可能要出血注册iphone developer program了,不然的话也只能在Emulator上测试,极为不踏实。。。

贴几个screenshot,献丑下。。。




回复

使用道具 举报

 楼主| 发表于 30-3-2009 11:22 PM | 显示全部楼层
那天经过singtel的店,玩他的g1 又玩它的iphone,还是觉得iphone画面美多了。。
回复

使用道具 举报


ADVERTISEMENT

 楼主| 发表于 30-3-2009 11:27 PM | 显示全部楼层

回复 18# 苦瓜汤 的帖子

那要费用多少呢??
没有 developer program 不能把软件灌进去手机吗?
回复

使用道具 举报

发表于 31-3-2009 07:42 PM | 显示全部楼层
原帖由 tensaix2j 于 30-3-2009 11:22 PM 发表
那天经过singtel的店,玩他的g1 又玩它的iphone,还是觉得iphone画面美多了。。


的确是这样,我觉得iPhone在很多细节方面都做的很全面。
不过,objective-c+xcode用起来真的是很痛苦,或许是我还不熟悉关系;对我来说,ecliipse是目前我用过最productive的ide。

原帖由 tensaix2j 于 30-3-2009 11:27 PM 发表
那要费用多少呢??
没有 developer program 不能把软件灌进去手机吗?


费用是99大元,美金 (enterprise是199)
不能,所有的code在灌到手机之前都必须signed,signup了developer program之后你会得到一个certificate,有了这个cert才能灌。
回复

使用道具 举报

发表于 5-4-2009 06:58 PM | 显示全部楼层
原帖由 tensaix2j 于 16-3-2009 10:47 PM 发表
终于开贴了。
因为本人一直在摸索中,所以迟迟未能开贴。。。。而且我的周末非常有限。。。

这里也有人制作 android 游戏吗? 欢迎分享心得.
看来,我也不用帖什么 link 去哪里下载 SDK 了,相信大家都知道,  ...


没有想过你这个鸟人这么厉害。
佩服佩服  
回复

使用道具 举报

发表于 5-4-2009 07:00 PM | 显示全部楼层
原帖由 苦瓜汤 于 30-3-2009 09:30 PM 发表
Game对我来说太难弄了 ,所以只弄了一个Digg阅读软件,迟些可能要出血注册iphone developer program了,不然的话也只能在Emulator上测试,极为不踏实。。。

贴几个screenshot,献丑下。。。
http://img208.ima ...


这个告诉你,不要用iphone和windows mobile。
应该用adriod  
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

 

ADVERTISEMENT



ADVERTISEMENT



ADVERTISEMENT

ADVERTISEMENT


版权所有 © 1996-2026 Cari Internet Sdn Bhd (483575-W)|IPSERVERONE 提供云主机|广告刊登|关于我们|私隐权|免控|投诉|联络|脸书|佳礼资讯网

GMT+8, 6-5-2026 01:52 PM , Processed in 0.047993 second(s), 7 queries , Gzip On, Redis On.

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表