mirror of
https://github.com/curioustorvald/Terrarum.git
synced 2026-06-20 07:24:06 +09:00
akima interpolation to the WeatherBox
This commit is contained in:
@@ -149,19 +149,21 @@ internal object WeatherMixer : RNGConsumer {
|
||||
weatherbox.initWith(weatherDict["generic01"]!!, 7200L)
|
||||
|
||||
// TEST FILL WITH RANDOM VALUES
|
||||
(0..4).map { takeUniformRand(0f..1f) }.let {
|
||||
weatherbox.windDir.pM1 = it[0]
|
||||
weatherbox.windDir.p0 = it[1]
|
||||
weatherbox.windDir.p1 = it[2]
|
||||
weatherbox.windDir.p2 = it[3]
|
||||
weatherbox.windDir.p3 = it[4]
|
||||
(0..6).map { takeUniformRand(0f..1f) }.let {
|
||||
weatherbox.windDir.pM2 = it[1]
|
||||
weatherbox.windDir.pM1 = it[2]
|
||||
weatherbox.windDir.p0 = it[3]
|
||||
weatherbox.windDir.p1 = it[4]
|
||||
weatherbox.windDir.p2 = it[5]
|
||||
weatherbox.windDir.p3 = it[6]
|
||||
}
|
||||
(0..4).map { takeUniformRand(-1f..1f) }.let {
|
||||
weatherbox.windSpeed.pM1 = currentWeather.getRandomWindSpeed(it[0])
|
||||
weatherbox.windSpeed.p0 = currentWeather.getRandomWindSpeed(it[1])
|
||||
weatherbox.windSpeed.p1 = currentWeather.getRandomWindSpeed(it[2])
|
||||
weatherbox.windSpeed.p2 = currentWeather.getRandomWindSpeed(it[3])
|
||||
weatherbox.windSpeed.p3 = currentWeather.getRandomWindSpeed(it[4])
|
||||
(0..6).map { takeUniformRand(-1f..1f) }.let {
|
||||
weatherbox.windSpeed.pM2 = currentWeather.getRandomWindSpeed(it[1])
|
||||
weatherbox.windSpeed.pM1 = currentWeather.getRandomWindSpeed(it[2])
|
||||
weatherbox.windSpeed.p0 = currentWeather.getRandomWindSpeed(it[3])
|
||||
weatherbox.windSpeed.p1 = currentWeather.getRandomWindSpeed(it[4])
|
||||
weatherbox.windSpeed.p2 = currentWeather.getRandomWindSpeed(it[5])
|
||||
weatherbox.windSpeed.p3 = currentWeather.getRandomWindSpeed(it[6])
|
||||
}
|
||||
}
|
||||
|
||||
@@ -405,8 +407,8 @@ internal object WeatherMixer : RNGConsumer {
|
||||
Vector3(x, y, z)
|
||||
}
|
||||
-1, 3, 7 -> { // z = 0
|
||||
val z = 0.1f
|
||||
val posXscr = FastMath.interpolateLinear(rr, -halfCloudSize, App.scr.width + halfCloudSize)
|
||||
val z = WeatherObjectCloud.worldYtoWorldZforScreenYof0(y)
|
||||
val x = WeatherObjectCloud.screenXtoWorldX(posXscr, Z_LIM)
|
||||
Vector3(x, y, z)
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user