Commit graph

467 commits

Author SHA1 Message Date
Stefano Musumeci
98d6944c22 TINYGL: Moved rasterization logic inside draw call.
Note: As a side effect to this draw calls are now batched together.
2014-07-26 17:55:34 +02:00
Stefano Musumeci
83e1d0a699 TINYGL: Added a few more information to the state stored for Rasterization draw call. 2014-07-25 16:02:26 +02:00
Stefano Musumeci
a96597b0e0 TINYGL: Added a getter function to FrameBuffer. 2014-07-25 16:02:25 +02:00
Stefano Musumeci
390e07f02d TINYGL: Added ZBuffer mode to blitting draw call type. 2014-07-25 16:02:25 +02:00
Stefano Musumeci
b5720b425f TINYGL: Added tglBlitZBuffer as a way to render to the Z buffer. 2014-07-25 16:02:24 +02:00
Stefano Musumeci
7fdd5bcd9a TINYGL: Implemented ClearBuffer draw call type. 2014-07-25 16:02:23 +02:00
Stefano Musumeci
b5bb75cc9e TINYGL: Change a detail in the API implementation.
Reason: changing this allows to get a valid value of alphaTestFunc from the function instead of a value that will always be
transformed inside the setter when it could be transformed somewhere else without hurting anyone.
2014-07-25 16:02:22 +02:00
Stefano Musumeci
8d498699b3 TINYGL: Encapsulated draw calls issuing inside a function. 2014-07-25 16:02:21 +02:00
Stefano Musumeci
f2bfdc672d TINYGL: Formatting style fixup. 2014-07-25 16:01:34 +02:00
Stefano Musumeci
96167b84c4 TINYGL: Removed duplicated variables.
Explanation: those two variables were already tracked inside the class FrameBuffer and they were duplicated here, since there is no need to keep a copy of those variables I just removed them.
2014-07-25 15:54:07 +02:00
Stefano Musumeci
2b3fd8501a TINYGL: Changed the way tinyGL textures are disposed. 2014-07-25 12:59:51 +02:00
Stefano Musumeci
f0de01af01 TINYGL: Implemented deferred 3D draw calls. 2014-07-24 19:51:08 +02:00
Stefano Musumeci
7df4a3efa9 TINYGL: Added implementation of RasterizationDrawCall. 2014-07-24 19:51:07 +02:00
Stefano Musumeci
46ff1767ab TINYGL: Moved a few member function of FrameBuffer from source to header file to favor inlining. 2014-07-24 19:51:07 +02:00
Stefano Musumeci
6705e54d48 TINYGL: Finished basic implementation of BlittingDrawCall. 2014-07-23 21:40:15 +02:00
Stefano Musumeci
7808f7190a TINYGL: Added some getter functions to FrameBuffer 2014-07-23 21:39:47 +02:00
Stefano Musumeci
6fc509bb15 TINYGL: Changed the way textures are disposed.
Textures are now marked as disposed and then cleaned up afterwards when the function cleanup is called. (this is needed in order to defer blit calls without making them crash because a texture has been disposed before the frame ended)
2014-07-23 21:37:45 +02:00
Stefano Musumeci
44b0718f0e TINYGL: Separated dispatch blitting function from execution one.
This is needed to allow a deferred blit call.
2014-07-23 15:29:21 +02:00
Stefano Musumeci
0b7c8140f8 TINYGL: Fixed formatting namepace indentation. 2014-07-23 15:29:20 +02:00
Stefano Musumeci
4ef1b80ff6 TINYGL: Added queue information to tinyGL context. 2014-07-23 15:29:20 +02:00
Stefano Musumeci
506cbe35c5 TINYGL: Moved a tglPresent from api.cpp to zrect.cpp 2014-07-23 15:29:16 +02:00
Stefano Musumeci
ff58b301b9 TINYGL: Added stub implementation for the two draw call categories. 2014-07-23 15:28:51 +02:00
Stefano Musumeci
d74692477b TINYGL: Added dirty rectangle files. 2014-07-23 15:28:51 +02:00
Stefano Musumeci
8abbf7296c TINYGL: Added "end of frame" marker function. 2014-07-23 15:28:48 +02:00
Stefano Musumeci
c33cd39b15 TINYGL: Removed an hardcoded value. 2014-07-18 20:06:42 +02:00
Stefano Musumeci
3994405195 TINYGL: Optimized blitting routines 2014-07-18 19:56:26 +02:00
Stefano Musumeci
6716541311 TINYGL: Optimized a branching instruction towards static evaluation. 2014-07-18 18:50:10 +02:00
Stefano Musumeci
142a439091 TINYGL: Tweaked a few functions to make them inline. 2014-07-18 18:50:09 +02:00
Stefano Musumeci
98a2e7f3c8 TINYGL: Optimized a few cases in blitting routines. 2014-07-18 18:50:09 +02:00
Stefano Musumeci
ff32b64212 TINYGL: Added utility function in FrameBuffer. 2014-07-18 18:50:08 +02:00
Stefano Musumeci
7a1bba2591 TINYGL, GRIM: Fixed a bug in monkey island rendering. 2014-07-18 18:50:07 +02:00
Stefano Musumeci
3c2655f21a TINYGL, MYST3: Fixed compiler warnings. 2014-07-18 18:50:07 +02:00
Stefano Musumeci
e4e0b09059 TINYGL: Formatting fixup 2014-07-18 18:50:06 +02:00
Stefano Musumeci
85940f353d TINYGL: Formatting fixup. 2014-07-18 18:50:06 +02:00
Stefano Musumeci
6afaca3dc0 TINYGL: Fixed a bug about scaled and rotated sprites not being rendered correctly. 2014-07-18 18:50:05 +02:00
Stefano Musumeci
f4521867d4 TINYGL: Added shortcut for tglBlit API. 2014-07-18 18:50:04 +02:00
Stefano Musumeci
baf872c963 TINYGL: Moved tglBlit functions inside the struct BlitImage. 2014-07-18 18:50:04 +02:00
Stefano Musumeci
c7e70710b3 TINYGL: Fixed a bug in tglBlitRLE that disregarded destination position. 2014-07-18 18:50:02 +02:00
Stefano Musumeci
d5b137b507 TINYGL: Optimized color keying and fixed a bug with conversion from different types of pixel formats.. 2014-07-18 18:50:02 +02:00
Stefano Musumeci
2c697350a9 TINYGL: Fixed sprite coloring and blending.
TINYGL: Fixed bug with sprite coloring.
2014-07-18 18:50:01 +02:00
Stefano Musumeci
697d8108b1 TINYGL: Removed duplicated code. 2014-07-18 18:50:01 +02:00
Stefano Musumeci
ba202b497a TINYGL: Removed unnecessary function arguments to tglBlitScale 2014-07-18 18:50:00 +02:00
Stefano Musumeci
d99aae5b64 TINYGL: Split blitting function in multiple routines to make code more readable. 2014-07-18 18:50:00 +02:00
Stefano Musumeci
6bd8021402 TINYGL: Implemented RLE blit optimization. 2014-07-18 18:49:59 +02:00
Stefano Musumeci
0a43444611 TINYGL: Added license header. 2014-07-18 18:49:59 +02:00
Stefano Musumeci
cc6cc4abb4 TINYGL: Removed static variable. 2014-07-18 18:49:58 +02:00
Stefano Musumeci
a75f462615 TINYGL, MYST3: Added namespace to blitting API. 2014-07-18 18:49:58 +02:00
Stefano Musumeci
148011fb06 TINYGL: Implemented sprite rotation 2014-07-18 18:49:57 +02:00
Stefano Musumeci
674688d771 TINYGL: Implemented sprite scaling 2014-07-18 18:49:56 +02:00
Stefano Musumeci
fb65073dcd TINYGL: Addressed a few issues with blitting interface. 2014-07-18 18:49:56 +02:00