複雑系コンサルティング
手順をおしえてください
マップ画面を毎ステップ画面キャプチャし、連番をつけてpngファイルに出力します。
出力したpngファイルから、Clipchamp等を使って動画ファイルを作成します。
毎ステップ画面キャプチャして、pngファイルを出力するために、UniverseのUniv_InitとUniv_Step_Endの最終行に次のコードを追加します。
// 追加 ScreenShotPNG("Streets", "map" & format_number(GetCountStep(), 4) & ".png")
また、Universeのツールとして、次の関数を定義します。
Function format_number(count As Long, num As Integer) As String { Dim newStr As String Dim i As Integer newStr = "" For i=0 To (num - Len(CStr(count))) - 1 newStr = newStr & "0" Next i newStr = newStr & CStr(count) Return(newStr) }
参考までに、サンプルモデルを修正し、「segregation_png.model」を作成しました。 segregation_png.model
このモデルを実行すると、各ステップに対応した「mapXXXX.png」が作成されます。
動画をそのままキャプチャする方法もあります。
OSの標準機能を利用して画面キャプチャを行うことができます。 下記の操作で、画面の静止画を取り込んだり動画で撮影したりするために必要なコントロールが表示されます。
Windowsキー+G
shift + command + 5
なお、計算時間がかかるモデルの場合は、artisoc上でログ出力機能でログ出力しておき、再生する様子を動画ファイルとしてキャプチャすることでスムーズに動く動画ファイルを作成することができます。
マップ画面を毎ステップ画面キャプチャし、連番をつけてpngファイルに出力します。
出力したpngファイルから、Clipchamp等を使って動画ファイルを作成します。
毎ステップ画面キャプチャして、pngファイルを出力するために、UniverseのUniv_InitとUniv_Step_Endの最終行に次のコードを追加します。
// 追加 ScreenShotPNG("Streets", "map" & format_number(GetCountStep(), 4) & ".png")
また、Universeのツールとして、次の関数を定義します。
Function format_number(count As Long, num As Integer) As String { Dim newStr As String Dim i As Integer newStr = "" For i=0 To (num - Len(CStr(count))) - 1 newStr = newStr & "0" Next i newStr = newStr & CStr(count) Return(newStr) }
参考までに、サンプルモデルを修正し、「segregation_png.model」を作成しました。 segregation_png.model
このモデルを実行すると、各ステップに対応した「mapXXXX.png」が作成されます。