戎码一生(2)

来源:互联网 发布:matlab剔除空数据 编辑:程序博客网 时间:2024/04/27 18:49
 

浑浑噩噩过完了大一,感觉这一年都是在瞎子摸象。
摸过的东西相当多:
手机开发,网络编程,opengl,图像处理,2d游戏,linux源码......
没有一样是能投入实际应用的。
我在努力寻找一个能让我真正进入程序员圈子的切入口。

我选择了3d游戏编程作为切入口。
并不是我立志进军游戏产业,只是觉得做游戏是编程里最综合的领域。
通过游戏编程能给我一条主线索把零散的东西串起来。
而且游戏编程能自娱自乐,受众也多。菜鸟都需要赞美来肯定自己。

当时最熟练的语言是java。
j2se,j2me摸了一年,就是没碰j2ee。
现在回想起来,和c/c++相比,java给我一种无处不在的束缚感。
java党勿喷,原谅一个不懂j2ee的井底蛙吧。

当时上网搜了一下java游戏编程方面的东西。
基本上分两大派:
java党认为java无所不能。
c/c++帮认为java一到3d游戏领域就阳痿了。
那些老鸟老是这样忽悠新人,毫无原则地偏袒自己学的,极力踩那些自己不接触的。
就如溺爱子女的父母。
程序员不是一个理性的群体吗?还是就中国的程序员不是?

只能自己去尝试了,还记得小学课文《小马过河》否?
先是学jogl,然后是jme。
摸索半个学期,最后我得出的结论是java党是个激进团体。
他们想尽办法制造并维护java无所不能,所向披靡的神话。
java党贴出来的那些所谓java在3d领域的代表作,当个demo都显勉强,更别说商用。

是时候转c/c++了。
虽然我反感中国的java党,但我是真的喜欢java这语言。
如果说java是个单纯,坦率,聪慧,优美的女孩,
那c++就是个脾气难以捉摸,深藏不露的怪老头。
当然,java还是个不懂民间疾苦的富家女————超级消耗内存。

挣扎再三,只能暂时放下java,再不果断点,又要一年碌碌无为了。
c++不愧为百年老号,3d引擎多得让我眼花缭乱,选择往往是入门最大的门槛。
但要命的是,引擎的介绍性文章都只罗列该引擎的优点。
就好像那些老鸟给菜鸟推荐什么语言好,听上去什么语言都好。
报喜不报忧是中国人的传统美德。

当时选了irrlicht和ogre。
浏览了一下irrlicht和ogre的源代码,
发现irrlicht的好懂一点,最直接的体现为代码量少。
然后开始策划我的第一个3d游戏:坦克大战。

大二第一学期结束前总算是完成了。
但我一千个不满意,我不是溺爱子女的人^ ^
一句话概括:功能实现了,但代码极端丑陋。
这时深刻地体会到编程中统筹兼顾,大局观的重要地位。
我没有继续完善它,修修补补还不如推倒重来。

有了一定的3d引擎使用经验后,我对ogre蠢蠢欲动。
之前有看过一阵子,但对一个小白来说实在难度比较大。
想到就做是我一向的风格。当然,想到就调研,策划才是一个成熟的男人的做法。
和irrlicht相比,ogre的渲染效果非常棒。

由于没人指点,再加上我的开发环境是有点非主流的mingw,
编译ogre,整合bullet,cegui,mygui花费我大量的时间。
很多人觉得把时间投入这种难度在于“知不知道”的东西上很浪费时间。
但我相信万物都有一个守恒定律,
现在遇到的错误多,以后遇到的就少。
运气也是这样,现在倒霉是为了以后行大运,当然,别把自身水平问题归咎给运气。

原创粉丝点击