SwGraphics
From SWWorkshop
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);
