Michaël Lemaire
ac1b6a909b
Extracted RayCastingResult header to speed-up compiling
2015-10-16 00:28:07 +02:00
Michaël Lemaire
e81487ae08
Added safety offset on lighting
...
This avoids shadow algorithm to hit the surface it is currently checking
2015-10-16 00:14:54 +02:00
Michaël Lemaire
cd144b886c
Added TimeManager with basic wind control for videos
2015-10-15 17:52:03 +02:00
Michaël Lemaire
c62cf3a0a4
Improved "near_frustum" render test
2015-10-09 00:55:36 +02:00
Michaël Lemaire
2be80bf8e2
Fixed aerial perspective being applied at wrong location in clouds
...
It was applied at the enter point of the walking algorithm, which
was the camera when it was inside a cloud layer.
Now it is applied at the first found segment, which is still not
optimal but better.
The bruneton model was also fixed to not produce black results for
aerial perspective exactly at the camera location.
2015-10-09 00:43:32 +02:00
Michaël Lemaire
3fc8b1c98f
Added automatic tessellation near camera frustum culling
...
This allows the camera nearer the ground
and fixes holes in lower quality renders
2015-10-08 19:20:44 +02:00
Michaël Lemaire
98e3128c31
Added /atmosphere/godrays/ definition node
2015-09-30 01:08:15 +02:00
Michaël Lemaire
b045b731ad
Added god rays manager (initial implementation)
2015-09-29 22:31:25 +02:00
Michaël Lemaire
6f2d23d960
Refactored lighting manager
2015-09-25 00:12:31 +02:00
Michaël Lemaire
ba02442fea
Slightly improved cloud lighting
2015-09-24 00:13:52 +02:00
Michaël Lemaire
704fe839d9
Smoothed opacity in clouds
2015-09-22 18:17:00 +02:00
Michaël Lemaire
8a9c3d4b83
Added /atmosphere/sun_radius property
...
Also added the tool camera mode to focus on the sun while altering its radius
2015-09-21 23:12:43 +02:00
Michaël Lemaire
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
Michaël Lemaire
7658bf256f
Optimized terrain rendering
...
Painted height map is not queried anymore when empty
2015-09-21 01:36:03 +02:00
Michaël Lemaire
aacb4addd5
Optimized texture rendering
...
Texture layers fully masked by another are not shaded anymore
2015-09-21 00:42:58 +02:00
Michaël Lemaire
6e45fc4c2f
Small performance improvement in opengl drawing
2015-09-15 18:18:24 +02:00
Michaël Lemaire
20c03f84b7
Added an initial loading screen
2015-09-14 19:25:54 +02:00
Michaël Lemaire
0c8a88cddb
Added render time
2015-09-13 22:38:44 +02:00
Michaël Lemaire
cd7eb2f669
Refactored clouds rendering quality factor
2015-09-13 18:58:11 +02:00
Michaël Lemaire
2b5b35e3b4
Fixed specular lighting on water not being consistent between opengl and software
2015-09-10 23:41:15 +02:00
Michaël Lemaire
3c351bbe5c
Color, Vector3 and CanvasFragment are now PODs
...
This can speed up CanvasPortion initialization
2015-09-10 22:06:50 +02:00
Michaël Lemaire
8d33a11dc5
Added rasterization quality control
2015-09-10 19:33:52 +02:00
Michaël Lemaire
6a45c5dba7
Refactored quality control of terrain rendering
...
Terrain scaling factor was removed for quality consistency
2015-09-10 18:16:57 +02:00
Michaël Lemaire
4fcf1d071c
Added render tests from command line
2015-09-10 00:40:47 +02:00
Michaël Lemaire
982af74c2d
Added /water/reflection property
2015-09-08 01:00:34 +02:00
Michaël Lemaire
3cb287dfeb
Removed dependency to GLU
2015-09-07 01:20:57 +02:00
Michaël Lemaire
a96699dece
Added mouse tracking on 3d view for future operations
2015-09-07 01:15:59 +02:00
Michaël Lemaire
0cf8b0fcee
Fixed opengl humidity rendering
2015-08-26 00:40:10 +02:00
Michaël Lemaire
c450774995
Applied atmosphere humidity to opengl renderer
2015-08-25 23:33:47 +02:00
Michaël Lemaire
98f0708d3e
Fixed OpenGL rendering ratio being discarded on camera move
2015-08-25 00:52:33 +02:00
Michaël Lemaire
c199bef7f2
Added /atmosphere/humidity control
2015-08-24 01:19:19 +02:00
Michaël Lemaire
d6233c70f0
Fixed small memory leaks
2015-08-23 22:44:45 +02:00
Michaël Lemaire
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
Michaël Lemaire
e8d91e30ac
Partially worked around atmosphere artifacts using an offset to ground
2015-08-21 01:19:55 +02:00
Michaël Lemaire
28c9c08d74
Added water rendering toggle in opengl
2015-08-21 00:25:34 +02:00
Michaël Lemaire
f19433457e
More detailed terrain tessellation in opengl renderer
2015-08-20 23:07:09 +02:00
Michaël Lemaire
87acc42041
Experimental scenery generate/save/load from UI
2015-08-19 20:06:47 +02:00
Michaël Lemaire
3599c3aecf
Fixed clouds layers being deleted in scenery by opengl renderer
2015-08-19 19:28:36 +02:00
Michaël Lemaire
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
Michaël Lemaire
100ee0eec1
Fixed underwater terrain detection in opengl renderer
2015-08-19 17:22:14 +02:00
Michaël Lemaire
9a177352ba
Fixed OpenGL camera management
2015-08-18 22:47:18 +02:00
Michaël Lemaire
56dae1e38e
Don't copy scenery in the renderer
2015-08-18 22:29:18 +02:00
Michaël Lemaire
db0be5204f
Switched /atmosphere/daytime to new definition system
2015-08-18 20:31:11 +02:00
Michaël Lemaire
e96fdd9721
Added pause of opengl renderer while rendering picture
2015-08-18 19:12:54 +02:00
Michaël Lemaire
8fa0d8af29
Added DefinitionWatcher system
...
Also switched to the new definition system for /terrain/water_height
2015-08-17 22:55:30 +02:00
Michaël Lemaire
d65bc18342
Fixed compiler warnings
2015-08-13 23:59:27 +02:00
Michaël Lemaire
46e9e73793
Refactored logging system using iostream
2015-08-13 00:33:16 +02:00
Michaël Lemaire
a8ae50df94
Removed unused preview renderers
2015-08-12 22:53:54 +02:00
Michaël Lemaire
44c03e46a9
Tweaked opengl terrain tessellation to speed up rendering
2015-08-12 17:26:17 +02:00
Michaël Lemaire
fc15f7d9b8
Added ground texture resetting while changing time of day
2015-07-26 18:30:30 +02:00
Michaël Lemaire
261eb5a674
opengl: Replaced temp lighting with sun transmission lighting
2014-11-21 11:40:47 +01:00
Michaël Lemaire
f7715b612e
Changed some old int-bools to true booleans
2014-11-21 09:45:19 +01:00
Michaël Lemaire
57b90af132
Added progressive camera change to opengl view
2014-09-18 17:38:37 +02:00
Michaël Lemaire
06a8227de3
Added quick render to QtQuick UI
2014-09-09 17:56:52 +02:00
Michaël Lemaire
d0a5f19cc5
Added daytime control to QtQuick UI
2014-08-28 19:46:06 +02:00
Michaël Lemaire
d909ff380f
Fixed opengl drawing in qtquick window
2014-08-27 18:19:48 +02:00
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