孫揚揚 曾志剛
1.北京電影學院中國電影高新技術研究院,北京 100088 2.北京電影學院影視技術系,北京 100088
近年來,隨著媒介與技術的創(chuàng)新發(fā)展,人們對于視覺藝術的追求也在穩(wěn)步提升。沉浸式劇場運用先進的技術和創(chuàng)意設計,打破了傳統(tǒng)舞臺表演的局限性,使觀眾能夠身臨其境地沉浸于現(xiàn)實舞臺與虛擬空間的融合環(huán)境中,因而廣泛地被大眾所接受。
人機交互旨在應用語音、圖像、文本、眼動和觸覺等信息進行人與計算機之間的信息交換,主要包含:大數(shù)據(jù)可視化交互、基于聲學場感知的交互、混合現(xiàn)實事物交互、可穿戴交互和人機對話交互。
當下沉浸式劇場與虛擬影像的人機交互技術將成為未來研究與發(fā)展的方向。實時粒子特效指的是粒子特效跟隨追蹤對象的運動而運動,從而達到交互的目的。對于沉浸式劇場而言就是實時產(chǎn)生的粒子特效會跟隨舞臺上追蹤對象的運動變化而產(chǎn)生相應的變化,包括粒子位置變化、粒子觸發(fā)、粒子效果變換等。實時粒子特效是虛擬空間交互設計中較為普遍存在的一種特效技術,當前在交互展覽、互動裝置中具有廣泛的應用。因此,為了在沉浸式劇場中實現(xiàn)實時粒子特效追蹤效果就需要搭建一套與之適配的軟硬件集成系統(tǒng)。
沉浸式劇場實時粒子特效系統(tǒng)方案可以依據(jù)功能進行分類,具體可以分為:追蹤技術、實時粒子特效制作技術、預演技術和顯示技術。通過追蹤技術采集舞臺上追蹤對象的空間位置信息及其運動信息,并對采集數(shù)據(jù)進行加工處理。實時粒子特效制作技術通過交互設計軟件制作實時粒子特效畫面。預演技術負責在軟件端預演真實舞臺呈現(xiàn)效果。顯示技術負責采集、管理、分配畫面并傳輸給終端的顯示設備。表1為軟硬件系統(tǒng)解決方案。
表1 軟硬件系統(tǒng)解決方案
追蹤技術采用的主要方案包含BlackTrax、Opti-Track、諾亦騰、HTC VIVE、Vicon 等。當前主流的追蹤技術采用光學追蹤技術,分為有標記點的光學追蹤技術和無標記點的光學追蹤技術。其中有標記點的光學追蹤技術又可分為主動式光學追蹤技術和被動式光學追蹤技術。主動式光學追蹤技術采用的追蹤點是本身可以發(fā)光的二極管,通過攝像頭捕捉發(fā)光二極管發(fā)射的光線,從而定位追蹤點。被動式光學追蹤技術使用一些特制的小球作為追蹤標記,小球表面存在一層強反光能力物質,使攝像頭能夠捕捉到小球的運動軌跡。其中BlackTrax 采用主動式光學追蹤技術,OptiTrack、諾亦騰、HTC VIVE、Vicon 采用被動式光學追蹤技術。
實時粒子特效制作常用的交互設計軟件包含TouchDesigner、Notch、Unity 3D、Unreal Engine 等。TouchDesigner 在藝術表演和實時創(chuàng)意設計方面更為靈活,具有較強的交互性和實時可編程性,其節(jié)點式編程環(huán)境使用戶能夠自由地控制實時內(nèi)容的流程和邏輯。Notch 更專注于高質量的視覺效果,應用于專業(yè)舞臺演出。Unity 3D 和Unreal Engine 可實現(xiàn)游戲領域的畫面渲染,兼容影視制作及工業(yè)應用。因此,Notch 和TouchDesigner 更適用于藝術表演和實時創(chuàng)意設計,而Unity 3D 和Unreal Engine 更適用于影視制作和游戲開發(fā)。
預演系統(tǒng)主要方案包含hecoos、Disguise 等。hecoos 和Disguise 是國內(nèi)外主流的預演播控軟件,用于模擬舞臺、燈光、影像的現(xiàn)場效果,預演完整的活動過程,在視頻播控、燈光設計和機械控制方面,可以實現(xiàn)設計過程與現(xiàn)場執(zhí)行的無縫對接,極大提升現(xiàn)場執(zhí)行效率,在虛擬攝制、大型現(xiàn)場演出、沉浸式裝置體驗、虛擬直播間等領域實現(xiàn)廣泛應用。
顯示技術通常采用LED 顯示技術和激光投影顯示技術。LED 顯示技術是主動式發(fā)光顯示技術,即LED 顯示面板上的每顆燈珠主動獨立發(fā)光,基于空間混色效應實現(xiàn)顏色顯示。LED 顯示技術具有高亮度、高動態(tài)范圍、高對比度、壽命長、低功耗等特性。激光投影采用激光光源將影像放大投射到銀幕上,經(jīng)過漫反射進入人眼。相較于傳統(tǒng)投影機,激光光源具有高亮度、廣色域、低功耗、光源壽命長、穩(wěn)定性好等特點。
筆者利用現(xiàn)有設備,在北京電影學院懷柔校區(qū)千人劇場搭建了一套由BlackTrax 主動式紅外追蹤系統(tǒng)、3D 舞臺設計服務器系統(tǒng)、hecoos 多媒體服務器系統(tǒng)、JSTRON 視頻處理器系統(tǒng)和激光投影機顯示系統(tǒng)組成的沉浸式劇場實時粒子特效系統(tǒng)解決方案。
圖1 為該系統(tǒng)的流程圖,其中BlackTrax 主動式紅外追蹤系統(tǒng)通過紅外信號定位追蹤對象的空間位置,數(shù)據(jù)經(jīng)由局域網(wǎng)傳輸給3D 舞臺設計服務器。在3D 舞臺服務器中使用TouchDesigner 軟件制作粒子特效,并將特效畫面通過局域網(wǎng)傳輸給hecoos 多媒體服務器。在hecoos 多媒體服務器的hecoos Pro 軟件中完成預演與輸出管理,JSTRON 視頻處理器負責拆分視頻畫面,最終將畫面以投影的形式輸出。
圖1 實時粒子特效系統(tǒng)圖
本文將基于此方案分析沉浸式劇場實時粒子特效系統(tǒng)的關鍵技術,即基于BlackTrax 的追蹤技術、基于TouchDesigner 的實時粒子特效制作技術、基于hecoos的預演技術和基于激光投影的顯示技術。
BlackTrax 主動式紅外追蹤系統(tǒng)是一款實時空間定位系統(tǒng),能夠精確地捕捉舞臺上的物體、演員或裝置位置、方向角、速度與加速度信息。其設計目的旨在為舞臺、演出和活動提供高精度實時定位和追蹤解決方案。
BlackTrax 主動式紅外追蹤系統(tǒng)主要包含:Black-Trax 服務器、信標器、紅外線纜、紅外線感應器、時間同步器、路由器、eSync 2控制器和若干校準工具。
如圖2 所示,紅外線感應器的作用是捕捉信標器的紅外線纜發(fā)射的信號并通過網(wǎng)線傳輸給POE 交換機。POE 交換機將紅外線感應器、時間同步器、eSync 2 控制器和路由器傳來的數(shù)據(jù)打包發(fā)送給BlackTrax 服務器。其中路由器接收信標器所傳輸?shù)男畔B接狀態(tài)和電池狀態(tài)。時間同步器與eSync 2 控制器配合使用,用來同步信標器與紅外線感應器。
圖2 BlackTrax 系統(tǒng)圖
BlackTrax 服務器中包含三款軟件:BlackTrax GUI、Motive、WYSIWYG。Motive 負責校準實驗環(huán)境中紅外線感應器的位置并管理紅外線感應器、捕捉追蹤位置信息。BlackTrax GUI 的作用是管理定位信息并將追蹤數(shù)據(jù)傳輸給第三方系統(tǒng)。WYSIWYG 的作用是管理燈具型號、地址碼和追蹤區(qū)域,從而替代燈光控制臺實現(xiàn)燈光追蹤。
在完成軟硬件系統(tǒng)搭建后,需要校準紅外線感應并將定位數(shù)據(jù)傳輸給第三方系統(tǒng)。校準的目的是在軟件中還原紅外線感應器的空間位置,以便定位信標器的空間位置信息。數(shù)據(jù)通常交由第三方系統(tǒng)進行加工處理,目的是與第三方系統(tǒng)制作的內(nèi)容進行實時匹配。
在校準過程中需使用Motive 軟件和校準工具,校準工具包含校準棒、手杖電池和地坪校準器。
校準過程分為兩步。首先連接好手杖電池與校準棒,在紅外線感應器能接收信號的有限空間中揮舞校準棒,使每個紅外線感應器能均勻捕捉校準棒的空間位置信息,每個紅外線感應器捕捉的數(shù)據(jù)量至少為20000 個。隨后,對捕捉的數(shù)據(jù)進行運算,應用校準數(shù)據(jù)就能還原對應紅外線感應器的相對位置信息。
之后設置坐標原點,使用的工具是地坪校準器和手杖電池。如圖3所示,在舞臺中央擺放地坪校準器,以觀眾席的視角為準,Y 軸方向是舞臺后方,X 軸方向是舞臺右側。設定完成后,在Motive 軟件中保存校準文件,便完成校準流程。
圖3 地坪校準器的放置
數(shù)據(jù)傳輸指的是將數(shù)據(jù)傳輸?shù)降谌较到y(tǒng),使用BlackTrax GUI 軟件實現(xiàn),具體通過設置輸出參數(shù)(Output Configuration)、傳送追蹤對象(Sending Trackables)、輸出模塊(Output Modules)三個界面的參數(shù)實現(xiàn)。
首先,在BlackTrax GUI 的Output Configuration 界面中新建一個輸出口。由于傳輸?shù)氖亲粉欬c的位置信息,因此數(shù)據(jù)傳輸類型為RTTrPM 協(xié)議,NIC 設定為本機的IP 地址,地址設置成接收端的IP 地址,需要保持信號發(fā)送端與接收端端口一致。
隨后,設置Sending Trackables 參數(shù),在窗口中具有四種類型的追蹤對象數(shù)據(jù)可以傳輸,即Beacon、Min、Rigid、Soft。Beacon 和Min 指的是信標器的類型,Rigid 和Soft 指的是追蹤對象的類型,即剛體與柔體。剛體指的是形狀和尺寸在運動和受力狀態(tài)下保持不變的物體,通常用于描述沒有彎曲、拉伸或擠壓的物體。因此可以將至少三個紅外線纜固定在剛體上,在BlackTrax GUI中將帶有線纜的剛體綁定為剛體對象。柔體指的是形狀和尺寸隨運動或外力的變化而變化的物體,對于柔體的追蹤通常需要指定追蹤點為框架創(chuàng)建解決方案。分配給柔體的追蹤點數(shù)量沒有限制,對柔體的追蹤本質上是對柔體質心的追蹤。
最后,需在Output Modules 模式中選擇對應數(shù)據(jù)傳輸類型,包含LED、質心、方向角、時間戳、速度與加速度。LED 數(shù)據(jù)即追蹤點數(shù)據(jù),用來發(fā)送單個追蹤點的3D 坐標信息。質心數(shù)據(jù)用于傳輸剛體的空間位置信息,由于剛體對象是一個至少由三個追蹤點形成的空間立體結構,對于剛體對象能獲取其6D位姿信息。質心數(shù)據(jù)通常搭配方向角數(shù)據(jù)一起使用。方向角數(shù)據(jù)包含四元數(shù)數(shù)據(jù)與歐拉角數(shù)據(jù)。四元數(shù)數(shù)據(jù)是一種復雜但更為有效描述旋轉的數(shù)學工具,它是由一個實部和三個虛部組成的結構體數(shù)據(jù),用于表示旋轉軸和旋轉角度。歐拉角則將物體的旋轉分解成三個連續(xù)的基本方向旋轉,可以拆解成繞X 軸旋轉(Roll)、繞Y 軸旋轉(Pitch)、繞Z 軸旋轉(Yaw)。速度與加速度用來傳輸追蹤對象的速度與加速度數(shù)據(jù),需要與LED 或質心數(shù)據(jù)搭配使用。
TouchDesigner 是一款節(jié)點式可視化編程工具,其中包含Comp、Top、Chop、Sop、Dat、Mat 六大類型的基本元件和功能豐富的集成插件。TouchDesigner 具有豐富的軟硬件接口支持,其支持的硬件設備包含Kinect 體感設備、LeapMotion 體感控制器、激光雷達、Arduino 智能硬件設備等交互設備。其支持的傳輸協(xié)議包括DMX 協(xié)議、OSC 協(xié)議、MIDI 協(xié)議、NDI 協(xié)議等,通過這些協(xié)議能傳輸燈光控制信號、音視頻信號、空間位置信息等。
使用TouchDesigner 實現(xiàn)實時粒子特效制作的過程主要分為兩步,第一步是傳輸協(xié)議的轉換,第二步是粒子特效的設計。
在特效制作過程中需要處理兩次傳輸協(xié)議的轉換。第一次是將BlackTrax GUI 傳輸來的RTTrPM 協(xié)議轉換成OSC 協(xié)議,第二次是將制作完成的粒子特效以NDI協(xié)議傳輸給hecoos多媒體服務器。
4.1.1 RTTrPM 協(xié)議
BlackTrax GUI 傳輸?shù)淖粉檯f(xié)議具有兩款,分別是實時跟蹤協(xié)議-照明(RTTrPL)和實時跟蹤協(xié)議-運動(RTTrPM)。RTTrPL 協(xié)議主要用于燈光追蹤,傳輸?shù)臄?shù)據(jù)包中包含燈具的域、通道及通道值的相關信息。其本質上是將空間坐標信息轉化成燈具的Pan 或Tilt 通道的數(shù)值,從而達到燈光追蹤的目的。RTTrPM 協(xié)議用來處理運動追蹤,傳輸?shù)臄?shù)據(jù)包中包含運動物體的位姿數(shù)據(jù),包括LED、質心、方向角、時間戳、速度與加速度。RTTrPM 協(xié)議是一種網(wǎng)絡傳輸協(xié)議,既能使用TCP 的方式傳輸也能使用UDP 的方式傳輸??紤]到數(shù)據(jù)傳輸?shù)膶崟r性,通常使用UDP的方式進行數(shù)據(jù)傳輸。
4.1.2 OSC 協(xié)議
OSC(Open Sound Control)協(xié)議即開放式聲音控制,是一種網(wǎng)絡傳輸協(xié)議,采用UDP 方式進行網(wǎng)絡傳輸。OSC 協(xié)議要求信息發(fā)送設備與接收設備處于同一局域網(wǎng)中,并且監(jiān)聽同一個端口信號。OSC 協(xié)議最初是為音頻服務的,音頻控制器OSC 協(xié)議能更好地控制音頻設備。隨著技術的發(fā)展,OSC 協(xié)議的用途越來越廣泛,不僅可以用于控制視頻設備、燈光系統(tǒng)、動作捕捉設備,還可用于發(fā)送命令、控制參數(shù)、傳輸實時數(shù)據(jù)等。
4.1.3 NDI協(xié)議
NDI(Network Device Interface)協(xié)議即網(wǎng)絡設備接口協(xié)議,旨在實現(xiàn)高質量、低延遲的實時視頻、音頻和元數(shù)據(jù)的網(wǎng)絡傳輸與共享。NDI 協(xié)議在2015 年發(fā)布,提供免費開源的軟件開發(fā)工具包(Software Development Kit,SDK)。NDI 協(xié)議能傳輸視頻信號、音頻信號、TALLY 信號(用于指示視頻切換器中信號狀態(tài)的燈光)以及控制方案,其采用高效的編碼技術,高清信號壓縮比約為15∶1,延遲能夠控制在100ms以內(nèi)。目前廣泛用于直播、會議、視頻制作、醫(yī)療、教育等領域。
4.1.4 OSC 信號處理
由于BlackTrax GUI 傳輸?shù)氖荝TTrPM 協(xié)議,因此需要使用BlackTrax 官方提供的Python 代碼將其轉換成OSC 協(xié)議。在TouchDesigner 中創(chuàng)建OSC In 元件,通過調整OSC In 元件參數(shù)面板的接收端口并激活該元件,就能獲取局域網(wǎng)中對應端口發(fā)送的OSC信號。圖4是對OSC 信號處理的流程,該流程實現(xiàn)拆解OSC 數(shù)據(jù),并對捕捉到的數(shù)據(jù)進行一定變換從而實現(xiàn)與運動對象的匹配。流程中,創(chuàng)建Select 元件拆解OSC 元件中的數(shù)據(jù),添加Math 元件將數(shù)據(jù)進行一定的變換,并將數(shù)據(jù)傳輸給Null 元件。Null 元件是一個特殊的節(jié)點,本身不執(zhí)行任何操作。Null 節(jié)點的作用類似于連接器,用于連接和組織網(wǎng)絡節(jié)點。
圖4 OSC 信號處理節(jié)點流程圖
圖5 為本次實驗粒子特效設計的節(jié)點流程圖。Grid 元件劃定區(qū)域,Particle 元件產(chǎn)生粒子,將Null 元件當作Grid 元件參數(shù)的引用,從而將追蹤位置傳輸給粒子。通過渲染“四元件”:Light 元件、Camera 元件、Geometry 元件、Constant 元件輸出給Render 元件,由Render 元件實時渲染輸出,其中Light 元件負責燈光設置,Camera 元件負責搭建相機視角,Geometry 元件存放各種需要渲染的對象,Constant 元件負責貼上材質信息,經(jīng)過這樣操作便能產(chǎn)生粒子特效。由于粒子具有生命周期,因此要產(chǎn)生連續(xù)粒子追蹤效果就需要循環(huán)“四元件”,F(xiàn)eedback 元件開啟循環(huán),Blur 元件添加模糊,Level 元件調整亮度,Add 元件負責將當前畫面疊加回Feedback 元件達到循環(huán)目的。最后添加NDI OUT 元件將粒子特效畫面?zhèn)鬏斀ohecoos 多媒體服務器系統(tǒng)。
圖5 TouchDesigner 節(jié)點流程圖
預演與顯示系統(tǒng)包含hecoos 多媒體服務器、JSTRON 視頻處理器和多臺激光投影機(圖6)。其中hecoos 多媒體服務器中的hecoos Pro 軟件負責舞臺的預演、投影機的控制與軟件端的輸出管理。JSTRON視頻處理器負責裁切視頻信號,由于投影機數(shù)量較多,需要通過hecoos Pro 軟件與JSTRON 視頻處理器進行輸出控制與管理,從而實現(xiàn)端到端的映射。
圖6 預演與顯示系統(tǒng)圖
hecoos Pro 是一款實時預演現(xiàn)場的全案設計創(chuàng)作軟件,能完成項目技術方案的設計、舞臺的搭建、效果的預演,并輸出給對應的投影機、音響設備、LED 屏幕、燈具和舞臺機械裝置。設計師可以在軟件中模擬真實投影機的光路設計和畫面畸變,從而完成具體模型的3D 映射效果和光路設計。
北京電影學院懷柔校區(qū)千人劇場使用的hecoos多媒體服務器搭載i9-10900K 處理器、RTX6000 顯卡和64G 內(nèi)存,具有強大的編解碼能力和渲染輸出能力。hecoos 多媒體服務器具備6 個DP1.2 接口,最大支持4K 分辨率輸出,支持最多10 路高清NDI 網(wǎng)絡采集,支持最多4 路SDI 接口的4K 采集卡采集視頻信號。
如圖7 所示,千人劇場搭建了一套由11 臺固定安裝的激光投影機和5 臺流動激光投影機組成的投影系統(tǒng),投影機的標準分辨率為1920×1200,而hecoos 多媒體服務器最多支持6 路DP 輸出,因此需要通過視頻處理器,將一路輸入信號裁切成多路輸出信號。
圖7 投影機點位布局圖
視頻處理器是一種專門處理數(shù)字視頻信號的設備,具有分割屏幕、拼接屏幕、自定義EDID、混合矩陣、自定義橫縱向排布等功能。EDID(Extended Display Identification Data)即擴展顯示識別數(shù)據(jù),通過EDID 顯示設備可以向計算機發(fā)送自身的技術規(guī)格、支持的分辨率、頻率范圍和色彩特性等信息。EDID提供了一種標準化的方式,用于確保計算機與顯示設備之間能夠有效交換顯示配置信息,從而實現(xiàn)最佳的顯示效果與兼容性。
千人劇場采用4 臺JSTRON LVP9000-D 視頻處理器,每臺視頻處理器具有2 路輸入和4 路輸出。2路輸入分別支持DP1.2 標準和DP1.1 標準,能接收超高清(UHD)信號,最大支持3840×2400 無損分割。4路輸出支持DVI 1.0 標準,最大輸出分辨率為1920×1200。
輸出管理是將hecoos 多媒體服務器的4 路DP 輸出,通過視頻處理器的分割屏幕功能拆解成16 路DVI 輸出,從而匹配整個沉浸式劇場的16 臺激光投影機。首先需要調整視頻處理器的輸入設置,通過EDID 功能將畫面修改為3840×2400。視頻處理器的輸入信號就是hecoos 多媒體服務器的輸出信號,設置完成后就能在hecoos Pro 軟件輸出管理界面的添加本機顯示中識別到該屏幕。在hecoos Pro 中通過切片功能將4路虛擬屏畫面拼接成一路輸出畫面,在視頻處理器的輸出時序中完成分辨率調整,在拼接設置中實現(xiàn)將一路輸入信號裁切成4 路輸出信號。完成上述設置,就能實現(xiàn)投影畫面軟硬件端的匹配。
本次實驗使用12 個紅外線感應器,在舞臺上搭建了一個4m×6m×3m 的追蹤空間。追蹤對象手持信標器與紅外線纜,在追蹤空間中運動。在BlackTrax GUI 中激活對應的信標器后,就能將數(shù)據(jù)傳輸給TouchDesigner。傳輸?shù)臄?shù)據(jù)類型為Beacon,即被追蹤對象的3D 坐標信息。通過在hecoos Pro 的媒體面板中添加NDI 信號采集,將采集到的媒體信號放入時間線,選擇對應的映射,輸出到虛擬屏中。由于在之前已經(jīng)完成輸出管理即虛擬屏到真實投影機輸出畫面之間的映射,當前只需要在菜單欄中打開所有顯示,就能將畫面?zhèn)鬏斀o對應的投影機打出。最后回到TouchDesigner 中修改Math 元件的參數(shù),使投射出的粒子特效能完美匹配追蹤對象的運動。
圖8 展示的是本次實驗中實時粒子特效效果,投影機打出的粒子特效畫面隨著舞臺上追蹤對象運動而運動。追蹤對象在舞臺中完成慢跑、急停、下蹲、上跳等動作時,粒子特效可實時反饋。整套系統(tǒng)可根據(jù)具體劇目創(chuàng)作需求,實現(xiàn)靈活修改與軟硬件設施拓展。通過修改紅外線感應器的數(shù)量與安裝位置設定追蹤對象的活動范圍,通過增加追蹤范圍內(nèi)信標器與紅外線纜的數(shù)量,實現(xiàn)道具、演員與裝置的多樣化追蹤;通過修改數(shù)據(jù)傳輸類型合理設計追蹤效果方案,通過修改粒子特效的設計呈現(xiàn)不同的視覺感受,通過投影畫面的選擇、拼接與匹配,可實現(xiàn)更加沉浸的效果。因此應合理地應用沉浸式劇場實時粒子特效系統(tǒng),給觀眾帶來更加沉浸的視聽盛宴。
圖8 實時粒子特效效果展示圖
本文基于北京電影學院懷柔校區(qū)千人劇場,搭建了一套沉浸式劇場實時粒子特效系統(tǒng),實現(xiàn)了粒子特效與追蹤對象運動的匹配,目前已實現(xiàn)多追蹤對象的實時追蹤和多投影機的投影特效。但由于TouchDesinger 軟件的限制,無法做到實時特效的觸發(fā),需借由游戲引擎的藍圖功能,進行相關功能的補充并提升可控性。未來隨著空間定位技術與交互技術的不斷發(fā)展,更多的特效形式與交互方案會應用到沉浸式劇場中,從而實現(xiàn)更加真實的虛擬影像交互效果,將為沉浸式劇場的內(nèi)容創(chuàng)作帶來更多的可能性。?