41 Commits

Author SHA1 Message Date
Wayne Stambaugh
5c8f4697ca Common folder housekeeping part 1. 2025-01-12 12:06:45 -05:00
Seth Hillbrand
0b2d4d4879 Revise Copyright statement to align with TLF
Recommendation is to avoid using the year nomenclature as this
information is already encoded in the git repo.  Avoids needing to
repeatly update.

Also updates AUTHORS.txt from current repo with contributor names
2025-01-01 14:12:04 -08:00
Alex Shvartzkop
73a3b880a6 Slightly optimize GPU_CACHED_MANAGER::DrawIndices. 2024-06-12 16:04:47 +03:00
Marek Roszko
7505fd0f37 Profile can live in core 2023-09-07 07:47:01 -04:00
Alex
dc07ab9df1 Replace PROF_COUNTER with PROF_TIMER in some conditional places. 2022-09-27 14:07:47 +00:00
Marek Roszko
417f2f357c Cleanup naming of shader params/uniforms 2022-05-19 07:49:24 -04:00
Wayne Stambaugh
8426ffa238 Fix wxWidgets invalid string specifier assertion.
(cherry picked from commit ab184ba9f3892342ec394ee52319446bef7f2317)
2022-01-24 15:50:40 -05: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
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
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
Marek Roszko
cbad18ad98 Hide gal profiling behind KICAD_GAL_PROFILE cmake option
__WXDEBUG__ is too easy to get set
2021-04-30 19:24:36 -04:00
Ian McInerney
ecd9bf696e Be consistent about using nullptr instead of 0
0 can be too easily overloaded into an int, so ensure we use nullptr
when we mean pointers.
2021-04-22 22:20:34 +01:00
Wayne Stambaugh
d96cccbf20 OpenGL GAL tracing improvements. 2021-03-22 17:45:49 -04:00
Wayne Stambaugh
e7227a4f21 GAL code cleaning. 2021-02-16 17:25:27 -05:00
Roberto Fernandez Bautista
fe415c4134 Check GLEW functions exist before calling them
Fixes https://gitlab.com/kicad/code/kicad/-/issues/6235
2020-10-30 20:17:27 +00:00
Tomasz Włostowski
d66e0d4f7a eeschema-gal: implemented EnableDepthTest() in GAL, fixed drawing order in eeschema 2018-10-15 00:09:59 +02:00
Tomasz Włostowski
711b278248 gal/opengl: handle single-pixel line width clamping in hardware (new shader). Correct grid rendering in GAL for pixel-sized lines 2018-10-12 19:13:54 +02:00
Maciej Suminski
342bb2bf78 Code formatting
Renamed VERTEX related constants to follow UPPER_CASE naming.
2017-09-09 21:07:32 +02:00
Maciej Suminski
b5db6a7d5d Map/unmap vertices once per layer order update
Multiple memory map/unmap operations cause a significant delay on
GPUs that fetch vertices from RAM.

Fixes: lp:1701936
* https://bugs.launchpad.net/kicad/+bug/1701936
2017-08-21 13:28:09 +02:00
Maciej Suminski
262fcc91af Fixes for video cards unable to use gl{Un,}MapBuffer correctly
Fixes: lp:1685335
* https://bugs.launchpad.net/kicad/+bug/1685335

Fixes: lp:1683041
* https://bugs.launchpad.net/kicad/+bug/1683041
2017-08-08 14:26:05 +02:00
jean-pierre charras
fff449ecf0 Performance counter rework: Add comments, fix coding style issues. 2016-12-31 13:00:24 +01:00
Simon Richter
ac9f858813 Performance counter rework 2016-12-31 12:57:42 +01:00
Maciej Suminski
9f5f0ab31b Minor OpenGL GAL code changes 2016-08-08 14:17:40 +02:00
Maciej Suminski
702be4903f Vertices are stored in GPU memory (OpenGL GAL). 2016-05-02 16:12:16 +02:00
Maciej Suminski
05a30b7591 Do not draw anything if vertex containers are empty. 2016-05-02 16:08:50 +02:00
Maciej Suminski
36dd6eb6b3 GAL profiling output is enabled with WXTRACE env variable. 2016-05-02 15:56:17 +02:00
Maciej Suminski
dbff9ad786 Improved error checking in GPU_MANAGER. 2016-05-02 15:56:16 +02:00
Maciej Suminski
4739c54f0e Few minor updates to CACHED_CONTAINER & GPU_MANAGER classes. - Reduced the number of memory reallocations - Updated code for tests 2015-08-03 21:12:00 +02:00
Maciej Suminski
b6c5b291a2 Coverity fixes. 2015-03-11 14:17:43 +01:00
Paulo Henrique Silva
3132690c0b Fix slow opengl canvas on Mac OS 10.9. 2014-09-13 19:31:40 +02:00
Maciej Suminski
4a0407fb69 Removed some debug logs. 2013-12-18 12:46:18 +01:00
Maciej Suminski
06f4662ea0 Profile counter simplified, so it should be more portable. 2013-11-27 09:46:59 +01:00
Maciej Suminski
5235d7e5eb Modified error handling for OpenGL backend, now error messages should be visible. 2013-11-11 10:48:49 +01:00
Wayne Stambaugh
fe54ceacab Fix debug builds on wxWidgets 2.8. 2013-11-03 13:15:46 -05:00
Maciej Suminski
0ac3e1fbf2 Namespace KiGfx->KIGFX.
template<> -> template <>
Some more reformatting according to uncrustify results.
2013-10-14 16:13:35 +02:00
Maciej Suminski
190ed58568 Code refactoring. 2013-07-30 18:29:54 +02:00
Maciej Suminski
be012cac94 Added initialization of variable, preventing unconditional jumps. Fixed typos in comments. 2013-07-29 14:12:27 +02:00
Maciej Suminski
c9199ea80a Fixed high contrast mode in OpenGL. Split display settings loading into more appropriate places. 2013-07-25 18:04:15 +02:00
Maciej Suminski
618a5f0e75 OpenGL multitarget rendering (compositing). 2013-07-23 18:39:07 +02:00
Maciej Suminski
5242fff9d7 Code refactorization. VBO_CONTAINER is split to [NON]CACHED_MANAGER, GPU_MANAGER and VERTEX_MANAGER. 2013-07-22 10:41:12 +02:00