Commit Graph

34 Commits

Author SHA1 Message Date
Alexander Bock
c275b2f833 Feature/cmake cleanup (#381)
* Rename OnScreenGui module to ImGui
* Support multiple external module folders (closes #31)
* Cleaning up CMake files
  * Restructure application specification
  * Add parameter for library mode to all modules
  * Add functions to handle global variable state
* Misc/remove warnings (#383)
* Increase build timeout and do a clean rebuild every commit
2017-08-14 09:38:32 -04:00
Alexander Bock
0e9edaeb12 Fix byte order mark commits
Update Ghoul
2017-07-17 15:54:00 -04:00
Alexander Bock
26682669ff More work on making use of nested namespaces 2017-07-16 01:55:35 -04:00
Alexander Bock
4dba552fd1 Started switching OpenSpace projects to nested namespaces
Various cleanups
2017-07-15 20:01:55 -04:00
Kalle Bladin
2e4f31ded8 Interaction Updates (#353)
* Interaction speed is not dependent on framerate

* Split up interaction code in files and perform smooth interpolation when changing focus

* Abstract interaction code in to functions.

* Interpolation time is dependent on angle to focus node.

* Use correct delta time when interpolating

* Fix bug regarding decomposition of camera rotation.

* Make orbital interaction mode behave as globe browsing and no longer use interactiondepth below ellipsoid.

* Do not always rotate with object. Depending on distance

* Remove interaction depth below ellipsoid. Now able to interact without renderable

* Remove specification of interactionDepthBelowEllipsoid and cameraMinHeight

* Remove GlobeBrowsingInteractionMode

* Rename OrbitalInteractionMode to OrbitalNavigator and no longer extend interactionmode.

* Move properties from interaction handler to orbital navigator

* Use smooth step for follow rotation interpolator

* Rename KeyframeInteractionMode to KeyframeNavigator

* Rename files

* Clean up.

* Separate mousestate from orbitalnavigator

* Clean up

* Split keybindingmanager from interactionhandler interactionhandler

* Rename interactionhandler to navigationhandler

* Rename files

* Clean up

* Take back usage of gotochunk and gotogeo

* Rename lua library navigation

* Move functionality from navigationhandler to keyframenavigator

* Update scripts for navigation

* Comment code

* Clean up

* Solve but that caused NaN values for camera position when being in center of globe and setting focus to the globe.

* Update jenkins file to remove build folder before building.

* Fix error in jenkins script

* Update jenkins file

* Update jenkins file

* Revert jenkins file

* I hope this makes Jenkins happy.

* Line endings God damnit

* Line endings

* Clean up

* Fix compilation issue

* Take back default scene.

* Fix indentation

* Move functions goToGeo and goToChunk to GlobeBrowsingModule.

* Include algorithm for std::find

* Remove auto and other clean up
2017-07-14 17:17:17 +02:00
Alexander Bock
9a7eba16bd Remove warnings
Update Ghoul repository
Fix spelling mistake in openspace.cfg
2017-06-08 00:07:51 -04:00
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
Alexander Bock
da3e912026 Remove warnings on MacOS in Clang 2017-04-25 19:12:42 -04:00
Alexander Bock
78b0d77101 Start removing warnings 2017-04-06 20:07:01 -04:00
Alexander Bock
2da100c001 Windows compile fix 2017-02-16 18:19:52 +01:00
Alexander Bock
0d03177d43 Feature/globebrowsingcleanup (#230)
* Initial restructuring of the Globebrowsing branch

* Update Ghoul repository
Fix include guards

* More cleanup

* Split texttileprovider subclasses into separate files

* Move TileProviders into namespace

* Convert static class methods into free functions

* Splitting tile subclasses into their own files
Remove `using namespace` from header file

* Split TileDataSet subclass into separate file
Update SGCT reference

* Move shader preprocessing data into internal class

* More Globebrowsing cleanup

* More cleanup
Remove unused Convexhull class
2017-02-15 21:20:05 +01:00
Alexander Bock
8456087cf5 Add a style check that checks whether the correct GLM header is used
Adapted files to use the correct GLM headers
2017-02-14 13:12:59 -05:00
Alexander Bock
6d9dc2bfeb Fixed include guards
Removed unused writeToTexture file
2017-02-09 19:12:21 -05:00
Alexander Bock
94e3e11188 Update copyright header to 2017
Update Ghoul repository
Remove libgdal link
2017-02-06 18:02:01 -05:00
Alexander Bock
ab6a952193 Some more code cleanup 2016-12-04 11:23:41 +01:00
Alexander Bock
dc3ded891b Started with code cleanup of Globebrowsing 2016-12-04 10:34:25 +01:00
Alexander Bock
341bc8b105 Merge branch 'develop' into feature/globebrowsing
# Conflicts:
#	modules/globebrowsing/chunk/chunkrenderer.cpp
#	modules/globebrowsing/globes/renderableglobe.cpp
#	modules/globebrowsing/globes/renderableglobe.h
2016-12-03 01:32:23 +01:00
kalbl
0df09d23ad Add possibility to switch geographic position 2016-11-29 13:29:02 +01:00
Alexander Bock
b00595af40 Replacing const std::string with const char* to reduce binary size and initialization costs 2016-11-23 23:52:16 +01:00
kalbl
7f62bd7206 Create namespace globebrowsing. 2016-10-18 15:40:27 +02:00
Erik Broberg
cdf954d2aa Rename: ChunkIndex -> TileIndex 2016-10-05 21:06:03 +02:00
Alexander Bock
329986c0c6 Merge branch 'develop' into feature/globebrowsing
Conflicts:
	modules/base/scale/staticscale.cpp
	modules/base/scale/staticscale.h
	modules/globebrowsing/meshes/trianglesoup.h
	modules/globebrowsing/tile/tiledataset.cpp
	modules/newhorizons/shaders/renderableModelProjection_fs.glsl
	src/interaction/interactionhandler.cpp
	src/rendering/renderengine.cpp
	src/scene/scenegraphnode.cpp
2016-09-20 15:52:01 +02:00
Erik Broberg
4a5dd1dacb Add longitudal distance and great circle distance to class Ellipsoid 2016-08-31 13:25:33 -04:00
Erik Broberg
41194d33d4 Add Ellipsoid radii accessor and return const refs instead of copies 2016-08-31 11:08:16 -04:00
Erik Broberg
23c4a05a96 Merge from globebrowsing 2016-08-17 20:25:58 -04:00
Erik Broberg
d4f635513d Merge branch 'develop' into feature/globebrowsing 2016-08-17 19:53:28 -04:00
Alexander Bock
c93d882ea6 Cleanup of code regarding ANSI C standard (mostly adding newlines at the end of files)
Updating SGCT and Ghoul references
2016-08-17 16:26:14 +02:00
Kalle Bladin
c01808ce10 Convert tabs to spaces. 2016-08-17 00:30:53 -04:00
Erik Broberg
a6baa5107a Add test if GeodeticPatch contains a Geodetic2 2016-06-23 20:02:24 -04:00
Erik Broberg
fa3671eb4a Improve GeodeticPatch interface by allowing getting min/max lat/lon 2016-06-15 14:25:32 -04:00
Erik Broberg
84e6e9a7af Modularize desired chunk level calculation for easy testing of different approaches 2016-06-13 16:30:22 -04:00
Erik Broberg
ff3ac1b368 Add Intersection test between ConvexHull2s, based on Separate Axis Theorem 2016-06-10 15:03:51 -04:00
Erik Broberg
2c89f36cbe Add class ConvexHull2 2016-06-10 13:49:50 -04:00
Erik Broberg
795846f6ee Updated file structure and removed unused class GlobeMesh 2016-06-10 11:53:26 -04:00