GameDesign 板


LINE

这篇就当做是自我介绍之一,顺便也说明一下我自学程式语言的过程,好让想自学的人, 能够参考看看。 在国一的某一天,我哥弄了一套Visual Basic 6.0回来,他说他想学,但是过不了多久, 他在经过几次的失败之後就放弃了,於是被我捡来学,一开始,什麽都不懂,在上网找了 VB研究小站之类的网站来参考,终於写出自己的第一个程式,一个简单的比大小程式,那 种正常运作的感动我到现在还记得,从此就走上了这条不归路。 国中的三年,上课时我都在睡觉,放学回到家就开始写程式,写到一两点才睡觉,在这段 时间,我常常忘记我到底吃饭了没= =",到了国三,开始转战C++,VB相对於C++,比较简 单,因此刚进入C++会有些挫折,但是久了,也就习惯了C++。 在这段期间,我不停的想一些有的没有的小东西来做,其中有小游戏,有小程式,很多东 西,虽然都在做到一半时,想到其它有的没有的东西去做而终止,但是在每一个小题目当 中都会学到一点点东西,就靠着网路买的书还有网路查资料以及问问题。 其中,有一个构想我重写了三次,第一次用VB,第二、三次用C++,因为,每当我停下来 ,过一阵子再回去想完成它,却发现,这样的架构,实在笨到不行,一些做法,也让我自 己觉得我当时为什麽会那麽做,而对於不好的架构而言,就像一条到处是洞的船,这边有 个洞补这里,那边有个洞补那里,这些洞是补不完的,与其不停的补洞,不如重造一条, 而每次重写,虽然是一样的东西,但是时间用得更短,程式码也更精简,架构也更完整, 但是,到了今天,看以前的东西,仍然觉得当初做得太烂,虽然很失望,但是,也有人这 麽说,这样就是有在进步。 根据我的经验,我整理出一开始自学程式语言的几个要点。 一、越早学越好 我的同学们听到程式语言,都一直说多难多难,完全看不懂之类的,这是理所当然的事, 就和英文一样,当你没学过英文,要你去看英文的文章,看不懂是正常的,而我们的英文 在国中开始教,学到今天高三也有六年了,如果说,程式语言从国一开始学,学六年还学 不到什麽东西,那我也不知道该说什麽,因此,越早学越好,学越久,经验越丰富。 二、耐心与热情 耐心与热情是必要的,很多时候,一个程式,里面只有一个符号打错,却会造成莫明奇妙 的错误,这时,请用你的耐心和热情去找到这个错误,而当你找到这个错误并且修正後, 以游戏来看,你的经验值就增加了,这就是升级的动力来源,一点一滴的经验累积。 三、买正确的书 学程式语言书是必要的,而书有分两种,一种是工具书,一种是学习书,工具书第一次到 手先大略的看一遍,有个印相记得哪些东西在哪里,然後就丢在电脑旁边,而当需要资料 参考时,就依照印相去找出工具书来翻阅,至於学习书,是按照进度一步一步前进,而同 样的,在学完之後一样也是放电脑旁边,当有疑问时可以拿出来解惑,当然,如果买到烂 书,可能会有不好的後果,所以买之前,可以上网问一下网友,哪些书是必买,那些不能 买。 四、善用网路资源 自从有了Google之後,很多东西都可以轻松的找到,举个例子,cout在c++里面到底是什 麽,只要在Google打"Cout c++",就有一大堆的资料可以参考,因此,搜寻资料的能力, 要好好陪养,思考应该用什麽关键字去搜寻,这是必须练习的,除了搜寻,发问也是一个 很好的管道,然而,很多人常常都把发问当成顺位第一的解决方法,这是错误的学习方法 ,因为,很多问题,已经被提出来讨论过很多次了,因此,在Google或是讨论版里面都可 以找到答案,比起问已经被讨论多次的问题,搜寻所花的时间只有一点点,而发问却要等 别人回答,因此,请养成一个良好的习惯,先搜寻,真的很难找到答案,再发问,为什麽 会有这种想法= =?原因很简单,就是当我回答一些人的问题时,都是从Google找到资料的 ...,所以我想,即然我能在Google找到资料丢给他,为什麽不让他自己去找呢= =? 五、基本的英文能力 学程式语言,基本的英文能力是必要的,因为很多经典的书都只有英文版,而技术文件也 通常都是英文的,例如MSDN就是用英文写的,如果你连这个函数大概在干麻的都看不懂, 这样在学习上会是很大的障碍。 六、基本的数学能力 除了英文能力,数学对於程式语言也是很重要的,或许,你会觉得,我数学烂到暴一样也 可以写好程式,事实的确是这样没错,但是,就是有那麽可能1%不到的地方,需要一些数 学底子,就拿45度视角的地图引擎来说,如果你不会斜向座标系与直角座标互换,那麽, 你滑鼠目前指的地图座标,就没有办法判断,其它方法是有,但是都没有数学公式直接转 换来得快速,因此,基本的数学能力也是必须的。 七、演算法和资料结构 当程式语言学习到一定程度时,演算法和资料结构是一定要学的,如果演算法和资料结构 不学,在写游戏时,总是会用一些很暴力的笨方法去解决问题,对於注重流畅度的游戏程 式来说,这不是件什麽好事,而且当地图需要最短路径时,也需要演算法才能完成。 除了程式语言一般的学习,当要用程式来写游戏,需要再另外学些东西,然而,如果以分 工的角度来看,可以挑着学 一、视窗程式设计 可以挑一套自己喜欢的视窗程式设计方法去学,目前有很多种选择,MFC、Win32SDK、 BCB....,等等,在设计地图编辑器等等之类的编辑器是一定要学的 二、Winsock 当你的游戏不是一个人玩时,Winsock就派上用场了,当然,DirectX的连线方式也是另一 个选择,不过我个人比较喜欢Winsock。 三、DirectX DirectX几乎是在Windows下写游戏必学,Direct Draw和Direct 3D两个是最重要的,一个 负责2D一个负责3D,然而,现在2D大多都已经由3D模拟,因此,我是认为可以直接学 Direct 3D就好,而要处理到音效、影片,就轮到Direct Sound 和Direct Show上场了。 四、人工智慧 其实我一直觉得人工智慧这个名字取得不好,因为游戏里的"智慧",大多都只是照一定规 则的行为而以,这个部份,也是专门的领域。 五、古典物理 古典物理!!?? 有没有搞错? 是的,没有搞错,目前的游戏很多都有很好的物理模拟,可 以从物理模拟中,让玩家感受的更真实的虚拟世界,如果物理没有一点底子,就算是写好 的引擎可以使用,很多东西没搞懂可能也不知道该怎麽用。 六、已经写好的套件 事实上,很多东西因为太常用,都已经有人写成引擎供人使用,就拿魔兽世界来说,他们 就用到了Lua来当脚本的直译器,重新开发一个直译器的时间就整个省下来了,而且这些 套件大多都经过很多人使用过,并且更新,因此稳定性和效能来讲,常常会比自己写的来 的好(不过呢= =",人总是犯贱,有时不知道为什麽就比较喜欢自己写),因此,上面这些 东西有时不一定要学,可以直接使用别人的套件,底层的东西就可以不用学了。 以上,是我自己小小的一点看法,如果觉得有问题请提出来指正,我有想到更多的话,会 再补上来的。 -- VICTOR工作室 URL : http://www.kinmen.info/vic/ C/C++ Visual Basic 6.0 --



※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 59.116.66.211







like.gif 您可能会有兴趣的文章
icon.png[问题/行为] 猫晚上进房间会不会有憋尿问题
icon.pngRe: [闲聊] 选了错误的女孩成为魔法少女 XDDDDDDDDDD
icon.png[正妹] 瑞典 一张
icon.png[心得] EMS高领长版毛衣.墨小楼MC1002
icon.png[分享] 丹龙隔热纸GE55+33+22
icon.png[问题] 清洗洗衣机
icon.png[寻物] 窗台下的空间
icon.png[闲聊] 双极の女神1 木魔爵
icon.png[售车] 新竹 1997 march 1297cc 白色 四门
icon.png[讨论] 能从照片感受到摄影者心情吗
icon.png[狂贺] 贺贺贺贺 贺!岛村卯月!总选举NO.1
icon.png[难过] 羡慕白皮肤的女生
icon.png阅读文章
icon.png[黑特]
icon.png[问题] SBK S1安装於安全帽位置
icon.png[分享] 旧woo100绝版开箱!!
icon.pngRe: [无言] 关於小包卫生纸
icon.png[开箱] E5-2683V3 RX480Strix 快睿C1 简单测试
icon.png[心得] 苍の海贼龙 地狱 执行者16PT
icon.png[售车] 1999年Virage iO 1.8EXi
icon.png[心得] 挑战33 LV10 狮子座pt solo
icon.png[闲聊] 手把手教你不被桶之新手主购教学
icon.png[分享] Civic Type R 量产版官方照无预警流出
icon.png[售车] Golf 4 2.0 银色 自排
icon.png[出售] Graco提篮汽座(有底座)2000元诚可议
icon.png[问题] 请问补牙材质掉了还能再补吗?(台中半年内
icon.png[问题] 44th 单曲 生写竟然都给重复的啊啊!
icon.png[心得] 华南红卡/icash 核卡
icon.png[问题] 拔牙矫正这样正常吗
icon.png[赠送] 老莫高业 初业 102年版
icon.png[情报] 三大行动支付 本季掀战火
icon.png[宝宝] 博客来Amos水蜡笔5/1特价五折
icon.pngRe: [心得] 新鲜人一些面试分享
icon.png[心得] 苍の海贼龙 地狱 麒麟25PT
icon.pngRe: [闲聊] (君の名は。雷慎入) 君名二创漫画翻译
icon.pngRe: [闲聊] OGN中场影片:失踪人口局 (英文字幕)
icon.png[问题] 台湾大哥大4G讯号差
icon.png[出售] [全国]全新千寻侘草LED灯, 水草

请输入看板名称,例如:Boy-Girl站内搜寻

TOP