Commit Graph

368 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
Matthew Territo
92f55f24d6 Merge remote-tracking branch 'origin/master' into feature/launcherconfigs
# Conflicts:
#	ext/sgct
#	openspace.cfg
2017-05-12 15:40:06 -06:00
Alexander Bock
bf16c76add Feature/opengldebug (#290)
* Add InLIstVerifier

* Initial implementation of OpenGL debug messages

* Moving functionality into Ghoul

* Compile fix

* Update Ghoul repository
Make use of the moved OpenGL debug functions

* Update Ghoul to fix GCC and Clang compiler errors

* Add unit test for IntListVerifier
2017-04-18 14:29:23 -04:00
Alexander Bock
c53bbf14be Add property and configuration option to disable the scene tag on a master node (closing #247) 2017-04-17 10:55:37 -04:00
Alexander Bock
76aed0578c Feature/virtualproperty (#286)
* Add virtual property owner to OpenSpaceEngine

* Ability to add and remove virtual properties

* Do not try to render empty PropertyOwner name
Compile fix for iswaComponent
Add example in default.scene

* Delete virtual properties also in the OpenSpaceEngine dtor

* Make RenderablePlanet not crash if the nighttextures are not present

* - Add VirtualPropertyManager to manage ownership of virtual properties
- Only execute regex when it was necessary
-
2017-04-13 14:38:28 -04:00
Emil Axelsson
a108ee1f8a Fix requests from code review 2017-04-04 14:25:39 +02:00
Emil Axelsson
ca6348194e Clean up scene loading 2017-03-14 13:40:18 +01:00
Emil Axelsson
92df9caf5a Clean up scene loading 2017-03-07 16:33:56 +01:00
Emil Axelsson
7da999c332 Merge branch 'develop' of github.com:OpenSpace/OpenSpace into pr/scenegraph-refactor
Conflicts:
	include/openspace/engine/openspaceengine.h
	src/engine/openspaceengine.cpp
	src/engine/settingsengine.cpp
	src/engine/syncengine.cpp
	src/interaction/interactionhandler.cpp
	src/rendering/renderengine.cpp
	src/scene/scene.cpp
	src/scene/scenegraph.cpp
	src/scene/scenegraphnode.cpp
	tests/test_scenegraphloader.inl
2017-03-07 10:57:50 +01:00
Alexander Bock
63af7e67f9 Make the WindowWrapper a PropertyOwner and add SGCT properties to the subclass (closes #260) 2017-03-03 18:39:35 -05:00
Emil Axelsson
4307c06d92 Compile fix 2017-03-03 18:19:10 +01:00
Emil Axelsson
d7cd3a01a5 Merge branch 'develop' of github.com:OpenSpace/OpenSpace into pr/kameleonvolume
Conflicts:
	src/engine/openspaceengine.cpp
2017-03-03 18:08:29 +01:00
Alexander Bock
c12bd7182b Some cleanup of ModuleEngine
Some cleanup of SettingsEngine
Some cleanup of SyncEngine
2017-03-02 17:24:44 -05:00
Alexander Bock
d6b5bb753b - Some cleanup of LuaConsole
- Moved dedicated Lua commands into a visible property
  - Disallow non-ASCII characters
- Remove unused KeyboardController
- Remove unused DeviceIdentifier
- Some cleanup of LogFactory
  - Move and use documentation into the class
2017-03-02 14:27:18 -05:00
Emil Axelsson
cb7e81cf3d Add support for converting and rendering volumetric data in the cdf format. Replace DataConverter by a more general purpose TaskRunner.
Conflicts:
	modules/volume/CMakeLists.txt
	modules/volume/linearlrucache.h
	src/engine/openspaceengine.cpp
2017-03-02 18:20:01 +01:00
Alexander Bock
6748305267 Some cleanup of ConfigurationManager 2017-03-01 11:30:54 -05:00
Alexander Bock
3e2c56c940 Steps towards moving dedicated lua functions into properties 2017-02-28 23:15:11 -05:00
Alexander Bock
6704491fdc More cleanup in OpenSpaceEngine 2017-02-25 19:19:31 -05:00
Alexander Bock
bc75334eb4 Use exceptions instead of success return values for initialize and
create methods
2017-02-25 18:08:53 -05:00
Alexander Bock
6c4efc4eec Move OpenSpaceEngine::isMaster method into WindowWrapper class 2017-02-25 11:29:28 -05:00
Alexander Bock
965cf6bd9a Fix crash that occurs if there is an error in the SGCT configuration file 2017-02-22 15:31:59 -05:00
Matthew Territo
65c51425ee Merge branch 'master' into feature/launcherconfigs
* master:
  Updated version number to 0.7.0 (prerelease-12 NAOJ)
  Windows compile fix
  Reduce dependency of onscreengui module in libOpenspace Add check to `check_style_guide` that reports wrong dependencies
  Reduce the dependency of libOpenSpace on modules  - Enable module callbacks for OpenSpaceEngine  - Add OpenSpaceModule function that returns a Lua library
2017-02-20 08:37:37 -07:00
Alexander Bock
fe47845703 Windows compile fix 2017-02-16 23:13:38 +01:00
Alexander Bock
11fbff5fbc Reduce the dependency of libOpenSpace on modules
- Enable module callbacks for OpenSpaceEngine
 - Add OpenSpaceModule function that returns a Lua library
2017-02-16 16:43:34 -05:00
Matthew Territo
895ad51e39 Add Launcher key to ConfigurationManager. Initial work. 2017-02-15 17:05:59 -07: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
Emil Axelsson
4751ce36c4 Refactor scene graph: Move scene loading to separate class. 2016-12-30 17:08:50 +01:00
Alexander Bock
d139dd2d22 Clean include guards in OpenSpace core
Remove unused files
2016-12-09 13:54:22 +01:00
Alexander Bock
af21e40074 Split up scalar, vector, and matrix properties into their own files for improved compile times 2016-11-27 01:17:38 +01:00
Alexander Bock
c199d38aac Add setting to SpiceManager that disables exceptions (closing #142)
Disable exceptions on default
2016-11-24 10:57:53 +01:00
Alexander Bock
70af0f0073 Add an option to the configuration manager to append the scene name to the cache directory (closing #159) 2016-11-07 13:39:01 +01:00
Alexander Bock
c880ee421a Make OpenSpaceModule able to report their version number 2016-10-29 23:13:37 +02:00
Alexander Bock
317ecad9ac Potential fix for High-DPI and manual framebuffer sizes by using SGCT window scaling 2016-10-23 22:55:26 +02:00
Alexander Bock
542f92e768 Add a fix to the window resolution for Retina displays
Add a new setting to the ConfigurationManager that can specify whether to scale the onscreen text by window size or resolution
2016-10-18 18:52:30 +02:00
Emil Axelsson
6c5c8d6839 Make gcc happy 2016-10-10 17:36:55 +02:00
Emil Axelsson
5e2ea10bcd Add http proxy support for GDAL 2016-10-07 20:42:32 +02:00
Emil Axelsson
b448b0ec5e Move all network namespace members into the openspace namespace 2016-09-30 14:13:36 +02:00
Emil Axelsson
0230acb005 Merge branch 'feature/parallelconnection' into develop
Conflicts:
	src/interaction/interactionhandler.cpp
2016-09-30 11:01:37 +02:00
Emil Axelsson
15e83394c3 improve look and feel of the html documentation 2016-09-27 14:45:26 +02:00
Alexander Bock
616a115536 Adding a Lua function to manually enable/disable the frame synchronization 2016-09-24 14:55:20 +02:00
Alexander Bock
8cf39cdd29 Only enable syncing after the first frame due to high initialization load 2016-09-24 09:07:15 +02:00
Emil Axelsson
cd325686ad Merge branch 'develop' of github.com:OpenSpace/OpenSpace into feature/parallelconnection
Conflicts:
	include/openspace/engine/openspaceengine.h
	src/engine/openspaceengine.cpp
	src/interaction/interactionhandler.cpp
	src/network/parallelconnection.cpp
	src/scripting/scriptengine.cpp
2016-09-22 19:33:05 +02:00
Emil Axelsson
112fe7fc54 synchronize time over parallel connection 2016-09-22 18:42:19 +02:00
Alexander Bock
fa136ecb99 Merge branch 'feature/synchronization' into develop 2016-09-22 17:58:05 +02:00
Alexander Bock
6938b59f00 Add application of blending and warping to the takeScreenshot function 2016-09-22 10:28:10 +02:00
Alexander Bock
5c84fd8919 Potential GCC compile fix 2016-09-21 22:52:39 +02:00
Alexander Bock
2ed8042667 Add methods to disable synchronization during scene loading as the application will get killed by the sync timeout otherwise 2016-09-21 22:29:52 +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
Alexander Bock
0a13d5430f Make DocumentationEngine into a singleton object
Add documentation to DocumentationEngine
Add unique identifier to Documentation class (and enforce in DocumentationEngine)
2016-09-19 09:31:34 +02:00