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 |