Download GSjanFX Wrapper v0.98 *Compiled for A5.5+* *BETA*
Download GSjanFX v0.98 Source Code Requires janFX.pas.
Download GSjanFX Wrapper v0.975 *Compiled for A5.24* *BETA*
Download GSjanFX v0.975 Source Code Requires janFX.pas.
Use:
Free for all GameStudio projects without restrictions.
Disclaimer: The underlying code behind GSjanFX is janFX.pas which is available below.
I am not in any way affiliated with janFX. I don't guarantee that any of these functions
work but 90% of them should. Email me any bugs or problems you run into. If it blows up
your machine it's not my fault.
Information:
janFX Library
http://www.jansfreeware.com/janfx.zip
I don't know how the alpha transparency will be handled from
TGA based textures.
Versions:
02/06/2003 -- v0.98 -- Re-written to support A5.5+ and DirectX8.
-------------------- All functions take Bmap instead of bmap.
12/05/2002 -- v0.975 -- Added FXImgLstGetPixel()
--------------------- FXImgLstSetPixel()
7/19/2002 -- v0.97 -- Added FXImageListSaveFile()
--------------------- FXImageListSaveEnt()
5/31/2002 -- v0.96 -- Added FXGetPixel()
--------------------- FXSetPixel()
--------------------- Changed all IDirectDrawSurface7() to IUnknown() as IDirectDrawSurface7;
5/16/2002 -- v0.951 -- Fixed crash in FXImageListDrawXY()
5/08/2002 -- v0.95 -- Added FXImageListAddResource()
--------------------------- FXImageListDrawXY()
--------------------------- FXImageListBlend()
5/03/2002 -- v0.941 -- Fixed FXPlasma() and added documentation for FXPlasma() and FXWave()
4/30/2002 -- v0.94 -- Added FXImageListAddFile(). Only supports BMP.
--------------------- Changed FXImageListAdd() to be 32bit.
4/27/2002 -- v0.93 -- Added FXOffsetTile()
4/27/2002 -- v0.92 -- Added FXImageList* functions for storing and retrieving textures in 32bit.
--------------------- Added GSjanFXExplorer for viewing what most of the functions do.
4/25/2002 -- v0.91 -- Fixed FXCopyTexture()
4/24/2002 -- v0.9 -- Released.
Functions:
// ONLY CREATE ONE IMAGE LIST!!!
// ALL ENTITIES SHARE THE SAME TEXTURE! IF YOU HAVE TWO MDL'S AND
// YOU CHANGE ONE, THEY BOTH CHANGE.
// It is a global variable. So you could create the list in main() and
// free it when A5 closes.
// If you close the DLL the ImageList will be gone. Make sure you free it first.
dllfunction FXImageListCreate(); // No parameters
// Add bmap texture into ImageList named string
dllfunction FXImageListAdd(string, bmap);
// the A5 dir used as the path (ie. filename = "myimg.bmp")
dllfunction FXImageListAddFile(string, filename);
// DLL filename loaded into string from Resource ID
dllfunction FXImageListAddResource(string, filename, id);
// Save ImageList image named string to filename (ie filename = "myimg.bmp")
dllfunction FXImageListSaveFile(string, filename);
// Save bmap texture to filename (ie. filename = "images\myimg.bmp")
dllfunction FXImageListSaveEnt(bmap,filename);
// replace bmap texture with ImageList texture named string
// same height & width
dllfunction FXImageListGet(string, bmap);
// replace ImageList texture named string with bmap texture
// same height & width
dllfunction FXImageListSet(string, bmap);
// draw any size (should be smaller than bmap) BMAP onto bmap
// 0,0,0 is transparent
dllfunction FXImageListDrawXY(string, bmap, x, y);
// amount in positive percent (ie 0.5)
// src and dst same height and width
// ImageList BMAP (string) is blended into bmap
dllfunction FXImageListBlend(string, bmap, amount);
// fills color with color format = rrrgggbbb
// (ie: 255000000 = Red, 00000000 = Black, 255255255 = White)
// color is var string
dllfunction FXImgLstGetPixel(string, x, y, color_str);
// color format = rrrgggbbb
// (ie: 255000000 = Red, 00000000 = Black, 255255255 = White)
// color is string
dllfunction FXImgLstSetPixel(string, x, y, color_str);
// remove named texture from ImageList
dllfunction FXImageListRemove(string);
dllfunction FXImageListFree(x); // No parameters
// supports transparency/alpha
dllfunction FXOffsetTile(bmap, offset_x, offset_y);
// If the function turns your transparent MDL invisible it doesn't
// support transparency/alpha
dllfunction FXAddColorNoise(bmap, amount);
dllfunction FXAddMonoNoise(bmap, amount);
dllfunction FXAntiAlias(bmap);
// amount in positive percent (ie 0.5) // src and dst same height and width
dllfunction FXBlend(dstbmap, srcbmap, amount);
dllfunction FXContrast(bmap, amount);
// src and dst same height and width
dllfunction FXCopyTexture(srcbmap, dstbmap);
dllfunction FXDarkness(bmap, amount);
dllfunction FXEmboss(bmap);
dllfunction FXFilterBlue(bmap, min, max);
dllfunction FXFilterGreen(bmap, min, max);
dllfunction FXFilterRed(bmap, min, max);
dllfunction FXFilterXBlue(bmap, min, max);
dllfunction FXFilterXGreen(bmap, min, max);
dllfunction FXFilterXRed(bmap, min, max);
// amount in positive percent (ie 0.5)
dllfunction FXFishEye(bmap, amount);
dllfunction FXFlipDown(bmap);
dllfunction FXFlipRight(bmap);
dllfunction FXGaussianBlur(bmap, amount);
dllfunction FXGrayScale(bmap);
dllfunction FXHeightMap(bmap, amount);
dllfunction FXInvert(bmap);
// factor in positive percent (ie 0.5)
dllfunction FXKeepBlue(bmap, factor);
// factor in positive percent (ie 0.5)
dllfunction FXKeepGreen(bmap, factor);
// factor in positive percent (ie 0.5)
dllfunction FXKeepRed(bmap, factor);
dllfunction FXLightness(bmap, amount);
dllfunction FXMakeSeamLessClip(bmap, seam);
dllfunction FXMandelBrot(bmap, amount);
// scale in positive percent (ie 0.5)
dllfunction FXMarble(bmap, scale, turbulence);
dllfunction FXMirrorDown(bmap);
dllfunction FXMirrorRight(bmap);
dllfunction FXMosaic(bmap, size);
// 10 <= turbulence >= 300 // bmap1 gets drawn
dllfunction FXPlasma(bmap1, bmap2, scale, turbulence);
dllfunction FXPosterize(bmap, amount);
// src and dst same height and width
//dllfunction FXQuartoOpaque(srcbmap, dstbmap);
// color format = rrrgggbbb
// (ie: 255000000 = Red, 00000000 = Black, 255255255 = White)
dllfunction FXReplaceColor(bmap, oldcolor, newcolor, tolerance);
dllfunction FXRippleRandom(bmap, amount);
dllfunction FXRippleTooth(bmap, amount);
dllfunction FXRippleTriangle(bmap, amount);
dllfunction FXSaturation(bmap, amount);
dllfunction FXSeamless(bmap, depth); // depth is byte?
// src and dst same height and width
//dllfunction FXSemiOpaque(srcbmap, dstbmap);
dllfunction FXShadowDownLeft(bmap);
dllfunction FXShadowDownRight(bmap);
dllfunction FXShadowUpLeft(bmap);
dllfunction FXShadowUpRight(bmap);
// factor in positive percent (ie 0.5)
dllfunction FXShake(bmap, factor);
// factor in positive percent (ie 0.5)
dllfunction FXShakeDown(bmap, factor);
dllfunction FXSmooth(bmap, weight);
dllfunction FXSmoothPoint(bmap, x, y);
dllfunction FXSolorize(bmap, amount);
dllfunction FXSplitBlur(bmap, amount);
dllfunction FXSpray(bmap, amount);
dllfunction FXTexturizeOverlap(bmap, amount);
dllfunction FXTexturizeTile(bmap, amount);
// src can be different height and width than dst
dllfunction FXTile(srcbmap, dstbmap, amount);
dllfunction FXTrace(bmap, intensity);
dllfunction FXTriangles(bmap, amount);
dllfunction FXTurn(bmap);
dllfunction FXTurnRight(bmap);
dllfunction FXTwist(bmap, amount);
// 1 <= amount >= 200 // 0 <= inference >= 10 // style is 1,2, or 3
dllfunction FXWave(bmap, amount, inference, style);
// fills color with color format = rrrgggbbb
// (ie: 255000000 = Red, 00000000 = Black, 255255255 = White)
// color is var string
dllfunction FXGetPixel(bmap, x, y, color);
// color format = rrrgggbbb
// (ie: 255000000 = Red, 00000000 = Black, 255255255 = White)
// color is string
dllfunction FXSetPixel(bmap, x, y, color);
|