Commit Graph

94 Commits

Author SHA1 Message Date
Alexander Bock 4e4de3f40e Changing the hardcoded bv-color map to a transfer function based map 2014-12-05 22:58:14 +01:00
Alexander Bock 50076e4640 Fixing the flickering of the star rendering (#66) 2014-12-05 14:13:37 +01:00
Alexander Bock 2b79b85124 Started bugfix for renderable stars flickering bug 2014-12-05 11:56:43 +01:00
Alexander Bock 3f35b0a948 More optimizations for RenderableConstellationBounds 2014-12-04 18:37:15 +01:00
Alexander Bock 1a590f83e0 Initial commit of constallation bounds 2014-12-04 00:18:37 +01:00
Hans-Christian Helltegen 5b1b8694dc Merge branch 'develop' of openspace.itn.liu.se:/openspace into feature/geometryfieldlines 2014-12-01 16:40:01 +01:00
Hans-Christian Helltegen 834612469c Finalized the billboard rendering. Code cleanup 2014-12-01 16:27:30 +01:00
Alexander Bock 20c96f00e8 More cleanup of RenderableStars, enable rendering of Speed variable 2014-11-28 15:57:14 +01:00
Alexander Bock 4de8071efe Force all Renderables to declare an 'isReady' function to circumvent assertion triggers when a crucial element of initialization fails
Fix velocity in RenderableStars
2014-11-28 01:41:26 +01:00
Alexander Bock 82491bf89b More work on cleaning up / extending RenderableStars 2014-11-27 23:42:32 +01:00
Alexander Bock 43d542293a More work in progress on RenderableStars
- Made the shader a private object not instantiated by scenegraph
- Started enabling coloring by velocity
- Code cleanup
2014-11-27 03:08:40 +01:00
Hans-Christian Helltegen 337ce2dd92 Added support for rendering fieldlines as textured view-aligned billboards 2014-11-24 17:18:55 +01:00
Hans-Christian Helltegen 815fc3b348 Fixed depth, position, scale and shader issues with fieldlines. Added passthrough geometry shader 2014-11-21 10:37:01 +01:00
Jonas Strandstedt 31c76f3e3c Added key binding from Lua possible
- Possible to add key bindings from Lua possible. This calls Lua scripts
  from key commands.

 - Temporary fixed a small bug for volume rendering
2014-11-17 17:02:40 +01:00
Jonas Strandstedt 8d2503b68e Added support for pixelData for ABuffer
- ABufferFixed should work but it doesn't. But the interface works at
  least.
- ABufferFixed works for normal rendering
- Removed position for ABuffer, it should make rendering much faster.

Todo:
- Figure out why the fetching of pixelData for ABufferFixed gives wrong
  result.
2014-11-13 15:41:10 +01:00
Jonas Strandstedt ba7a4a4a47 Added ABuffer visualizer
- First draft of the ABuffer visualizer renders a cube with all fragments
  from the single linked abuffer. Lua command to turn on is
  openspace.visualizeABuffer(true)
- Fixed LuaConsole to stop receiving input command after inputing command
- Fixed LuaConsole not to add command to history if it is identical to the
  most recent command.

 TODO:
 - Add support for dynamic and fixed abuffer
 - Scale the cube to match the window ratio
2014-11-12 16:54:40 +01:00
Jonas Strandstedt 7e1396a8ae Added separete ProgressBar class 2014-11-07 14:48:03 +01:00
Jonas Strandstedt 1b6ad0f8d7 Faster more dynamic shader loading 2014-11-04 18:17:15 +01:00
Jonas Strandstedt a96e32badb Working OS X version 2014-10-31 15:37:03 +01:00
Jonas Strandstedt 83bebbd60f First OS X ABuffer implementation
- Not working.
2014-10-30 17:10:00 +01:00
Jonas Strandstedt 4bb9d8c800 Merge branch 'solarsystem2' into cleanup
Conflicts:
	src/util/factorymanager.cpp
2014-10-27 19:03:36 +01:00
Jonas Strandstedt 5daa77f7b2 Fixed Release build for windows
- Release build is booting but something goes wrong with spice
2014-10-27 15:22:14 +01:00
michal 08a97d9e68 Merge branch 'develop' into solarsystem2
Conflicts:
	scripts/default_startup.lua
	src/rendering/renderablewavefrontobject.cpp
2014-10-23 11:45:24 -04:00
michal 2dab6e41d5 begin merge with develop 2014-10-23 11:37:22 -04:00
michal 64ee84ede1 Fixed model oriantation
After 32 maya exports and about 600 different attempts of different rotations / scalings along each axis
I realised that the model is in fact correctly aligned and that what we are seing are precisional errors with the
stupid boresight-polygon-baton.

Nevertheless, out of all of those Im keeping some of the more cruicial test-objects (8 to be precise) for future reference,
these can be deleted at some point, I just really want to keep them for now, comfort blanket.
2014-10-21 12:49:39 -04:00
Jonas Strandstedt db141e8e86 Merge branch 'develop' into bug/abuffershadersupdater
Conflicts:
	ext/ghoul
	openspace.cfg
	src/abuffer/abuffer.cpp
	src/engine/openspaceengine.cpp
	src/rendering/renderengine.cpp
2014-10-21 14:54:48 +02:00
michal 50b4c1ec36 fixed renderabletrail class to suit for all different delta times, tropical orbits etc etc. lot of stuff to do with precision and set time intervals (pain in the ass). works clockwork.
changes to modules etc. will do more fixes soon. Incoming.
2014-10-20 16:00:38 -04:00
Jonas Strandstedt 7ef5295bb7 Added ABuffer reinitialization
- Fixed so ABuffer reinitializes properly (could probably be optimized by
  not resizing of smaller than before)
- Now setting size properly from window dimensions
- SGCT side-by-side stereo working
2014-10-17 14:50:40 +02:00
michal 97df29706c small changes, return solarsystem to original state 2014-10-15 18:42:14 -04:00
Alexander Bock 0e46642624 Merge branch 'develop' into solarsystem2
Conflicts:
	src/util/factorymanager.cpp
2014-10-11 10:54:52 +02:00
Jonas Strandstedt 9adc1e69fa Added RenderablePlane
- Only first version of the RenderablePlane

Todo:
- Support rotation of planes
- Support billboarding
- Support different local origin (LowerLeft, LowerRight, Center...)
2014-10-10 15:18:16 +02:00
Jonas Strandstedt 9a1b59a73e Intermediate commit 2014-10-10 11:29:16 +02:00
Jonas Strandstedt e89bfb5161 Fixed Ephimeris rendering to use PSC correctly 2014-10-08 15:54:09 +02:00
Jonas Strandstedt 48614f582a Fixed blending for stars default framebuffer rendering 2014-10-08 13:43:43 +02:00
michal 21745b91a5 new class - renderabletrail - will later be renamed and current replace renderableephemeris.
Right now just adding a bunch of mod files, i know this is rather ugly but i just need it to work for friday.
2014-10-07 18:44:14 -04:00
Alexander Bock 67f0fb3c08 Merge branch 'develop' into solarsystem2
Conflicts:
	.gitignore
	include/openspace/util/spicemanager.h
	shaders/star_fs.glsl
	src/engine/openspaceengine.cpp
	src/rendering/renderengine.cpp
	src/rendering/stars/renderablestars.cpp
	src/scenegraph/scenegraph.cpp
	src/scenegraph/scenegraphnode.cpp
2014-10-06 22:22:30 +02:00
michal acc8056455 added some new classes for ephemeris rendering.. 2014-10-06 15:30:13 -04:00
Jonas Strandstedt 3cad506b5b PowerScaling modifications
- Started working on PowerScaling with some initial changes
- Faking the stars by blending with the abuffer
- Changed texture filtering for planets, looks better in my opinion
2014-10-03 17:02:31 +02:00
michal 938c442dd6 got renderable ephemeris working for larger deltas, problems with leap years though 2014-10-02 11:00:43 -04:00
Jonas Strandstedt e4a8e87098 Using new ghoul ProgramObject functionality
- Fixed risk of memory leak in SceneGraph (deleting shaders)
2014-10-01 15:30:39 +02:00
Jonas Strandstedt cc3f9ef34b Fixed ABuffer to update shader when Scengraph is updated 2014-09-29 13:03:58 +02:00
michal 22fd3acc59 small changes to to get everything working on my end / michal 2014-09-26 17:42:07 -04:00
Jonas Strandstedt 2d359fd48c Started working on modularizing PSC and ABuffer 2014-09-26 17:03:59 +02:00
Jonas Strandstedt 8042111ffe Merge branch 'develop' into spicesolarsystem
Conflicts:
	include/openspace/rendering/renderable.h
	include/openspace/rendering/renderablevolumecl.h
	include/openspace/rendering/renderablevolumeexpert.h
	include/openspace/rendering/renderablevolumegl.h
	include/openspace/rendering/renderengine.h
	include/openspace/scenegraph/ephemeris.h
	include/openspace/scenegraph/scenegraph.h
	include/openspace/scenegraph/spiceephemeris.h
	include/openspace/scenegraph/staticephemeris.h
	include/openspace/util/constants.h
	include/openspace/util/time.h
	src/engine/openspaceengine.cpp
	src/interaction/interactionhandler.cpp
	src/rendering/planets/renderableplanet.cpp
	src/rendering/renderablevolumecl.cpp
	src/rendering/renderablevolumeexpert.cpp
	src/rendering/renderablevolumegl.cpp
	src/rendering/renderengine.cpp
	src/rendering/stars/renderablestars.cpp
	src/scenegraph/spiceephemeris.cpp
	src/scenegraph/staticephemeris.cpp
	src/util/factorymanager.cpp
	src/util/spicemanager.cpp
	src/util/time.cpp
2014-09-25 13:54:42 +02:00
Jonas Strandstedt 82ff7fa984 Merge branch 'develop' into stars
Conflicts:
	include/openspace/util/constants.h
	shaders/pscstandard_fs.glsl
	shaders/pscstandard_vs.glsl
	src/interaction/interactionhandler.cpp
	src/main.cpp
	src/rendering/renderengine.cpp
	src/scenegraph/scenegraph.cpp
	src/scenegraph/scenegraphnode.cpp
	src/util/factorymanager.cpp
2014-09-24 15:39:22 +02:00
michal 700f590a2a SPICE-time dependency, retrieval of spice ephemerides and rotational matrix + coordinate references.
Added functionality:
- New class renderablesphericalgrid is repurposed code from powerscaledsphere class.
  Due to z-buffer issues used as reference grid to confirm planetary orbits are correct.
  This has been a major problem as prior we had no visual reference.
  Now we have a Galactic-, Celestial- and Ecliptic-coordinate grid.
  To this also added separate shader: grid_vs.glsl / grid_fs.glsl
  These grids have a static-rotational matrix derived from partiview (thanks to Brian)
  since spice req. to-from frame to compute rotational matrix.

Time dependency:
- Added struct RuntimeData - which for now only contains openspace time and is passed to all renderables
- All renderables accept runtimeData, keep private reference and use for computation of rotational matrix
- This obviously carries corresponding changes to Scenegraph and ScenegraphNode.

Spicemanager:
- Added function that more easily provides access to rotational matrix used in spice
 (used in renderableplanet for computing planetary objects spin around axis)

Ephemeris-classes:
- Now compute ephemeris from spice based on timeepoch in runtimedata
  TODO: once z-buffer fixed - set ephemeris correctly as meters (not kilometers)

Renderengine:
- Advances time with the advanceTime method in RuntimeData struct

ISSUES:
- Our Y axis NOT same as SPICE or star-catalogue, all renderables rotated now 90deg, needs redefinition,
  lots of debugging and major headaches before this conclusion.
- Depth buffer needs to be fixed in order to properly place planets.
- Spice kernels have finite time-range, when time stops - simulation ends - ugly fix: reset time to zero.
  Possible fix: kernels de431 (part 1-2) cover huge timespan and most likely have functions to extrapolate time,
  drawback is that they are 1,7 gb each.

TODO:
- Compute and draw dynamic ephemeries for each renderable. Either do full year sweep then update for each point or
  create a tail of linesegments for each planet. Dont know yet how to do this, would like spicephemeris to be
  sub-class of Renderable (have own render() method) - good/bad?
2014-09-19 20:32:33 -04:00
Alexander Bock ce10dea96e Fixed compile errors, probably finished merge 2014-09-13 11:45:49 +02:00
michal c1c637efa7 minor fixes, please ref to previous commit 2014-09-10 14:35:44 -04:00
michal 686c7b0b9b final calibration + scaling fix. Looks good now. 2014-09-10 11:32:23 -04:00
michal f0f3b08ab6 some cleanup 2014-09-07 16:19:13 -04:00