diff --git a/main.go b/main.go index 70af857..0d03195 100644 --- a/main.go +++ b/main.go @@ -104,6 +104,12 @@ func physics(particleList *[MAXPOINTS]rl.Vector2, particleCount int, particleLis defer wg.Done() // Jede Goroutine arbeitet nur auf Index i → kein Datenkonflikt + for l := 0; l < particleCount; l++ { + if rl.CheckCollisionCircles(particleList[i], *particleRadius, particleList[l], *particleRadius) { + particleSpeed[i] = rl.Vector2Negate(particleSpeed[i]) + } + } + obstacleReflect(currentPositions[i], &particleSpeed[i], obstacles, particleRadius, obstacleCount) newParticleList[i] = rl.Vector2Add( @@ -150,7 +156,7 @@ func main() { rl.EndDrawing() var particleWidth float32 = 300 - var particleHeight float32 = 200 + var particleHeight float32 = 300 var particleColumnCount int = 20 var particleRowCount int = 20 var particleCount int = particleRowCount * particleColumnCount