摘要: 之前有一个项目用到,今天看到有人问,突然得这个问题还是很简单,其实项目中使用是比较简单的就是做一个编辑软件,鼠标可以选中直线。当时的做法是:在鼠标点下的位置产生一个小矩形,然后使用射线与矩形相交的方式完成的(项目中有这个代码,就没有去想),现在想来,还有一个更加简单的方式,看下图:当点在直线上的时候,我们得出一个结论 AP的距离 + PB的距离 == AB之间的距离。当然你也可以使用数学的方式,个人觉得这个方式更加能让人理解,现在本人还没有实际的使用这个理论在项目上,还处于理论阶段。不知使用上是否可以适应项目需求。 阅读全文
posted @ 2013-07-28 14:44 zlt 阅读(1822) 评论(8) 推荐(2) 编辑
摘要: 之前介绍了vertex shader的基本原理,现在我们来做一个简单的实践,在游戏中广告版(布告版)随处可见,而且效率很高,现在我们就使用shader来实现这一过程,首先我们要知道布告版的原理实际上就是一直对着摄像机,与摄像机的方向上是垂直的。如下图所示:不管摄像机如何去动,那么广告版也跟随一起动(即旋转),那么在摄像机动的时候,就要重新计算布告版的位置,为了做到这一点,我么要对摄像机的原理有所了解,看摄像机的几个重要的参数,观看的方向:dir向上的方向:up向右的方向:right及组成如下的坐标系(就是摄像机的局部坐标系了)黑色的表示的是世界坐标系,蓝色的是摄像机的坐标系。为了让布告版与摄像 阅读全文
posted @ 2013-07-28 08:47 zlt 阅读(1764) 评论(1) 推荐(2) 编辑