Commit Graph

309 Commits

Author SHA1 Message Date
Juan Linietsky
de0045cf1b -renamed globals.h to global_config.cpp (this seems to have caused a few modified files)
-.pck and .zip exporting redone, seems to be working..
2017-02-21 00:06:30 -03:00
Hein-Pieter van Braam
411ee71b4d Rename the _MD macro to D_METHOD
This new name also makes its purpose a little clearer

This is a step towards fixing #56
2017-02-13 12:50:02 +01:00
Hein-Pieter van Braam
0f687f0ccb Remove use of _SCS from ADD_METHOD
This saves typing and is a step towards fixing #56
2017-02-13 10:37:47 +01:00
Juan Linietsky
3b019bf644 Ability to delete, drag and drop audio buses! 2017-01-23 23:12:41 -03:00
Juan Linietsky
0aa7242624 WIP new AudioServer, with buses, effects, etc. 2017-01-21 19:01:00 -03:00
Rémi Verschelde
f44ee891be Style: Fix statements ending with ';;' 2017-01-16 08:49:52 +01:00
Juan Linietsky
b400c69cd4 Oops! Audio engine has vanished :D 2017-01-15 16:07:51 -03:00
Juan Linietsky
dcb95ec147 removed duplicated functions in class hierarchy that were bound more than once
added a check to detect this case in the future
2017-01-14 11:10:42 -03:00
Rémi Verschelde
93ab45b6b5 Style: Fix whole-line commented code
They do not play well with clang-format which aligns the `//` part
with the rest of the code block, thus producing badly indented commented code.
2017-01-14 14:52:23 +01:00
Juan Linietsky
d093cc8bf8 Renamed call_group to call_group_flags, made call_group without flags the default 2017-01-14 10:03:53 -03:00
Juan Linietsky
e53c247cb1 Created new Engine singleton, and moved engine related OS functions to it. 2017-01-13 12:51:14 -03:00
Juan Linietsky
04c749a1f0 New API for visibility in both CanvasItem and Spatial
visible (property) - access set_visible(bool) is_visible()
is_visible_in_tree() - true when visible and parents visible
show() hide() - for convenience
2017-01-13 10:45:50 -03:00
Juan Linietsky
bc26f90581 Type renames:
Matrix32 -> Transform2D
	Matrix3 -> Basis
	AABB -> Rect3
	RawArray -> PoolByteArray
	IntArray -> PoolIntArray
	FloatArray -> PoolFloatArray
	Vector2Array -> PoolVector2Array
	Vector3Array -> PoolVector3Array
	ColorArray -> PoolColorArray
2017-01-11 00:52:51 -03:00
Juan Linietsky
f3f4a11cfb - _ready() callback only happens once now, if you want to receive it again, use request_ready()
- C++ Nodes mostly do an internal process callback, so it does not conflict with users willing to use their own process callbacks
- callbacks such as _input, _process, _fixed_process _unhandled_input, _unhandled_key_input do not requiere calling a function to enable them. They are enabled automatically if found on the script.
2017-01-10 18:04:33 -03:00
Juan Linietsky
a503f8aadc Groundbreaking!! Godot resources can now be flagged to be local to the scene being edited!
This means that each time this scene is instanced, the resource will be unique!
As such, thanks to this, the following features were implemented:
-ButtonGroup is no longer a control, it's now a resource local to the scene
-ViewportTexture can be created from the editor and set to any object, making ViewportSprite and other kind of nodes obsolete!
2017-01-10 01:07:03 -03:00
Juan Linietsky
94ee7798ce -removed stop mouse and ignore mouse from control, which were confusing, replaced by mouse filter 2017-01-08 19:54:19 -03:00
Juan Linietsky
547a57777b renamed joystick to joypad everywhere around source code! 2017-01-08 17:06:33 -03:00
Juan Linietsky
920947f297 renamed _input_event for GUI events to _gui_input, so it's more differentiated than generalized _input 2017-01-08 16:28:12 -03:00
Juan Linietsky
0f7af4ea51 -Changed most project settings in the engine, so they have major and minor categories.
-Changed SectionedPropertyEditor to support this
-Renamed Globals singleton to GlobalConfig, makes more sense.
-Changed the logic behind persisten global settings, instead of the persist checkbox, a revert button is now available
2017-01-05 09:16:00 -03:00
Juan Linietsky
b085c40edf -Conversion of most properties to a simpler syntax, easier to use by script
-Modified help to display properties

GDScript can still not make use of them, though.
2017-01-04 01:16:14 -03:00
Juan Linietsky
118eed485e ObjectTypeDB was renamed to ClassDB. Types are meant to be more generic to Variant.
All usages of "type" to refer to classes were renamed to "class"
ClassDB has been exposed to GDScript.
OBJ_TYPE() macro is now GDCLASS()
2017-01-02 23:03:46 -03:00
Rémi Verschelde
3f3f5a5359 Merge remote-tracking branch 'origin/gles3' into gles3-on-master
Various merge conflicts have been fixed manually and some mistakes
might have been made - time will tell :)
2017-01-02 21:52:26 +01:00
Juan Linietsky
c2a217c350 WIP particle system
Ability to enable and change MSAA settings
Ability to change VCT quality
Ability to enable/disable HDR rendering
2017-01-01 22:16:52 -03:00
Rémi Verschelde
c7bc44d5ad Welcome in 2017, dear changelog reader!
That year should bring the long-awaited OpenGL ES 3.0 compatible renderer
with state-of-the-art rendering techniques tuned to work as low as middle
end handheld devices - without compromising with the possibilities given
for higher end desktop games of course. Great times ahead for the Godot
community and the gamers that will play our games!
2017-01-01 22:03:33 +01:00
Juan Linietsky
3adb42e217 Fixed many more bugs reported by Valgrind 2016-12-23 08:47:16 -03:00
Juan Linietsky
f9603d8236 can bake for omni and spotlight
store normal when baking
2016-12-22 10:00:15 -03:00
Juan Linietsky
943d27f46d Instancing is working! (hooray) 2016-11-22 01:26:56 -03:00
Juan Linietsky
cacf9ebb7f all light types and shadows are working, pending a lot of clean-up 2016-11-09 23:55:06 -03:00
Juan Linietsky
53d8f2b1ec PBR more or less working, still working on bringing gizmos back 2016-10-27 11:50:26 -03:00
Mateusz Adamczyk
8671836b76 Added simple check to viewport, if matrix32 is invesile (https://github.com/godotengine/godot/issues/6296). 2016-10-08 12:33:10 +02:00
Juan Linietsky
cf5778e51a -Added ViewportContainer, this is the only way to make viewports show up in GUI now
-2D editing now seems to work
-Added some functions and refactoring to Viewport
2016-10-05 01:26:35 -03:00
Juan Linietsky
22d83bc9f6 Begining of GLES3 renderer:
-Most 2D drawing is implemented
-Missing shaders
-Missing all 3D
-Editor needs to be set on update always to be used, otherwise it does not refresh
-Large parts of editor not working
2016-10-03 21:35:16 +02:00
Fabio Alessandrelli
97cf3eba56 Restore viewport set_world_2d functionality 2016-09-14 15:18:00 +02:00
Juan Linietsky
b16f41a10a Fix Viewport.get_mouse_pos() for specific situations, closes #1885 2016-09-10 13:29:07 -03:00
Andreas Haas
4755fe5576
UI navigation via JOYSTICK_MOTION.
Previously, you could assign joystick axis events to "ui_*" actions but they had no effect.
See https://godotengine.org/qa/6232
2016-07-30 12:39:16 +02:00
Juan Linietsky
62cdfeaf58 Merge pull request #5881 from neikeq/pr-fix-propagation
Viewport: Replace obsolete "windows" group calls
2016-07-24 12:37:59 -03:00
Juan Linietsky
6e3c7fe5fe Merge pull request #5803 from jarfil/issue/origin5695-pr
Fix tooltips blinking
2016-07-24 12:37:17 -03:00
Ignacio Etcheverry
67640c84eb Viewport: Replace obsolete "windows" group calls
- Fixes neighbour focusing event propagation not being stopped
2016-07-24 14:11:30 +02:00
Jaroslaw Filiochowski
be560a750c Hide tooltip if new mouse position's tooltip is empty 2016-07-19 07:07:53 +02:00
Jaroslaw Filiochowski
1e7b9c509f Don't start a new tooltip timer for the same tooltip 2016-07-19 07:07:40 +02:00
Juan Linietsky
f93e333e85 Properly transform sub-viewport input, closes #3580 2016-07-18 17:16:49 -03:00
Franklin Sobrinho
6b154c9706 Fix own world option of Viewport.
It happens when the viewport has WorldEnviroment child with a valid Enviroment
2016-07-08 14:27:19 -03:00
Juan Linietsky
ec94dd7eee Fixed the order of input, reverts #4384, closes #5361 2016-07-01 11:42:09 -03:00
Juan Linietsky
8cbb154466 Color picker was getting too much focus, made it get not as much focus.
This abuse of focus was the original culprit of #5354
2016-07-01 10:55:35 -03:00
Juan Linietsky
3185ce64c5 Invalidate key focus if not visible, fixes #5354 2016-07-01 10:42:33 -03:00
Juan Linietsky
db9335f4c1 Improved drag&drop to work as n-piggeon wants to use, closes #5342 2016-07-01 10:34:38 -03:00
Juan Linietsky
e5fc62cc4b remove unnecesary warning, closes #5169 2016-06-29 18:27:12 -03:00
Juan Linietsky
ba5bc57816 Figured out a way to fix event propagation for shortcuts and some other cases so they properly stop shortcuts if a modal window is open, closes #4848 2016-06-27 20:14:59 -03:00
Juan Linietsky
88e28af5e3 Add a small workaround to avoid modal tabs to be closed if they are spawned in the same frame, closes #3837 2016-06-27 11:22:13 -03:00
Juan Linietsky
47d6cc08bb Properly deliver localized coordinates when passing gui events through parents, closes #4215 2016-06-27 10:00:36 -03:00
Juan Linietsky
9e0b6057e7 Make button aware of it being dragged and reset state, closes #4178 2016-06-23 18:20:39 -03:00
Juan Linietsky
ad8d4a6b26 Fixed the order of events called by _input, closes #4384 2016-06-20 19:09:14 -03:00
Juan Linietsky
85d8000449 Allow mouse wheel to go throuhgh so scroll containers work properly, fixes #4431 2016-06-20 17:16:52 -03:00
Juan Linietsky
0e07f49a03 Make dure to only call drop_data if can_drop_data returned true, closes #4616 2016-06-20 10:29:52 -03:00
Juan Linietsky
b75fb6674b do not allow picking in captured mode, closes #5134 2016-06-11 17:44:52 -03:00
Juan Linietsky
c5a2aff6db fixes wrong bool return, closes #5037 2016-06-09 22:30:34 -03:00
Rémi Verschelde
0729c852b4 Fix indentation issues in last commits
Ping @reduz.
2016-06-07 07:39:40 +02:00
Juan Linietsky
06bc4e20d3 Merge pull request #4101 from SaracenOne/listener
Added New Listener Spatial Node.
2016-06-06 22:13:23 -03:00
Juan Linietsky
aec5506414 properly pass events to parent controls, closes #4701 2016-06-06 22:03:29 -03:00
Juan Linietsky
007efb6a20 -customizable shortcuts in editor
-editor settings now save to .tres instead of .xml
-buttons can now hold a shortcut
2016-06-04 21:31:47 -03:00
Hubert Jarosz
33403d91f7
remove trailing whitespace 2016-05-21 15:29:25 +02:00
Rémi Verschelde
94c34ff890 i18n: Proofreading of all strings
Done to ensure that no important identifiers are translatable,
to fix compound strings using the new vformat() function, and
some general English proofreading here and there.
2016-05-21 00:21:57 +02:00
captainwasabi
4b80895082 Fix for tooltip blinking (#4713)
Moved where active tooltips are canceled to wait until the mouse actually moves off the control.
2016-05-20 13:56:42 +02:00
Juan Linietsky
c195c0df6b -Added configuration warning system for nodes
-Added a new "add" and "instance" buttons for scene tree
-Added a vformat() function to ease translation work
2016-05-17 18:28:44 -03:00
Juan Linietsky
d7318f6965 -begun implementing drag & drop editor wide
-filesystem dock dnd support
-property list dnd support
-scene tree dnd support
2016-05-11 11:59:03 -03:00
Saracen
3741bc70fe Added listener spatial node. 2016-03-20 02:10:04 +00:00
Rémi Verschelde
6e86a05350 Merge pull request #4012 from sanikoyes/Pr-linke-fail-disable-3d
Fix link error when disable_3d=yes
2016-03-11 07:11:23 +01:00
sanikoyes
a638af886e Fix link error when disable_3d=yes 2016-03-11 10:01:56 +08:00
Hubert Jarosz
4a4f247914
remove trailing whitespace 2016-03-09 00:00:52 +01:00
Juan Linietsky
08e0e64a19 fix transform localization event in mouse motion 2016-02-27 09:47:39 -03:00
Juan Linietsky
bdfac2806f -Fix mouse coordinates not being affected by canvas transform 2016-02-03 09:31:55 -03:00
Biliogadafr
e8c5b41dd8 Physics2D: Allow to use 'intersect_point' with objects which is not 'pickable' 2016-02-01 04:30:16 +03:00
Juan Linietsky
53e237dfe4 -Fix crash opening and closing the scene, closes #3491 2016-01-31 15:10:33 -03:00
Juan Linietsky
094f0767d8 -Fix input bug on window ordering due to foretting to sort root items 2016-01-25 10:39:55 -03:00
Juan Linietsky
07e7909480 -Changed how popups work in Viewport to make them a lot less invasive to the scene tree 2016-01-25 10:30:03 -03:00
Juan Linietsky
9d571d8eac -Fix viewport converting the scren in grayness, fixes #3406 2016-01-22 18:54:43 -03:00
Juan Linietsky
891e31b139 -Some fixes to drag and drop and canvas offset for GUI that were introduced after rewrite 2016-01-19 20:28:20 -03:00
Rémi Verschelde
5d84589e42 Fix build with tools=no
Fixes #3384.
2016-01-19 10:45:12 +01:00
Juan Linietsky
d1bb868a19 -fixed bug related to mouse cursor changes, fixes #3366 2016-01-18 19:49:54 -03:00
Juan Linietsky
72fcb8a35b -Moved all the "root" input handling for GUI from individual Controls to Viewport.
-Should fix several reported bugs when controls don't have a common parent

This may have added new bugs, so please report if so!
2016-01-16 22:41:10 -03:00
Juan Linietsky
1aaf507ffb change intersect_ray function to discriminate pickable objects, fixes #3203 2016-01-10 15:54:57 -03:00
George Marques
5be9ff7b67 Update copyright to 2016 in headers 2016-01-01 11:50:53 -02:00
Rémi Verschelde
d4993b74fc Add missing argument names in GDScript bindings
All classes were reviewed apart from VisualServer for which no argument name is documented at all.
While doing this review, I found quite a few bugs that were fixed either in earlier commits or this one (mostly documentation bugs though, i.e. some arguments were listed at the wrong place).
2015-12-28 02:13:05 +01:00
Juan Linietsky
205634791c fixed stupid bug caused by accidentally removed line before commit 2015-09-20 17:29:36 -03:00
Juan Linietsky
83d9a692be Ability to visually debug geometry visually:
-Visible 2D and 3D Shapes, Polygons, Tile collisions, etc.
-Visible Navmesh and Navpoly
-Visible collision contacts for 2D and 3D as a red point
-Customizable colors in project settings
2015-09-20 13:03:46 -03:00
Juan Linietsky
3936ed882c -Added lookat/get_angle_to functions in 2D, and a demo, closes #1843
-Added get_viewport().get_mouse_pos() to replace Input.get_mouse_pos(), closes #1838
2015-05-12 08:17:09 -03:00
Juan Linietsky
59154cccf9 -Changed Godot exit to be clean.
-Added more debug information on memory cleanliness on exit (if run with -v)
-Fixed several memory leaks, fixes #1731, fixes #755
2015-04-20 19:38:02 -03:00
Juan Linietsky
fdaa2920eb Updated copyright year in all headers 2015-04-18 14:38:54 -03:00
TheoXD
68c2a959dd Bullet shower demo crashed because of dynamic casting in the code for object picking. Making sure the object has an ID greater than 0 before typecasting solves it. 2015-04-03 14:42:05 +02:00
Juan Linietsky
dac2017dee fixes/cleans up
-input now correctly works when using viewport scaling
-added function to get areas/bodies in given point
-added function to get space state directly from world
2015-03-22 09:40:26 -03:00
Juan Linietsky
c6c72a3c37 input events on Area2D is now supported
also added a demo showing how this works
2015-03-22 01:46:18 -03:00
romulox_x
f4312a5076 added option to disable automatic clearing of viewport render buffer 2015-02-21 01:35:06 -08:00
Juan Linietsky
d2f86cc09b fixes to mouse warp
-can warp now from viewport and control, in their respective coordinate
systems
-warp is now local to the window on Windows and OSX.

IF YOU RUN OSX, PLEASE TEST THIS! And make sure it works!, new code is
in OS_OSX::warp_mouse_pos. I don't have OSX so i can't test!
2015-02-14 19:22:06 -03:00
Juan Linietsky
0dbedd18fc SceneMainLoop -> SceneTree
-=-=-=-=-=-=-=-=-=-=-=-=-=-

*YOUR SOURCE MIGHT NOT WORK*
For mor information on fix:
https://github.com/okamstudio/godot/wiki/devel_scene_tree

Other stuff:
-Shower of bullets demo
-Fixes all around
2014-11-05 21:20:42 -03:00
Juan Linietsky
d85b67be53 Bug Fixes
-=-=-=-=-

-Fixed problem with scaling shapes (#827), related to not taking scale in consideration for calculating the moment of inertia
-Added support for multiline strings (or comments) using """
-Save subscene bug, properties not being saved in root node (#806)
-Fix Crash in CollisionPolygon2DEditor (#814)
-Restored Ability to compile without 3D (#795)
-Fix InterpolatedCamera (#803)
-Fix UV Import for OBJ Meshes (#771)
-Fixed issue with modifier gizmos (#794)
-Fixed CapsuleShape gizmo handle (#50)
-Fixed Import Button (not properly working in 3D) (#733)
-Many misc fixes (though no new features)
2014-11-02 11:31:01 -03:00
Juan Linietsky
e82dc40205 -Much improvement to baked light baker
-Fixed many bugs in stretch mode
-Fixes to camera project and unproject as consequence of the above
-added setget to script (documented in script doc)
-more fixes to collada exporter for blender
2014-10-27 22:54:32 -03:00
Hilton Medeiros
f1d9de068c Remove camera check for 2D audio listener. 2014-10-10 11:00:17 -03:00
Juan Linietsky
b24fe3dd20 Huge Amount of BugFix
-=-=-=-=-=-=-=-=-=-=-

-Fixes to Collada Exporter (avoid crash situtions)
-Fixed to Collada Importer (Fixed Animation Optimizer Bugs)
-Fixes to RigidBody/RigidBody2D body_enter/body_exit, was buggy
-Fixed ability for RigidBody/RigidBody2D to get contacts reported and bodyin/out in Kinematic mode.
-Added proper trigger support for 3D Physics shapes
-Changed proper value for Z-Offset in OmniLight
-Fixed spot attenuation bug in SpotLight
-Fixed some 3D and 2D spatial soudn bugs related to distance attenuation.
-Fixed bugs in EventPlayer (channels were muted by default)
-Fix in ButtonGroup (get nodes in group are now returned in order)
-Fixed Linear->SRGB Conversion, previous algo sucked, new algo works OK
-Changed SRGB->Linear conversion to use hardware if supported, improves texture quality a lot
-Fixed options for Y-Fov and X-Fov in camera, should be more intuitive.
-Fixed bugs related to viewports and transparency

Huge Amount of New Stuff:
-=-=-=-=-=-=-=-==-=-=-=-

-Ability to manually advance an AnimationPlayer that is inactive (with advance() function)
-More work in WinRT platform
-Added XY normalmap support, imports on this format by default. Reduces normlmap size and enables much nice compression using LATC
-Added Anisotropic filter support to textures, can be specified on import
-Added support for Non-Square, Isometric and Hexagonal tilemaps in TileMap.
-Added Isometric Dungeon demo.
-Added simple hexagonal map demo.
-Added Truck-Town demo. Shows how most types of joints and vehicles are used. Please somebody make a nicer town, this one is too hardcore.
-Added an Object-Picking API to both RigidBody and Area! (and relevant demo)
2014-10-03 00:10:51 -03:00
Juan Linietsky
f00f4b9296 CollisionPolygon (3D)
Workaround for round() on PC.
2014-09-16 21:19:54 -03:00
Juan Linietsky
8cab401d08 3D Physics Rework, Other Stuff
-=-=-=-=-=-=-=-=-=-=-=-=-=-

3D Physics:
-Fixed "Bounce" parameter in 3D
-Fixed bug affecting Area (sometims it would not detect properly)
-Vehicle Body has seen heavy work
-Added Query API for doing space queries in 3D. Needs some docs though.
-Added JOINTS! Adapted Bullet Joints: and created easy gizmos for setting them up:
   -PinJoint
   -HingeJoint (with motor)
   -SliderJoint
   -ConeTwistJoint
   -Generic6DOFJoint
-Added OBJECT PICKING! based on the new query API. Any physics object now (Area or Body) has the following signals and virtual functions:
    -input_event (mouse or multitouch input over the body)
    -mouse_enter (mouse entered the body area)
    -mouse_exit (mouse exited body area)
   For Area it needs to be activated manually, as it isn't by default (ray goes thru).

Other:

-Begun working on Windows 8 (RT) port. Compiles but does not work yet.
-Added TheoraPlayer library for improved to-texture and portable video support.
-Fixed a few bugs in the renderer, collada importer, collada exporter, etc.
2014-09-15 11:33:30 -03:00
Juan Linietsky
2ee4ac183b Little Bits
-=-=-=-=-=-

-Fixed small bugs all around
-Added ability to show/hide entire sections of the spatial (3D) tree
-WIP new vehicle (not ready yet) based on Bullet
2014-08-14 10:31:38 -03:00
marynate
e253d2010d Fixed #553: Disable 3D nodes for smaller executable 2014-07-03 16:07:11 +08:00
Juan Linietsky
b324ff7ea5 A bit of everything:
-IMA-ADPCM support for samples, this means that sound effects can be compressed and use 4 timess less RAM.
-New 3D import workflow based on Wavefront OBJ. Import single objects as mesh resources instead of full scenes. Many people prefers to work this way. Just like the rest of the imported resources, these are updated in realtime if modified externally.
-Mesh resources now support naming surfaces. This helps reimporting to identify which user-created materials must be kept.
-Several fixes and improvements to SurfaceTool.
-Anti Aliasing added to WorldEnvironment effects (using FXAA)
-2D Physics bodies (RigidBody, KinematicBody, etc), Raycasts, Tilemap, etc support collision layers. This makes easy to group which objects collide against which.
-2D Trigger shapes can now also trigger collision reporting in other 2D bodies (it used to be in Area2D before)
-Viewport render target textures can now be filtered.
-Few fixes in GDscript make it easier to work with static functions and class members.
-Several and many bugfixes.
2014-05-14 01:22:15 -03:00
Juan Linietsky
a4c1fa12a5 heck 2014-04-19 16:46:52 -03:00
Juan Linietsky
0360b454a4 -Fixed viewport stretch bugs
-Fixed input in viewport stretch bugs
-Fixed tilemap pixel overlap (really?)
2014-04-18 11:43:54 -03:00
Juan Linietsky
ec4ef2d2e7 -Added google play services (needed for some stuff)
-Added new screen resizing options, stretch_2d is removed, new much more flexible ones.
-Fixed bug in viewport (can create more instances in 3d-in-2d demo now)
-Can set android permissions and screen sizes manually in the export settings
-Changed export templates extension to .tpz (too many people unzipped the manually..)
-File dialog now ensures that the proper extension is used (will not allow to save without it)
-Fixed bug that made collision exceptions not work in 2D
2014-04-14 22:43:44 -03:00
Juan Linietsky
7ea3e8267a -Fixed a few bugs in Viewport
-Made a few demos using Viewport to show it's true power!
-Fixed some start-up error messages.
2014-04-10 00:18:27 -03:00
Juan Linietsky
ed6d9463d2 -Added ATITC texture support
-Fixed bug of some tabs showing wrong names
-Exported properties for viewport
2014-02-26 10:08:17 -03:00
Juan Linietsky
0b806ee0fc GODOT IS OPEN SOURCE 2014-02-09 22:10:30 -03:00