Come gestire RTS Click-And-Move nello spazio 3D?


10

Come posso gestire il clic e spostare in uno spazio 3D completo? È facile da gestire su un piano 2D con un semplice raycast, ma non è così in 3D poiché non esiste un piano finale per un raycast per ottenere un punto finale.

Ho in mente due idee:

  1. Esegui raycast, quindi consenti al giocatore di selezionare la distanza sul raggio con un altro input (mousewhell, ad esempio).
  2. Invece del 3D completo, avere più "livelli di altezza", in modo che il giocatore possa cambiare il livello di altezza prima di ordinare la mossa.

Quali sono i tuoi pensieri?

Risposte:


4

Rompere il movimento in due passi è un approccio obsoleto.

Movimento del mouse per il piano orizzontale. Rotellina del mouse per piano verticale.

Homeworld ha fatto un ottimo lavoro, ma le ruote del mouse non erano ancora così largamente distribuite, quindi non lo hanno fatto.

Puoi ancora avere i tasti modificatori per cambiare il movimento del mouse tra le modalità, ma lo spostamento del mouse e lo scorrimento possono essere eseguiti contemporaneamente, quindi è il metodo più efficiente per l'hardware. Nel pianeta natale si mettono gli aerei in sequenza uno dopo l'altro, il che ti rallenta. Per non parlare del fatto che si viene rallentati solo nello spostamento nello spazio vuoto. Passare all'oggetto automatizzava la traiettoria.

Gli altri modi per farlo simultaneamente sono due mani sulla tastiera o due controlli a levetta.

Se la fluidità del movimento dipende dalla velocità, fare e un passo in più può interrompere il flusso. Homeworld si adatta al suo sistema perché non importa se sprechi un secondo o due in più nell'emissione del tuo ordine di spostamento e puoi essere sicuro che hanno tenuto conto di quella considerazione quando hanno costruito la stimolazione.

Posizionamento zoom PS:

Se lo zoom non è un meccanico centrale e non è necessario mantenerlo il più robusto possibile, può essere scaricato.

Gestisci lo zoom allo stesso modo del gioco originale "In bianco e nero". Zoom con movimento del mouse + pulsante del mouse premuto (dove il pulsante è solo il modificatore di funzione tra lo spostamento della mappa e lo zoom della mappa). I gametesters che ho usato concordano tutti sul fatto che "sembra" essere il miglior zoom. Consiglierei di tenere sia il mouse 1 che il mouse 2 mentre per la modalità zoom (esattamente come in bianco e nero) - ma tecnicamente uno di questi sarebbe sufficiente se non si ha un conflitto.

Ho spesso consigliato alle persone di installare il gioco per provarlo. Aggiungi l'usabilità della tastiera ed è il meccanico più utile e comodo che abbia mai visto per la navigazione su mappe di grandi dimensioni.

Ora, questo ovviamente non è un valore predefinito comune e devi dannatamente bene assicurarti che sia spiegato ai tuoi utenti almeno alcune volte. Ma una volta che la gente lo capisce, si sente molto a suo agio. Inoltre stai insegnando alla gente la navigazione in 3d. Siete tenuti ad avventurarvi fuori dalla zona di comfort dei controlli 2d in alcun modo.

Se il mouse è troppo sovraccarico di controlli, puoi sempre utilizzare un tasto modificatore della tastiera o il pulsante centrale del mouse. La configurazione ottimale dipende davvero dal flusso di gioco.


Questa risposta in realtà si adatta meglio in questo scenario. Ma come devo gestire lo zoom se uso mousewhell per questo scopo? Sarebbe troppo inopportuno gestire lo zoom tramite tastiera.
S. Tarık Çetin,

@ S.TarıkÇetin aggiornato.
helena4,

9

Rompere il movimento in due passaggi

  1. Selezionare una posizione su un piano X / Z 2D situato nella posizione Y corrente dell'entità.
  2. Imposta l'offset (su o giù) da quel piano.

Questo è simile a come Homeworld , uno dei primi giochi 3D RTS spaziali, ha gestito il movimento. Funziona davvero bene.

Rompere il movimento in due passaggi offre il massimo controllo, semplicemente perché il mouse è un dispositivo di input 2D. Può fornire solo una posizione su un piano alla volta. Lo stesso si può ottenere legando due tasti sulla tastiera per essere su / giù nell'asse Y.

In alternativa, è possibile utilizzare il pulsante destro del mouse per attivare / disattivare la modalità. Ad esempio, il clic sinistro avvia il comando sposta e sposta il bersaglio sul piano X / Z, tenendo premuto il pulsante destro del mouse si passa all'alterazione della posizione dell'asse Y.

inserisci qui la descrizione dell'immagine


Finora, questa sembra l'opzione più logica. Aspetterò comunque, nel caso qualcuno abbia un'idea migliore.
S. Tarık Çetin,

2

Fai ciò che EVE online fa: non consentire il click-and-move! Nota

Quello che fanno è che creano oggetti nello spazio e ti permettono di fare clic con il tasto destro su di essi (raycast o what-not) e selezionare una delle diverse opzioni:

  • Vai all'oggetto (con velocità diverse)
  • Ruota sull'oggetto (a raggi diversi)

Ciò ti consente di spostarti solo in luoghi pertinenti.


Nota (potrebbero averlo cambiato di recente, però. Non ci giocano da un po '.)


Sì, questo risolve il problema, ma distrugge anche l'aspetto del gioco che crea questo problema in primo luogo.
S. Tarık Çetin,

@ S.TarıkÇetin Yep! Forse nel loro caso questa è stata la cosa più logica da fare. E forse non si applica alla tua situazione.
Vaillancourt

Da quello che ricordo, potresti effettivamente fare clic per spostarti a Eva. Era più una scelta di un tipo di direzione,
MichaelHouse

Ci sono controlli da tastiera a Eva che puoi usare per guidare la tua nave, ma quando lo fai sei limitato alle velocità tattiche (ad esempio volare da una stazione spaziale in orbita attorno al Pianeta X a un satellite che sta anche orbitando attorno al Pianeta X potrebbe richiedere un minuto o due; volare sulla luna del Pianeta X tramite controllo manuale richiederà almeno 5 minuti). Il viaggio ad alta velocità può essere avviato solo selezionando una destinazione.
Dan Henderson,

3
C'è una tecnica per sfuggire all'inseguimento basata su questo: iniziare a volare verso un bersaglio lontano, fermarsi a metà strada lì, quindi scegliere un nuovo bersaglio in una direzione diversa e fermarsi di nuovo a metà. Rilascia un "segnalibro" in questa posizione isolata, quindi puoi volare verso questo segnalibro quando attaccato e i tuoi inseguitori non saranno in grado di volare ad alta velocità nella stessa direzione.
Dan Henderson,
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.