BlitPixie |
||||||||||||
Page Contents: |
BlitPixie is a collection of optimized software blitters, written in assembly language or normal ANSI C. The functions perform a lot of normal pixel moving operations, which means you don't have to write your own code to be able to get top speed. BlitPixie routines all work in 8/16/32-bit depth, for your convenience.
Supported compilers:
Might still work:
BlitPixie is written in C, with optional inline 68k/PPC assembly in Metrowerks CodeWarrior format. It's also possible to use Apple MPW (Macintosh Programmers Workshop) or the Mac OS X tools, using auto-generated separate assembly files for use with the MPW/GNU assemblers (Asm/PPCAsm/as). These asm files are included in the main download. The 68k library, with inline assembly, can be compiled using the old THINK C environment too. The blitters come in one or several of four versions:
The 68k versions requires a 68020 or better, the PPC version works with any PowerPC from 601 and up. Some blitters have been optimized for AltiVec (G4/G5).
Conditions for use can be found in the LICENSE document, which also comes with the download.
BlitPixie uses the Open Source
license known as the
Download the source code and documentation by HTTP: This includes all of the blitters, a list can be found in the documentation. There is source code in both C and assembler, and documentation in HTML format. Current planning version
Current planning version is 1.5, There will be builds for other operating systems, and for other processors. Current development version
Current development version is 1.4,
There are now also assembly versions for Mac OS X's GNU "as" assembler. Current stable version
Current stable version is 1.3 (used in SW 3.0),
The major new features are translucency and alpha blending.
The documentation is provided with the above download, but a previous version can also be viewed online if you wish to do so. Documentation is not yet finished, and will be added to during development. There will also be more demonstration programs and tutorials. Platforms for testing programs are currently Mac OS 9 (Classic) and Mac OS X (Carbon). The library, however, is completely portable (ANSI C).
This is a work in progress, and your help is appreciated. It's helpful if you include as much information about your system as possible (MacsBug StdLog preferred), or that your suggestions for improvement are specific and constructive. Bug/Feature Tracker
As you might have gathered, BlitPixie is a collection of software routines for pixel blitting.
This involves both simple area copies, and fairly complex effects.
On modern graphics hardware, this is better done by the video card than the CPU.
To use the graphics hardware one utilizes a low-level 3D graphics API to draw textured triangles.
Note that the word "3D" has nothing to do with the actual rendering,
as screens are inherently two-dimensional anyway. SpriteWorld 3.0 shows how to use both BlitPixie software and API hardware acceleration side-by-side, depending on what is supported on the current machine.
There is currently only one project using BlitPixie:
BlitPixie has a project page on SourceForge.
The project name is: blitpixie
Anders F Björklund did the standalone BlitPixie library, and wrote most of the routines including the assembler. BlitPixie as it stands today represents over five years of development. BlitPixie was originally created for 68k macs by Tony Myles, who also created SpriteWorld. Christofer Åkersten did the 68k AllBit blitters. Brian Roddy started the old PPC blitters, and did some nifty effects like rotating. Karl Bunker and Vern Jensen used BlitPixie extensively with SpriteWorld. Tim Carroll, Cary Farrier and George Warner contributed to the old BlitPixie. |
|||||||||||
|
Written by Anders F Björklund <afb@users.sourceforge.net> |