diff options
Diffstat (limited to 'functions.h')
-rw-r--r-- | functions.h | 20 |
1 files changed, 14 insertions, 6 deletions
diff --git a/functions.h b/functions.h index 3d4184d..9b63832 100644 --- a/functions.h +++ b/functions.h @@ -6,11 +6,11 @@ static project_layer * Layer_Init(project_data *File, memory *Memory); // Initia static void Bitmap_CalcPackedDimensions(uint16 Width, uint16 Height, uint16 *WidthP, uint16 *HeightP); // Returns the dimensions a packed bitmap should be in memory. +static void Bitmap_ConvertPacking(void *Buffer, void *DestBuffer, uint16 Width, uint16 Height, uint16 BytesPerPixel, uint16 Which); +static void Bitmap_CalcHistogram(void *Data, void *Input, uint16 BytesPerPixel, uint64 TotalBytes); static uint16 Bitmap_CalcByteOffset(uint16 BytesPerPixel); // Returns the amount of bytes a loop goes through depending on the InstructionMode. static uint64 Bitmap_CalcTotalBytes(uint16 Width, uint16 Height, uint16 BytesPerPixel); // Returns the total amount of bytes a bitmap takes up. static uint64 Bitmap_CalcUnpackedBytes(uint16 Width, uint16 Height, uint16 BytesPerPixel); -static void Bitmap_ConvertPacking(void *Buffer, void *DestBuffer, uint16 Width, uint16 Height, uint16 BytesPerPixel, uint16 Which); -static void Bitmap_CalcHistogram(void *Data, void *Input, uint16 BytesPerPixel, uint64 TotalBytes); static bool32 Source_Generate(project_data *File, memory *Memory, void *Path); // Fills out source info if the source is a supported file. @@ -22,16 +22,18 @@ static cached_bitmap * AV_LoadVideoFrame(source *Source, memory *Memory, int32 T static cached_bitmap * Cache_CheckBitmap(source *Source, layer_bitmap_info *BitmapInfo, memory *Memory, int32 TimelineFrame); -static void TestGL_UpdateTexture(gl_effect_layer *Test, void *Data, uint16 Width, uint16 Height, bool32 Multisample); -static gl_effect TestGL_MaskInitVerts(mask Mask); -static void TestGL_InitVerts(); -static gl_vertex_shader TestGL_MaskUploadVerts(project_layer *Layer, mask *Mask); +// OpenGL + +static void GL_UpdateTexture(gl_effect_layer *Test, void *Data, uint16 Width, uint16 Height, bool32 Multisample); +static void GL_RasterizeShape(project_layer *Layer, mask *Mask); static v2 Line_RatioToPoint(v2 a, v2 b, float ratio); static v2 ImGui_ScreenPointToCompUV(ImVec2 ViewportMin, ImVec2 CompPos, ImVec2 CompZoom, ImVec2 MousePos); void Bezier_CubicCalcPoints(v2 p1, v2 p2, v2 p3, v2 p4, void *Data, uint32 *Increment); +static void Mask_TriangulateAndRasterize(memory *Memory, project_layer *Layer, mask *Mask); + static void History_Undo(memory *Memory); static void History_Redo(memory *Memory); @@ -57,3 +59,9 @@ static void Fallback_RenderLayer(transform_info TransformInfo, comp_buffer *Buff static void PushRect(rectangle RenderRegion); static bool32 CheckQueue(render_queue RenderInfo, uint16 Index); +// Effects + +static void Effect_DrawColor(source *Source, layer_bitmap_info *BitmapInfo, memory *Memory, property_channel Property[]); +static void Effect_Levels(source *Source, layer_bitmap_info *BitmapInfo, memory *Memory, property_channel Property[]); +static void Effect_GaussianBlur(source *Source, layer_bitmap_info *BitmapInfo, memory *Memory, property_channel Property[]); + |