Commit graph

189 commits

Author SHA1 Message Date
Michaël Lemaire 818d82607e Optimized lighting of underwater terrain
The water light filter is now applied first to avoid computing
terrain shadows when no light passes through the water layer.
2014-08-22 17:34:07 +02:00
Michaël Lemaire 99aff57d6c Optimized output picture saving 2014-08-21 22:23:04 +02:00
Michaël Lemaire 0abfa97295 Merge branch 'cloud_types'
Conflicts:
	src/render/software/software.pro
2014-08-21 21:31:29 +02:00
Michaël Lemaire 1afcb907c4 Optimized and fixed canvas portion merging in final picture 2014-08-21 15:30:09 +02:00
Michaël Lemaire 04f6ab732d Normalize colors before writing to final picture 2014-08-21 14:53:49 +02:00
Michaël Lemaire c39ef6adce Restored final picture saving (in constant memory usage) 2014-08-21 12:36:28 +02:00
Michaël Lemaire 6c4a16966c Larger maximal canvas portion size 2014-08-21 10:11:44 +02:00
Michaël Lemaire 0bb1cf5bed Added canvas portion writing to disk 2014-08-21 09:58:11 +02:00
Michaël Lemaire 13904be001 Optimization: replaced some divisions by inverse multiplications 2014-08-20 16:45:45 +02:00
Michaël Lemaire 14e0320848 Restored (partially) render progress 2014-08-20 15:58:37 +02:00
Michaël Lemaire 18a669675f Restored tone mapping control of canvas preview 2014-08-20 14:31:28 +02:00
Michaël Lemaire 8ef8b0386c Canvas preview widget is immediately sized (so that render dialog don't resize later) 2014-08-20 14:23:35 +02:00
Michaël Lemaire 2b135eedac Removed old render_progress in SoftwareRenderer 2014-08-19 14:20:37 +02:00
Michaël Lemaire 1bf6d9382b Removed size information from SoftwareRenderer + removed full render tests 2014-08-19 12:22:27 +02:00
Michaël Lemaire 0c48fb075f Rasterizers now use their own interrupt system 2014-08-19 11:44:54 +02:00
Michaël Lemaire 915f43503e Removed unused ParallelQueue 2014-08-19 11:32:23 +02:00
Michaël Lemaire dc3584cefc Check canvas preview coordinates to avoid segfault 2014-08-19 11:25:27 +02:00
Michaël Lemaire 8f24d54568 Restored render interruption 2014-08-19 09:18:55 +02:00
Michaël Lemaire 31b74c660e Iterate over portions to render the whole canvas 2014-08-18 17:33:15 +02:00
Michaël Lemaire 3a2ec1c75f Only allocate canvas portion pixels when needed
This will allow for larger renders in constant memory footprint
2014-08-18 17:16:17 +02:00
Michaël Lemaire c9fa33984b Restored color profile in canvas preview 2014-08-18 16:33:09 +02:00
Michaël Lemaire 9c2d545e6a Fixed parallel canvas shading 2014-08-18 16:25:44 +02:00
Michaël Lemaire b5ee4c432f Added parallel pixel shader for second-pass rendering 2014-08-18 16:04:46 +02:00
Michaël Lemaire 0566f2bdd8 Refactored ParallelWork for better performance 2014-08-18 15:20:04 +02:00
Michaël Lemaire 2aeecdec62 WIP on canvas pixel shading 2014-08-18 12:17:16 +02:00
Michaël Lemaire b86669c5a0 Added color to rasterized polygons 2014-08-16 13:34:55 +02:00
Michaël Lemaire bc34a2b823 Removed RenderArea and added terrain rasterization to canvas 2014-06-18 22:10:46 +02:00
Michaël Lemaire f94d93ae60 Fixed canvas Z-index 2014-06-18 20:10:05 +02:00
Michaël Lemaire cf58bea1b7 WIP on new canvas system 2014-06-12 17:45:59 +02:00
Michaël Lemaire 8099361cc9 WIP on new canvas system 2014-06-10 15:13:16 +02:00
Michaël Lemaire 43431aae87 New Canvas software rendering structure (WIP) 2014-06-05 17:12:49 +02:00
Michaël Lemaire c57c5f45d4 Merge branch 'master' into water_shader 2014-05-20 09:55:44 +02:00
Michaël Lemaire 1158aa248b cloud_types: Added cumulo-nimbus model 2014-03-18 21:27:35 +01:00
Michaël Lemaire eea639a7fb cloud_types: Added cirrus model 2014-03-18 21:17:41 +01:00
Michaël Lemaire 0ab61f8060 cloud_types: Added alto cumulus model 2014-03-18 21:08:17 +01:00
Michaël Lemaire 49564acc3c Fixed build for windows systems 2014-03-01 01:34:34 +01:00
Michaël Lemaire 6e323dbea7 BasePreview no longer fix its own size in constructor
This prevented free-sized previews from correctly sizing
2014-02-24 22:25:53 +01:00
Michaël Lemaire a610d69f84 opengl: Fixed artifacts on water reflection 2014-01-21 22:31:17 +01:00
Michaël Lemaire 3e72fc7bf8 Replaced NoiseGenerator by NoiseState in WaterDefinition 2014-01-21 21:51:11 +01:00
Michaël Lemaire e79692bb5d Refactored noise shader 2014-01-21 21:41:15 +01:00
Michaël Lemaire 25d9a95141 Water is now always at y=0.0 2014-01-06 20:22:00 +01:00
Michaël Lemaire 33c5d89783 Added skybox reflection to water shader 2014-01-05 22:20:15 +01:00
Michaël Lemaire 49b7055655 [WIP] Use simple normal map for opengl water 2014-01-05 21:52:09 +01:00
Michaël Lemaire c52eeac71d [WIP] Added the simplex sampler to opengl water shader 2014-01-05 20:37:51 +01:00
Michaël Lemaire 98646efb99 Fixed camera reverting in 3d explorer not reverting fov slider 2014-01-04 11:43:40 +01:00
Michaël Lemaire ec71b09f2e [WIP] Texture form previews 2014-01-02 17:36:19 +01:00
Michaël Lemaire f0ed8d4b4a Added textures mix preview 2014-01-02 15:19:20 +01:00
Michaël Lemaire 1db49afaed Restored correct terrain tessellation 2014-01-02 15:08:00 +01:00
Michaël Lemaire 5579045604 Fixed the terrain walker hitting displacement immediately at high quality 2013-12-31 16:55:10 +01:00
Michaël Lemaire e61dae6f0a Added NoiseState to maintain the noise offsets in clouds 2013-12-31 15:50:28 +01:00
Michaël Lemaire 123e434b0a Small adjustements 2013-12-30 17:22:01 +01:00
Michaël Lemaire 1131972759 Improved the opengl terrain rendering queue 2013-12-30 16:02:33 +01:00
Michaël Lemaire eb795b0f83 Added camera FOV control (and better initial fov) 2013-12-30 14:59:42 +01:00
Michaël Lemaire 134158c33a Stars optimization and small tweaks 2013-12-29 18:44:12 +01:00
Michaël Lemaire 220fe89b05 Use the new terrain walker for improved shadows 2013-12-29 18:18:18 +01:00
Michaël Lemaire eabe68b77d New terrain walker (now used for ray casting) 2013-12-29 14:14:49 +01:00
Michaël Lemaire 938242a7de Optimization for moon lighting 2013-12-26 19:03:19 +01:00
Michaël Lemaire 0e837f00c6 Added lighting done by moon 2013-12-26 18:28:25 +01:00
Michaël Lemaire 3786b21e15 Added stars to night sky 2013-12-26 17:30:22 +01:00
Michaël Lemaire c651b436ab Added moon configuration 2013-12-26 16:55:37 +01:00
Michaël Lemaire d2f49a124f Added moon basic lighting 2013-12-26 16:35:29 +01:00
Michaël Lemaire 6589589ad4 Added basic night sky with a plain moon 2013-12-26 15:36:15 +01:00
Michaël Lemaire a9a6134633 Fixed material dialog validation and made material hardness to work 2013-12-25 19:45:56 +01:00
Michaël Lemaire de79f912c3 Moved small things from WidgetExplorer to OpenGLRenderer 2013-12-24 16:36:45 +01:00
Michaël Lemaire 742b93d3d9 Small fixes to opengl rendering 2013-12-24 15:00:32 +01:00
Michaël Lemaire 3d54ce974a Added view distance blending in opengl renderer 2013-12-24 13:22:34 +01:00
Michaël Lemaire 74e707a989 Fixed water color in opengl rendering 2013-12-24 11:48:06 +01:00
Michaël Lemaire bf47e058ee Rendering terrain chunks with new shader system 2013-12-24 11:44:39 +01:00
Michaël Lemaire f97823604e Introduced VertexArray object to handle terrain vertex data
This will be used later with opengl vertex arrays
2013-12-23 17:24:05 +01:00
Michaël Lemaire ac5c0fd584 Refactored opengl terrain rendering for future use of shaders 2013-12-23 14:09:52 +01:00
Michaël Lemaire 8098482d50 Retrograded to OpenGL 3.0 functions 2013-12-23 10:26:29 +01:00
Michaël Lemaire 39789aea3f Allow shaders source code to be split in several files (and thus included) 2013-12-22 18:47:24 +01:00
Michaël Lemaire 992089f0ef Added textures to OpenGLSharedState 2013-12-22 18:05:11 +01:00
Michaël Lemaire 645bada91b Added camera to OpenGLSharedState 2013-12-22 17:30:48 +01:00
Michaël Lemaire 666420bbb2 New OpenGLSharedState class to manage shader variables 2013-12-22 15:04:33 +01:00
Michaël Lemaire 994dcb5f44 Add aerial perspective to water shader 2013-12-22 01:17:57 +01:00
Michaël Lemaire 3696adc90b Use opengl shaders for water rendering 2013-12-22 00:41:19 +01:00
Michaël Lemaire 65e5a194ba Use QOpenGLFunctions for gl* calls (except legacy code) 2013-12-22 00:10:18 +01:00
Michaël Lemaire 7b790d2015 Switched opengl skybox to shaders 2013-12-21 23:48:54 +01:00
Michaël Lemaire c497cf2127 Restored clouds aspect preview 2013-12-20 17:30:27 +01:00
Michaël Lemaire 1d9f622a26 Small cloud adjustments 2013-12-19 18:19:18 +01:00
Michaël Lemaire 5f8cd19e0c Fixed preview updates drawing outside pixbuf on resize 2013-12-19 15:22:49 +01:00
Michaël Lemaire a3d2150349 Restored clouds rendering 2013-12-18 22:09:35 +01:00
Michaël Lemaire 3271b7ed5e WIP on restoring clouds rendering 2013-12-17 23:45:09 +01:00
Michaël Lemaire 192aa7604e Fixed several minor memory race bugs 2013-12-17 23:01:36 +01:00
Michaël Lemaire 97b9992aa4 Small optimization 2013-12-15 19:03:57 +01:00
Michaël Lemaire 6b5a652d5c Fixed several renderer problems due to scenery sharing 2013-12-15 18:44:54 +01:00
Michaël Lemaire cc9c68bef9 Fixed layers not adding children to BaseDefinition 2013-12-15 15:33:54 +01:00
Michaël Lemaire bd29ee97cf Fixed top-down preview and opengl renderer 2013-12-15 15:18:11 +01:00
Michaël Lemaire 1685efcfbe Fixed opengl explorer 2013-12-15 15:06:43 +01:00
Michaël Lemaire 02bf40c3c6 Fixed top-down render preview 2013-12-15 14:50:43 +01:00
Michaël Lemaire a814a530de Fixed rendering camera not being applied 2013-12-15 14:45:38 +01:00
Michaël Lemaire 7cda1efa54 Fixed water previews 2013-12-15 14:41:38 +01:00
Michaël Lemaire 97a950947a Fixed terrain preview 2013-12-15 14:28:46 +01:00
Michaël Lemaire 00e04df25a Fixed atmosphere previews 2013-12-15 13:59:21 +01:00
Michaël Lemaire be5c67e4aa Several speed optimizations 2013-12-11 12:46:39 +01:00
Michaël Lemaire 879f88fd20 Removed old C-api for Vector3 2013-12-11 11:32:10 +01:00
Michaël Lemaire 88517af86f Removed old C-Api from Color 2013-12-11 10:24:35 +01:00
Michaël Lemaire 84608a66a8 Fully removed 'rendering' library 2013-12-11 10:17:36 +01:00
Michaël Lemaire 5354087244 Optimized camera projection and scanlines 2013-12-10 23:41:33 +01:00