diff options
Diffstat (limited to 'src/include/main.h')
-rw-r--r-- | src/include/main.h | 12 |
1 files changed, 11 insertions, 1 deletions
diff --git a/src/include/main.h b/src/include/main.h index af92e31..fd295cf 100644 --- a/src/include/main.h +++ b/src/include/main.h @@ -325,7 +325,10 @@ struct project_state bool32 UpdateKeyframes = 0; bool32 UpdateFrame = 1; // only refreshes frame; set UpdateKeyframes to update animation bool32 DebugDisableCache = 1; + + // bad uint32 CachedFrameCount; + int32 LastCachedFrame = -10000; uint64 HotFramePerf = 0; @@ -562,8 +565,10 @@ struct block_layer { bool32 IsPrecomp; bool32 Precomp_Toggled; - uint16 Block_Source_Index; // also used for precomp + // NOTE(fox): References a precomp index if IsPrecomp is true, not a source index. + uint16 Block_Source_Index; uint16 Block_String_Index; + // References the precomp that the layer belongs to. uint16 Block_Composition_Index; uint16 Block_Mask_Index[MAX_MASKS]; @@ -594,8 +599,13 @@ struct block_layer { bool32 IsVisible; bool32 IsAdjustment; + // NOTE(fox): I use these in some places without calling + // Interact_Evaluate_Layer(), because I'm assuming it's impossible for + // layer dragging to happen in those contexts. Check for this if weird bugs appear. int32 Frame_Start; int32 Frame_End; + // This is what changes when the layer is dragged. It also marks the starting frame for video footage. + int32 Frame_Offset; real32 Vertical_Offset; real32 Vertical_Height = 1; |