userSam Pavloviccancel
reposboxcancel

1,728 Commits over 1,491 Days - 0.05cph!

3 Years Ago
Fix "bloomy" depth of field
3 Years Ago
Bind hammer properties to watersceneobject Add Render.IsRenderingMainView to check if current view is the main one, and not a monitor rendertarget
3 Years Ago
Add RemoveFlags to sceneview Move ripple texture data to a struct so we can have a cascade of them easily, fix clamping of ripple simulation position around borders Add water properties toggleable on hammer Floor view position so that sampling never gets fractional
3 Years Ago
Use SceneViewFlags_t instead of uint32 for flags SceneViewFlags in managed, bind ISceneView::GetFlags
3 Years Ago
Initial work on foliage vertex data generator Add FoliageVertexSwayGenerator node to editor
3 Years Ago
Disable Valve's HIGH_QUALITY_SHADOWS, saves us a shader combo too
3 Years Ago
Give 1px offset on reflections
3 Years Ago
Disable reflections when we run out of memory Fix 1px border in high quality reflections, fix hq reflections being offset when using non-dev console
3 Years Ago
Add test property to enable dynamic ambient occlusion on dynamic objects, add check if view is rendering on main view Remove silly assert on shapemanager Add monitor view flag to SceneViewFlags_t Fix assertion and rendering issues on tools with reflections
3 Years Ago
use full res reflection buffer & depth if rendering in sfm Updated objects for blendable shader with SFM fixes
3 Years Ago
Squashed commit of what was on sdf-reflection-optimizations Get new ShapeBuffer API on Compute Buffer again, simplify data structure Clean up and simplify Shapebuffer struct, rename remainings of SdfShape to just Shape Fix flickering with reflections, refactoring, cleanup, use PVS for Shapes again, use spheres for AABB check Fix typo on blendable Bkebdabke & high quality reflection shader objects, invert alpha channel, halve shape bounding sphere Allow high quality reflections to be composed on subviews
3 Years Ago
Fix typo on blendable Bkebdabke & high quality reflection shader objects, invert alpha channel, halve shape bounding sphere
3 Years Ago
Squashed commit of what was on sdf-reflection-optimizations Get new ShapeBuffer API on Compute Buffer again, simplify data structure Clean up and simplify Shapebuffer struct, rename remainings of SdfShape to just Shape Fix flickering with reflections, refactoring, cleanup, use PVS for Shapes again, use spheres for AABB check
3 Years Ago
Reimplement push shape data to buffer Flush data after encoding it rather than on frame start, header cleanup
3 Years Ago
Support colored input for reflections
3 Years Ago
Disable adding proxy instance shape to sdf shape list until merge shape optimizations to master
3 Years Ago
Upload shape buffer data to the GPU with any arbitrary size beyond 4KB Bind shape buffer data to rendering pipeline and give support for multipass if we need it
3 Years Ago
Fix light bounces being black on multiblend materials
3 Years Ago
Rework how we encode shape data away from constant buffers, cleanup, add shape manager
3 Years Ago
Be more conservative on quality-related optimizations now that we have a good enough speedup on reflections
3 Years Ago
Add Reflection as a supported rendermode in gameinfo.gi Add ToMaterialMultiblend helper Add multiblend to high_quality_reflections shader Composite reflections with new multipass reflection buffer rather than tracing on the shader itself, fix stuff on the pipeline
3 Years Ago
Render reflections in quarter res reflection layer, pass it to pipeline
3 Years Ago
Add new sceneobject flags and flag objects to be rendered in reflection buffer
3 Years Ago
Better fix for AMD driver bug on DoF, wrap around problematic instruction
3 Years Ago
Initial SDF tracing optimizations until multipass rewrite Fix DoF on AMD
3 Years Ago
Do sanity check with maximum number of instances too
3 Years Ago
Fix black boxes appearing on instanced info for SDF shapes
3 Years Ago
Fix system crash while rendering water due to AMD drivers
3 Years Ago
Shaders with clipplane support
3 Years Ago
Squashed commit of the following: commit 217109a5adba3c34c692381e9eca132d95e3f7ea Author: Sam Pavlovic <sam@volvosoftware.com> Date: Fri Dec 31 15:52:10 2021 -0300 Refactor shader part of sdf reflections to use batched constant buffer commit 6c2e9f91c6eb865a70dd9f4c3f7aa6d26f3cbdd6 Author: Sam Pavlovic <sam@volvosoftware.com> Date: Fri Dec 31 15:50:25 2021 -0300 Fix SDF reflections being rendered incorrect with instanced meshes, fix crash when out of memory pool commit ca6cd533ced39f51d935953ee721f6771d4b1f28 Author: Sam Pavlovic <sam@volvosoftware.com> Date: Tue Dec 21 17:26:22 2021 -0300 Iterate on AOProxy batching commit 9c5e6b102493d6a67e3302a1276675da4063f92e Author: Sam Pavlovic <sam@volvosoftware.com> Date: Wed Dec 15 15:38:26 2021 -0300 Simplify citizen ao proxies commit 3df5dde99ab9e7eb8b3670340dff448e4c890673 Merge: f352744a4 88e59e22a Author: Sam Pavlovic <sam@volvosoftware.com> Date: Sun Dec 12 02:03:21 2021 -0300 Merge branch 'master' into sdfobjectreflections commit f352744a45a5d70d6606c8796881ef97c6f8b4b3 Author: Sam Pavlovic <sam@volvosoftware.com> Date: Wed Dec 1 18:36:06 2021 -0300 SDF shape batcher commit 6dbb4b1abdbfa6f75c00ae70a65b29a3bb576271 Author: Sam Pavlovic <sam@volvosoftware.com> Date: Wed Dec 1 13:51:46 2021 -0300 Initial commit for sdf reflections Shader objects for blendable with high quality reflections Add high quality reflections as a combo in blendable, make it a static combo High quality reflections on glossy concrete https://i.imgur.com/NemzZof.png
3 Years Ago
Fix SDF reflections being rendered incorrect with instanced meshes, fix crash when out of memory pool Refactor shader part of sdf reflections to use batched constant buffer
3 Years Ago
Iterate on AOProxy batching
3 Years Ago
▉▉▊██▊▆ ▇▉▆▆▅▍▄▊▅▅▄ ▇▆▊▍▍▇▆▊▅▉▋ -> ▆▉▇▍▇▅▊, ▌█▇▍▅ ▍▄▅▆ █▄▇▅▅▄█▇▊▆. ▉▊▇▆▋▉ ▋▊▆▋ ▍▅▉▌▄▆▊ ▋█ ▅▋▌ ▌▅▌ ▊▋▇ ▉▆▄▍▇ ▄▉▍▉▆▉▇▇▆▌ ▇▆ ▆▉▉ ▅▌▇▋▌ ▉▉▋▋▅ ▇▅▌▇▅▄ ▋▍▌█▆▄▋▇▆▄▋█▄ █▍▉▄▅ ▆▊▌ ▆▅▋▉ ▌▆▇ ▍▇▉▍▅▋▊ ▆█▄ ▇▄▅▍█▋▌▄▊▆▆ ▋▄▊▅█▅█ ▌▅▍▇▌▇ █▍▉▌▆▇ ▌▊▅▄▌▅█▍ ▌▇▍█▆ ▍▅▅ ▆▌▌▋▉ ▅▇ ▇▅▄▆▌█▉▆▄ ▌▆█ ▉▊▄▌▍▍ ▆▊▉ ▆▉▄▌▅ ▇▊▊▍▉▋▊▇▋▍▋ ▍▊█▆ ▄▌▊ ▍█▊█▅▄▌▋▇▉▌▅▊ ▍▇▋▅ ▍▊ ▄▆▉▌▆▌ ▅▄▍▇ ▌▇█▇ ▌▄█ ▉▍ █▊▅▌ ▇▄█▊▇ ▌▊▍▆ ▇█▌▇█▊█▉▄ ▍▌ █▉▅▇ ▋▋▍▍▅▆█▄, ▌█▅▋▋ ▆▌▆▇ █▉▄▄█ ▉▊▋▅ ▇█▊▆ ▇▌▍▅▌▊▍▋▋▄ ▌█▍▍▆▍▊▇ ▆▋▉▄ ▍_▄▇▇▆_▆▅▄▌▄█▊_▄▇▌▉▇▆▇▊▊▉▆ ▉█▉█▋█▍ ▅▌▊▇ ▍▌▋▉█▊▉▊▅▋▄▇▌▍▅▄▄▄█▍▇ ▇▌ ▋▍▊▌▇▊▌▌▉▍▊ ▇▄▌▋ ▌▊▄▍_██▉▅▊ █▊ ▇▍▅█▋, ▄▉▍▄ ▊▋▌▅▄▆▍ █▇▆▉ ▅▆▆▆▋▌▇ ▍█▆▋_ ▍▇▋▆▍▋ ▅▆▊▋ ▄▋▅▄▌▍▌▆ ▉▄▋█▍▉▅▊▍ ▊▍ ▊ ▊▉▌▌▌█ █▌▆▅▇▅▉▋ ▄█▅▅ ▌▍█▋▍▅ ▄██▅▅▆▋█ ▆▄ ▅▉▍▆▅█ █▄▍▇▊▊▍▅█▊▉ ▋▌▄▅ ▍▊ ▊▌▇▄▆▋▄▇▍▌█▊▉▉▍▍ ███▋▉▉▇ █▇▋▉▋▄ ▉▆▌▅▍▇█▌, █▆▆ ▍▍▋▋██▍▅ ▉▋█▊, ▊▅▄▅█▍▋▉▆ ▆▇▇▊▉▉▊▅ ▉▅▄▆▅▌ ▊▌▊▄▌▋▇▅▆▅ ▊▆ ▄▌▆▍▌▋▊ ▄▊▉▇▄ ▌▍▇▍▄▊▇▇ ▉▆█▇▌▌▌ ▋▌▄▄▆▄▇▉▋▍▉ ▆▇ ▉▄▆▄█▉▅ ▍█ █▄▊▋▆ ▊▋█ ▍▅▄▌▌ ▆▉▉▄▄█▇▉ ▄▉▇▄▌█▄▇, ▌▆▋ ▌▇█▄ ██▌▋▋▆ ▄▇▆█ ▋▌▊▉▇▉▊▉▌█ ▉▇▊ ▇▆▊▄▄▍ ▆▍█ ▌▉▄▊▅ ▋▉▇▍▅▄▊▄▉█ ▌█ ▊▅▆█▍█▅▋█ █▅▅▍ █▄█▆▄▄ █▋▇▌▍▉█ ▇▆▄ ▇▊▆▆▊ ▆▅▊▄▌▄ ▍▍▋▆█ ▅▄▊▄▅ ▌█▇▇▊▆ ▆▇▍▉▅▌▋▅▌▍▍_▇▆.▌▋▆ ▆▍▉▌ ▊▉▉ ██▊▆▌█ ▅▌▌▍▍▌▇▄ ▆▍-▄▅▉█▉▅▊█-▅█: ▉▆█▋▌ <▊▋▋█▅█▊▌+▊▊▄▅▇▇▄▇▅@▄▍▉▊▅.▄▍▇▋▆▄█.▍▍█▄▄▇.▅▉▊> ▅▉▇ ▇▍▌ █▄▆▅▅▄ █▆█▆▆█▊▌ ▅█ ▅▊█▋▋ ▊▄▇ ▍▌-▌▉▍█▆▇▅▆-█▇: █▅▍▇█ <▋▄▌▌▌▉▋▉+▋█▊▌▆▅▌▍▍@▅▆▆▍▇.▍▍▍▇▇▇▌.▍▄▋▄▆▄.▉▅█> ▅▇▄▍▅▄ ▉█▍▅ ▉▇ █▍▊▅▉.▇▄▌▍▉▅ █▊-▋▇▍▌▍▅▇▌-█▄: ▍▆▍▅▍ <▇█▇▆▋█▉▄+▄▌▊▊█▆▉▊▅@▉▆█▊▊.▉▍▄▆▉▍▍.▋▍▊▆▅▉.█▅▌> ▋▆▆▇▍▍ ▆▉▌▉_▍▇▋▊▊▊▇▋▍▇▆█▍▉ ▄▆▍▄▇▇▋▅ █▇▌▄▆ ▆▋▊▋ ██▍▄▉▄ ▇▄▊▋▋▉▌, ▊▆▆▊ ▇▊▄▆▅ █▋ ▋▍▇▋▉▇▄▄▆▊▋▍ ▍██▆▊▄, ▋▉▍▊ ▊▋▉▌▊▍ ▄▉█▇▄▆▇▊▊▉ █▆▋▋▆▅▌ ▆▆▅▌██▅█▌ ▋▅▆▊▅▊▋▅▍▋▅█▍▋.▅▌▉▄▉█▌▆██▌▇▊█▅▊▅▆▍▅█▅▇▍▇▌█▊▋▉ ▍█▇█ ▍▄▌▇▊▍▍ ▉▊ ▌ ▋▌▍▇▍ ▆▉▍█▋▇ ▍█▊▋ ▋▄▆█▌▉█ ▍▅█▄▌▋▊▄▅▌█ ▉▅█▌ ▅▊█▍ ▄▍▉▅▍▉ ▆▊▍ ▌▋▅▋▆▇▌ ▋▌▍█▋▇█ ▉█▉▍█▆▌▌ ▉▍▍█▉█▄ █▉ ▊▅▋▅█▋▊▆▌▉▄▆▋▄ ▆▋ █▍▊█ ▊▋▇▄▄▅▅▌▋ ▌█▋█▇▌▉▉ ▇▅▋▌ ▊▉▋▌▉▌ ▍▋ ▋▄██▍ ▌ ▌▌▊▅ ▆▊▌█▄▄ ▇▌▇▆ ▊▅▅▋ ▍▊▍▆▉▅█▆▆▅▄ ▋▄▆█▉▍▋ ▍▆▍▅▍▆▉▊ ▉▋▉▋▄▊▌▊ █▇▍▊▆█▊▍ ▇▊█▆ ▄▄█▋▆▍▆▍/▌▌▊▋▊▍▊▋▋ ▉▄█▌▇ ▋▄▊▇-██▉▄▋▇/▌▇▉█▆▋/▉▅█▍ ▌▊▊ ▅▄▇▋▍▅▌ ▊▄▇ ▋▆▇▅▌█▋ █▌▅▇▍▇▇▆ █▍ ▍▌▍▍ █▅▇█▇▄ ▊▉▌▌▊. ▌▍▌▆▌▉▊ ▊▊▉▄▉▇▆ ▋▄ ▉█▆▌▋▄█ ▆▅▍▋▉█▄▌ ▄▆ ▊▄▇█▄▊▇▇▅▆▇█▉▄▅▊▍▄ ▄▉▍▍ ▋▉▊▄▌.▌▅▆▉▋▄▆ ▋▅▇▊▉▌▌▉ ▉▋▄▋▉ ▍▉▌▉▄.▋█▆▋▇▋▌▍▋▉<▆>() ▍▊▊█▇▇▍ ▆▇▉▆▋█▇ ▄▉▌▉▍ ▆▆▋▉ ▍▉ ▄▄▌▊ ▋▊▄▇▇▉ ▄▇ ▆▆▊ ▊▊▅▉ ▉▋▌▇▇▆▍ ▇▌▆▍▆ ▄▋▌▆▇▅▊▉▌▅.▇▅▌▍▅▉▇▇▊▊▉▄▇ ▌▅▊ ▉█▌▇▆▅▇ ▆▍ ▊▇▍▆█▍ ▊▊█▇_▊█▇▄█▍▉▉▇▋▄▇: ▄▄▊▉▆ ▋▉▌▅▋▉▍ █▆ █▄▅▊▌█ ▍█▉▅▅▇█▇ ▊▊▄▉ ▍▆▇ ▌▊▍▋▍ ▅▉▆▌▍▇ ▊▅▉▉▇▊▍▊█▉ ▉█▇▍▇ ▅▆▉▋▍ ▄▅▌ ▉█▆▍▍▆ ▇▆▊▆▌- ▊▆▋▅ ▆▇▊▇▌ ▌▆▅▉▌▊ '▍▇▊▅▍▇' █▇ ▄▅▅▋ ▍▇▄▆▍▆▉ ▆▅ █▄▇▇▇▊ ▇▄▇▆▊▄ ▇▇▄▊ █▆ █▆▌▋▄▄▊▊▄▌▉▆ ▍▄▊▉▉▆ `▆▋▊▊▅ = ▆▊▌.█▊▊▄▍▊█▍▄▍( ▆▊▄▆▋▋▊█▉▄.▇▉█▌▋▌▇, ▋▊▋▅▉▄, ▅▉▍▍▍▌▌▌.▍▍▊▆( ▌▅▄▍▍▄▊▋▊ ), ▉▍, ▆▌▆▄ );` ▆▋▇ ▇▌▊▊, ▌▊▌▋▊▊▊▅▇▊ ▌▉▍ ▋▆▋▊▋ ▉▋▇ ▊▊▋▄▋▋▉▅▉▉▌ ▉▅▆█▅▅▇▍ ▅▉▅▆█▇▆▇▄ ▍▊▊▆▌ ▆▅▍ ▄▊▍ ▌▄▄▌▄▄ ▍▋█ ▌▊▉▇▉▊▌▉█▆▋██▉▅▌▍▉▊ ▍▅█▄██: ▅▅█▆▆█ ▇▉▍▅ ▇▅▇▋▆█▊ ▉▌ ▍█▇█▍▍ ▄█▇ ▌▆█▉▄▍ ▇██▆▅▌▇▍█ █▌▋▊▋://▇▉▉▍▆.▉▍▋▋▉▇▅▍▄.▊▊▋/▋▄▇▇▋/▍▇▇▍▉▉▍▍/▄▅█▋▍▇▋▉▆▉.▄▉▋ ▍▍▄▍ ▇▆▋▋▄▋ ▆▇▉▉▆▉ ▇▍ ▇ ▌▋█ ▅▋▅ ▅▇▍▆▉█ ▇▌▄▄▇ ▇▄▆▇ ▅▆▍ █▅█▇▋▉ ▍▍▊▊▋▄ █▌ ▇▋▆▌ ▌▉▉▆▍▉ ▉▉▌▆ ▇▊ ▄▋██ ▊▉▋▌ ▊▇▆▉▌▊ ▄▍▉▉▄ ▆▄█▆▋▇ ▆▆▌▋▅▊▋ ▊▍▊▄▉▍▅▌▍█ ▆▉▆▄█ ▆█▉▍▇ ▅▄▊ ▊█▋▄▇▆▍ - ▄█▊▉▍▌▄ ▄█ ▉▇▆▆▊ ▅▋█▇▌▄▇ ▆▆▇ ▉▉▇▄▉ ▋▍▌▉ ▄▇▋▌ ▋▄▊▅█ ▅█▄▍▋▄ '█▋▇▋▉▅' ▉▌ ▆▇▍█ ▉▄█▋▊▉ ▊▆▆ ▇▌▊▇▆▌▍▅ ▋▆▉▋▆▊▋▇ ▅▆█▉ ▉▉█▋▊▄.▅▍▇ ▌▉▇▉▋▄▌▊▇▇: ▆▉▋█▅▇ ▊▆▇▋▇█▆▆▊▋▌█▍▋▅ ▋▄▋ ▍▋▆▅█▊▍▋ ▋▌▅▄▋▄▇ ▇▍▌▋ ▆▄▇ ▆▅▍ ▄▅ █▋▊ ▆ ▉█▄▉▇▅ ▉▋▋▌▉ ▊█▄▊▍.▋▄▉▋▇▍▌▊ ▊█ ▅▆███▍▄ ▊▉▉ ▋▉▍▆█ ▄▍█▉ ▊▌▄▆▅ █▇▆▍▍ ▊▊▇▍ ▌▍▆▇ ▇▇▉▉ ▌▉▅▅▆ ▄▆ ▇▆▍█▅ ▍▊▅▍▆▄▄▋▅ ▊▌▌▇▊ ▄▆▅▋ ▊▄▍▄▍█ ▅▍ ▅▆▍ ▉▊▋▆▆ ▍▆▌▆ ▄▇▇▌ █▅ ▋▆▋▊ ▄▄▅▉▆ █▆▍▋ ▊▌▇ ▌▋▌▉▍ ▅▊ ▅▊▌▇▌▊▆▋▅▊ ▌▋▌▅▉ ▆▍▇▅█▌▄▄ ▉▅█▋▉▉▍▌ ▅▉▉▊▍ ▅▊▆▌▍▊▅ ▆▌▍▄▅▆█▌▅▌ ▊▌▄ ▉▇▆█▍▋▅▅▋▊▅▆█ ▉▅▇▄▆█▅▍▋ ▊▆▇▉▆▄▄▊▇▍ ▋▊▇▋▇ ▌▍▆█▍ - █▆▋▋▊▊▇▉ ▄▊▅▋▄ ▌▋▍▄▇█ ▅▄▅▇▅▉▌▅▇▍ ▆▆▆▊▍ ▆▇█▊▍ - ▉▋▉▉▊▌▍ ▉▉▄█▋ ▉▋▇ ▍▇▍▊▆▌▉▍ ▊▌▇▍▄ ▅▉█▉██▌▇▉▊ ▊▇▉▇▊ ▇█▉▊█ - ▆▍▍▇▌█▅▄ ▋▌▋▇▌▍█▄ ▊▍▇▅▌▍ █▋▇▆▊ ▉▍▊▅▆▊ '█▋▅▊▄▊' ▍▇ ▌▊▊▌ ▆█▊▌▊▋▉▆▉▉▇.▉▅▍▊▋▉▅▅▊█▊ █▅▆▇ ▉▆▇ ▌▄▇ ▋▌▄▋ ▄▊▇▍▉ ▄▅ ▌█▊█ ▄▄ ▆▋▊█▍█▊▄▉ ▊▆▅▇▍▊ ▉▄▋▇▌▍ ▋▍▌▆▄▇ ▉▉ ▊▊▍ ▉▅▄ ▄▇▌▌██ ▊▉ ▍▄▋▆ ▅█▆█▌▅▅▅▉ ▋▌▆▌▄▅█▌▍▆▊▅▌▉▆▅, ▍▌█▆▅▍▋█▌▆▄▆▆ ▋▌ ▇▄▉▇ █▉ ▍█▇▅▊▄ ▌▅▄▇▌▄▆ ▍▆▋▌▇▋▅▌▄▋ ▄▆▊▅ █▆▅▆▆▋▉ ▍▇▄▅█▍▍▆ ▌▍▅▆ ▍▌▉▉▆ ▅▉▇▋▍▊ ▆▍▄▌▇▌▍▄▉▆▋ ▍▌ ▊▋▍▌▅▉▅▌▍▍▊▇▌▋▌▅▋█▋ ▄▊ ▋▅▇▅ ▉█ ▌▍▉▍▆▌▋▌█▆ ▊▅▆▋ ▌▇▍██▉▅▄▌▌▌ ▍▍▅▍▊ ▉▋▊▄▆▍ '▇▄▇▉▅▌' █▌▄▆ ▉▆▌▇▅▍▊▄▆▌ ▄▋▄▇▌ ▉▍▌▋ ▍▉▅█▍▄▍ #▄▍▇ ▆▊▄▌ ▊█▊▇▉█▉▅▊/▋█▍▊▍▄▊▊▌▉ ▅▅▋ ▇▋▌▇▆ ▍▋▊▄▆▍▍ █▍▆▅▇█▅▌▌ █▄▄, █▍▍ ▆▋█▄▌ ▊▌ ▅▌ █▆▅▊▇▄▋▅ ▍▋▉▅▇█ █▅▍▆▌▌ ▋.▌▍.▇▍ -> █.▌▉.▅, ▅▆▉▌▇▊▅ ▆▉█▌▊▌▅▋█▌ ▌▇▍▍ ▍█▄▆▅▊▇▌▋▍ ▆▅▄▋█▍'▇ ▄▋▇▌█▋▄▆▌▊ ▅▌ ▅▉█▊▆▅▋ ▉▊▆▄▌█ ▌▉▊ █▌▇▆█▉▌▊▉▄█▊▄▍ - ▆▄▅▍▉ ▇▋█ ▋▊▊█▋▋ ▋██▊▆▇▌▄ ▇▍ █▉▋▌▄ ▆▋ ▅█▊▍▄ ▋█▆▅ ▍▍▄ ▋▉▍▌▅, ▍▅▊▌▇ ▊▅ ▆▊▅▉▄▊▌▇▉▌▉▍▄ ▋▊▊▄▇▄█▌▍ ▉▇.▉▋▉▍() ▍▊ ▌▋▌▉▋▇▉, ▍▆▉ ▄▉.▉▌▄▍▋▇▆ █▉ █▆▅▆ ▇▅▌▍ ▆▄▍█▍ ▄▋ ▅█▄▇▅ ▄▅▉█▇▇▋ ▆▊▄▆ ▊█ ▄▇ ▉▋▇▇▅▋ ▍ ▍█▄▄ ▊▋▇▋ ▆▆▌▇ ▉▆ ▋▋▍▄▇▉▇▅▌▆▍▌▊▆, █▅▋▅ █▅▅▄ ▇▆▋▍ ▍▌▋ ▍▌ ▅▉ ▅▋ ▍▇▇▌▅'▊ ▌▊▋▅ ▋▅▅ ▇▅▉▊▍ ▇▄▊▇▋▇█ ▉▉ █▌█▌▇▉██ ▋█ ▇▆▉▇█▊▅, ▍▌▌ █▊█▅▆▅ ▄▅▊▊▄█▉ & ▄▇▌ ▇▆▇▊▋▍▇▅▆.▊▌▊▆▋▉▇▊▋▅▋▇▆▊▆█▆▋▄▇( ▍▊█▄▉▆▌▊▆▄▉▇▇▌▉ ) ▆▇▍ ▍▄▊▋▌▍▉ ▉▄▉▅▅█▅▆ ▋▇▍█ ▊▊█▋▋█▊.▉█▄▇ ▄▄▅ ▇▌▍▊▅▌ ▉█▄▅_▆█▄▊█▄ ▉▉▉▋ ▊▆▉▇▍ ▇▅▇ ▅█▋█▅▍▄ ▆▆▄▅▅▍▆▉▆ █▆ ▇ ▄▅▇█▌▉ ▆█▅▇▊▋ ▋▋▅▇▉█▋ ▇▅▊ ▅▌▉▇█.▌█▊▆▍▋▄▄▅▋▄ / ▍▍▌▉▍.▍▊▇█▇▋▍▄▋▊▌ ▅█▄▉▌█▅▇▄ █▄▋▄▊▊▍ ▉▉▉▌ █▊▋▅ ▆▆▍▄ ▄█ ▊█▆▌▍▊▅ ▅▆█▌▉██▌ ▍▆▋▋ ▋▇█▆ ▌█▉▋▌▇ ▊█▅▇ ▉▌▊ █▆▋▄▌█▆ ▄▍▍▅▆▇ ▆▍▆▆ ▆▅ ▅▆, █▇▇ ▍▆▌▊▄▋▅▍▉.▅█▄▍▋▍▍▅▅, ▌█▇ █▉▄▊▆▌▄█▊.█▄▌▇ ▄▊▊ ▊▄▆▋ ▆ ▋▅▌▍▆▉▇▅▍ ▄▉ ▍▄▉▊▋ ▍▌ ▍ ▅▉▍▋█▆▊▊▆ ▇▉ ▄▊ ▊▅ ▋▇▆▋▍▆▊ ▆▋▇█ ▍▇█ ▍▌▋▆▇▊▋▋.▇▇▋▊▌▅▌█▍▍ ▆▌▌▆▉▆▍ ▊█ ▆▆ ▇▍▇ ▆▅ & ▆█ ▋▌▆▄█▍ ▄▌▄▆▇▉ █▆█▉▊ ▉▊ ▋▇ █▇▊▅ █▉ ▄█▇█▊▍▇ ( ▊▅▊▅ █▍▆ ▊▆▊▇▍▌▍ ▍▇▊▋ = ▉▉▅ ) ▆▉▊ ▍ ▍▇▍█ ▊▋ ▊▊▅ ▉▇▍▉▄▋█ ▊▆▊▇▅▊▊▄ ▄▋▊▅█▆▇ ▊▍ ▆█▉▆▆▊▌▊▇▋▇ ▊█▅▊ ▋▄█▄▌▆▌▇▊ ▍▇▌▄▉ ▆▌▆▋▍▆▊▅ ▅█▊▋▋▋▍ ▆█▉▊▄▇ ▇▋▇▋ ▊█▅▌ ▇▌ ▋▋▄▅ / ▌▅▌▉▌▄▊ ▌▄ ▇ ▄▉▄▇ ██▌▆▄▅ ▌▅▌▍▆▌ ▉▆▌▉▍ ▄▊▊ ▅▅▉▄▌ ▄▋ █▋▍▋▅▇ ▋█ ▍▄'▉ ▋▌▇ ▊▇▍▆▍▉▇▄█ █▄ ▌▇▆▆ ▌▌█ ▄█▇▇▌ ▆▄█▋▌▌▉█ ▆▋▇█▌ ▊▋▌▉ ▇█▇▉▋▆▍ ▉ ▅▄▆▄▊ █▍▆█▋▆█, ▋▉▅▌ ▄▋▅▄▋ █▆▄▉▉▅▍ ▄▇ █▌▉▅▊ ▌▇▇ ▊▇▇▅▇ ▌▉ █▋▌▆█ █▄▅▍▌▋▋▅▉▅ ▆▄ ▆▅▆▇ ▍▉▍▆▉ ▋▅▋ ▊▉ ▄▇▉ ▅▋▇'▊ ▉▌█▋▉▇ ▌▅▆▌█▄ ▇▍ ▆▊▅█▅▌▍▍▋ ▍▇▆▆▊▇▉ ▇▇▍▇▊▆ 🤦 ▋▊▇▅▄▅▇▌ ▊▋▇▊ ▋▋█▋▉ █▊▊▄ ▉▇▇▅▆ ▋▊█ ▄▄▄▆▄▍ ▉▄▍▌▌▊▌▆▊ ▍▉▌▊▅▊▋▉▋ ▄▅▅▇▄▄ ▌█ ▊█▉▊▇▇▋▌▌▊▊▉▌ ▄▆▇▊ █▉▇ ▄▉▌▆█-▆▆▌▋▆▄▍▄▇ ▍█▊▄▊-▅▅▌▆▄▅▄▌▄: ▍▋▊▊; ▉█▇▅▉-▇▅▄▅▍▄▊▉▊: ▉█▄▋▊▊▋▇▆▆▆; ▌▄█▇▆-▌▍▉██▉▍▌▌: ▇▍▉▄▅▋▉█; █▉█▍▆-▅▍▌▅▆▅▌▋▆: ▊▊▍▄▄▄▅▆▍; ▉▆▌▇▋-▅▇▄█▊█▉▍▍: ▆▊▌▉▉; ▆▆▌▍▅-▄▆▍▄▅▋▉▇▆: ▉▍▋▇▋▆▊▌▆; ▊▆▇▊▊-▊▊▇▆█▉▄▊▊: ▆▊▆█▆▆▌-▋▅▄▇█▄▉▇; ▄▇▍█▄://▅▊▌█▉.▆▇▌▉▄▋▆▌▆.█▊█/▋█▉▇▍/▄▆▆▆▊▅▍▅/▅▉▉▉-▉▉-▌▌_▍▍-▌▄-▅▅▇▅▉▋▄▊-▉▉▉▍-▊▅▊▊-▅▆▉▆-▌█▌▅▊▇▋▌▌▊▌█-▊▇▌▍▌▅▋▌.▄▆▉ ▊▄▊▍ ▇▍▅ ▋▊▇▊▅▋▆▅ █▆▄▆▌▍ ▊▅▆▇▇▊ ▋▍▉▋▅▉ ▌▆▅▄▇ ▇▌▊ ▌▆▄▍▅▄ ▊▋▊▉▌ ▋█ ▉▍▍▇▉ ▄▇▇▋▅▊▉ ▉▌▄▍ █▌▊█▅▄ █▄ ▇▅▇▍▄ ▇▍▍▇▅ ▇▆▆▊▌▇█▇ ▅▅▇█▉▅ ▊▋ ▅▋▅▇▆ █▉▌▄▇▊ █▇█▅▋▅█ ▉▋▋▌ ▍▇▍▌▍▇ ▋▌▉▅ ▆▆▅▆▋▍▌ ▌▋▇▊█▊ ▄▍ ▊▍▉▆▅▉ ▌▄▇▋▌██▉▅ ▄▅▌█ ▅▅▇▌▍▅ ▉▋ ▄▇ ▅▉▊▌ ▌▇▇▅▊█: ▊█▅'▋ ▉▍▉█▆▉ ▇█▊▆▍▌▇ ▅▉▅▊ ▌▌▊▅ ▅▅▉▊▆, ▌▌▉█▌ ▊▍▉▇▄▊▅██ ▄▋▍█▌▄▍▆▊ ▉▋ ▌▉▉▉ ▇▌▍▌▄ ▋█▍▅▇▆▌ ▌▋▉ ██▇_▇▊█▆ ▋▊ ▉▆ ▉▆▄▊▄▄█▍▍. ▆▊ ▆█▊▊ ▌▋▄ ▊▅▅ ▉▄▄▇ █▆▌▅▅▄▇ ▆▌ ▆▅▌▉_▆▅█▌▋▇▌ ▅▍. ▊▄ ▊█▊▄_█▄▄▆ ▄▇▉▌ ▉▌ ▌▅▇ ▄▉██▍ ▆▌█▊ ▆▋▋▅▅▉, ▉▌█▊█ ▆▋▋▅▍▌ ▆▊▆ ▍▄▌▆ ▉▅▇▅ ▉▋▆ ▌▉▌▌▇, █▌▆ ▄▇▊▇▆'▋ ▄▇ ▌▇█▅▍▅ ▅▋ ▆▌▉ ▊▍▅▇ ▆▊▇ ▉▊▍▍ ▌█▍▄▊▍▆▊▊ ██▌▉ ▌▄ ▊▆▋ █▄▉█▍ ▆▆. ▍▍▇▊▌ ▅█▇▌█▍▅ ▍▉▅▉▉▆. ▄▅ ▅▊█▅▄▅▌ ▆▌▇▇█ ▊▋▋ ▍▌▍ ▋▇▄█▊█▅█▆. ▆▆▉▄▆▍▅▄▆▉ ▅▊▋▆▅ ▉▉▄██ - ▆▌▆▊▉█▊▄ ▋▍▍▄▉▌▊▍ ▆▆▅ ▉▉ ▊██▊▇▍▄▌ ▌▄█▊▄ ▄▇▄▌█▋▇▄▇▆ ▉▅▄▍▊ ▆▆▆▌▍ - ▍▉▇▌▄▆▉▉ ▆▌▍▉█▉ ▋▆▍ █▌ ▇▅▉▇ ▅▌▉▆▍ █▊▊▌ ▉▊▅▉▍▅▌ ▆▆ ▋▌▉▇▍▊█ ▆▇▆▌█▉ ▋▇▅▆▍█▍▉▅ ▉▅ ▅▄▌ █▅▆▋▉▊▄ █▊▌▋▌▍▌ ▋▅█▋█▍▌▋█▋ ▆▇▆▋▊ ▇▇▆▍▋ ▄▅▄█▆▋█▇▋ ▇▉▄ !▉▅▋ ▍▅█▋▄▄▋▋▉▉ ▆▇▇▋▇▉ █▍▅▌▊ ▄▍ ▉_▊▉█▍▅▅▅▌▅▍::▊▅▍▉▌▋▆, ▇█▍▄▇ ▄▊▇▋▄ ▅▇ ▇▅▍▅▌▄▉▉▋ ▉▇▇▇/▆▇▄▅▊▍ ▅█▉▆ ▉▍█▆█▌▊ ▇▅▄█▌▌▋ ▍▄▉▆▅█ ▌▄▉▊▅▋▉▅ ▅▅▍ ▍▋▌▇▆█▌▄▋ ▅▆ ▆ ▇▍█▉▇▆▊█▌▇▅██▇▋ ▅▋▆█▆▄▄▉ ▄▍▇▋ ▉▊▅ ▇▇▉▌▆▋▊▆ ▅▍ ▉▋▅▉▊█▍, ▌▊▊▇█▊▄▅ ▆██▉▄█▄▋▊ ▍▋▌▉▅▄▉ █▅▉▊▇▍ ▍▇██▍▌▄ ▋▍▊▉▋▍▆▆ ▊▅▉█▍█▊▌▉▇ ▋▊ ▅▍▇▅▇▌▇▉, ▄▄▊▉▅ ▊▌▄ ▅▇▌▅▌▆▌▍▄▅▇ █▆ ▉▍▅ ▅▆▌▌ ▉█▅▍ ▊▋▅▉▉ ▍▇▇▉▊▋▆█ ▉▌ ▌▄▇ ▅▅█▌▆▉ ▅█▇▍ ▋▍█▊▅▍▉▅▅ ▆█ ▄ ▌▄▍▊▌▊▊▊ ▇▄ ▋▆▇▄█▋█▊▇▄▉ █▉▉▅▄▄ █ ▍▋▋▌▍ ▄▇ █▍▊ ▊▉▌ ▋▉▋▅▆▇▄▉ ▋▊ █▌███▉▇█▋ ▉▅▊ ▊▆▍▆▆▋▍ ▌▋▍▌▅. ▌▌▋▇▍▊▄▍ ▅▄▇▍█▊ ▌▍▊▆ ▍▍▊▄ ▌█▆ ▍▅▇▉▍▍█ ▄▆ ▉▉▋ ▍█▅▉ ▆█▉▍▄ ▌▉▌▄▅▉▄ = ▌▉▌▄▇▅▍ ▉▊█ ▆▅▌▍▆▄ ▇▆ ▊▋▋█/█▊▆█▆▅▉ ██▋▇▇▅ ▋▋ ▉█▋▉▊▌ ▌▆█▄▄ ▉▉ ▉▌▉▌▆_█▄▅ ▋▌▍▌▍▅▍ █▋▉▌█▆▋▋▍▆ ▅▉▊▇▌ & █▅▉▍ ▍▊▆▉▄ ▊▊▊▌▉ ▋▊▊▊▌▌▊ ▉▆ ▄▇▋▄ ▉▊▅▍▇▌▌ ▇▌▇▍▆ "▇▅▆▉▅▌" ▊▍▅▅▉▉▌▋ ▉▅ ▍▍█▊_▅▉▋▍▍▊▇ - ▋▍ ▆▍▇ ▊█▉▋█▄▄▆ ▋▋▌█▄▉▅ (▉▆▊█▍▌▇) ▅▋▇ ▆▉▉█ ▌▍ ▍ ▅▆▍ █▆▋▋▍▌▅ ▍▇▊▇▌▇█▋▉ ▇▋▄█▇▆▋▇▅██▋▌▌▌▆ ▋▊▋ ▇█▍▉▄▋▇▋▄▄▇▅▄▋ ▇▊▆ ▅▌▉▅██▉█▇▇▄▉▋ ▄▅▋▋▇▄▇▅ ▄▊▍▉ ▋▇▌ ▆█▄▉_▅▊▅▍▄▊▍ ▄█▄▊▇▇▅ ▆▍▆ █▇█▆▇▄▅▅ ▊▉▋▅ ▋▆▍ ▇█ █▅▍ ▅▊ ▅█▍▌▄▇ ▆▉▇█▇▉ ▋▅ ▉▆▋▉▄▌ ▇▄ ▆▍▋ ▌▋▄ ▌▋▅▄▅ ▋▅ ▄▇█'▍ ! ▌▌▄ ▆▆ #▌▅█▋▋ ▅▊▊▍▇▆ ▅▅ ▍▅ ▆▉▆▋▉▆▆█▍ ▍▉▍▇▉▆▍ ▆▋▍▅▉▇▄ ▆▊▅█▅ ▌▉▄▌, ▇▆▋ ▆▊▇▊ ▍▉▋█ ▋▆ ▆ ▆▄▊ ▇▍▇▆▌ ▊▌▉▄▄█ ▌▄▉█▍▊▉▄▌ ▍▇▌▄▍▉▋▍▆▍ █▌███ ▉▋▉█▊ - ▌▋▊▇▆▅▉ ▅▄▌ ▊▋▆▆▋ ▄▄▆▇▇▌ '▍▆▄▊▉▇' ▊▅ ▍▆▄▄ █▄▅▋▉ ▌▋▄▊ ▌▇▇▊▊▆▊ ███ ▆▅▌▌-█▉▋▊▌▌ ▄▄▊▉▊▌▆▊, ▆▉█▊, ▇▅▄▍▊▍▍▅▍▋, ▉▋▌▍▉▅▊▅▋▅, ▌▅▉▌▋, ▌▄▌▄▄▅▌, ▄▉▌▊▋▉, ▌▋▋▊▍▇▉▍, ▊▊▆▄▍▅▋▆, ▋▆▉▆▆▌▌▅▅, ▌▉▊▊▆▅▌▇▅, ▆▄█▅▅, ▆▆▋▆▇, ▉▍▅▄▅▌▌▊▅▉, ▇▄▍▉▉▅▋▍▆▇ ▉█▊ ▌▌▋ ▋▉▄▇▍ █▊█▉▅▋ ▉▉▌█ █▋▌ ▋▆▄▌▊▄ ▉▇▉ ▌▋▅▆ ▇▆▇▄ ▆▉▌▉▌/▇█▄▇█▆▇/▇▍▅▊▌▄▉▊/▍▍▄▋▉▌▋.▋█▌▇ ▆▅▌▅▍▍ ▆▌▌▊ ▌▆▉▆▍▆.▍▊██▆ ▊▊▅ ▇▉▄▍▄▊ ▋▉▉▄ ▍▆█▋▆▋▉▅ ▋▄▄▊█ ▉▊▉▌▄▍▇▅ ▊▉▋▋ ▇▍▇▌▆▌, ▇▋▉▇▋▌ ▆█▋▍.▅▍▉ ▄▋▄ █▇█▋▊▉▅▍▆▊ ▊▍▌▌ ▅▆▉▅▋▍▍▆▌▋▊▉▆▇▍▋ ▍▋▄ ▇█▍▇█▅▋ ▉▊▄ ▄▅▆▊▌▋▌▇ ▇▇▋▅▆▉▋▅▄▆ ▋▍▉ ▋▍▍█▇ ▆▌ ▄▍▄▇▆.▆▋▉█▍█▊▄ ▇▉▇▆▅▅█ ▊▇▄'█ ▌▊█▆▆▆▅█▉▍▇▇: ▇█▌ ▄▋▆ ▋▅▌▅▌▅ ▆▉▊ ▆▆▌▆▋▌▉█▊ ▋▉▆▅▋▍▄▅ ▄▅▄▋ ▇▄▋ █▉▍▊ ▋▋▆ ▄▊▊▌▆▋▋▊ █▋▍▅▇▆: ▍▊▇▍ ▄▋▅ ▄█▌▍▅▅▌ ▅▍▍▋▌█ █▊█▌▊ ▇▇▇▊▆ ▌▅▋▉▉ ▍▉▊▊▍▄▄ ▅▋ ▍▅▊▌█▉▌▆ ▇▌▋▇▅█ ▆▋▇▌▇▅▄ ▋▇▊▇▆▇▆ ▅▌▇▇█▋▍█ ▋█▍▅█ ▉▌▌▋-▆▋▄▇▍▊▆▊▄▊: ▅▌▄▉▅▅▉▅; █▉█▍█ ▉▌▍ ▌▌▆▋█▍█ ▌▄ ▉▆▌▅ ▆▄▋█▄▋▊▋ ▍▋▍▌ ██▇▆▇▆▉▉▍▋ █▇▆▆▆▇ ▅█▊▌▋▍▅█ ▊▉█▌-▅▆▍▅▇▌▄█▅▊: ▋▆▋▇▆▉▊█▅ ▌█▆▊-█▄▄▅█▆▍ ▊▌▌▋▇▊▋▆; ▄▇▅ ▌▆▉▊█ ▅▇▋▊▋://▆▇▊▇▍.▊▉▄▆▋▊▅▅▍.▍█▄/▍▉▋▇▇/▋▊▊▄▅▋▊▍/▋▋▊▅-██-▅▇_█▄-▆▆-▋▊▉▊▄▉▋▄-▅▇▅▍-▇▌▊▍-▋▌▉▌-█▇▍▌▉▍▉▉▆▊▉█-█▅▊▅▅▍▍▉.▄▉▋ ▇▉▋ ▌▉▌▆ ▊▉▉█▌█: ▊▊▅▅▄; ▅▌▉▌▊█: ▆▆█▌▋▌▍▋; ▌▉▊▇▋ ▅▍▋▍▄▍: ▍▄▆▆██▌▌▉▌, ▋▆▉▌▇▉▇▇, █▍▋▉▊▄, ▌▄▇-▇▍▄█▌█ ▌▋▇ ▄▄▄▇-▌▄█▍▄▆▄██▉-▉▇▉▅▆ ▇█ ▅▇▇▅ ▉▍██▍://▋▊▅▍▉.▇▆▄▄▊▅▋▄▉.▄▌▍/▇█▄▆▇/▊▇▍▌▊▊▅▇/▅▍█▅-▉█-▇█_▄▆-▅█-▄▉▆▋▅▋▇▇-▉▉▄█-▊▇▄▋-▄▋▋▉-▍▊▉▆▆▌▄▉▉▉▇▆-▍▌▇▄▄▆▊▌.▇▌▌ ▉▍▄▉▅ █▉▇▇ █▉▉▇▍▄█ #▇▋▋ ▋▄▅▋ █▌▄▍▋▌▅▌▆/▅▌▍-▆▅ ▇▍▅ ▍▅▄▋█▆▍▄▄▋▆ ▅▉▄▋▇ ▅▉▊▄█▌▉ ▅▊▆█ ▉▄▋▆▍▋▊▋▌▅▍ ▄▉▅▌▊ ▄▌▊ ▋▄▄▉▅▊▊▍▊ ▅▉▌▅ ▅▌▇▄-▇█▇▇▌▆▌▆▆█-▅▌▊▆█▇▍▉▇ ██▊▊▆▌▍ ▊▇▇▌▍://▊▋▋▆▊.█▆▌▋▅▇▍▅▉.▄▄▍/▄█▅▊▉/▍▊▋▋▄▉▍▊/▉▍▇▉-█▄-▌▍_▌▌-▊▋-▉▆▄▋▉▋▋▍-▊▆▌▊-▇▅▌▄-▉▌█▋-▍▅▊█▉▉▄▍▅▍▅▉-▉▌▍▊▊▄▆▇.▋▍▍ ▇▄▊▆▇▆ ▋█▄ █▍▌█▊▊▅ ▍▊▋ ▋▋▄▇▅█▆▆█ █▉▅▍▍ ▅▆ ▇▌▇▋▋▇▉▅▄ ▊▄█▍▍ ▌▆▋▍-▆▆▆▋▉▋▄▄▆▍-█▇▍▌-▆█▆: ▇▊▌; ▄▇▅ ▍▆▉▇-▋▆▉▉▇█▍▋▍▄-▊▆▊▊-▋▄▉: ▊▋▊▆; ▅▉▊▉▊://▌▍▌▄▇.▉▍▇▆▋▋█▅▍.▍▅▇/▇▊▄▄▅/▆▇▊▆█▌▅▊/▋▌▄▋-▉▄-▌▌_▊▄-▇▆-█▄▇▅▉▋▋▄-▌▅▍█-▊▋▊▉-█▄▄▄-▆▊▍▍▇▇█▍▆█▋▊-▋▋▋▆▄█▋▋.▅▅▌ ▊▌▉ ▅▌▇▇▇ ▊▄▆▍▋▄ ▇▌▅▇▌ ▋▇█▇▋▌▍█ ▉▄▇▇▌▅ ▌▇▄ ▋▆▉ ▉▌▅▅▊█▌ ▍▅▊▊▉ ▇▇▇▉▆▉ '▌▇▌▍▌▇' ▆▊ ▇▌▍▋ ▇▄▍▌▆▌▆ ▇▋▆▍▍ ▆▍█▌▄ ▉▋▇▅█▍ ▍▊ ▉▄▋▌_▍▅▍▄█'▆ ▉▊▉▅▉▇▌▌▉▇▌ ▋▍▍█▊ ▌▅▉▊▍▅▍▅▊▌██/▋▅▄▌▌▊▌▆█▇▆▄ ▆▊▇▊▋▌▄▌█▇ ▆▋▉▋▇ █▊██▊▌.█▄█▆▄(), ▍▆▅▆▅█.▍▉▇▆() ▋▇▇▌▋ ▊▄█▌▆▇▄▇▇▉▄▍/▉▅▌▉▍▇▋▍▋▋▆▅ ▌▌▍▇▄▊ ▆▅▊▍▆▇▊▉▍▊ ▌▍▋▊ ▅██ █▉▋▌▄▉▌▍▍▋▆▄/██▊▇▋▇▍▇▉▌█▍ ▇▇▅▄▌▍▊▄▇▇ ▉▌▇ ▋▆▉ ▋▍▇▊▇ ▉▉▆▆/▉▍▇▅▅ ▌▉▅▋▉▊█ ▋▅▍▅▆ ▊▄▍▌▍▍▄▇▉▊▉▋.▉▋▌▌▌▆▄▆▌▆▉▍ ▊▉▆▉▅ ▍▌██▅▍█▇.█▉▄▆▌ ▉▆▄▇▆ ▌▌▉▍▌▌▌.▇█▉▍/▅█▋▉▅▊▌.▄▇█▌▇ ▉█▋▍▄▄▊ ▇▍▇▇█▊▊▄▍ ▉▉▋/█▍▇▆/▅▇▋... ▋▍▇▍▄▋ ▍▉▍▉-▅▍▌▇▋▆▄▌▅▇ ▌█ ▉▌▉▋-▋▇▇▆▅▉▊▆▇▋-▍▄▆▉. █▅▋█ ▌▊▋▇-▊▋▇█▍▍▍▆▇█ ▇▆▄▉▅▊█▉ ▆▉▄▄ ▆▍▉▊ ▌▋▊▅-▄▌▍▇▊▊▌▊▊▊ ▇▄▇█-▊▄█▌▍▄▄▆█▅: ▆▊█▇-▍▇▄▅▉▆█ █▇▋ ▌█▌; ▋▍▉▆▄://▋▌▆▉▅.▄▋▊▄▌█▌▄▄.▆█▋/▆▊▅█▅/▄▅▋▋▍█▆▇/▆▌▍▆-▍▉-▄▇_▅▄-█▍-▅▊▍█▊▌▆▇-▍▊▍▄-▉▉▌▅-▌█▄▆-▇▋▉▊▌▌▅▊▇█▅▉-▋▉▍▇▆▆▄▅.▆▍▇ ▉▍▍▊▇ ▋▍▉▊▄▆ '▉▇▅▇▊▌' ▋▉ ▍▉▉█ ▇▄▊█▌ ▊█▍▍██▍ ▊▍▅ ▋▍█▌-██▉▍▉▆▌▉▅█-▋▍▌▄▉, ▉▊▋▆-▄▍▆▅▆▅▍▆▋▋ ▋▍▊ ▉▊▅▍▌ ▅▄▆▄▄▆█▆█ ▊▌ ▅▇█ ▄▊▇ ▍▆▇▆▋▊▄▅ ▌█▉▄█://▅▍▊▋▉.▋▄▄▌▍▊▍▊▇.▇▉▇/▆▌▍▆▋/▌▉▉▇█▆▍▆/▌▍▅▄-█▍-▉▉_▍▇-▊▆-▄▇▋▇▄▆▊▉-█▅▊▅-▆█▄▄-▅▅▇▋-▄▊▅▊▋▊▌▇▄▋▇▉-▇▍▊▉▋▆▇▅.▉█▋ ▊▇▄▋▄ ▍██▌▄▌▆█▆ ▅▉ ▇█▇█▊▌▄▌▆▌▉▇▍ ▋▅▆ ▊▍█▆▋ ▌▌█▊▇█▉ █▋▅ ▇▉▊▍▋▆▄▄ ▌▆▆▉▅▇▄█ ▄▌ ▉▉: `▉▋▍▌-█▉▌▋▇▇▉▇▉▊-▆▋▆▌-█▄▊: ▌▊▄█;` ▇▊▄ ▊▍ ▇▊▌▅ ▊▉ ▊▌█▅▇▆▋ █▊▍▍ ▉▅▆▅▆://▇▉▍▊▅.▍▇▅▍▋▅█▍▍.██▍/▊▅█▇▇/▊▇▅▅▇▉█▅/▍▇▋▅-▆▆-▅▄_▇▋-█▇-▆▊▅▇█▋█▉-▉█▅▋-▍▄▍▊-▉▍▉▋-▋▌▌▋▊▌▊▅▇▍▇█-▍▍▅▄▆▋▋▊.▄▌▉ ▉▆▍▅▆▇██▇ ▅▋▊█-▌▇▊▉▄▇▆▊▅-▋▌▍▌▍█, ▋▆▍▋-▌▆▆▉-▋▊▇▌▌█▍-▆▆▇▋▆▌ & ▄▅▉▋-▊▍█▉▅▆▇▇-▄▊▅▆▄▌ ▅▉▋▍▌://▋▉▇▅▅.█▊▊▅▋▉▊▅█.▍▅▇/▌▍▉█▍/█▋▋▌▍▆█▉/▊▄▅▆-▌▅-▆▌_▆▄-▉▊-▆▊▉▍▄▌▄▋-▌▊▌▇-█▋▅▊-▇▇█▇-▅▉▄█▉▌▉▋▌█▊▍-▄▋▋▋▅▋▋▅.▅▋▋ ▄▆▋▋▅▄▊█▌ ▉▅▉▊▉ ▅█▅▆▆▌▇▄ ▌▇▋▍▇█ ▉▉▇▆▇▌ ▄▅▌▅ █▋▆▄▌ ▇▍▆▅▅▄▇▊ ▍▍▌▇▍█ ▇▄▅'▋ ▅▍▆ ▆ ▍▅▋▉▄▉▄ ▋▉▊▇ ▆███▌▅ █▅▍▇ ▆▉▉▄▊ █▄▇▄▄ ▄▉▅▍▅▇▊ ▄▋▊▆█▅▄ ▋▍ ▍▉▆▉▊ ▋▇▌▊ ▉▆█▇▄▍█▉▊▆ ▊▇█▇▉ ▉█▇▆▅ - ▌▇█'▇ ▋▉█▄█ ▇▇▆▆▇▉ '▄▅▋▋▊▌' ▌▉ ▋▅▊█ ▆▋▍▆▇ ▄▋▋▅ ▋▅▊▉▉▇ ▄▆▍▇ ▄▅▋, █▇▋▊▊ ▇▄▌▋▆▄.▅▆▆█▅▍▆▉ ▉▇▆▄▄▆ ▅█▋ ▇▋ ▋▊ ▆█▇ ▊ ▉▋█▇▋▇▄▌▉ ▇▆▅▊▅▄▅ █▉█▅ ▆▊█ █▍▆▉▍██▌▋▌▌ ▉▆▌▆▋ ▄▆▅▉ ▌▍ ▇▅▅▋▊▆▋▄_▆▇▍▆▍█▉▋.▄█▅▉ ▉▆▋▉ ▋▆▅▌▇▌ ▅▄▊▉▉ ▄▇▆▌ ▅▅▋▊█▊▄ ▌▌ ▆▆▆ ▋▇▇▇▄█▊▍ ▇▄▍▊▇▆▌▉█▌▉ █▋▉▍▇ ▋▉▇▍▋█▇ ▉▅▊▇▊▇▅█▊ ▋▇█▅▆ ▅▇▆▌█ ▇▍▊▋█ + ▅█▍▊▉▄▋▅▍▊▇ █▊ ▌▅▆▇▇▍ ▋█▅▋ ▅▊▆▄▄▇▄█▌ ▇▅▅▆█ █▍▉▍▅▉█▍ ▊▊▇ ▊▅▄ ▉▋▄▄▄▊▋▍▆▄ ▊▋▌▆█▄ █▋▌ ▌▌██▋▆ ▊▆▆▍▉▋█▆▄▌▅ ▇▅ ▅▉▊▉▊ ▉▇▇ ▊▆█▉▅▊▋▇▆▅ ▇▆▋▇▇ █▍ ▋▆▆▉▌▇ ▇▋▇▉▆▅▇▋▌█▍ ▍▄ ▌█▇▄▊ ▌▌▋ ▋▄█▋ ▆▅▉▍▆▄ ▌▌ ▍▅ ▋▌▄█ ▅▌ ▇█▌ ▌█▇▊▉▇▅▉ ▊▄▉▉▋▌ ▋▄▍▌▌▊.▇▄▅▄▊▊▉▍▅.▋▍, █▇'▆▉ ▇▌ █▍ ▉▄▉▅▋█▉ ▄▍▇'█ ▅▄ █▋█▋▆ ▆▄▍▌▆█▍ ▄▄ ▆█▆█▅▉▌ ▇▊▌▍▇, ▊▄▊▉ ▊▋▉▌▄▉ ▌▌▅▊ █▄▋▌ ▅▆▋▇▇ ▉▊▌▆▊▅▅▅▊▋ ▌▊ ▍▇▇ ▉▊█▅▄▋ ▊█▇▉▄▌▉▌▋▋▊▇▋▄▌▋█▌ ▋▍▇▆▄▆▍█▋█ ▆█▌ ▉▇▊▍▆▉▋▊▇▉ ▇▍ ▄▆▆▆▆█▋▆▉█▅▇█▇▄▉▉▄ ▅▉▆ ▍▄▄ ▄▅▊▆▋▆▇▇▍▆ ▄▄ ▊▆ █▍▉▆▆▅▆▆ █▌▉▅▄▆▇▌▊▅ ▅▆ ▅▅▌▉█▆▄ ▋▇▅▇▍▌▇▊ ▆▄▍▊▌▋▌▊▋▊▉▆▄▄▅▊, ▍▍█▄▇▅ ▍▋ ▍▄▉▌▆▉▉▇▊▊▄▌▊█▆▉ ▇█▅▌▍▄ ▄▊▆▉█▄█▆ ▆▅▄▅ ▋▌▆ ▍█ ▆▄▅▉█▍ ▇▍█▊▌▋▌▍▅▌ ▌▄▌▊▋▄▉ ▍▇▇▍▌ ▉▊█▆█▄ ▍▋▋▉▊ ▊▌▊▍█▉ ▉█▅▌▇ ▌▌█▆ ▋▅▉▆▅▄ ▄▉█▋▅ ▊▆▋▄▇▄ '▇█▅▌▄▄' ▅▇▌▍ ▌▍▅▌▊▋▆▇▋▆█▇▉▊▇▅▆▆▌▇ ▊▄█▆█▇▆█ ▊▄▇▍▇▅▆ ▊▆ ▍▉▌▄█▇▅
3 Years Ago
Fix bottled liquid rendering
3 Years Ago
Fix Water shader not appearing correctly in tools CalculateWorldSpacePositionMultiview is a shared function now
3 Years Ago
Build shader stuff with VS2012
3 Years Ago
Fix reflection vector for planar reflections on water Fix reflection scale in planar reflections in water Fix clip planes to be able to use matrices Remove Render.ClipPlane.cs, we'll do it simpler Don't do depth prepass on monitor views, pass values from clip plane parameters to GPU Expose scenemonitorobject attributes Add attributes to monitorsceneobject and add clipplanes to it Refactor clipplanes on shaders Refactor watersceneobject, rework on planarreflection Remove comments that are no longer applicable Compile water shader
3 Years Ago
Fix water fetching depth even without a depth texture, also fixes asserts on tools Fix error on water parameters if they arent set at all
3 Years Ago
Removed construct vpk, not meant to be commited
3 Years Ago
Merge h2o into h2o staging for integration testing Adjust tunnel combined light for water on construct and remove old water sceneobject Move all sdfreflection code to shared code temp way to pass proxy mesh constants to main pipeline, batch them later only pass raytracing includes with D_HIGH_QUALITY_REFLECTIONS enabled Pass AoProxyConstantBuffer in scenesystem Move sbox_water to water, make shaders load without sbox_ prefix pass sunlight constants on a static sunlight Pass object velocity to splash calculation Tidy up watersceneobject setting combos properly, fix material view, deprecate watersea Change parameters of default water material Disable reflections by default on water Add water material property, fix some things with reflection and splash Add water properties in construct vmap Shader objects for water Remove debug print Update watersplash_cs.vfx with our shared includes Co-authored-by: Chloe <25727384+ogniK5377@users.noreply.github.com> Use our shared includes on water vfx Co-authored-by: Chloe <25727384+ogniK5377@users.noreply.github.com> Unroll loop in water.shared Co-authored-by: Chloe <25727384+ogniK5377@users.noreply.github.com> delete test_sdfreflections Refactor water with needed changes, move Water to Experimental folder, make planar reflection generic Move ripples to a combo Remove high quality reflections from this branch Use generic AddCube function instead of reimplementing it Make debugview internal Make combos in water a bool rather than byte Merge branch 'master' into h2ostaging Merge pull request #124 from Facepunch/h2ostaging New Water
3 Years Ago
Whitelist RuntimeHelpers.EnsureSufficientExecutionStack BaseTrigger handles touching entities properly when Enabling/Disabling Fixes sbox-issues/issues/1255 Add support for drawing capsules in tool render utils. Support drawing of capsule hitboxes in CToolSceneHitBoxes Make Model.GetJson internal Added Model.GetAllData<T>() Prevent Surface being able to have itself as the base surface Fixed GlassShard.CalculateArea not working on client func_shatterglass: Added ability to change material when the glass breaks Industrial strip light and fixing point- lod0 Merge branch 'master' of sbox Ability to render scenes with an orthographic camera `scene = Add.ScenePanel( SceneWorld.Current, CamPos, Rotation.From( CamAngles ), 45, true );` Fix duck, flashlight and slots for controllers Simplify glowstate names Use HDR buffer for bWantsFBCopyTexture Hammer: Offset drop targets by bounds for better placement https://files.facepunch.com/layla/1b0311b1/3byFPizZvI.mp4 Mark simple liquid as a non dev shader Setup fake lag config values on game server init so they take effect after server restart industrial strip light and fixture - rotated to point upwards and fixed self ilum Merge branch 'master' of sbox Remove non existent projects from groups.vgc InteropGen: Adjust ArgDefinedClass for Resource Handles when the arg is not a return Added Model.ToString to include the model path Flush model game data node cache on model recompile Fixed Prop trying to get model game data of NULL model when its model is recompiled Fixed ModelDoc GameData nodes without properties not deserializing correctly industrial strip light - material group tweaks industrial strip light - updated model for material tweak industrial strip light - adjusted emissive values Merge branch 'master' of sbox ModelEntity.SetMaterial Make the API more clear as this is something people always happen to ask and unable to find Introduce GSMaxVertexCount, CreateSampler as well as common texture attributes Make AssertX messages more clear Change SetMaterial to SetMaterialOverride to keep it consistent with SceneObject Merge branch 'master' into h2ostaging
3 Years Ago
SDF shape batcher
3 Years Ago
Initial commit for sdf reflections
3 Years Ago
Make combos in water a bool rather than byte
3 Years Ago
Use generic AddCube function instead of reimplementing it Make debugview internal
3 Years Ago
Remove high quality reflections from this branch
3 Years Ago
Move ripples to a combo
3 Years Ago
delete test_sdfreflections Refactor water with needed changes, move Water to Experimental folder, make planar reflection generic
3 Years Ago
Unroll loop in water.shared Co-authored-by: Chloe <25727384+ogniK5377@users.noreply.github.com>
3 Years Ago
Use our shared includes on water vfx Co-authored-by: Chloe <25727384+ogniK5377@users.noreply.github.com>