summaryrefslogtreecommitdiffstats
path: root/scene/3d/cpu_particles.h
Commit message (Collapse)AuthorAgeFilesLines
* Renamed 2D and 3D nodes to make their types explicitJuan Linietsky2020-03-271-298/+0
| | | | Fixes #30736.
* Reimplement Mutex with C++'s <mutex>Pedro J. Estébanez2020-02-261-1/+1
| | | | | | | | | | | | | | | | Main: - It's now implemented thanks to `<mutex>`. No more platform-specific implementations. - `BinaryMutex` (non-recursive) is added, as an alternative for special cases. - Doesn't need allocation/deallocation anymore. It can live in the stack and be part of other classes. - Because of that, it's methods are now `const` and the inner mutex is `mutable` so it can be easily used in `const` contexts. - A no-op implementation is provided if `NO_THREADS` is defined. No more need to add `#ifdef NO_THREADS` just for this. - `MutexLock` now takes a reference. At this point the cases of null `Mutex`es are rare. If you ever need that, just don't use `MutexLock`. - Thread-safe utilities are therefore simpler now. Misc.: - `ScopedMutexLock` is dropped and replaced by `MutexLock`, because they were pretty much the same. - Every case of lock, do-something, unlock is replaced by `MutexLock` (complex cases where it's not straightfoward are kept as as explicit lock and unlock). - `ShaderRD` contained an `std::mutex`, which has been replaced by `Mutex`.
* PoolVector is gone, replaced by VectorJuan Linietsky2020-02-181-13/+13
| | | | | Typed `PoolTypeArray` types are now renamed `PackedTypeArray` and are sugar for `Vector<Type>`.
* Validate input in (CPU)Particles set_emission_shape()Rémi Verschelde2020-01-161-0/+1
| | | | | | Fixes #29777. Co-authored-by: Cameron Reikes <cameronreikes@gmail.com>
* Update copyright statements to 2020Rémi Verschelde2020-01-011-2/+2
| | | | | | | | | | | Happy new year to the wonderful Godot community! We're starting a new decade with a well-established, non-profit, free and open source game engine, and tons of further improvements in the pipeline from hundreds of contributors. Godot will keep getting better, and we're looking forward to all the games that the community will keep developing and releasing with it.
* Fixed delay when CPUParticles & CPUParticles2D start being emittedPouleyKetchoupp2019-10-201-0/+1
| | | | | | Particles were processed only on the next frame after the emission started, causing a one frame delay in rendering. Now the first process cycle is started during the same frame, which makes them consistent with Particles & Particles2D. Fixes #32890
* Remove redundant author doc commentsIAmActuallyCthulhu2019-08-121-4/+0
|
* added individual particle random lifetimeclayjohn2019-07-141-0/+4
|
* Merge pull request #26613 from KoBeWi/direction_of_particlesRémi Verschelde2019-07-021-0/+4
|\ | | | | Add a Direction property to ParticlesMaterial
| * Add a Direction property to ParticlesMaterialTomasz Chabora2019-06-261-0/+4
| |
* | Some code changed with Clang-Tidyqarmin2019-06-261-1/+1
| |
* | Merge pull request #29700 from clayjohn/cpuparticles_transform_bugRémi Verschelde2019-06-161-1/+3
|\ \ | | | | | | Fix CPU particles bug with local_coords and transform
| * | fix CPU particles bug with local_coords and transformclayjohn2019-06-141-1/+3
| | |
* | | Implement missing orbit velocity for CPUParticles and CPUParticles2DRémi Verschelde2019-06-131-1/+1
|/ / | | | | | | | | | | | | The relevant code was copied from (GPU) ParticlesMaterial but commented out initially, and never ported. Closes #29580.
* / Prevent invisible/inactive cpuparticles to redraw(3d)Daeil Kim2019-03-091-0/+3
|/
* Update copyright statements to 2019Rémi Verschelde2019-01-011-2/+2
| | | | Happy new year to the wonderful Godot community!
* Remove animation loop from ParticlesMaterial + improvements to CPUParticles2DJFonS2018-11-041-2/+0
| | | | | | | | 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.
* Fixes to CPU particles for performance and avoiding NaNs.Juan Linietsky2018-10-081-0/+2
|
* Make core/ includes absolute, remove subfolders from include pathRémi Verschelde2018-09-121-1/+1
| | | | | | This allows more consistency in the manner we include core headers, where previously there would be a mix of absolute, relative and include path-dependent includes.
* Move ParticlesMaterial code to its own resource fileRémi Verschelde2018-09-041-2/+1
| | | | | | | | | It's shared by both 2D and 3D particles (+ CPU ones), so it makes sense to have as a common resource. It also allowed to disable compilation of Particles (3D) when using 'disable_3d'. Also cleaned up includes in SpatialEditorGizmos and some other places, as well as dropped dead code in material_editor_plugin.cpp.
* Add missing copyright headersRémi Verschelde2018-08-291-0/+30
|
* Add option to convert Particles to CPUParticlesJuan Linietsky2018-07-071-0/+2
|
* Support for CPU based particles, which aids compatibility with OpenGL ES 2.0Juan Linietsky2018-07-061-0/+256