SuperMarioOdysseyOnline/source/al/execute/ExecuteTables.cpp

480 lines
38 KiB
C++
Raw Normal View History

#include <string_view>
#include "al/execute/ExecuteOrder.h"
#include "al/execute/ExecuteTable.h"
#include "al/execute/ExecuteTableHolderDraw.h"
#include "al/execute/ExecuteTableHolderUpdate.h"
static constexpr al::ExecuteOrder drawTableArr[] = {
// 3D(カリング)
{"カリング", "ActorModelDrawCulling", 512, "システム"},
// 3D(デプスシャドウ)
{"デプスシャドウ[キャラクター]", "ActorModelDrawDepthShadow", 192, ""},
{"デプスシャドウ[地形]", "ActorModelDrawDepthShadow", 192, ""},
{"デプスシャドウ[マーチングキューブ]", "ActorModelDrawDepthShadowMarchingCube", 16, ""},
{"デプスシャドウ[独自]", "Functor", 16, ""},
// 3D(デプスシャドウプレイヤー)
{"デプスシャドウ[プレイヤー]", "ActorModelDrawDepthShadow", 128, ""},
{"Mii[顔モデル](デプスシャドウ)", "Draw", 8, ""},
// 3D(スタティックデプスシャドウ)
{"スタティックデプスシャドウ[地形]", "ActorModelDrawStaticDepthShadow", 128, ""},
// ワールドAo
{"ワールドAo[地形]", "ActorModelDrawWorldAo", 192, ""},
// 3D(海用デプス)
{"海用デプス[浜辺]", "ActorModelDrawWorldAo", 8, ""},
{"海用デプス[高さ]", "ActorModelDrawWorldAo", 8, ""},
// 3D(空)
{"", "ActorModelDraw", 8, "地形"},
// 3D(不透明Zプリパス)
{"Zプリパス[カリング]", "ActorModelDrawDepthOnly", 512, "地形"},
{"Zプリパス[キャラクター]", "ActorModelDrawDepthOnly", 128, ""},
{"Zプリパス[地形]", "ActorModelDrawDepthOnly", 128, "地形"},
{"Zプリパス[遠景]", "ActorModelDrawDepthOnly", 128, "地形"},
{"Zプリパス[ディザ]", "ActorModelDrawDepthDither", 196, ""},
{"プレイヤー", "ActorModelDrawDepthDither", 196, "プレイヤー"},
// 3D(ディファード地形)
{"地形オブジェ[地形前]", "ActorModelDrawDeferred", 128, "地形オブジェ"},
{"地形オブジェ[地形前ディファードのみ]", "ActorModelDrawDeferredOnly", 32, "地形オブジェ"},
{"地形オブジェ[地形前ディファード不透明のみ]", "ActorModelDrawDeferredOpa", 16, "地形オブジェ"},
{"敵[地形前]", "ActorModelDrawDeferred", 16, ""},
{"敵[地形前ディファード不透明のみ]", "ActorModelDrawDeferredOpa", 16, ""},
{"[地形前]", "ActorModelDrawDeferred", 16, ""},
{"[地形前ディファード不透明のみ]", "ActorModelDrawDeferredOpa", 16, ""},
{"プレイヤー[地形前]", "ActorModelDrawDeferred", 16, "プレイヤー"},
{"地形[浮遊]", "ActorModelDrawDeferred", 32, "地形"},
{"地形", "ActorModelDrawDeferred", 256, "地形"},
{"地形[ディファード]", "ActorModelDrawDeferredOnly", 32, "地形"},
{"地形[ディファードのみ]", "ActorModelDrawDeferredOnly", 32, "地形"},
{"地形[ディファード不透明]", "ActorModelDrawDeferredOpa", 16, "地形"},
{"地形[ディファード不透明のみ]", "ActorModelDrawDeferredOpa", 64, "地形"},
{"地形[埋没]", "ActorModelDrawDeferred", 32, "地形"},
// 3D(ディファード鏡映り込みなし)
{"地形[鏡映り込みなし]", "ActorModelDrawDeferred", 32, "地形"},
// 3D(ディファードキャラクター)
{"シャドウマスク[地形オブジェ]", "Draw", 3, ""},
{"足跡", "ActorModelDrawDeferredFootPrint", 4, "プレイヤー"},
{"地形オブジェ", "ActorModelDrawDeferred", 128, "地形オブジェ"},
{"地形オブジェ[ディファードのみ]", "ActorModelDrawDeferredOnly", 16, "地形オブジェ"},
{"地形オブジェ[ディファード不透明のみ]", "ActorModelDrawDeferredOpa", 16, "地形オブジェ"},
{"地形オブジェ[マーチングキューブ]", "ActorModelDrawDeferredMarchingCube", 32, "地形オブジェ"},
{"地形[地形オブジェ後]", "ActorModelDrawDeferred", 32, "地形"},
{"敵[シルエット前]", "ActorModelDrawDeferred", 128, ""},
{"アクター描画[シルエット前]", "ActorDraw", 8, "アクター"},
{"シルエット[プレイヤー]", "ActorModelDrawDeferredSilhouette", 196, "プレイヤー"},
{"シルエット[オブジェ]", "ActorModelDrawDeferredSilhouette", 64, "地形オブジェ"},
{"シルエットモデル[敵]", "ActorModelDrawDeferred", 64, ""},
{"地形[シルエット後]", "ActorModelDrawDeferred", 32, "地形"},
{"地形オブジェ[シルエット後]", "ActorModelDrawDeferred", 32, "地形オブジェ"},
{"シャドウマスク[敵]", "Draw", 3, ""},
{"", "ActorModelDrawDeferred", 128, ""},
{"敵[ディファードのみ]", "ActorModelDrawDeferredOnly", 16, ""},
{"敵[ディファード不透明のみ]", "ActorModelDrawDeferredOpa", 16, ""},
{"", "ActorModelDrawDeferred", 96, ""},
{"[ディファードのみ]", "ActorModelDrawDeferredOnly", 8, ""},
{"[ディファード不透明のみ]", "ActorModelDrawDeferredOpa", 8, ""},
{"Mii[顔モデル]", "Draw", 4, "システム"},
{"シャドウマスク[アイテム]", "Draw", 3, ""},
{"アイテム", "ActorModelDrawDeferred", 64, "アイテム"},
{"アイテム[ディファードのみ]", "ActorModelDrawDeferredOnly", 8, "アイテム"},
{"アイテム[ディファード不透明のみ]", "ActorModelDrawDeferredOpa", 8, "アイテム"},
// 3D(ディファード異空間)
{"異空間オブジェ", "ActorModelDrawDeferred", 64, "地形オブジェ"},
// 3D(ディファードプレイヤー)
{"シャドウマスク[プレイヤー]", "Draw", 4, ""},
{"プレイヤー", "ActorModelDrawDeferred", 196, "プレイヤー"},
{"プレイヤー装飾", "ActorModelDrawDeferred", 32, "プレイヤー"},
{"プレイヤー装飾[ディファード不透明のみ]", "ActorModelDrawDeferredOpa", 16, "プレイヤー"},
// 3D(ディファード中景)
{"地形オブジェ[キャラ後]", "ActorModelDrawDeferred", 32, "地形オブジェ"},
{"シャドウマスク[ブロック]", "Draw", 3, ""},
{"中景", "ActorModelDrawDeferred", 8, "地形"},
{"中景[ディファードのみ]", "ActorModelDrawDeferredOnly", 8, "地形"},
{"中景[ディファード不透明のみ]", "ActorModelDrawDeferredOpa", 8, "地形"},
{"大気散乱", "Draw", 1, "地形"},
{"ディファード空", "ActorModelDrawDeferredSky", 16, "地形"},
{"ディファード空[デモ]", "ActorModelDrawDeferredSky", 8, "地形"},
// 3D(ディファード半透明)
{"地形[ディファード半透明]", "ActorModelDrawDeferredXlu", 8, "地形"},
{"地形[ディファード半透明のみ]", "ActorModelDrawDeferredXlu", 8, "地形"},
{"地形オブジェ[ディファード半透明]", "ActorModelDrawDeferredXlu", 8, "地形オブジェ"},
{"地形オブジェ[ディファード半透明のみ]", "ActorModelDrawDeferredXlu", 8, "地形オブジェ"},
{"敵[ディファード半透明]", "ActorModelDrawDeferredXlu", 8, ""},
{"敵[ディファード半透明のみ]", "ActorModelDrawDeferredXlu", 8, ""},
{"[ディファード半透明]", "ActorModelDrawDeferredXlu", 8, ""},
{"[ディファード半透明のみ]", "ActorModelDrawDeferredXlu", 8, ""},
{"アイテム[ディファード半透明]", "ActorModelDrawDeferredXlu", 8, "アイテム"},
{"アイテム[ディファード半透明のみ]", "ActorModelDrawDeferredXlu", 8, "アイテム"},
{"プレイヤー装飾[ディファード半透明]", "ActorModelDrawDeferredXlu", 8, "プレイヤー"},
{"プレイヤー装飾[ディファード半透明のみ]", "ActorModelDrawDeferredXlu", 16, "プレイヤー"},
{"シャドウマスク[モデルライト後]", "Draw", 4, ""},
{"アクター描画", "ActorDraw", 8, "アクター"},
// 3D(デプスクリアプレイヤー)
{"プレイヤー", "ActorModelDrawDepthForce", 196, "プレイヤー"},
{"プレイヤー装飾[ディファード不透明のみ]", "ActorModelDrawDepthForce", 16, "プレイヤー"},
{"プレイヤー装飾[ディファード半透明のみ]", "ActorModelDrawDepthForce", 16, "プレイヤー"},
{"プレイヤー装飾[フォワードのみ]", "ActorModelDrawDepthForce", 16, "プレイヤー"},
{"プレイヤー装飾[インダイレクトのみ]", "ActorModelDrawDepthForce", 16, "プレイヤー"},
// 3D(フォワード遠景)
{"遠景[ライトバッファ]", "ActorModelDraw", 8, "地形"},
{"遠景[ライトバッファのみ]", "ActorModelDrawForwardOnly", 8, "地形"},
{"大気散乱雲遠距離[ライトバッファ]", "ActorModelDraw", 8, "地形"},
{"大気散乱雲遠距離[ライトバッファのみ]", "ActorModelDrawForwardOnly", 8, "地形"},
{"大気散乱雲[ライトバッファ]", "ActorModelDraw", 8, "地形"},
{"大気散乱雲[ライトバッファのみ]", "ActorModelDrawForwardOnly", 8, "地形"},
{"大気散乱雲近距離[ライトバッファ]", "ActorModelDraw", 8, "地形"},
{"大気散乱雲近距離[ライトバッファのみ]", "ActorModelDrawForwardOnly", 8, "地形"},
// 3D(フォワードプレイヤー)
{"Zプリパス[プレイヤー]", "ActorModelDrawDepthOnly", 32, "プレイヤー"},
{"プレイヤー[地形前]", "ActorModelDrawForwardForce", 16, "プレイヤー"},
{"プレイヤー", "ActorModelDrawForwardForce", 196, "プレイヤー"},
{"Zプリパス[プレイヤー装飾]", "ActorModelDrawDepthDither", 128, "プレイヤー"},
{"プレイヤー装飾", "ActorModelDrawForwardForce", 32, "プレイヤー"},
{"プレイヤー装飾[ディファード不透明のみ]", "ActorModelDrawForwardForce", 16, "プレイヤー"},
// 3D(フォワード)
{"半透明Zプリパス", "ActorModelDrawDepthXlu", 8, "地形"},
{"フォワードZプリパス[ディザ]", "ActorModelDrawDepthDither", 8, "地形"},
{"中景[フォワード]", "ActorModelDraw", 8, "地形"},
{"中景[フォワードのみ]", "ActorModelDrawForwardOnly", 8, "地形"},
{"大気散乱雲[フォワード]", "ActorModelDraw", 8, "地形"},
{"大気散乱雲[フォワードのみ]", "ActorModelDrawForwardOnly", 8, "地形"},
{"地形[フォワード]", "ActorModelDraw", 32, "地形"},
{"地形[フォワードのみ]", "ActorModelDrawForwardOnly", 48, "地形"},
{"地形オブジェ[フォワード]", "ActorModelDraw", 32, "地形オブジェ"},
{"地形オブジェ[フォワードのみ]", "ActorModelDrawForwardOnly", 32, "地形オブジェ"},
{"敵[フォワード]", "ActorModelDraw", 32, ""},
{"敵[フォワードのみ]", "ActorModelDrawForwardOnly", 16, ""},
{"[フォワード]", "ActorModelDraw", 32, ""},
{"[フォワードのみ]", "ActorModelDrawForwardOnly", 8, ""},
{"アイテム[フォワード]", "ActorModelDraw", 32, "アイテム"},
{"アイテム[フォワードのみ]", "ActorModelDrawForwardOnly", 8, "アイテム"},
{"プレイヤー[フォワード]", "ActorModelDraw", 8, "プレイヤー"},
{"プレイヤー装飾[フォワード]", "ActorModelDraw", 8, "プレイヤー"},
{"プレイヤー装飾[フォワードのみ]", "ActorModelDrawForwardOnly", 16, "プレイヤー"},
{"アクター描画[フォワード]", "ActorDraw", 8, "アクター"},
// 3D(インダイレクト)
{"半透明Zプリパス[インダイレクト]", "ActorModelDrawDepthIndirect", 8, "地形"},
{"インダイレクトZプリパス[ディザ]", "ActorModelDrawDepthDitherIndirect", 8, "地形"},
{"地形[インダイレクト]", "ActorModelDrawIndirect", 32, "地形"},
{"地形[インダイレクトのみ]", "ActorModelDrawIndirectOnly", 16, "地形"},
{"地形オブジェ[インダイレクト]", "ActorModelDrawIndirect", 32, "地形オブジェ"},
{"地形オブジェ[インダイレクトのみ]", "ActorModelDrawIndirectOnly", 32, "地形オブジェ"},
{"コイン[インダイレクト]", "ActorModelDrawIndirect", 8, "アイテム"},
{"ルート土管内側[インダイレクト]", "ActorModelDrawIndirect", 32, "地形オブジェ"},
{"ルート土管外側[インダイレクト]", "ActorModelDrawIndirect", 32, "地形オブジェ"},
{"敵[インダイレクト]", "ActorModelDrawIndirect", 32, ""},
{"敵[インダイレクトのみ]", "ActorModelDrawIndirectOnly", 8, ""},
{"[インダイレクト]", "ActorModelDrawIndirect", 32, ""},
{"[インダイレクトのみ]", "ActorModelDrawIndirectOnly", 8, ""},
{"アイテム[インダイレクト]", "ActorModelDrawIndirect", 32, "アイテム"},
{"アイテム[インダイレクトのみ]", "ActorModelDrawIndirectOnly", 32, "アイテム"},
{"プレイヤー装飾[インダイレクト]", "ActorModelDrawIndirect", 8, "プレイヤー"},
{"プレイヤー装飾[インダイレクトのみ]", "ActorModelDrawIndirectOnly", 8, "プレイヤー"},
{"アクター描画[インダイレクト]", "ActorDraw", 8, "アクター"},
// 3D(インダイレクト後フォワード)
{"半透明Zプリパス[インダイレクト後]", "ActorModelDrawDepthIndirect", 8, "地形"},
{"地形オブジェ[フォワードインダイレクト後のみ]", "ActorModelDrawForwardOnly", 8,
"地形オブジェ"},
{"敵[フォワードインダイレクト後]", "ActorModelDraw", 32, ""},
// 3D(インダイレクト後遠景)
{"大気散乱雲[インダイレクト後]", "ActorModelDraw", 8, "地形"},
{"大気散乱雲[インダイレクト後のみ]", "ActorModelDrawForwardOnly", 8, "地形"},
// 3D(フォグ後インダイレクト)
{"地形[インダイレクトフォグ後]", "ActorModelDrawIndirect", 8, "地形"},
{"地形[インダイレクトフォグ後のみ]", "ActorModelDrawIndirectOnly", 8, "地形"},
{"敵[インダイレクトフォグ後]", "ActorModelDrawIndirect", 8, ""},
{"敵[インダイレクトフォグ後のみ]", "ActorModelDrawIndirectOnly", 8, ""},
{"アイテム[インダイレクトフォグ後]", "ActorModelDrawIndirect", 32, "アイテム"},
{"アイテム[インダイレクトフォグ後のみ]", "ActorModelDrawIndirectOnly", 32, "アイテム"},
// 3D(フォグ後遠景)
{"遠景[フォグ後]", "ActorModelDraw", 8, "地形"},
{"遠景[フォグ後のみ]", "ActorModelDrawForwardOnly", 8, "地形"},
{"大気散乱雲[フォグ後]", "ActorModelDraw", 8, "地形"},
{"大気散乱雲[フォグ後のみ]", "ActorModelDrawForwardOnly", 8, "地形"},
// 3D(フォグ後)
{"半透明Zプリパス[フォグ後]", "ActorModelDrawDepthXlu", 8, "地形"},
{"地形[フォグ後]", "ActorModelDraw", 8, "地形"},
{"地形[フォグ後のみ]", "ActorModelDrawForwardOnly", 8, "地形"},
{"地形オブジェ[フォグ後]", "ActorModelDraw", 8, "地形オブジェ"},
{"地形オブジェ[フォグ後のみ]", "ActorModelDrawForwardOnly", 8, "地形オブジェ"},
{"敵[フォグ後]", "ActorModelDraw", 8, ""},
{"敵[フォグ後のみ]", "ActorModelDrawForwardOnly", 8, ""},
{"[フォグ後]", "ActorModelDraw", 8, ""},
{"[フォグ後のみ]", "ActorModelDrawForwardOnly", 8, ""},
// 3D(クロマキーZプリパス)
{"Zプリパス[プレイヤークロマキー]", "ActorModelDrawDepthChromakey", 208, "プレイヤー"},
{"Zプリパス[NPCクロマキー]", "ActorModelDrawDepthChromakey", 32, ""},
{"Zプリパス[ディザクロマキー]", "ActorModelDrawDitherChromakey", 208, "プレイヤー"},
// 3D(クロマキープレイヤー)
{"プレイヤー[クロマキー]", "ActorModelDrawPlayerChromakey", 208, "プレイヤー"},
{"プレイヤー[クロマキー不透明]", "ActorModelDrawPlayerChromakeyOpa", 208, "プレイヤー"},
{"プレイヤー[クロマキー半透明]", "ActorModelDrawPlayerChromakeyXlu", 64, "プレイヤー"},
// 3D(クロマキーキャラクター)
{"[クロマキー]", "ActorModelDrawCharacterChromakey", 32, ""},
// 2Dバック(メイン画面)
{"2Dバック", "LayoutDraw", 64, "レイアウト"},
// 2Dベース(メイン画面)
{"2Dベース", "LayoutDraw", 32, "レイアウト"},
{"2D情報バルーン", "LayoutDraw", 64, "レイアウト"},
{"2D会話バルーン", "LayoutDraw", 128, "レイアウト"},
{"", "LayoutDraw", 256, "レイアウト"},
{"2Dフィルターバルーン", "LayoutDraw", 64, "レイアウト"},
{"2Dフィルター", "LayoutDraw", 32, "レイアウト"},
{"2D(メイン画面のみ)", "LayoutDraw", 32, "レイアウト"},
{"2Dガイド", "LayoutDraw", 64, "レイアウト"},
{"2Dカウンター", "LayoutDraw", 32, "レイアウト"},
{"2Dマップアイコン", "LayoutDraw", 32, "レイアウト"},
{"2D通知", "LayoutDraw", 8, "レイアウト"},
// 2Dエフェクト(メイン画面)
{"2Dベースエフェクト", "Draw", 1, "エフェクト"},
// 2Dオーバー(メイン画面)
{"2Dヘッド", "LayoutDraw", 16, "レイアウト"},
{"2Dポーズ", "LayoutDraw", 32, "レイアウト"},
{"2Dランキング", "LayoutDraw", 4, "レイアウト"},
{"2Dライン", "LayoutDraw", 8, "レイアウト"},
{"2Dアイコン[最低]", "LayoutDraw", 32, "レイアウト"},
{"2Dアイコン[低]", "LayoutDraw", 32, "レイアウト"},
{"2Dアイコン[中]", "LayoutDraw", 16, "レイアウト"},
{"2Dアイコン[高]", "LayoutDraw", 356, "レイアウト"},
{"2Dアイコン[最高]", "LayoutDraw", 16, "レイアウト"},
{"2Dカーソル", "LayoutDraw", 12, "レイアウト"},
{"2Dリスト", "LayoutDraw", 12, "レイアウト"},
{"2Dリストアイコン", "LayoutDraw", 256, "レイアウト"},
{"2Dリストカーソル", "LayoutDraw", 8, "レイアウト"},
{"2Dゲームオーバー", "LayoutDraw", 8, "レイアウト"},
{"2Dカバー", "LayoutDraw", 8, "レイアウト"},
{"2Dエフェクト", "Draw", 1, "エフェクト"},
{"2Dワイプ[ウィンドウ前]", "LayoutDraw", 4, "レイアウト"},
{"2Dウィンドウ", "LayoutDraw", 24, "レイアウト"},
{"2Dウィンドウカウンター", "LayoutDraw", 8, "レイアウト"},
{"2Dワイプ", "LayoutDraw", 48, "レイアウト"},
{"2Dリザルト", "LayoutDraw", 4, "レイアウト"},
// 2D(デモ画面)
{"2Dデモベース", "LayoutDraw", 16, "レイアウト"},
{"2Dデモ", "LayoutDraw", 96, "レイアウト"},
{"2Dデモ情報バルーン", "LayoutDraw", 16, "レイアウト"},
{"2Dデモライン", "LayoutDraw", 8, "レイアウト"},
{"2Dデモアイコン", "LayoutDraw", 196, "レイアウト"},
{"2Dデモアイコンオーバー", "LayoutDraw", 128, "レイアウト"},
{"2Dデモアイコンプレイヤー", "LayoutDraw", 4, "レイアウト"},
{"2Dデモカーソル", "LayoutDraw", 8, "レイアウト"},
// ポストエフェクトマスク
{"ポストエフェクトマスク", "ActorModelDrawPostEffectMask", 32, "地形"},
// アクター描画(独自レンダーターゲット)
{"アクター描画[独自レンダーターゲット]", "ActorDraw", 8, "アクター"},
// アクター描画(プロジェクト固有)
{"アクター描画(プロジェクト固有)", "ActorDraw", 8, "アクター"},
// モデル描画バッファ更新
{"モデル描画バッファ更新", "ActorModelDrawUpdate", 1024, "システム"},
// 3D(ワールドマップディファード)
{"ワールドマップ地形", "ActorModelDrawDeferred", 128, "地形"},
{"ワールドマップ地形[ディファードのみ]", "ActorModelDrawDeferredOnly", 8, "地形"},
{"ワールドマップディファード空", "ActorModelDrawDeferredSky", 8, "地形"},
{"ワールドマップ地形[ディファード半透明]", "ActorModelDrawDeferredXlu", 16, "地形"},
// 3D(ワールドマップフォワード)
{"ワールドマップ地形[フォワード]", "ActorModelDraw", 32, "地形"},
{"ワールドマップ地形[フォワードのみ]", "ActorModelDrawForwardOnly", 8, "地形"},
{"ワールドマップ地形オブジェ[フォワード]", "ActorModelDraw", 8, "地形オブジェ"},
// 2D(ワールドマップ画面)
{"2Dワールドマップベース", "LayoutDraw", 32, "レイアウト"},
{"2Dワールドマップ", "LayoutDraw", 32, "レイアウト"},
// 2D(ムーンゲット画面)
{"2D(ムーンゲット)", "LayoutDraw", 8, "レイアウト"},
{"2Dカウンター(ムーンゲット)", "LayoutDraw", 1, "レイアウト"},
{"2Dワイプ(ムーンゲット)", "LayoutDraw", 4, "レイアウト"},
// 2D(スナップショット)
{"2Dスナップショット", "LayoutDraw", 3, "レイアウト"},
// 2D(撮影用)
{"2D撮影用", "LayoutDraw", 16, "レイアウト"},
// 2D(ミス)
{"2Dミス", "LayoutDraw", 2, "レイアウト"},
// Custom Entries
{"PuppetActor", "ActorModelDrawDeferred", 512, "ボス"}
};
static constexpr al::ExecuteOrder updateTableArr[] = {
// Update Table Name: 更新
{"ステージ同期カウンタ", "Execute", 1, "システム"},
{"乗り物(カメラ前)[Movement]", "ActorMovement", 8, "乗り物"},
{"カメラ前プレイヤー[Movement]", "ActorMovement", 16, "プレイヤー"},
{"カメラ前プレイヤー", "ActorMovementCalcAnim", 16, "プレイヤー"},
{"カメラ", "Execute", 1, "カメラ"},
{"クリッピング", "Execute", 1, "システム"},
{"センサー", "Execute", 1, "システム"},
{"試作用処理1", "Execute", 2, "システム"},
{"試作用処理2", "Execute", 8, "システム"},
{"試作用処理3", "Execute", 2, "システム"},
{"試作用処理4", "Execute", 1, "システム"},
{"", "ActorMovementCalcAnim", 16, "地形"},
{"", "ActorMovement", 16, "地形"},
{"遠景", "ActorMovementCalcAnim", 8, "地形"},
{"コリジョン地形", "ActorMovementCalcAnim", 256, "地形"},
{"コリジョン地形[デモ]", "ActorMovementCalcAnim", 64, "地形"},
{"コリジョン地形[Movement]", "ActorMovement", 32, "地形"},
{"コリジョン地形装飾", "ActorMovementCalcAnim", 32, "地形"},
{"コリジョン地形装飾[Movement]", "ActorMovement", 32, "地形"},
{"コリジョン地形オブジェ", "ActorMovementCalcAnim", 64, "地形オブジェ"},
{"コリジョン地形オブジェ[Movement]", "ActorMovement", 32, "地形オブジェ"},
{"コリジョンディレクター", "Execute", 1, "システム"},
{"地形オブジェ", "ActorMovementCalcAnim", 128, "地形オブジェ"},
{"地形オブジェ[Movement]", "ActorMovement", 32, "地形オブジェ"},
{"地形オブジェ装飾", "ActorMovementCalcAnim", 32, "地形オブジェ"},
{"乗り物", "ActorMovementCalcAnim", 32, "乗り物"},
{"エフェクトオブジェ", "ActorMovement", 32, "エフェクト"},
{"デモプレイヤーロケーター", "ActorMovementCalcAnim", 4, "プレイヤー"},
{"デモプレイヤー前処理", "ActorMovement", 16, "プレイヤー"},
{"プレイヤー前処理", "Functor", 1, "プレイヤー"},
{"プレイヤー[Movement]", "ActorMovement", 16, "プレイヤー"},
{"プレイヤー", "ActorMovementCalcAnim", 128, "プレイヤー"},
{"プレイヤー後処理", "Functor", 1, "プレイヤー"},
{"プレイヤー装飾", "ActorMovementCalcAnim", 64, "プレイヤー"},
{"プレイヤー装飾2", "ActorMovementCalcAnim", 64, "プレイヤー"},
{"帽子(武器)", "ActorMovementCalcAnim", 1, "アイテム"},
{"帽子(表示)", "ActorMovementCalcAnim", 16, "アイテム"},
{"", "ActorMovementCalcAnim", 128, ""},
{"敵[Movement]", "ActorMovement", 32, ""},
{"敵装飾", "ActorMovementCalcAnim", 32, ""},
{"敵装飾[Movement]", "ActorMovement", 32, ""},
{"デモ", "ActorMovementCalcAnim", 32, "地形"},
{"デモ装飾", "ActorMovementCalcAnim", 32, "地形"},
{"デモオブジェクト", "ActorMovement", 32, "地形"},
{"", "ActorMovementCalcAnim", 64, ""},
{"NPC装飾", "ActorMovementCalcAnim", 32, ""},
{"帽子装着位置更新", "Functor", 8, "システム"},
{"NPCイベントディレクター", "Execute", 1, "システム"},
{"エリア監視オブジェ", "Execute", 8, "システム"},
{"通知レイアウト更新", "Execute", 3, "システム"},
{"バルーン位置更新", "Execute", 1, "システム"},
{"ネットワーク", "Execute", 2, "システム"},
{"プレイヤーゴースト管理", "Execute", 1, "プレイヤー"},
{"エコーエミッター管理", "Execute", 1, "地形オブジェ"},
{"メッシュ変形モデル管理", "Execute", 1, "地形オブジェ"},
{"アイテム", "ActorMovementCalcAnim", 64, "アイテム"},
{"アイテム[デモ]", "ActorMovementCalcAnim", 64, "アイテム"},
{"アイテム[Movement]", "ActorMovement", 16, "アイテム"},
{"シャドウマスク", "ActorMovement", 64, ""},
{"グラフィックス要求者", "ActorMovement", 64, "システム"},
{"プロジェクト用グラフィックス", "Execute", 64, "システム"},
{"監視オブジェ", "ActorMovement", 32, "システム"},
{"キッズルートガイド管理", "ActorMovement", 1, "システム"},
{"キッズルートガイド", "ActorMovementCalcAnim", 4, "システム"},
{"サウンド制御", "ActorMovement", 10, "システム"},
{"ステージスイッチディレクター", "Execute", 1, "システム"},
{"", "LayoutUpdate", 404, "レイアウト"},
{"2D(ポーズ無視)", "LayoutUpdate", 360, "レイアウト"},
{"エフェクト(前処理)", "Functor", 1, "エフェクト"},
{"エフェクト(3D)", "Execute", 1, "エフェクト"},
{"エフェクト(プレイヤー)", "Execute", 1, "エフェクト"},
{"エフェクト(Zソート)", "Execute", 1, "エフェクト"},
{"エフェクト(カメラデモ)", "Execute", 1, "エフェクト"},
{"エフェクト(カメラ前エフェクト)", "Execute", 1, "エフェクト"},
{"エフェクト(ベース2D)", "Execute", 1, "エフェクト"},
{"エフェクト(2D)", "Execute", 1, "エフェクト"},
{"エフェクト(後処理)", "Functor", 1, "エフェクト"},
// Update Table Name: ビュー更新(コア1)
{"ビュー更新(コア1)", "ActorCalcView", 512, "システム"},
// Update Table Name: ビュー更新(コア2)
{"ビュー更新(コア2)", "ActorCalcView", 1024, "システム"},
// Update Table Name: スナップショット
{"スナップショット[CalcAnim]", "ActorCalcAnim", 16, "NPC"},
{"スナップショット[ActorMovement]", "ActorMovement", 1, "地形オブジェ"},
// Custom Tables
{"PuppetActor", "ActorMovementCalcAnim", 512, "ボス"}
};
static constexpr int getUpdateTableIndex(const char* listName) {
for (int i = 0; i < sizeof(updateTableArr) / sizeof(updateTableArr[0]); i++) {
if (std::string_view(updateTableArr[i].mListName)==listName) {
return i;
}
}
return 0;
}
static constexpr al::ExecuteTable createUpdateTable(const char* tableName, const char* startListName, const char* endListName) {
al::ExecuteTable drawTable;
drawTable.mName = tableName;
int startIndex = getUpdateTableIndex(startListName);
drawTable.mExecuteOrders = &updateTableArr[startIndex];
drawTable.mExecuteOrderCount = (getUpdateTableIndex(endListName) - startIndex) + 1;
return drawTable;
}
static constexpr int getDrawTableIndex(const char* listName, const char *groupName) {
for (int i = 0; i < sizeof(drawTableArr)/sizeof(drawTableArr[0]); i++) {
if (std::string_view(drawTableArr[i].mListName)==listName && std::string_view(drawTableArr[i].mExecuteGroup)==groupName) {
return i;
}
}
return 0;
}
static constexpr al::ExecuteTable createDrawTable(const char* tableName, const char* startListName, const char *groupStartName, const char* endListName, const char *groupEndName) {
al::ExecuteTable drawTable;
drawTable.mName = tableName;
int startIndex = getDrawTableIndex(startListName, groupStartName);
drawTable.mExecuteOrders = &drawTableArr[startIndex];
drawTable.mExecuteOrderCount = (getDrawTableIndex(endListName, groupEndName) - startIndex) + 1;
return drawTable;
}
constexpr al::ExecuteTable drawTable[] = {
createDrawTable("3D(カリング)", "カリング", "ActorModelDrawCulling", "カリング", "ActorModelDrawCulling"),
createDrawTable("3D(デプスシャドウ)", "デプスシャドウ[キャラクター]", "ActorModelDrawDepthShadow", "デプスシャドウ[独自]", "Functor"),
createDrawTable("3D(デプスシャドウプレイヤー)", "デプスシャドウ[プレイヤー]", "ActorModelDrawDepthShadow", "Mii[顔モデル](デプスシャドウ)", "Draw"),
createDrawTable("3D(スタティックデプスシャドウ)", "スタティックデプスシャドウ[地形]", "ActorModelDrawStaticDepthShadow", "スタティックデプスシャドウ[地形]", "ActorModelDrawStaticDepthShadow"),
createDrawTable("ワールドAo", "ワールドAo[地形]", "ActorModelDrawWorldAo", "ワールドAo[地形]", "ActorModelDrawWorldAo"),
createDrawTable("3D(海用デプス)", "海用デプス[浜辺]", "ActorModelDrawWorldAo", "海用デプス[高さ]", "ActorModelDrawWorldAo"),
createDrawTable("3D(空)", "", "ActorModelDraw", "", "ActorModelDraw"),
createDrawTable("3D(不透明Zプリパス)", "Zプリパス[カリング]", "ActorModelDrawDepthOnly", "プレイヤー", "ActorModelDrawDepthDither"),
createDrawTable("3D(ディファード地形)", "地形オブジェ[地形前]", "ActorModelDrawDeferred", "地形[埋没]", "ActorModelDrawDeferred"),
createDrawTable("3D(ディファード鏡映り込みなし)", "地形[鏡映り込みなし]", "ActorModelDrawDeferred", "地形[鏡映り込みなし]", "ActorModelDrawDeferred"),
createDrawTable("3D(ディファードキャラクター)", "シャドウマスク[地形オブジェ]", "Draw", "アイテム[ディファード不透明のみ]", "ActorModelDrawDeferredOpa"),
createDrawTable("3D(ディファード異空間)", "異空間オブジェ", "ActorModelDrawDeferred", "異空間オブジェ", "ActorModelDrawDeferred"),
createDrawTable("3D(ディファードプレイヤー)", "シャドウマスク[プレイヤー]", "Draw", "プレイヤー装飾[ディファード不透明のみ]", "ActorModelDrawDeferredOpa"),
createDrawTable("3D(ディファード中景)", "地形オブジェ[キャラ後]", "ActorModelDrawDeferred", "ディファード空[デモ]", "ActorModelDrawDeferredSky"),
createDrawTable("3D(ディファード半透明)", "地形[ディファード半透明]", "ActorModelDrawDeferredXlu", "アクター描画", "ActorDraw"),
createDrawTable("3D(デプスクリアプレイヤー)", "プレイヤー", "ActorModelDrawDepthForce", "プレイヤー装飾[インダイレクトのみ]", "ActorModelDrawDepthForce"),
createDrawTable("3D(フォワード遠景)", "遠景[ライトバッファ]", "ActorModelDraw", "大気散乱雲近距離[ライトバッファのみ]", "ActorModelDrawForwardOnly"),
createDrawTable("3D(フォワードプレイヤー)", "Zプリパス[プレイヤー]", "ActorModelDrawDepthOnly", "プレイヤー装飾[ディファード不透明のみ]", "ActorModelDrawForwardForce"),
createDrawTable("3D(フォワード)", "半透明Zプリパス", "ActorModelDrawDepthXlu", "アクター描画[フォワード]", "ActorDraw"),
createDrawTable("3D(インダイレクト)", "半透明Zプリパス[インダイレクト]", "ActorModelDrawDepthIndirect", "アクター描画[インダイレクト]", "ActorDraw"),
createDrawTable("3D(インダイレクト後フォワード)", "半透明Zプリパス[インダイレクト後]", "ActorModelDrawDepthIndirect", "敵[フォワードインダイレクト後]", "ActorModelDraw"),
createDrawTable("3D(インダイレクト後遠景)", "大気散乱雲[インダイレクト後]", "ActorModelDraw", "大気散乱雲[インダイレクト後のみ]", "ActorModelDrawForwardOnly"),
createDrawTable("3D(フォグ後インダイレクト)", "地形[インダイレクトフォグ後]", "ActorModelDrawIndirect", "アイテム[インダイレクトフォグ後のみ]", "ActorModelDrawIndirectOnly"),
createDrawTable("3D(フォグ後遠景)", "遠景[フォグ後]", "ActorModelDraw", "大気散乱雲[フォグ後のみ]", "ActorModelDrawForwardOnly"),
createDrawTable("3D(フォグ後)", "半透明Zプリパス[フォグ後]", "ActorModelDrawDepthXlu", "[フォグ後のみ]", "ActorModelDrawForwardOnly"),
createDrawTable("3D(クロマキーZプリパス)", "Zプリパス[プレイヤークロマキー]", "ActorModelDrawDepthChromakey", "Zプリパス[ディザクロマキー]", "ActorModelDrawDitherChromakey"),
createDrawTable("3D(クロマキープレイヤー)", "プレイヤー[クロマキー]", "ActorModelDrawPlayerChromakey", "プレイヤー[クロマキー半透明]", "ActorModelDrawPlayerChromakeyXlu"),
createDrawTable("3D(クロマキーキャラクター)", "[クロマキー]", "ActorModelDrawCharacterChromakey", "[クロマキー]", "ActorModelDrawCharacterChromakey"),
createDrawTable("2Dバック(メイン画面)", "2Dバック", "LayoutDraw", "2Dバック", "LayoutDraw"),
createDrawTable("2Dベース(メイン画面)", "2Dベース", "LayoutDraw", "2D通知", "LayoutDraw"),
createDrawTable("2Dエフェクト(メイン画面)", "2Dベースエフェクト", "Draw", "2Dベースエフェクト", "Draw"),
createDrawTable("2Dオーバー(メイン画面)", "2Dヘッド", "LayoutDraw", "2Dリザルト", "LayoutDraw"),
createDrawTable("2D(デモ画面)", "2Dデモベース", "LayoutDraw", "2Dデモカーソル", "LayoutDraw"),
createDrawTable("ポストエフェクトマスク", "ポストエフェクトマスク", "ActorModelDrawPostEffectMask", "ポストエフェクトマスク", "ActorModelDrawPostEffectMask"),
createDrawTable("アクター描画(独自レンダーターゲット)", "アクター描画[独自レンダーターゲット]", "ActorDraw", "アクター描画[独自レンダーターゲット]", "ActorDraw"),
createDrawTable("アクター描画(プロジェクト固有)", "アクター描画(プロジェクト固有)", "ActorDraw", "アクター描画(プロジェクト固有)", "ActorDraw"),
createDrawTable("モデル描画バッファ更新", "モデル描画バッファ更新", "ActorModelDrawUpdate", "モデル描画バッファ更新", "ActorModelDrawUpdate"),
createDrawTable("3D(ワールドマップディファード)", "ワールドマップ地形", "ActorModelDrawDeferred", "ワールドマップ地形[ディファード半透明]", "ActorModelDrawDeferredXlu"),
createDrawTable("3D(ワールドマップフォワード)", "ワールドマップ地形[フォワード]", "ActorModelDraw", "ワールドマップ地形オブジェ[フォワード]", "ActorModelDraw"),
createDrawTable("2D(ワールドマップ画面)", "2Dワールドマップベース", "LayoutDraw", "2Dワールドマップ", "LayoutDraw"),
createDrawTable("2D(ムーンゲット画面)", "2D(ムーンゲット)", "LayoutDraw", "2Dワイプ(ムーンゲット)", "LayoutDraw"),
createDrawTable("2D(スナップショット)", "2Dスナップショット", "LayoutDraw", "2Dスナップショット", "LayoutDraw"),
createDrawTable("2D(撮影用)", "2D撮影用", "LayoutDraw", "2D撮影用", "LayoutDraw"),
createDrawTable("2D(ミス)", "2Dミス", "LayoutDraw", "2Dミス", "LayoutDraw"),
// Custom Tables
createDrawTable("OnlineDrawExecutors", "PuppetActor", "ActorModelDrawDeferred", "PuppetActor", "ActorModelDrawDeferred"),
};
int drawTableSize = sizeof(drawTable)/sizeof(drawTable[0]);
constexpr al::ExecuteTable updateTable[] = {
createUpdateTable("更新", "ステージ同期カウンタ", "エフェクト(後処理)"),
createUpdateTable("ビュー更新(コア1)", "ビュー更新(コア1)", "ビュー更新(コア1)"),
createUpdateTable("ビュー更新(コア2)", "ビュー更新(コア2)", "ビュー更新(コア2)"),
createUpdateTable("スナップショット", "スナップショット[CalcAnim]", "スナップショット[ActorMovement]"),
// Custom Tables
createUpdateTable("OnlineUpdateExecutors", "PuppetActor", "PuppetActor"),
};
int updateTableSize = sizeof(updateTable)/sizeof(updateTable[0]);