Commit graph

526 commits

Author SHA1 Message Date
ec69975146 Fixed uninitialized texture id in opengl
This could cause an invalid operation error at texture binding
2015-09-21 21:01:44 +02:00
7658bf256f Optimized terrain rendering
Painted height map is not queried anymore when empty
2015-09-21 01:36:03 +02:00
aacb4addd5 Optimized texture rendering
Texture layers fully masked by another are not shaded anymore
2015-09-21 00:42:58 +02:00
6e45fc4c2f Small performance improvement in opengl drawing 2015-09-15 18:18:24 +02:00
4fb7078815 Added rendered picture saving ui 2015-09-15 01:26:05 +02:00
20c03f84b7 Added an initial loading screen 2015-09-14 19:25:54 +02:00
84cb69e127 Added cancel button on render dialog 2015-09-14 01:35:25 +02:00
005c24fa85 Tweaked window and render sizes to keep full hd ratio
Also added medium render size
2015-09-14 00:48:55 +02:00
0c8a88cddb Added render time 2015-09-13 22:38:44 +02:00
c6272846ea Fixed camera Z-culling planes
This fixes artifacts in the sky rasterization
2015-09-13 20:08:14 +02:00
cd7eb2f669 Refactored clouds rendering quality factor 2015-09-13 18:58:11 +02:00
6a8fc7b102 Fixed atmosphere daytime control
Minute+1 button did add a wrong amount of time
2015-09-10 23:43:25 +02:00
2b5b35e3b4 Fixed specular lighting on water not being consistent between opengl and software 2015-09-10 23:41:15 +02:00
3c351bbe5c Color, Vector3 and CanvasFragment are now PODs
This can speed up CanvasPortion initialization
2015-09-10 22:06:50 +02:00
8d33a11dc5 Added rasterization quality control 2015-09-10 19:33:52 +02:00
6a45c5dba7 Refactored quality control of terrain rendering
Terrain scaling factor was removed for quality consistency
2015-09-10 18:16:57 +02:00
4fcf1d071c Added render tests from command line 2015-09-10 00:40:47 +02:00
035c957054 Fixed small UI issues 2015-09-09 00:08:01 +02:00
647e185e52 Added IntNode, IntPropertyBind, PanelPictureChoice and /water/model property 2015-09-08 23:52:34 +02:00
982af74c2d Added /water/reflection property 2015-09-08 01:00:34 +02:00
3cb287dfeb Removed dependency to GLU 2015-09-07 01:20:57 +02:00
a96699dece Added mouse tracking on 3d view for future operations 2015-09-07 01:15:59 +02:00
1361c5c654 ui: Fixed some state issues 2015-08-28 11:40:35 +02:00
45f10440ec Fixed top-down camera switching 2015-08-26 00:49:52 +02:00
0cf8b0fcee Fixed opengl humidity rendering 2015-08-26 00:40:10 +02:00
623a3606eb Fixed UI not reverting to previous state when exiting render dialog 2015-08-26 00:28:12 +02:00
c450774995 Applied atmosphere humidity to opengl renderer 2015-08-25 23:33:47 +02:00
ffe5b38ad8 Fixed a segfault at application exit 2015-08-25 01:09:11 +02:00
98f0708d3e Fixed OpenGL rendering ratio being discarded on camera move 2015-08-25 00:52:33 +02:00
1077e4dca3 Fixed OpenGL viewport being updated at each frame
That could cause ratio flickering on paint() on some devices
2015-08-24 19:38:59 +02:00
9b2c60fe16 DefinitionNode.copy now copies children automatically 2015-08-24 01:23:05 +02:00
c199bef7f2 Added /atmosphere/humidity control 2015-08-24 01:19:19 +02:00
625507e11d Fixed mouse events being processed by both controls and OpenGLView 2015-08-24 00:53:24 +02:00
b2a458b1f2 Refactoring of QML states 2015-08-24 00:39:31 +02:00
d6233c70f0 Fixed small memory leaks 2015-08-23 22:44:45 +02:00
7c7b6043c5 Improved render progress.
A bug was also fixed where some canvas pixels were shaded twice,
leading to a performance loss.
2015-08-23 20:22:37 +02:00
e8d91e30ac Partially worked around atmosphere artifacts using an offset to ground 2015-08-21 01:19:55 +02:00
0579cc2c3c Added shortcut information in tooltips 2015-08-21 00:46:42 +02:00
edc60113d9 Added render buttons 2015-08-21 00:41:14 +02:00
28c9c08d74 Added water rendering toggle in opengl 2015-08-21 00:25:34 +02:00
13c8816f9e Fixed water height not resetting when creating new scene 2015-08-20 23:11:07 +02:00
f19433457e More detailed terrain tessellation in opengl renderer 2015-08-20 23:07:09 +02:00
7dd70e7bca Tweaked camera speed 2015-08-20 19:02:11 +02:00
05d0680210 Top-down camera is now set relative to render camera 2015-08-20 01:30:46 +02:00
5c90e1ef07 Improved "time of day" UI 2015-08-20 01:15:08 +02:00
bbec14d904 Fixed atmosphere saving to file 2015-08-19 22:07:44 +02:00
87acc42041 Experimental scenery generate/save/load from UI 2015-08-19 20:06:47 +02:00
3599c3aecf Fixed clouds layers being deleted in scenery by opengl renderer 2015-08-19 19:28:36 +02:00
0058a0a8e3 Switched to RGB material colors
...to avoid otherwise unused HSL conversion, which causes problems
for some RGB values (like Color(1, 0, 0))
2015-08-19 19:14:59 +02:00
fde385a51a Fixed initial textures definition 2015-08-19 18:14:15 +02:00
100ee0eec1 Fixed underwater terrain detection in opengl renderer 2015-08-19 17:22:14 +02:00
95d2f55ebf Fixed atmosphere daytime control binding 2015-08-19 01:18:16 +02:00
9d077d78f5 Added FloatPropertyBind class
This allows to easily bind a Qml property to a FloatNode,
synchronizing values both ways.
2015-08-19 01:17:49 +02:00
9a177352ba Fixed OpenGL camera management 2015-08-18 22:47:18 +02:00
56dae1e38e Don't copy scenery in the renderer 2015-08-18 22:29:18 +02:00
db0be5204f Switched /atmosphere/daytime to new definition system 2015-08-18 20:31:11 +02:00
e96fdd9721 Added pause of opengl renderer while rendering picture 2015-08-18 19:12:54 +02:00
0cf2add322 Fixed UI elements visibility and input issues 2015-08-18 18:22:16 +02:00
8fa0d8af29 Added DefinitionWatcher system
Also switched to the new definition system for /terrain/water_height
2015-08-17 22:55:30 +02:00
67bd80fba5 Fixed undo/redo system 2015-08-17 18:18:31 +02:00
5afd5ec24a Added DiffManager system, with simple undo/redo 2015-08-17 00:29:54 +02:00
1eef1ef429 Start of undo/redo system (added DefinitionDiff) 2015-08-16 23:01:56 +02:00
d78bd2553c Added unit tests for FloatNode 2015-08-14 00:22:20 +02:00
d65bc18342 Fixed compiler warnings 2015-08-13 23:59:27 +02:00
0fc10fd28b Added FloatNode and smart save/load of definition tree
Node children are now saved with their name, and if a child is not found,
it is skipped. This will allow for backward/forward compatibility of saves.
2015-08-13 23:46:50 +02:00
6062c755b5 Fixed layers saving/loading
Global scenery save/load testing was also improved to detect these cases better
2015-08-13 19:49:16 +02:00
46e9e73793 Refactored logging system using iostream 2015-08-13 00:33:16 +02:00
a8ae50df94 Removed unused preview renderers 2015-08-12 22:53:54 +02:00
42d3ae4ceb Renamed BaseDefinition to DefinitionNode 2015-08-12 22:21:10 +02:00
a4edc9568b Restored progress display in CLI render 2015-08-12 22:11:26 +02:00
6f8e0c3cfd Fixed some memory issues 2015-08-12 19:29:28 +02:00
44c03e46a9 Tweaked opengl terrain tessellation to speed up rendering 2015-08-12 17:26:17 +02:00
26fb112da1 Added name to all BaseDefinition and toString representation
Also fixed deletion of children in the definition tree,
to handle dynamic and static destructor calls.
2015-08-12 17:02:27 +02:00
7d79b6f772 Added scenery save/load testing 2015-08-04 00:00:56 +02:00
0585bc4b6f Removed old QtWidget UI 2015-07-28 19:03:10 +02:00
fc15f7d9b8 Added ground texture resetting while changing time of day 2015-07-26 18:30:30 +02:00
e84698dbb3 Added shortcut to show previous render again 2015-07-23 00:28:27 +02:00
efcbeecf3e Added speed factor in camera control 2015-07-22 21:30:56 +02:00
8c2091de03 Added render progress bar 2015-07-22 19:23:22 +02:00
2de920e091 Fixed quick ui camera to stay above ground and water 2015-07-22 18:39:46 +02:00
2c877953e7 Improved basic quick ui usability 2015-07-22 18:05:24 +02:00
261eb5a674 opengl: Replaced temp lighting with sun transmission lighting 2014-11-21 11:40:47 +01:00
f7715b612e Changed some old int-bools to true booleans 2014-11-21 09:45:19 +01:00
1cc3a4d625 quick ui : Added basic camera controls 2014-09-26 17:46:39 +02:00
57b90af132 Added progressive camera change to opengl view 2014-09-18 17:38:37 +02:00
872e191fea Merge branch 'master' into quick_ui 2014-09-18 11:39:56 +02:00
553b6b2896 Improved data files locator 2014-09-18 11:39:36 +02:00
f869c2a01d Fix compile in debug mode 2014-09-18 10:09:25 +02:00
0c3a498cae Merge branch 'master' into quick_ui 2014-09-18 09:25:16 +02:00
4a01a4314a Refactored TerrainHeightMap to PaintedGrid for future reuse 2014-09-15 12:32:27 +02:00
5eed701803 Removed unused Circle system from Zone 2014-09-15 09:36:48 +02:00
06a8227de3 Added quick render to QtQuick UI 2014-09-09 17:56:52 +02:00
d0a5f19cc5 Added daytime control to QtQuick UI 2014-08-28 19:46:06 +02:00
2251db361c WIP on QtQuick toolbars 2014-08-28 10:29:12 +02:00
d909ff380f Fixed opengl drawing in qtquick window 2014-08-27 18:19:48 +02:00
3814f63ac0 Experiments on toolbars 2014-08-27 17:23:59 +02:00
0e2e0a05eb Refactored QtQuick UI to work in QtCreator 2014-08-27 15:18:08 +02:00
078bab62fc Merge branch 'master' into quick_ui
Conflicts:
	src/paysages.pro
2014-08-27 13:55:51 +02:00
6d834030f0 Use version 1.7.0 of google test 2014-08-25 21:09:42 +02:00
e1aceaaf14 Externalized googletest as a git submodule 2014-08-25 21:05:33 +02:00
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
99aff57d6c Optimized output picture saving 2014-08-21 22:23:04 +02:00
0abfa97295 Merge branch 'cloud_types'
Conflicts:
	src/render/software/software.pro
2014-08-21 21:31:29 +02:00
1afcb907c4 Optimized and fixed canvas portion merging in final picture 2014-08-21 15:30:09 +02:00
04f6ab732d Normalize colors before writing to final picture 2014-08-21 14:53:49 +02:00
c39ef6adce Restored final picture saving (in constant memory usage) 2014-08-21 12:36:28 +02:00
6c4a16966c Larger maximal canvas portion size 2014-08-21 10:11:44 +02:00
0bb1cf5bed Added canvas portion writing to disk 2014-08-21 09:58:11 +02:00
13904be001 Optimization: replaced some divisions by inverse multiplications 2014-08-20 16:45:45 +02:00
14e0320848 Restored (partially) render progress 2014-08-20 15:58:37 +02:00
18a669675f Restored tone mapping control of canvas preview 2014-08-20 14:31:28 +02:00
8ef8b0386c Canvas preview widget is immediately sized (so that render dialog don't resize later) 2014-08-20 14:23:35 +02:00
0d659d2e44 WIP on quick ui prototype 2014-08-19 17:37:24 +02:00
f7d84afb79 Added primary toolbar to qt quick prototype 2014-08-19 17:01:42 +02:00
9f438a3f84 Prototype of experimental UI using Qt Quick 2014-08-19 15:49:08 +02:00
2b135eedac Removed old render_progress in SoftwareRenderer 2014-08-19 14:20:37 +02:00
1bf6d9382b Removed size information from SoftwareRenderer + removed full render tests 2014-08-19 12:22:27 +02:00
0c48fb075f Rasterizers now use their own interrupt system 2014-08-19 11:44:54 +02:00
915f43503e Removed unused ParallelQueue 2014-08-19 11:32:23 +02:00
dc3584cefc Check canvas preview coordinates to avoid segfault 2014-08-19 11:25:27 +02:00
8f24d54568 Restored render interruption 2014-08-19 09:18:55 +02:00
31b74c660e Iterate over portions to render the whole canvas 2014-08-18 17:33:15 +02:00
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
c9fa33984b Restored color profile in canvas preview 2014-08-18 16:33:09 +02:00
9c2d545e6a Fixed parallel canvas shading 2014-08-18 16:25:44 +02:00
b5ee4c432f Added parallel pixel shader for second-pass rendering 2014-08-18 16:04:46 +02:00
0566f2bdd8 Refactored ParallelWork for better performance 2014-08-18 15:20:04 +02:00
2aeecdec62 WIP on canvas pixel shading 2014-08-18 12:17:16 +02:00
fb3d32baf4 Removed old render area code in dialogrender 2014-08-16 13:41:02 +02:00
b86669c5a0 Added color to rasterized polygons 2014-08-16 13:34:55 +02:00
bc34a2b823 Removed RenderArea and added terrain rasterization to canvas 2014-06-18 22:10:46 +02:00
f94d93ae60 Fixed canvas Z-index 2014-06-18 20:10:05 +02:00
cf58bea1b7 WIP on new canvas system 2014-06-12 17:45:59 +02:00
8099361cc9 WIP on new canvas system 2014-06-10 15:13:16 +02:00
43431aae87 New Canvas software rendering structure (WIP) 2014-06-05 17:12:49 +02:00
69fba0fc69 Fixed some unit tests issues 2014-05-20 10:39:02 +02:00
c57c5f45d4 Merge branch 'master' into water_shader 2014-05-20 09:55:44 +02:00
1158aa248b cloud_types: Added cumulo-nimbus model 2014-03-18 21:27:35 +01:00
eea639a7fb cloud_types: Added cirrus model 2014-03-18 21:17:41 +01:00
0ab61f8060 cloud_types: Added alto cumulus model 2014-03-18 21:08:17 +01:00
49564acc3c Fixed build for windows systems 2014-03-01 01:34:34 +01:00
b9ebf06188 Fixed path of resources in UI files 2014-02-24 22:30:27 +01:00
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
a610d69f84 opengl: Fixed artifacts on water reflection 2014-01-21 22:31:17 +01:00
3e72fc7bf8 Replaced NoiseGenerator by NoiseState in WaterDefinition 2014-01-21 21:51:11 +01:00
e79692bb5d Refactored noise shader 2014-01-21 21:41:15 +01:00
25d9a95141 Water is now always at y=0.0 2014-01-06 20:22:00 +01:00
33c5d89783 Added skybox reflection to water shader 2014-01-05 22:20:15 +01:00
49b7055655 [WIP] Use simple normal map for opengl water 2014-01-05 21:52:09 +01:00
c52eeac71d [WIP] Added the simplex sampler to opengl water shader 2014-01-05 20:37:51 +01:00