声明:本教程版权归Lizcst Software Lab所有,欢迎转载,但是转载必须保留本段声明文字,并注明文章来源:http://blog.csdn.net/kflizcst
谢谢合作!
这篇教程开始,我们将学习如何通过幻世引擎接收用户的操作并作出一定的反馈。处理操作输入可以说是应用程序必须拥有的功能,尤其是游戏程序,如果一个游戏程序用户不能操作,不能与之交互(也就是不能动手玩啦),那么将会是非常乏味的,用户很快就会对这样的游戏失去兴趣。
因此,处理操作输入并与之交互是非常重要的部分。幻世引擎在这一方面提供比较强大的支持,基于插件式结构,幻世支持多种不同的检测与识别操作的方法。今天我们先来学习第一部分的内容:关于鼠标的操作。
鼠标的操作主要分为两个部分:第一是关于鼠标指针位置的获取与设置;第二部分是关于鼠标按键操作的检测。我们先讲解第一部分:
[获取鼠标指针的坐标]
今天的教程我们将会继续基于教程2所搭建的空幻世程序。
在使用幻世引擎的输入功能时,我们需要获得另一个重要的接口,那就是输入器接口,这个接口可以说是出去渲染器接口外最重要的接口了,下面我们就开始编写代码来获取这个接口。
1、首先我们打开程序的代码,然后在代码文件中定义一个输入器接口的变量。
2、接下来,我们通过幻世引擎的主接口获取输入器的接口并且将它赋给我们定义好的变量。
这里我们依然做了一下检测,以便确定输入器是不是正常的获取成功了。
好了!获取完成,我们现在便可以使用这个输入器来完成我们需要的工作啦。
今天我们的教程准备编写一个演示程序,获取用户鼠标在绘图窗口中的位置坐标,然后显示到绘图窗口中,由于要显示出坐标信息,所以正好也可以复习下上一教程的内容,现在我们开始啦。
首先,我们先初始化字体做好待会儿显示内容的准备。
接着,我们开始编写获取鼠标指针位置的代码,通过使用输入器提供的函数GetMousePos即可实时的获得当前鼠标指针的坐标。该函数有两个参数,分别是位置坐标的X值和Y值,这里需要注意的是,这两个参数不是用来输入数据的,而是用来接收数据的,因此,需要开发者提供两个变量来接收函数返回的值。我们现在定义两个变量,用于获得数据。
然后把它们提交给函数用于接收。
到这一步,我们其实已经获得了鼠标指针的坐标,现在我们把它们显示到屏幕上,这样就可以直观的看到了。
好了,代码编写完成了,我们编译下看看效果。
可以正常的显示出鼠标指针当前位置坐标啦。
[完成]
有了这个坐标信息,我们就可以非常容易的指导用户的鼠标现在指向了那里,做些动画效果回馈给鼠标所在位置就能够很好的增强画面,呵呵,是不是很简单?
[示例代码下载]