加载中…
  
博文
标签:

unity

鼠标选择

分类: Unity

        好久没更新博客了,写一篇技术贴。

        在即时战略游戏中,有一个鼠标框选建筑和角色的动作,以及玩家可以通过单选选择指定物体,在Unity中有特殊的实现方式。

        首先说下Unity鼠标事件,主要用到这么几个:

          mousePos Input.mousePosition;​ //获取鼠标当前位置坐标,左下角为(0,0),右上角为屏幕宽高。 

        //鼠标左键按下       

 if(Input.GetMouseButtonDown(0))        

           

startMouseButtonPos mous

标签:

unity

分类: Unity

        最近在帮同事做一个动态模拟电步机的运动动画,要求模拟电动步机在一定周期内的运动。于是就在Unity模拟了几个小球的曲线运动。不过最终可能要模拟的是曲面的运动,不过本人能力有限,暂时还无法模拟出难度更大的运动,之后如果学习了图形学的知识希望能够模拟出其运动状态。

        首先说下基本的原理,其实非常简单,就是结合中学数学的三角函数Sin,Cos的运动状态。Unity3D中直接为我们方便的提供了三角函数计算API:Mathf.Sin,我们只需调用即可。核心代码如下:

public float speed = 5.0f;                    //运动速度

public int amplitude = 1;                     //振幅

public int yoffset = 25;                      //y轴偏移量

 

标签:

realsense

实感技术

分类: RealSense

       前几篇文章记录了RealSense深度数据,彩色视频图像以及IR图像的显示,深度数据是RealSense的基础,除了可以直接使用RealSense进行深度图像开发以外,还可以基于RealSense进行图像处理,特征识别等工作。不过RealSense还为我们提供了手势识别的功能,我们可以基于此开发不同的功能的应用。

​      进行手势识别有两种方式,其一是自己实现手势识别算法,这就需要开发人员进行大量的工作,对深度图像进行处理,提取出有效特征。所幸RealSense为我们提供了手势识别API,方便我们进行手势开发,不用关注大量繁琐的底层算法。不过如果开发者感兴趣,同样可以基于深度图像开发手势识别算法。

      ​打开RealSense文档,可以发现手势识别的范围只有20-55cm。我在打开深度数据后发现,如果距离大于60cm后深度信息图像就会有一定的噪点,由于精度问题在远距离处理深度图像无法更好的提取手势,所以有效范围为55cm之内。

     ​ RealSense提供的手势识别相关模块有两种非常重要:骨骼追踪(skeleton tracking)和手势识别(gesture)。

    &nbs

标签:

realsense

实感技术

深度数据

分类: RealSense

       接上文,已经部署好了RealSense的开发环境,就可以使用RealSense进行开发了。由于大量的技术:深度数据,手势识别,面部追踪,三维重建等图像处理都涉及到深度图像的处理,所以先学习RealSense深度图形的捕捉和显示。

      ​方便起见,由于涉及到图像的显示工作,我直接使用Unity显示深度图像,这样简化了绘制工作。以后有机会会使用WPF,WinForm或OpenGL进行绘制显示。

      ​首先在Unity中RealSenseUnity项目下新建一个场景,命名为depthImage,同时创建一个脚本名为depthImageShow.cs。

  

新浪BLOG意见反馈留言板 欢迎批评指正

新浪简介 | About Sina | 广告服务 | 联系我们 | 招聘信息 | 网站律师 | SINA English | 产品答疑

新浪公司 版权所有