| KUVAUS |
| Tämä funktio on erittäin tärkeä. Se päivittää painovoiman ja liikkeen avaruudessa, joten kutsu sitä pääluupissa. Kaikki objektit joille on asetettu massa osallistuvat päivitykseen. Kuinka asetan massan? Käytä ObjectFloat komentoa. Esim: ObjectFloat planeetta, 100 Minkälainen massan pitäisi olla?
Entä jos haluaisin avaruusaluksen liikkuvan oikein, mutta että painovoima ei siihen vaikuttaisi? Komenna: ObjectInteger obj, 1 Muuttujan gamma arvo vaikuttaa vetovoimaan. Oletuksena on 1.0 |
| KÄYTTÖ |
| UpdateSpace() |
Katso myös: Gravitaatio / painovoima
| ESIMERKKI |
Include "sdk/include/cbGravitationPhysics.cb"
SCREEN 800,600
// Tehdään taustakuva
bgspace = MakeImage(100,100)
DrawToImage bgspace
For i = 1 To 100
Dot Rand(0,99), Rand(0,99)
Next i
DrawToScreen
spacefloor = MakeObjectFloor()
PaintObject spacefloor, bgspace
alus = LoadObject("Media/ship.bmp",72): ObjectFloat alus, .00001
earth = LoadObject("sdk/Media/earth.png"): ObjectFloat earth, 1000
PositionObject alus, 100, 0
SetObjectOrbit(alus,earth)
SetupCollision alus,earth,2,2,2
Repeat
If LeftKey() Then TurnObject alus, 3
If RightKey() Then TurnObject alus, -3
If UpKey() Then ThrustObject(alus,.1)
If DownKey() Then ThrustObject(alus,-.1)
UpdateSpace()
CloneCameraPosition alus
DrawScreen
Forever |