Apro questo topic, con l'intento di segnalare i trucchi utili che usiamo durante il nostro Making.
Inizio con una sorta di Pre-Loader manuale nel caso in cui alcune animazioni "Sfarfallino" o Lagghino un po.
PRE-LOADER MANUALE
Spesso accade solo la prima volta che mostriamo un animazione.
Allora spiego gli scenari in cui sarà utile fare questo preloader manuale.
1) Quando un cambio grafica sia sotto (Set Movement Route) sia sotto (Change Hero Graphics) Lagga o sfarfalla, spesso succede solo la prima volta, a me è capitato con le animazioni
del cambio grafica dell'eroe ad esempio quando Rotola o usa la spada.
Inizialmente pensavo fosse una questione di "Timing" dei processi paralleli, troppi contemporaneamente ma non è sempre così, il timing errato solitamente influisce sul frame rate. (tra l'altro suggerisco con F2 di controllare spesso il frame rate)
2) Quando una "Picture" o meglio un cambio "pictures" scattano o sfarfallano come sopra.
(Immaginate di dover fare una piccola animazione con 3 pictures, quindi con un evento simile a questo:)
Parallel Process
Show Picture 01: nomefile1.png
Wait 3
Show Picture 01: nomefile2.png
Wait 3
Show Picture 01: nomefile3.png
Wait 3
End Event
Per avere un animazione in Loop. E la prima volta che viene mostrata non è precisa.
Perche accade questo?
Accade perchè RMMV maledetto ha bisogno di precaricare le risorse, il preloader che abbiamo è finto, quindi come risolvere. Semplicissimo :)
Caso dell'evento cambio grafica eroe o evento con set move route o change hero graphic bla bla bla
Nella mappa create un evento con processo parallelo in cui
Quell'evento cambia la grafica che vi serve e poi si annulla, senza pause tipo:
Parallel Process
This event Trasparent ON
This event Change Image nomefile bla bla bla
This event Change Image nomefile bla bla bla
This event Change Image nomefile bla bla bla
This event Change Image nomefile bla bla bla
This event Change Image nomefile bla bla bla
This event Change Image nomefile bla bla bla
This event Change Image nomefile bla bla bla
erase event
E' vitale usare l'opzione transparent all'inizio per evitare di vederla l'animazione, in realtà anche se noi non la vediamo l'engine la vede, e pre-carica le risorse che ci servono.
Per le pictures vale la stessa cosa, mostratele con una grafica al 0% così è invisibile a noi ma non all'engine.
In questo modo quando carichiamo le risorse successivamente non ci sarà LAG.
In teoria (Non ho ancora provato ma sono sicuro di si) La stessa cosa accade anche con le musiche, suonate il brano che vi serve a volume ZERO e dopo un wait 20 ad esempio, spegnetelo. Avendolo pre-caricato successivamente non dovrebbe dare problemi.
-----------------------------------
IMPORTANZA DELLA FUNZIONE TRANSPARENT DEL MOVE ROUTE
La funzione "Transparent" del movement route è molto importante, questo perchè è l'unica che l'evento può ereditare nelle pagine successive.
Se ad esempio abbiamo un evento con piu pagine, ed in una pagina non c'è grafica, io la uso ad esempio per Vaso da rompere, vaso rotto. Se nella prima pagina cambiamo grafica, quando attiviamo l'evento successivo lui la ricambierà. Se vogliamo che non si veda dobbiamo usare la funzione transparent del move route.
Nel mio caso il vaso è complesso perchè si può rompere non solo con la spada, quindi succedeva che si rompeva due volte. Con transparent ho risolto, perchè è una funziona che le pagine ereditano.
Una volta ricordata la funzione trasparente potete fare un check via if condition nello script:
Per This Event:
$gameMap.event(this.eventId()).isTransparent()
Altrimenti cambiate this.eventId() col numero evento.
In questo modo sappiamo se un evento è trasparente o meno.
Nel mio caso del vaso, if transparent= true significa che è gia stato rotto, quindi anche con le altre armi non lo rompe più.
Così sono riuscito a fare un solo evento template, per rompere vasi, o altri oggetti, e poi fare copia ed incolla, senza switches o variabili, si rompe una sola volta e restituisce con una
variabile random un premio.
Queste tecniche sono utilissime per risparmiare swithces, variabili e tempo.
-----------------------------------
E ricorda che un giorno quello che hai accumulato in questa vita non sara piu tuo....e solo quello che hai fatto per gli altri sarà ricordato...
Question
Lakaroth
Apro questo topic, con l'intento di segnalare i trucchi utili che usiamo durante il nostro Making.
Inizio con una sorta di Pre-Loader manuale nel caso in cui alcune animazioni "Sfarfallino" o Lagghino un po.
PRE-LOADER MANUALE
Spesso accade solo la prima volta che mostriamo un animazione.
Allora spiego gli scenari in cui sarà utile fare questo preloader manuale.
1) Quando un cambio grafica sia sotto (Set Movement Route) sia sotto (Change Hero Graphics) Lagga o sfarfalla, spesso succede solo la prima volta, a me è capitato con le animazioni
del cambio grafica dell'eroe ad esempio quando Rotola o usa la spada.
Inizialmente pensavo fosse una questione di "Timing" dei processi paralleli, troppi contemporaneamente ma non è sempre così, il timing errato solitamente influisce sul frame rate.
(tra l'altro suggerisco con F2 di controllare spesso il frame rate)
2) Quando una "Picture" o meglio un cambio "pictures" scattano o sfarfallano come sopra.
(Immaginate di dover fare una piccola animazione con 3 pictures, quindi con un evento simile a questo:)
Per avere un animazione in Loop.
E la prima volta che viene mostrata non è precisa.
Perche accade questo?
Accade perchè RMMV maledetto ha bisogno di precaricare le risorse, il preloader che abbiamo è finto, quindi come risolvere.
Semplicissimo :)
Caso dell'evento cambio grafica eroe o evento con set move route o change hero graphic bla bla bla
Nella mappa create un evento con processo parallelo in cui
Quell'evento cambia la grafica che vi serve e poi si annulla, senza pause tipo:
E' vitale usare l'opzione transparent all'inizio per evitare di vederla l'animazione, in realtà anche se noi non la vediamo l'engine la vede, e pre-carica le risorse che ci servono.
Per le pictures vale la stessa cosa, mostratele con una grafica al 0% così è invisibile a noi ma non all'engine.
In questo modo quando carichiamo le risorse successivamente non ci sarà LAG.
In teoria (Non ho ancora provato ma sono sicuro di si)
La stessa cosa accade anche con le musiche, suonate il brano che vi serve a volume ZERO e dopo un wait 20 ad esempio, spegnetelo.
Avendolo pre-caricato successivamente non dovrebbe dare problemi.
-----------------------------------
IMPORTANZA DELLA FUNZIONE TRANSPARENT DEL MOVE ROUTE
La funzione "Transparent" del movement route è molto importante, questo perchè è l'unica che l'evento può ereditare nelle pagine successive.
Se ad esempio abbiamo un evento con piu pagine, ed in una pagina non c'è grafica, io la uso ad esempio per Vaso da rompere, vaso rotto.
Se nella prima pagina cambiamo grafica, quando attiviamo l'evento successivo lui la ricambierà.
Se vogliamo che non si veda dobbiamo usare la funzione transparent del move route.
Nel mio caso il vaso è complesso perchè si può rompere non solo con la spada, quindi succedeva che si rompeva due volte.
Con transparent ho risolto, perchè è una funziona che le pagine ereditano.
Una volta ricordata la funzione trasparente potete fare un check via if condition nello script:
Per This Event:
Altrimenti cambiate this.eventId() col numero evento.
In questo modo sappiamo se un evento è trasparente o meno.
Nel mio caso del vaso, if transparent= true significa che è gia stato rotto, quindi anche con le altre armi non lo rompe più.
Così sono riuscito a fare un solo evento template, per rompere vasi, o altri oggetti, e poi fare copia ed incolla, senza switches o variabili, si rompe una sola volta e restituisce con una
variabile random un premio.
Queste tecniche sono utilissime per risparmiare swithces, variabili e tempo.
-----------------------------------
Link to comment
Share on other sites
7 answers to this question
Recommended Posts
Create an account or sign in to comment
You need to be a member in order to leave a comment
Create an account
Sign up for a new account in our community. It's easy!
Register a new accountSign in
Already have an account? Sign in here.
Sign In Now