Commit Graph

9836 Commits

Author SHA1 Message Date
Lasse Öörni
5503eb1978 Fixed GLSL bloom. 2011-12-28 02:06:08 +00:00
Lasse Öörni
a1c70a3476 Added bloom post-process effect.
Added global shader parameters to PostProcess.
Added possibility to specify texture units by number instead of name in materials and postprocesses.
2011-12-28 01:43:48 +00:00
Lasse Öörni
110a50ac74 Fixed OpenGL build. 2011-12-27 13:01:52 +00:00
Lasse Öörni
c7833616c7 Added missing files. 2011-12-27 12:57:58 +00:00
Lasse Öörni
9fc3d48c12 Changed Viewport to be a reference-counted object.
Changed the Viewport API to allow easier manipulation of the post-process chain.
Added PostProcess::Clone().
2011-12-27 12:57:03 +00:00
Lasse Öörni
5aa1a38a98 Added documentation for post-processing. 2011-12-26 23:48:56 +00:00
Lasse Öörni
bf8d7a53ca Fixed missing framebuffer blit in OpenGL mode when postprocesses exist but are disabled. 2011-12-26 16:43:01 +00:00
Lasse Öörni
f437a1ec04 Implemented OpenGL multisampled backbuffer resolve.
Fixed OpenGL greyscale shader.
2011-12-26 14:50:36 +00:00
Lasse Öörni
5541fc9d87 Resolve multisampled backbuffer for postprocessing. Not yet implemented on OpenGL. 2011-12-26 13:54:45 +00:00
Lasse Öörni
e5becbf392 Fixed OpenGL build. 2011-12-26 12:15:18 +00:00
Lasse Öörni
d76c21c4f2 Fixed postprocess rendertarget allocation divisor mode to use the viewport size, not the whole rendertarget.
Refactored Material to not store textures in a Vector, as the amount of texture units is fixed.
2011-12-26 02:34:28 +00:00
Lasse Öörni
55ce257a9c Initial postprocessing implementation. Reimplemented the FXAA edge filter using it. 2011-12-26 01:07:37 +00:00
Lasse Öörni
8968ce2609 Clamp light color to positive, as the result of negative color is erratic and depends on blend mode.
Exclude lights with zero intensity from rendering.
2011-12-25 00:47:05 +00:00
Lasse Öörni
d220b3aa89 Fixed NinjaSnowWar lightflash objects remaining in the scene indefinitely. 2011-12-25 00:34:56 +00:00
Lasse Öörni
cee327dfb2 Fixed GCC build. 2011-12-24 22:16:15 +00:00
Lasse Öörni
1b82b726bf Further optimization of enum attribute load. 2011-12-24 20:32:03 +00:00
Lasse Öörni
56b36f4ca2 Optimization to Serializable XML load & save. 2011-12-24 20:29:44 +00:00
Lasse Öörni
510c606b3d Removed the redundant GetString() functions from XMLElement. 2011-12-24 20:04:52 +00:00
Lasse Öörni
95a8c8bfa7 Added overloads to Variant & XMLElement that take char pointers. 2011-12-24 16:48:49 +00:00
Lasse Öörni
4b0b227898 Code cleanup. Reverted the more extreme XML loading optimizations for readability. 2011-12-24 13:28:03 +00:00
Lasse Öörni
3a319a2231 Optimized parsing of numbers from strings. 2011-12-24 03:04:35 +00:00
Lasse Öörni
762085c443 Updated script API. 2011-12-24 00:25:02 +00:00
Lasse Öörni
ab35cefde9 Use static strings for often needed element & attribute names in XML serialization to reduce redundant string object construction and dynamic memory allocation. 2011-12-23 23:19:38 +00:00
Lasse Öörni
99f9d6c18a Fixed suboptimal performance of file checksum calculation. 2011-12-23 23:01:09 +00:00
Lasse Öörni
92d2894866 Fixed not assigning the filename & checksum after XML scene load. 2011-12-23 22:31:47 +00:00
Lasse Öörni
5c27c0f69f Changed to use pugixml instead of TinyXML.
Changed the XMLElement::RemoveChild() interface.
Removed the restriction that XML documents can only be saved to files.
Cleaned up CMakeLists files.
2011-12-23 21:46:49 +00:00
Lasse Öörni
9f4d5d0410 Updated to newest AngelScript SVN version. 2011-12-23 14:49:34 +00:00
Lasse Öörni
4c581e39f3 Modified Profiler to output milliseconds also for total accumulated data.
Added profiling blocks to scene loading & object instantiation.
Optimized Serializable XML loading to not contain n^2 complexity if attributes are found in order.
2011-12-23 13:25:44 +00:00
Lasse Öörni
30430d24ad Fixed Node::Clone() to respect the local mode of child nodes & components.
Added convenience functions for saving & instantiating nodes directly from a XMLFile.
Added the Scenes & Objects directories to GetPreferredResourceDir() check.
2011-12-23 11:45:20 +00:00
Lasse Öörni
86608f6ba5 Changed PostProcess class to not allocate rendertargets beforehand. 2011-12-23 00:35:42 +00:00
Lasse Öörni
0f10116666 Attribute renames. 2011-12-22 23:01:15 +00:00
Lasse Öörni
b0831fcab3 Fixed bug in editor where bone hierarchy would appear twice in the scene window if loading an object with bones.
Fixed object instantiation in local mode.
Added reset position/rotation/scale options to editor's Edit menu.
2011-12-22 22:32:57 +00:00
Lasse Öörni
99444ef15d Fixed node & component IDs in the NinjaSnowWar scene. 2011-12-22 21:25:02 +00:00
Lasse Öörni
6845f056a5 Refactored NinjaSnowWar example to load the scene and objects from files instead of creating them programmatically.
Fixed crash in ParticleEmitter.
Fixed network client trying to load scene file directly instead of going through the resource system.
Fixed AnimatedModel to create bones manually if they are missing after a scene or object load.
Changed TestScene & TestSceneOld to write the scene into the Scenes subdirectory.
2011-12-22 21:18:39 +00:00
Lasse Öörni
1f45d256f4 Time-based removal of unused occlusion and screen buffers.
Renamed RenderBuffer to ScreenBuffer to not clash with OpenGL terminology.
2011-12-21 11:54:49 +00:00
Lasse Öörni
907c1670e3 Removed the G-buffer size restriction. A G-buffer matching the dimensions of the rendertarget will be allocated on demand. 2011-12-21 09:01:13 +00:00
Lasse Öörni
97f1fbd7e1 Added relative scale flag to ParticleEmitter XML description file format.
Fixed ParticleEmitter documentation.
2011-12-20 23:42:47 +00:00
Lasse Öörni
e47d9ab6e7 More attribute fixes.
Fixed different size of "Pick" and "Open" buttons in the editor.
2011-12-20 23:37:20 +00:00
Lasse Öörni
75beda5f3a Removed the "unculled drawable" mechanism. Instead added occludee-flag to Drawable.
Added missing attributes to ParticleEmitter.
2011-12-20 23:25:22 +00:00
Lasse Öörni
3e2f8e72c8 Comment cleanup. 2011-12-20 23:01:05 +00:00
Lasse Öörni
2b553167b9 Fixed OpenGL rendering. 2011-12-20 22:51:39 +00:00
Lasse Öörni
75096fe6f9 Refactored screen-size rendertarget allocation in preparation for postprocessing.
Removed the "size 0,0 follows window size" mechanism from Texture2D.
2011-12-20 22:24:09 +00:00
Lasse Öörni
cc97e7650e On Direct3D9, return the INTZ format from GetDepthStencilFormat() if supported. 2011-12-20 08:38:05 +00:00
Lasse Öörni
d449b946bd Additions to the PostProcess API.
Exposed PostProcess to script.
Code cleanup.
2011-12-19 23:44:28 +00:00
Lasse Öörni
9ce5d0b836 Added initial PostProcess class. Not yet used and does not render anything yet. 2011-12-19 21:57:56 +00:00
Lasse Öörni
194e0f567c Fixed shader parameter overwrite with non-shadowed spot lights.
Do not draw the light stencil volume in forward rendering if no batches need it.
2011-12-19 07:57:21 +00:00
Lasse Öörni
80345e3e30 Shader parameter code cleanup.
Slight optimization to defining polyhedrons from a bounding box or a frustum.
2011-12-18 23:28:18 +00:00
Lasse Öörni
7b293186cf Fixed point light shader parameter overwrite.
To simplify code, assume that HLSL parameter overlap always occurs.
2011-12-18 22:09:29 +00:00
Lasse Öörni
c77dc68bc8 Doxygen formatting fix. 2011-12-18 18:02:43 +00:00
Lasse Öörni
a341b9ea4f Cleaned up Menu code.
Added Node::Clone().
2011-12-18 17:45:11 +00:00