Maciej Sumiński
a1f81bbe97
Shaders are built-in instead of being loaded from external files.
2013-06-30 19:31:16 +02:00
Maciej Sumiński
e9669c6594
More debug information in case of failure compilation of shaders.
2013-06-30 15:37:46 +02:00
Maciej Sumiński
690e7144c1
Made shaders compatible with Intel GPUs.
2013-06-30 15:37:35 +02:00
Maciej Suminski
95d5ab706a
VBO_CONTAINER: Changed new[]/delete[] pairs to realloc(), possibly reducing memory fragmentation and the container shrinking time.
2013-06-28 10:47:41 +02:00
Maciej Suminski
009925724e
Minor code cleaning.
2013-06-27 17:31:10 +02:00
Maciej Suminski
8504f30594
Proper handling of toggling outline display of items.
2013-06-27 17:23:54 +02:00
Maciej Suminski
96116659be
Faster circles & semicircles drawing for the shaderless OpenGL backend. Removed unnecessary variables and computations.
2013-06-27 16:05:15 +02:00
Maciej Suminski
1e7df3606a
Groups are stored in map instead of deque, so it allows easier adding & removing.
2013-06-27 11:54:49 +02:00
Maciej Suminski
603029b106
High contrast mode with showing the selected layer on the top.
2013-06-26 16:31:52 +02:00
Maciej Suminski
4ca54b2f1d
Small speed up for the color change function (OpenGL_GAL).
2013-06-26 10:43:58 +02:00
Maciej Suminski
258b804941
Added possibility to change cached layer color (for the purpose of high contrast display).
2013-06-25 17:12:54 +02:00
Maciej Suminski
dbb4e67737
Fixed warning about a not initialized variable.
2013-06-25 16:54:30 +02:00
Maciej Suminski
ec1a5d1318
Added zoom in, zoom out & fit on screen view commands handling in GAL.
2013-06-25 09:15:57 +02:00
Maciej Suminski
cdab6cfdbe
Draw the origin marker in OpenGL with shaders GAL.
2013-06-24 16:02:18 +02:00
Maciej Suminski
33b3d5edfb
Small improvements to SHADER class.
2013-06-24 15:40:31 +02:00
Maciej Suminski
e1aa6f7e84
Grid settings apply to GAL based rendering.
2013-06-24 14:33:02 +02:00
Maciej Suminski
bfc1665d87
Fixed hotkeys for switching GAL backends.
2013-06-24 13:46:24 +02:00
Maciej Suminski
9e937f8113
Added convertsion from wxColour to COLOR4D.
2013-06-24 10:32:08 +02:00
Maciej Suminski
d114d9e386
Passing COLOR4D parameter using constant reference.
2013-06-24 10:21:34 +02:00
Maciej Suminski
4e8d1366b6
Added conversion from EDA_COLOR_T to COLOR4D.
2013-06-24 10:12:36 +02:00
Maciej Suminski
b5fdf4f1da
Shows single layer pads with proper colors.
2013-06-21 12:02:17 +02:00
Maciej Suminski
bf7d383066
Changed atan2() to VECTOR2D::Angle()
2013-06-21 09:01:40 +02:00
Maciej Suminski
fdc52d933a
Fixed some minor rendering issues, mostyl for shaderless OpenGL GAL.
2013-06-20 16:37:21 +02:00
Maciej Suminski
316f7309a1
Bug fixes:
...
- VBO_CONTAINER::allocate() was returning wrong value in case of error
- framelimiter had wrong formula for computing destined period between frames
- removed _padding field from VBO_VERTEX, as it was not speeding up, but wasting memory
2013-06-20 13:16:12 +02:00
Maciej Suminski
ff75a28080
Added a framerate limiter.
...
Now it does not use all the CPU power while panning even on simple boards.
2013-06-20 09:58:18 +02:00
Maciej Suminski
db41bc2870
Changed order of used headers, so there is no need to include again 'wx/wx.h' needed by layers_id_color_and_visibility.h
2013-06-19 12:07:25 +02:00
Maciej Suminski
585aeb7f91
Moved fields containing information about currently used color, shader and transformation for vertices from VBO_ITEM to VBO_CONTAINER (OPENGL_GAL).
2013-06-19 10:50:46 +02:00
Maciej Suminski
c4e42f46a9
Removed unnecessary functions from VBO_VERTEX.
2013-06-18 17:53:12 +02:00
Maciej Suminski
bff4d1239c
Removed unnecessary casting from VIEW_ITEM to EDA_ITEM. Added Type() function to VIEW_ITEM.
2013-06-18 17:01:23 +02:00
Maciej Suminski
8a89e160ed
Added VBO_CONTAINER as a faster storage for vertices (OPENGL_GAL), tuned for exchanging data with GPU.
...
Removed a few unnecessary variables and fields from OPENGL_GAL.
Added function GAL::ClearCache() for freeing memory used by cached items.
Fixed a few memory leaks (tesselator, PAINTER's settings & VIEW_ITEM's groups).
Changed a few functions into inlines.
2013-06-18 16:20:29 +02:00
Maciej Suminski
198052358e
Added GAL_TYPE_NONE as an indicator of GAL uninitialized state.
2013-06-18 16:19:30 +02:00
Maciej Suminski
5c405a6f40
Removed some debug messages.
2013-06-06 11:54:37 +02:00
Maciej Suminski
03b5d6125b
Removed indices storing from VBO_ITEM as they are always consecutive numbers. Removed storing pointers to VBO_ITEMs that have to be drawn - instead they are memcpied to mapped GPU memory.
...
Some functions of VBO_ITEM became inline.
2013-06-06 11:52:39 +02:00
Maciej Suminski
7858e6aa7c
Changed data structure in VBO_ITEM.
2013-06-05 10:48:30 +02:00
Maciej Suminski
c909988aa5
Upstream merge.
2013-06-05 10:01:53 +02:00
Dick Hollenbeck
5deaba9669
Fix wierd ConfigBaseWriteDouble's Printf( wxT("%12f"), aValue ); format string
...
which was creating silly strings like
PcbTextThickness=" 0.300000"
in kicad.pro files.
2013-06-04 09:44:21 -05:00
Dick Hollenbeck
f162b6662b
comment
2013-06-04 09:44:08 -05:00
Maciej Suminski
2d5f342ee8
Switching to OpenGL using shaders backend on the fly (changed keyboard shortcuts: different backends are available using Alt+F9..F12).
2013-06-04 16:18:33 +02:00
Maciej Suminski
85a2aee79c
Introducing shaders.
...
Shader's parameters are stored in VBO_ITEM. Changed VBO_ITEM data structure. Added UseShader() function for selecting shader for a given VBO_ITEM.
Added one main vertex & fragment shader program to be used for with all kinds of items (type of shader is selected using attributes that are stored in VBO). Currently available shaders are: at-least-1px-width line, filled circle and stroked circle.
Removed unnecessary param (aDepthOffset) from a few functions (OPENGL_GAL::drawSemiCircle(), OPENGL_GAL::drawLineCap()). Removed function OPENGL_GAL::DrawRoundedSegment(). Changed some asserts to debug info or error log.
2013-06-04 15:58:53 +02:00
Dick Hollenbeck
a4cc671c22
speedups
2013-06-03 08:09:37 -05:00
Maciej Suminski
2912138ef2
Display linking errors in debug mode for shaders. Added SHADER::GetAttribute() function for getting shaders attribute location.
2013-06-03 10:54:24 +02:00
Dick Hollenbeck
cdae489afa
include only the boost headers in the scratch repo
2013-05-31 23:04:56 -05:00
Dick Hollenbeck
51ad0c18ff
*) Refinements to ExternalProject_Add( boost )
...
*) Enhancements to make_lexer().
*) Support multi-threaded build.
*) Switch to "bzr patch" from patch.exe for Windows users.
2013-05-31 16:36:40 -05:00
Dick Hollenbeck
998255fb1b
add copyright message to download_boost.cmake
2013-05-31 16:26:08 -05:00
Dick Hollenbeck
edfb5811cf
*) Refinements to ExternalProject_Add( boost )
...
*) Enhancements to make_lexer().
*) Support multi-threaded build.
*) Switch to "bzr patch" from patch.exe for Windows users.
2013-05-31 16:22:34 -05:00
Michal Jahelka
c733b32672
Add filtering footprint list by library to CvPcb
...
* Add third list control with library names.
* Add button to toolbar to select filter by library name.
* Add bitmap for filter by library name toolbar button.
* Remove custom UI colors from list controls.
2013-05-31 13:33:46 -04:00
Dick Hollenbeck
38862c1a09
add support for exponents in dsnlexer.cpp's DSN_NUMBER token
2013-05-31 09:24:56 -05:00
Dick Hollenbeck
03161c81df
remove boost and make it an external project, so the procedure for upgrading is better documented
2013-05-30 23:46:02 -05:00
Dick Hollenbeck
264c73747a
factor out isNumber() in dsnlexer.cpp, add support for numbers with exponents, leave commented out for further testing
2013-05-30 20:20:37 -05:00
Dick Hollenbeck
5e53e410ce
factor out isNumber() in dsnlexer.cpp, add support for numbers with exponents, leave commented out for further testing
2013-05-30 19:49:22 -05:00