#include "bctexture.inc"
#include "bcwindowbase.inc"
#include "bccmodels.h"
-#include "bccmodels.h"
#include "vframe.inc"
// Maximum number of prev or next effects to be pushed onto the stacks.
#define MAX_STACK_ELEMENTS 255
#define SHM_MIN_SIZE 2048
+#define ALIAS_OFF 0
+#define ALIAS_TOP 1
+#define ALIAS_CTR 2
+#define ALIAS_BOT 4
+#define ALIAS_DBL 5
+#define ALIAS_NRM 6
+
// Scene graph for 3D models
// Defined by the subclass
class VFrameScene
return transfer_from(frame, bg_color, 0,0, frame->get_w(),frame->get_h());
}
// Required for YUV
- int clear_frame();
+ void black_frame();
+ void clear_frame();
int allocate_compressed_data(long bytes);
// Sequence number. -1 means invalid. Passing frames to the encoder is
// Calls init_screen with the current frame's dimensions.
void init_screen();
+// color used by clear_frame, default -1 (unset) which clears to BLACK
+ void set_clear_color(int color, int alpha);
+ int get_clear_color();
+ int get_clear_alpha();
+
// Compiles and links the shaders into a program.
// Adds the program with put_shader.
// Returns the program handle.
void copy_stacks(VFrame *src);
// Updates the params with values from src
void copy_params(VFrame *src);
-
// This clears the stacks and the param table
void clear_stacks();
- virtual int draw_pixel(int x, int y);
- int pixel_rgb, pixel_yuv, stipple;
+// pixel drawing
+ virtual int draw_pixel(float x, float y, float a=1.f);
+ virtual int draw_pixel(float x, float y, float frac, int axis);
+ void set_draw_alpha(float a);
+ void set_draw_flags(int flags);
+ int pixel_rgb, pixel_yuv, stipple, draw_flags;
+ float draw_alpha;
void set_pixel_color(int rgb, int a=0xff);
void set_stiple(int mask);
- void draw_line(int x1, int y1, int x2, int y2);
+ void draw_line(float x1, float y1, float x2, float y2);
void draw_smooth(int x1, int y1, int x2, int y2, int x3, int y3);
void smooth_draw(int x1, int y1, int x2, int y2, int x3, int y3);
void draw_rect(int x1, int y1, int x2, int y2);
unsigned char *a;
// Dimensions of frame
int w, h;
+// color used by clear_frame
+ int clear_color, clear_alpha;
// Info for reading png images
const unsigned char *image;
long image_offset;