Paweł Kołodziejski
e417d5a3ef
TINYGL: Allow parametrize DrawCallMemory size while creating context
2023-02-12 17:09:27 +01:00
Cameron Cawley
50d7086d4a
TINYGL: Fix memory leak
2023-02-05 22:26:33 +00:00
grisenti
2db6ed40b4
TINYGL: reduce memory allocation
2022-12-23 14:04:18 +01:00
grisenti
304a2df165
HPL1: add basic tinygl impl classes
2022-12-23 14:04:03 +01:00
Paweł Kołodziejski
bf8aa5c5b8
GRAPHICS: TINYGL: Added missing framebuffer class de-allocation
2022-10-27 01:02:32 +02:00
Paweł Kołodziejski
ffe7bee81e
TINYGL: Switch profiling to runtime condition
2022-06-05 23:40:35 +02:00
Paweł Kołodziejski
cdaec9de8d
TINYGL: Added fog support.
2022-06-05 20:59:38 +02:00
Paweł Kołodziejski
de67c1ae54
TINYGL: Latest TinyGL 0.4.1 is relicensed under MIT license.
2022-03-08 15:47:20 +01:00
Paweł Kołodziejski
04b13dc61a
TINYGL: Split/move functions to API and internal implementation.
2022-01-01 14:06:10 +01:00
Paweł Kołodziejski
25c4e89b7a
TINYGL: Janitorial
2022-01-01 12:00:38 +01:00
Paweł Kołodziejski
20cb0ae228
ALL: Cleanup ResidualVM -> ScummVM
2021-12-26 21:19:38 +01:00
Eugene Sandulenko
abea37c9bb
ALL: Update ScummVM project license to GPLv3+
2021-12-26 18:48:43 +01:00
Paweł Kołodziejski
c66ca22cbb
TINYGL,GRIM: Replace custom shadows to stencil buffer solution
2021-12-10 18:37:24 +01:00
Paweł Kołodziejski
6a591146c8
TINYGL: Added stencil buffer implementation
2021-12-09 21:10:53 +01:00
Paweł Kołodziejski
a395700d1f
TINYGL: Put debug dirty rects code into runtime condition
2021-12-09 12:38:41 +01:00
Paweł Kołodziejski
10f6a79ce8
TINYGL: More work on accessing FrameBuffer class
2021-12-07 20:40:32 +01:00
Paweł Kołodziejski
2368991ab6
TINYGL: Rearrange access gl context access from/to frame buffer class
2021-12-07 19:58:03 +01:00
Paweł Kołodziejski
c1512a5c40
TINYGL: Eliminate passing context where possible
2021-12-07 00:58:14 +01:00
Paweł Kołodziejski
d80bd265d2
TINYGL: Rearrange visibility various functions
2021-12-06 13:57:41 +01:00
Paweł Kołodziejski
86dc65250e
TINYGL: Cleanup code
2021-12-04 14:27:35 +01:00
Paweł Kołodziejski
eab1fe4097
TINYGL: Implemented tglPolygonOffset function
2021-10-26 21:59:04 +02:00
Vincent Pelletier
a6af3a38a3
TINYGL: Fix vertice color when clipped and lighting is disabled
...
longcurrent_color is assigned per vertex, but it is not saved on each
vertex on creation (unlike their "color" attribute, used when lighting
is enabled).
As a consequence, and because rendering happens asynchronously (rather,
following the draw call queue managed by zdirtyrect.cpp when requested
to flip current buffer), longcurrent_color at clipping time can be
different to the one at vertex declaration time, causing color artifacts.
The effect is most noticeable in EMI set shi, in the grog dispenser +
shipyard manager closeup angle, when Guybrush exits the screen by
crossing its right border: dark triangles become visible on his face.
Instead, always use the color attribute, which is already properly
initialised on vertex creation.
2017-07-20 01:51:07 +00:00
Vincent Pelletier
77a4672530
TINYGL: Enable dirty rectangle by default.
2017-05-02 09:57:09 +00:00
Vincent Pelletier
1d3d581870
TINYGL: Use same default clear depth as OpenGL
2017-05-01 02:19:42 +00:00
Vincent Pelletier
bf319b5437
TINYGL: Cache and clip dirty rect on all DrawCall subclasses.
...
getDirtyRegion will be called twice on each DrawCall instance, so make
repeated work as short as possible.
2017-04-23 12:30:00 +00:00
Vincent Pelletier
6087492dbd
TINYGL: Simplify setting & disabling scissors.
2017-04-23 10:35:04 +00:00
Vincent Pelletier
a577b4c6a6
TINYGL: Free disposed textures before images.
...
Reusing function already defined in zdirtyrect.cpp doing both.
2016-07-28 01:55:48 +00:00
Vincent Pelletier
47a1e826e7
TINYGL: Free draw call lists in glClose.
2016-07-28 01:55:48 +00:00
Vincent Pelletier
786311652a
TINYGL: Initialise all light properties (valgrind).
...
Also, sort initialisation in the same order as declaration, for easier
difference-spotting.
2016-07-28 01:55:48 +00:00
Paweł Kołodziejski
d1be78ca49
Merge pull request #1269 from vpelletier/tinygl_optimise_light
...
Tinygl: optimise gl_shade_vertex
2016-07-20 14:39:05 +02:00
Vincent Pelletier
db8cee2a69
TINYGL: Free BlitImage memory on close.
2016-07-18 04:36:37 +02:00
Vincent Pelletier
f66026a8aa
TINYGL: Only do spotlight & specular computations when actually needed.
...
Spotlight and specular requires normalized d.
Skip specular if the light source or the material have no specular
component.
2016-07-16 12:17:59 +00:00
Vincent Pelletier
411e16fba5
TINYGL: Fix default diffuse and specular values for lights > 0.
2016-07-16 12:17:59 +00:00
Vincent Pelletier
f6bbbc7b28
TinyGL: Use standard initial diffuse and specular values.
...
As per OpenGL specifications, light 0 is the only light with full diffuse and
specular light initial state. This should not affect residualvm as all enabled
light properties are configured.
2016-01-01 17:37:23 +01:00
Pawel Kolodziejski
f039ccd474
TINYGL: make consistent between allocation and free resource
2014-12-27 23:28:11 +01:00
Stefano Musumeci
974f47fa42
TINYGL: Added a way to disable or enable dirty rectangles at runtime.
2014-08-16 16:04:10 +02:00
Stefano Musumeci
2cf70d6d76
Merge branch 'master' into tinygl-dirty-rects-fixed
...
Conflicts:
graphics/tinygl/ztriangle.cpp
2014-08-16 16:03:27 +02:00
Pawel Kolodziejski
1b48414d7e
TINYGL: cleanup license headers
2014-08-13 18:52:52 +02:00
Stefano Musumeci
5adba756e3
TINYGL: Renamed tglBlitScissorRect into tglBlitSetScissorRect
2014-08-10 19:38:06 +02:00
Stefano Musumeci
72054e87ca
TINYGL: Replaced magic numbers with a constant.
2014-08-07 21:47:54 +02:00
Stefano Musumeci
a0a17717be
TINYGL: Added linear allocator for frames draw call data.
2014-08-06 21:50:49 +02:00
Stefano Musumeci
2af17ffdb3
TINYGL: Added default scissor rectangle value.
2014-08-05 20:00:13 +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
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
fb65073dcd
TINYGL: Addressed a few issues with blitting interface.
2014-07-18 18:49:56 +02:00
Stefano Musumeci
62aa0af91a
TINYGL: Brute force blit api implementation.
2014-07-18 18:49:54 +02:00
Pawel Kolodziejski
97b03aed01
TINYGL: changed code to allow initialize TinyGL with specific internal texture dimension.
...
Grim: 256x256, Myst3: 1024x1024
2014-07-05 13:08:34 +02:00
Pawel Kolodziejski
1b8dd28bc7
TINYGL: implemented tglDepthFunc
2014-07-04 23:14:44 +02:00
Pawel Kolodziejski
b4962f645e
TINYGL: added tglAlphaTest stubs
2014-07-04 08:43:19 +02:00
Stefano Musumeci
109767e513
TINYGL: Implemented alpha blending and color transformation in sprite blitting for Grim TinyGL renderer.
2014-07-02 00:09:13 +02:00