游戏开发论坛

 找回密码
 立即注册
搜索
查看: 2672|回复: 8

请教:八方向按键的设计

[复制链接]

4

主题

23

帖子

23

积分

注册会员

Rank: 2

积分
23
发表于 2007-8-3 01:39:00 | 显示全部楼层 |阅读模式
如果控制物体走上下左右四个方向,我可以直接用虚拟键码VK_**。如果是八个方向呢?怎么设计?请求DX提供思路。谢谢

2

主题

429

帖子

435

积分

中级会员

Rank: 3Rank: 3

积分
435
发表于 2007-8-3 12:12:00 | 显示全部楼层

Re:请教:八方向按键的设计

斜线方向?

判断是否有两个方向键同时按?

4

主题

23

帖子

23

积分

注册会员

Rank: 2

积分
23
 楼主| 发表于 2007-8-3 12:25:00 | 显示全部楼层

Re:请教:八方向按键的设计

恩,就是斜线上的四个方向。
也可以说是两个按键同时按时候的判断。
下面是我目前的代码:
switch(wParam)
{
case VK_ESCAPE:
   exit(0);
   break;
case VK_UP:
   plane_state=1;
   break;
case VK_RIGHT:
   plane_state=2;
   break;
case VK_DOWN:
   plane_state=3;
   break;
case VK_LEFT:
   plane_state=4;
   break;
}
       

7

主题

51

帖子

59

积分

注册会员

Rank: 2

积分
59
QQ
发表于 2007-8-3 15:47:00 | 显示全部楼层

Re:请教:八方向按键的设计

用消息的话,我也没思路……大大指教下吧。
LZ不介意的话,可以用其他方法,很简单的。

27

主题

418

帖子

455

积分

中级会员

Rank: 3Rank: 3

积分
455
QQ
发表于 2007-8-3 20:49:00 | 显示全部楼层

Re:请教:八方向按键的设计

使用DirectInput,简单的很

4

主题

23

帖子

23

积分

注册会员

Rank: 2

积分
23
 楼主| 发表于 2007-8-3 22:29:00 | 显示全部楼层

Re:请教:八方向按键的设计

我刚接触不久,没什么经验,知识有限.DirectInput我查查.
一样谢谢楼上各位.如果谁有用消息实现的思路或者方法介绍一下.

另外我控制对象移动的方法是在按键按下时候修改状态,然后在时间到后所有对象按状态重新绘图.这种方法可以吗?
我用消息做按键,好像按住按键后物体移动是动下,再停顿,然后才直线运动,为什么会这样?是因为我用了消息处理吗?

180

主题

3511

帖子

3520

积分

论坛元老

Rank: 8Rank: 8

积分
3520
发表于 2007-8-4 00:25:00 | 显示全部楼层

Re: Re:请教:八方向按键的设计

PX: Re:请教:八方向按键的设计
switch(wParam)
{
case VK_ESCAPE:
   exit(0);
   break;
case VK_UP:
   plane_state=1;
   break;
case VK_RIGHT:
   plane_state=2;
   break;
case VK_DOWN:
   plane_state=3;
   break;
case VK_LEFT:
   plane_state=4;
   break;
}

这样的话,同时按“上”和“右”,程序会判断为“上”,而不是“右上”。

我喜欢这样:
plane_state=0;//方向代码初始化
if(key[UP])plane_state += 1;//1代表上
if(key[RIGHT])plane_state += 2;//2代表右
if(key[DOWN])plane_state += 4;//4代表下
if(key[LEFT])plane_state += 8;//8代表左

如果按了“上”和“右”,plane_state就等于 3

4

主题

23

帖子

23

积分

注册会员

Rank: 2

积分
23
 楼主| 发表于 2007-8-4 02:26:00 | 显示全部楼层

Re:请教:八方向按键的设计

谢谢!
key[]数组是储存键盘状态的吧?
不过也提供了个思路.
再次感谢.

18

主题

493

帖子

494

积分

中级会员

Rank: 3Rank: 3

积分
494
发表于 2007-8-4 11:24:00 | 显示全部楼层

Re:请教:八方向按键的设计

学习````
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

作品发布|文章投稿|广告合作|关于本站|游戏开发论坛 ( 闽ICP备17032699号-3 )

GMT+8, 2026-1-25 14:26

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

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