[ARHIIV] mängumeistrid
Pole sisse logitud. [Logi sisse ]
Mine lehekülje algusesse
Prinditav versioon | Telli teema e-mailile | Lisa lemmikutesse  
Õpetus: Draw Distance
Crypton

Avatar

Liitunud: 18.12.2005
Postitusi: 1604
[EEMAL]




postitati 23.5.2008 18:55 Tsiteeri
Õpetus: Draw Distance



See on siis MM2-st välja nopitud draw distance skript. See võimaldab deaktiveerida objektid, mis satuvad väljaspool mängu vaadet.

scr_draw_distance
Kood:


//argument0 = objekti id
//argument1 = situatsioon
//situatsiooni väärtuse 2 korral muudetakse vastava objekti mask (seinte jaoks näiteks)


var obj;
obj=argument0 //muudetav objekti id
if argument=2{
mask=sprite_index
}

if (xview_xview[0]+view_wview+50 or y>view_yview[0]+view_hview+50){
if argument1=1{
instance_deactivate_object(obj)
}

if argument1=2{
obj.mask_index=mask
}
}
else{
if argument1=1{
instance_activate_object(obj)
}

if argument1=2{
obj.mask_index=-1
}
}


Objekti Step event, mida deaktiveeritakse kui satub vaatest välja

Kood:

scr_draw_distance(obj,1) //Argumentide tähendused saab skriptist
//obj argument võib olla ka self


Ise praegu seda asja uurides paistab, et mask-i olen pidanud muutma sellepärast, et seintel ei olnud spritesi aga maskid küll.
Idee poolest peaks asi funktsioneerima.

(xview_xview[0]+view_wview+50 or y>view_yview[0]+view_hview+50)

olevaid 50 väärtusi saab muuta. Need tähendavad et kui nii kaugel vaatest väljas siis deaktiveeritakse.
See on selletõttu, et osad sprited on suured, nt valgustused.
Kui objekti xy asukoht võib juba ammu vaatest väljas olla, siis suure sprite korral on ikkagi palju temast mängu vaates ja selle äkiline kadumine võib osutuda silmale riivavaks.
Nii et mida suurem see väärtus seda kaugemalt ta vaatest väljas olles kaob.

[Muudetud: 23-5-2008 Crypton]

Maze I: CryptonRalli III: Crypton<br>
Vaata kasutaja profiili Külasta kasutaja kodulehte Otsi kasutaja postitusi Saada privaatsõnum

Hetkel loevad seda teemat:
Mitte ühtegi - 1 külaline

Mine lehekülje lõppu





Foorumi algbaas põhineb XMB mootoril, modifitseeritud Valter Pundi poolt
Kodulehekülg on tehtud Valter Pundi poolt vpundi ät gmail punkt komm