WindShake树叶随风飘动插件

该插件支持对需要进行晃动的part或modle进行标签,该插件性能优化非常好!
1、获得tag插件Tag Window
image
2、获得windShake插件
image

3、demo演示

4、API接口

Functions

function WindShake:Init()

Initializes the wind shake logic and adds shake to all tagged objects

Returns:

  • void
function WindShake:Cleanup()

Halts and clears the wind shake logic and all object shakes

Returns:

  • void
function WindShake:Pause()

Halts the wind shake logic without clearing

Returns:

  • void
function WindShake:Resume()

Restarts the wind shake logic without clearing

Returns:

  • void
function WindShake:AddObjectShake(Object, Settings)

Adds an object to be shaken

Parameters:

  • Object [BasePart]
    The Object to apply shaking to
  • Settings [Optional Dictionary]
    The settings to apply to this object’s shake (See below for Settings structure)

Returns:

  • void
function WindShake:RemoveObjectShake(Object)

Removes shake from an object

Parameters:

  • Object [BasePart]
    The Object to remove shaking from

Returns:

  • void
function WindShake:SetDefaultSettings(Settings) [DEPRECATED]

Deprecated in favor of setting the Attributes of the WindShake modulescript

Sets the default settings for future object shake additions

Parameters:

  • Settings [Dictionary]
    The settings to use as default (See below for Settings structure)

Returns:

  • void
function WindShake:UpdateObjectSettings(Object, Settings) [DEPRECATED]

Deprecated in favor of setting the Attributes of the Object

Updates the shake settings of an object already added

Parameters:

  • Object [BasePart]
    The Object to apply shake settings to
  • Settings [Dictionary]
    The settings to apply to this object’s shake (See below for Settings structure)

Returns:

  • void
function WindShake:UpdateAllObjectSettings(Settings)

Updates the shake settings of all active shakes

Parameters:

  • Settings [Dictionary]
    The settings to apply to all objects’ shake (See below for Settings structure)

Returns:

  • void
Settings

Events

RBXScriptSignal WindShake.ObjectShakeAdded(Object)

Fires when an object is added to WindShake

Parameters:

  • Object [BasePart]
    The object that was added
RBXScriptSignal WindShake.ObjectShakeRemoved(Object)

Fires when an object is removed from WindShake

Parameters:

  • Object [BasePart]
    The object that was removed
RBXScriptSignal WindShake.ObjectShakeUpdated(Object)

Fires when an object’s settings are updated through the update APIs

Parameters:

  • Object [BasePart]
    The object that had its settings updated
RBXScriptSignal WindShake.Resumed()

Fires when WindShake begins shaking the objects

RBXScriptSignal WindShake.Paused()

Fires when WindShake stops shaking the objects

Types

Settings tables are structured like so:

{
    WindDirection: Vector3 to shake towards (Initially 0.5,0,0.5)
    WindSpeed: Positive number that defines how fast to shake (Initially 20)
    WindPower: Positive number that defines how much to shake (Initially 0.5)
 
    --If one of these is not defined, it will use default for that one,
    --so you can pass a table with just one or two settings and the rest
    --will be default so you don't need to make the full table every time.
}

Usage Example:

local WIND_DIRECTION = Vector3.new(1,0,0.3)
local WIND_SPEED = 25
local WIND_POWER = 0.4

local WindShake = require(script.WindShake)

WindShake:SetDefaultSettings({
    WindSpeed = WIND_SPEED;
    WindDirection = WIND_DIRECTION;
    WindPower = WIND_POWER;
})

WindShake:Init() -- Anything with the WindShake tag will now shake

5、原文地址:https://devforum.roblox.com/t/wind-shake-high-performance-wind-effect-for-leaves-and-foliage/1039806

3 个赞

感谢搬运分享!!!又学习到一点新知识了

厉害了!!!!!收藏起来

关于我们    加入我们    条款    隐私政策
©2021 Roblox Corporation、Roblox、Roblox 标志及 Powering Imagination 是我们在美国及其他国家或地区的注册与未注册商标。
粤ICP备20013629号