All Projects → dennisppaul → teilchen

dennisppaul / teilchen

Licence: LGPL-2.1 license
a simple physics library based on particles, forces, constraints and behaviors

Programming Languages

java
68154 projects - #9 most used programming language
processing
702 projects
CSS
56736 projects
javascript
184084 projects - #8 most used programming language

Projects that are alternatives of or similar to teilchen

particle-emitter
A particle system for PixiJS
Stars: ✭ 709 (+3122.73%)
Mutual labels:  particles
GPU-Fog-Particles
Textureless fog particles using a highly customizable shader to attenuate noise values.
Stars: ✭ 303 (+1277.27%)
Mutual labels:  particles
Mirheo
Computational Microfluidics
Stars: ✭ 34 (+54.55%)
Mutual labels:  particles
v2
🧪 Personal website built using React!
Stars: ✭ 113 (+413.64%)
Mutual labels:  particles
party-js
A JavaScript library to brighten up your user's site experience with visual effects!
Stars: ✭ 858 (+3800%)
Mutual labels:  particles
BeatSaber Tweaks55
A collection of various tweaks which by themselves are too simple for their own designated mods
Stars: ✭ 26 (+18.18%)
Mutual labels:  particles
ParticleEditor
Particle editor for SFML/Thor based applications
Stars: ✭ 14 (-36.36%)
Mutual labels:  particles
FlockModifier
A Cinema 4D plugin that implements a flocking/swarming simulation for the C4D standard particle system using a distributed behavioral model.
Stars: ✭ 25 (+13.64%)
Mutual labels:  particles
Interactive-Image-Particles
A Simple Javascript library that use image data to create a small interactive particles network.
Stars: ✭ 24 (+9.09%)
Mutual labels:  particles
ParticleGround-Portfolio
A minimalistic particle theme landing page template. ⚛️
Stars: ✭ 335 (+1422.73%)
Mutual labels:  particles
MultipleScattering.jl
A Julia library for simulating, processing, and plotting multiple scattering of waves.
Stars: ✭ 35 (+59.09%)
Mutual labels:  particles
reactparticles.js
Independently configurable react component for particles.js
Stars: ✭ 24 (+9.09%)
Mutual labels:  particles
Corpuscles.jl
Julia package for particle physics
Stars: ✭ 25 (+13.64%)
Mutual labels:  particles
ping-vue-admin
用vue做的一个后台管理系统模板,可以用此项目作为一个脚手架工程
Stars: ✭ 50 (+127.27%)
Mutual labels:  particles
fireworks-js
🎆 A simple fireworks library! Ready to use components available for React, Vue 3, Svelte, Angular, Preact, Solid, and Web Components.
Stars: ✭ 550 (+2400%)
Mutual labels:  particles
TUIO11 Processing
Processing TUIO 1.1 client
Stars: ✭ 13 (-40.91%)
Mutual labels:  processing-library
olwind
Wind layers for OpenLayers
Stars: ✭ 22 (+0%)
Mutual labels:  particles
jquery-particles-burst
Lightweight particles generator
Stars: ✭ 21 (-4.55%)
Mutual labels:  particles
decaylanguage
Package to parse decay files, describe and convert particle decays between digital representations.
Stars: ✭ 34 (+54.55%)
Mutual labels:  particles
DynamicalBilliards.jl
An easy-to-use, modular, extendable and absurdly fast Julia package for dynamical billiards in two dimensions.
Stars: ✭ 97 (+340.91%)
Mutual labels:  particles

teilchen

teilchen showreel

  • teilchen is a simple physics library based on particles, forces, constraints and behaviors.
  • teilchen is also a collection of a variety of concepts useful for modeling with virtual physics and behaviors. nothing new, nothing fancy, except maybe for the combination of forces ( external forces ) and behavior ( internal forces ).
  • teilchen is also a processing.org-style library.
  • teilchen is a german word and a synonym for Partikel which translates to the english particle.

the library is hosted on github teilchen.

anatomy of a physic-based particle system

particles

there are a few different kinds of particles. the most simple particle has just a handful of properties like position, velocity, acceleration, mass, and radius. other particles have additional properties like a limited lifetime or individual behaviors.

forces

forces act on particles ( or rather on their acceleration ). one of the most obvious forces is Gravity which pulls particles into a specific direction. but there are all kinds of other forces too like Attractor or TriangleDeflector. some forces affect all particles in a system, while others only act on specific particles. one prominent example of the latter is the Spring that tries to maintain a fixed distance between two particles.

behaviors

a behavior is a special kind of force. it is an internal force moving the particle from within and it affects a single particle only. an common example of a behavior is a Motor which drives a particle into a specific direction. another example is the Seek behavior which constantly drives a particle towards a certain position.

constraints

constraints act on particle positions outside of a physical simulation. constraints manipulate the particles’ positions to satifsy specific constraints like for example keeping an equal distance between two particles or keeping particles within a volume. although constraints might seem similar to forces, it is important to know that forces can only accelerate particles while contraints directly teleport particles which as a rule of thumb is more effective but less realistic.

integrators

integrators are used to integrate acceleration and velocity to calculate the new position. the most well-known is the euler integrator, but there are also optimized versions like runge-kutta or midpoint or even slightly different concepts like verlet. integrators can affect the precision and stability of a particle simulation.

anatomy of a particle

moving a particle ( with forces )

reference

generated reference of the library

vectors

although explaining vectors ( and linear algebra ) is beyond the scope of this library, it can be very helpful to understand the basics of vector operations. the following slides aim to explain a few basics:

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].