mirror of
https://github.com/TombEngine/TombEngine.git
synced 2025-04-28 15:57:59 +03:00
Renderer refactor (#1287)
* Fixed vertex effects for statics * WIP implementing SMAA antialiasing * Fixed double drawing of additive faces * SMAA working, need to tune it * Cleaned SMAA code, ready for test * Formatting * Renderer cleaning Tier 1 * Renamed Renderer11 to Renderer; Forced DX11 hardware support; Removed m_ from private fields in Renderer class; Refactored render targets: optional depth buffer creation; Back buffer now is a RenderTarget2D; * Converting constexpr and defines to enum classes * Converting enum to enum classes, tier 2; * Converting constexpr to enum classes, tier 3 * Cleaned enums and constants; Renamed some files; * Fixed shaders; Renamed AlphaTestModes; * Cleaned shaders directory; Reverted hardware version to DX10.1 (we'll upgrade it again in the next releases); * Renamed private fields; Refactored quad vertex buffer for sprites; Refactored HUD renderer structure; Minor fixes; * Deleted some files * Removed reference to RendererQuad.h * New renderer transparency, for rooms now * Continue work * Implemented WOIT for alpha blending; Started renderer refactoring; * Removed redundant DirectX api calls * Added G-Buffer with normals and depth * Refactored and optimized particle enemies (rats, bats, locusts, beetles); Extended G-Buffer to effects, rats, bats, locusts, beetles, gunshells, debris; Extended animated textures sequence to 256; Fixed normal mapping for items and statics; * Removed WOIT code; Removed write to depth map in opaque pass (it's already done in depth pre-pass); Cleaned debris rendering code; * Removed legacy render targets; Added dual paraboloid mapping for ambient light (to finish the light shader): Minor cleanups; * Implement additive debug triangles * Unhardcode value * Finished room ambient code, commented for now (need to write a gaussian filter); * Fixed wrong constant buffer slot in SMAA * Renamed draw effects functions; Moved prepare sprites function before the draw code; Restored additive drawing; Restored alpha blend faces collect; * Enhance visual debug object API * Partially restored sprites drawing * Rename local variables * Improve spheres * Update names * Rename function * Remove unneeded parameter * Formatting * Cleaned and optimized drawing of opaque/additive sprites * Removed legacy alpha blend code; Added drawing of alpha blended faces for rooms; * Completed drawing of non commutative objects; FIxed compilation; Removed old files; * Refactored debug statistics for renderer * Fixed FPS calculation * Removed not used render targets and shaders * Added base post-process framework; Added monochrome and sepia effects; * SSAO WIP * SSAO almost working, needs tuning; Changes to G-Buffer; * Removed .cpp files in Graphics directory and moved constructors to headers; Templatized VertexBuffer class; New post-process system work in progress; New blur stage for SSAO; * SSAO at 1/4 resolution * Removed FinalPass.fx and moved pixel shader to PostProcess.fx; Added color to PostProcessVertex; Rewritten the post-process step using new system; Tweaked some variables for SSAO; Fixed drawing of render targets debug thumbnails; * Rewritten antialiasing techniques with new post-process system; Made depth target optional when creating render targets using UNKNOWN DXGI format; * Fix for empty vertex and index buffers * Encode normals to RGBA8 render target; Fixed samplers of depth texture; * Removed legacy hairs shader * Restored SSAO at fuill res for now; Fixed shaders structs; * Optimized G-Buffer shaders for speed and avoid DX log spam; Renamed updateData to UpdateData in constant buffers; * Bilateral gaussian filter for SSAO * Fixed wrong enum * Cleaning constant buffers tier 1 * Added SSAO setting * Fixed shaders * Fixed shaders * Update SystemStrings.lua * Refactored initialization code; Added read and write of ambient occlusion in Windows registry; Refactored shaders; Added LUA API for setting color scheme; Removed some old variables; * Added effect strength to post-process framework * Some shaders cleaning; Don't calculate SSAO if disabled; * Restored wireframe mode * Revert "Merge branch 'develop' into renderer_refactor" This reverts commit4706f46982
, reversing changes made tobd413d00b2
. * Add negative postprocess effect * Update PostProcess.fx * Removed some DX log spam in SMAA shaders; Fixed crash while drawing alpha blended faces from static objects; * Fixed alpha blended faces drawing double sided for items and statics * Fixed flickering of alpha blended faces of rooms * Fixed gunflashes * Revert "Revert "Merge branch 'develop' into renderer_refactor"" This reverts commit536c555b2d
. * Fixed shadow mapping for point lights * Fixed bad merge in speedometer * Fix display pickup crash * Fix SSAO toggle with left key * Refactoring postprocess effect workflow - Added exclusion mode - Separated effect mode and strength to different functions - Reset postprocess on level start - Preserve postprocess on savegame reload - Enum and function renames to maintain consistency * Fix some comments * Fix display pickup drawing * Rename * Fix for lights not affecting big static objects * Fixed antialiasing for pickup objects and for inventory scene * Fixed ghost polygons bug * Fixed SSAO on surfaces with no or invalid normals * Fix merge * Bypass postprocessing if effect strength is set to 0 * Update SystemStrings.lua * Update Changes.txt * Update Changes.txt * Turn on SSAO and target highlighter by default * Remove duplicated changelog entries * Implement LARA_START_POS object handling * Update lara_initialise.cpp * Update Changes.txt * Update Changes.txt * Fixed double sided alpha blend faces again * Added things to changes.txt * Update Changes.txt * Don't use LARA_START_POSes with OCB 0 * Fixed 3D sprites like footprints * Fixed glow for statics; Fixed world position for items; * Per-triangle sorting alpha blend * Fixed missing last polygons in alpha blending * Code cleaning * Added alpha blending to rats, bats, locusts, scarabs * Restored fast alpha blend * Fixed AA in title level * Improved light collector; Added code for disable statics instancing if needed for debug; * Fixed rare wrong caustics textures sizes --------- Co-authored-by: MontyTRC89 <montyhammet@hotmail.it> Co-authored-by: Sezz <sezzary@outlook.com> Co-authored-by: Stranger1992 <84292688+Stranger1992@users.noreply.github.com> Co-authored-by: Lwmte <3331699+Lwmte@users.noreply.github.com>
This commit is contained in:
parent
e6c92decf3
commit
b63cf527bc
264 changed files with 28378 additions and 9026 deletions
|
@ -47,6 +47,7 @@ local strings =
|
|||
actions_weapon_8 = { "Weapon 8" },
|
||||
actions_weapon_9 = { "Weapon 9" },
|
||||
all = { "All" },
|
||||
ambient_occlusion = { "Ambient Occlusion" },
|
||||
ammo_used = { "Ammo Used" },
|
||||
antialiasing = { "Antialiasing" },
|
||||
apply = { "Apply" },
|
||||
|
@ -115,7 +116,7 @@ local strings =
|
|||
waiting_for_input = { "Waiting For Input" },
|
||||
window_title = { "TombEngine" },
|
||||
windowed = { "Windowed" },
|
||||
unlimited = { "Unlimited %s" },
|
||||
unlimited = { "Unlimited %s" }
|
||||
}
|
||||
|
||||
TEN.Flow.SetStrings(strings)
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue