summaryrefslogtreecommitdiffstats
path: root/servers/visual_server.cpp
Commit message (Collapse)AuthorAgeFilesLines
* Renaming of servers for coherency.Juan Linietsky2020-03-271-2363/+0
| | | | | | | | | | VisualServer -> RenderingServer PhysicsServer -> PhysicsServer3D Physics2DServer -> PhysicsServer2D NavigationServer -> NavigationServer3D Navigation2DServer -> NavigationServer2D Also renamed corresponding files.
* Fix some -Wmaybe-uninitialized warningsRémi Verschelde2020-03-271-0/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | Namely: ``` modules/basis_universal/register_types.cpp: In function 'Ref<Image> basis_universal_unpacker(const Vector<unsigned char>&)': modules/basis_universal/register_types.cpp:266:15: warning: 'imgfmt' may be used uninitialized in this function [-Wmaybe-uninitialized] 266 | image->create(info.m_width, info.m_height, info.m_total_levels > 1, imgfmt, gpudata); | ~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ modules/basis_universal/register_types.cpp:255:39: warning: 'format' may be used uninitialized in this function [-Wmaybe-uninitialized] 255 | bool ret = tr.transcode_image_level(ptr, size, 0, i, dst + ofs, level.m_total_blocks - i, format); | ~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ``` ``` servers/visual_server.cpp: In member function 'Error VisualServer::_surface_set_data(Array, uint32_t, uint32_t*, uint32_t, Vector<unsigned char>&, int, Vector<unsigned char>&, int, AABB&, Vector<AABB>&)': servers/visual_server.cpp:636:15: warning: 'iw' may be used uninitialized in this function [-Wmaybe-uninitialized] 636 | copymem(&iw[i * 2], &v, 2); | ^ ``` ``` core/image.cpp: In member function 'Error Image::generate_mipmap_roughness(Image::RoughnessChannel, const Ref<Image>&)': core/image.cpp:1683:11: warning: 'roughness' may be used uninitialized in this function [-Wmaybe-uninitialized] 1683 | float roughness; | ^~~~~~~~~ ```
* Fix various -Wmaybe-uninitialized (#37352).Martin Liska2020-03-271-1/+1
|
* Open sub-windows as embedded if the OS does not support themJuan Linietsky2020-03-261-0/+1
|
* Added a Window node, and made it the scene root.Juan Linietsky2020-03-261-2/+2
| | | | Still a lot of work to do.
* Working sky shader implementationclayjohn2020-03-211-4/+3
|
* Add shader based background modeBastiaan Olij2020-03-191-0/+2
|
* Style: Set clang-format Standard to Cpp11Rémi Verschelde2020-03-171-2/+2
| | | | | | | | | | For us, it practically only changes the fact that `A<A<int>>` is now used instead of the C++03 compatible `A<A<int> >`. Note: clang-format 10+ changed the `Standard` arguments to fully specified `c++11`, `c++14`, etc. versions, but we can't use `c++17` now if we want to preserve compatibility with clang-format 8 and 9. `Cpp11` is still supported as deprecated alias for `Latest`.
* Basic fast filtering implementationclayjohn2020-02-271-3/+2
|
* Variant: Added 64-bit packed arrays, renamed Variant::REAL to FLOAT.Juan Linietsky2020-02-251-6/+6
| | | | | | | | | | | | | | | | | | | | | - Renames PackedIntArray to PackedInt32Array. - Renames PackedFloatArray to PackedFloat32Array. - Adds PackedInt64Array and PackedFloat64Array. - Renames Variant::REAL to Variant::FLOAT for consistency. Packed arrays are for storing large amount of data and creating stuff like meshes, buffers. textures, etc. Forcing them to be 64 is a huge waste of memory. That said, many users requested the ability to have 64 bits packed arrays for their games, so this is just an optional added type. For Variant, the float datatype is always 64 bits, and exposed as `float`. We still have `real_t` which is the datatype that can change from 32 to 64 bits depending on a compile flag (not entirely working right now, but that's the idea). It affects math related datatypes and code only. Neither Variant nor PackedArray make use of real_t, which is only intended for math precision, so the term is removed from there to keep only float.
* Fix MIMPAMPS typos in constants throughout the engineAndrii Doroshenko (Xrayez)2020-02-201-2/+2
|
* PoolVector is gone, replaced by VectorJuan Linietsky2020-02-181-126/+112
| | | | | Typed `PoolTypeArray` types are now renamed `PackedTypeArray` and are sugar for `Vector<Type>`.
* Fix VisualServer bindings.Marcel Admiraal2020-02-171-5/+1
|
* Remove more deprecated methods and codeRémi Verschelde2020-02-131-6/+0
|
* doc: Sync classref with current sourceRémi Verschelde2020-02-121-56/+102
| | | | | | | | Lots of internal API changes and some docstrings were lost in the conversion. I manually salvaged many of them but for all the rendering-related ones, an additional pass is needed. Added missing enum bindings in BaseMaterial3D and VisualServer.
* Added normalmap guided roughness mipmap generator, and a global roughness ↵Juan Linietsky2020-02-111-0/+5
| | | | limiter.
* Re-implemented screen space ambient occlusionJuan Linietsky2020-02-111-1/+5
|
* Modified rendering to use cluster instead of fowardJuan Linietsky2020-02-111-1/+1
|
* DOF fully implemented, can be edited on the fly.Juan Linietsky2020-02-111-2/+8
|
* WIP CameraEffects implementation (bokeh not working for now)Juan Linietsky2020-02-111-5/+3
|
* Better GIProbe quality settings.Juan Linietsky2020-02-111-1/+2
|
* GIProbes working.Juan Linietsky2020-02-111-0/+8
|
* Properly working instancing, and compatibility fixing for old meshesJuan Linietsky2020-02-111-4/+0
|
* Several fixes to 3D rendering, and multimesh implementation.Juan Linietsky2020-02-111-8/+3
|
* Reflection probes workingJuan Linietsky2020-02-111-0/+3
|
* Directional lights and shadow mapping are functional.Juan Linietsky2020-02-111-0/+1
|
* Rewrote large part of rendering, omni and spot shadows now work.Juan Linietsky2020-02-111-4/+0
|
* Environment sky more or less working.Juan Linietsky2020-02-111-6/+15
|
* Yay very basic 3D (only white) finally shows.Juan Linietsky2020-02-111-5/+0
|
* Base 3D engine done, still untested, though.Juan Linietsky2020-02-111-215/+160
|
* Add static Vulkan loader.bruvzg2020-02-111-0/+4
| | | | | Initial Vulkan support for Windows. Initial Vulkan support for macOS.
* Completed material/2D shader support (missing SCREEN_TEXTURE)Juan Linietsky2020-02-111-1/+1
|
* Changes to material required to add custom shaders in RD rendererJuan Linietsky2020-02-111-2/+2
|
* Modified light rendering to make it more compatible.Juan Linietsky2020-02-111-1/+0
| | | | Modified polygon management to make it more compatible with MoltenVK
* 2D lighting seems more or less complete.Juan Linietsky2020-02-111-3/+0
|
* Added ability to retrieve back textures stored on GPUJuan Linietsky2020-02-111-0/+3
|
* Bugfixes and ability to better specify filter and repeat modes everywhere.Juan Linietsky2020-02-111-0/+3
| | | | Removes antialiased flag for draw_* methods.
* A lot of progress with canvas rendering, still far from working.Juan Linietsky2020-02-111-5/+1
|
* Texture refactorJuan Linietsky2020-02-111-58/+14
| | | | | | | | -Texture renamed to Texture2D -TextureLayered as base now inherits 2Darray, cubemap and cubemap array -Removed all references to flags in textures (they will go in the shader) -Texture3D gone for now (will come back later done properly) -Create base rasterizer for RenderDevice, RasterizerRD
* Add project setting for max irradiance sizeclayjohn2020-01-251-0/+2
|
* Add VisualServer methods to get the video adapter name and vendorHugo Locurcio2020-01-061-0/+2
| | | | | | | These methods can be used in scripts to retrieve the OpenGL `GL_RENDERER` and `GL_VENDOR` strings (respectively). This closes #28404.
* Merge pull request #34726 from nekomatata/polygon2d-antialiasing-fixRémi Verschelde2020-01-031-1/+1
|\ | | | | Fixed antialiasing option for Polygon2D with concave/hollow shapes
| * Fixed antialiasing option for Polygon2DPouleyKetchoupp2020-01-011-1/+1
| | | | | | | | | | | | Some cases were not handled properly for Polygon2D after making changes in common code to fix Line2D antialiasing. Added an option for drawing polygons to differentiate the two use cases. Fixes #34568
* | Update copyright statements to 2020Rémi Verschelde2020-01-011-2/+2
|/ | | | | | | | | | | Happy new year to the wonderful Godot community! We're starting a new decade with a well-established, non-profit, free and open source game engine, and tons of further improvements in the pipeline from hundreds of contributors. Godot will keep getting better, and we're looking forward to all the games that the community will keep developing and releasing with it.
* doc: Markup fixes for enums and constantsRémi Verschelde2019-12-061-1/+1
|
* Merge pull request #34039 from Eoin-ONeill-Yokai/multimeshfixRémi Verschelde2019-12-051-0/+1
|\ | | | | Added Missing Binding for `multimesh_create` to VisualServer
| * Added method binding for `multimesh_create` that was missing from ↵Eoin O'Neill2019-12-041-0/+1
| | | | | | | | VisualServer class.
* | Fixed antialiased option for Polygon2D / Line2DPouleyKetchoupp2019-11-281-1/+1
|/ | | | | | | | | | Polygon2D: The property wasn't used anymore after switching from canvas_item_add_polygon() to canvas_item_add_triangle_array() for drawing. Line2D: Added the same property as for Polygon2D & fixed smooth line drawing to use indices correctly. Fixes #26823
* Add special external MSAA modes for GLES2 Rift S/Quest and OpenXR optimisationBastiaan Olij2019-11-111-0/+2
|
* Fixed Particles restart after visibility has been set to off and on againPouleyKetchoupp2019-11-091-0/+2
| | | | | | Make sure particles are processed during the same frame when visibility is set to on, in case they are still active from before and need to be restarted. Fixed #33476