做过飞机游戏的进来啊!

weekeed 2005-05-30 05:23:02
问一个关于npc发射子弹的问题,
Sun公司网站上有个MuTank的例子可以实现npc的转动,
可是在转动过程中怎样控制 从转动后的角度发射子弹??
例如在飞机转动了45度后从这个角度发射子弹??
现在的子弹只能在4个方向90,180,270,360度发射子弹!
欢迎大家讨论!!

...全文
568 点赞 收藏 8
写回复
8 条回复
QSmile 2005年06月06日
《J2ME游戏开发(第一版)》
电子书在哪里下?
回复 点赞
prok 2005年06月01日
查表放大数量级
回复 点赞
勤奋happyfire 2005年05月31日
子弹方向问题用速率+角度搞定!

vx = v * cosA
vy = -v * sinA

vy计算公式加了个负号,是因为Graphics的坐标系和笛卡儿坐标系的y轴方向是相反的
回复 点赞
贝壳鱼 2005年05月31日
方法多多,自由发挥,呵呵
回复 点赞
weekeed 2005年05月31日
这本电子书原来看过了,精灵转动是已经实现了。
但子弹出膛的位置比较难以确定,
还是谢谢你的帮助 ,已经加了你的Msn,希望能交个朋友了!!
这个问题我再想想!
回复 点赞
foxyou 2005年05月31日
用的是斜率的公式计算子弹轨迹
回复 点赞
xueyong1203 2005年05月30日
这篇文章转自www.j2me.com.cn
作者:阿新

经常看到大家在搞j2me开发时,问到图形旋转的问题,虽然midp2.0提供了sprite类,可以进行图像的旋转,但也只能是90度的倍数,对于任意角度的旋转就成了问题,本人在写一个游戏中,就碰到了要对图形进行30度倍数旋转的问题,为此,我特请图像专家兼本站技术管理员阿新写了下面这个图像旋转的算法,希望对大家有所帮助!

// 这是一个把图像绕中心点旋转一个角度的程序代码
// OriginImage传入原始图像,函数的返回值是旋转后的图像
// 这段代码只能旋转30度的整数倍角度,如果要旋转更精细
// 改一下tabCos,tabSin就行了,这两个数组保存的是cos和sin乘于4096的值
int[] tabCos = {4096,3547,2048,0,-2048,-3547,-4096,-3547,-2048,0,2048,3547};
int[] tabSin = {0,2048,3547,4096,3547,2048,0,-2048,-3547,-4096,-3547,-2048};
private Image TransferImage(Image OriginImage, int angle) {
int w = OriginImage.getWidth();
int h = OriginImage.getHeight();
int ARGBData[] = new int[w * h];
int TranARGBData[] = new int[w * h];
OriginImage.getRGB(ARGBData, 0, w, 0, 0, w, h);
int centerX = (w + 1)/2;
int centerY = (h + 1)/2;
int i = angle / 30;
for(int y1 = 0; y1 < h; y1++) {
for(int x1 = 0; x1 < w; x1++) {
int x2 = (((x1 - centerX) * tabCos[i]) >> 12) - (((y1 - centerY) * tabSin[i]) >> 12) + centerX;
int y2 = (((x1 - centerX) * tabSin[i]) >> 12) + (((y1 - centerY) * tabCos[i]) >> 12) + centerY;
if ((x2 >= 0)&&(x2 < w)&&(y2 >= 0)&&(y2 < h)) {
TranARGBData[y2 * w + x2] = ARGBData[y1 * w + x1];
}
}
}
return Image.createRGBImage(TranARGBData, w, h, true);
}

回复 点赞
xueyong1203 2005年05月30日
有一本电子书叫做《J2ME游戏开发(第一版)》
中文的
上面的例子就是一个飞机射击游戏
搂主好好看看吧
还有树上的代码也一起下载下来好了
偶机子上有
如果搜索不到给我邮件我传给你好了
MSN:SOFTOWEN@HOTMAIL.COM

另外,关于精灵的任意旋转,有别人实现了,代码让我找找随后奉上
回复 点赞
发动态
发帖子
J2ME
创建于2007-09-28

1.1w+

社区成员

2.6w+

社区内容

Java J2ME
社区公告
暂无公告