5080 Commits

Author SHA1 Message Date
Stefano Musumeci
76e6499cb5 TINYGL: Added dirty region computation for rasterization draw calls. 2014-07-28 18:32:28 +02:00
Stefano Musumeci
91c44129b9 TINYGL/HACK: This commit is just an hack that makes the fps counter rendered correctly.
I will probably remove this after everything is finished.
2014-07-27 19:57:44 +02:00
Stefano Musumeci
4f6df7dea1 TINYGL: Reordered a function call inside Grim engine.
Explanation: luaUpdate destroys shadow mask buffers which in turn makes the program crash, this was the only solution I could come up with but I'm not sure if it has any side effects.
2014-07-27 19:57:44 +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
89adcf8b97 GRIM: Replaced z blitting with newer tinyGL implementation. 2014-07-25 16:02:27 +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
00ae985fb0 GRIM: Changed clear screen/depth buffer implementation. 2014-07-25 16:02:23 +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
0932cdacde TINYGL: Added a call to tglPresent in GRIM engine
Note: I'm not exactly sure that's the right place to put it but as for now it was the only place that allowed the frame counter to be rendered after everything
2014-07-23 21:38:28 +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
dc84cca19d GRIM: Replaced a tglBlit calls with new version. 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