JDI3D 引擎阶段性工作总结

 

   两个阶段的突击努力终于告一段落,回头看来,这两个阶段异常的艰苦,每天十几个小时,一天两顿饭,有时还没吃上。开头状态和情绪调整的不错,后面确实感觉到疲倦和沉闷了,这60天的工作内容,相当于一个公司4个程序员6个月左右的工作量,以正确努力的有效劳动时间计算。
   然而辛苦是必须的,收获积累也是显著和有意义的。坚持在几个方向的同步进行,从工具,图形引擎,人工智能,游戏框架都获得了较好的建设和巩固;这个同时也确定了美术的制作流程,和规则定义,未来的游戏项目,不用再去考虑任何技术和制作问题了,这有多酷。同时在管理控制上使用敏捷的原则,化繁为简,轻量有效记录管理,重开发。对需求管理也做了一定的总结归纳,是一场不错的功坚战。
   当前的JDI3D引擎已经足够强大,几乎包括了目前国内一些比较优秀公司的引擎优点,从测试数据上看,JDI3D具备了完美时空3D引擎的稳定快速和金山剑侠3引擎的绚丽的等技术点。

  这阶段的另一个收获是利用微积分思想,摸索出的自己的实时光能传递算法,不过加入引擎中将会是很久以后的事情了,还是先以项目为主。

整理和改进在如下几个方面进行: 

  1.场景工具,针对一些试用美术的建议,做了易用性的提高。
    1.1 水面制作更加方便快捷,可以锁定高度制作任意形状的水域;
    1.2 山体编辑能够快速构型,增加指定同一高度刷绘;
    1.3 物体和单位的编辑模式确定更灵活可扩充的模式,编辑界面提供更多参数和合理的布置,
        如果再次对属性进行增加,代码的修改可以最少。
    1.4 增加导航图等AI基础的编辑测试模块。
  2.模型特效引擎及工具整合修改,扩充最多
    2.1 模型换装规则及对应使用编辑方式整理确定,包括
        材质编辑,骨骼挂点编辑,外部装备,纹理装备替换,几何及纹理装备替换。
    2.2 增加 纹理动画,颜色动画,以及镜面等高光效果。
    2.3 融入粒子特效,将模型和特效集合于一体,减少一个工具软件的工序,只要一个模型效果编辑软件器,就可以制作任何动画以及粒子特效的效果。
    2.4 可以以3DMAX的制作各种基础效果为模板,可以方便的增加和创建任何特效。工序简单明确而易于学习。
    2.5 刀光等条带系统的编辑输出
    2.6 动作混合,可使用各不相同任意两个动作优雅的组合出新的动作。
    2.7 模型动画 和 特效集合于一体,所有的动态模型,摆设和粒子只需要一种文件格式。
    JDI3D 的新model文件几乎实现的和《魔兽世界》一致。都是一个文件包括多种内容,这使得在游戏编程的时候,不管的人物,生物,NPC等动画的驱动,或者是各种魔法,增减益效果的编程,都只需要使用一种格式管理驱动,为后续的游戏编程提供极大的方便性和简洁性。

  3.无限地形进一步得到整理和加强
    3.1 地形纹理在当前显卡下cache 在某些情况下会产生失效后置显示的问题。
    3.2 一个被长期忽略没有发现的两个外部地形接缝处LOD裂缝问题。这个问题隐藏这么深,以至于那么多地图测试都难于发现。
    3.3 修正一个地形缓存无效命中的错误,这个错误会在某个时刻,让整个大世界突然不显示一块区域。
    3.4 在做游戏部分开发的时候,同时对阴影部分进行了优化,增加了对静态阴影保存和读取功能。动态阴影的可见控制,进一步提升渲染速度。

    3.5 现在引擎能在视野后面透出长长的阴影,即便该物体离开相机视野非常的远;阴影在远处实现淡入淡出,增加图像的平滑感觉。
        这些优化使得在几个大地形组合48万面的奥格瑞玛城的时候,FPS仍能保持在25-60的实用帧率内。同样,以工程和次优应用为前提, 否则可以在进一步的优化和提高,然而当前这种模型已经远远超过国内的绝大多数游戏引擎速度。JDI3D还有很多潜力可以挖掘.....。
    
    3.6 现在的无限大世界非常的稳健,我只用了70%左右的常规优化,快速而稳定,然后以后还可以有不小的提升空间。

同样一定要注意加强自我约束控制,工程的完整实现才是第一目标,何况已经远胜于国内的很多游戏了,实用第一,优化无止境。
    
  4.引擎架构的提炼,整理删除很多临时的测试代码和变量。提炼合并各功能类。进一步对象化工具化。
  5.百人同屏幕测试,3000-4000面,80-100根骨骼,的人物动画在150人同屏的情况下,纯粹软件模型渲染达到20FPS.如果使用SHADER 加速就更理想了。这个问题是很多游戏公司的困扰,也帮助了他们解决,主要问题还是在于各公司的动画实现在数据结构上和数学计算上的选择,不懂得采用正确的方法。
  6.人工智能和导航
    6.1 实现基于图的导航算法
    6.2 实现基于导航网格的算法
    6.3 整理以前FPS引擎的路点算法
    6.4 基于上述3种方法,实现A*,Dijkstra路径收索方法,实现自动寻路
    6.5 实现状态机控制,人物运动等主要游戏逻辑
        A.State Machine
        B.行为管理系统
        C.目标仲裁系统
    不似3D图像引擎部分的开发那样会因为包括各种资源,时间,空间,效率,CPU,GPU 辅助数据库管理等众多既要综合元素整合处理,又对某一个技术点做详尽反复许多次的测试实验,才能提炼达到正确结果,充满风险,艰苦,常常耗费很长的时间才能解决和优化一个特定的问题,这样的问题在3D引擎方法有许许多多。而游戏游戏逻辑及AI 方面的逻辑尽管富有挑战性,也存在难点,然而这部分的编写,足够纯粹,也足够有趣。几乎可以让你保持身心愉快,工作长久而 仍旧头脑清醒。AI是个快乐的有趣的体验过程。现在如果你使用JDI3D ,可以看到Npc 能很聪明的找出一条路径,绕过树木或者建筑等阻挡物,过来攻击你,哇,这机器人够聪明。
    还有许多细节部分的增加完善以及修改,在workplan 和 worklog 有记录,只是时间一长东西一多,实在记不住了,就先记录总结到这里吧。
     时间有点长了,铁人也要休息,给自己大睡几天的机会,看看世界杯。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值