Commit graph

450 commits

Author SHA1 Message Date
Hein-Pieter van Braam
cacced7e50 Convert Object::cast_to() to the static version
Currently we rely on some undefined behavior when Object->cast_to() gets
called with a Null pointer. This used to work fine with GCC < 6 but
newer versions of GCC remove all codepaths in which the this pointer is
Null. However, the non-static cast_to() was supposed to be null safe.

This patch makes cast_to() Null safe and removes the now redundant Null
checks where they existed.

It is explained in this article: https://www.viva64.com/en/b/0226/
2017-08-24 23:08:24 +02:00
Ferenc Arn
d9d9571c8c Fix the order of transformations for selection bounding box in spatial editor.
This was broken in #7438 where the ordering of scaling in Basis::scale() was fixed, but this line of code (which relied on the incorrect behavior) wasn't updated correctly.

Fixes #9894.
2017-08-22 20:05:41 -04:00
Juan Linietsky
541fdffc0a Merge pull request #10319 from neikeq/pr-engine-editor-hint
Adds Engine::is_editor_hint() method
2017-08-20 12:55:46 -03:00
Marc Gilleron
a88c759ff1 Added option for mouse orbit sensitivity 2017-08-19 21:57:43 +02:00
Ignacio Etcheverry
90b8a5b71e Removes editor_hint from SceneTree 2017-08-19 01:29:45 +02:00
Rémi Verschelde
b1ecaaa22b Merge pull request #10307 from Rubonnek/update-argument-names
Updated function argument names
2017-08-16 17:17:56 +02:00
Rémi Verschelde
6345347190 Merge pull request #10326 from kubecz3k/spatial-click-improve
spatial selection if subscene geometry is far from origin
2017-08-16 17:13:27 +02:00
Jakub Grzesik
78e72c8e79 spatial selection if subscene geometry is far from origin 2017-08-14 09:53:46 +02:00
Gilles Roudiere
0d35d4d53b Replace GUI anchor type by a float between 0 and 1 2017-08-13 21:20:13 +02:00
Wilson E. Alvarez
428f03cf06 Updated function argument names 2017-08-12 15:12:49 -04:00
Jakub Grzesik
be8ae8df93 fix crash after click on MeshInstance with no owner
Due to how spatial selection works, after clicking on
MeshInstance that had no owner editor was crashing.
2017-08-11 19:59:30 +02:00
Jakub Grzesik
d2d62122e2 ability to click on spatial subscene to select it 2017-08-09 18:40:02 +02:00
Juan Linietsky
5e1116da4c Added proper local transform snapping, closes #4985 2017-08-08 07:55:21 -03:00
Rémi Verschelde
3121b3a4f4 Merge pull request #10141 from ISylvox/lower_case_godot_api
Makes all Godot API's Methods lower_case
2017-08-07 14:59:39 +02:00
Rémi Verschelde
722011bb75 Merge pull request #10082 from Noshyaar/pr-viewport2
SpatialEditor: fix "Top", overflow preview button
2017-08-07 14:42:31 +02:00
Indah Sylvia
5ae78fdf6a Makes all Godot API's methods Lower Case 2017-08-07 18:24:35 +07:00
Poommetee Ketson
1cc655a40d SpatialEditor: fix "Top", overflow preview button 2017-08-04 20:46:22 +07:00
Poommetee Ketson
b8feae4db6 SpatialEditor: uniform min/max of fov,znear,zfar
Clamp FOV to [0.01, 179], Znear and Zfar to [0.01, 10000]
2017-08-04 18:23:10 +07:00
Poommetee Ketson
6dde105be7 SpatialEditor: fix transform dialog 2017-07-31 20:00:02 +07:00
Marc Gilleron
754679da0a Initialize freelook shortcuts properly 2017-07-27 04:00:23 +02:00
Marc Gilleron
9d970b11ae Added configurable modifier key to activate freelook 2017-07-23 02:13:08 +02:00
Juan Linietsky
25678b1876 -Renamed GlobalConfig to ProjectSettings, makes more sense.
-Added system for feature overrides, it's pretty cool :)
2017-07-19 17:06:03 -03:00
Juan Linietsky
bbada82f80 -Reorganized all properties of project settings (Sorry, Again).
(Lot's of bloat accumulated, so it was time for clean up.)
-Made EditorSettings and ProjectSettings search more useful (search in sections too)
2017-07-17 22:18:58 -03:00
Juan Linietsky
2e73be99d8 Lots of work on Audio & Physics engine:
-Added new 3D stream player node
-Added ability for Area to capture sound from streams
-Added small features in physics to be able to properly guess distance to areas for sound
-Fixed 3D CollisionObject so shapes are added the same as in 2D, directly from children
-Fixed KinematicBody API to make it the same as 2D.
2017-07-15 08:32:34 -03:00
TwistedTwigleg
44ecfb028d Fixed syntax inconsistency in Vector3.snap and Vector3.snapped 2017-07-03 16:29:03 -04:00
Marc Gilleron
0fd66a4f8f Fixed freelook conflict with text inputs 2017-06-20 02:50:25 +02:00
Thomas Herzog
6b93455b6b Merge pull request #9099 from kubecz3k/plugin-camera-expose
EditorPlugin can request user inputs from editor 3d view
2017-06-19 22:43:33 +02:00
Hugo Locurcio
cdcc3c919b Increase the default perspective camera FOV
This does not affect existing projects, but will affect newly-created
editor settings and Camera nodes.
2017-06-16 12:07:07 +02:00
Unknown
d8b65b1657 EditorPlugin can request user inputs from editor 3d view 2017-06-12 17:55:15 +02:00
Juan Linietsky
61c82f4356 Restored everything related to information polling, and added information box for viewport. 2017-06-11 18:13:04 -03:00
Juan Linietsky
4d50c7ad8c Restored multiple viewport function, as well as view modes. 2017-06-11 15:52:03 -03:00
Juan Linietsky
ec015a32ae Multiple 3D viewports are not operational. 2017-06-11 11:29:51 -03:00
alexholly
935f730170 renamed all Rect3.pos to Rect3.position 2017-06-09 15:54:02 +02:00
Juan Linietsky
5bf810b5db -Added proper access to depth texture from shader
-Split Mesh into Mesh (abstrat class) and ArrayMesh, to allow to proper mesh primitives, as well as streamable meshes in the future.
2017-06-07 18:20:04 -03:00
alexholly
a3c90b0293 renamed all Rect2.pos to Rect2.position 2017-06-04 02:09:17 +02:00
Andreas Haas
9bc5348961
InputEvent: Renamed "pos" property to "position"
Make the naming consistent with other classes.
2017-06-03 11:26:39 +02:00
Juan Linietsky
bb20f230ad -Added .hdr format support
-Added default environment editor setting
-Added environment created by default in new projects
-Removed default light and ambient from spatial editor, to make the editor more PBR compliant
2017-05-28 21:48:05 -03:00
Juan Linietsky
5b3709d309 Removal of InputEvent as built-in Variant type..
this might cause bugs I haven't found yet..
2017-05-20 17:05:38 -03:00
Rémi Verschelde
231511b2a6 Merge pull request #8631 from volzhs/editor-theme-custom
New customizable editor theme
2017-05-20 07:16:11 +02:00
volzhs
bb81293047 New customizable editor theme 2017-05-09 17:46:54 +09:00
Marc Gilleron
aaf9cacf5f Improved freelook
- Fix movement input affecting all viewports even when clicking outside
- Freelook up movement is now relative
- Prevent tool shortcut conflict when moving
- De-hardcode tool shortcuts (select, move, rotate, scale, wireframe)
- Movement speed depends on zoom distance (like panning)
- Mouse wheel controls speed (Blender-style) due to above point
- Added zoom distance indicator, hides after short delay
2017-05-08 02:57:20 +02:00
Andreas Haas
7839a89027
Spatial Editor: Mouse warping for orbit & freelook modes. 2017-05-06 14:46:42 +02:00
Marc Gilleron
442006b4bf Added 3D freelook navigation mode
- Triggered by holding RMB
- Can look around in FPS style
- Can move with WASD
- Movement speed accelerates over time
- Can multiply speed with a modifier key to go faster or slower
- Configurable in editor settings and shortcuts
2017-05-04 01:38:12 +02:00
Sergey Pusnei
8589ca3903 Rename [gs]et_pos to [gs]et_position for Controls
Control set_pos -> set_position
Control set_global_pos -> set_global_position
[gs]et_mouse_pos -> [gs]et_mouse_position
[gs]et_global_mouse_pos -> [gs]et_global_mouse_position
fixes #8005
2017-04-10 08:27:34 +02:00
Rémi Verschelde
df61dc4b2b Add "Godot Engine contributors" copyright line 2017-04-08 00:11:42 +02:00
Juan Linietsky
74808ac4d9 New particle system, mostly working, some small features missing. 2017-04-06 23:49:27 -03:00
supaiku
d51fe99a8b Fix highlight typo 2017-04-06 17:35:08 +02:00
Pedro J. Estébanez
f5004b78d0 Implement warped mouse panning for 2D & 3D editors
Enabled by default as in Blender, but can be disabled separately for 2D & 3D;
the core functionality is in Input so this could be reused or even exposed to scripts in the future
2017-03-22 21:36:52 +01:00
Rémi Verschelde
5dbf1809c6 A Whole New World (clang-format edition)
I can show you the code
Pretty, with proper whitespace
Tell me, coder, now when did
You last write readable code?

I can open your eyes
Make you see your bad indent
Force you to respect the style
The core devs agreed upon

A whole new world
A new fantastic code format
A de facto standard
With some sugar
Enforced with clang-format

A whole new world
A dazzling style we all dreamed of
And when we read it through
It's crystal clear
That now we're in a whole new world of code
2017-03-05 16:44:50 +01:00
Rémi Verschelde
49c065d29c Refactoring: rename tools/editor/ to editor/
The other subfolders of tools/ had already been moved to either
editor/, misc/ or thirdparty/, so the hiding the editor code that
deep was no longer meaningful.
2017-03-05 14:21:25 +01:00
Renamed from tools/editor/plugins/spatial_editor_plugin.cpp (Browse further)