查看“LlSetLinkPrimitiveParamsFast”的源代码
←
LlSetLinkPrimitiveParamsFast
跳转至:
导航
、
搜索
因为以下原因,您没有权限编辑本页:
您所请求的操作仅限于该用户组的用户使用:
用户
您可以查看与复制此页面的源代码。
{{LSL Header|ml=*}}{{LSLC|Keywords}}{{LSLC|Flow Control}}{{LSLC|}} '''提示''': [[llSetPrimitiveParams]], [[llSetLinkPrimitiveParams]], [[llSetLinkPrimitiveParamsFast]]这些函数几乎完全相同。对于几乎所有的情况,我们建议您使用[[llSetLinkPrimitiveParamsFast]]。在wiki中三个函数被总结在了一起难以翻译,若您想查阅更完整的函数,参见[http://wiki.secondlife.com/wiki/LlSetLinkPrimitiveParams#llSetLinkPrimitiveParams] {{函数详情 |函数名 = Function: llSetLinkPrimitiveParamsFast( integer link, list rules ); |参数= 参数:• integer link – Link number (0: unlinked, 1: root prim, >1: child prims and seated avatars) or a LINK_* flag • list rules |返回值= 返回值:根据规则设置prims参数。 与上面的变体相比,这个函数比其他LSL函数要快。 |注意事项=有时候llSetLinkPrimitiveParamsFast太快了,也就是说,函数返回后,下一行代码在更新处理完成前执行并返回,导致更新出现混乱。在大多数情况下,行为上没有区别,但有时会有。在这些情况下,您需要使用llSetPrimitiveParams或llSetLinkPrimitiveParams。 这是因为llSetLinkPrimitiveParamsFast有效负载是异步执行的,而llSetPrimitiveParams和llSetLinkPrimitiveParams有效负载是同步执行的(或者延迟使其看起来是同步的)。 |示例= 这是一个简单的脚本,当触碰链接集中的一个prim时,它会亮起这个prim,当脚本安装在链接集中的根prim中时,它会用llSetLinkPrimitiveParams亮起其他的prim。 <pre> // Turn all prims off and the one touched turn on default { touch_start(integer num_detected) { llSetLinkPrimitiveParamsFast(LINK_SET, [ PRIM_FULLBRIGHT, ALL_SIDES, FALSE, PRIM_LINK_TARGET, llDetectedLinkNumber(0), PRIM_FULLBRIGHT, ALL_SIDES, TRUE]); } } </pre> 一个简单的脚本,当被触碰时,它将所有的子prim在根轴Z轴上向前移动0.25 m。 <pre> default { touch_start(integer total_number) { integer numberOfPrims = llGetNumberOfPrims(); if (numberOfPrims < 2) return; vector link_pos; list params; integer link = 2;// start with first child prim do { // 获取子prim的局部位置(即相对于根prim) link_pos = llList2Vector(llGetLinkPrimitiveParams(link, [PRIM_POS_LOCAL]), 0); link_pos.z += 0.25;// relative to root's local z-axis !!! params += [PRIM_LINK_TARGET, link, PRIM_POS_LOCAL, link_pos]; } while (++link <= numberOfPrims); if (!llGetListLength(params)) return; // params列表以PRIM_LINK_TARGET开始(这是我们可以开始的一个技巧) 因此,在这个函数调用中,将哪个数字作为第一个参数实际上并不重要 llSetLinkPrimitiveParamsFast(2, params); } } </pre> |相关函数= [[llGetLinkNumber]] - 返回脚本所在的prim的链接号。 [[llGetLinkNumberOfSides]] - 返回链接的prim的面数。 [[llGetPrimitiveParams]] - 获得许多基本参数 [[llSetLinkPrimitiveParams]] - 在linkset中设置其他prim的参数 [[llGetLinkPrimitiveParams]] - 在likset中获取其他prim的许多基本参数 [[llSetLinkPrimitiveParamsFast]] - 在linkset中设置其他prims的参数 [[llSetAlpha]] - 简单的方法来设置alpha(透明度)而不需要(重新)设置颜色。 [[llSetTexture]] - 设置纹理的简单方法 [[llSetColor]] - 设置颜色的简单方法 [[llSetScale]] - 设置比例的简单方法 [[llSetStatus]] - 设置物理和幻影的方法更简单 }}
该页面使用的模板:
模板:LSL Header
(
查看源代码
)
模板:LSLC
(
查看源代码
)
模板:LSLGC
(
查看源代码
)
模板:Multi-lang
(
查看源代码
)
模板:函数详情
(
查看源代码
)
返回至
LlSetLinkPrimitiveParamsFast
。
导航菜单
个人工具
登录
名字空间
页面
讨论
变种
视图
阅读
查看源代码
查看历史
更多
搜索
导航
网站首页
知识百科
编辑帮助
最近更改
工具
链入页面
相关更改
特殊页面
页面信息