绝命时刻吧 关注:21,123贴子:401,101

分享一下移植可变状态单位的经验

只看楼主收藏回复

下载了赛特的反恐3D,但是我玩不起来,一碰到粒子效果就黑屏,据赛大说是显卡自动降频的问题,一想还真是,GTX260+就是这样的。于是就玩起了老本行,移植单位,那个雪地涂装的攻城猛犸MKI还是挺有爱的,可转换状态也很吸引洒家来挑战一下移植功底。
有经验的吧友都知道,基本移植单位其实很简单,1是模型,2是武器,装甲,运动,3是功能模块。前两个都很简单,很多都可以借用现成的东西,至于死亡方式及死体OCL,不做或者借用都行,洒家向来不管死体OCL,一个单位挂就挂了,管他残骸长什么样呢。
功能模块是最有意思的部分,不然一个单位就很单调。之前一直中试过武器升级和外观升级,这种单向升级其实相对还是简单的。虽然那时我也搞了很长时间。而实现武器的两种状态互相切换就麻烦的多了。不然大家可以用心数一下,不管是原版还是各个mod,能自由切换状态变形的单位很少很少。
实现单位状态切换洒家目前只知道两种模式,一种是红色崛起里悬浮坦克所用的,升级模式,这种方式比较简单,就是A状态升级为B状态,B状态又能再升级为A状态,但是这个方式的最大问题就是要占用升级项目,绝命这个平台一共才能支持128个升级项目,实在太少了,如果和其他升级共用一个升级项目的话,又会造成像remix一样的图标都一样。另一种就是摩托车容器式状态切换,SW这个mod里我所找到的最典型的就是GLA兵营里的反坦克炮,其移动状态和展开状态就是采用了这个方法实现自由切换。
洒家的移植方式其实很白痴,完全复制反坦克炮的代码,然后逐一将模型,武器,装甲,运动,控制栏等替换。这中间我还走了很大的一个弯路,最初我是自己新建虚拟骑手(摩托车容器的关键点),新建切换骑手的OCL,新建骑手消失的自杀武器等等,结果就是猛犸坦克能实现坦克和攻城炮的自由切换,但是不能升级,因为不知道哪里出了问题,我新建的虚拟骑手一切换状态就会“下车”,就和摩托车中摩托车永远不会升级,升级的只是骑手一样,虚拟的骑手吃了经验,而实体的坦克变成了空壳摩托车,骑手一下车,就自动变初始级别了。
整个过程我反复思考了两天,昨晚搞到凌晨3点多,我意识到虚拟骑手其实根本无关紧要,关键是容器本身的状态切换,所以我直接采用SW里原有的虚拟骑手,也就是用于反坦克炮的,bingo,不仅一次就成功了,而且简化了大量的代码,坦克本身也能够顺利的获取经验。以后只要有适合的能变形的模型,不需要新建虚拟骑手,理论上可以移植很多自由切换状态的单位。类似红警3的天狗。红警2的多功能步兵车一样。


IP属地:云南1楼2011-11-12 16:23回复
    我会告诉你FK3D大量的使用了摩托车容器么?
    包括美国大兵,
    当然,典型例子就是宇宙巡航机。


    2楼2011-11-12 20:32
    回复
      话说天狗是很难完美移植的……
      两种状态的头像是不一样的……而且显示的名字也不一样。


      3楼2011-11-13 07:22
      回复
        完美就算了,能正常使用就可以,洒家只是举个例子,天狗是唯一脑海中想到的而已,就天狗那么丑的货在洒家的移植名单里是绝对不会出现的


        IP属地:云南4楼2011-11-13 09:40
        回复
          牛银啊,居然把SAGE里号称最复杂的摩托车容器都研究通了。骑手的等级可以与容器共享,秘诀在OCL里,容器刷骑手时将自己的等级复制给刷出物


          IP属地:四川来自手机贴吧5楼2011-11-13 12:38
          回复
            因为洒家主要是靠SW平台下的反坦克炮来模仿的,自己新建的OCL就是不会复制等级,所以无法传递,后来是沿用原来的才行的。话说一个mod里只要有一个摩托车容器具有完整的OCL和虚拟骑手,那么就可以往里面添加N多摩托车容器,虚拟骑手和相应的OCL都不用增加了,沿用就可以了是吗?
            


            IP属地:云南7楼2011-11-13 15:44
            回复
              炎黄和炮台不本身就是共享经验的么,炎黄升级盖特炮打飞机也能打成英雄级啊。
              至于其他容器单位共享经验貌似不可以,比如战斗巴士或者武装运输车什么的。。。


              IP属地:云南8楼2011-11-13 15:45
              回复
                很复杂么


                9楼2011-11-13 16:13
                回复
                  那何为共享?你想变成什么样?


                  IP属地:云南11楼2011-11-13 17:33
                  回复
                    吧主的意思是炎黄升级后其附加的盖特炮台的攻击力没有提升对吗?但是洒家移植的经验来看,应该也是提升的啊,也就是3级复仇者的攻击力肯定比0级大啊。而且我还自己试验过,新移植的单位采用炎黄容器,不管是附加的炮塔还是载体本身的攻击力都提升的啊。
                    另外语气不要那么冲么,洒家毕竟还是只会移植模型的初级阶段,移植SW中出现一个又一个新问题,慢慢探讨么,那个代码洒家也知道,但是我认为那就是共享啊,翻译上是“我的炮塔同伴帮我打经验”


                    IP属地:云南14楼2011-11-13 19:16
                    回复