Commit Graph

555 Commits

Author SHA1 Message Date
spartanj
b071630924 Removed boost dependency ( now use PlusCallback for callbacks, and use my own lexical cast ). With this improved a lot the compiling time. As far as i could test, PlusCallback is faster than boos::function too.
I added a couple of checks to avoid rendering problems on fonts.
And added some minor fixes.
2010-10-01 04:49:36 -03:00
spartanj
0f03b3599a A couple of fixes, one in stb_info ( avoid division by zero ), and other in the GetTexture function on cSprite, now returns the correct data. 2010-09-23 03:56:56 -03:00
spartanj
9d7ff55c7a Fixed Shader Program Handler. 2010-09-11 04:03:47 -03:00
spartanj
89bb55df44 Restore on context lost vertex buffers and frame buffers.
Fixed some compiler warnings.
2010-09-09 16:44:31 -03:00
spartanj
c4a1a36892 Fixed compilation with MSVC++. 2010-09-08 05:30:59 -03:00
spartanj
f7f7fdcebd Fixed Doxyfile. 2010-09-07 15:32:42 -03:00
spartanj
79c61b9ce8 Changed MTRand class to cMTRand.
Added Update on VertexBuffer to update the data from memory to the gpu ( only usefull for the VBO ).
Updated windows project.
Changed EE_TEX_FILTER enum.
2010-09-04 21:45:38 -03:00
spartanj
6432fa9a9b Added support for multitexture binding.
Added some functions for tex env managing.
Modified some enum names from renders.
Added a pixel separator for characters in the ttf creation ( optional ).
Moved some OpenGL and GLEW things to cGL, this is for a future implementation with OpenGL ES and without GLEW.
Tryed to fix a bad rendering bug when clipping controls with borders ( borders disappear ), i think that the hack is working.
Modified some name conventions.
2010-09-04 05:28:41 -03:00
spartanj
f8703cd568 Added Vertex Buffer support ( cVertexBuffer base class (interface), cVertexBufferOGL fallback if gpu doesn't support VBO's, cVertexBufferVBO uses ARB Vertex Buffer Object ).
Added a Memory Manager to trace memory leaks.
Fixed some memory leaks detected with the new memory manager.
Added an allocator for STL ( to use it with the custom allocation seted in the memory manager ).
Fixed Makefiles ( i wroke them ).
2010-09-03 02:53:14 -03:00
spartanj
d9bd5d763f Added UpdateTextureAtlas function on cTextureGroupLoader. This is to update a current texture atlas, it will check if some image was changed and update it, and if some images where added or removed it will recreate the whole texture atlas.
Changed the name of the singleton template from cSingleton to tSingleton ( c is for class, and t for template, that's why i changed ).
Removed the using namespace std, and added std:: to the std methods and templates.
Added some API calls for windows dll.
Added SaveTypeToExtension and DirPathAddSlashAtEnd on utils.
2010-08-30 00:07:43 -03:00
spartanj
bb8760ec42 Fixed Mac OS X compilation, bug removed temporally the context access on Mac OS X, this is not necessary for any functionality right now.
It was added for the PBuffer class, but i'll not implement PBuffers on Mac OS X until i understand how Carbon and Cocoa works, and i don't have direct access to a Mac OS X ( only from a VM, and works slow as a cart ).
Changed the platform name from Apple to Mac OS X ( i don't even know what i was thinking when a put Apple as a Platform :P ).
2010-08-25 01:47:33 -03:00
spartanj
66ead32bcc Added support for Frame Buffers, FBO and PBuffer (win and linux ftm), better known as render to texture.
Added loading from memory of texture groups.
Fixed minor things.
2010-08-24 05:20:02 -03:00
spartanj
99f14bbd62 Fixed Windows compilation. 2010-08-23 15:01:02 -03:00
spartanj
f184be80f9 Removed unused code on HaikuTTF.
Changed cZip class, now use another library ( libzip and zlib ).
2010-08-23 05:16:13 -03:00
spartanj
aa2ac87280 Minor fix. 2010-08-22 20:16:53 -03:00
spartanj
41b55c8faa Added support for animated sprites loaded via a pattern, this is to take advantage of the texture packer.
Added a flag to the texture packer to remove the extensions of the shapes and shapegroups when loaded ( to easily find shapes ).
Modified a little how cSprite works, simplyfied some things.
2010-08-22 19:55:16 -03:00
spartanj
b6fd66beac Added support for OpenGL ES rendering ( not implemented really, just modified some renderings to render for OpenGL ES compilant code ). 2010-08-22 04:02:51 -03:00
spartanj
f06d48c04a Some minor changes on the packer and the batchrenderer. 2010-08-21 02:05:22 -03:00
spartanj
28868341ec Added cTexturePacker. Utility class to create texture atlas and save the subtextures as shapes.
Added cTextureGroupLoader. Utility class to load the texture atlas saved shapes ( sync and async ).
Added cTexturePackerNode and cTexturePackerTex, both are helpers to create the texture atlas, and not visibles to the end user.
Added some helpers functions for file path management.
Added some new functions for cImage. scaling, resize, thumnails, copy image into image, and some others, and moved some cTexture functions to cImage.
Added stbi_info support for BMP,PSD,HDR,PIC in stb_image.
Added Progress() function to cResourceLoader, to know the current loading progress in percent ( 0%-100% ).
Added api calls to some classes. But i'm still looking how to work with DLL.
Modified some details in cTimer and cTimeElapsed.
The code was only tested on linux, so, still need some checking, but, it's a lot of code, so i'll commit it and fix bugs if it's necessary.
2010-08-20 01:47:07 -03:00
spartanj
32e36d645a Removed stdint.h. 2010-08-15 19:04:51 -03:00
spartanj
faf116fdde Added support for Mac OS X.
Fixed shader reloading.
Added pack loading for shaders.
Added support for direct loading of compressed textures ( direct upload to vram ).
Added cImage class.
2010-08-15 19:03:23 -03:00
spartanj
0a13a70ffa Fixed some compiler warnings. 2010-08-03 17:53:08 -03:00
spartanj
f76b790419 Added Joystick support. 2010-08-02 22:31:23 -03:00
spartanj
6b40d82541 stb_image updated. 2010-08-02 04:47:08 -03:00
spartanj
b374cbc282 Updated stb_image.
Removed cShapeManager ( i forgot to remove it ).
Added FileWrite function.
2010-08-01 19:52:38 -03:00
spartanj
74e6eacd15 Added Mersenne Twister pseudo-random number generator ( really usefull and fast for some type of games if you want a deterministic random number generator ).
Reimplemented the tResourceManager, now uses std::list instead of std::map, and added some new methods.
cShapeGroupManager and cShapeGroup now inherits from tResourceManager.
Rolled back eeUint and eeInt, now are fine again ( it was changed for testing ).
2010-08-01 18:16:27 -03:00
spartanj
0a3d6e0728 Added cShapeGroup, cShapeGroupManager and cGlobalShapeGroup ( replazing the cShapeManager, now it's possible to group shapes by a pattern ).
Changed some minor things on the singleton.
2010-08-01 00:52:15 -03:00
spartanj
9a20892c55 Two minor changes. 2010-07-31 04:52:28 -03:00
spartanj
19a7aafb51 Added a template for resource manager (tResourceManager).
Added a Font Manager.
cShaderProgramManager is now using the tResourceManager.
Added support for Font async loading.
Changed Write overloading on cLog, for Writef, to avoid overloading errors.
2010-07-31 04:15:09 -03:00
spartanj
39312a23dd Optimized tSoundManager.
Added tSoundLoader, a template used for the ResourceLoader.
Fixed PushText on the Console.
Added loading from memory on shaders.
Added FileExtension to get file extension.
Added to Packs ExtractToFile and Add using pointers instead of std::vectors ( to give flexibility ).
And fixed some minor bugs.
2010-07-30 00:59:49 -03:00
spartanj
4c07441c77 Fixed compilation on windows.
Fixed shaders reload ( after context lost ).
Fixed some compiler warnings on gcc (mingw32).
Added Windows Code::Blocks Project file.
2010-07-27 03:44:40 -03:00
spartanj
c967cda05d Added Resource Loader ( multi-threaded async loading ).
Added autocomplete to the console.
Added an optional define to compile without libsndfile ( you don't need it if you only need ogg format ).
Fixed some bugs.
Changed the way keys state are stored ( to support in near future, save keyboard and mouse states ).
2010-07-27 00:35:22 -03:00
spartanj
a7774298b0 Cleaned a little Audio system. Added support for stream seeking.
Cleaned a little HaikuTTF.
Updated GLEW.
2010-07-26 00:37:38 -03:00
spartanj
8407055826 Fixed cShape texture caching.
Added some minor changes.
2010-07-25 16:39:33 -03:00
spartanj
88d3f5b3dd Updated stb_image header. 2010-07-25 14:28:13 -03:00
spartanj
75b1a4e148 Changed the way that textures lock and unlock. 2010-07-25 02:54:54 -03:00
spartanj
9bb368be69 Updated stb_image, thanks to sean for the fix! 2010-07-25 01:54:17 -03:00
spartanj
6ca27face4 Reverted stb_image version until png loading get fixed. 2010-07-24 21:56:35 -03:00
spartanj
b0c6069785 Updated stb_image with the last version ( gif read support, png write support ) 2010-07-18 17:49:28 -03:00
spartanj
d91c1e7f5c Optimized SOIL to load faster in some cases the textures. 2010-07-18 16:57:28 -03:00
spartanj
b021ec49ef Working on the async texture loading.
Individual async texture loading is working but not very tested.
Still need some work optimizing the texture creation ( reimplement SOIL_create_OGL_texture avoiding the data duplication if not needed ).
2010-07-18 04:08:35 -03:00
spartanj
3a5ef5289c Some minor changes. Nothing important. 2010-07-17 15:00:49 -03:00
spartanj
f547f9b121 Removed fastevents (unnecesary). 2010-07-14 03:33:55 -03:00
spartanj
5dbb935102 Fixed two huge memory leaks.
Next time i'll sleep before programming. :P
2010-07-13 02:45:29 -03:00
spartanj
8e197828a8 Removed SDL_ttf dependency, replaced by HaikuTTF ( own implementation of a ttf handler library ). Still a work in progress, but working 100 %.
Removed compiler warnings from zip_utils.
Fixed cTexture and cShape memory leaks ( now using std::vector by default to allocate textures on memory, removed manual dynamic loading because it's not working fine ).
Fixed cShaderProgram unloading.
Fixed a bug on cInifile.
Updated the Makefile.
2010-07-11 19:17:01 -03:00
spartanj
387198ff6f Some changes on texture factory. 2010-07-09 19:04:25 -03:00
spartanj
4497106b0a Updated stb_image with the lastest version ( merged some files ).
Fixed a memory leak.
2010-07-08 05:16:46 -03:00
spartanj
c3ef149618 Fixed some bugs on Texture Factory.
Removed useless functions on Texture Factory.
Reordered load functions on Texture Factory.
Moved Draw calls to cTexture instead of Drawing inside the Texture Factory.
Added GetNumGPUs function on utils.
Renamed soil files.
Added optional compilation with LLVM.
Added TODOs, and defined the future of the developing of the library ( ordered by priority, starting the most important from the top ).
2010-07-08 02:37:47 -03:00
spartanj
2f0d7efa7e Added support for Zip files and fixed some minor bugs on cPak. 2010-07-03 16:00:17 -03:00
spartanj
0048fa6dfb Fixed some bugs, added rounder rectangles. 2010-06-30 23:35:28 -03:00