KeyframeSequenceProvider

非推奨を表示

*このコンテンツは、ベータ版のAI(人工知能)を使用して翻訳されており、エラーが含まれている可能性があります。このページを英語で表示するには、 こちら をクリックしてください。

作成できません
サービス
複製されていません

キーフレーム・シーケンス・プロバイダー サービスは、KeyframeSequences を読み込み、プレビューする機能を提供します。これには、Animations との作業中に便利な機能が含まれています。

Class.KeyframeSequencer は、アニメーションの階層とモーションをエンコードする Poses をいくつかの Class.Animation.

コードサンプル

Create temporary animation

local KeyframeSequenceProvider = game:GetService("KeyframeSequenceProvider")
local function createPreviewAnimation(keyframeSequence)
local hashId = KeyframeSequenceProvider:RegisterKeyframeSequence(keyframeSequence)
local Animation = Instance.new("Animation")
Animation.AnimationId = hashId
return Animation
end
local keyframeSequence = Instance.new("KeyframeSequence")
local animation = createPreviewAnimation(keyframeSequence)
print(animation)

概要

方法

  • RegisterActiveKeyframeSequence(keyframeSequence : Instance):ContentId

    Class.KeyframeSequencer から生成される一時的なアセット ID は、アニメーションのローカライズテストに使用できます。active:// URL を生成します。

  • RegisterKeyframeSequence(keyframeSequence : Instance):ContentId

    Class.KeyframeSequencer から生成される一時的なアセット ID は、アニメーションのローカライズテストに使用できます。ハッシュを生成します。

  • イールド

    この関数は、特定のユーザーが所有するアニメーションをイテレートするための InventoryPages オブジェクトを返します。

  • GetKeyframeSequenceAsync(assetId : ContentId):Instance
    イールド

    指定されたアセット ID に基づいてキーフレームシーケンスを再生します。

プロパティ

方法

RegisterActiveKeyframeSequence

ContentId

アニメーションのローカライズテスト用に使用できる一時的なアセット ID を生成します。KeyframeSequence から。

この関数は同じ機能を KeyframeSequenceProvider:RegisterKeyframeSequence() に実行しますが、この関数はハッシュではなく 有効な:// URLを生成します。

生成された ID は、Animation.AnimationId プロパティでテストすることができます。

この関数によって生成されるアセット ID は一時的であり、Studio 以外の場合は使用できません。オンラインで使用できるアセット ID を生成したい開発者は、KeyframeSequence を Roblox にアップロードする必要があります。

パラメータ

keyframeSequence: Instance

使用する KeyframeSequence


戻り値

ContentId

ローカライズアニメーションプレイヤーの再生のために生成された一時的なアセット ID。

コードサンプル

Create temporary animation

local KeyframeSequenceProvider = game:GetService("KeyframeSequenceProvider")
local function createPreviewAnimation(keyframeSequence)
local hashId = KeyframeSequenceProvider:RegisterKeyframeSequence(keyframeSequence)
local Animation = Instance.new("Animation")
Animation.AnimationId = hashId
return Animation
end
local keyframeSequence = Instance.new("KeyframeSequence")
local animation = createPreviewAnimation(keyframeSequence)
print(animation)

RegisterKeyframeSequence

ContentId

アニメーションのローカライズテスト用に使用できる一時的なアセット ID を生成します。KeyframeSequence から。

この関数は、KeyframeSequenceProvider:RegisterActiveKeyframeSequence() に同じ機能を実行しますが、この関数は、 Class.KeyframeSequencer:RegisterActiveKeyframeSequence() の代わりにハッシュを生成します。

生成された ID は、Animation.AnimationId プロパティのアニメーションテストに使用できます。

この関数によって生成されるアセット ID は一時的であり、Studio 以外の場合は使用できません。オンラインで使用できるアセット ID を生成したい開発者は、KeyframeSequence を Roblox にアップロードする必要があります。

パラメータ

keyframeSequence: Instance

使用する KeyframeSequence


戻り値

ContentId

ローカライズアニメーションプレイヤーの再生のために生成された一時的なアセット ID。

コードサンプル

KeyframeSequenceProvider:RegisterKeyframeSequence

local KeyframeSequenceProvider = game:GetService("KeyframeSequenceProvider")
local asset = KeyframeSequenceProvider:RegisterKeyframeSequence(workspace.KeyframeSequence)
local animation = Instance.new("Animation")
animation.Name = "TestAnimation"
animation.AnimationId = asset
animation.Parent = workspace

GetAnimations

イールド

この関数は、特定のユーザーが所有するアニメーションをイテレートするための InventoryPages オブジェクトを返します。

この関数には、ユーザーがアニメーションをカスタムアニメーションプラグインにブラウズしてインポートすることができるなど、潜在的な使用がいくつかあります。

パラメータ

userId: number

ユーザーのユーザーID。


戻り値

アニメーションの InventoryPages

コードサンプル

KeyframeSequenceProvider GetAnimations

local KeyframeSequenceProvider = game:GetService("KeyframeSequenceProvider")
local USER_ID = 0 -- Insert your UserId here
local function extractPages(pagesObject)
local array = {}
while true do
local thisPage = pagesObject:GetCurrentPage()
for _, v in pairs(thisPage) do
table.insert(array, v)
end
if pagesObject.IsFinished then
break
end
pagesObject:AdvanceToNextPageAsync()
end
return array
end
local inventoryPages = KeyframeSequenceProvider:GetAnimations(USER_ID)
local animationIds = extractPages(inventoryPages)
for _, id in pairs(animationIds) do
print(id)
end
print("total: ", #animationIds)

GetKeyframeSequenceAsync

イールド

GetKeyframeSequencAsync は、指定されたアセット ID に基づいて KeyframeSequence を返します。アセット ID はアニメーションに一致する必要があります。機能は、KeyframeSequence がウェブサイトから読み込まれるまでラップアップされます。これは Web コールであるため、ラップアップされる必要がありま

パラメータ

assetId: ContentId

アニメーションのコンテンツID。


戻り値

Class.KeyframeSequencer が見つかりました。

コードサンプル

Getting an animation's KeyframeSequence

local KeyframeSequenceProvider = game:GetService("KeyframeSequenceProvider")
local ANIMATION_ID = "rbxassetid://507771019"
-- Get the keyframe sequence for the asset
local keyframeSequence
local success, err = pcall(function()
keyframeSequence = KeyframeSequenceProvider:GetKeyframeSequenceAsync(ANIMATION_ID)
end)
if success then
-- Iterate over each keyframe and print its time value
local keyframeTable = keyframeSequence:GetKeyframes()
for key, value in keyframeTable do
print(`The time of keyframe number {key} is: {value.Time}`)
end
else
print(`Error getting KeyframeSequence: {err}`)
end

イベント