Well, I've been working on vLib and uploading changes and such to an svn. Thought I'd start sharing it. It's changed A LOT! It's in cpp now, all of the functions have been renamed, it's been simplified, it has moar features, and it's a lot faster.
This is still a work in progress, so I still wouldn't recommend it for serious development. But it's getting extremely close to that point. If you would like to contribute bug fixes or features, you may do so. This is released up the GPL, so if you plan to use this, you must release anything using this under GPL. Meaning you must include your programs source with the release. Open Source ftw!
Also, if you want something in vLib, please tell me! I do listen, and if the idea is good, then chances are it will be included in the library in the future!
I've set up a websvn! Check it out! The site also has forums, but I need a good theme and logo for them. I also need to have the websvn integrated into the forums, and a page (http://zettablade.0x89.org/index.html) that redirects to the forums(http://zettablade.0x89.org/forums). (I haven't done html in forever, and I'm too busy to look up page redirections.) Last thing I need is the forums portal (tinyportal I think it is) to post the first post of the topics in the updates forum under vLib.
If your up for any of that, please pm me, email me at email@example.com, or post in the topic.
Spoiler for Install:
Spoiler for Use:
Spoiler for Update:
Features ( This is more of a quick summary then a complete list )
- Loads png, jpg, and tga
- image's are auto-magically swizzled
- Draw an image (always strip blits, making drawing extremely quick with large image's)
- Engine for animating horizontal sprite strips, vertical strip strips, and sprite sheets!
- Set an image's tile size
- Can draw pixels, lines, box's, their outlines
- Can also draw gradient lines, box's, and box outlines
- Much nicer interface for checking the controller input then the sdk's
- update_dTime() and dTime, which is the libraries built in delta timer
- Does not use pspGum. Instead, it uses custom matrix functions written entirely in vfpu !!!EXTREMELY FAST!!!
- Add images together
- 2d camera class for scrolling
Todo ( These should all be done eventually )
- 2D tile engine
- Replace all the c functions with cpp functions
- Finish the 2D camera class (good for scrolling)
- Add support for md2, obj, 3ds model formats
- Improve/fix the model loader
- Fix the 3d camera and improve upon it (making it much more flexible/faster)
- true type font support (load, render, and printing)
- (custom) bitmap font support (loading and printing)
- add support for other image formats, mainly bmp, gif, and pcx
- Add support for OpenGL
- Add support for Linux, Mac, and Winblows
- Make instances of an image
- Loaders to determine if an image has been loaded already, so no image is ever loaded more then once (I feel like this could cause issues somehow)
- Be able to combined two images to produce one big one, good for static images. (done, but need to smooth out the bugs)
- fix image rotations
- add rotations for shapes
- saving images and screen shots (can't believe I havn't done this yet...)
- streaming loading/saving, so you don't have to wait for files to load or write. Pretty much, init data, then start loading/saving in another thread. This would allow for loading on the fly.
Bugs ( or features, depends on how you look at things )
- Images with a size not equal to power of 2 (1,2,4,8,16,32,64,128,256 , and 512) have visible padding (blank pixels) when they repeat. It has been determined that this is an issue with the drawing function. What's causing this though, is still up for grabs.
- Images seem to get a slight white fuzz around the edges when the linear filter is on. It seems to change depending on the position. I have no idea why atm, but I have a feeling it might have something todo with the first bug.