dsa-t
bd8b737c44
GAL: Do better job at reserving vertices.
2022-09-14 16:07:47 +00:00
jean-pierre charras
df35576cf9
fix my previous commit ( c0661468
) broken.
2022-09-09 19:00:47 +02:00
jean-pierre charras
c06614689e
OPENGL_GAL: disable bitmap image caching due to serious issues (memory leak)
...
It was re-enabled by commit cbc3bfbf
.
The current code to handle cached bitmaps is no longer compatible with the
current code.
Many cached items are created because a lot of clones are used to manage bitmap images.
Cached items are never cleaned, so a lot of memory is never freed after
using these temporary clones
And caching items do not significantly speedup drawings.
2022-09-09 18:37:30 +02:00
jean-pierre charras
c13b938a4b
Free memory when unused, forgotten in my commit d4feb59e
2022-09-08 13:07:36 +02:00
jean-pierre charras
d4feb59ed9
OPENGL_GAL, draw bitmap: Rebuild the bitmap cache if the bitmap itself was rotated.
...
Fixes #12378
https://gitlab.com/kicad/code/kicad/issues/12378
Fix also a Coverity warning.
2022-09-08 12:00:43 +02:00
Mike Williams
3669cb4673
PCB Editor: Add User Background Images
2022-07-14 11:23:23 +00:00
Mike Williams
cbc3bfbf08
GAL: Re-enable OpenGL bitmap cache
...
Might still have issues, re-enabling for wider test.
2022-07-14 11:23:23 +00:00
Mike Williams
3e80963482
GAL: Delete no-effect target changes
2022-07-14 11:23:23 +00:00
dsa-t
3a76435eda
OpenGL: Use glGetProgramiv instead of the extension function.
2022-06-09 19:37:42 +00:00
Mike Williams
857990a883
Hierarchy: turn into a left side pane
...
Drop auto-closing option as well.
2022-06-02 21:56:17 +00:00
Marek Roszko
417f2f357c
Cleanup naming of shader params/uniforms
2022-05-19 07:49:24 -04:00
Jeff Young
38e5faf21b
Overhaul bitmap text for performance.
...
Also adjusts metrics to better match stroke font.
Also removes text-halo highlighting as it's too expensive to re-render
when the zoom changes.
Fixes https://gitlab.com/kicad/code/kicad/issues/11460
2022-05-14 20:09:54 +01:00
Marek Roszko
8288f24264
Move all the shaders to glsl files (and fix the processor more)
2022-05-12 23:37:44 -04:00
Marek Roszko
6188f632b9
Initial implementation of shader translation to cpp at build time
2022-05-12 23:37:44 -04:00
Jeff Young
a8d2dd8dc7
Bitmap text can't yet handle multi-line text.
2022-03-06 16:59:18 +00:00
Jeff Young
a29968fa91
Make sure bitmap fallback is only used for non-cached text.
...
Also fixes backwards vertical justification for bitmap text.
Fixes https://gitlab.com/kicad/code/kicad/issues/10956
2022-02-24 18:16:45 +00:00
Wayne Stambaugh
8426ffa238
Fix wxWidgets invalid string specifier assertion.
...
(cherry picked from commit ab184ba9f3
)
2022-01-24 15:50:40 -05:00
Jeff Young
c8a50d9b50
Remove unit-less angles from VECTOR2I/D APIs.
2022-01-20 23:58:20 +00:00
Jeff Young
e84c574830
Some more EDA_ANGLE cleanup.
2022-01-16 19:16:18 +00:00
Marek Roszko
8fe16690b7
Add array deleter
2022-01-14 22:04:47 -05:00
Jeff Young
07013d00e1
More EDA_ANGLE.
2022-01-14 16:08:19 +00:00
Jeff Young
33338aa0f2
Formatting.
2022-01-11 14:34:16 +00:00
Jeff Young
8f7d2dd06a
More VECTOR2D -> VECTOR2I and wxPoint cleanup.
2022-01-11 14:20:14 +00:00
Jeff Young
7d032f9c2f
Outline font rendering for Cairo, plotter, printer and 3D viewer.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/10319
2022-01-10 01:54:28 +00:00
Jeff Young
04c76f10e9
Performance enhancements for fonts.
2022-01-08 16:47:45 +00:00
Ola Rinta-Koski
9b406c1da4
Outline font support.
2022-01-08 16:47:45 +00:00
Jeff Young
8e4a4306c7
Go back to using inter-character spacing from the stroke font.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/1078
2022-01-04 00:46:08 +00:00
Mike Williams
404659d275
Gerbview: Fix diff mode issues with OpenGL transparency
...
Fixes: https://gitlab.com/kicad/code/kicad/-/issues/10121
2022-01-02 23:15:36 +00:00
Jeff Young
89c0f8e297
Move to new font engine.
2022-01-02 14:57:03 +00:00
Jeff Young
86cb57f4a7
Cherry-pick TEXT_ATTRIBUTES and EDA_ANGLE from rockola/kicad-strokefont
2021-12-28 22:15:20 +00:00
Jon Evans
a205595404
PROF_COUNTER -> PROF_TIMER
...
I want to add an event counter, and this one is a timer
2021-12-05 14:25:37 -05:00
jean-pierre charras
f24bdf4067
Fix minor Coverity warnings (not initialized vars).
2021-12-03 17:55:21 +01:00
Tomasz Wlostowski
691ca11b5a
DRAW_PANEL_GAL: add profiling counter for OGL buffer swap
2021-11-29 23:30:10 +01:00
Tomasz Wlostowski
2c6e9778a1
GAL: OpenGL draw calls pooling/splitting
...
Improves rendering performance, esp. for large designs by:
- using a separate glDrawArrays calls() for large buffers of contiguous vertices (e.g. large zone fills)
- pooling smaller items into a small-sized index buffer held in system RAM (has to be DMAed to the GPU by the driver anyway)
2021-11-29 23:30:10 +01:00
Tomasz Wlostowski
569c39ac37
GAL: runtime profiling for CACHED_CONTAINER
2021-11-29 23:30:10 +01:00
Tomasz Wlostowski
9518d425ca
OPENGL_GAL: added runtime render speed profiling
2021-11-29 23:30:10 +01:00
Tomasz Wlostowski
b59ee13fcc
GAL: made Begin/EndDrawing calls public to have more control over timing of rendering context creation/destruction
2021-11-29 23:30:10 +01:00
Jeff Young
930c4e5582
Cleanup.
...
Formatting.
Naming conventions.
Use of auto.
Use of STL cover types.
2021-10-03 19:42:29 +01:00
Marek Roszko
91e456113f
Use StartsWith instead of Contains for the Intel check
2021-09-20 18:56:06 -04:00
Marek Roszko
1b8259701e
Expand "Intel" GL_VENDOR check for workaround
...
Fix #7444 maybe
2021-09-20 18:20:57 -04:00
jean-pierre charras
56374ffa26
Try to fix a compil issue that does not happen on my computers.
2021-09-06 18:36:27 +02:00
jean-pierre charras
36048fa436
OPENGL_GAL::DrawArcSegment(): use a better number of segm to approximate the arc.
...
Previously, the count of segments used a magic number optimized for Pcbnew.
This is not good, and does not work well on Gerbview.
The count uses now a max error acceptable is approximation (5 microns in Gerbview and Pcbnew).
Fixes #9101
https://gitlab.com/kicad/code/kicad/issues/9101
2021-09-06 16:36:47 +02:00
Mike Williams
30987cebfe
Gerbview: fix cairo negative items and implement real differential mode
...
Layers with negative objects need to be drawn in a subsurface before
copying so they don't _CLEAR the draw items below them when a negative
object is drawn.
Differential layers are basically the same thing only they use a
different copying operation onto the layers below.
Fixes https://gitlab.com/kicad/code/kicad/-/issues/1863
Fixes https://gitlab.com/kicad/code/kicad/-/issues/4495
2021-08-31 12:43:53 +00:00
jean-pierre charras
f59e66a897
Do not include kicad_curl.h (and therefore curl.h) in kicad_curl_easy.h
...
curl.h has constraints on Windows (because it includes winsocks2.h) and must be
included before any wxxxx.h.
Because only very few files need curl.h, kicad_curl.h is included only in these files
2021-08-28 15:31:45 +02:00
Mike Williams
ff9612b6da
OpenGL GAL: Enter correct context (and lock) before changing AA mode
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/8528
2021-08-26 18:03:50 +00:00
david-beinder
bab13debcb
Improve overbar rendering in PCB and global labels
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/8584
Moves the font slightly down in global labels
Keeps font with overbar at the same size in PCB OpenGL renderer
2021-08-02 16:40:36 +00:00
Jeff Young
e62969d007
Move zone fracture display mode to AdvancedCfg, and add triangulation.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/8762
2021-07-26 18:57:35 +01:00
Wayne Stambaugh
bcd6bddfd4
Start expunging NULL.
...
Given that KiCad is a C++ project, we should really be using nullptr
instead of NULL.
2021-07-15 15:44:45 -04:00
Mikolaj Wielgus
2af06a9d60
Fix stroke text size calculation and bitmap text overbar
...
Fixes bug 1 from https://gitlab.com/kicad/code/kicad/-/issues/8591 .
Fixes a bug where no overbar would appear in bitmap text.
2021-06-14 09:09:30 +00:00
Jeff Young
9328c78b08
Fix issue with overbars in bitmap text.
2021-06-12 11:49:12 +01:00