Támogatás

Az oldal oktatási célra készült, és folyamatosan fejlesztem, amikor időm engedi. A tárhelyet önerőből tartom fent, ezért bármilyen támogatással segítheted a további működést.

Paypal címem: 
niethammer.zoli@gmail.com

AR marker

A marker egy olyan kép, amelyet a kiterjesztett valóság modellkhez használunk. Nyomtasd ki kb. 10-15 cm méretben, vagy nagyítsd ki egy monitoron!

Ebben a leckében a geometria nagy részét a program generálja. Az eleje szinte teljesen megegyezik az FPV labirintusos példával.

Röviden:

7. sor: Egy fényforrás, ami árnyékot vet majd
8. sor: Minden test árnyékol, és látszik rajta az árnyék
10. sor: A koordináták elrejtése
11. sor: A beépített textúrák közül az ÉGBOLT csoportból az egyik 360 fokos panoráma
13. sor: Az anyagok felülete matt lesz.
16-17. sor: 200 egység méretű lapos téglatest lesz a talaj
21. sor: A világ szélén lesz a kamera a modell betöltésekor
22. sor: Csak billentyűzettel lehet mozogni
26. sor: Innentől minden geometriával ütközik a kamera

 

Ezután indítunk egy tömböt, listát, amibe 5 db textúra nevét fogjuk egymás után betölteni. Legfeljebb 20 db ilyen textúra kerülhet a tömbbe!

Minden programnyelvben vannak olyan utasítások, amelyek egy kódrész megismételnek. Itt a FOR utasítás jelzi az ismétlés elejét, és a NEXT a végét. A kettő közötti kód  lesz 40x megismételve. Az ismétléseket egy n nevű változó számolja. Az n értéke 1-40 között változik. Tehát 40 db henger ( kúp) generálódik majd.

Tetszőleges nevű változót használhatunk a programban matematikai művelet elvégzésére, véletlenek generálására, majd ezeket a változókat használhatjuk bármelyik eddig tanult utasításban.

Nézzük a kódot soronként:

46. sor: Egy m nevű változóba 4-12 közötti egész számot generál véletlenszerűen. Ez lesz a kúp magassága

47. sor: Egy r nevű változóba 2-3 közötti véletlenszám, a kúp alapjának sugara

49. sor: A kúp helyének x koordinátája véletlenszerűen -70, és 70 között

50. sor: Mivel a kúpokat az XZ síkra akarjuk helyezni, a geometriai közepük a magasság fele lesz.

51. sor: A kúp helyének z koordinátája véletlenszerűen -70, és 70 között

53. sor: Az előzőleg feltöltött textúra tömbből egyet véletlenszerűen kiválasz. A felületen vízszintesen 8x, függőlegesen 4x fog ismétlődni a textúra.

54. sor: A HELY utasítás az előzőleg feltöltött változókat használja.

55. sor: A HENGER utasítás első paramétre a henger felső sugara, ami most 0.1, mivel kúpot szeretnénk rajzolni. A második paraméter az alsó sugár, amit az r változó tárol, illetve a magasság, amit az m változó tárol.

A 46-51. sorok közötti véletlen értékek módosításával nagyon változatos világokat lehet generálni. Minden fordításnál természetesen új véletlenek lesznek, tehát más-más világot kapunk.

EXTRA kiegészítés

A kód végére gépelve ez a ciklus 20 db gömböt generál 5-10 egység magasságban, de a textúrája állandó.