Libwiisprite: Difference between revisions

From WiiBrew
Jump to navigation Jump to search
Tantric (talk | contribs)
No edit summary
m Robot: Cosmetic changes
Line 1: Line 1:
{{Infobox development tools
{{Infobox development tools
| image = [[Image:Libwiisprite.png]]
| image = [[File:Libwiisprite.png]]
| title = libwiisprite
| title = libwiisprite
| type = framework library
| type = framework library
Line 11: Line 11:
'''libwiisprite''' is a sprite library which uses GX as its underlying rendering engine. It is optimized for rapid fast game development, but can also be used for GUI applications.
'''libwiisprite''' is a sprite library which uses GX as its underlying rendering engine. It is optimized for rapid fast game development, but can also be used for GUI applications.


==About==
== About ==
libwiisprite is a C++ sprite library written for the Wii which utilises
libwiisprite is a C++ sprite library written for the Wii which utilises
GX for all its graphical operations, meaning the GPU is used to accelerate
GX for all its graphical operations, meaning the GPU is used to accelerate
Line 31: Line 31:
*http://feesh.braingravy.co.uk/libwiisprite/
*http://feesh.braingravy.co.uk/libwiisprite/


==Sample Application (Video)==
== Sample Application (Video) ==
A simple demonstration of basic libwiisprites capabilities:
A simple demonstration of basic libwiisprites capabilities:
*http://www.youtube.com/watch?v=rTphJHQI_Mo (This is an old version of the Invaders example. Try out the new one in the package!)
*http://www.youtube.com/watch?v=rTphJHQI_Mo (This is an old version of the Invaders example. Try out the new one in the package!)


==Download & Installation==
== Download & Installation ==
You can download the library from
You can download the library from
*http://chaosteil.googlepages.com/libwiisprite-0.3.0b.tar.gz
*http://chaosteil.googlepages.com/libwiisprite-0.3.0b.tar.gz
Please refer to the README.TXT for installation instructions.
Please refer to the README.TXT for installation instructions.


Libwiisprite will not work with devkitPPC release 16. To fix it, compile it yourself or download a newer binary. image1->LoadImage also works slightly differently now as described in the above forum post. See  
Libwiisprite will not work with devkitPPC release 16. To fix it, compile it yourself or download a newer binary. image1->LoadImage also works slightly differently now as described in the above forum post. See  
*http://forum.wiibrew.org/read.php?11,4665,4665
*http://forum.wiibrew.org/read.php?11,4665,4665


==New Stuff==
== New Stuff ==
'''0.3.0c'''
'''0.3.0c'''
[[Media:Libwiisprite_3_0_c.zip|Unofficial version, works with dkp 1.4.9]], [http://forum.wiibrew.org/read.php?11,4665,7514#msg-7514 made changes specified in this post]
[[Media:Libwiisprite_3_0_c.zip|Unofficial version, works with dkp 1.4.9]], [http://forum.wiibrew.org/read.php?11,4665,7514#msg-7514 made changes specified in this post]
Line 68: Line 68:
''The old changelogs may be found in the RELEASE.TXT file.''
''The old changelogs may be found in the RELEASE.TXT file.''


==Other libwiisprite Examples==
== Other libwiisprite Examples ==
Most of the libwiisprite-based applications can be found [[:Category:Homebrew using libwiisprite | here]].
Most of the libwiisprite-based applications can be found [[:Category:Homebrew using libwiisprite | here]].
*[http://blog.dev-scene.com/0xtob/2008/06/19/box2d-for-the-wii/ Box2D + libwiisprite] - Box2D ported to Wii with an example powered by libwiisprite. Made by 0xtob.
*[http://blog.dev-scene.com/0xtob/2008/06/19/box2d-for-the-wii/ Box2D + libwiisprite] - Box2D ported to Wii with an example powered by libwiisprite. Made by 0xtob.
Line 74: Line 74:
*[[libosk]] - OnScreenKeyboard library based on libwiisprite
*[[libosk]] - OnScreenKeyboard library based on libwiisprite


==Tutorial==
== Tutorial ==
A new, extensive, libwiisprite tutorial can be found at [[Libwiisprite/tutorial]]. Make sure you check it out if you don't know how to start programming with libwiisprite. It simplifies the first steps as well as teaches some advanced concepts.
A new, extensive, libwiisprite tutorial can be found at [[Libwiisprite/tutorial]]. Make sure you check it out if you don't know how to start programming with libwiisprite. It simplifies the first steps as well as teaches some advanced concepts.


==Bugs, Suggestions==
== Bugs, Suggestions ==


If you find a bug or have a suggestion (maybe a tutorial to add to the library) please send an e-mail to chaosteil [at] gmail [dot] com or if you're on an EFNet server, send a PM to Chaosteil.
If you find a bug or have a suggestion (maybe a tutorial to add to the library) please send an e-mail to chaosteil [at] gmail [dot] com or if you're on an EFNet server, send a PM to Chaosteil.

Revision as of 17:11, 10 August 2009

libwiisprite
General
Author(s)Chaosteil, (Feesh!)
TypeFramework library
Version0.3.0b
Links
Download
Source

libwiisprite is a sprite library which uses GX as its underlying rendering engine. It is optimized for rapid fast game development, but can also be used for GUI applications.

About

libwiisprite is a C++ sprite library written for the Wii which utilises GX for all its graphical operations, meaning the GPU is used to accelerate graphics.

libwiisprite aims to make developing Wii homebrew simple and fun with better graphical results than currently existing libraries.

libwiisprite is currently under heavy development, but this version is a semi-stable version allowing most of the proposed functionality of the library.

All possible pngs can be loaded, even the ones with an alpha layer, so you can get started immediately!

The library comes with full Doxygen documentation to help get development started. You can find it in the docs folder. It is also available online:

Sample Application (Video)

A simple demonstration of basic libwiisprites capabilities:

Download & Installation

You can download the library from

Please refer to the README.TXT for installation instructions.

Libwiisprite will not work with devkitPPC release 16. To fix it, compile it yourself or download a newer binary. image1->LoadImage also works slightly differently now as described in the above forum post. See

New Stuff

0.3.0c Unofficial version, works with dkp 1.4.9, made changes specified in this post NOTE: if you include any header that isnt wiisprite.h, you will not be able to compile. either include wiisprite.h only or use libwiisprite/someLibWiiHeader.h

0.3.0b

  • Fixed a (huge) memory leak in the image class. Thanks to DragonMin for pointing the error out.
  • Fixed a bug where one would reset an image of a sprite with Sprite::SetImage() and not get the previous data if applicable for keeping of the old data.
  • Collision can now also be used with refpixel positioning, however, the pixel has to be at the center of the image for now.

0.3.0a

  • Fixed an initializing bug when using a drawable image.

0.3.0 - This is a release in preparation for Galaxy Stations. Enjoy!

  • Added a reference pixel system. It allows to rotate and scale a sprite around a specific point on itself. Check the documentation how to use it. The spritetest example also has a little example on it.
  • Fixed a huge memory leak when loading an image which was in every previous version. Upgrading is recommended.
  • Several speedups which can increase the speed of the library when drawing Sprites and TiledLayers, or even assigning Images.

0.2.3

  • All possible png files can now be loaded.
  • Image has now a "DestroyImage()" method to allow to reload the image after that.


The old changelogs may be found in the RELEASE.TXT file.

Other libwiisprite Examples

Most of the libwiisprite-based applications can be found here.

  • Box2D + libwiisprite - Box2D ported to Wii with an example powered by libwiisprite. Made by 0xtob.
  • TextClass - Print text with libwiisprite
  • libosk - OnScreenKeyboard library based on libwiisprite

Tutorial

A new, extensive, libwiisprite tutorial can be found at Libwiisprite/tutorial. Make sure you check it out if you don't know how to start programming with libwiisprite. It simplifies the first steps as well as teaches some advanced concepts.

Bugs, Suggestions

If you find a bug or have a suggestion (maybe a tutorial to add to the library) please send an e-mail to chaosteil [at] gmail [dot] com or if you're on an EFNet server, send a PM to Chaosteil.