Stefano Musumeci
3965d93c1b
TINYGL: Implemented clipped bitmap blitting.
2014-08-01 19:45:59 +02:00
Stefano Musumeci
2189e97409
TINYGL: Implemented partial screen clearing.
2014-08-01 19:45:55 +02:00
Stefano Musumeci
79ea06e41d
TINYGL: Implemented scissor rectangle in frame buffer.
2014-08-01 19:45:32 +02:00
Stefano Musumeci
5049413d24
TINYGL: Minor optimization.
...
Note: removed a duplicated if check.
2014-08-01 19:08:43 +02:00
Stefano Musumeci
447aa02d03
TINYGL: Implemented dirty rects region detection and merging.
2014-07-31 15:32:56 +02:00
Stefano Musumeci
ae59f92ce4
TINYGL: Implemented equality operators for draw calls.
2014-07-31 15:32:56 +02:00
Stefano Musumeci
a54020bd75
TINYGL: Implemented equality operator for draw call states.
2014-07-31 15:25:37 +02:00
Stefano Musumeci
ca1623517a
TINYGL: Implemented equality operator for GLVertex.
2014-07-31 15:24:58 +02:00
Stefano Musumeci
4332aaf378
TINYGL: Implemented equality operator for ZBufferPoint
2014-07-31 15:24:41 +02:00
Stefano Musumeci
bdefce84b9
TINYGL: Implemented equality operator for BlitTransform.
2014-07-31 15:24:25 +02:00
Stefano Musumeci
f192fac096
TINYGL: Improved dirty rectangle rendering by differentiating draw call types by color.
2014-07-28 18:33:04 +02:00
Stefano Musumeci
76e6499cb5
TINYGL: Added dirty region computation for rasterization draw calls.
2014-07-28 18:32:28 +02:00
Stefano Musumeci
8b3a080b04
TINYGL: Implemented debug rendering of dirty regions
2014-07-27 19:57:43 +02:00
Stefano Musumeci
2196b66cb7
TINYGL: Added stub implementation for draw call dirty region detection.
2014-07-27 19:53:10 +02:00
Stefano Musumeci
29efd03671
TINYGL: Added an utility function that gives the size of a previously loaded blitImage.
2014-07-27 19:51:16 +02:00
Stefano Musumeci
2e8b9b3f4e
TINYGL: Added an outline rectangle drawing function inside zrect.
2014-07-27 19:50:24 +02:00
Stefano Musumeci
365839e007
TINYGL: Added a way to optionally restore the state after a draw call.
2014-07-27 19:45:33 +02:00
Stefano Musumeci
529cc2b1c6
TINYGL: Fixed a bug with how textures were deleted inside tglPresentBuffer.
2014-07-26 17:57:15 +02:00
Stefano Musumeci
7f560daf04
TINYGL: Replaced Array with List as the container for draw calls queue.
...
NOTE: I also had to construct the struct GLContext properly now.
2014-07-26 17:56:44 +02:00
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