找回密码
 立即注册
查看: 208|回复: 0

Unity基础(十五)约束系统 (Look At Constraints)

[复制链接]
发表于 2023-1-3 13:40 | 显示全部楼层 |阅读模式
约束

<hr>
约束组件将游戏对象的位置、旋转或缩放与另一个游戏对象关联。受约束的游戏对象像关联到的游戏对象一样移动、旋转或缩放。

Unity 支持以下类型的约束组件:

    Aim:旋转受约束的游戏对象以朝向关联的游戏对象。

  • Look At:将受约束的游戏对象旋转到关联的游戏对象  << (这节课所讲解的组件)
    (简化的 Aim Constraint)。
    Parent:使受约束的游戏对象跟随关联的游戏对象移动和旋转。

    Position:像关联的游戏对象一样移动受约束的游戏对象。

    Rotation:像关联的游戏对象一样旋转受约束的游戏对象。

    Scale:像关联的游戏对象一样缩放受约束的游戏对象。
Look At 约束 Look At Constraints

<hr>
Look At Constraint 是 Aim Constraint的简化版。Aim Constraint 允许选择哪个轴跟随约束游戏对象,而 Look At Constraint 始终跟随 z 轴。

可以将 Look At Constraint 的向上方向设置为另一个游戏对象的 y 轴,也可以指定围绕 z 轴(瞄准轴)的旋转。

属性

<hr>
属性: 功能:

    Is Active 启用此选项可评估约束。若还要应用约束,请启用 Lock 属性。

  • Weight    设置约束的强度。有效值的范围从 0(约束无效)到 1(此游戏对象按照与其源游戏对象移动相同的速率旋转)。
    此权重值同等程度影响所有源游戏对象,但您也可以在 Sources 列表中单独更改每个游戏对象的权重。
    Use Up Object 启用此选项可将此游戏对象的向上矢量设置为 World Up Object 的 y 轴。如果禁用此选项,则向上矢量将设置为 Roll 值。游戏对象的向上矢量确定了向上方向。

  • Roll  设置沿 z 轴的旋转角度(以度为单位)以用于此游戏对象的向上矢量(向上方向)。
    仅当禁用 Use Up Object 时可用。

  • World Up Object   在此处引用需要用作向上矢量参考的游戏对象。设置此引用后,该向上矢量游戏对象的 y 轴将成为受约束游戏对象的向上方向。
    仅当启用 Use Up Object 时可用。
Constraint Settings面板




  • Lock  启用此选项可让约束旋转游戏对象(应用约束)。如果禁用此选项,则可以修改游戏对象的旋转以及 Rotation At Rest 和 Rotation Offset 属性。在对更改满意后,选中 Lock 以便让约束控制此游戏对象。
    此属性在播放模式下无效。

  • Rotation At Rest  设置受约束游戏对象停止时的 X、Y 和 Z 方向。当总权重(包括所有源游戏对象的各个权重)加起来为 0 时,游戏对象就会停止。
    要修改此属性,请禁用 Lock。
    Rotation Offset   设置相对于受约束方向(由约束计算的旋转)的 X、Y 和 Z 偏移,要修改此属性,请禁用 Lock。

  • Sources   约束此游戏对象的游戏对象列表。Unity 按照源游戏对象在此列表中出现的顺序来评估源游戏对象。
    此顺序会影响此约束如何旋转受约束的游戏对象(由于旋转累积方式)。要获得所需的结果,请拖放此列表中的项。不同顺序会产生不同的结果。
    列表中的每个条目都包含对游戏对象的引用及其权重(即约束影响)。Unity 计算此列表中的源游戏对象的平均值,您可以通过更改每个源游戏对象的权重来调整影响。例如,如果有两个源游戏对象(立方体和球体)并想将摄像机更多地集中在球体上,则可以将球体的权重设置为 1(最大值),而将立方体的权重设置为 0.5。

球体(权重 = 1)与立方体(权重 = 0.5)之间的影响

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?立即注册

×
懒得打字嘛,点击右侧快捷回复 【右侧内容,后台自定义】
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Unity开发者联盟 ( 粤ICP备20003399号 )

GMT+8, 2024-9-21 15:41 , Processed in 0.100309 second(s), 26 queries .

Powered by Discuz! X3.5 Licensed

© 2001-2024 Discuz! Team.

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