大家对造轮子怎么看待或更好建议啊(周末人多)

也用过几个引擎了,
最早是用java的libgdx做了第一个游戏。
然后工作后一直cocos2dx。
私下用unity的2dtookit做2d游戏,然后是creator。
现在想尝试 github比较火的开源引擎godot。

但是我发现很多大公司对客户端开发人员都比较在意两个方面,觉得这一块儿是硬功夫。

  • 图形渲染
  • 编辑器开发

我就通过子龙山人推荐的博客学习了openGL shader相关的知识。现在有必要自己造一个轮子吗?
我现在觉得造一个2d的简易渲染引擎不是很困难,图像读取,渲染文字,声音播放这些都有开源的库。
在造轮子过程还可以练习一下编辑器开发。以后还可以深入3d。

如果不建议的话应该去加强哪方面的学习呢?
如果建议的话应该着手哪些方面呢?

ps:已经毕业2年了,在小公司。想跳出去看更宽广的世界。

@zilong @minggo

如果只是为了提高自己的技术能力,进入大公司的话,我的建议是两种途径:

造轮子途径:

  1. 设定一个目标游戏,就是你打算自己写出来一个那样子的游戏。项目规模一定别太大,比如6个月业余时间能搞定的。美术资源可以直接扒,仅用在学习用途不发布的话,是合法的。
  2. 自己写个简单的引擎,用在上面你自己开发的那个小游戏里面。

不造轮子途径:

  1. 把cocos或unity某款引擎研究透,甚至可以加入开源仓库提交pull request,让自己名字出现在官方github的开发者列表里面
  2. 坚持写技术博客,类似于子龙山人
  3. 建立Q群,在开发者中建立的技术声望

这两种方法都可行。我年轻时候是路径一,子龙山人是路径2。

3赞

我是看着子龙山人的博客长大的!

我对于造轮子的看法是:

  1. 如果Github 上面没有类似的轮子,我就自己造

  2. 如果 Github 上面有类似的轮子,我就加入进去帮忙造更好用的轮子。

”造更好用轮子“,指的不仅仅是给开源项目提交 patch,还包括提交 bug/issue,完善文档(非常重要),提交和完善测试代码,改进已有功能等。游戏引擎是非常复杂的,一个人根本不可能精通所有的领域,而且也没必要浪费时间再造一些很初级的轮子,虽然那样也许成就感很高,但是往往这些代码根本无法在产品中使用。

所以,我们读的经典书中经常说”不要重复造轮子“,指的就是这个意思。

非常感谢王哲大大的耐心回复。
想进大公司就是想参与重度游戏的制作,做小游戏不大有热情了。
我已经买了知乎推荐的<3d游戏编程大师技巧>,希望深入以后可以提交高级点的pull request.

谢谢回复,从你博客学到很多学习方法。

造轮子,成就感会很高。因为每次逛知乎,备受打击。