molekül bug gefixxt

This commit is contained in:
any
2026-05-10 23:40:09 +02:00
parent 94b3bb195c
commit 70341cb133
+5 -5
View File
@@ -83,15 +83,15 @@ func obstacleReflect(particlePos rl.Vector2, particleSpeed *rl.Vector2, obstacle
func physics(particleList *[MAXPOINTS]rl.Vector2, particleCount int, particleListKey *sync.Mutex, obstacles *([MAXOBSTACLES](*quad)), particleRadius *float32, obstacleCount *int) { func physics(particleList *[MAXPOINTS]rl.Vector2, particleCount int, particleListKey *sync.Mutex, obstacles *([MAXOBSTACLES](*quad)), particleRadius *float32, obstacleCount *int) {
var particleSpeed = [MAXPOINTS]rl.Vector2{{0, -300}} //pixel pro Sekunde var particleSpeed = [MAXPOINTS]rl.Vector2{{0, -300}} //pixel pro Sekunde
var timeIncrement float64 = 0.01 var timeIncrement float64 = 0.03
var gravity rl.Vector2 = rl.Vector2{0, 300} var gravity rl.Vector2 = rl.Vector2{0, 0 * 300}
var newParticleList [MAXPOINTS]rl.Vector2 var newParticleList [MAXPOINTS]rl.Vector2
var newParticleSpeed [MAXPOINTS]rl.Vector2 var newParticleSpeed [MAXPOINTS]rl.Vector2
var particleFriction float32 = 0.85 var particleFriction float32 = 0.85
var particleLadung int = -1 var particleLadung int = -1
var masse float32 = 0.1 var masse float32 = 0.1
var electrostaticRange float32 = 50 //range wiie weit die kraftwirkung ist var electrostaticRange float32 = 50 //range wiie weit die kraftwirkung ist
var electroStrength float32 = 5000 var electroStrength float32 = 4000
for j := float64(0); j < 50; { for j := float64(0); j < 50; {
var startTime time.Time = time.Now() var startTime time.Time = time.Now()
@@ -125,10 +125,10 @@ func physics(particleList *[MAXPOINTS]rl.Vector2, particleCount int, particleLis
overlap := minDist - dist overlap := minDist - dist
currentPositions[i] = rl.Vector2Add(currentPositions[i], rl.Vector2Scale(colNormal, overlap*0.5)) currentPositions[i] = rl.Vector2Add(currentPositions[i], rl.Vector2Scale(colNormal, overlap*0.5))
particleSpeed[i] = rl.Vector2Scale(rl.Vector2Reflect(particleSpeed[i], colNormal), particleFriction) particleSpeed[i] = rl.Vector2Add(rl.Vector2Scale(rl.Vector2Reflect(particleSpeed[i], colNormal), particleFriction), rl.Vector2Scale(colNormal, 12))
} }
if dist < electrostaticRange { if dist < electrostaticRange {
var tempForce rl.Vector2 = rl.Vector2Scale(diff, float32(particleLadung)*(electroStrength/(dist*dist*dist))) var tempForce rl.Vector2 = rl.Vector2Scale(diff, -float32(particleLadung)*(electroStrength/(dist*dist*dist)))
electroForce = rl.Vector2Add(electroForce, tempForce) electroForce = rl.Vector2Add(electroForce, tempForce)
} }
newParticleSpeed[i] = rl.Vector2Add( newParticleSpeed[i] = rl.Vector2Add(