summaryrefslogtreecommitdiff
path: root/servers/rendering_server.h
AgeCommit message (Collapse)Author
2020-12-24Add API to get frame setup time on CPUreduz
Needed for benchmarks
2020-12-21Port ASSAO to Godot to replace SAOclayjohn
2020-12-18Implement automatic LOD (Level of Detail)reduz
-Happens on import by default for all models -Just works (tm) -Biasing can be later adjusted per node or per viewport (as well as globally) -Disabled AABB.get_support test because its broken
2020-12-16Reimplement skeletons and blend shapesreduz
Uses compute shaders, which only once, on demand, and all in parallel.
2020-12-09Cleanup unused engine codeTomasz Chabora
2020-12-04RenderingServer reorganizationreduz
2020-12-02Refactored Mesh internals and formats.reduz
-Changed how mesh data is organized, hoping to make it more efficient on Vulkan and GLES. -Removed compression, it now always uses the most efficient format. -Added support for custom arrays (up to 8 custom formats) -Added support for 8 weights in skeleton data. -Added a simple optional versioning system for imported assets, to reimport if binary is newer -Fixes #43979 (I needed to test) WARNING: -NOT backwards compatible with previous 4.x-devel, will most likely never be, but it will force reimport scenes due to version change. -NOT backwards compatible with 3.x scenes, this will be eventually re-added. -Skeletons not working any longer, will fix in next PR.
2020-11-28Merge pull request #42761 from fire/color-grading-3dRémi Verschelde
Environment brightness, contrast, saturation restore with 3d LUT.
2020-11-28Environment brightness, contrast, saturation restore with color correction.clayjohn
Allow gradients and 2d images. Use shader versions for LUT in tonemap Co-authored-by: alex-poe <3957610+CptPotato@users.noreply.github.com> Co-authored-by: QbieShay <cislaghi.ilaria@gmail.com> Co-authored-by: Clay John <claynjohn@gmail.com>
2020-11-28Merge pull request #43828 from Chaosus/restore_line_antialiasingYuri Roubinsky
Restored antialiased lines by emulation using triangle strips
2020-11-28Merge pull request #42987 from clayjohn/VULKAN-sky-onlyRémi Verschelde
Add sky_only setting to DirectionalLight3Ds
2020-11-27Restored antialiased lines by emulation using triangle stripsYuri Roubinsky
2020-11-26Implement signed distance fields for 2D shadersreduz
2020-11-07Reorganized core/ directory, it was too fatty alreadyreduz
-Removed FuncRef, since Callable makes it obsolete -Removed int_types.h as its obsolete in c++11+ -Changed color names code
2020-11-04doc: Sync classref with current source + fixup some bindingsRémi Verschelde
Includes various changes triggered by the refactoring of method bindings.
2020-11-04Implement DirectionalLight2Dreduz
Also separated Light2D in PointLight2D and DirectionalLight2D. Used PointLight2D because its more of a point, and it does not work the same as OmniLight (as shape depends on texture). Added a few utility methods to Rect2D I needed.
2020-10-30Refactor pixel snapping.reduz
-Rename pixel_snap to snap_2d_to_vertices -Added snap_2d_to_transforms which is more useful Fixes #41814 Solves proposal https://github.com/godotengine/godot-proposals/issues/1666 Supersedes #35606, supersedes #41535, supersedes #41534
2020-10-28Implement CanvasGroup and CanvasItem clippingreduz
-Allows merging several 2D objects into a single draw operation -Use current node to clip children nodes -Further fixes to Vulkan barriers -Changed font texture generation to white, fixes dark eges when blurred -Other small misc fixes to backbuffer code.
2020-10-24Refactored 2D shader and lighting systemreduz
-Removed normal/specular properties from nodes -Create CanvasTexture, which can contain normal/specular channels -Refactored, optimized and simplified 2D shaders -Use atlas for light textures. -Use a shadow atlas for shadow textures. -Use both items aboves to make light rendering stateless (faster). -Reorganized uniform sets for more efficiency.
2020-10-21Add sky_only setting to DirectionalLight3Dsclayjohn
2020-10-19Merge pull request #38097 from Calinou/add-viewport-debandingJuan Linietsky
Add a debanding property to Viewport
2020-10-18Revert "Replace SAO implementation with MSSAO"Juan Linietsky
2020-10-18Merge pull request #42077 from clayjohn/MSSAOJuan Linietsky
Replace SAO implementation with MSSAO
2020-10-18Merge pull request #42201 from clayjohn/Vulkan-new-glowJuan Linietsky
Optimize Glow with local memory
2020-10-18Replace SAO implementation with MSSAOclayjohn
2020-10-18Optimize Glow with local memoryclayjohn
2020-10-18Merge pull request #41418 from clayjohn/Vulkan-aerialRémi Verschelde
Add aerial perspective to fixed fog
2020-10-18Refactor MethodBind to use variadic templatesreduz
Removed make_binders and the old style generated binders.
2020-10-17Add aerial perspective to fixed fogclayjohn
2020-10-09Implement GPU Particle Collisionsreduz
-Sphere Attractor -Box Attractor -Vector Field -Sphere Collider -Box Collider -Baked SDF Collider -Heightmap Collider
2020-09-16expose local RenderingDevice creation to RenderingServerclayjohn
2020-09-09Implement 3D textures as import and resource format.reduz
2020-09-07Merge pull request #41781 from AnilBK/fix-typoRémi Verschelde
Fixed Some typos.
2020-09-06Implement manual particle emission and particle sub emitters.reduz
2020-09-05Fixed Some typos.Anilforextra
2020-08-31Add high quality glow modeclayjohn
2020-08-14Add a debanding property to ViewportHugo Locurcio
It can be enabled in the Project Settings (`rendering/quality/screen_filters/use_debanding`). It's disabled by default as it has a small performance impact and can make PNG screenshots much larger (due to how dithering works). It will also slightly brighten the scene's dark areas. As a result, it should be enabled only when banding is noticeable enough. This closes #17006.
2020-08-13Restored fog (non volumetric).Juan Linietsky
Uses a simpler and more intuitive implementation based on density. Its less flexible than before, but its easier to get nice results.
2020-08-13Added volumetric fog effect.Juan Linietsky
2020-07-11Add incremental update mode to skyclayjohn
2020-07-01Environment: Refactor code for readability + moreRémi Verschelde
- Makes all boolean setters/getters consistent. - Fixes bug where `glow_hdr_bleed_scale` was not used. - Split CameraEffects to their own source file. - Reorder all Environment method and properties declarations, definitions and bindings to be consistent with each other and with the order of property bindings. - Bind missing enum values added with SDFGI. - Remove unused SDFGI enhance_ssr boolean. - Sync doc changes after SDFGI merge and other misc changes.
2020-06-26Addition of SDFGI for open world global illuminationJuan Linietsky
Move GI to a deferred pass
2020-06-16Expose disable_render_loop property to GDScriptEv1lbl0w
2020-05-27Split `Geometry` singleton into `Geometry2D` and `Geometry3D`Andrii Doroshenko (Xrayez)
Extra `_2d` suffixes are removed from 2D methods accoringly.
2020-05-14Style: clang-format: Disable KeepEmptyLinesAtTheStartOfBlocksRémi Verschelde
Which means that reduz' beloved style which we all became used to will now be changed automatically to remove the first empty line. This makes us lean closer to 1TBS (the one true brace style) instead of hybridating it with some Allman-inspired spacing. There's still the case of braces around single-statement blocks that needs to be addressed (but clang-format can't help with that, but clang-tidy may if we agree about it). Part of #33027.
2020-05-10New lightmapperJuan Linietsky
-Added LocalVector (needed it) -Added stb_rect_pack (It's pretty cool, we could probably use it for other stuff too) -Fixes and changes all around the place -Added library for 128 bits fixed point (required for Delaunay3D)
2020-04-20doc: Sync classref with current sourceRémi Verschelde
Add missing enum bindings.
2020-04-17Implement global and per instance shader uniforms.Juan Linietsky
Adds two keywords to shader language for uniforms: -'global' -'instance' This allows them to reference values outside the material.
2020-04-14Merge pull request #37861 from reduz/implement-decalsRémi Verschelde
Implement decals
2020-04-14Implement decalsJuan Linietsky
Also implemented decal atlas, so projectors and other stuff can be added. Sidenote: Had to make RID hashable, so some unrelated includes changed in order to include it in hashfuncs.h