Archive for programming

How to Make a Voice Control Game on iPhone

Some of you might play several game using voice to control the game, say “ahhh” to move the role and shout “pah” to shoot something out…

If you hadn’t played a game like that, you must try my game: Voice Fighter

This article will teach you how to use the iPhone SDK to develop the voice control part of these kinds of game. You can use the code from this article to make your own game. But this article will not show you how to make the graphic part of the game. You can use Cocos2d or other game engine to make the rest of the game.

“Voice Control” in this point is not about the “speech recognition” but like the “voice operated switch”. These games receive the information from microphone and do some simple analysis,We will use AVAudioRecorder to receive the information. You must be aware that doing this work has a lot of ways, you can find more information in iphone SDK documents, as I know use AVAudioRecorder is the simplest way, so let’s start!

Read more

啊啊啪–v1.1 声音处理开源

啊啊啪”已经发布6天了,到目前4月21日 ScoreLoop统计的最高分一共有: 12539个,估计有很多Android初学者对声音处理都比较感兴趣,所以我现在把声音处理部分的代码放上来。

Q:为什么要发布这段代码?

A:因为我的啊啊啪尝试用了proguard保护和优化代码,所以大部分代码都被混淆过,那些以学习为目的反编译apk的同学看起来就有点困难。所以放上下面这段声音处理的全部代码。

Q:为什么不全部放上来?

A:因为游戏其他部分都甚为简单不值一提,所以暂时就不放上来了。

Q:你放上来有什么不可告人的目的吗?

A:有的,根据我从论坛用户收到的反馈来看,下面这些机型在运行啊啊啪的时候有很多问题。 MEIZU M9(部分M9可以正常运行),索尼爱立信 x10(x10 mini pro可以运行),Acer a1,三星i9000(2.2),Atrix 4g,LG GT540,三星 I858…… 这可以看出来Android手机的不同机型差异实在有点大。这直接导致了我在谷歌market 里面发布后,总评不到3星的悲惨情况。放上这段代码喜欢能看到代码的同学引以为戒,并且能够找到好的方法来解决各个机型上面的差异。不然在android上面开发声控游戏是完全没有前途的。如果你有好的解决方案你可以留言或通过邮件告诉我,或者发布后通知我一下,开源是一种程序员很牛X的态度:)
目前我自己尝试过的解决方案是加入敏感度调节,但是收效甚微。我想到的另一种方案是:在游戏第一次开始的时候叫用户发出“啊” 和 “啪”的声音,记录下来,平均处理一下,游戏中就使用处理后的值,这种方法应该很不错,我可能会在之后尝试一下这个方法。

Read more

About the admob ads fill rate

if you get this info from logcat all the time, and have a very low fill rate(less than 30%). 

no fill server replied that no ads are available

It is very likely you set the keywords for your app !!  Remove the keywords setting only if you know what you are doing.

 


如果你从LOGCAT里面得到如下信息,并且你的广告投放率(填充率,fill rate)非常低(一般在30%以下)。

no fill server replied that no ads are available

这很可能是因为你为你的应用设置了关键词(keywords)! 除非你知道你想做什么,要不然绝对不要设置关键词,不然你的投放率30%都不到!

就算你有明确的目标设置关键词,也建议你不要设置,趋势一直在变,热门的关键词也在变,你设置的关键词很有可能会突然变成大冷门。

HTC G1入手

1220元 淘宝上面买了个G1的14天机。卖家第一次发给我的时候帮我刷了个Android 2.1的ROM,那个ROM极品至极,删除了 market, gmail, gtalk 做那个ROM的人怕是跟google 有血海深仇,把谷歌的系统软件都删得差不多。不过也可以理解为国内用户确实对google的服务需求不大,G1的ROM容量也小得可怜。卖家又不帮我刷SPL,只能寄回去叫卖家帮我刷了个1.6的ROM来用,用了半天,感觉很不错,gtalk,market, gmail都健在。

关于AndEngine的一个小Tips

我第一次拿到手机的时候运行我的新游戏,效果很好,我换货的过程中继续完善了游戏的其他部分,今天拿到手机,开始调试我的游戏的时候,发现游戏尽然非常的卡。调了G1 cpu频率无果,安装了一大堆游戏,感觉都不卡。然后开始排除法找代码,找了一会发现是 新建Texture时的 Texture参数的问题:

我有几个很大的.png图片,所以新建了几个Texture来存,其中最大的一个有 1024*512 , 我发现参数为  TextureOptions.BILINEAR_PREMULTIPLYALPHA 就会卡,用TextureOptions.DEFAULT 就不卡了。 看来g1的像素处理能力实在太有限,二次线性插值大一点就顶不住。纹理参数的设置在手机平台上面还是比较敏感的,这可以作为优化AndEngine程序或其他Opengl ES程序的一个方法。

Go语言在windows下面配置的简要流程(gomingw)

Go语言的官网:http://golang.org       Go语言的官网上面就有不少非常好的教程。

推荐云风的Blog的这篇文章:Go语言初步  http://blog.codingnow.com/2010/11/go_prime.html   

这里我记录一下在windows环境下配置Go语言的流程,要在windows 下面安装Go语言看这个网页  Go under MS Windows  http://code.google.com/p/go/wiki/WindowsPort  这个网页里面有一个Youtube 上的视频,教你如何做,我下面的步骤只是简单的记录一下这个过程。

在windows下面用go语言目前还没有google官方的直接支持,不过可以用gomingw这个东西,貌似现在只支持32位系统的,64位的也可以试试。

1.安装gomingw之前应该是需要先安装mingw(这个步骤我不确定是不是必须的,我的电脑之前已经安装了mingw)

2.下载gomingw http://code.google.com/p/gomingw/downloads/list,把go目录解压出来放到任意目录,这里以D盘根目录作为例子:d:\go

3.设着 “环境变量”(我的电脑->高级系统设置->环境变量),在系统变量的标签下,以此新建编辑如下几个键值对:

    (1). 新建  变量名:GOBIN        变量值 :d:\go\bin

    (2). 新建  变量名:GOARCH   变量值:386

    (3). 新建  变量名:GOOS   变量值:windows   ( 注意这对键值,从2010-05-04之后的版本GOOS对应的值是windows,之前GOOS对应的值是mingw)

    (4). 新建  变量名: GOROOT  变量值:d:\go

    (5). 编辑   Path    在Path的变量值的最后加上    %GOBIN%   (记得用  ;(分号) 和前面的串隔开 )

之后就可以用“8g”  “8l” 命令来编译链接hellow world了。