SwGraphics

From SWWorkshop

Jump to: navigation, search

SWEngine uses OpenGL,Glew and GLSL in it's framework.

Contents

[edit] Scene Control

void swGraphicsBeginScene();  
void swGraphicsEndScene();

[edit] Query

bool swGraphicsIsSupportGLSL();
bool swGraphicsIsSupportRectTex();
bool swGraphicsIsSupportPointSprite();
bool swGraphicsIsSupportFBOSupport();

[edit] Blending

typedef enum{
  SW_BLENDING_MODE_NONE,
  SW_BLENDING_MODE_ADDITIVE,
  SW_BLENDING_MODE_SOLID,
  SW_BLENDING_MODE_SKETCH,
}swBlendingMode;
 
void  swGraphicsSetBlendingMode(swBlendingMode mode);
swBlendingMode swGraphicsGetBlendingMode();

[edit] RenderingTarget

#define SW_RENDERING_TARGET_DEFAULT -1		
 
int swGraphicsCreateRenderingTarget(int width, int height, int iBytesPerPixel);
void swGraphicsDestroyRenderingTarget(int targetID);
void swGraphicsSetRenderingTarget(int targetID);
void swGraphicsClearRenderingTarget();
int swGraphicsRenderingTargetGetImgID(int targetID);

[edit] Shader

#define SW_DISABLED_SHADER_ID 0
 
int  swGraphicsCreateGLSLShader(char *pathVertShader,char *pathFragShader);
void swGraphicsActiveGLSLShader(int shaderID);
void swGraphicsSetGLSLShaderIntAttrb(int program, char *name,int value);
void swGraphicsSetGLSLShaderFloatAttrb(int program, char *name,float value);
void swGraphicsSetGLSLShaderVec2Attrb(int program, char *name,swVec2 vec2);
void swGraphicsSetGLSLShaderPointAttrb(int program, char *name,swPoint point);
void swGraphicsSetGLSLShaderDimensionAttrb(int program, char *name,swDimension dim);
void swGraphicsSetGLSLShaderColorAttrb(int program, char *name,swColor color);
void swGraphicsSetGLSLShaderRectAttrb(int program, char *name,swRect rect);

[edit] Colouring

Background Color

void swGraphicsSetBgColor0(float r,float g,float b);
*void swGraphicsSetBgColor1(float r,float g,float b,float a);
*void swGraphicsSetBgColor2(swColor *bgColor);

Shape and Texture Color

void  swGraphicsSetColor0(float r,float g,float b,float a);
void  swGraphicsSetColor1([[swColor]] *c);

[edit] Camera

#define SW_CAM_DEFAULT -1	
int   swGraphicsCreateCam();
void  swGraphicsDestroyCam(int camID);
void  swGraphicsSetCam(int camID,float x,float y,float rot,float zoom);
void  swGraphicsSetCamPos(int camID,float x,float y);
void  swGraphicsSetCamPosX(int camID,float x);
void  swGraphicsSetCamPosY(int camID,float y);
void  swGraphicsSetCamRot(int camID,float rot);
void  swGraphicsSetCamZoom(int camID,float zoom);
void  swGraphicsAddCamPosX(int camID,float dX);
void  swGraphicsAddCamPosY(int camID,float dY);
void  swGraphicsAddCamRot (int camID,float dR);
void  swGraphicsAddCamZoom(int camID,float dZ);
float swGraphicsGetCamPosX(int camID);
float swGraphicsGetCamPosY(int camID);
float swGraphicsGetCamRot(int camID);
float swGraphicsGetCamZoom(int camID);
void  swGraphicsActiveCam(int camID);

[edit] Primitive Rendering

Point Drawing

void swGraphicsRenderPoint0(float x,float y,float size);
void swGraphicsRenderPoint1(swPoint *point,float size);

Line Drawing

void swGraphicsRenderLine0(float x0,float y0,float x1,float y1,float width);
void swGraphicsRenderLine1(swPoint *startP,swPoint* endP,float width);
void swGraphicsRenderLine2(swPoint *startP,swPoint* endP,float width,float rot);
void swGraphicsRenderLine3(swPoint *startP,swPoint* endP,float width,float rot,swPoint *weight);

Drawing Point Rectangle

void swGraphicsRenderPointRect0(float x,float y,float w,float h,float size);
void swGraphicsRenderPointRect1(swPoint *pos,swDimension *dim,float size);
void swGraphicsRenderPointRect2(swRect *rect,float size);
void swGraphicsRenderPointRect3(swRect *rect,float size,float rot);
void swGraphicsRenderPointRect4(swRect *rect,float size,float rot,swPoint *weight);

Drawing Rectangle

void swGraphicsRenderLineRect0(float x,float y,float w,float h,float width);
void swGraphicsRenderLineRect1(swPoint *pos,swDimension *dim,float width);
void swGraphicsRenderLineRect2(swRect *rect,float width);
void swGraphicsRenderLineRect3(swRect *rect,float width,float rot);
void swGraphicsRenderLineRect4(swRect *rect,float width,float rot,swPoint *weight);

Painting Rectangle

void  swGraphicsRenderSolidRect0(float x,float y,float w,float h);
void  swGraphicsRenderSolidRect1(swPoint *pos,swDimension *dim);
void  swGraphicsRenderSolidRect2(swRect *rect);
void  swGraphicsRenderSolidRect3(swRect *rect,float rot);
void  swGraphicsRenderSolidRect4(swRect *rect,float rot,swPoint *weight);

Drawing Elips Point

void  swGraphicsRenderPointElips0(float x,float y,float w,float h,int count,float size);
void  swGraphicsRenderPointElips1(swPoint *pos,swDimension *dim,int count,float size);
void  swGraphicsRenderPointElips2(swPoint *pos,swDimension *dim,int count,float size,float rot);
void  swGraphicsRenderPointElips3(swPoint *pos,swDimension *dim,int count, float size, float rot,swPoint *weight);

Drawing Elips

void  swGraphicsRenderLineElips0(float x,float y,float w,float h,int count,float width);
void  swGraphicsRenderLineElips1(swPoint *pos,swDimension *dim,int count,float width);
void  swGraphicsRenderLineElips2(swPoint *pos,swDimension *dim,int count,float width,float rot);
void  swGraphicsRenderLineElips3(swPoint *pos,swDimension *dim,int count, float width,float rot, swPoint *weight);

Painting Elips

void  swGraphicsRenderSolidElips0(float x,float y,float w,float h,int count);
void  swGraphicsRenderSolidElips1(swPoint *pos,swDimension *dim,int count);
void  swGraphicsRenderSolidElips2(swPoint *pos,swDimension *dim,int count,float rot);
void  swGraphicsRenderSolidElips3(swPoint *pos,swDimension *dim,int count, float rot, swPoint *weight);

Drawing Point Polygon

void  swGraphicsRenderPointPolygon0(int count,swPoint *pointS,float size);
void  swGraphicsRenderPointPolygon1(int pointLinkedListID,float size);
void  swGraphicsRenderPointPolygon2(swPolygon *polygon,float size);

Drawing Polygon

void  swGraphicsRenderLinePolygon0(int count,swPoint *pointS,float width);
void  swGraphicsRenderLinePolygon1(int pointLinkedListID,float width);
void  swGraphicsRenderLinePolygon2(swPolygon *polygon,float width);

Painting Polygon

void  swGraphicsRenderSolidPolygon0(int count,swPoint *pointS);
void  swGraphicsRenderSolidPolygon1(int pointLinkedListID);
void  swGraphicsRenderSolidPolygon2(swPolygon *polygon);

[edit] Image

t=Rendering Target s=Texture Target weight=Rotation Weight

int   swGraphicsCreateImg(char *filePath); 
void  swGraphicsDestroyImg(int imgID);  
void  swGraphicsRenderImg0(int imgID,swRect *t);
void  swGraphicsRenderImg1(int imgID,swRect *t,float rot);
void  swGraphicsRenderImg2(int imgID,swRect *t,swRect *s);
void  swGraphicsRenderImg3(int imgID,swRect *t,swRect *s,float rot);
void  swGraphicsRenderImg4(int imgID,swRect *t,float rot, swPoint *weight);
void  swGraphicsRenderImg5(int imgID,swRect *t,swRect *s,float rot, swPoint *weight);
void  swGraphicsSetImgUVScrollable(int imgID,bool bEnabled); //Enable or Disable UVScrolling Capability

[edit] Sprite

index= Image no in index t=Rendering Target s=Texture Target weight=Rotation Weight

int swGraphicsCreateSprite(char *folderPath);  
void swGraphicsDestroySprite(int spriteID);
int swGraphicsGetCountOfImgInSprite(int spriteID);
void swGraphicsRenderSprite0(int spriteID,int index,swRect *t);
void swGraphicsRenderSprite1(int spriteID,int index,swRect *t,float rot);
void swGraphicsRenderSprite2(int spriteID,int index,swRect *t,swRect *s);
void swGraphicsRenderSprite3(int spriteID,int index,swRect *t,swRect *s,float rot);
void swGraphicsRenderSprite4(int spriteID,int index,swRect *t,float  rot, swPoint *weight);
void swGraphicsRenderSprite5(int spriteID,int index,swRect *t,swRect *s,float rot, swPoint *weight);

[edit] Text

int swGraphicsCreateFont(char *filePath);  
void swGraphicsDestroyFont(int fontID);  
void swGraphicsRenderText(int fontID,int set,float size,float x,float y,float rot,char *string,...);
void  swGraphicsSetSpriteUVScrollable(int spriteID,bool bEnabled);

[edit] Point Sprite

typedef struct _swPointSprite{
	swPoint pos;
	swColor color;
}swPointSprite;
 
int   swGraphicsCreatePointSprite(char *filePath); 
void  swGraphicsDestroyPointSprite(int pointSpriteID); 
void   swGraphicsRenderPointSprite(int pointSpriteID,float pointSize,int count,swColor *colorS,swPoint* pointS); 
void  swGraphicsRenderPointSprite1(int pointSpriteID,float pointSize,int count,swPointSprite *pointSprites); 
void  swGraphicsRenderPointSprite2(int pointSpriteID,float pointSize,int pointSpriteListID);
Personal tools