Commit graph

34 commits

Author SHA1 Message Date
Hein-Pieter van Braam 0e29f7974b Reduce unnecessary COW on Vector by make writing explicit
This commit makes operator[] on Vector const and adds a write proxy to it.  From
now on writes to Vectors need to happen through the .write proxy. So for
instance:

Vector<int> vec;
vec.push_back(10);
std::cout << vec[0] << std::endl;
vec.write[0] = 20;

Failing to use the .write proxy will cause a compilation error.

In addition COWable datatypes can now embed a CowData pointer to their data.
This means that String, CharString, and VMap no longer use or derive from
Vector.

_ALWAYS_INLINE_ and _FORCE_INLINE_ are now equivalent for debug and non-debug
builds. This is a lot faster for Vector in the editor and while running tests.
The reason why this difference used to exist is because force-inlined methods
used to give a bad debugging experience. After extensive testing with modern
compilers this is no longer the case.
2018-07-26 00:54:16 +02:00
Benedikt Bär 7792dfe554 Fix compressor audio effect sidechain selection 2018-03-21 22:45:30 +01:00
Poommetee Ketson 5a26e0786c AudioEffectReverb: max predelay_feedback to 0.98 2018-01-31 00:19:07 +07:00
Bojidar Marinov 9b8e8b2220
Bind many more properties to scripts
Notable potentially breaking changes:
- PROPERTY_USAGE_NOEDITOR is now PROPERTY_USAGE_STORAGE | PROPERTY_USAGE_NETWORK, without PROPERTY_USAGE_INTERNAL
- Some properties were renamed, and sometimes even shadowed by new ones
- New getter methods (some virtual) were added
2018-01-12 00:58:14 +02:00
Rémi Verschelde e4213e66b2 Add missing copyright headers and fix formatting
Using `misc/scripts/fix_headers.py` on all Godot files.
Some missing header guards were added, and the header inclusion order
was fixed in the Bullet module.
2018-01-05 01:22:23 +01:00
Rémi Verschelde b50a9114b1 Update copyright statements to 2018
Happy new year to the wonderful Godot community!
2018-01-01 14:40:47 +01:00
Rémi Verschelde 13c2ff9320 Style: Apply new clang-format 5.0 style to all files 2017-12-07 08:02:00 +01:00
Juan Linietsky bc2e8d99e5 Made Vector::ptrw explicit for writing, compiler was sometimes using the wrong function,
leading to unnecesary copy on writes and reduced performance.
2017-11-25 00:09:40 -03:00
Poommetee Ketson 2449d21671 AudioEffectFilter: lowercase dB property to db 2017-10-22 11:36:43 +07:00
Indah Sylvia ffca222d17 Fixed Voice_Count issues in AudioEffectChorus:
- Setting voice_count value to 4 (MAX_VOICES) is now allowed
- Fixed slider glitch on setting voice_count value
2017-09-25 20:46:52 +07:00
Poommetee Ketson 09800ac650 AudioEffectLimiter: fix wrong soft_clip_ratio getter 2017-09-25 19:41:32 +07:00
Maxim Sheronov 0fffa45158 Fix enums bindings
Add missed bindings for enums
Move some enums to class to have correct output of api.json
2017-09-13 20:57:07 +03:00
Hein-Pieter van Braam b2a38854fd Fix unused variable warnings
The forth in my quest to make Godot 3.x compile with -Werror on GCC7
2017-09-08 15:03:53 +02:00
Hein-Pieter van Braam f9467ec1ea Fix signed and unsigned comparisons
The first in my quest to make Godot 3.x compile with -Werror on GCC7
2017-09-01 08:13:12 +02:00
Rémi Verschelde bd282ff43f Use HTTPS URL for Godot's website in the headers 2017-08-27 14:16:55 +02:00
TwistedTwigleg 00f6c85928 Synchronize parameter names in definition and declaration
Fixes #10244.
2017-08-16 17:22:23 +02:00
Poommetee Ketson 2fd204c35e Refactor 'treshold' to 'threshold' 2017-07-08 22:24:56 +07:00
Rémi Verschelde df61dc4b2b Add "Godot Engine contributors" copyright line 2017-04-08 00:11:42 +02:00
Rémi Verschelde debeee56f7 Fix typos in source code using codespell
From https://github.com/lucasdemarchi/codespell
2017-03-24 21:45:31 +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 e1c1d7d1d7 Add a bunch of missing Godot headers in own files 2017-03-05 15:47:28 +01: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
sanikoyes 16b3973c75 Fix msvc compile error 2017-02-07 15:44:46 +08:00
Ray Koopa ad3e1a9067 Use constants from math_funcs rather than unstandardized C++ constants. 2017-01-24 19:24:55 +01:00
Juan Linietsky 0ff37cff62 Added audio bus phaser effect, welcome to the 70s, baby! 2017-01-23 18:37:14 -03:00
Juan Linietsky cff80bb1cc Pretty high quality pitch Shifting effect using smbPitchShift 2017-01-23 01:45:43 -03:00
Juan Linietsky 4d9bc8b00c Added Audio Limiter bus effect, and sidechain ability to compressor. 2017-01-22 20:39:53 -03:00
Juan Linietsky 4d944b4996 Simple to use compressor effect 2017-01-22 18:18:56 -03:00
Juan Linietsky 2d8e765aab Delay sound effect 2017-01-22 15:14:45 -03:00
Juan Linietsky eda739f414 Added new Audio Bus Chorus effect.
Added new Audio Bus Panner effect.
2017-01-22 11:19:56 -03:00
Juan Linietsky fac52f5bd8 Added BUS effect, Stereo Enhancer 2017-01-21 23:14:30 -03:00
Juan Linietsky 63fa5486a4 distortion effect 2017-01-21 20:57:48 -03:00
Juan Linietsky 0aa7242624 WIP new AudioServer, with buses, effects, etc. 2017-01-21 19:01:00 -03:00