国产 无码 综合区,色欲AV无码国产永久播放,无码天堂亚洲国产AV,国产日韩欧美女同一区二区

Unity Timeline使用

這篇具有很好參考價值的文章主要介紹了Unity Timeline使用。希望對大家有所幫助。如果存在錯誤或未考慮完全的地方,請大家不吝賜教,您也可以點擊"舉報違法"按鈕提交疑問。

Unity Timeline使用

1.創(chuàng)建Timeline:打開面板Window->Sequencing->Timeline

(1.1)選擇一個要添加 Timeline 的物體,我創(chuàng)建一個物體就叫 Timeline(可以隨意命名),選擇Timeline,然后在面板上顯示 Create 按鈕,如下

Unity Timeline使用
點 Create 按鈕,保存一個 *.playable 的文件,然后自動給Timeline物體添加一個 PlayableDirector 腳本
腳本參數(shù) Playable :TestTimeline 就是創(chuàng)建的 TestTimeline.playable 文件
Play On Awake:勾選則自動播放
Unity Timeline使用
選擇GameObject Timeline可以看到 Timeline 面板

2.創(chuàng)建Activation Track (顯示/隱藏物體軌道

(2.1)在左側(cè)空白處,鼠標(biāo)右鍵,選擇 ActivationTrack

Unity Timeline使用

(2.2) 創(chuàng)建一個 Cube,為了方便管理,放在 Timeline 下方

Unity Timeline使用
然后拖拽到 Activation 軌道的目標(biāo)物體上
右側(cè)Active區(qū)域是Cube物體顯示的時間區(qū)域(Timeline執(zhí)行到這個時間段,物體是顯示的,在這個時間段之外時,物體都是隱藏的)
可以左右拖動,可以把鼠標(biāo)放在左右兩側(cè)拉長時間區(qū)域

(2.3)點擊左側(cè)對勾區(qū)域,Post-playback state

Unity Timeline使用
Active狀態(tài):Timeline完成播放時,將綁定的游戲?qū)ο蟮臓顟B(tài)設(shè)置為激活(顯示)狀態(tài)
Inactive狀態(tài):Timeline完成播放時,將綁定的游戲?qū)ο蟮臓顟B(tài)設(shè)置為停用(隱藏)狀態(tài)
Revert狀態(tài):Timeline開始播放之前,將綁定的游戲?qū)ο蟮臓顟B(tài)設(shè)置為停用(隱藏)狀態(tài)
Leave As Is狀態(tài):Timeline完成播放時,綁定的對象狀態(tài)是顯示的就設(shè)置為顯示狀態(tài),Timeline完成播放時,綁定的對象狀態(tài)是隱藏的,就設(shè)置為隱藏狀態(tài)
名詞解釋:
**Timeline完成播放時:**Timeline播放時間到,所有軌道結(jié)束時,才是Timeline完成播放時

(2.4)選擇軌道上的 Active,在 Inspector 面板上可以看到參數(shù)

Start:開始時間(秒) f:幀(60幀/秒)
End:結(jié)束時間(秒)
Duration:持續(xù)時間(秒)
Unity Timeline使用

(2.4.1)選擇掛Playable Director 腳本的GameObject,在 Timeline窗口左上角,點擊三角預(yù)覽播放

(2.4.2)直接運行Unity也可以預(yù)覽播放

Unity Timeline使用

(3)創(chuàng)建 Animation Track (動畫軌道)

(3.1)空白位置鼠標(biāo)右鍵,選擇 Animation Track

Unity Timeline使用
創(chuàng)建一個 Cube 拖拽到 None 位置
Unity Timeline使用
提示 Create Animator on Cube:添加Animator 組件到Cube上,點擊Create 即可,自動在 Cube 上掛一個Animator 組件

(3.2)添加動畫幀

在軌道空白位置鼠標(biāo)右鍵
Unity Timeline使用
Create Annotation from clipboard contents:創(chuàng)建一個動畫幀,在動畫軌道上出現(xiàn)標(biāo)簽如下
Unity Timeline使用
AddFrom Animation Clip:彈出窗口選擇一個現(xiàn)有的動畫幀
也可以直接將一個動畫幀拖拽到軌道上,如角色預(yù)制體拖拽到左側(cè)作為綁定對象,然后將角色的動畫拖拽到軌道上即可實現(xiàn)播放

(3.3) 創(chuàng)建 Create Annotation from clipboard contents

(3.3.1)點擊左側(cè)紅色圓圈,開始錄制,在軌道上顯示紅色并且有 Recoding… 字體提示

然后選擇綁定的對象 Cube,在Inspector面板上,可以選擇Cube上添加的可用組件添加動畫幀
如Transform,可以分別在 Position、Rotation、Scale 位置鼠標(biāo)右鍵 彈框選擇 AddKey
Unity Timeline使用
點擊 AddKey將在左側(cè)軌道下方出現(xiàn)選擇的屬性,點擊下方圖中紅色位置,可以顯示隱藏編輯屬性
Unity Timeline使用
展開如下
Unity Timeline使用

(3.3.2)在軌道區(qū)域雙擊打開動畫編輯窗口

Unity Timeline使用
切換到 Curves 編輯動畫
Unity Timeline使用

(3.3.3)左上角Recorded為保存的動畫名,動畫存放在當(dāng)前編輯的TestTimeline.playable 下方,如下圖,保存多個動畫會自動命名為 Recorded(1)、Recorded(2)、Recorded(3)…

Unity Timeline使用

(3.3.4)點擊動畫軌道上的動畫幀,在Inspector面板查看參數(shù),如下

Unity Timeline使用
Unity Timeline使用
Track Offsets:將相同的位置和旋轉(zhuǎn)偏移應(yīng)用到動畫軌道上所有的動畫片段

  • Position: 添加控制Position 動畫幀
  • Rotation: 添加控制 Rotation 動畫幀

Apply Foot IK:啟用動畫反向動力學(xué)功能
Apply Avatar Mask:啟動/禁用動畫骨骼遮罩,啟動遮罩時,所選的遮罩會應(yīng)用到當(dāng)前動畫軌道上所有的動畫片段
Default Offset Match Fields:動畫軌道上所有的動畫片段在進行匹配片段偏移時,選擇默認(rèn)的匹配選項

(3.4)AddFrom Animation Clip 添加一個現(xiàn)有動畫幀

Unity Timeline使用

(3.4.1)將角色拖拽到左側(cè)綁定

Unity Timeline使用
模型需要添加Animator腳本
Animator屬性Controller為空即可
Unity Timeline使用

(3.4.2)在右側(cè)軌道右鍵 AddFrom Animation Clip 或者拖拽一個動畫幀到軌道上

運行或者預(yù)覽即可查看動畫播放

(3.4.3)在軌道上選擇動畫幀,在Inspector面板查看參數(shù)

Unity Timeline使用
Unity Timeline使用

可以修改片段的名稱

(3.4.3.1)Clip Timing 屬性包含一下內(nèi)容

Start:動畫片段開始時間
End:動畫片段結(jié)束時間
Duration:動畫片段持續(xù)時間
Ease In Duration:淡入動畫片段所需時間
Ease Out Duration:淡出動畫片段所需時間

(3.4.3.2)

Pre-Extrapolate:設(shè)置該動畫幀開始播放前的狀態(tài),該屬性會影響動畫片段的淡入
None:在播放clip前Capsule會保持真實位置而不是動畫位置
Hold:在播放clip前Capsule會保持第一幀動畫位置
Loop:在播放clip前不停循環(huán)clip,保證在clip開始前動畫內(nèi)容正好播到結(jié)尾,不過開頭不一定(主要看留出時間)
Ping Pong:會播放來回clip(會自動補動畫),保證在clip開始時機前動畫內(nèi)容正好回到開頭
Continue:只能在unity運行時查看,保持的是Loop或Hold選項的狀態(tài)
Post-Extrapolate:設(shè)置動畫片段的后外推,該屬性影響動畫片段的淡出

(3.4.3.3)Blend Curves:包含以下屬性

In:自動/手動調(diào)整動畫片段的淡入曲線
Out:自動/手動調(diào)整動畫片段的淡出曲線

(3.4.3.4) Animation Playable Asset:包含以下屬性

Clip Transform Offsets:將位置和旋轉(zhuǎn)偏移應(yīng)用于所選動畫片段的根運動
Offset Match Fields:進行匹配片段偏移時,在片段級別上設(shè)置的匹配選項

(3.4.4)動畫融合,拖拽兩個動畫相互穿插控制融合時間

Unity Timeline使用

(4) 創(chuàng)建 Audio Track (音效軌道)播放音效

Unity Timeline使用

(4.1)軌道添加音效

Unity Timeline使用
軌道空白處右鍵 Add From Audio Clip 或者直接將音效拖拽到軌道上

(4.2)音效參數(shù)

Unity Timeline使用
點擊軌道上音效片段,Inspector 面板查看參數(shù)

(4.2.1)Audio Playable Asset:包含以下屬性

Clip:選擇音頻片段使用的音頻文件。
Loop:設(shè)置音頻片段是否循環(huán)播放。
Volume:設(shè)置音頻片段的音量。

(5)Signal Track:信號軌道,發(fā)射信號,相當(dāng)于發(fā)送一個事件

(5.1)在TimeWindow面板左側(cè)空白區(qū)域,右鍵選擇 Signal Track

Unity Timeline使用
Unity Timeline使用
創(chuàng)建后顯示如上,

(5.2)創(chuàng)建一個接收信號的 GameObject,我命名為 SingleReceiveObj,然后拖拽到左側(cè) None(Signal Receiver) 位置,提示添加 Create Signal Receiver 腳本,選擇 Create 即可在 GameObject 上自動掛 Signal Receiver 腳本,如下

Unity Timeline使用

(5.3) 在信號軌道空白處右鍵添加一個發(fā)射器

Unity Timeline使用
Add Signal Emitter:創(chuàng)建一個信號發(fā)射器,發(fā)射器顯示如下
Unity Timeline使用
點擊信號發(fā)射器看Inspector 面板,Emit Signale 位置可以選擇已經(jīng)創(chuàng)建的發(fā)射器
Unity Timeline使用
Time:發(fā)射信號的時間
Retroactive:
EmitOnce:勾選后只會發(fā)射一次信號
Emit Signal:選擇一個發(fā)射信號Asset,可以復(fù)用之前創(chuàng)建的,也可以選擇 Create Signal 創(chuàng)建一個
Add Signal Emitter From Signal Asset: 會打開選擇窗口,可以選擇已經(jīng)創(chuàng)建的發(fā)射器

(5.4)配置接收函數(shù)

// 創(chuàng)建一個接收信號的腳本,類名隨意
public class SignalReceiveTest : MonoBehaviour
{
    public void OnTimelineSignal()
    {
        Debug.LogError("收到信號了");
    }
}

SignalReceiveTest 腳本掛到 SingleReceiveObj 物體上
Signal Receiver 下方點擊 AddReaction
Unity Timeline使用
Unity Timeline使用
點擊 +
選擇 Runtime,在 NoFunction 處下拉選擇 SignalReceiveTest 腳本上的 OnTimelineSignal 函數(shù)
Unity Timeline使用
運行預(yù)覽,時間軸執(zhí)行到信號發(fā)射器位置時,將會調(diào)用到 OnTimelineSignal 函數(shù)

(5.5).自定義信號

(5.5.1)新建信號發(fā)射類,繼承 SignalEmitter
using UnityEngine;
using UnityEngine.Playables;
using UnityEngine.Timeline;

// 自定義的信號
public class CustomSignal : SignalEmitter
{
    // 自定義參數(shù)
    public string eventName;
    public int param;
}

創(chuàng)建一個 Signal Track 軌道,然后在右側(cè)右鍵,如下可以看到新建的信號發(fā)射器
Unity Timeline使用
創(chuàng)建一個接收信號的GameObject我命名為 CustomSignalReceiverObj,添加 SngnalReceiver 腳本,并拖拽到信號軌道

(5.5.2)選擇新創(chuàng)建的 Custom Signal,在Inspector 面板可以看到 CustomSignal 類的兩個參數(shù) eventName和 param,可以手動輸入?yún)?shù)值

Unity Timeline使用

(5.5.3) 創(chuàng)建信號接收類
/// <summary>
/// 自定義信號接收器
/// </summary>
public class CustomSignalReceiver : MonoBehaviour, INotificationReceiver
{
    public void OnNotify(Playable origin, INotification notification, object context)
    {
        var signal = notification as CustomSignal;
        if (signal != null
            && signal.asset != null)
        {
            Debug.LogError(signal.number + "   " + signal.param);
        }
    }
}

將腳本CustomSignalReceiver掛到 CustomSignalReceiverObj
選擇添加的自定義信號發(fā)射器Custom Signal 如下
Unity Timeline使用
查看Inspector面板下方顯示
Unity Timeline使用
運行后將自動觸發(fā) CustomSignalReceiver 類的 OnNotify 函數(shù)

(6)創(chuàng)建 Control Track

Unity Timeline使用

(6.1)控制物體顯示

方法一:將場景內(nèi)的物體拖拽到右側(cè)軌道上綁定,下方 Sphere
方法二:將預(yù)制體拖拽到右側(cè)軌道上綁定,下方 Cube1
Unity Timeline使用
運行,時間軸執(zhí)行到軌道開始時間時,將綁定物體顯示出來,軌道時間結(jié)束后隱藏
Control Track 綁定的如果是場景內(nèi)的物體,則直接控制其顯示/隱藏
Control Track 綁定的如果是預(yù)制體,可以自動加載預(yù)制體并控制其顯示隱藏

(6.2)點擊軌道上的片段,在Inspector 面板查看參數(shù)

Unity Timeline使用
Unity Timeline使用
SourceGameObject:綁定的物體是場景內(nèi)的GameObject 如上 Sphere

  • Prefab:預(yù)制體拖拽到軌道上,Prefab屬性關(guān)聯(lián)對綁定對象的引用,如上 Cube1

Post PlayBack 同 (2.3) Post-playback state

(6.3)Control Track嵌套控制其他的Timeline

再創(chuàng)建一個Timeline2
Playable Director 腳本Play On Awake 不勾選(不自動播放)
Unity Timeline使用
在 Timeline上創(chuàng)建一個Control Track,將Timeline2 拖拽到右側(cè)軌道上,嵌套到Timeline
Unity Timeline使用

(6.4)在 Timeline選擇被嵌套的 Timeline2,查看Inspector面板

Control Activation:
勾選時,Timeline 執(zhí)行時會調(diào)用 Timeline2,主要讓Timeline2做一些前置處理
不勾選時,Timeline執(zhí)行時需要等到Timeline2時間開始位置才觸發(fā)Timeline2
Unity Timeline使用
看例子,下面是 Timeline2控制一個Cube的顯示
Unity Timeline使用

(6.4.1)如果在Timeline軌道上將Timeline2 的 Control Activation 勾選,則Timeline一開始執(zhí)行,Timeline2控制Cube 立即隱藏,直到執(zhí)行到 Timeline2需要顯示Cube的時候,才將 Cube顯示出來
(6.4.2)如果在Timeline軌道上將Timeline2 的 Control Activation 不勾選,則Timeline一開始執(zhí)行,Timeline2 不會控制Cube隱藏(Cube一開始是顯示的),知道執(zhí)行到Timeline2開始時間位置,Timeline2才控制Cube先隱藏,然后時間到 Active 位置時將Cube顯示

(7)添加 TrackGroup(軌道組)

將多個軌道規(guī)劃為一個組,方便管理,先創(chuàng)建一個 TrackGroup,然后在TrackGroup
Unity Timeline使用

(8)操作輔助

(8.1) Lock軌道加鎖,選中一個軌道,在軌道空白位置,右鍵選擇Lock

Unity Timeline使用
加鎖標(biāo)志如下
Unity Timeline使用
解鎖:選擇加鎖的軌道,右鍵 Unlock
Unity Timeline使用
加鎖的作用:當(dāng)編輯完成一個軌道后,避免無意修改,加鎖,該軌道將不能被編輯,也不能被刪除,起到一個保護的作用,當(dāng)需要編輯時解鎖即可

(8.2)Mute 軌道靜默,選中一個軌道,在軌道空白位置,右鍵選擇Mute

Unity Timeline使用
靜默標(biāo)志如下
Unity Timeline使用
解除靜默:選擇靜默的軌道,右鍵 Unmute
Unity Timeline使用
靜默的作用:軌道靜默后預(yù)覽/播放時該軌道將不會播放,不生效了,當(dāng)有多個軌道在編輯時,你想專注查看某一個或者一些軌道效果,可以將其他的軌道設(shè)置靜默。

(8.3)軌道優(yōu)先級

軌道排序優(yōu)先級為,下面軌道優(yōu)先級>上面軌道優(yōu)先級
如果多個軌道控制的是同一個物體,則最下面的一個軌道生效
如何調(diào)整優(yōu)先級:在左側(cè)拖拽一個軌道,上下挪動,一條白線顯示的位置就是可以放置的位置,在白線位置松開鼠標(biāo)即可,如下
Unity Timeline使用

(8.4)三種模式:Mix model、Ripple model、Replace model

Unity Timeline使用
上圖紅色框中三個按鈕分別對應(yīng)Mix model、Ripple model、Replace model
Mix model:拖動右側(cè)軌道上的剪輯相互獨立,當(dāng)兩個剪輯相交時為,兩個剪輯混合
Ripple model:拖動右側(cè)軌道上的剪輯,會一同推動它左右兩側(cè)的剪輯
Replace model:拖動右側(cè)軌道上的剪輯,當(dāng)剪輯覆蓋其他剪輯時,將其他剪輯替換掉

(9)添加自定義軌道

(9.1)我添加一個設(shè)置 Image 顏色的 自定義軌道,執(zhí)行到軌道幀開始位置時改變Image顏色,軌道幀結(jié)束時將Image顏色設(shè)置為(0, 0, 0,0)

先看效果,下圖中 TimeTest->Image Track 是自定義的軌道
綁定的對象類型為 UGUI->ImageUnity Timeline使用

Unity Timeline使用
在軌道右側(cè),鼠標(biāo)右鍵添加軌道幀,Add Image Asset 也是自定義添加的

(9.2)選中 ImageAsset 在 Inspector 面板查看參數(shù)

Unity Timeline使用
Image Asset 部分
Image Color:添加的自定義顏色屬性,執(zhí)行時將Image 的顏色設(shè)置為這個顏色
Param:添加的自定義 Int 類型屬性

需要添加三個腳本

(9.3) 添加軌道幀資源,上方右鍵Add Image Asset 就是下面代碼創(chuàng)建的

using System;
using UnityEngine;
using UnityEngine.Playables;

namespace TimeTest
{
    /// <summary>
    /// 創(chuàng)建軌道資源
    /// </summary>
    [Serializable]
    public class ImageAsset : PlayableAsset
    {
        // 設(shè)置的顏色
        public Color imageColor;
        // 參數(shù)
        public int param;

        public override Playable CreatePlayable(PlayableGraph graph, GameObject owner)
        {
            // 創(chuàng)建一個新的 Playable(Script類型)
            // ScriptPlayable<ImageMixerBehavior>.Create 實際接收兩個參數(shù)
            // 第一個參數(shù)是 Graph
            // 第二個參數(shù)是 我們創(chuàng)建的這個Playable接收幾個參數(shù),默認(rèn)不填寫那么就是0個輸入
            var playable = ScriptPlayable<ImageMixerBehavior>.Create(graph);

            // 通過 GetBehaviour 獲取上面創(chuàng)建的 ImageMixerBehavior 類型實例
            var imageMixerBehavior = playable.GetBehaviour();
            // 將軌道資源參數(shù)賦值給 imageMixerBehavior
            imageMixerBehavior.imageColor = imageColor;
            imageMixerBehavior.param = param;

            // 返回 Playable 類型實例,Unity會幫我們自動連接
            return playable;
        }
    }
}

(9.4)添加軌道,TimeTest->Image Track 就是下面代碼創(chuàng)建的

using UnityEngine;
using UnityEngine.Playables;
using UnityEngine.Timeline;
using UnityEngine.UI;

namespace TimeTest
{
    /// <summary>
    /// 自定義 Timeline 軌道 ImageTrack (名字隨意定)
    /// 在 Timeline 添加軌道位置右鍵,新加 TimeTest->ImageTrack
    /// </summary>
    [TrackColor(0.13f, 0.18f, 0.9f)]     // 軌道顏色
    [TrackBindingType(typeof(Image))]    // 綁定對象類型為 UnityEngine.UI.Image
    [TrackClipType(typeof(ImageAsset))]  // 軌道幀類型為 ImageAsset (也需要自定義)
    public class ImageTrack : TrackAsset
    {
        public override Playable CreateTrackMixer(PlayableGraph graph, GameObject go, int inputCount)
        {
            return ScriptPlayable<ImageMixerBehavior>.Create(graph, inputCount);
        }
    }
}

(9.5)添加軌道執(zhí)行邏輯

using UnityEngine;
using UnityEngine.Playables;
using UnityEngine.UI;

namespace TimeTest
{
    /// <summary>
    /// 繼承自 PlayableBehaviour,定義 Playable 的行為
    /// </summary>
    public class ImageMixerBehavior : PlayableBehaviour
    {
        private Image img;

        public Color imageColor;
        public int param;

        /// <summary>
        /// 重寫 OnBehaviourPlay 函數(shù),第一次執(zhí)行到軌道幀開始的時間
        /// </summary>
        /// <param name="playable"></param>
        /// <param name="info"></param>
        public override void OnBehaviourPlay(Playable playable, FrameData info)
        {
            base.OnBehaviourPlay(playable, info);
        }

        /// <summary>
        /// 重寫 ProcessFrame 函數(shù),Timeline 開始執(zhí)行,直到所有軌道結(jié)束,每幀都會調(diào)用這個方法
        /// </summary>
        /// <param name="playable"></param>
        /// <param name="info"></param>
        /// <param name="playerData">綁定對象 類型為:ImageTrack 類設(shè)置的 TrackBindingType 類型 Image</param>
        public override void ProcessFrame(Playable playable, FrameData info, object playerData)
        {
            Color blendColor = Color.clear;

            // 轉(zhuǎn)換為綁定對象 Image
            img = playerData as Image;
            int inputCount = playable.GetInputCount();
            if (null != img && inputCount > 0)
            {
                for (int i = 0; i < inputCount; i++)
                {
                    float weight = playable.GetInputWeight(i);
                    ImageMixerBehavior imageMixerBehavior = ((ScriptPlayable<ImageMixerBehavior>)playable.GetInput(i)).GetBehaviour();

                    // 獲取顏色值
                    blendColor += imageMixerBehavior.imageColor * weight;
                }

                // 給綁定的 Image 對象設(shè)置顏色
                img.color = blendColor;
            }
        }

        /// <summary>
        /// 執(zhí)行到當(dāng)前軌道幀 End Time
        /// </summary>
        /// <param name="playable"></param>
        /// <param name="info"></param>
        public override void OnBehaviourPause(Playable playable, FrameData info)
        {
            base.OnBehaviourPause(playable, info);
            if (null != img)
            {
                img.color = Color.clear;
            }
        }
    }
}

執(zhí)行即可預(yù)覽效果文章來源地址http://www.zghlxwxcb.cn/news/detail-483964.html

(10)代碼控制播放、暫停、停止

public class PlayableDirectorController : MonoBehaviour
{
    private PlayableDirector playableDirector;
    void Start()
    {
        playableDirector = GetComponent<PlayableDirector>();
    }

    // Update is called once per frame
    void Update()
    {
        if (Input.GetKeyDown(KeyCode.A))
        {
            // 暫停播放,時間軸停在當(dāng)前位置
            playableDirector.Pause();
        }

        if (Input.GetKeyDown(KeyCode.D))
        {
            // 播放/繼續(xù)播放,從時間軸當(dāng)前位置播放
            playableDirector.Play();
        }

        if (Input.GetKeyDown(KeyCode.W))
        {
            // 停止播放,時間軸回到0
            playableDirector.Stop();
        }
    }
}

到了這里,關(guān)于Unity Timeline使用的文章就介紹完了。如果您還想了解更多內(nèi)容,請在右上角搜索TOY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!

本文來自互聯(lián)網(wǎng)用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務(wù),不擁有所有權(quán),不承擔(dān)相關(guān)法律責(zé)任。如若轉(zhuǎn)載,請注明出處: 如若內(nèi)容造成侵權(quán)/違法違規(guī)/事實不符,請點擊違法舉報進行投訴反饋,一經(jīng)查實,立即刪除!

領(lǐng)支付寶紅包贊助服務(wù)器費用

相關(guān)文章

  • Unity TimeLine跨場景動態(tài)綁定對象

    在unity TimeLine使用時,想要控制某個物體上的對象,直接將場景中該物體拖拽到對應(yīng)的PlayableDirector的Track上即可。但如果希望控制的物體是動態(tài)生成的,或TimeLine作為Prefab的一部分出現(xiàn)在其他場景中,又希望控制場景中的物體等等,在不能使用拖拽指定或資源選擇指定資源的情

    2024年02月10日
    瀏覽(30)
  • Unity TimeLine循環(huán)播放某個時間段

    Unity TimeLine循環(huán)播放某個時間段

    1、設(shè)置Playable Director的Update Method為GameTime模式 2、API : using UnityEngine.Playables; 我們需要用到PlayableDirector的time屬性 3、設(shè)置開始和結(jié)束時間段(使用的幀率)我在0-158幀循環(huán)和158到290幀之間循環(huán) 4、代碼 代碼筆記

    2024年02月11日
    瀏覽(62)
  • 解決Unity打包后Timeline里部分特效沒顯示的bug

    比較詭異的問題,美術(shù)同學(xué)給過來的特效資源,在Edtior里是正常播放的,但打包后特效里應(yīng)該落下來的光柱卻消失了。 考慮到打包后的環(huán)境和Editor環(huán)境的區(qū)別 AssetBundle 通過在Editor里加載AssetBundle來播放,發(fā)現(xiàn)也是正常的,應(yīng)該不是資源問題。 ParticleSystem的Culling Mode 粒子系統(tǒng)

    2023年04月08日
    瀏覽(17)
  • Unity用NPOI創(chuàng)建Exect表,保存數(shù)據(jù),和修改刪除數(shù)據(jù)。以及打包后的坑——無法打開新創(chuàng)建的Exect表

    Unity用NPOI創(chuàng)建Exect表,保存數(shù)據(jù),和修改刪除數(shù)據(jù)。以及打包后的坑——無法打開新創(chuàng)建的Exect表

    先說坑花了一下午才找到解決方法解決, 在Unity編輯模式下點擊物體創(chuàng)建對應(yīng)的表,獲取物體名字與在InputText填寫的注釋數(shù)據(jù)。然后保存。創(chuàng)建Exect表可以打開,打包PC后, 點擊物體創(chuàng)建的表, 打不開文件破損 解決方法: 到unity編輯器所在路徑中去找這個路徑 EditorDataMon

    2024年02月12日
    瀏覽(21)
  • 初識Unity——創(chuàng)建代碼、場景以及五個常用面板(創(chuàng)建C#代碼、打開代碼文件、場景的創(chuàng)建、Project、Hierarchy、Inspector、Scene、Game )

    初識Unity——創(chuàng)建代碼、場景以及五個常用面板(創(chuàng)建C#代碼、打開代碼文件、場景的創(chuàng)建、Project、Hierarchy、Inspector、Scene、Game )

    目錄 創(chuàng)建代碼 創(chuàng)建C#腳本 打開代碼文件 可能出現(xiàn)的問題 場景 場景的創(chuàng)建 基本介紹 五個窗口面板的作用 Project Hierarchy Inspector Scene Game? 從unity2018版本開始,unity就開始不再維護和推薦JavaScript for Unity以及Boo等語言,現(xiàn)在官方主推和最常用的腳本語言是C#。 創(chuàng)建一個腳本之后

    2024年02月07日
    瀏覽(37)
  • 【Unity3D】資源文件 ② ( Unity 中場景文件簡介 | 查看場景文件內(nèi)容 | 場景文件相關(guān)操作 | 創(chuàng)建場景 | 打開場景 )

    【Unity3D】資源文件 ② ( Unity 中場景文件簡介 | 查看場景文件內(nèi)容 | 場景文件相關(guān)操作 | 創(chuàng)建場景 | 打開場景 )

    Unity 編輯器中的 場景文件 是以 \\\" .unity \\\" 為后綴的文件 , 該文件中會記錄所有 游戲物體 GameObject , 以及游戲物體的相關(guān)數(shù)據(jù) , 如下內(nèi)容都是存儲在 場景文件 中的 : 游戲物體 GameObject 節(jié)點 : 在 Hierarchy 層級窗口 中 場景文件 下的各個節(jié)點 都是游戲物體 , 如 主攝像機 , 光源 , 立

    2024年02月09日
    瀏覽(93)
  • Unity Timeline在編輯器下正常,真機(模擬器、手機)不正常播放問題

    出現(xiàn)這個問題很大可能是因為設(shè)置了 Managed Stripping Level = Low 只需要改成 Managed Stripping Level = Medium就可以正常播 或者改Assets/link.xml沒有就新建 如果還是不能播放,可以考慮下是不是資源打包出問題了。 上面的代碼裁剪掉的明顯特征是,真機運行l(wèi)og會出現(xiàn): The referenced script (U

    2024年03月13日
    瀏覽(115)
  • Unity Timeline學(xué)習(xí)筆記(3) - SignalTrack信號軌道和自定義帶參數(shù)的Marker信號和軌道

    Unity Timeline學(xué)習(xí)筆記(3) - SignalTrack信號軌道和自定義帶參數(shù)的Marker信號和軌道

    信號軌道,顧名思義就是運行到某處發(fā)送一個信號。 普通用法就是沒有任何封裝的,個人感覺特別難用,但是有必要理解一下工作原理。 添加信號 我們添加一個信號資源 生成后可以看到資源文件,這個是可以拖到SignalTrack上的。 我們在Timeline上添加兩個信號軌道,并拖動信

    2024年04月13日
    瀏覽(56)
  • Unity使用VS編輯器打開項目失敗解決辦法

    Unity使用VS編輯器打開項目失敗解決辦法

    具體表現(xiàn)為:項目文件.sln無法打開,打開腳本文件后無法關(guān)聯(lián)到Unity編輯器 報錯信息可能不同,參考出錯表現(xiàn)即可 首先去清除有邏輯錯誤的代碼,先注釋掉,不然后面可能會無法自動生成解決方案 然后關(guān)閉Unity編輯器,找到項目文件夾,刪除我列出的文件 重新打開Unity,重

    2024年02月16日
    瀏覽(27)
  • 【Unity地形】使用地形工具創(chuàng)建場景環(huán)境-Terrain

    【Unity地形】使用地形工具創(chuàng)建場景環(huán)境-Terrain

    ? 如上圖Unity的地形工具可以讓我們實現(xiàn)創(chuàng)建復(fù)雜、豐富的3D室外環(huán)境。 我們創(chuàng)建地形很簡單,在層級面板中右鍵-3Dobject-Terrain 就可以創(chuàng)建一個默認(rèn)的地形模型!這個模型是Unity內(nèi)置的。 接下來的地形編輯功能全部集中在這個地形的組件上 可以讓用戶在黃色線里面點擊即可擴

    2024年04月11日
    瀏覽(26)

覺得文章有用就打賞一下文章作者

支付寶掃一掃打賞

博客贊助

微信掃一掃打賞

請作者喝杯咖啡吧~博客贊助

支付寶掃一掃領(lǐng)取紅包,優(yōu)惠每天領(lǐng)

二維碼1

領(lǐng)取紅包

二維碼2

領(lǐng)紅包