Login with a social network:

Sviluppo multipiattaforma

Area dedicata a tutti gli sviluppatori in erba.

Re: Sviluppo multipiattaforma

Messaggioda winz il giovedì 6 giugno 2013, 14:21

millennium2k ha scritto:
Belli...


Grazie da parte della donna!
Si anche io ero rimasto un po indietro(riguardo image ready)...comunque ti stavo cercando qualche forum di fumettisti per il grafico che ti serviva ma non riesco a trovare un forum serio, se trovo qualcosa ti faccio sapere, è un peccato che rimani "fermo" perchè ti manca un pezzo di team :/
"Tutti sanno che una cosa è impossibile da realizzare, finché arriva uno sprovveduto che non lo sa e la inventa."
A. Einstein
winz
Avatar utente
Esploratore
Esploratore
 
Messaggi: 120
Iscritto il: domenica 24 febbraio 2013, 14:27
Località: Torino

Re: Sviluppo multipiattaforma

Messaggioda winz il giovedì 6 giugno 2013, 16:00

Perdona le domande una di seguito all'altra Andre, ma oggi ci sto dando dentro.
Prima cosa sto impazzendo da due ore per provare a fare un'intro iniziale, sono riuscito a fare un oggetto che ruota (con delle sprites come mi hai insegnato nell'esempio della tenda) ma vorrei fare un fadein /fadeout e ho visto che esiste la trasparency ma non capisco se è una proprietà che devo reinserire in una variabile...avevo trovato sto esempio ma non funziona bene oppure non lo capisco:

Example:

int trans = object[0].Transparency;
while (trans < 100) {
trans++;
object[0].Transparency = trans;
Wait(1);
}

Usa l'oggetto come se fosse un array, ma ovviamente non essendo un array non funziona. BOH

Poi ho provato un'altra via, quella dei moduli.
Ho trovato sto sito dove c'è un modulo: http://americangirlscouts.org/agsresources/modules.html Non so se posso linkare siti esterni nel caso lo modifico non saprei come altro farti vedere dove ho visto XD
MA il problema è che non trovo guide su come installare i moduli o dove metterli e come richiamarli...nel forum ufficiale parlano di tanti moduli ma danno per scontato che uno sappia come utilizzarli...sob
Idem per i plugin...

Grazie ciao e buona giornata!
"Tutti sanno che una cosa è impossibile da realizzare, finché arriva uno sprovveduto che non lo sa e la inventa."
A. Einstein
winz
Avatar utente
Esploratore
Esploratore
 
Messaggi: 120
Iscritto il: domenica 24 febbraio 2013, 14:27
Località: Torino

Re: Sviluppo multipiattaforma

Messaggioda AprilSkies il giovedì 6 giugno 2013, 19:17

Ciao winz. Ti sto scravendo al volo dal cellulare. Sono fuori casa per lavoro e rientro domani. Ti risponderò con calma domani pomeriggio . Devi avere un po di pazienza ;-)
AprilSkies
Avatar utente
Avventuriero
Avventuriero
 
Messaggi: 422
Iscritto il: lunedì 7 maggio 2012, 12:59

Re: Sviluppo multipiattaforma

Messaggioda winz il giovedì 6 giugno 2013, 20:16

Heila!
Sisi non ho nessuna fretta ci mancherebbe! :)
Anzi grazie che mi hai risp comunque!!
A presto buona serata ;)
"Tutti sanno che una cosa è impossibile da realizzare, finché arriva uno sprovveduto che non lo sa e la inventa."
A. Einstein
winz
Avatar utente
Esploratore
Esploratore
 
Messaggi: 120
Iscritto il: domenica 24 febbraio 2013, 14:27
Località: Torino

Re: Sviluppo multipiattaforma

Messaggioda AprilSkies il venerdì 7 giugno 2013, 11:49

Eccomi!
Effettivamente sono rimasto un po' indietro con le risposte che ti devo, ma preferivo aspettare che ti chiarissi le idee in merito al porting.

Cmq riprendo dall'ultima domanda e poi rispondo anche alle altre rimaste indietro:

Questione Fade in/Fade out
Premetto che io lascerei perdere moduli e plug-in poichè è quasi tutto fattibile autonomamente tramite script (basta avere un po' di fantasia e pazienza). Se poi proprio non si può fare a meno si ricorre ai moduli e plug-in.
Lo script che hai postato tu è corretto per fa scomparire in trasparenza un oggetto (con velocità di un ciclo ... Wait(1); se vuoi farlo scomparire più lentamente metti Wait(2) .. wait(3), ecc.)
Per farlo funzionare correttamente è importante dove metti lo script (in quale function).
Secondo me va messo nella function richiata dopo il loading della room

facciamo un esempio:
Appena caricata la room, si vede, su sfondo nero, il solo "oggetto" del logo della tua software house, supponiamo che tu abbia creato l'oggetto chiamato oLOGO

//Fai caricare la stanza la stanza
function room_Load()
{
oLOGO.Visible = true;
oLOGO.Transparency = 0;
mouse.Visible = false; //magari elimini il puntatore del mouse dalla schermata
}

//Dopo aver caricato la stanza, fai lo script

function room_AfterFadeIn()
{
Wait(160); //il logo è visibile e lo fai permanere sullo schermo per circa 4 secondi (160 cicli)
int transizione = oLOGO.Transparency;
while (transizione < 100)
{
transizione = transizione + 1; //puoi mettere + 2 per farlo sparire più velocemente
oLOGO.Transparency = transizione;
Wait(1); // puoi mettere wait(2) per farlo sparire più lentamente
}
//ora l'oggetto è scomparso (o meglio ha trasparenza uguale a 100) ... è rimasto lo sfondo nero
Wait(80); //aspetti 2 sceondi circa con lo sfondo nero
SetScreenTransition(eTransitionFade); //imposti la transizione di tipo "fade" per la stanza successiva
cEgo.ChangeRoom(2, 770, 570); //vai alla stanza successiva
//ovviamente nella stanza presente, il personaggio non devi farlo vedere, devi averlo impostato come "non visibile"
}

Questo l'ho fatto molte volte nel mio gioco quindi funziona di sicuro ;)

Ma ci sono anche altri modi per fare il fade.
A volte si può anche creare una GUI tutta nera grande tutto lo schermo e farla apparire (sempre con il While()do) sopra tutti gli oggetti e poi fare il cambio stanza. O altri metodi ancora.
Se mi spieghi esattamente cosa vuoi fare posso essere più preciso
Ultima modifica di AprilSkies il venerdì 7 giugno 2013, 12:02, modificato 2 volte in totale.
AprilSkies
Avatar utente
Avventuriero
Avventuriero
 
Messaggi: 422
Iscritto il: lunedì 7 maggio 2012, 12:59

Re: Sviluppo multipiattaforma

Messaggioda winz il venerdì 7 giugno 2013, 11:59

AAAA ok così è chiaro il ciclo...non capivo perchè il tipo nell'esempio avesse messo object[0]... mi sembrava un array O_O

Per la questione porting sto ancora aspettando risp dal tipo...dovrei mettermi a smanettare un pò ma ammetto che sono in difficoltà...ma in qualche modo farò. Oggi la giornata l'ho dedicata a litigare cn una commerciale del mio operatore telefonico, vivere in Italia inizia a diventare stancante.

Grazie dello script Andre, lo provo !
"Tutti sanno che una cosa è impossibile da realizzare, finché arriva uno sprovveduto che non lo sa e la inventa."
A. Einstein
winz
Avatar utente
Esploratore
Esploratore
 
Messaggi: 120
Iscritto il: domenica 24 febbraio 2013, 14:27
Località: Torino

Re: Sviluppo multipiattaforma

Messaggioda winz il venerdì 7 giugno 2013, 13:52

Allora...ho provato il codice e funziona alla grande(ho eliminato la var trans e ho usato transizione direttamente), ora però non riesco a fare in modo che l'animazione dell'oggetto parta prima del fade..cioe vorrei che si animasse e poi si iniziasse a vedere (già animato) con il fade. Ho provato a fare cosi ma non funziona (non ridere per winz studios ahahaha) :

function room_AfterFadeIn()
{

oPace.SetView(3, 0, 0);
oPace.Animate(0, 3, eRepeat, eNoBlock );
StartCutscene(eSkipAnyKeyOrMouseClick);

Wait(160); //il logo è visibile e lo fai permanere sullo schermo per circa 4 secondi (160 cicli)
int transizione = oPace.Transparency;
while (transizione <= 99) {
transizione = transizione + 1; //puoi mettere + 2 per farlo sparire più velocemente
oPace.Transparency = transizione;
Wait(1); // puoi mettere wait(2) per farlo sparire più lentamente
}

//ora l'oggetto è scomparso (o meglio ha trasparenza uguale a 100) ... è rimasto lo sfondo nero
Wait(80); //aspetti 2 sceondi circa con lo sfondo nero
SetScreenTransition(eTransitionFade); //imposti la transizione di tipo "fade" per la stanza successiva

ShowTextCentered("Winz studios presenta");
Wait(140);
ShowTextCentered("Un nuovo gioco punta e clicca indie");
Wait(140);

EndCutscene();
player.ChangeRoom(1);
cEgo.LockView(1);
mouse.Visible = true;
}
"Tutti sanno che una cosa è impossibile da realizzare, finché arriva uno sprovveduto che non lo sa e la inventa."
A. Einstein
winz
Avatar utente
Esploratore
Esploratore
 
Messaggi: 120
Iscritto il: domenica 24 febbraio 2013, 14:27
Località: Torino

Re: Sviluppo multipiattaforma

Messaggioda AprilSkies il venerdì 7 giugno 2013, 17:50

Allora innanzitutto l'oggetto lo vuoi far "comparire" o "scomparire"?
Cioè all'inizio si vede, animato e poi scompare oppure vuoi il contrario, che non si veda e poi appare man mano animato?

EDIT: forse tu intendi il fade in ingresso alla stanza; in tal caso prova a spostare queste riche di codice
oPace.SetView(3, 0, 0);
oPace.Animate(0, 3, eRepeat, eNoBlock );
dentro "RoomLoad" anzichè dentro "RoomAfterFadeIn"

in alternativa, se non va fai semplicemente così:

//dentro RoomLoad fai così:

function room_Load()
{
oPace.Visible = true;
oPace.Transparency = 100;
}

//Poi dentro after fade in fai così:

function room_AfterFadeIn()
{
oPace.SetView(3, 0, 0);
oPace.Animate(0, 3, eRepeat, eNoBlock );

int transizione = oPace.Transparency;
while (transizione > 0)
{
transizione = transizione - 1;
oPace.Transparency = transizione;
Wait(1);
}

Wait(160);

int transizione2 = oPace.Transparency;
while (transizione2 < 100) {
transizione2 = transizione2 + 1;
oPace.Transparency = transizione2;
Wait(1);
}
//.. altro codice qui
}
AprilSkies
Avatar utente
Avventuriero
Avventuriero
 
Messaggi: 422
Iscritto il: lunedì 7 maggio 2012, 12:59

Re: Sviluppo multipiattaforma

Messaggioda winz il lunedì 17 giugno 2013, 15:04

Heilà!!
Perdonami l'assenza prolungata Andrea ma sono stato in mutua una settimana causa febbre.
Sono andato però avanti nella parte logica del gioco, e in questi giorni ho provato anche fuga da deponia... certo che viene da deprimersi giocando a quel gioco, quelli della daedelic hanno delle idee davvero fighe!!
Appena mi riprendo mi butto sul codice per ora continuo la parte di logica e della storia!
A presto
"Tutti sanno che una cosa è impossibile da realizzare, finché arriva uno sprovveduto che non lo sa e la inventa."
A. Einstein
winz
Avatar utente
Esploratore
Esploratore
 
Messaggi: 120
Iscritto il: domenica 24 febbraio 2013, 14:27
Località: Torino

Re: Sviluppo multipiattaforma

Messaggioda AprilSkies il lunedì 17 giugno 2013, 16:42

Ciao Winz!
Spero tutto bene ora.
Appena riprendi, dimmi se l'ultimo script che ti ho postato funziona (se ti fa il fade-in fade-out così vado avanti nel risponderti alle altre domande)
AprilSkies
Avatar utente
Avventuriero
Avventuriero
 
Messaggi: 422
Iscritto il: lunedì 7 maggio 2012, 12:59

Re: Sviluppo multipiattaforma

Messaggioda winz il mercoledì 19 giugno 2013, 14:20

Heila!!
Allora ho provato e niente, nonostante io faccia partire l'animazione prima del fade-in nada.
Prima inizia a fare il fade, e poi quando è al 100% di opacità, parte l'animazione.
Nonostante venga fatto prima sembra che il "motore" lo interpreti a modo suo...boooo

oPace.Animate(0, 3, eRepeat, eNoBlock );

int transizione = oPace.Transparency;
while (transizione > 0)
{
transizione = transizione - 1;
oPace.Transparency = transizione;
Wait(1);
}

Wait(160);

int transizione2 = oPace.Transparency;
while (transizione2 < 100) {
transizione2 = transizione2 + 1;
oPace.Transparency = transizione2;
Wait(1);
}


PS: riguardo la portabilità, la tipa che si è occupata della portabilità di Gemini Rue su iOS non mi ha degnato di attenzione e non mi ha risposto :) forse vuole tenere la conoscenza per sè o forse sono troppo newbie per avere risposta :)
Sarebbe utile che qualcuno di loro invece di fare il saccente, faccia sapere a noi comuni mortali delle linee guida generiche sul porting. Invece per ora c'è solo un post su un forum in inglese. E ciao agli altri comuni programmatori...
"Tutti sanno che una cosa è impossibile da realizzare, finché arriva uno sprovveduto che non lo sa e la inventa."
A. Einstein
winz
Avatar utente
Esploratore
Esploratore
 
Messaggi: 120
Iscritto il: domenica 24 febbraio 2013, 14:27
Località: Torino

Re: Sviluppo multipiattaforma

Messaggioda AprilSkies il mercoledì 19 giugno 2013, 14:41

No attenzione:
Togli il fade dalla transizione dela stanza (general setting --> Default transition ... = Instant)Poi dentro "RoomLoad" scrivi:
{
oPace.Visible = true;
oPace.Transparency = 100;
}
poi copia esattamente questo codice dentro room_AfterFadeIn
oPace.SetView(3, 0, 0);
oPace.Animate(0, 3, eRepeat, eNoBlock );

int transizione = oPace.Transparency;
while (transizione > 0)
{
transizione = transizione - 1;
oPace.Transparency = transizione;
Wait(1);
}

Wait(160);

int transizione2 = oPace.Transparency;
while (transizione2 < 100) {
transizione2 = transizione2 + 1;
oPace.Transparency = transizione2;
Wait(1);
}
//.. altro codice qui
}
AprilSkies
Avatar utente
Avventuriero
Avventuriero
 
Messaggi: 422
Iscritto il: lunedì 7 maggio 2012, 12:59

Re: Sviluppo multipiattaforma

Messaggioda winz il mercoledì 19 giugno 2013, 14:56

Era gia settato come FadeOutAndIn... ma non funziona comunque :(
Ho provato anche tutte le altre opzioni ma niente..
Sembra proprio che l'animazione prima la legga dopo...eppure dovrebbe essere sequenziale la compilazione no?
"Tutti sanno che una cosa è impossibile da realizzare, finché arriva uno sprovveduto che non lo sa e la inventa."
A. Einstein
winz
Avatar utente
Esploratore
Esploratore
 
Messaggi: 120
Iscritto il: domenica 24 febbraio 2013, 14:27
Località: Torino

Re: Sviluppo multipiattaforma

Messaggioda winz il mercoledì 19 giugno 2013, 15:56

Per il porting mi farò conoscere come il rompi pelotas del web... ho scritto un pm direttamente a Janet, quella che si è occupata del porting per Gemini Rue di Wadjet Eye Games XD
Speriamo mi risponda!! Appena ne so qualcosa metterò a disposizione le mie conoscenze (spero di arrivare ad averle).
"Tutti sanno che una cosa è impossibile da realizzare, finché arriva uno sprovveduto che non lo sa e la inventa."
A. Einstein
winz
Avatar utente
Esploratore
Esploratore
 
Messaggi: 120
Iscritto il: domenica 24 febbraio 2013, 14:27
Località: Torino

Re: Sviluppo multipiattaforma

Messaggioda AprilSkies il mercoledì 19 giugno 2013, 16:50

winz ha scritto:Era gia settato come FadeOutAndIn... ma non funziona comunque :(
Ho provato anche tutte le altre opzioni ma niente..
Sembra proprio che l'animazione prima la legga dopo...eppure dovrebbe essere sequenziale la compilazione no?


Infatti non devi settarlo come fadeinfadeout, ma come INSTANT
Poi assicurati di eseguire gli script esattamente come li postati io (sia la parte che sta dentro RoomLoad sia quella dentro room_AfterFadeIn ... non tralasciare nulla, spratutto il fatto di impostare all'inizio oPace.Transparency = 100), perchè io ho appena provato e funziona perfettamente.

Riprova e fai tutto esattamente in quel modo
AprilSkies
Avatar utente
Avventuriero
Avventuriero
 
Messaggi: 422
Iscritto il: lunedì 7 maggio 2012, 12:59

Re: Sviluppo multipiattaforma

Messaggioda winz il mercoledì 19 giugno 2013, 17:01

Mi compare istantaneamente :( sto facendo esattamente come dici tu... ti incollo tutto per sicurezza, entrambe le funzioni:

L'immagine è un png con 9 frame, non so magari ho sbagliato qualcosa nella view

function room_Load()
{
oPace.Visible = true;
oPace.Transparency = 100;
}

function room_AfterFadeIn()
{

oPace.SetView(3, 0, 0);
oPace.Animate(0, 3, eRepeat, eNoBlock );

int transizione = oPace.Transparency;
while (transizione > 0)
{
transizione = transizione - 1;
oPace.Transparency = transizione;
Wait(1);
}

Wait(160);

int transizione2 = oPace.Transparency;
while (transizione2 < 100) {
transizione2 = transizione2 + 1;
oPace.Transparency = transizione2;
Wait(1);
}

}
"Tutti sanno che una cosa è impossibile da realizzare, finché arriva uno sprovveduto che non lo sa e la inventa."
A. Einstein
winz
Avatar utente
Esploratore
Esploratore
 
Messaggi: 120
Iscritto il: domenica 24 febbraio 2013, 14:27
Località: Torino

Re: Sviluppo multipiattaforma

Messaggioda AprilSkies il mercoledì 19 giugno 2013, 17:13

Una domanda: ti compare istantaneamente (quindi il fade-in non funziona), ma poi ti scompare (ti fa il fade-out)?
AprilSkies
Avatar utente
Avventuriero
Avventuriero
 
Messaggi: 422
Iscritto il: lunedì 7 maggio 2012, 12:59

Re: Sviluppo multipiattaforma

Messaggioda winz il mercoledì 19 giugno 2013, 17:24

Yes! Il fade-out funziona!
"Tutti sanno che una cosa è impossibile da realizzare, finché arriva uno sprovveduto che non lo sa e la inventa."
A. Einstein
winz
Avatar utente
Esploratore
Esploratore
 
Messaggi: 120
Iscritto il: domenica 24 febbraio 2013, 14:27
Località: Torino

Re: Sviluppo multipiattaforma

Messaggioda AprilSkies il mercoledì 19 giugno 2013, 17:38

Potrebbe essere legato al fatto che i tuoi sprites sono in PNG (quindi con canale alpha); nel mio gioco sono gif. Cmq taglia la testa al toro e risolvi così (almeno prova e fammi sapere se va, ma dovrebbe andare di sicuro):

crea una GUI (nell'apposito menù) chiamata gBLACK: falla grande quanto la tua finestra di gioco (non ricordo se era 1024x768) e falla tutta nera (colore background e colore linea nera) .. e falla apparire a coordinate 0,0 ... e poi fai così:

function room_Load()
{
oPace.Visible = true;
gBlack.Visible = true;
}

function room_AfterFadeIn()
{
oPace.SetView(3, 0, 0);
oPace.Animate(0, 3, eRepeat, eNoBlock );
Wait(5);

int transizione = 0;
while (transizione < 100) {
transizione = transizione + 1;
gBLACK.Transparency = transizione;
Wait(1);
}

Wait(160);

int transizione2 = oPace.Transparency;
while (transizione2 < 100) {
transizione2 = transizione2 + 1;
oPace.Transparency = transizione2;
Wait(1);
}

}

In pratica lo sprite animato è coperto da una gui tutta nera che scompare gradualmente.

Prova e fammi sapere
AprilSkies
Avatar utente
Avventuriero
Avventuriero
 
Messaggi: 422
Iscritto il: lunedì 7 maggio 2012, 12:59

Re: Sviluppo multipiattaforma

Messaggioda winz il mercoledì 19 giugno 2013, 17:49

Niente non funziona lo stesso, stasera se riesco o domani provo a importarle come gif cosi almeno abbiamo un'altra prova!!
Grazie come sempre del tuo tempo Andre, a domani e buona serata :)
"Tutti sanno che una cosa è impossibile da realizzare, finché arriva uno sprovveduto che non lo sa e la inventa."
A. Einstein
winz
Avatar utente
Esploratore
Esploratore
 
Messaggi: 120
Iscritto il: domenica 24 febbraio 2013, 14:27
Località: Torino

PrecedenteProssimo

Torna a Developer's Corner

Chi c’è in linea

Visitano il forum: Nessuno e 3 ospiti