| 游戏交互设计 |
|
| 作者:不详 文章来源:不详 点击数: 更新时间:2005-8-21 |
交互设计,实际上就是您想让游戏者怎么去操纵游戏的发展。说简单了交互设计就是游戏者怎样去控制游戏角色的行动,在例程中对键盘的设置——用小建盘上的“456237”控制狐狸的行为就是一种简单的交互设计。说复杂了呢!就是您提供了一种什么样的方式让游戏者进入游戏之中成为游戏中的一员——他就是游戏中英勇无敌、侠肝义胆的剑客,他就是游戏中足智多谋、威震天下的将军……这就是好游戏的一个重要的要素——好的交互性。 交互性就是设计者创造的一个诱使人去玩的游戏所拥有的提供故事线索、情绪感染、真实的声音和其他创造性的媒介所给予的特性。交互设计的目的就是让游戏者进入“幻觉状态”,幻觉状态是游戏界的一个术语,它的意思是指游戏者的意识融入到游戏世界中,这样,他或她就不是在玩游戏,而是在体验另一个世界。 怎样作到这一点呢?作为编程人员应考虑的是: 第一步考虑输入设备问题,设备即是游戏者控制游戏的手段,也就是输入设备的选择和设置的问题。在这一步中应该考虑是选择键盘、鼠标、游戏杆还是几种结合的方式,或是其他类型的输入设备。然后是设置各种操作所代表的含义(就象例程中 小键盘的“4”代表左行,“5”代表停止等等,或是鼠标单击、双击某个区域及拖动时代表的含义)这些设置主要是考虑一个操作的方便性的问题。 typedef enum enum_ACTION { NONE, STILL, WALK, RUN, JUMP, THROW, CROUCH, STOP, STUNNED, JUMPTHROW, CROUCHWALK, BLURR, STRIKE, MISS, CHEW, } ACTION; WinMainProc中: case WM_KEYDOWN: switch( wParam ) { case VK_NUMPAD5: lastInput=KEY_STOP; break; case VK_DOWN: case VK_NUMPAD2: lastInput=KEY_DOWN; break; case VK_LEFT: case VK_NUMPAD4: lastInput=KEY_LEFT; break; case VK_RIGHT: case VK_NUMPAD6: lastInput=KEY_RIGHT; break; case VK_UP: case VK_NUMPAD8: lastInput=KEY_UP; break; case VK_HOME: case VK_NUMPAD7: lastInput=KEY_JUMP; break; case VK_NUMPAD3: lastInput=KEY_THROW; break; case VK_F5: bShowFrameCount = !bShowFrameCount; if( bShowFrameCount ) { dwFrameCount = 0; dwFrameTime = timeGetTime(); } break; 第二步考虑信息返回的问题,这里主要是一个界面的设计的问题。这个问题我们在第一章第六节游戏的界面设计中已经讨论过了,这里就不详述了。 |
| 外挂文章录入:admin 责任编辑:admin |
|
上一篇外挂文章: 游戏内存管理 下一篇外挂文章: 游戏图形底层设计 |
| 【字体:小 大】【发表评论】【加入收藏】【告诉好友】【打印此文】【关闭窗口】 |