Jakie są parametry ciał w Corona
Obiektom w grze możemy przypisać różne właściwości od statycznych przez kinematyczne aż po dynamiczne. Co oznacza każdy z nich? Spróbujemy to wyjaśnić na przykładzie. To zagadnienie jest kluczowe w różnego rodzaju grach 2d. Zapraszamy do lektury.
Powróćmy do naszego kodu i go nieco rozbudujmy a mianowicie dodamy jeden prostokąt, który będzie symulował podłogę o którą nasza piłeczka będzie się mogła odbić.
Wyglądać to będzie mniej więcej tak jak obok. |
local physics = require("physics")
physics.start()
local pilka_plazowa_mala = display.newImage("pilka_plazowa_mala.png")
local podloze = display.newRect(0,800, 600, 50)
physics.addBody(pilka_plazowa_mala, {density=1, friction=0.5, bounce=0.3})
physics.addBody(podloze, {density=1, friction=0.5, bounce=0.3})
podloze.bodyType = "static"
- Dokładamy zatem newRect w punkcie x=0 a y=800 o szerokości 600pikseli i wysokości 50 pikseli
- Dodatkowo nasz prostokąt nazwany podloze dodajemy do silnika fizyki gry poleceniem addBody
- Kolejną rzeczą do omówienia jest nadanie parametru static naszej podłodze, dzięki temu nie będzie ona podlegała grawitacji.
Czym są właściwości statyczne, dynamiczne i kinematyczne?
Statyczne
Gdy nadamy obiektom cechę statyczności wówczas nie będą one podlegały grawitacji czyli niewzruszenie będą tkwiły w tym miejscu w którym się zdecydowaliśmy od początku umieścić. Czyli np. ustawiamy podłogę na dole tabletu przypisując im współrzędne x i y i nawet po dodaniu tej podłogi do silnika nie zacznie ona spadać w otchłań. Pamiętajmy, że ciała dynamiczne mogą się zderzać ze statycznimi i powodować kolizje, ale o tym w jednym z następnych artykułów. Ciało statyczne zachowuje się jakby miało nieskończoną masę. Wpada w kolizję z dynamicznymi ciałami a nie z innymi statycznymi i kinematycznymi.
Dynamiczne
Kolejny model to ciało dynamiczne. Te obiekty, jeśli ustawimy grawitację dodatnią to wówczas zaczną one natychmiast spadać aż spadną na coś statycznego lub odbiją się od innego ciała dynamicznego/kinematycznego/statycznego po czym znów zaczną spadać. Podobnie tak jak to jest w świecie który nas otacza - to co nam wypadnie z ręki może nam spaść na stopę. Auuuuuć!
Kinematyczne
Ciało kinematyczne natomiast może się zderzać z ciałem dynamicznym jednak nie z innym kinematycznym czy statycznym. Nie podlega takim siłom jak grawiacja.
Czytaj dalej: Fizyka w grach 2d - Android
Warning: include_once(includes/rss_fetch.php) [function.include-once]: failed to open stream: No such file or directory in /home/ekoinst/domains/pcwiedza.pl/public_html/tworzenie-gier/includes/funkcje.php on line 548
Warning: include_once() [function.include]: Failed opening 'includes/rss_fetch.php' for inclusion (include_path='.:/opt/alt/php52/usr/share/pear:/opt/alt/php52/usr/share/php') in /home/ekoinst/domains/pcwiedza.pl/public_html/tworzenie-gier/includes/funkcje.php on line 548