炮台子弹, 菜鸟求助前辈们~!

gp2880142 2011-03-21 09:19:11

这是子弹发射后运行轨迹,应该怎样写?
这样好像不行:

m_fBullet_x += m_fSpeed * sinf( m_fAng );
m_fBullet_y -= m_fSpeed * cosf( m_fAng );

求前辈指点~!
...全文
148 12 打赏 收藏 转发到动态 举报
写回复
用AI写文章
12 条回复
切换为时间正序
请发表友善的回复…
发表回复
xali 2011-03-21
  • 打赏
  • 举报
回复
如果0度角是指向右边,就是普通的坐标系时,应该是:
m_fBullet_x += m_fSpeed * cosf( m_fAng );
m_fBullet_y -= m_fSpeed * sinf( m_fAng );

如果0度角是指向正上方,应该是:
m_fBullet_x -= m_fSpeed * sinf( m_fAng );
m_fBullet_y -= m_fSpeed * cosf( m_fAng );
delphiwcdj 2011-03-21
  • 打赏
  • 举报
回复
界面下的话用DrawPoint(x,y);或MoveTo, LineTo
参考
delphiwcdj 2011-03-21
  • 打赏
  • 举报
回复
防止出现折现可以把点话密集点儿
delphiwcdj 2011-03-21
  • 打赏
  • 举报
回复

int a = 2,b = 3, c =4;
for(int x=-10;x<10;x++)
{
y=a*a*x+b*x+c;
printf("%d,%d",x,y);
}
gp2880142 2011-03-21
  • 打赏
  • 举报
回复
[Quote=引用 4 楼 yuyan_linger 的回复:]
子弹的轨迹公式 你是自己定的吗
m_fBullet_x += m_fSpeed * sinf( m_fAng );
这个轨迹你是根据什么来的呢
好像不太合理啊
[/Quote]

....所以才发帖求助大家
yuyan_linger 2011-03-21
  • 打赏
  • 举报
回复
子弹的轨迹公式 你是自己定的吗
m_fBullet_x += m_fSpeed * sinf( m_fAng );
这个轨迹你是根据什么来的呢
好像不太合理啊
gp2880142 2011-03-21
  • 打赏
  • 举报
回复
[Quote=引用 2 楼 linuxbirdman 的回复:]
x可以根据速度和时间计算。。。y可以通过x进行计算。。就这样的。。。
[/Quote]

我做的是2D游戏, 相当于竖版飞行射击类的子弹轨迹. 只是要求炮台能够在180°内转动, 并发射相应角度的子弹.
LinuxBirdMan 2011-03-21
  • 打赏
  • 举报
回复
x可以根据速度和时间计算。。。y可以通过x进行计算。。就这样的。。。
LinuxBirdMan 2011-03-21
  • 打赏
  • 举报
回复
抛物线。。。你这计算的什么哦。。。。。。按抛物线公式计算。。。。y=ax^2 + bx +c
pathuang68 2011-03-21
  • 打赏
  • 举报
回复
去看看你发的另外两个帖子吧。有人解答了。
gp2880142 2011-03-21
  • 打赏
  • 举报
回复
[Quote=引用 9 楼 xali 的回复:]
如果0度角是指向右边,就是普通的坐标系时,应该是:
m_fBullet_x += m_fSpeed * cosf( m_fAng );
m_fBullet_y -= m_fSpeed * sinf( m_fAng );

如果0度角是指向正上方,应该是:
m_fBullet_x -= m_fSpeed * sinf( m_fAng );
m_fBullet_y -= m_fSpeed ……
[/Quote]

是控制那个变量?

65,179

社区成员

发帖
与我相关
我的任务
社区描述
C++ 语言相关问题讨论,技术干货分享,前沿动态等
c++ 技术论坛(原bbs)
社区管理员
  • C++ 语言社区
  • encoderlee
  • paschen
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
  1. 请不要发布与C++技术无关的贴子
  2. 请不要发布与技术无关的招聘、广告的帖子
  3. 请尽可能的描述清楚你的问题,如果涉及到代码请尽可能的格式化一下

试试用AI创作助手写篇文章吧