Come posso copiare o calcolare indietro le definizioni per un intero b2World?


8

Sto lavorando su un platform in cui mi piacerebbe poter spostare o copiare corpi tra più Box2D b2Worlds. Il desiderio è sorto tre volte: spostare oggetti tra i documenti nel mio editor, spostare il giocatore tra i livelli durante il gioco normale e dare al giocatore un'anteprima di un proiettile non banale che possono sparare nel gioco, che sembra essere eseguito in modo più preciso simulando il mondo per alcuni secondi in anticipo.

Si presenta come posso fare un mondo parallelo il "lungo cammino" - per ogni corpo nel mondo, copiare la parte posteriore dei dati corpo in una definizione e ri-crearlo, quindi copiare i dispositivi su di esso allo stesso modo, poi fare il lo stesso per le articolazioni; reimpostare tutte le velocità; e se si tratta di una "mossa" anziché di una "copia", elimina quella originale.

Mi chiedevo se qualcuno avesse già scritto questo codice (e in tal caso, era in realtà un progetto praticabile o no?), O se Box2D ha qualche possibilità per farlo all'interno della sua API che mi manca.

c++  physics  box2d 

Modifica la tua pubblicazione in modo che sia una domanda.
piedi il

2
@Pavel In realtà fa una domanda anche se gli manca un punto interrogativo.
Jesse Dorsey

Almeno per me non era chiaro cosa stesse chiedendo.
piedi il

"se qualcuno ha già scritto questo codice" Qualcuno può rispondere "Sì" alle meraviglie di Joe Wreschnig e sarà una risposta legale. Ma suppongo che non lo apprezzerà.
piedi il

2
@Pavel Sì, sono sicuro che si aspettasse che qualcuno spiegasse cosa lo rendesse un progetto praticabile o meno, anche se non lo avesse chiesto esplicitamente. Come una risposta di "Sì" verrebbe ridimensionato più che probabile. Inoltre, essere meschino non aiuta nessuno.
Jesse Dorsey

Risposte:


1

Grazie per avermelo ricordato.

La risposta è no, non puoi farlo in magazzino Box2D . I giunti non hanno abbastanza accessori per recuperare un JointDef corretto. Puoi back-def-ify corpi semplici, ma nulla di articolato, e i corpi semplici sono di solito abbastanza banali che non avresti bisogno di fare una copia del mondo per prevederne il movimento con precisione in ogni caso.

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.