AnimaEngine  1.0.0
Nintendo DS Pokemon Black, White, Black 2, and White 2 sprite extraction and preview toolchain
gif_pipeline.h
Go to the documentation of this file.
1 
6 #ifndef GIF_PIPELINE_H
7 #define GIF_PIPELINE_H
8 
9 #include "common.h"
10 #include "ncer.h"
11 #include "nanr.h"
12 #include "nmcr.h"
13 #include "nmar.h"
14 #include "ncgr.h"
15 #include "nclr.h"
16 #include "coords.h"
17 
18 #define GIF_PATH_BUFFER_SIZE 4096
23 typedef enum GifSideMode {
28 
32 typedef enum GifPaletteMode {
37 
41 typedef enum GifEyeMode {
45 
49 typedef struct GifExportOptions {
50  int enabled;
54  int scale;
55  int delay_cs;
57  int loop_count;
61  int map_index;
64 
70 
95  const char *out_dir,
96  const char *side_name,
97  const char *animation_name,
98  const char *palette_name,
99  const NcerFile *ncer,
100  const NanrFile *nanr,
101  const NmcrFile *nmcr,
102  const NmarFile *nmar,
103  const NcgrImage *ncgr,
104  const NclrPalette *palette,
105  int default_idle_map,
106  const GifExportOptions *options,
107  int tile_stride,
108  int margin,
109  const int *union_min_x,
110  const int *union_min_y,
111  const int *union_max_x,
112  const int *union_max_y,
113  const CoordFile *coords
114 );
115 
116 #endif
117 
Common types, macros, and standard library includes used throughout AnimaEngine.
Coordinates file parsing structures and functions for character offset rendering.
GifSideMode
Sprite perspective/camera rendering selection.
Definition: gif_pipeline.h:23
@ GIF_SIDE_FRONT
Definition: gif_pipeline.h:24
@ GIF_SIDE_BACK
Definition: gif_pipeline.h:25
@ GIF_SIDE_BOTH
Definition: gif_pipeline.h:26
struct GifExportOptions GifExportOptions
Detailed parameters configuring animation exporting behavior.
GifPaletteMode
Color variant selection.
Definition: gif_pipeline.h:32
@ GIF_PALETTE_SHINY
Definition: gif_pipeline.h:34
@ GIF_PALETTE_NORMAL
Definition: gif_pipeline.h:33
@ GIF_PALETTE_BOTH
Definition: gif_pipeline.h:35
void GifExportOptions_Init(GifExportOptions *options)
Initializes default values for a GifExportOptions structure.
Definition: gif_pipeline.c:15
GifEyeMode
Unused/legacy eye blinking rendering selection.
Definition: gif_pipeline.h:41
@ GIF_EYE_OPEN
Definition: gif_pipeline.h:42
@ GIF_EYE_ALL
Definition: gif_pipeline.h:43
int GifPipeline_ExportIdle(const char *out_dir, const char *side_name, const char *animation_name, const char *palette_name, const NcerFile *ncer, const NanrFile *nanr, const NmcrFile *nmcr, const NmarFile *nmar, const NcgrImage *ncgr, const NclrPalette *palette, int default_idle_map, const GifExportOptions *options, int tile_stride, int margin, const int *union_min_x, const int *union_min_y, const int *union_max_x, const int *union_max_y, const CoordFile *coords)
Assembles and exports a composed animated GIF based on provided resources.
Definition: gif_pipeline.c:255
Nintendo Animation Resource (.NANR) structure parsing.
Nintendo Cell Resource (.NCER) parser representing individual 2D sprite composite elements.
Nintendo Character Graphic Resource (.NCGR) 2D tile character graphics structures.
Nintendo Color Resource (.NCLR) palette parser.
Nintendo Multi-Animation Resource (.NMAR) file parser.
Nintendo Multi-Cell Resource (.NMCR) layout mapping parser.
Collection of coordinate records parsed from a coordinates file.
Definition: coords.h:29
Detailed parameters configuring animation exporting behavior.
Definition: gif_pipeline.h:49
int start_frame
Definition: gif_pipeline.h:58
int loop_count
Definition: gif_pipeline.h:57
int map_is_idle
Definition: gif_pipeline.h:60
int playback_delay_cs
Definition: gif_pipeline.h:56
GifSideMode side
Definition: gif_pipeline.h:51
int scale
Definition: gif_pipeline.h:54
GifPaletteMode palette
Definition: gif_pipeline.h:52
int nmar_animation_index
Definition: gif_pipeline.h:62
int enabled
Definition: gif_pipeline.h:50
int map_index
Definition: gif_pipeline.h:61
int delay_cs
Definition: gif_pipeline.h:55
GifEyeMode eye_mode
Definition: gif_pipeline.h:53
int frame_count
Definition: gif_pipeline.h:59
Unpacked representation of a complete .NANR resource file.
Definition: nanr.h:45
Unpacked representation of a complete .NCER resource.
Definition: ncer.h:56
Container representing parsed NCGR image tile graphics.
Definition: ncgr.h:15
Container representing parsed NCLR color palette data.
Definition: nclr.h:17
Unpacked representation of a complete .NMAR resource.
Definition: nmar.h:52
Unpacked representation of a complete .NMCR resource.
Definition: nmcr.h:35