summaryrefslogtreecommitdiff
path: root/core
AgeCommit message (Collapse)Author
2021-07-11[Net] Fix crash when receiving RPC on node without a script.Fabio Alessandrelli
2021-07-11Merge pull request #50362 from timothyqiu/http-eofRémi Verschelde
Fix unicode invalid skip error in AssetLib
2021-07-11Fix unicode invalid skip error in AssetLibHaoyu Qiu
2021-07-11Handle Z_BUF_ERROR in decompress_dynamicHaoyu Qiu
2021-07-10Merge pull request #48622 from Geometror/reimplement-disableable-vsyncHugo Locurcio
2021-07-09Merge pull request #50290 from reduz/redo-instance-bindingsRémi Verschelde
Redo how instance bindings work
2021-07-08Implement Range Iteratorsreduz
This PR implements range iterators in the base containers (Vector, Map, List, Pair Set). Given several of these data structures will be replaced by more efficient versions, having a common iterator API will make this simpler. Iterating can be done as follows (examples): ```C++ //Vector<String> for(const String& I: vector) { } //List<String> for(const String& I: list) { } //Map<String,int> for(const KeyValue<String,int>&I : map) { print_line("key: "+I.key+" value: "+itos(I.value)); } //if intending to write the elements, reference can be used //Map<String,int> for(KeyValue<String,int>& I: map) { I.value = 25; //this will fail because key is always const //I.key = "hello" } ``` The containers are (for now) not STL compatible, since this would mean changing how they work internally (STL uses a special head/tail allocation for end(), while Godot Map/Set/List do not). The idea is to change the Godot versions to be more compatible with STL, but this will happen after conversion to new iterators have taken place.
2021-07-08Redo how instance bindings workreduz
* The harcoded 8 slots are no more and impose limits in the new extension system. * New system is limitless, although it will impose small performance hit with a mutex. * Use a token to request the instance binding. **Warning**: Mono will most likely break as a result of this, will need to be modified to use the new system.
2021-07-06Unify material parameter updatereduz
* Unifies how material parameters are updated. * Single function, easier to maintain. * Updates materials properly when textures change.
2021-07-06Restructure and reimplement vsync optionsHendrik Brucker
-Add a v-sync mode setting which allows to choose between DISABLED, ON, ADAPTIVE and MAILBOX -Removed the V-Sync via Compositor option
2021-07-06Added EditorInspectorPlugin to aid in editing InputEvents in resources and ↵Eric M
shortcuts
2021-07-05Fix Variant tags parsing.bruvzg
2021-07-03[Crypto] Delete mbedtls ctx in deconstructor.Fabio Alessandrelli
Would cause memory leak when the context was `start`ed but not `finish`ed.
2021-07-02Add `get_dead_zone()` method to `InputMap`Nick H
This commit adds a new method to the `InputMap`, allowing the user to get the value of an action's dead zone as a float.
2021-07-01Merge pull request #50057 from reduz/force-string-in-dictionaryRémi Verschelde
Force String as Dictionary key instead of StringName
2021-07-01Force String as Dictionary key instead of StringNamereduz
* Lua table syntax uses named indexing: `{ mykey = myvalue }` * Python style syntax uses string indexing: `{ "mykey" : myvalue }` * Both are incompatible since a StringName key wont fetch a String key, hence confusing. * This PR proposes always using String for indexing at a very minimal performance cost. Always indexing with StringNames will be faster, but they are considerably more expensive to create.
2021-07-01Use PROPERTY_USAGE_NONE instead of 0 for no property usageAaron Franke
Also use const more often.
2021-07-01Merge pull request #50044 from akien-mga/localvector-find-noerrorRémi Verschelde
LocalVector: Don't error if `from` >= `count`
2021-07-01Merge pull request #50026 from lyuma/callable_is_validRémi Verschelde
Add Callable.is_valid() analogous to FuncRef.is_valid() from 3.x
2021-07-01LocalVector: Don't error if `from` >= `count`Rémi Verschelde
Vector handles this silently by returning -1, and we should do the same here. Otherwise we get errors when calling `find()` on e.g. a LocalVector of size 0, while `find()` is expected to always work (if the parameters are invalid then it doesn't find anything, so -1). Fixup to #49925.
2021-07-01Add Callable.is_valid() analogous to FuncRef.is_valid() from 3.xLyuma
2021-07-01Merge pull request #50018 from fire/port-falseRémi Verschelde
Network port comparison is always false
2021-06-30Fix editor suffixes and degrees conversionreduz
* Functions to convert to/from degrees are all gone. Conversion is done by the editor. * Use PROPERTY_HINT_ANGLE instead of PROPERTY_HINT_RANGE to edit radian angles in degrees. * Added possibility to add suffixes to range properties, use "min,max[,step][,suffix:<something>]" example "0,100,1,suffix:m" * In general, can add suffixes for EditorSpinSlider Not covered by this PR, will have to be addressed by future ones: * Ability to switch radians/degrees in the inspector for angle properties (if actually wanted). * Animations previously made will most likely break, need to add a way to make old ones compatible. * Only added a "px" suffix to 2D position and a "m" one to 3D position, someone needs to go through the rest of the engine and add all remaining suffixes. * Likely also need to track down usage of EditorSpinSlider outside properties to add suffixes to it too.
2021-06-30Network port comparison is always falseK. S. Ernest (iFire) Lee
error: comparison is always false due to limited range of data type [-Werror=type-limits] ERR_FAIL_COND_V_MSG(p_port < 0 || p_port > 65535, ERR_INVALID_PARAMETER, "The local port number must be between 0 and 65535 (inclusive).");
2021-06-29Improve RID_Owner memory usagereduz
* Ability to allocate empty objects in RID_Owner, so RID_PtrOwner is not needed in most cases. * Improves cache usage, as objects are now allocated together * Should improve performance in 2D rendering
2021-06-29Merge pull request #49925 from RicardRC/FindFromNopRémi Verschelde
Make use of variable "from" in local_vector find() function.
2021-06-29Use unused from in local vector find function.Ricard Rovira
2021-06-29Merge pull request #49905 from pfertyk/issue-46480-image-compress-crashes-godotRémi Verschelde
Validate image formats, check if resize_to_po2 failed
2021-06-29Implement painting properties over TileSetsGilles Roudière
2021-06-28Validate image formats, check if resize_to_po2 failedPaweł Fertyk
2021-06-27Fix Image.adjust_bcs crash when image format is invalidHaoyu Qiu
2021-06-25Implement native extension systemreduz
* Deprecates GDNative in favor of a simpler, lower level interface. * New extension system allows registering core engine classes. * Simple header interface in gdnative_interace.h
2021-06-24Merge pull request #49583 from timothyqiu/texture-crashRémi Verschelde
Fix crash when freeing GradientTexture and NoiseTexture
2021-06-23[Net] Makes HTTPClient a custom instance class.Fabio Alessandrelli
2021-06-23[Net] Unify HTTPClient request and request_raw.Fabio Alessandrelli
2021-06-21Improved some error messages (from ERR_FAIL_*) in Object.Eric M
2021-06-20Use mouse and joypad enums instead of plain integersAaron Franke
Also MIDIMessage
2021-06-20Move many input enums to their own fileAaron Franke
2021-06-20Merge pull request #48359 from Calinou/add-engine-print-error-propertyRémi Verschelde
2021-06-19Rename `instance()`->`instantiate()` when it's a verbLightning_A
2021-06-20Merge pull request #48804 from EricEzaM/scripting-multi-error-supportRémi Verschelde
Added support for scripts reporting multiple errors to ScriptTextEditor
2021-06-20Merge pull request #48080 from aaronfranke/real-serializationRémi Verschelde
Binary serialization for reals
2021-06-20Merge pull request #48696 from madmiraal/fix-48692Rémi Verschelde
Fix `InputMap.action_erase_event()` failing to erase events correctly.
2021-06-19Merge pull request #44806 from madmiraal/consolidate_jsonRémi Verschelde
Consolidate JSON, JSONParseResults and JSONParser into JSON
2021-06-19Added support for scripts reporting multiple errors to ScriptTextEditorEric M
Scripts can now report multiple errors to the scripting editors in the engine. UI elements were added to support multiple errors.
2021-06-19Consolidate JSON, JSONParseResults and JSONParser into JSONMarcel Admiraal
Renames JSON.parse_string() to parse() Renames JSON.decode_data() to stringify()
2021-06-19Expose OS data directory getter methodsHugo Locurcio
This can be used by editor plugins and non-game applications to store data in the correct directories according to the XDG Base Directory specification.
2021-06-19Merge pull request #49287 from reduz/expose-variant-internal-bindersRémi Verschelde
Make some Variant internal functions public.
2021-06-18Merge pull request #49659 from LightningAA/string-valid-integer-to-intRémi Verschelde
2021-06-18Merge pull request #44156 from aaronfranke/quat-angle-toRémi Verschelde
Add Quaternion angle_to method