随便写点

晃眼一看,上一次的博客已经是4个月之前发的了。

随便写点什么吧。

今天下午老师让我给大二的学生讲讲开发,所以跟公司请了假。昨天晚上回来,有些头痛,又要做今天下午讲课的PPT,就没有碰毕设的代码了。其实甩开代码,静下来思考思考,真是一件好事,可是这样的机会太少了。

实习

就先说说入职两个月的感受吧,这家公司真是个不错的地方。

首先是职位,3D开发工程师,这才是我真正想做的,在这里每天研究图像渲染,光影效果是正事,而不像之前每天只是机械的implement class -> test的循环。

其次,这里真的很给机会,融入之后的第二周,我便证明了自己,解决了一直以来没有解决的阴影细节不够表现不出自阴影的问题。从而确立了在组内的位置。

最后,这里能完全的接触到一直心仪的引擎,Perfect!

毕设

然后,就是接下来的GameKnifeEngine开发

  • 优化了Post-processer后处理器。
    • 所有的后处理特效都可以降低分辨率处理,以提高效率。例如halfSSAO,quadSSAO,halfBLUR等等
    • 融合ShadowMap,SSAO,DeferredDecal等后处理作为内建后处理,手工控制提高效率。
    • 后处理改为指令式,之前填数字太难受了。
  • 实现了Deferred Decal算法,完全不需要多余几何批次的后处理贴花,需要设置一些常量寄存器,在后处理阶段就可以将贴图投影到场景中
  • 扩展了一个gkSun的概念,设置光源角度改变为设置时间,通过控制时间的流逝可以模拟出昼夜变化。同时优化shadowGen算法,绑定在相机或角色身上,gkSun跟随角色移动。
  • 使用vektrix开源库,引入flash GUI系统。简单的搭建出3D GUI系统,实现as3与cpp相互调用函数,使用swf控制ui逻辑。
  • 修复了gkEngine Core内不少bug。

毕业设计快要接近尾声了,游戏逻辑在上个月预答辩的时候也抢着时间做得差不多了,加上图形核心的优化。基本上告一段落。下一步,本来计划这开始对gkEngine进行大刀阔斧的改进,主要是规范化Deferred Shading架构,引入真正完全的延迟渲染。

思考

不过现在想来,应该先作一些总结,得失都需要衡量一下。在开发的过程中,能够在恰当的时机停下来,想一想真正应该做什么,可能才是更重要的。之前,因为这个问题吃的亏真的不少,最近在公司,也比较有体会。大家在需求分析的时候一味的追求快,片面的追求自己的思想。而忘了停下来多思考思考。

其实通过思考,通过看Doc,很多问题其实通过一些巧妙或者简单的办法就可以在短时间内得到完美的解决,而不应该快速的分析完需求之后去花大量时间开发功能,开发模块。至少说,我们应该先尝试通过简单或巧妙的小技巧解决,如若不完美,在开始思考结构化的解决方案。

因此,像今天这样,泡一杯咖啡,听着舒缓的音乐,关掉IDE。停下来平心静气的思考思考,是一个coder最宝贵的时刻了。可惜,我们在沉浸于开发和编码的时候,这对于我们来说太奢侈了。

共勉!

posted @ 2011-04-19 10:51  kNiFe.cpp  阅读(878)  评论(3编辑  收藏  举报