summaryrefslogtreecommitdiff
path: root/servers/visual/visual_server_canvas.cpp
AgeCommit message (Collapse)Author
2019-04-22Don't try to statically allocate 2x 8193 pointersHein-Pieter van Braam-Stewart
Maximum stack size is only 8KiB, this will try to allocate 8193 * sizeof(void*) * 2 = 131088 bytes on the stack. This causes a crash in some cases.
2019-04-19Merge pull request #28200 from bojidar-bg/28115-ysort-breaks-shaderRémi Verschelde
Fix nested YSort breaking "Use parent material"
2019-04-19Added ability for multiple images to be imported as an atlasJuan Linietsky
This adds support for groups in the import system, which point to a single file. Add property hint for saving files in file field
2019-04-19Fix nested YSort breaking use_parent_materialBojidar Marinov
Fixes #28115
2019-04-09Do not YSort canvas items that are not visibleBojidar Marinov
Fixes an issue with nested YSorts not regarding visibility
2019-04-06Merge pull request #25624 from nekomatata/texture-rect-flipRémi Verschelde
Add ability to flip TextureRect horizontally or vertically
2019-04-05Ability to make CanvasLayers have pseudo 3D depth.Juan Linietsky
2019-04-03Add ability to flip TextureRect horizontally or verticallyPouleyKetchoupp
2019-03-03Fix style issues from recent commitsRémi Verschelde
2019-03-02Clean up and fix some situations where triangulation may fail, closes #26366Juan Linietsky
2019-02-20Add -Wshadow=local to warnings and fix reported issues.marxin
Fixes #25316.
2019-02-12Drivers, main, servers: Ensure classes match their header filenameRémi Verschelde
Renamed: - `drivers/alsamidi/alsa_midi.h` -> `midi_driver_alsamidi.h` (same for `coremidi` and `winmidi`) - `main/timer_sync.h` -> `main_timer_sync.h` - `servers/visual/visual_server_global.h` -> `visual_server_globals.h`
2019-01-21Cleanup after @reduz :)Rémi Verschelde
Fixes #25172.
2019-01-17Fixes to 2D lights, closes #24750Juan Linietsky
2019-01-09Fix a nested ysort invalid memory read againBojidar Marinov
Fixes #24755
2019-01-01Update copyright statements to 2019Rémi Verschelde
Happy new year to the wonderful Godot community!
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