GameAudio & Art
info@mysite.com
123-456-7890
500 Terry Francine Street,
San Francisco, CA 94158
![](https://static.wixstatic.com/media/a9283e_33e87214fd464133a45777e1ef381ea6~mv2.png/v1/fill/w_61,h_61,al_c,q_85,usm_0.66_1.00_0.01,blur_2,enc_auto/01_BRONZE_trans.png)
Track
5
トラックのセットを同セット自動複数作成
![](https://static.wixstatic.com/media/fc32ca_f9681906c77e41e2bb63e2fc71e38167~mv2.png/v1/fill/w_61,h_61,al_c,q_85,usm_0.66_1.00_0.01,blur_2,enc_auto/01_SILVER.png)
RANK
AZSTOKE_TrackSetSameAutoSetter
import sys
sys.path.append(RPR_GetResourcePath() + r"/UserPlugins")
from AZSTOKE_SILVER_python import *
def Msg(parm):
RPR_ShowConsoleMsg(str(parm) + "\n")
trackNameList = ["pl0000","pl1000","pl2000","pl3000","pl4000","pl5000"]
trackColorList = [33554304,33521664,25165824,16777471,21004543,20988032]
masterTrack = AZ_GetTrackItemSelect(0,0,1)
_,_,masterName,_ = AZ_GetTrackItemName(masterTrack,0,1024)
_,_,masterDepth = AZ_GetTrackItemDepth(masterTrack,0)
masterColor = 0
for i, value in enumerate(trackNameList, 0):
if masterName == trackNameList[i]:
AZ_SetTrackItemColor(masterTrack,trackColorList[i])
masterColor = trackColorList[i]
_,childList,masterChildCount = AZ_GetTrackItemChildList(masterTrack)
childInfoList = []
for i, value in enumerate(childList, 0):
childInfoList.insert(i,{})
_,_,childInfoList[i]["TrackName"],_ = AZ_GetTrackItemName(value,"",1024)
AZ_SetTrackItemColor(value,masterColor)
_,_,_,trCount = AZ_GetTrackCountSelect(0,0,0)
deletIDList = []
idCount = 0
for i in range(trCount):
_,_,_,name,_ = AZ_GetTrackIdName(0,i,"",1024)
for e, value in enumerate(trackNameList, 0):
if name == value:
idCount = idCount + 1
deletIDList.append(e)
deletIDList = sorted(deletIDList,reverse = True)
for i in range(idCount):
trackNameList.pop(deletIDList[i])
trackColorList.pop(deletIDList[i])
for i, value in enumerate(trackNameList, 0):
_,_,_,count = AZ_GetTrackCountSelect(0,0,0)
track = AZ_InsertTrackId(0,count)
AZ_SetTrackItemName(track,value)
AZ_SetTrackItemDepth(track,masterDepth)
AZ_SetTrackItemColor(track,trackColorList[i])
for e in range(masterChildCount):
childTrack,_ = AZ_InsertChildTrack(track,0)
AZ_SetTrackItemName(childTrack,childInfoList[e]["TrackName"])
AZ_SetTrackItemColor(childTrack,trackColorList[i])
import sys
sys.path.append(RPR_GetResourcePath() + r"/UserPlugins")
from AZSTOKE_SILVER_python import *
・SilverAPI利用可能にする
def Msg(parm):
RPR_ShowConsoleMsg(str(parm) + "\n")
・デバック用のコンソール出力関数
trackNameList = ["pl0000","pl1000","pl2000","pl3000","pl4000","pl5000"]
trackColorList = [33554304,33521664,25165824,16777471,21004543,20988032]
・指定の名前と色を設定
masterTrack = AZ_GetTrackItemSelect(0,0,1)
・選択トラックの先頭を取得してmasterTrackに代入
_,_,masterName,_ = AZ_GetTrackItemName(masterTrack,0,1024)
・masterTrackの名前を取得してmasterNameに代入
_,_,masterDepth = AZ_GetTrackItemDepth(masterTrack,0)
・masterTrackの階層を取得してmasterDepthに代入
masterColor = 0
・masterColorの初期値を設定
for i, value in enumerate(trackNameList, 0):
・trackNameList分Forループ
if masterName == trackNameList[i]:
・masterNameと各trackNameListが一致したら以下を実行
AZ_SetTrackItemColor(masterTrack,trackColorList[i])
・masterTrackに色を設定
masterColor = trackColorList[i]
・設定した色をmasterColorに代入
_,childList,masterChildCount = AZ_GetTrackItemChildList(masterTrack)
・masterTrackの子トラックリストと数を取得してchildListとmasterChildCountに代入
childInfoList = []
・childInfoListの配列初期化
for i, value in enumerate(childList, 0):
・childList分Forループ
childInfoList.insert(i,{})
・childInfoListに枠を追加
_,_,childInfoList[i]["TrackName"],_ = AZ_GetTrackItemName(value,"",1024)
・childInfoListにTrackNameのキーに名前を代入
AZ_SetTrackItemColor(value,masterColor)
・子トラックにmasterColorの色設定
_,_,_,trCount = AZ_GetTrackCountSelect(0,0,0)
・現在のトラックの数を取得
deletIDList = []
・deletIDListの初期化
idCount = 0
・idCountの初期化
for i in range(trCount):
・trCount分Forループ
_,_,_,name,_ = AZ_GetTrackIdName(0,i,"",1024)
・各トラックの名前を取得してnameに代入
for e, value in enumerate(trackNameList, 0):
・trackNameList分Forループ
if name == value:
・nameにtrackNameListを確認して一致すれば以下を実行
idCount = idCount + 1
・一致したらidCountを+1
deletIDList.append(e)
・deletIDListにindexを追加
deletIDList = sorted(deletIDList,reverse = True)
・deletIDListを降順に設定
for i in range(idCount):
・idCount分Forループ
trackNameList.pop(deletIDList[i])
trackColorList.pop(deletIDList[i])
・deletIDListのindexに沿って後ろから削除
for i, value in enumerate(trackNameList, 0):
・trackNameList分Forループ
_,_,_,count = AZ_GetTrackCountSelect(0,0,0)
・トラックの数を取得してcountに代入
track = AZ_InsertTrackId(0,count)
・トラックの数にすることでトラックの最後にトラックをインサートする
AZ_SetTrackItemName(track,value)
・トラックに名前を設定
AZ_SetTrackItemDepth(track,masterDepth)
・トラックの階層を設定
AZ_SetTrackItemColor(track,trackColorList[i])
・トラックに色を設定
for e in range(masterChildCount):
・子トラックの数分Forループ
childTrack,_ = AZ_InsertChildTrack(track,0)
・子トラックを追加
AZ_SetTrackItemName(childTrack,childInfoList[e]["TrackName"])
・子トラックに名前を設定
AZ_SetTrackItemColor(childTrack,trackColorList[i])
・子トラックに色を設定
ベースのトラック/子トラックを作成しておく