视线和光线:如何给游戏添加 2D 可见性和阴影效果

这篇文章是在没有搭建这个Blog之前帮jobbole翻译的,现在只是复制回来自己做个存档,jobbole链接在这。 各位好!今天,我将告诉你如何做这样的事情:(在框中四处移动你的鼠标) 这种效果用于我新开发的开源游戏《Nothing To Hide》。许多其他的 2D 游戏(如Monaco,Gish)也都有。如果按着本教程来实现……也许下个就是你的游戏! ...

August 11, 2015 · 1 min · HuangWei

现代OpenGL教程 02 - 贴图

在本文中,我们将给三角形加一个贴图,这需要在顶点和片段着色器中加入一些新变量,创建和使用贴图对象,并且学习一点贴图单元和贴图坐标的知识。 本文会使用两个新的类到tdogl命名空间中:tdogl:Bitmap和tdogl:Texture。这些类允许我们将jpg,png或bmp图片上传到显存并用于着色器。tdogl:Program类也增加一些相关接口。 ...

August 6, 2015 · 2 min · HuangWei

游戏中的随机概率

这段时间公司开发的游戏上线测试,许多玩家在抽卡时抱怨脸黑,很难抽到所需要的卡牌,而又有一部分玩家反应运气好能连着抽到紫卡,检查了下随机相关逻辑代码,并没有找出问题所在,玩家运气好与坏只是觉得真有可能是概率原因。 测试开服了几天之后,需要开放某个限时抽卡活动,在内部测试时,我们发现玩家反应的问题在限时抽卡中格外明显,尤其是其中最主要的一张稀有卡牌,猜测因为限时抽卡库配置的种类较少,然后就拿该活动来检查了下我们游戏随机机制问题。 ...

July 26, 2015 · 1 min · HuangWei

现代OpenGL教程 01 - 入门指南

译序 早前学OpenGL的时候还是1.x版本,用的都是glVertex,glNormal等固定管线API。后来工作需要接触DirectX9,shader也只是可选项而已,跟固定管线一起混用着。现在工作内容是手机游戏,又转到OpenGL ES,发现OpenGL的世界已经完全不同了,OpenGL ES 2.0版本开始就不再支持固定管线,只支持可编程管线。 ...

May 13, 2015 · 3 min · HuangWei

游戏中的 2D 可见性

这篇文章是在没有搭建这个Blog之前帮jobbole翻译的,现在只是复制回来自己做个存档,jobbole链接在这。 2D的俯视图经常用于从给定点计算可视区域。例如,你可能想把某些东西隐藏在玩家看不见的地方,亦或你想知道点燃火炬后能看见什么地方。 拖动圆点转一圈,看看玩家都能看到些什么: 这个算法也能计算出给定光源所照亮的区域。对每条光线,我们可以构建出被照亮区域的光线图。如果我们给上面的迷宫放上24个灯呢?见光线图。 roguelike(译注:类地下城RPG游戏统称)社区已经收集了好几种算法,尤其是网格类的。消减算法是从可见的一切区域开始,减去不可见区域;添加算法是从不可见区域开始,加上可见区域。我将描述一种可工作于线段的添加算法,不仅仅是固体分块或者网格。 ...

April 28, 2015 · 1 min · HuangWei

高效率生活

时间就是金钱 我们从小被教育到时间就是金钱,但一到生活清闲或者工作很忙的时候,就忘记了时间的存在,等回过神来时,时间已经一溜烟的过去了。 当我每每躺在床上临睡时,就觉得这一天过的十分罪恶,好像啥事都没干,久而久之就有了睡前强迫综合征。想必很多程序员朋友也深有同感吧。 为了减轻心理压力,提高工作效率,优化生活质量,我开始寻找各种工具,包括开发的、生活的等等。 ...

March 7, 2015 · 1 min · HuangWei