斗战神隐藏任务有哪些|隐藏任务有哪些

斗战神 隐藏任务

盛放的向日葵 盛放的向日葵
回答
  • 四川省省帅 四川省省帅

    在unity里面,情况也是如此,不过再复杂一点展开。1、骨架就是transform。不像maya和理论那样,是一种实体的单独的存在。在unity里,骨架就是transform的层次关系。一个骨头就是一个transform。这个人体的骨架(transform)组织结构一般是abdome(spine,leftupleg,rightupleg),abdome是根(有时用hip),向上是spine(neck,leftuparm,rightuparm)。这个在哪里都差不多。关键是root,就是abdome。在unity里,引用骨架都是靠它。2、mesh。因为unity里的mesh有绑骨和未绑骨两种(在哪里都差不多)。在导入资源的时候,unity会为绑骨的mesh自动生成一个skinnedmeshrenderer,为未绑骨的生成一个meshfilter和一个meshrenderer。不精细的人物,头盔、手、武器(甚至靴子)等都不用绑骨,像骑马与砍杀,只需要把armor绑骨就好。不绑骨情况:meshfilter负责从文件中取出真实的mesh(这里用的是script里的类来表示,具体可以查reference)。meshrender负责显示。这种想要固定在人体上,其实很简单,把这个gameobject的tansform的parent设置为需要绑定的骨头的transform就好。(比如武器,transform.parent=item_l,item_l是左手一个绑定武器骨头)所以,缺点也很明显,一个mesh只能绑定到一个骨头,也就是这个mesh不会变形。(这个可以作为绑骨和不绑骨的依据,看mesh是否需要变形,所以头盔,武器都不需要绑骨(仅在unity中成立))
    绑骨情况:skinnedmeshrenderer有俩个重要成员,一个是mesh,一个是bones。当然,mesh里有每一个顶点的绑骨数据,但这里存的是序号。就是第几个骨头,并没有指明是哪个骨头,但是如果给一个根骨头就能推测出所有的骨头了。这里的bones把所有的骨头都列出来了,至于顺序,有点扯淡,没啥规律(调试结果)。问题出来了,那skinnedmeshrenderer里的骨头这么没顺序,mesh里的骨头序号怎么对应过来呢?好吧,仔细想想,其实没那么复杂。因为skinnedmeshrenderer里包含mesh和bones两个成员,由于都是一起生成的,那么就一个坑埋一个人,正好就对应起来了。之所以要这么个bones列表,是因为要把它画成transform树吧。这样就再回答一个问题,如何换装备?原skinnedmeshrender对应的骨骼已经存在,不可能销毁它(还有其他部分要用),所以就修改skinnedmeshrenderer本身就好。要改的有两个值(加上材质三个):mesh和bones。其实,原bones根本不用变,只需要把mesh变了就好(除非你的绑骨不是一帮人做的)。详细代码看看unity有个官方项目。另外,我觉得吧,连skinnedmeshrender都不用操纵,直接重新生成就好。看文章最后的代码。动画部分最有爱。其实呢,layer这个玩意,用来分组比较合适。优先级这个特点也是可以用的,不过寄太大信心。一个layer可以设置同样的叠加方式(累加,混合),控制方式(只控制上半身)。一般不同动画都放在不同层,相同功能动画在同一层,比如向左砍人和向右砍人。另外,我们动画一般都是自己搞到的一个一个片段,如果你不是动画师,还是不要用啥累加和混合了。用一些独立的动画,让他控制身体的某些部位就好。所以,综合看,人物控制,在unity 里,换装备,换武器都是可行的。不知道咋了,网上就是搜不到如何换装的,搞到我自己研究了好久。另外,最近的新发现,升级到4后,有个mecanima模块,用来做动画重定位的,这个叫帅啊。我的以下代码没办法处理动画,因为动画之前无法重定位。但是可爱的unity的新功能来了,给每个armor和每个动画都创建一个对应的**atar,然后就直接可以用一**画驱动所有人了(虽然表面上我们显示的是一个人,但是在内部,实现这种换装方法用的是好几个独立的人体骨骼,当然,这种方法要求每个独立的骨骼都是相同的)。附上换装代码。pragma strict
    public var o_body_r:gameobject;public var o_hand_l_r:gameobject;public var o_hand_r_r:gameobject;public var o_helmet_r:gameobject;public var o_calf_l_r:gameobject;public var o_calf_r_r:gameobject;public var o_weapon_r_r:gameobject;public var body1_r:gameobject;private var mbody:gameobject;private var mhand_l:gameobject;private var mhand_l_p:transform;private var mhand_r:gameobject;private var mhand_r_p:transform;private var mhelmet:gameobject;private var mhelmet_p:transform;private var mcalf_l:gameobject;private var mcalf_l_p:transform;private var mcalf_r:gameobject;private var mcalf_r_p:transform;private var mweapon_r:gameobject;private var mweapon_r_p:transform;function start(){
    }
    private var if**:boolean=true;function update(){
    if(input.getbuttondown("fire1")){
    generate(if**);if**=!if**;}
    }
    function generate(num:boolean){
    if(mbody){
    destroy(mbody);}
    if(num=true){
    mbody=instantiate(o_body_r,transform.position,quaternion.identity);}else{
    mbody=instantiate(body1_r,transform.position,quaternion.identity);}
    mhand_l_p=mbody.transform.find("abdomen/spine/thorax/shoulder.l/upperarm.l/forearm.l/hand.l");mhand_l=instantiate(o_hand_l_r,mhand_l_p.position,quaternion.identity);mhand_l.transform.parent=mhand_l_p;mhand_l.transform.localrotation=quaternion.euler(0,270,90);mhand_r_p=mbody.transform.find("abdomen/spine/thorax/shoulder.r/upperarm.r/forearm.r/hand.r");mhand_r=instantiate(o_hand_r_r,mhand_r_p.position,quaternion.identity);mhand_r.transform.parent=mhand_r_p;mhand_r.transform.localrotation=quaternion.euler(0,270,90);mweapon_r_p=mbody.transform.find("abdomen/spine/thorax/shoulder.r/upperarm.r/forearm.r/hand.r/item.r");mweapon_r=instantiate(o_weapon_r_r,mweapon_r_p.position,quaternion.identity);mweapon_r.transform.parent=mweapon_r_p;mweapon_r.transform.localrotation=quaternion.euler(0,270,90);mcalf_l_p=mbody.transform.find("abdomen/thigh.l/calf.l");mcalf_l=instantiate(o_calf_l_r,mcalf_l_p.position,quaternion.identity);mcalf_l.transform.parent=mcalf_l_p;mcalf_l.transform.localrotation=quaternion.euler(0,270,90);mcalf_r_p=mbody.transform.find("abdomen/thigh.r/calf.r");mcalf_r=instantiate(o_calf_r_r,mcalf_r_p.position,quaternion.identity);mcalf_r.transform.parent=mcalf_r_p;mcalf_r.transform.localrotation=quaternion.euler(0,270,90);mhelmet_p=mbody.transform.find("abdomen/spine/thorax/head");mhelmet=instantiate(o_helmet_r,mhelmet_p.position,quaternion.identity);mhelmet.transform.parent=mhelmet_p;mhelmet.transform.localrotation=quaternion.euler(0,270,90);}

类似问答
  • 九阴绝学都有哪些隐藏任务

    提问时间:2024-04-30 14:44:50

    w707九阴绝学交流群 九阴绝学都有哪些隐藏任务?隐藏任务怎么完成?隐藏任务完成方法九阴绝学中,我们一边跟随着主线,一边升级的过程中,会触发很多支线任务,这个就...

  • 时空裂痕里隐藏任务都有哪些啊?

    提问时间:2024-04-30 16:06:35

    在游戏中**可以通过和**对话接取和完成任务,不过在游戏中同样有各种各样需要**触发的彩蛋任务,比如在银木森林第一个传送点和和鲁迪的马车之间**可以遇到一只中立...

  • 诛仙手游焚香谷隐藏任务有哪些

    提问时间:2024-04-30 06:17:47

    诛仙手游焚香谷隐藏任务介绍隐藏任务一:踩青灵石焚香内谷云易岚头上烦跟头隐藏任务二:内谷与异性互动跳舞隐藏任务三:内谷杀1000发狂鱼人获得【感觉自己香香哒称号】

  • 火炬之光2隐藏任务有哪些

    提问时间:2024-04-30 18:04:18

    最大的是传说中的“机器人任务”另外据说每个地图都有隐藏任务,不过我见到的不多。目前见到如下三个(地图上没标记自己偶遇的):a,第二章主城往下走的奥西亚荒原上,地...

  • 法宝隐藏任务在哪里 最新法宝隐藏任务坐标位置攻略

    提问时间:2024-04-30 17:16:50

    诛仙手游隐藏任务-法宝法宝也是很重要的,可以铸元可以精进,是增加属性的一个重要途径之一。伤心花任务地点:狐岐山(鬼王)任务奖励:伤心花(狐岐山94.121)位置...

  • 多玩斗战神插件|所有隐藏任务

    提问时间:2024-04-30 00:50:08

    这时候,记忆调教器机械化的声音,在陆宇的脑海中又响了起来。这人说的话,竟然是汉语。杨浩听到张波的话,脸色一变,道“五千太少了,我也没有脸去卖,反正我三百万都亏了...

  • 斗战神隐藏任务攻略|自动主线

    提问时间:2024-04-30 09:57:40

    见陆宇不说话,叶宁终于鼓起勇力,对陆宇羞涩的道“你不跳舞么?“莫不是,小姐要送我们礼物?随性兴奋不已。陆正田听到李军的话,不由急了,道“李主任,话可不能这么说,...

  • 高达破坏者2隐藏任务有哪些

    提问时间:2024-04-30 17:38:36

    高达破坏者2尚未上架的机体都算是隐藏任务,接下来官方dlc开放下载后才会解锁这些任务。不懂请追问,明白请采纳。

  • 死神奥义乱舞元旦版 隐藏任务 注意是【隐藏任务】

    提问时间:2024-04-30 11:40:35

    从未听说过这个任务 是不是杂货商的舞蹈技能啊 看错了?我经常遇见

  • 完美国际里的隐藏任务有那些?

    提问时间:2024-04-30 21:07:53

    60级隐藏任务这个任务不用找**去接,只要到固定的坐标去溜达下就可以接到了:①.113 622 困魔锁;②.119 640 灭魔铃(高度63有个箱子,对话,即可...

精品推荐

友情链接

友链互换QQ:

谷财 备案编号:蜀ICP备11019336号-3商务合作:235-677-2621

Copyright 2009-2020 Chengdu Sanzilewan Technology Co.,Ltd all rights reserve

抵制不良游戏 拒绝盗版游戏 注意自我保护 谨防受骗上当 适度游戏益脑 沉迷游戏伤身 合理安排时间 享受健康生活