Commit Graph
3567 Commits
Author SHA1 Message Date
Eugene Sandulenko 7c12e80552 WAGE/GRAPHICS: Move standard Mac font mapping to gui/ 2016-08-03 17:28:15 +02:00
Eugene Sandulenko 01a240ca81 GRAPHICS: Fix warnings 2016-08-03 14:41:14 +02:00
Borja Lorente ff9b1ccb57 GRAPHICS: Add most of the documentation to MacWindowManager 2016-08-02 08:33:50 +02:00
Borja Lorente 5ce231a527 GRAPHICS: Add macwindow documentation 2016-08-02 08:33:50 +02:00
Borja Lorente c4f6c4c2fd GRAPHICS: Add documentation to BaseMacWindow 2016-08-02 08:33:50 +02:00
Borja Lorente d7010637af GRAPHICS: Add documentation to MacWindowBorder 2016-08-02 08:33:50 +02:00
Borja Lorente 02a18134c3 GRAPHICS: Add basic caching to 9patch colors 2016-08-02 08:33:50 +02:00
Borja Lorente 03f2d9b01e GRAPHICS: Remove unused variables 2016-08-02 08:33:50 +02:00
Borja Lorente e809320f58 GRAPHICS: Fix indentation 2016-08-02 08:33:50 +02:00
Borja Lorente 6d8b6ad4f8 GRAPHICS: Fix include path in macwindowborder 2016-08-02 08:33:50 +02:00
Borja Lorente f7ba1cb812 GRAPHICS: Rename header guards in macgui 2016-08-02 08:33:50 +02:00
Borja Lorente da33e52539 GRAPHICS: Reorder modules to preserve alphabetical order 2016-08-02 08:33:50 +02:00
Borja Lorente 95beba7b63 GRAPHICS: Fix spacing issues in MacWindowManager 2016-08-02 08:33:50 +02:00
Borja Lorente f92873ae37 GRAPHICS: Add missing file header 2016-08-02 08:33:50 +02:00
Borja Lorente 7bc8d472ab GRAPHICS: Fix style and spelling 2016-08-02 08:33:50 +02:00
Borja Lorente bc798d9ff4 GRAPHICS: Add custom border measures 2016-08-02 08:33:43 +02:00
Borja Lorente 3b1ba50c88 GRAPHICS: First approximation to custom border offsets 2016-07-31 14:47:19 +02:00
Borja Lorente f642ad1cae GRAPHICS: Refactor MacWindow to accept MacWindowBorder 2016-07-31 14:45:37 +02:00
Borja Lorente a2955b1025 GRAPHICS: Add active/inactive borders to MacWindowBorders 2016-07-31 14:45:36 +02:00
Borja Lorente 4ab02530ae GRAPHICS: Add MacWindowBorder to abstract borders 2016-07-31 14:45:36 +02:00
Borja Lorente 26238ee6f9 GRAPHICS: Fix border loading 2016-07-31 14:44:48 +02:00
Borja Lorente b6722a1477 GRAPHICS: Fix segfault in macwindow 2016-07-31 14:05:15 +02:00
Borja Lorente 4a16f5fc39 WAGE: Begin adding borders to the windows 2016-07-31 14:05:15 +02:00
Borja Lorente 6c89eaa1b8 GRAPHICS: Include border loading code 2016-07-31 14:05:15 +02:00
Borja Lorente 1f00d2a099 GRAPHICS: Introduce NinePatchBitmap to MacWindow 2016-07-31 14:05:15 +02:00
Borja Lorente c071eb0e18 GRAPHICS: Fix style issues 2016-07-31 14:05:14 +02:00
Borja Lorente 80604fb3f5 GRAPHICS: Clean up namespaces 2016-07-31 14:05:14 +02:00
Borja Lorente 9ce6fbd0d7 GRAPHICS: Move MacMenu constants 2016-07-31 14:05:14 +02:00
Borja Lorente 1080f19995 GRAPHICS: Create wrapper namespace for MacWindowManager constants 2016-07-31 14:05:14 +02:00
Borja Lorente 941617fc38 GRAPHICS: Create wrapper namespace for MacWindow constants 2016-07-31 14:05:14 +02:00
Borja Lorente ffbc6b0c78 GRAPHICS: Create wrapper namespace for MacMenu constants 2016-07-31 14:05:14 +02:00
Borja Lorente 68b2d44a0f WAGE: Extract MacMenu 2016-07-31 14:04:48 +02:00
Borja Lorente d8652af84e GRAPHICS: Change namespace of MacMenu 2016-07-30 10:06:14 +02:00
Borja Lorente 744034bd98 WAGE: Extract MacWindow 2016-07-30 10:06:09 +02:00
Borja Lorente 592a6defb7 WAGE: Change namespace of MacWindow 2016-07-30 09:42:49 +02:00
Borja Lorente 3d4087b9d0 WAGE: Extract MacWindowManager 2016-07-30 09:41:54 +02:00
Vincent Pelletier 112ca82363 TINYGL: Manage BlitImages with a refcount.
So that zdirtyrect can keep an image alive for longer than its creator
intended.
2016-07-28 23:32:43 +00:00
Vincent Pelletier 8cd029aac7 TINYGL: Add support for 4-bytes words in FrameBuffer::clear{,Region} 2016-07-28 23:29:17 +00:00
Vincent Pelletier 7e51d78480 TINYGL: Fix FrameBuffer::clearRegion color clearing line length. 2016-07-28 15:26:14 +00:00
Vincent Pelletier e7e1df886e TINYGL: Merge dead kInterpST code path into kInterpSTZ one.
Texture coordinates interpolation along Z coordinate is an extra behaviour
over texture coordinates interpolation along X and Y coordinates.
2016-07-28 02:46:41 +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 3221146de9 TINYGL: Always initialise normal and eye coordinates (valgrind) 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
Vincent Pelletier f272c85704 TINYGL: Initialise z buffer (valgrind) 2016-07-28 01:55:48 +00:00
Vincent Pelletier 369332e464 TINYGL: Treat alpha the same way as other color components.
When kLightsMode (aka kInterpRGB) is false, "a" is always 0 (vertice data is
not used in caller in corresponding branches), so taking it into account makes
all triangles transparent.
This is not visible in practice, because putPixelTextureMappingPerspective is
only called when (kInterpST || kInterpSTZ) is true, and kInterpRGB is always
true when that's the case. But unifying color processing allows further code
simplification.
2016-07-28 01:55:14 +00:00
Vincent Pelletier 0065f38251 TINYGL: Reuse global const. 2016-07-28 01:55:14 +00:00
Vincent Pelletier e1d5b811e1 Revert "GRIM: fixed transparency in TinyGL renderer"
This reverts commit b8bddf64da.

Since 9b7548ccf7, alpha test is enabled
when drawing model faces, fixing transparency issues in GRIM which were
corrected by reverted commit.
It is incorrect to test transparency when caller did not enable it.
Also, this change bypasses increments done at the end of
putPixelTextureMappingPerspective, so transparent textures in 16 bits mode
would be stuck on the transparent pixel for the current line's 8-pixel run
in filTriangle, and would ignore z coordinate.
2016-07-28 01:55:14 +00:00
Vincent Pelletier 8b6d362c58 TINYGL: Reuse _enableScissor property.
Should have been part of:
  commit db764b1ca5
  TINYGL: Entirely avoid calling scissorPixel in putPixel when possible.
2016-07-28 01:55:14 +00:00
Vincent Pelletier 18342118dc TINYGL: Fix y coordinate tracking when drawing triangles.
Increment y inside the loop, not outside.
Set y to the topmost vertex y coordinate, which depends on which half of
the triangle is being drawn.
Should have been part of:
  commit 3c2689a65f
  TINYGL: Optimise scissorPixel.

This does not (should not) fix any visible regression, as pixel scissor is
only (?) used when dirty rectangle mecanism is enabled (and it is disabled).
2016-07-28 01:55:10 +00:00