找回密码
 点一下
查看: 1519|回复: 3

"Actor From Dialog Item"(演算体取自对话框项)的正确用法

[复制链接]
发表于 2012-9-29 21:19:47 | 显示全部楼层 |阅读模式
1.5加入了单位模型和头像两大对话框控件。

头像控件和单位模型控件,以及"Actor From Dialog Item"(演算体取自对话框项)这个动作,理论上说这个动作应该是获得控件中得演算体。但是很多人实际操作后发现它根本什么都没返回。

实际上要正确使用这个动作,有几个注意要点,这里针对Portrait和Unit Model两个类型分开说明:



头像控件

对于头像控件来说,其实这个控件创建actor的时机实际是很特殊的。它并不会在被创建时就生成,而需要满足2个条件:

  • 过渡动画(即头像模型初始化的延迟)完成
  • 被设置好模型

也就是说,如果你不用“设置对话框项模型”动作先设好模型,actor根本不会创建。但是就算设置了模型,也不代表actor被创建。因为它只有在过渡期过了以后才会被创建。默认情况下,过渡时间需要花上0.1875秒。而模型只有在第一次被显示后才会进入过渡期。

也就是说,为了获得actor,你必须做三件事:

  • 设置好模型(直接通过数据编辑器修改PortraitActor的默认模型也有同样效果)
  • 显示对话框
  • 至少等待0.188秒


但很多时候我们希望能立刻获得actor,好在头像控件的过渡效果是可以关闭的。我们使用“设置对话框项使用过渡”这个动作就可以关闭这个效果。所以一旦过渡效果被关闭,actor的初始化就不需要等对话框被显示了。所以只需要2个前提:

  • 设置好模型
  • 关闭过渡效果


这样,你就可以不用等待地使用"Actor From Dialog Item"来获得演算体了。要注意的是,就算你通过这个函数获得了头像控件中的演算体。每次使用“设置对话框项模型”都会导致actor被重新创建。所以你就再使用一次获得演算体的函数来获得它的演算体。因此如果你希望Actor不发生改变,那么可以用ModelSwap消息来直接修改它的模型。



单位模型控件

单位模型控件也一样需要在被设置好单位模型以后才会初始化演算体。所以你需要先设给它设好单位模型。但是设置过渡效果的动作只对头像控件有效。因此我们无法通过它来让单位模型立即初始化。但好在单位模型初始化只需要0.0625秒。所以我们只需要两步准备就可以获得单位模型控件的actor了。


  • 设置好单位模型
  • 等待0.0625秒


要注意的是,它和头像类似。每次使用设置单位link的动作都会导致actor被重新创建。所以你就再使用一次获得演算体的函数来获得它的演算体。如果你希望Actor不发生改变,那么可以用ModelSwap消息来直接修改它的模型。





发表于 2012-9-29 21:33:56 | 显示全部楼层
原来如此,又长知识了。
回复

使用道具 举报

发表于 2012-9-30 01:57:37 | 显示全部楼层
明白了,原来是要这样。

实际使用中,只要保证不更换模型就好了,获取到这个演算体的域,直接在域中创建和删除模型就可以了。

头目V5啊!
回复

使用道具 举报

发表于 2012-9-30 16:17:27 | 显示全部楼层
估计还得过两年才开始玩SC2的编辑器

据说可以直接用JAVA什么的?
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 点一下

本版积分规则

Archiver|移动端|小黑屋|地精研究院

GMT+8, 2024-4-27 20:21 , Processed in 0.147572 second(s), 23 queries .

Powered by Discuz! X3.5

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表