summaryrefslogtreecommitdiff
path: root/servers/visual/visual_server_canvas.cpp
AgeCommit message (Collapse)Author
2018-12-04Fix error when adding children to YSortBojidar Marinov
If it weren't for this warning, it would have crashed in release builds. Fix #23889, fixup 6b8d6e3b07c83da1c365f9ad79e84e5147ec26f7
2018-11-21Fix YSort crash when removing a childBojidar Marinov
Fixup of 8e4837f35778e917370e802c167ce1fbd07b068c Fixes #23775
2018-11-12Merge pull request #23407 from bojidar-bg/3281-ysort-recursiveRémi Verschelde
Y-Sort children together in nested YSorts
2018-11-04Remove animation loop from ParticlesMaterial + improvements to CPUParticles2DJFonS
Remove animation loop from ParticlesMaterial and move it to SpatialMaterial for 3D particles and Particles2D for the 2D case. Added animation to CPUParticles2D as well as the "Convert to CPUParticles2D" to the PAarticles2D menu.
2018-10-30Y-Sort children together in nested YSortsBojidar Marinov
Closes #3281
2018-10-19Fixing warnings generated by MSVCDualtagh Murray
Fixes #22684.
2018-08-29Ported CPU particles to 2DJuan Linietsky
2018-07-29Remove pointless check for no texture, fixes #7298Juan Linietsky
2018-07-26Reduce unnecessary COW on Vector by make writing explicitHein-Pieter van Braam
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-05-03Skeleton for 2D WIPJuan Linietsky
2018-03-19Fix crash in `canvas_item_add_polyline` when passing more points than colorsrobfram
When `p_points.size() > p_colors.size()`, it crashed with invalid array access to `p_colors`. Also, when `p_colors` was an empty `Vector` it crashed due a missing `else` checking the `size` condition, as the code handling that special case exists. This PR fixes the missing `else` for `p_colors.size == 0` and, following the `canvas_item_add_multiline` spirit, it only uses the first color for the whole polyline if points and colors differ in size. Fix #17621.
2018-02-212D Skeletons WORK IN PROGRESSJuan Linietsky
2018-02-21Add base support for 2D meshes in Godot, including Sprite -> Mesh2D conversion.Juan Linietsky
2018-01-05Add missing copyright headers and fix formattingRémi Verschelde
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-04Merge pull request #15191 from Jerome67000/z_renamingRémi Verschelde
renames "z" Node2D property to "z_index"
2018-01-03#15078 renamed "z" -> "z_index" property in Node2DJerome67000
2018-01-01Update copyright statements to 2018Rémi Verschelde
Happy new year to the wonderful Godot community!
2017-12-17Cleanup some #if 0'd codeRémi Verschelde
2017-12-09-Ability to and unwrap lightmap coordinates on importJuan Linietsky
-Added unwrap functionality to Mesh -Ability to display and debug mesh UVs -Added multiline draw, so it's easier and faster to draw UVs -Many fixes to SurfaceTool -Fixes to Thekla Unwrap, but it's a piece of ass and it keeps crashing. Will have to go away
2017-11-25Made Vector::ptrw explicit for writing, compiler was sometimes using the ↵Juan Linietsky
wrong function, leading to unnecesary copy on writes and reduced performance.
2017-08-28Disable antialiasing for CanvasItem triangle arraysRémi Verschelde
Fixes #10461 and supersedes #10645 as suggested by @bruvzg.
2017-08-28Merge pull request #10676 from hpvb/speedup-_render_canvas_item_treeRémi Verschelde
Use memset to zero z_list
2017-08-27Use HTTPS URL for Godot's website in the headersRémi Verschelde
2017-08-27Use memset to zero z_listHein-Pieter van Braam
Using gprof I found the engine spending 10 - 20% of time in the _render_canvas_item_tree function. The function profiles as using about 0.09ms. Swapping the loop with two memset() calls reduces the time spent in this function a lot, and the time per call to about 0.02ms. Likewise the render_canvas function was using ~10% of time, replacing the loop there dropped per-call time from 0.22ms to 0.18ms.
2017-08-26Added/Fixed null pointer checksWilson E. Alvarez
2017-08-19Added polygon antialiasing, but it does not work on nvidia. Will have to try ↵Juan Linietsky
something else..
2017-08-17Add closest_power_of_2 func and implement mix_rate/latency on OS XMarcelo Fernandez
2017-08-16Synchronize parameter names in definition and declarationTwistedTwigleg
Fixes #10244.
2017-06-30-Many fixes to VisualScript, fixed property names, etc.Juan Linietsky
-Added ability to set/get a field in GetSet, as well as assignment ops -Added a Select node -Fixed update bugs related to variable list and exported properties, closes #9458
2017-06-22Order of 2D nodes in tree affects drawing properly again.Juan Linietsky
2017-06-212D GPU Particles working..Juan Linietsky
2017-06-18Texture rect_region drawing now clamps UV to avoid bleeding. This avoids ↵Juan Linietsky
scenarios like single-texture tilemap tiles leaking pixels to the next tile when filter is enabled on it.
2017-06-17Add normalmap support for drawing in all low level primitives. Only added ↵Juan Linietsky
support in Sprite so far.
2017-06-13-Fixed occluder rendering, closes #8560Juan Linietsky
-Ability to smooth out 2D shadow filters
2017-06-05Fix build errorPoommetee Ketson
2017-06-04renamed all Rect2.pos to Rect2.positionalexholly
2017-04-09-Fix eternal black screen on WindowsJuan Linietsky
-Disabled warnings on windows, need to properly set up warnings
2017-04-08Add "Godot Engine contributors" copyright lineRémi Verschelde
2017-03-05A Whole New World (clang-format edition)Rémi Verschelde
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-05Add a bunch of missing Godot headers in own filesRémi Verschelde
2017-01-16Style: Fix statements ending with ';;'Rémi Verschelde
2017-01-14Style: Fix whole-line commented codeRémi Verschelde
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-11Type renames:Juan Linietsky
Matrix32 -> Transform2D Matrix3 -> Basis AABB -> Rect3 RawArray -> PoolByteArray IntArray -> PoolIntArray FloatArray -> PoolFloatArray Vector2Array -> PoolVector2Array Vector3Array -> PoolVector3Array ColorArray -> PoolColorArray
2017-01-07Memory pool vectors (DVector) have been enormously simplified in code, and ↵Juan Linietsky
renamed to PoolVector
2016-10-03Begining of GLES3 renderer:Juan Linietsky
-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