Commit Graph

91 Commits

Author SHA1 Message Date
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
da3e912026 Remove warnings on MacOS in Clang 2017-04-25 19:12:42 -04:00
Emil Axelsson
28c82341bf Fix malformed mod files 2017-04-25 18:24:30 +02:00
Emil Axelsson
4b38b33e18 Clean up code for planet radius and bounding sphere calculation (#289)
- Remove some power scaled coordaintes.
- Remove spice dependency from sphere geometry.
- Remove dead code.
2017-04-18 09:58:27 +02:00
Emil Axelsson
b06864eefe Merge branch 'develop' of github.com:OpenSpace/OpenSpace into pr/scenegraph-refactor 2017-03-16 16:35:29 +01:00
Alexander Bock
dc40812df9 Fix warnings in code
Make OpenSpaceTest not flood the console on Jenkins
Fix Vec3 property to signal change correctly
Let RenderablePlanetProject correctly reload base map and height map
Update Ghoul
2017-03-11 11:26:25 -05: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
34f1b55c3c Enable shifting the meridian of a RenderablePlanetProjection by 180 for Pluto 2017-03-05 17:26:22 -05:00
Alexander Bock
8fd60ce8e6 - Remove documentation.h include and replace with forward declaration
- Move Documentation struct into documentation namespace
2017-03-01 18:13:15 -05:00
Alexander Bock
a6c422c38e Fix runtime error with moving classes from base to space module
Add additional logging information to initialization
2017-02-08 14:42:28 -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
dbb599a5fa Separate base module into base and space 2016-12-13 14:43:44 +01:00
Alexander Bock
c937203dc3 Cleanup New Horizons module 2016-12-06 18:48:07 +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
Alexander Bock
e543163612 Updating Ghoul reference
Adapt to the API changes
2016-11-14 14:45:26 +01:00
Alexander Bock
18b8aab898 Changes in ProjectionComponent initialization
- Remove parsing function
  - Make ProjectionComponent accept sub-dictionary
Remove "Rotation" key-value from RenderableModelProjection
  - Information moved into RenderableFOV to do conversion between object and frame
Changes in mod files to reflect ProjectionComponent and RenderableModelProjection changes
Added Documentation to
  - RenderablePlanetProjection
  - RenderableModelProjection
  - ProjectionComponent
  - PlanetGeometry
  - ModelGeometry
2016-10-27 21:45:49 +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
9196ec2f50 Remove local, shared, synced versions of Time. Keep one source of true 2016-09-03 19:45:58 -04:00
Alexander Bock
6884eca40e Merge remote-tracking branch 'origin/feature/rosetta-shadowmapping' into feature/rosetta
Conflicts:
	modules/newhorizons/rendering/renderablemodelprojection.cpp
	modules/newhorizons/shaders/renderableModelProjection_fs.glsl
	modules/newhorizons/util/projectioncomponent.cpp
2016-08-29 18:34:18 +02:00
Kalle Bladin
22d60779c6 Update renderable planet projection to render in high precision 2016-08-24 11:42:44 -04:00
Kalle Bladin
d042f6c4be Merge branch 'develop' into feature/osirisrex 2016-08-19 12:33:49 -04:00
Emil Axelsson
6d56b1d38a implement shadow mapping for image projections on non-convex bodies 2016-08-19 16:56:57 +02:00
Erik Broberg
8f8114fabf Image has a TimeRange instead of two doubles 2016-08-18 18:23:52 -04:00
Alexander Bock
72e1e9231a Add an update method to the ProjectionComponent that takes care of Shader rebuildin 2016-08-18 16:27:44 +02:00
Alexander Bock
e284543434 Make use of a secondary stencil buffer for masking the dilation areas 2016-08-18 11:43:51 +02:00
Erik Broberg
7fc31151ea Clean up: Remove targetBody from Renderable 2016-08-12 16:42:33 -04:00
Alexander Bock
7267aacea2 Do not retroactively project images when time passes with disable projections 2016-06-30 00:20:39 +02:00
Alexander Bock
6f05ed3b98 Make ProjectionComponent an actual component rather than using inheritance 2016-06-29 23:27:01 +02:00
Alexander Bock
e1460575f5 Reenable up-vector definition in RenderablePlanetProjection 2016-06-17 16:49:04 +02:00
Alexander Bock
b2ce3d774c Merge remote-tracking branch 'origin/feature/iSWA' into release/ips 2016-06-16 13:51:08 +02:00
Alexander Bock
ad1893fd6f Cleanup of ScreenSpaceRenderable
Add missing includes to other files
2016-06-16 01:00:10 +02:00
Kalle Bladin
012bcaefaf Solve merge conflicts. 2016-06-07 12:54:52 -04:00
Alexander Bock
6a2624dbb2 Enable the sorting of performance measurement values 2016-06-05 23:27:24 +02:00
Alexander Bock
6a4362d6ed Make OpenSpace not crash on a fault rebuild of shaders 2016-06-05 18:52:00 +02:00
Alexander Bock
9a3818f007 ProjectionComponent always loads the placeholder textures and reuses it 2016-06-04 20:58:58 +02:00
Alexander Bock
ef75066478 Rename projection shaders to more sensible names 2016-06-04 20:42:10 +02:00
Alexander Bock
2700ef6ea8 Moving potential targets into ProjectionComponent 2016-06-04 13:45:55 +02:00
Alexander Bock
4dda541d1f More work on refactoring RenderablePlanetProjection and RenderableModelProjection 2016-06-04 13:38:50 +02:00
Alexander Bock
491226ea7a Started refactoring RenderableModelProjection and RenderablePlanetProjection to place common code into ProjectionComponent 2016-06-03 18:30:16 +02:00
Alexander Bock
4ef03bb02b Further cleanup of projection code 2016-06-03 17:41:35 +02:00
Alexander Bock
63fb61b783 Add a slider for fading the projection in and out 2016-06-03 15:57:48 +02:00
Alexander Bock
b5466e0a96 Project images of RenderablePlanetProjection into a separate texture layer that can be cleared faster 2016-06-03 15:53:50 +02:00
Alexander Bock
273713aaaa Started cleanup of RenderablePlanetProjection 2016-06-03 11:16:10 +02:00
Kalle Bladin
1db9f2f60c Clean up camera class. 2016-05-19 23:21:48 -04:00
Alexander Bock
50d8b93d30 Convert projected images instead of swizzling for RenderablePlanetProjection 2016-05-19 17:17:18 +02:00
Alexander Bock
7d32dba5cb Enable SingleSphereGeometry to have more segments
Another fix for RenderablePlanetProjection heightmap offset
2016-05-18 20:19:47 +02:00
Alexander Bock
0ab3f0c026 Some fixes on heightmap displacement for RenderablePlanet
Some fixes on heightmap displacement for RenderablePlanetProjection
Enable optional normal map on RenderablePlanetProjection
2016-05-18 19:03:03 +02:00
Alexander Bock
74c7413115 Adding functionality to clear projections on RenderableModelProjection (closing #22) 2016-05-18 00:36:11 +02:00
Alexander Bock
02674cb1c5 Cleanup in projection classes 2016-05-08 16:20:51 +02:00