Commit Graph

1905 Commits

Author SHA1 Message Date
Kalle Bladin f51f293989 Feature/globebrowsing optimization (#310)
* Simplest possible PBO implementation.

* Add PBO class

* TileLoadJob owns raw tile data

* Working on a soluton to cache textures and reuse them

* PBO and cached textures working for one texture type. Color textures.

* Threadpool for tile requests uses LRU cache as queue

* Remove framesUntilRequestFlush

* Clean up

* Clean up

* Use prioritizing concurrent job manager

* Use TileTextureInitData to initialize RawTileDataReader.

* Class TextureContainer owns the textures to use for tiles.

* Using TileTextureInitData to determine if new caches need to be created.

* Remove WriteDataDescription

* Remove TileDataLayout

* Rendering many different layer types again

* TileProviderByLevel gives layergroup id to tile providers

* Comment away use of PBO

* Erase unfinished requests to make room for new ones

* Enable choice of PBO or not.

* Enable resetting of asynctiledataprovider

* Add the ability to use PBO and also load to CPU

* Update ghoul

* Solve culling issue.

* Texture pointer of Tile is now a raw pointer. Currently break single image tile provider and text tile provider.

* Add gpudata

* Move fetching of shader preprocessing data to LayerManager

* No comparisons to determine shader recompilation.

* Show the tile cache size in the GUI

* Clean up and comment.

* Solve bug where float is interpreted as NaN

* Enable ability to blend between layers again

* Fix single image provider

* Fix windows build error

* Fix OSX compile issue.

* Some clean up

* Showing correct texture data size

* Enable use of text tile providers again. No backgroupd image path however.

* Change cache size from GUI

* Clean up

* Solve osx compilation error.

* Update ghoul

* Make it possible to switch between PBO and not during runtime.

* Enable resetting of tile datasets

* change function module in moduleengine to identify module by name

* MemoryAwareTileCache is no longer a singleton

* Update ownership of properties for globe browsing

* Logging info about resetting tile reader.

* Logging info

* Fix requested changes

* Fix some compile warnings.

* Fix compilation warnings

* Add ability to blend values with blend parameter. Also define settings through lua dict.

* Fix some comments on pull request.

* Change formatting

* Change formatting

* Change formatting

* Fix pull request comments.

* Those are details

* Make Mercury great again.

* Make Earth great again.

* Solve conflict

* Test to sometimes use valueblending and sometimes not

* Not always use value blending

* Update ghoul

* Change from auto to explicit type.

* Update test for LRU Cache

* Include algorithm.
2017-05-30 15:37:05 +02:00
Jonathan Bosson 8c5e33be13 refinement on gradient step size and fix to 'freeze' issue 2017-05-25 16:50:32 -06:00
Alexander Bock 8db2db6c1d Fix applications of Time::ref and replace with TimeManager calls 2017-05-25 11:09:19 -04:00
Jonathan Bosson c3e1f54b45 stubb for TouchMarker class to render where the contact points are on the screen 2017-05-24 16:25:16 -06:00
Jonathan Bosson 1eeb01d22d use an iterative method to find a good step size to take in gradient 2017-05-24 16:03:51 -06:00
Jonathan Bosson f8b9310416 first pass on gradient step size that works with 1m - 1e10m 2017-05-23 17:10:04 -06:00
Emil Axelsson 752081d31b feature/time-refactor (#294)
- Change Time class to become a non-singleton
- Move ownership of the current time to TimeManager(instead of singleton access).
- Store the Time as a Syncable in TimeManager instead of representing all member variables of Time as Syncables.
- Pass a Time object around in the update/render methods, so that renderables don't have to query the OpenSpaceEngine to know if time is paused or if it jumped.
- Introduce Timeline and Keyframe classes
- Make use of Timelineand Keyframeclasses in KeyframeInteractionMode and TimeManager
- Added basic unit tests for Timelineand Keyframe

Future work: Add interpolation schemes for keyframes. Possibly use keyframes+interpolation feature to tween/morph properties, or figure out if this should be a separate mechanism.
2017-05-22 14:01:08 +02:00
Alexander Bock f22be1273a Fix property visibility to correctly ignore hidden properties 2017-05-19 16:57:12 -04:00
Jonathan Bosson 3386b5906f include scene.h 2017-05-19 14:00:55 -06:00
Jonathan Bosson 4cdd4ed931 Merge fix with master 2017-05-19 12:43:58 -06:00
Jonathan Bosson a230fbeea4 added a reset to default option on properties to the gui 2017-05-19 10:50:06 -06:00
Jonathan Bosson 202b31e7d1 decelerate is now called in a user chosen constant frequency, changed some minor default sensitivities 2017-05-19 10:32:42 -06:00
Jonathan Bosson 612b207d19 mute mouse input when we have touch input (for feedback on linux) 2017-05-18 19:19:26 -06:00
Emil Axelsson 05a541aacb Merge branch 'master' of github.com:OpenSpace/OpenSpace into feature/luaconsole 2017-05-18 10:17:37 +02:00
Emil Axelsson d2d6810451 Change include to cstring 2017-05-18 09:38:21 +02:00
Jonathan Bosson bae7110f30 new ideas on how 3+ fingers should work, needs feedback 2017-05-17 16:55:23 -06:00
Jonathan Bosson b7da01f322 remove debug print 2017-05-17 15:17:17 -06:00
Jonathan Bosson 195dd2e1b5 fix bug that caused slerp time to be too quick 2017-05-17 15:15:55 -06:00
Jonathan Bosson bbccda7d8c onlyPan on by default for easier direct-manipulation with 3+ fingers 2017-05-17 14:49:50 -06:00
Jonathan Bosson d626684d5f dynamic step size in gradient LMA is now based on planet size as well to make for smooth interaction on huge planets 2017-05-17 14:49:27 -06:00
Jonathan Bosson 92274563a4 removed finger scaling on zoom/roll, reintroduced roll interpret with all fingers, rescaled sensitivities to fit new method, fix build issue with ghoul_condition 2017-05-17 13:11:15 -06:00
Jonathan Bosson 7f82454114 small clean of LMA 2017-05-17 13:09:15 -06:00
Jonathan Bosson d8f0f9d6fd Merge branch 'feature/multitouch' of https://github.com/OpenSpace/OpenSpace into feature/multitouch 2017-05-17 11:11:33 -06:00
Jonathan Bosson 22dd7f2fb0 fix to GUI toggle with keyboard+touch inconsistency 2017-05-17 11:10:55 -06:00
Jonathan Bosson 63c02a72ae build fix 2017-05-17 11:00:54 -06:00
Jonathan Bosson 69907fd60c nullify roll velocity in onlyPan case 2017-05-16 18:21:07 -06:00
Jonathan Bosson 3a93825979 fix to XY-axis issue with zoom/roll, change to three-finger-case 2017-05-16 17:15:35 -06:00
Jonathan Bosson 7e1514d165 fix printed name on data 2017-05-16 17:14:19 -06:00
Alexander Bock 2e38f29eb0 Enable color picking for vec3 and vec4 properties marked as color properties 2017-05-16 14:47:17 -04:00
Alexander Bock 4568654531 Merge branch 'master' into feature/luaconsole 2017-05-15 15:29:51 -04:00
Alexander Bock f4ad2ce4c2 More include file cleanup 2017-05-15 15:27:59 -04:00
Alexander Bock 302fa06067 More code cleanup 2017-05-15 14:39:48 -04:00
Alexander Bock 3d9375277b Adding LuaConsole to global property namespace
Initial reworking of LuaConsole look and feel
2017-05-14 12:47:10 -04:00
Jonathan Bosson 1b1cbcfdfb fix to panning speed into direct-manipulation issue 2017-05-12 16:14:24 -06:00
Jonathan Bosson 542e4c0fcb changes during feedback and cleanup 2017-05-12 15:55:20 -06:00
Jonathan Bosson e28897eee7 allow refocus on selected node in case of double tap 2017-05-12 15:42:47 -06:00
Jonathan Bosson 90faf09fa2 fix .csv print on unit test 2017-05-12 15:27:27 -06:00
Alexander Bock 66f8043982 Adding more documentation to the space module classes 2017-05-12 13:37:04 -04:00
Jonathan Bosson e854b1de3f cleanup and fixes from code review 2017-05-12 11:18:48 -06:00
Jonathan Bosson fb79cfe5f3 classes defined in module class and cleanup 2017-05-12 11:18:17 -06:00
Jonathan Bosson f10c3783fa set lmverbose to false as default 2017-05-12 09:42:46 -06:00
Alexander Bock 0b1c6706dd Remove unused RenderablePath
Add documentations to base module classes
Change RenderableSphere to not use power scaled coordinates
2017-05-12 11:28:10 -04:00
Alexander Bock 3a6f2a54e5 Add some comments 2017-05-11 23:25:13 -04:00
Alexander Bock 773828c057 Adding documentations to more classes 2017-05-11 22:51:11 -04:00
Jonathan Bosson 00ce0dd56f improvement on unit test 2017-05-11 16:45:36 -06:00
Jonathan Bosson cb3e31212a do a unit test on the LM algorithm and save the data to .csv 2017-05-11 13:37:45 -06:00
Alexander Bock d597750398 Some more refactoring of the documentation feature 2017-05-11 13:56:06 -04:00
Jonathan Bosson 9bc653ec01 save lm data for plots later 2017-05-10 17:07:54 -06:00
Jonathan Bosson 08e3ac8a6b put constants into properties instead 2017-05-10 15:09:29 -06:00
Jonathan Bosson 232ca9c26f cleanup in guimode 2017-05-09 13:42:35 -06:00