Commit Graph

34 Commits

Author SHA1 Message Date
John Firebaugh
0e57d10d77 [core] Modern C++ bindings for OpenGL 2016-10-28 17:14:01 -07:00
John Firebaugh
21d7ee11e1 [core] Rationalize shader names
{layer type}{subtype}Shader
2016-10-06 14:47:58 -07:00
John Firebaugh
f438bb68b0 [core] Adhere to vertices/vertexBuffer naming convention 2016-10-05 10:52:19 -07:00
John Firebaugh
7a3bef091e [core] Refactor Buffer 2016-10-05 10:52:19 -07:00
Konstantin Käfer
44c7e9d05e [core] merge gl::ObjectStore into gl::Context 2016-09-27 11:03:29 -07:00
Konstantin Käfer
ce42d22984 [core] rename gl::Config to gl::Context 2016-09-27 11:03:29 -07:00
Konstantin Käfer
afb93d4d3a [core] track VAOs and Buffers 2016-09-26 11:14:40 +02:00
Konstantin Käfer
77e7846756 [core] code style cleanups
- puts function definitions in a namespace ... {} rather than using namespace ...;
- remove trailing whitespace
- add trailing newline
- protect SQL statements from being formatted by clang-format
2016-07-01 12:38:33 +02:00
Bruno de Oliveira Abinader
2038a21cb5 [core] s/GLObjectStore/ObjectStore/ 2016-06-01 13:53:39 +03:00
Konstantin Käfer
b4de5f472a [core] rename TileData::State to DataAvailability and make it private 2016-05-25 21:51:25 +02:00
Konstantin Käfer
cd65a43855 [core] move from microsecond precision timestamp to integer second precision 2016-05-13 17:24:22 +02:00
Konstantin Käfer
ec70125e41 [core] move TileData and dependents to new *TileID classes 2016-05-10 14:50:56 +02:00
Konstantin Käfer
09684bb1dc [core] do not paint empty debug buckets
this removes "Buffer doesn't contain elements" messages when debug painting is enabled
2016-04-06 14:16:53 -07:00
John Firebaugh
9c26f06318 [core] Thread GLObjectStore through to Holder objects
This eliminates the reliance on ThreadContext to provide GLObjectStore, and statically enforces that GL cleanup functions happen only when GLObjectStore::performCleanup is called.

With the elimination of the Map thread, this becomes important because there may be multiple GLObjectStore's per-thread, and Map will need to ensure that the correct context is active when calling GLObjectStore::performCleanup.
2016-02-18 15:15:24 -08:00
Konstantin Käfer
5726d2b357 [core] use std::move() to prevent copies 2016-02-11 12:17:33 +01:00
Konstantin Käfer
2f06ca74e2 [core] move platform/gl.hpp to gl/gl.hpp 2016-02-08 12:50:00 +01:00
John Firebaugh
cef5c331fe [core] Merge rfc1123, iso8601, and parse_date into chrono.hpp and fix their API 2016-01-22 18:41:54 -08:00
John Firebaugh
1c21d0fd4c [core] Use better types for modified / expires / etag 2016-01-21 11:22:11 -08:00
Bruno de Oliveira Abinader
1f0820c8e8 [core] Added MapDebugOptions
Map debug options are now cycled up to all debug options enabled, then
back to none.
2015-11-27 17:47:02 +02:00
Bruno de Oliveira Abinader
044e92f5e8 [core] Display modify, expires debug information 2015-11-27 17:47:02 +02:00
Konstantin Käfer
c0c554e36f [core] reparse tiles when new data arrives
We're now reparsing tiles when they expire. We're also swapping out buckets atomically to avoid flickering data; i.e. we're displaying the old data as long as we don't have a new parsed bucket for that layer yet. The parsed buckets now live in the *TileData objects rather than in the TileWorker; only partially parsed == pending buckets will remain in the TileWorker. Once they're parsed, they're moved to the *TileData object.
2015-10-26 15:54:27 +01:00
Bruno de Oliveira Abinader
2156aa35ca [shader] bind() is now a pure virtual
- Shader::bind() now receives a GLbyte*
- BUFFER_OFFSET now uses GLbyte
2015-09-14 11:29:49 +03:00
Bruno de Oliveira Abinader
ff0e54f35a Cleaned up #defines for BUFFER_OFFSET 2015-06-18 09:48:34 +03:00
Konstantin Käfer
f89f7f1bc2 rename prepare => upload and determine passes per layer instead of per bucket 2015-05-04 17:33:05 +02:00
Konstantin Käfer
97a22b6f5f upload all GL objects before rendering a frame
This moves all texture updates and buffer uploads to the beginning of every frame, before we issue any drawing commands. This means the GPU typically has much more time to upload the data in the background until we actually need it, and doesn't have to pause to store/load the framebuffer.
2015-05-04 17:33:05 +02:00
Konstantin Käfer
28b9b3f9d6 add prepare() function 2015-05-04 17:33:04 +02:00
Konstantin Käfer
839b19330e remove hasData() from Bucket interface 2015-05-04 17:33:04 +02:00
Konstantin Käfer
dae18cc7bc remove some unused includes 2015-04-28 14:32:21 -04:00
John Firebaugh
d8411f26d2 Tile::ID ⇢ TileID
This allows making both Tile and TileID private.
2015-04-06 13:58:56 -07:00
John Firebaugh
f2e658d962 Remove unused 2015-03-31 12:08:57 -07:00
Konstantin Käfer
0151fe6c01 pass StyleLayer objects as const ref instead of a shared pointer 2015-03-06 13:26:11 +01:00
Konstantin Käfer
93d56294cf update error reporting function 2014-12-10 13:21:08 +01:00
Leith Bade
0808485453 Use CHECK_ERROR on every GL call 2014-12-10 21:57:34 +11:00
Konstantin Käfer
abafb52f37 make most headers private 2014-12-04 20:02:50 +01:00