Initial commit.
This commit is contained in:
@@ -0,0 +1,120 @@
|
||||
|
||||
#ifndef BBGRAPHICS_H
|
||||
#define BBGRAPHICS_H
|
||||
|
||||
#include "bbsys.h"
|
||||
#include "../gxruntime/gxgraphics.h"
|
||||
|
||||
extern gxGraphics *gx_graphics;
|
||||
extern gxCanvas *gx_canvas;
|
||||
extern gxScene *gx_scene;
|
||||
|
||||
class bbImage;
|
||||
|
||||
//general graphics functions
|
||||
int bbCountGfxDrivers();
|
||||
BBStr * bbGfxDriverName( int n );
|
||||
BBStr * bbGfxDriverDesc( int n );
|
||||
void bbSetGfxDriver( int n );
|
||||
int bbGfxModeExists( int w,int h,int d );
|
||||
int bbCountGfxModes();
|
||||
int bbGfxModeWidth( int n );
|
||||
int bbGfxModeHeight( int n );
|
||||
int bbGfxModeDepth( int n );
|
||||
int bbGraphicsWidth();
|
||||
int bbGraphicsHeight();
|
||||
int bbGraphicsDepth();
|
||||
int bbAvailVidMem();
|
||||
int bbTotalVidMem();
|
||||
|
||||
//mode functions
|
||||
void bbGraphics( int w,int h,int d,int mode );
|
||||
gxCanvas * bbFrontBuffer();
|
||||
gxCanvas * bbBackBuffer();
|
||||
void bbEndGraphics();
|
||||
int bbGraphicsLost();
|
||||
int bbScanLine();
|
||||
void bbVWait( int n );
|
||||
void bbFlip( int vwait );
|
||||
|
||||
//graphics buffer functions
|
||||
void bbSetBuffer( gxCanvas *buff );
|
||||
gxCanvas * bbGraphicsBuffer();
|
||||
int bbLoadBuffer( gxCanvas *surf,BBStr *str );
|
||||
int bbSaveBuffer( gxCanvas *surf,BBStr *str );
|
||||
|
||||
//fast read/write operations...
|
||||
void bbLockBuffer( gxCanvas *buff );
|
||||
void bbUnlockBuffer( gxCanvas *buff );
|
||||
int bbReadPixel( int x,int y,gxCanvas *buff );
|
||||
void bbWritePixel( int x,int y,int argb,gxCanvas *buff );
|
||||
int bbReadPixelFast( int x,int y,gxCanvas *buff );
|
||||
void bbWritePixelFast( int x,int y,int argb,gxCanvas *buff );
|
||||
|
||||
|
||||
//2d rendering functions
|
||||
void bbOrigin( int x,int y );
|
||||
void bbViewport( int x,int y,int w,int h );
|
||||
void bbColor( int r,int g,int b );
|
||||
void bbClsColor( int r,int g,int b );
|
||||
void bbCls();
|
||||
void bbPlot( int x,int y );
|
||||
void bbLine( int x1,int y1,int x2,int y2 );
|
||||
void bbRect( int x,int y,int w,int h,int solid );
|
||||
void bbOval( int x,int y,int w,int h,int solid );
|
||||
void bbText( int x,int y,BBStr *str,int centre_x,int centre_y );
|
||||
void bbGetColor( int x,int y );
|
||||
int bbColorRed();
|
||||
int bbColorGreen();
|
||||
int bbColorBlue();
|
||||
|
||||
//font functions
|
||||
gxFont * bbLoadFont( BBStr *name,int height,int bold,int italic,int underline );
|
||||
void bbFreeFont( gxFont *f );
|
||||
void bbSetFont( gxFont *f );
|
||||
int bbFontWidth();
|
||||
int bbFontHeight();
|
||||
int bbStringWidth( BBStr *str );
|
||||
int bbStringHeight( BBStr *str );
|
||||
|
||||
//image functions
|
||||
bbImage* bbLoadImage( BBStr *s );
|
||||
bbImage* bbCopyImage( bbImage *i );
|
||||
bbImage* bbCreateImage( int w,int h,int n );
|
||||
bbImage* bbLoadAnimImage( BBStr *s,int w,int h,int first,int cnt );
|
||||
void bbFreeImage( bbImage *i );
|
||||
int bbSaveImage( bbImage *i,BBStr *filename,int frame );
|
||||
void bbGrabImage( bbImage *i,int x,int y,int n );
|
||||
gxCanvas * bbImageBuffer( bbImage *i,int n );
|
||||
void bbDrawImage( bbImage *i,int x,int y,int frame );
|
||||
void bbDrawBlock( bbImage *i,int x,int y,int frame );
|
||||
void bbTileImage( bbImage *i,int x,int y,int frame );
|
||||
void bbTileBlock( bbImage *i,int x,int y,int frame );
|
||||
void bbDrawImageRect( bbImage *i,int x,int y,int r_x,int r_y,int r_w,int r_h,int frame );
|
||||
void bbDrawBlockRect( bbImage *i,int x,int y,int r_x,int r_y,int r_w,int r_h,int frame );
|
||||
void bbMaskImage( bbImage *i,int r,int g,int b );
|
||||
void bbHandleImage( bbImage *i,int x,int y );
|
||||
void bbScaleImage( bbImage *i,float w,float h );
|
||||
void bbResizeImage( bbImage *i,float w,float h );
|
||||
void bbRotateImage( bbImage *i,float angle );
|
||||
void bbTFormImage( bbImage *i,float a,float b,float c,float d );
|
||||
void bbTFormFilter( int enable );
|
||||
void bbAutoMidHandle( int enable );
|
||||
void bbMidHandle( bbImage *i );
|
||||
int bbImageWidth( bbImage *i );
|
||||
int bbImageHeight( bbImage *i );
|
||||
int bbImageXHandle( bbImage *i );
|
||||
int bbImageYHandle( bbImage *i );
|
||||
int bbImagesOverlap( bbImage *i1,int x1,int y1,bbImage *i2,int x2,int y2 );
|
||||
int bbImagesCollide( bbImage *i1,int x1,int y1,int f1,bbImage *i2,int x2,int y2,int f2 );
|
||||
int bbRectsOverlap( int x1,int y1,int w1,int h1,int x2,int y2,int w2,int h2 );
|
||||
int bbImageRectOverlap( bbImage *i,int x,int y,int r_x,int r_y,int r_w,int r_h );
|
||||
int bbImageRectCollide( bbImage *i,int x,int y,int f,int r_x,int r_y,int r_w,int r_h );
|
||||
|
||||
//simple print functions
|
||||
void bbWrite( BBStr *str );
|
||||
void bbPrint( BBStr *str );
|
||||
BBStr * bbInput( BBStr *prompt );
|
||||
void bbLocate( int x,int y );
|
||||
|
||||
#endif
|
||||
Reference in New Issue
Block a user