Mophun是我偶然接触到的一款手机游戏平台,慢慢的开始学习她,因为她确实有些说不出的诱惑力。如果您对她有什么偏见,不关我的事啊。接触她是在国外的一个站点做手机平台的调查,远远超过50%的人认为J2ME更有吸引力,Mophun虽然不足10%,但好像比Brew多,非常奇怪。您可以到www.mophun.com 了解更多关于她的知识。
我在www.baidu.com中搜索了半天,介绍Mophun的中文资料和开发文档基本很少。这也是我写这篇文章的背景。我虽然还没有工作,但我有J2ME和Mophun的游戏开发和学习经验。你认为这不够,没关系,只要这篇有一句您认为有用我就满足了。
Mophun可以采用C/C++开发,J2ME嘛,您应该知道了,纯JAVA开发。我可以对比的来讲Mophun和J2ME也可以单独将Mophun和J2ME,既然是Blog我就可以随心所欲了。
如果您懂C/C++的话,您会觉得Mophun最难的是入门阶段。本人是学了3次JAVA才入门的,学Mophun好像也是波波折折了3次吧,都是入门没有老师啊
!纯粹的自己看英文文档.JAVA还有中文书籍,Mophun是我在www.mophun.com 的developer area 完全自学的.如果我能使您一次入门,我非常高兴,但愿我能做到.我们看看开发Mophun的步骤,从头开始:(1)下载SDK:www.mophun.com ->develop zone -> 注册帐号 -> develop area -> downland 链接下载最新的SDK并安装
(2)打开VC++ 6.0或者VS.NET, 他们有些相近的.新建一个Makefile项目.假设您新建了名字为MyGame的项目.接下来,在Makefile application Wizard -MyGame的对话框中的,Build command Line 中添加nmake, 在Output栏中添加:MyGame.mpn, 写好Makefile就可以开始编程了.
以Mophun提供的简单例子2DVedio作为引导,我详细讲一下makefiel的设置:
# *****************************************
#
# NAME: makefile
# PROJECT: MOPHUN Tutorials
# DATE: 2002-04-05
# BY: Johan Andersen
#
# (c) Synergenix AB
#
# *****************************************
# *****************************************
# FLAGS
# *****************************************
CFLAGS = -O2 -Wall -fvstudio
# *****************************************
# OBJEKTFILES
# *****************************************
OBJS = res.o 2DVideo.o
all: 2DVideo.mpn
# *****************************************
# RESOURCE
# *****************************************
res.o: res.txt
morc -v res.txt
# *****************************************
# COMPILER
# *****************************************
.c.o:
pip-gcc -c $(CFLAGS) -o $@ $<
# *****************************************
# LINKER
# *****************************************
2DVideo.mpn: $(OBJS)
pip-gcc -o $@ $(OBJS) -mstack=1024 -mdata=10000 -ldatacert -s
解释:
# -> 注释
CFLAGS = -O2 -Wall -fvstudio 应该是编译器的参数可以不理会
我们关注的东西:
# *****************************************
# OBJEKTFILES
# *****************************************
OBJS = res.o 2DVideo.o
all: 2DVideo.mpn
# *****************************************
res.o 和 2DVideo.o都是编译过的中间代码,在这里2DVideo可以改成您的文件名比如MyGame.o 她是您MyGame.c源程序生成的中间代码.在这里res.o 和2DVideo.o被链接器链接成2DVideo.mpn的二进制文件.可以在模拟器上运行,如果您在VC中共写了如下一些文件如:MyGame.c Ball.c Desk.c可以把上面的Makefiel改为:
# *****************************************
# OBJEKTFILES
# *****************************************
OBJS = res.o MyGame.o Ball.o Desk.o
all: MyGame.mpn
# *****************************************
# *****************************************
# RESOURCE
# *****************************************
res.o: res.txt
morc -v res.txt
# *****************************************
这是资源的管理, res.txt详细记录了您的图片等资源,SDK根据res.txt生成res.h,然后根据res.txt和res.h将这些资源大包到二进制文件里,可以被程序应用.记住,res.txt对游戏的开发很重要.
# *****************************************
# COMPILER
# *****************************************
.c.o:
pip-gcc -c $(CFLAGS) -o $@ $<
# *****************************************
# LINKER
# *****************************************
2DVideo.mpn: $(OBJS)
pip-gcc -o $@ $(OBJS) -mstack=1024 -mdata=10000 -ldatacert -s
编译器设置:您可以把pip-gcc 改为pip-g++, 就可以用编译C++文件,否则只能编译C文件.
最简单的入门方法,用VC打开2DVideo.dsp,然后仔细分析c 和makefile ,我会在以后给出资源管理和游戏设计的详细步骤。
好了,今天就写这么多,
有机会我多写些Mophun和J2ME游戏的开发的细节,并深入Mophun的开发包括一个小游戏CASE.