【算法研究】
文章平均质量分 96
YhPythonJSCPP
在下看似会编游戏,实者爱玩游戏,欢迎大家与在下交流
展开
-
2D游戏中的碰撞检测:圆形与矩形碰撞检测(Javascript&C++版)
这几天放寒假了,时间也多了起来,当然又有时间搞搞程序了。哈哈~昨天在开发我的塔防游戏时突然发现人物实际攻击范围比规定的范围小,按理说应该是一样大的,但偏偏不准,我被这个问题搞得糊里糊涂的。最后询问了一个程序高手——我哥哥。他虽然是搞C++的,但听了我代码解释中有检测圆形碰撞时,他立刻就发现了问题,他告诉我,敌人可以看作是方块,而攻击范围是圆的,如果把敌人弄成圆形进行碰撞检测那必然不准,应该检测原创 2014-01-13 16:26:35 · 40365 阅读 · 51 评论 -
运用椭圆画法,45行代码画出任意正多边形
最近做Box2dWeb开发时,想写个创建正多边形的功能,可是由于学识尚浅,我在草稿纸上画了,想了一个上午也没有研究出什么好方法。后来翻抽屉的时候,找出了以前哥哥画的一张用同心圆画椭圆的示意图。看到这幅画,我不禁在想椭圆不就是一个N边形吗?圆不就是一个正N边形吗?如果把两个同心圆的半径设定为相等,画出来的椭圆不就是一个圆吗?因此,我立刻开始实验。原本我以为比较难,会用到圆的解析式之类的,没想到就45行代码就搞定了,主要用到的数学知识就是sin和cos。原创 2014-10-26 17:49:40 · 7999 阅读 · 0 评论 -
『HTML5实现人工智能』小游戏《井字棋》发布,据说IQ上200才能赢【算法&代码讲解+资源打包下载】
一,什么是TicTacToe(井字棋)本游戏为在下用lufylegend开发的第二款小游戏。此游戏是大家想必大家小时候都玩过,因为玩它很简单,只需要一张草稿纸和一只笔就能开始游戏,所以广受儿童欢迎。可能我说了半天,对它名字不熟悉的朋友也不懂我在说神马。那没关系,我就引用Wiki(维基百科)的介绍作为大家对它名字的认识,顺便也勾起我们儿时的回忆:井字棋,大陆、台湾又称为井字游戏、圈圈叉叉;另原创 2013-03-14 22:07:55 · 37921 阅读 · 38 评论 -
HTML5游戏开发-扫雷及其算法研究
吕蒙曰:士隔三月【1】,当刮目相看。所以,在下在这三月中发奋图强,花了约莫8节信息课的时间研究扫雷。呜呼,由于在下才能尚且不足,所以也就只能勉强打过中级难度的吧。不过,一边玩的同时,我还一边对扫雷这个游戏的制做方法构思了一下。所以说,本文中的算法完全是凭借自己对扫雷游戏规则的总结而自行研发出来的,倘若和MS的扫雷玩法有些出入,还望各位看官见谅原创 2015-05-29 22:59:52 · 17242 阅读 · 10 评论 -
算法研究:利用Python解决数学计数原理问题
最近数学修行到“计数原理”部分,前几天做作业时遇到这样一道数学题: 用四种不同颜色给三棱柱六个顶点涂色,要求每个点涂一种颜色,且每条棱的两个端点涂不同颜色,则不同的涂色方法有多少种?当我看完题目后,顿时不知所措。于是我拿起草稿纸在一旁漫无目的地演算了一下,企图能找到解决方法。结果一无所获。今天终于等到放假了,于是打算通过程序算法解决这个问题。经过2个多小时的研究,终于完成了代码,并求得了答案。原创 2016-08-03 22:10:39 · 2957 阅读 · 0 评论 -
用C++编写简易寻路算法
大概在半年前,看见一到信息竞赛题:在任意方格阵中设置障碍物,确定起始点后,求这两点之间路径。当时觉得蛮有意思的,但是没有时间去做,今天花了两个小时来实现它。据说有一个更高级的寻路算法叫做a*, 那我就把我的算法叫做W*。这个算法主要用于解迷宫和实现战棋游戏(SLG)的寻路。原创 2013-07-02 19:24:34 · 15718 阅读 · 18 评论 -
碰撞检测之分离轴定理算法讲解
本文翻译自@sevenson的文章Separating Axis Theorem (SAT) Explanation 。原文作者用的是ActionScript 3来编写算法,不过文中主要讲述的还是算法原理,我想一旦算法原理被我们掌握了,选择什么编程语言来实现算法都是次要的事情了。 本人并非英文专业,所以文中翻译得有不妥或疏漏之处,欢迎各位指正,谢谢!正文如下:分离轴定理(英文简称SAT)是一项用于翻译 2017-02-05 00:24:20 · 26037 阅读 · 8 评论