summaryrefslogtreecommitdiff
path: root/scene/main/viewport.h
AgeCommit message (Collapse)Author
2020-04-20doc: Sync classref with current sourceRémi Verschelde
Add missing enum bindings.
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
2020-04-12Add screen space AA option, with FXAA implementation.Juan Linietsky
2020-04-09Renaming all ARVR nodes to XRBastiaan Olij
2020-04-08Refactored shadowmapping.Juan Linietsky
- Made shadow bias size independent, so it will remain when changing light or camera size. - Implemented normal offset bias, which greatly enhances quality. - Added transmission to subsurface scattering - Reimplemented shadow filter modes Closes #17260
2020-04-03Re-expose a simplified version of the stretch properties in SubViewportMichael Alexsander
2020-04-02Replace NULL with nullptrlupoDharkael
2020-03-27Renaming of servers for coherency.Juan Linietsky
VisualServer -> RenderingServer PhysicsServer -> PhysicsServer3D Physics2DServer -> PhysicsServer2D NavigationServer -> NavigationServer3D Navigation2DServer -> NavigationServer2D Also renamed corresponding files.
2020-03-27Rename more 2D and 3D nodes to follow conventionRémi Verschelde
Rename editor plugins to match the new node names.
2020-03-27Renamed 2D and 3D nodes to make their types explicitJuan Linietsky
Fixes #30736.
2020-03-26Implemented drag and drop across windows, both OS and embedded.Juan Linietsky
2020-03-26Reworked tooltips to use the popup system.Juan Linietsky
2020-03-26Popups have also been converted to windowsJuan Linietsky
Controls using the old modal API have been replaced to use popups.
2020-03-26Open sub-windows as embedded if the OS does not support themJuan Linietsky
2020-03-26Refactored input, goes all via windows now.Juan Linietsky
Also renamed Input to InputFilter because all it does is filter events.
2020-03-26Added a Window node, and made it the scene root.Juan Linietsky
Still a lot of work to do.
2020-03-26Effective DisplayServer separation, rename X11 -> LinuxBSDJuan Linietsky
2020-03-17Style: Set clang-format Standard to Cpp11Rémi Verschelde
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`.
2020-02-20Fix MIMPAMPS typos in constants throughout the engineAndrii Doroshenko (Xrayez)
2020-02-11Added normalmap guided roughness mipmap generator, and a global roughness ↵Juan Linietsky
limiter.
2020-02-11Re-implemented screen space ambient occlusionJuan Linietsky
2020-02-11Auto exposure re-implemented in VulkanJuan Linietsky
2020-02-11More GIProbe work and fixesJuan Linietsky
2020-02-11Fixed display menu visualizations.Juan Linietsky
2020-02-11GIProbes working.Juan Linietsky
2020-02-11Base 3D engine done, still untested, though.Juan Linietsky
2020-02-11Bugfixes and ability to better specify filter and repeat modes everywhere.Juan Linietsky
Removes antialiased flag for draw_* methods.
2020-02-11basic 2D engine is more or less working with Vulkan, including editor.Juan Linietsky
Still a lot to do
2020-02-11Texture refactorJuan Linietsky
-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
2020-01-06Merge pull request #33987 from nekomatata/own-world-environmentRémi Verschelde
Viewport environment is updated properly when set to own world
2020-01-01Update copyright statements to 2020Rémi Verschelde
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.
2019-11-29Viewport environment is updated properly when set to own worldPouleyKetchoupp
When own_world property is set, the viewport stores a unique resource for the world. With this change it keeps being updated from changes made to the world property instead of storing a default empty world with environment settings that can't be modified. Fixes #23412
2019-10-23Implement game camera overrideErik
Implemented uniform API in Viewport class to override 2D and/or 3D camera. Added buttons in 2D and 3D editor viewport toolbars that override the running game camera transform with the editor viewport camera transform. Implemented via remote debugger protocol and camera override API. Removed LiveEditFuncs function pointers from ScriptDebugger class. Since the debugger got access to the SceneTree instance (if one exists), there is no need to store the function pointers. The live edit functions in SceneTree are used directly instead. Also removed the static version of live edit functions in SceneTree for the same reason. This reduced the SceneTree -> Debugger coupling too since the function pointers don't need to be set from SceneTree anymore. Moved script_debugger_remote.h/cpp from 'core/' to 'scene/debugger/'. This is because the remote debugger is now using SceneTree directly and 'core/' classes should not depend on 'scene/' classes.
2019-08-12Remove redundant author doc commentsIAmActuallyCthulhu
2019-05-13Implement ability to render viewports directly to screenclayjohn
2019-03-30Drop mouseover when mouse not in the windowPedro J. Estébanez
Not that this is critical, but it makes behavior of GUI and 2D/3D picking consistent among them. This also contributes to dropping GUI focus when the mouse leaves the window (in addition to when it loses focus).
2019-03-09Fix fake null-motion mouse event floodPedro J. Estébanez
This commit also improves a bit the code quality by making the intent of fake events (and themselves) more explicit. Fixes #26460.
2019-03-05Improve/fix pickingPedro J. Estébanez
Acknowledge mouse button events as position tellers (to make picking more solid; for instance, the touch mouse is raised with a mouse unpressed event that may have a more current position) Forget mouse position for physics if touch mouse raised (because the position known as last is no longer meaningful) Remove needless check for mouse over/exit (now there's code to inject an spurious move for cases where camera/objects have moved) Restrict 2D mouse over/exit to mouse events (including emulated from touch; true touches shouldn't trigger the signals) Fixes #26460.
2019-03-02hide hdr and shadow_contact in gles2clayjohn
2019-01-26Rewrite how font oversampling is updated more carefully, fixes #24338Juan Linietsky
2019-01-18respect mouse mode when setting enter/exit notifications and signals, fixes ↵Juan Linietsky
#19785
2019-01-01Update copyright statements to 2019Rémi Verschelde
Happy new year to the wonderful Godot community!
2018-12-19fix near infinite loop when no previous mouse positionArjen van Staalduinen
Added physics_has_last_mousepos to better deal with situations where there is no last_mousepos
2018-12-14Fix touch release event on _gui_inputKonrad Nowakowski
2018-11-28Improved the mouse focus system (mouse keeps focus on a control while ↵Juan Linietsky
buttons are pressed). Fixes #19154 and likely many others. WARNING: Test well in every OS, if mouse wheel events are not properly sent as pressed+unpressed pair, it will fail and break (and the OS needs to be fixed). Only tested on X11 so far.
2018-11-15-Send mouse motion events again to CollisionObjects (Area/Body) if they ↵Juan Linietsky
move, even if mouse does not. Fixes #16536 (likely many others should check) -Add ability for viewports to set input events as handled locally
2018-11-07Merge pull request #21386 from RandomShaper/fix-picking-in-canvas-layersJuan Linietsky
Fix picking in CanvasLayer
2018-09-12Make core/ includes absolute, remove subfolders from include pathRémi Verschelde
This allows more consistency in the manner we include core headers, where previously there would be a mix of absolute, relative and include path-dependent includes.
2018-08-25Fix picking in CanvasLayerPedro J. Estébanez
New APIs in 2D physics allow intersection queries filtered by CanvasLayer object instance id. Viewport keep an inventory of its descendant CanvasLayers and takes advantage of all that to test picking with the mouse/touch position correctly transformed for each CanvasLayer.
2018-08-24Avoid misuse of set_drag_preview() function where it shouldn't be. Closes #20100Juan Linietsky