Posted by YY船长 on 2011年11月21日
给设置减肥已经基本完成,剩下的就只有3J的次控减肥了。
FK setup基本被我写完了,写到最后,居然采用了和3J一样的特性。我本以为用不到的。
但细细一想,本来3J setup的肩膀切换就是用到blendShape叠加,点位移和角位移分开。
这也是我当初写代码的最终成果,也是一直没有想通的地方,呵呵,有点可笑是吧。。代码写成了,而人却没有想通。。
在我做的设置里面,还是有几点我自己都没有想通的地方,所以我都没办法找到替代方法来减肥。
目前用到了好多旋转约束啊,我的一套设置用到了350多个啊。。。我精简不下来。。
父子约束被我精简掉了1/3吧,所以速度提高的比较明显
我的次级用到了很多旋转约束,这是我想减肥的地方。。嗯。这个星期试着完成。
老设置做了的动作库要用到新设置上,但是旋转明显不同。我需要写一个拷贝keys的程序。
基于这些transform节点的方向和rotate order都不一样,我就要用旋转约束来固定好所需旋转,然后搜索应该需要的帧。
先找好帧再看看,怎么自动改改这些曲线吧。
我的稳定型驱动方式能达到我想象的要求,这是很欣慰的,看了主流设置的处理X轴旋转驱动,都是一味的抵消这种影响。
他们却没有意识到,X轴旋转在很多时候,并不是要去抵消,当我们旋转Y轴的时候,也是希望有X轴旋转出现的。
修改完3J之后,就要开始写4J,写完4J还要修改加在之上的limb setup,这个limb setup是完成limb的根端部分,
对于动物设置来说,这个根端设置会有些不同。
Posted by YY船长 on 2011年11月18日
今天下班的时候看日历才知道是星期五。。我的日子总是过得慢半拍。
工作状态总不是持续的,要是整个下午都能保持好的精神就好了,可惜大概是在四点之后才有点状态,2点到4点感觉痴呆了很多。
1 最近在研究替代父子约束的办法,发现了decompseMatrix,可惜这个有些弊端,比如缩放不太利索。加到骨骼上也有点不爽,虽然位移的速度提高一点点,体积小了一点点,但是终归不够好。
2 发现我的fk根部切换一直都是错的,今天才去纠正,这里就有些许复杂,我忙到8点半都没写完,还是决定暂时收工到星期一。
3 四节骨节的IK也是可以IK FK无缝切换的,这两天的简单测试证明了这一点,这就为我的4J setup铺平了道路,不过要写出来估计也得个3天吧。
今天顺便写了个小prune weight,以前刷权重的时候,一些点的权重被无关的joint 给影响了,并且给占到了5个最大限度,这对于我这种习惯锁骨骼刷权重的人来说,非常不爽呢。不过这个小代码段是对每个点都执行的,几千个点的模型还是执行的很慢的,一般选择部分点就可以了。
一个远期的问题就是双骨骼的动作捕捉支持,这个想起来都很难实现匹配。。
我要重写大部分3J的代码,并考虑到4J的问题,来做一个新的架构,新的3J代码的体积应该只有一半,速度提高一倍,功能也会增加少许,会更加丰满,大概这个算是3J的完成版,一般的近人的手臂,腿的设置都没问题,卡通的一般次控都没问题,对了,次控也是主要更新对象,会增加更多的控制器,也即是第二级次控。
但是我更希望添加上驱动型的次控操控,把手臂当成尾巴,做成卷曲之类。所以第二级次控没必要显示出来。
Posted by YY船长 on 2011年11月17日
Posted by YY船长 on 2011年10月30日
正在给设置减肥呢。
减肥有两个方向:
1 减少角色上面的loft曲面,之前为了达到固定的效果,我生成了许许多多的小曲面,但是结果证明,这些是多余的。除非是效果要求,否则都是浪费。
2 除去fk setup上面的blend,只留一个曲面。用blend来做,单独一个,2个还好,多了就会卡。尤其是目前感觉上身有7个以上。
3 最后是修改四肢的设置。目前我用的曲面太多了,感觉有每个超过7个,我想,应该能减少到3个。想象中,mid 次级和fk应该能合并,sub 基于三阶曲面,做sub 骨骼的桥(3个sub的话,只做中间骨骼skin 控制器的话,拉伸不会太均匀,估计要做到中间3个skin骨骼,拉伸做一个驱动链接,权重分配好。中间控制器做位移也做个驱动链接就是了。)
想象中,Fk应该要多做个属性来位移。自身的位移。
原来的次级控制器变成了缩放控制器。
然后mid固定切换,fk骨骼自然不蒙皮,额外的骨骼要蒙皮,fk骨骼要驱动。除了shoulde骨的translation
这个蒙皮骨头可能还蒙皮了上肢sub骨骼桥曲面。
Posted by YY船长 on 2011年10月25日
设置难做。除了设置组件的常规问题之外。设置本身还有拉伸收缩的那种体积问题。以及增加肌肉。
今天烧开水忘了把水壶拿开,结果就是烧了一天,还好没有烧干水。。不过也烧了我5°电吧。。
郁闷那。。想到设置还有那么多东西要做。。那么多代码要写。。就有些无力。。