WoopsiGfx ist eine C + + 2D-Grafiken-Bibliothek für den Nintendo DS.
Der Download ist in Source und Demo unterteilt.
Zitat:
WoopsiGfx is a C++ 2D graphics library
for the Nintendo DS, derived from the Woopsi GUI framework. It allows
the developer to create and manipulate bitmaps using a comprehensive set
of drawing tools. It includes an extensible font system for drawing
text to bitmaps, and features support for packed monochrome and 16-bit
fonts out of the box.
WoopsiGfx can also be used to draw directly to the DS' VRAM. This is useful when the DS is in MODE_FB0 or MODE_5_2D.
Features :
- Extensible font system that supports compressed proportional and fixed-width
fonts (monochrome and 16-bit);
- Animation class with support for variable framerates and standard/pingpong
looping;
- Bitmap class for 16-bit bitmap image manipulation;
- Graphics class providing clipped, DMA-accelerated drawing functions:
- Pixels;
- Lines;
- Filled and unfilled rectangles;
- Filled and unfilled ellipses;
- XOR horizontal/vertical lines, pixels, rectangles and filled rectangles;
- Bitmap blitting;
- Bitmap blitting with transparent colour key;
- Bitmap blitting in greyscale;
- Flood fill;
- Region scrolling;
- Region copying;
- Region dimming;
- Region conversion to greyscale;
- Text rendering.
- Dynamic array container and iterator classes.
- Object-orientated design for easy integration into other C++ software;
- Simple API;
- Unicode strings encoded with UTF-8;
- Compatible with Woopsi font tools.
Changelog
V1.4
- Fixes:
- Animation::play() stops if there are no frames to play.
- Animation::getCurrentFrame() returns NULL if there are no frames.
- Animation::getCurrentBitmap() returns NULL if there are no bitmaps.
- StringIterator::moveTo() ignores attempts to move to negative indices.
- Improved use of DMA hardware.
- WoopsiString::subString() passes the correct arguments to the WoopsiString
constructor.
V1.3 (20110401)
- Fixes:
- Font getCharWidth() and getCharHeight() methods return u8 instead of u16.
- Removed Rect::fromDimensions().
- Rect::fromCoordinates() returns a Rect instead of a Rect*.
- WoopsiArray resizes more intelligently.
- WoopsiString::subString() returns a WoopsiString instead of a
WoopsiString*.
- WoopsiString::compareTo() returns an s8 instead of an s32.
- Removed ability to set font draw colour/monochrome from font classes;
replaced with explicit "colour" parameter to all draw methods.
- Removed height member from FontBase and transplanted all methods to
PackedFontBase, making FontBase data free.
- Removed width and height members from BitmapBase and transplanted to
BitmapWrapper, FrameBuffer and Bitmap.
- Removed constructor from FontBase.
- Fixed bugs in Graphics::floodFill().
- Stack methods in Graphics class expect a reference to a stack as a
parameter instead of pointer.
- Added missing bitmapwrapper.cpp file.
- New Features:
- Added drawBaselineChar() to font classes.
- Added drawBaselineText() to font classes.
- Added getCharTop() to font classes.
- Added Rect::splitIntersection().
- Added StringIterator::getInteger().
- Added new WoopsiString constructors.
- Added new WoopsiString::setText() overload.
- Added new WoopsiString operator overloads.
- Added WoopsiString::indexOf().
- Added WoopsiString::lastIndexOf().
- Added WoopsiString::format().
- Added WoopsiString::replace().
- Added WoopsiString::split().
V1.2 (20101210)
- Fixes:
- Updated Rect class with new functionality from Woopsi.
V1.1 (20101029)
- Fixes:
- PackedFonts clip correctly.
- Example makefiles no longer build ROMs other than .nds file.
- New Features:
- Added BufferedBitmap class.
- Added buffer test.
V1.00 (20100727)
- Initial release.
Der Download ist in Source und Demo unterteilt.
Zitat:
WoopsiGfx is a C++ 2D graphics library
for the Nintendo DS, derived from the Woopsi GUI framework. It allows
the developer to create and manipulate bitmaps using a comprehensive set
of drawing tools. It includes an extensible font system for drawing
text to bitmaps, and features support for packed monochrome and 16-bit
fonts out of the box.
WoopsiGfx can also be used to draw directly to the DS' VRAM. This is useful when the DS is in MODE_FB0 or MODE_5_2D.
Features :
- Extensible font system that supports compressed proportional and fixed-width
fonts (monochrome and 16-bit);
- Animation class with support for variable framerates and standard/pingpong
looping;
- Bitmap class for 16-bit bitmap image manipulation;
- Graphics class providing clipped, DMA-accelerated drawing functions:
- Pixels;
- Lines;
- Filled and unfilled rectangles;
- Filled and unfilled ellipses;
- XOR horizontal/vertical lines, pixels, rectangles and filled rectangles;
- Bitmap blitting;
- Bitmap blitting with transparent colour key;
- Bitmap blitting in greyscale;
- Flood fill;
- Region scrolling;
- Region copying;
- Region dimming;
- Region conversion to greyscale;
- Text rendering.
- Dynamic array container and iterator classes.
- Object-orientated design for easy integration into other C++ software;
- Simple API;
- Unicode strings encoded with UTF-8;
- Compatible with Woopsi font tools.
V1.4
- Fixes:
- Animation::play() stops if there are no frames to play.
- Animation::getCurrentFrame() returns NULL if there are no frames.
- Animation::getCurrentBitmap() returns NULL if there are no bitmaps.
- StringIterator::moveTo() ignores attempts to move to negative indices.
- Improved use of DMA hardware.
- WoopsiString::subString() passes the correct arguments to the WoopsiString
constructor.
V1.3 (20110401)
- Fixes:
- Font getCharWidth() and getCharHeight() methods return u8 instead of u16.
- Removed Rect::fromDimensions().
- Rect::fromCoordinates() returns a Rect instead of a Rect*.
- WoopsiArray resizes more intelligently.
- WoopsiString::subString() returns a WoopsiString instead of a
WoopsiString*.
- WoopsiString::compareTo() returns an s8 instead of an s32.
- Removed ability to set font draw colour/monochrome from font classes;
replaced with explicit "colour" parameter to all draw methods.
- Removed height member from FontBase and transplanted all methods to
PackedFontBase, making FontBase data free.
- Removed width and height members from BitmapBase and transplanted to
BitmapWrapper, FrameBuffer and Bitmap.
- Removed constructor from FontBase.
- Fixed bugs in Graphics::floodFill().
- Stack methods in Graphics class expect a reference to a stack as a
parameter instead of pointer.
- Added missing bitmapwrapper.cpp file.
- New Features:
- Added drawBaselineChar() to font classes.
- Added drawBaselineText() to font classes.
- Added getCharTop() to font classes.
- Added Rect::splitIntersection().
- Added StringIterator::getInteger().
- Added new WoopsiString constructors.
- Added new WoopsiString::setText() overload.
- Added new WoopsiString operator overloads.
- Added WoopsiString::indexOf().
- Added WoopsiString::lastIndexOf().
- Added WoopsiString::format().
- Added WoopsiString::replace().
- Added WoopsiString::split().
V1.2 (20101210)
- Fixes:
- Updated Rect class with new functionality from Woopsi.
V1.1 (20101029)
- Fixes:
- PackedFonts clip correctly.
- Example makefiles no longer build ROMs other than .nds file.
- New Features:
- Added BufferedBitmap class.
- Added buffer test.
V1.00 (20100727)
- Initial release.
1.995 mal gelesen