使用一个函数 画一种形状,这样一个一个打造函数,最后的成果类似于下图。
不是当时的成品图,在网络上找的类似的。
具体跟这个流程很像,命令行俄罗斯方块_精神与时间-CSDN博客
第四点。就这样,一直沉沦了好久,小学6年内,几乎没有什么像样的进展。大量时间,都在正常学习,玩游戏,抽卡,以及小姐姐的视听光盘度过之中。这些东西简直就是拦路虎。可能就是需要消化掉这些东西才行,或者说basic还是太简单了。能见到的关于basic的书,都太肤浅了。第一次就准备转行了,我跟程序员老师说:“我比别人提前学了6年的电脑编程,为什么,我的水平跟他们差不多?”老师语重心长地说:“小朋友,编程是需要过程的,小学6年级,没怎么让你做项目,是因为学业很重,毕竟一年52周,咱们在一起学习实践也就每年52天。你能学到多少呢?”我非常生气地说:“不行,我比他们提前6年学电脑,我要有一个态度,咱不能让他们随便就超过我啊?”。老师就说:“好吧,那就卷起来吧!!”于是给我一段话,让我把文字上升到图形。
就这张图,理解了一周时间。我问老师,什么叫抽象啊?不太懂。于是就有了下图
又过了一周,我基本搞明白了,从此以后,我不仅仅会画流程图了,还会画群组关系图了。
在这之后,我每每遇到看不懂的内容,就用群组关系图,来表达一些复杂的分支结构。然后不断进行细化,层层分级,最终落实到叶节点。
再比如,当时为了阅读一本厚书,画过类似的图
第五点,突破 ifelse难题。
程序做不大,主要是我对流程控制和数据转发的不理解。于是,我很气,气自己这么不聪明,明明就是9年义务教育出来的人,为什么,他们就行,我就不行呢。后来,走投无路了,我就用编辑器,做了一个ifelse软件
自从做了这个软件,ifelse 和switchcase,就是拖拽实现了,每当有看不懂的逻辑,就让小精灵sprite来演示。每一个方块里,都是一个数据包,这些数据包由lua来安装初始化。就这样,慢慢地我的ifelse逻辑越来越好了,写的代码逻辑bug少了很多。当然了,光是这样,也不能挨个点每个方格看啊,于是,就做出来内存表
这个就好很多了,逻辑变换,一目了然,内存数据也一目了然,随时暂停。观看数据组,反正32g内存,大到,根本用不完。
这个软件就是c++做的,可以看得出来c++操作内存的功力特别雄厚。
第六点:内存变量可视化,破解盲人摸象误区
再后来,连表格都不用了,直接在背景里画数据。这么庞大的数据量,其实就是使用指针关联的。这样的话,哪个npc动了,朝向。坐标,触发事件id,拥有的物品。。等等,都一目了然。就是因为这样,所有参与者的数据,在第一时间内,都了解到了,对整个编程环境的变化就有了直观的感知,所有的算法和数据结构,能用游戏内容来表示,就坚决使用。不仅仅自己看得懂,朋友们也看得懂,还有趣。
然后,配合命令行,找触发的内容
就这样,很快就把游戏的运行流程,和数据流通,以及触发机制,搞明白了。