Capitolo di esempio di Cookbook di CryENGINE 3 Nozioni di base sulla sandbox

Oggi continuiamo con il nostro omaggio a Cookbook di CryENGINE 3 e ti diamo la possibilità di ottenere un primo picco in alcuni dei contenuti che questo fantastico libro ha da offrire. Di seguito troverai il secondo dei prossimi capitoli di esempio che pubblicheremo questa settimana. Se non hai già inserito la tua possibilità di vincere una copia del libro, scopri come dopo il salto!

L'autunno è finalmente arrivato e ci stiamo avviando in grande stile collaborando con Packt Publishing per darti la possibilità di vincere una delle tre copie del loro attesissimo libro di cucina CryENGINE 3, creato da Dan Tracy e Sean Tracy di Crytek. Con la recente versione di CryENGINE 3 questo è il momento perfetto per entrare e iniziare a lavorare con uno dei motori di gioco più potenti del settore.


Vai al post del concorso e scopri come entrare!



CAPITOLO DI CAMPIONE

CryENGINE 3: Nozioni di base sulla sandbox

Questo articolo tratterà della maggior parte degli strumenti che userai regolarmente e degli elementi essenziali per creare nuovi ed eccitanti livelli per il tuo progetto. Comprenderà anche l'uso di una delle più grandi funzionalità di CryENGINE di Ciò che vedi è ciò che giochi dimostrando come potresti essere in grado di riprodurre il livello che hai creato su richiesta.

In questo articolo di Dan Tracy, autore del libro di cucina CryENGINE 3, tratteremo:

  • Posizionare gli oggetti nel mondo
  • Raffinazione del posizionamento dell'oggetto
  • Utilizzo dei livelli per la collaborazione di più sviluppatori
  • Passare alla modalità di gioco
  • Salvataggio del tuo livello
  • Esportazione in un motore
  • Oggetti di gioco essenziali
  • Esecuzione di una mappa dal Launcher

Posizionare gli oggetti nel mondo

Posizionare oggetti è un compito semplice; tuttavia, l'aggancio del terreno base non è spiegato alla maggior parte dei nuovi sviluppatori. È comune chiedere perché, quando si trascina e rilascia un oggetto nel mondo, non possono vedere l'oggetto. Questa sezione ti insegnerà i modi più semplici per posizionare un oggetto nella tua mappa usando il Segui il terreno metodo.

Prepararsi

1. Avere My_Level aprire all'interno di Sandbox (dopo aver completato uno dei due Scultura del terreno o Generare un terreno procedurale ricette).
2. Rivedere il Navigazione di un livello con la fotocamera Sandbox ricetta per familiarizzare con il Vista in prospettiva.
3. Avere il Rollup Bar aperto e pronto.
4. Assicurati di avere il EditMode ToolBar aperto (fare clic con il tasto destro del mouse sulla parte superiore principale ToolBar e spunta EditMode ToolBar).

Come farlo?

Per prima cosa seleziona il Segui il terreno pulsante. Quindi apri il Oggetti scheda all'interno del Rollup Bar. Ora dal Spazzole browser, selezionare qualsiasi oggetto che si desidera posizionare (ad esempio, defaults / scatola).

Puoi fare doppio clic sull'oggetto o trascinarlo sul Vista in prospettiva. Muovi il mouse ovunque ci sia terreno visibile e poi clicca ancora una volta per confermare la posizione in cui desideri posizionarlo.

Come funziona?

Il Segui il terreno lo strumento è uno strumento semplice che consente al perno dell'oggetto di adattarsi all'altezza esatta del terreno in quella posizione. Ciò è meglio visibile sugli oggetti che hanno un punto di rotazione vicino o vicino al fondo di essi.

C'è più?

Puoi anche seguire il terreno e scattare sugli oggetti. Questo metodo è molto simile al Segui il terreno metodo, tranne per il fatto che questo include anche oggetti quando si posiziona o si sposta l'oggetto selezionato.

Questo metodo non funziona su oggetti non fisici.


Raffinazione del posizionamento dell'oggetto

Dopo aver posizionato gli oggetti nel mondo con solo il Segui il terreno o Aggancio agli oggetti, potresti scoprire che dovrai regolare la posizione, la rotazione o la scala dell'oggetto. In questa ricetta, ti mostreremo le basi di come potresti essere in grado di farlo, insieme ad alcune scorciatoie da tastiera per rendere questo processo un po 'più veloce. Funziona con qualsiasi oggetto collocato nel tuo livello, da Entità su solidi.

Prepararsi

1. Avere My_Level aprire all'interno di Sandbox
2. Rivedere il Navigazione di un livello con la fotocamera Sandbox ricetta per familiarizzare con il Vista in prospettiva.
3. Assicurati di avere il EditMode ToolBar aperto (fare clic con il tasto destro sulla parte superiore principale ToolBar e spunta EditMode ToolBar).
4. Posiziona qualsiasi oggetto nel mondo.

Come farlo?

In questa ricetta, chiameremo il tuo oggetto (quello di cui desideri perfezionare la posizione) Box per facilità di riferimento.

1. Seleziona Scatola.
2. Dopo aver selezionato Scatola, dovresti vedere un widget a tre assi su di esso, che rappresenta ciascun asse nello spazio 3D. Per impostazione predefinita, questi assi si allineano al mondo:
* Y = Avanti
* X = Giusto
* Z = Up

Per spostare il Scatola nello spazio del mondo e cambiare la sua posizione, procedere con i seguenti passi:

3. Clicca su Seleziona e sposta icona nel EditMode ToolBar (1 per la scorciatoia da tastiera).
4. Fare clic su X freccia e trascina il mouse su e giù rispetto alla direzione della freccia.
5. Rilasciando il pulsante del mouse verrà confermata la modifica della posizione.

Puoi muovere oggetti su un singolo asse o due contemporaneamente facendo clic e trascinando sul piano che è adiacente a due assi qualsiasi: X + Y, X + Z o Y + Z. Per ruotare un oggetto, fai quanto segue :

1. Seleziona Scatola (se non l'hai già fatto).
2. Fare clic sul Seleziona e ruota icona nel EditMode ToolBar (2 per la scorciatoia da tastiera).
3. Clicca su Z freccia (ora ha una sfera alla fine di esso) e trascina il mouse da un lato all'altro per far rotolare l'oggetto rispetto all'asse.
4. Rilasciando il pulsante del mouse si confermerà il cambio di rotazione.

Non è possibile ruotare un oggetto lungo più assi. Per ridimensionare un oggetto, fai quanto segue:

1. Seleziona Scatola (se non l'hai già fatto).
2. Fare clic sul Seleziona e scala icona nel EditMode ToolBar (3 per la scorciatoia da tastiera).
3. Clicca su CENTRO box e trascina il mouse su e giù per scalare su tutti e tre gli assi contemporaneamente.
4. Rilasciando il pulsante del mouse verrà confermata la modifica della scala.

È possibile scalare su un solo asse o due assi; tuttavia, questo è altamente scoraggiato come Ridimensionamento non uniforme genererà mesh fisiche spezzate per quell'oggetto. Se è necessario ridimensionare un oggetto, si consiglia di ridimensionarlo in modo uniforme su tutti e tre gli assi!

C'è più?

Ecco alcuni modi aggiuntivi per manipolare oggetti nel mondo.

Posizione e rotazione locali

Per semplificare un po 'la posizione o la rotazione, potresti provare a cambiare il modo in cui il widget posizionerà o ruoterà il tuo oggetto cambiandolo per allinearlo rispetto al pivot dell'oggetto. Per fare questo, c'è un menu a discesa in EditMode ToolBar che avrà la possibilità di selezionare Locale. Questo è chiamato Direzione locale.

Questa configurazione potrebbe aiutare a posizionare l'oggetto dopo averlo ruotato.

Scatti a griglia e ad angolo

Per facilitare il posizionamento di oggetti non organici, come edifici o strade, potresti voler attivare il Aggancia alla griglia opzione. Attivando questa funzione ti permetterà di spostare l'oggetto su una griglia (attualmente relativa alla sua posizione). Per modificare la spaziatura della griglia, fai clic sulla freccia del menu a discesa accanto al numero per modificare la spaziatura (la spaziatura della griglia è espressa in metri).

Angolo Snaps si trova immediatamente a destra di Griglie Snaps. Attivando questa funzione ti permetterà di ruotare un oggetto di ogni cinque gradi.

CTRL + MAIUSC + clic

Anche se è un tasto di scelta rapida, per molti sviluppatori questo tasto di scelta rapida è estremamente utile per il posizionamento iniziale degli oggetti. Ti consente di spostare rapidamente l'oggetto in qualsiasi punto su qualsiasi superficie fisica relativa al tuo Vista in prospettiva.


Utilizzo dei livelli per la collaborazione di più sviluppatori

Una domanda comune che viene posta di solito su CryENGINE è come uno sviluppatore lavora allo stesso livello di un altro allo stesso tempo. La risposta è-Livelli. In questa ricetta, ti mostreremo come potresti essere in grado di utilizzare il sistema layer non solo per la tua organizzazione, ma per impostare layer esterni per altri sviluppatori su cui lavorare in parallelo.

Prepararsi

1. Avere My_Level aprire all'interno di Sandbox.
2. Rivedere il Navigazione di un livello con la fotocamera Sandbox familiarizzare con il Vista in prospettiva.
3. Avere il Rollup Bar aperto e pronto.
4. Rivedere il Posizionare gli oggetti nel mondo (posiziona almeno due oggetti) ricetta.

Come farlo?

1. Per questa ricetta, assumeremo che tu abbia il tuo repository per il tuo progetto o qualche mezzo per inviare il tuo lavoro ad altri nella tua squadra.
2. Per prima cosa, inizia posizionando due oggetti sulla mappa. Per il gusto della ricetta, faremo riferimento a loro come box1 e box2. Dopo aver posizionato entrambe le caselle, apri il Rollup Bar e fai apparire il Livelli linguetta.
3. Creare a nuovo strato facendo clic sul pulsante Nuovo livello (carta con un simbolo +).
4. A Nuovo strato apparirà la finestra di dialogo. Dargli i seguenti parametri:
* Nome = ActionBubble_01
* Visibile = Vero
* Esterno = Vero
* Congelato = falso
* Esporta al gioco = Vero
5. Ora seleziona box1 e apri il Oggetti scheda all'interno del Rollup Bar.
6. Da qui vedrai nel rollup principale di questo oggetto con valori come - Nome, Helper Size, MTL, e Specifiche minime. Ma anche in questo rollup vedrai un pulsante per i livelli (dovrebbe essere etichettato come Main). Cliccando su quel pulsante ti mostrerà una lista di tutti gli altri livelli disponibili.
7. Cliccando di nuovo su un altro livello che non è evidenziato, questo oggetto viene spostato su quel livello (fai clic adesso su questo ActionBubble_01).
8. Ora salva il tuo livello cliccando-File | Salvare.

Ora nel tuo costruire cartella, vai al seguente percorso: -? \ game \ Levels \ My_Level. Da qui noterai una nuova cartella chiamata Livelli. Dentro quella cartella, vedrai ActionBubble_01.lyr.

Questo strato deve essere il livello su cui gli altri sviluppatori lavoreranno. Affinché siano in grado di farlo, devi prima impegnarti My_Level.cry e il Livelli cartella nel repository (è più semplice impegnare l'intera cartella).

Dopo averlo fatto, puoi ora che il tuo altro sviluppatore apporti modifiche a quel livello spostandolo box1 in un'altra posizione. Quindi chiedi loro di salvare la mappa.

Falli commettere solo il ActionBubble_01.lyr al repository. Una volta recuperato dal repository aggiornato, lo noterai box1 si sarà spostato dopo che avrai riaperto My_Level.cry nell'editor con l'ultimo livello.

Come funziona?

I livelli esterni sono la chiave di tutto questo processo. Una volta a .piangere il file è stato salvato per fare riferimento a un livello esterno, accederà ai dati all'interno di tali layer al caricamento del livello in Sandbox.

È buona pratica assegnare un Proprietario della mappa chi si prenderà cura di .piangere file. Poiché questo è il file principale, solo una persona dovrebbe essere responsabile di mantenerlo creando nuovi livelli, se necessario.

C'è più?

Ecco un elenco di limitazioni di ciò che i livelli esterni non possono contenere.

Limitazioni del livello esterno

Anche se qualsiasi entità / oggetto che collochi nel tuo livello può essere inserito in livelli esterni, è importante notare che ci sono alcuni elementi che non possono essere posizionati all'interno di questi livelli. Ecco un elenco degli elementi comuni di proprietà esclusiva di .piangere file:

  • Terreno
  • * Altezza mappa
    * Dimensione unità
    * Altezza massima del terreno
    * Fori
    * Textures

  • Vegetazione
  • Impostazioni dell'ambiente (a meno che non siano forzate tramite Game Logic)
  • * Altezza dell'oceano

  • Impostazioni dell'ora del giorno (a meno che non siano forzate tramite Game Logic)
  • Baked AI Markup (Il proprietario del .piangere il file deve rigenerare AI se viene creato un nuovo markup su layer esterni)
  • Marcatori Minimappa

Passare alla modalità di gioco

CryENGINE è orgoglioso del detto Quello che vedi è ciò che suoni, e il passaggio alla modalità di gioco è una testimonianza di questo.

È ovvio che testare il proprio lavoro spesso è la chiave per un progetto di successo e il rapido e semplice utilizzo del passaggio a Modalità di gioco all'interno del editore ti permette di testare a volontà senza la necessità di chiudere Sandbox.

Anche se l'Editor è stato creato con questa funzionalità per consentire agli sviluppatori di verificare il proprio lavoro, questa è ancora solo un'emulazione. Ciò significa che in questa modalità sono disponibili diverse regole dell'editor speciale e opzioni di debug, che non sono pienamente rappresentative di ciò che il Giocatore potrebbe vedere nel Pure Game. Anche se è una buona idea testare spesso passando alla modalità Game, è anche importante fare test finali nel Launcher sulla tua piattaforma di destinazione per avere una corretta Pure Game Esperienza.

In questa ricetta, tratteremo l'uso semplice ma molto importante del passaggio alla modalità di gioco. Questa funzione ti consente di saltare immediatamente al tuo livello e ti permette di testare ciò che il giocatore vedrà, ascolterà e sentirà nella posizione in cui ti trovi Macchina fotografica prospettica.

Prepararsi

Avere My_Level aprire all'interno di Sandbox.

Rivedere il Navigazione di un livello con la fotocamera Sandbox familiarizzare con il Vista in prospettiva.

Come farlo?

Nella barra degli strumenti principale di Sandbox, trova Gioco | Passa al gioco o clicca su Ctrl + G. È così semplice.

La logica di gioco può cambiare la posizione di spawn iniziale del giocatore. Se questa logica è abilitata, allora sarai costretto a spawn anche in questa posizione quando entrerai in modalità gioco.


Salvataggio del tuo livello

In superficie, il salvataggio del livello sembra un processo semplice; tuttavia, ci sono alcune funzionalità importanti di cui dovresti essere a conoscenza quando salvi il tuo livello. Questa ricetta ti mostrerà come fare un salvataggio di base, copiare / spostare il tuo livello (fare non uso Salva come) e backup automatici.

Prepararsi

Hai qualche livello aperto all'interno di Sandbox.

Aprire Esplora risorse nel seguente percorso: ? \ CryENGINE_Build \ gioco \ Levels.

Come farlo?

Per salvare un livello, vai a File | Salvare.

Ctrl + S non funziona per impostazione predefinita. Sarà necessario impostare un tasto di scelta rapida per quello.

Quando si copia / sposta i livelli:

1. Inizialmente, salva il tuo livello nella posizione predefinita.
2. Vai alla posizione del livello in Windows Explorer (? \ game \ Levels).
3. Usando i comandi di Windows copia / taglia l'intero My_Level cartella.
4. Incolla il livello nella posizione desiderata.
5. Se necessario, rinominare entrambi My_Level cartella e My_Level.cry a qualcosa che preferisci.

Ti consigliamo di non eseguire mai a Salva come per il tuo livello. Sfortunatamente, ci sono diverse dipendenze (Level.pak, TerrainTexture.pak, Layers, Minimap images e così via) che non vengono spostati o ricollegati quando Salva come viene eseguita. Sono tutti dipendenti dalla cartella in cui sono posizionati. Se lo fai, vedrai diverse anomalie all'interno del tuo livello (trame rotte, bug nella logica di gioco, risorse mancanti).

Quando crei un backup, ricorda che per impostazione predefinita, Sandbox crea My_Level.bak file dopo la seconda / terza volta il tuo livello viene salvato. Questi .bak i file sono essenzialmente i precedenti salvataggi del tuo .piangere file.

Se, per qualsiasi ragione, hai bisogno di tornare a un salvataggio precedente del tuo livello, puoi cancellare il tuo My_Level.cry file e rinomina My_Level.bak # a My_Level.cry e riapri il tuo livello all'interno di Sandbox.

Inoltre, per impostazione predefinita, Sandbox crea fino a due revisioni precedenti (My_Level.bak e My_Level.bak2).

Come funziona?

Per impostazione predefinita, tutti i livelli sono salvati nella propria cartella all'interno di ? \ game \ Levels dal loro nome di livello. Per esempio, My_Level avrà una sua cartella con la cartella del livello. Una volta salvato, ogni livello conterrà anche a *.piangere file, con * come anche il nome del livello. Ognuno di questi .piangere i file contengono tutte le informazioni pertinenti necessarie per raggiungere il tuo livello (proprio come un modello per il tuo livello).

C'è più?

A seconda del tuo stile di lavoro, potresti voler abilitare il sistema di Backup automatico. Ciò salverà automaticamente il tuo lavoro ogni intervallo di X minuti con il nome di tua scelta (Auto Backup di default) nella cartella del tuo livello. Questi backup automatici salveranno continuamente finché il tuo editor è aperto o disattiverai questa funzione.

Per accedere a questa funzione, aprire Sandbox | Strumenti | Preferenze | Generale / File | Auto Backup.


Esportazione in un motore

Anche se il salvataggio del tuo livello creerà a .piangere file per te, è estremamente importante notare che a .piangere da solo non funzionerà nel Launcher. Per questo è necessario eseguire questa ricetta, che creerà i file necessari per l'esecuzione Gamemode puro.

Prepararsi

Avere My_Level aprire all'interno di Sandbox.

Come farlo?

Vai a File | Esporta nel motore o clicca su Ctrl + E.

Come funziona?

Questo passaggio fondamentale è necessario per convertire tutte le impostazioni del blueprint nel tuo .piangere file in a level.pak all'interno del My_Level cartella da utilizzare Gamemode puro. Questo level.pak è fondamentalmente una cache di dati per il gioco da utilizzare, che contiene tutte le informazioni fornite su Game Logic, AI Markup, Elenco particelle, Elenco pennelli e così via.

C'è più?

Ecco alcune informazioni utili che dovresti sapere .pak File.

Apertura di file .pak

È possibile aprire questi file .pak e vedere le informazioni memorizzate al loro interno utilizzando software di compressione di terze parti, come WinZIP e WinRAR. Tuttavia, non è consigliabile farlo a meno che non si abbia familiarità con la gestione dei file che si desidera modificare manualmente. Se cambi i file che si trovano all'interno di questi file .pak, corri il rischio di danneggiare il file .pak e di rompere il tuo livello per il Launcher.
I file .pak corrotti devono essere cancellati e riesportati

Non c'è bisogno di farsi prendere dal panico se, per qualsiasi ragione, uno qualsiasi dei tuoi file .pak diventa corrotto e inutilizzabile in Pure Gamemode. Puoi sempre eliminarli e generarne uno nuovo dal tuo My_Level.cry ripetendo questa ricetta.


Oggetti di gioco essenziali

Anche se abbiamo spiegato come esportare il tuo livello in cui essere utilizzato Gamemode puro, potresti scoprire che quando avvii il tuo livello, non sei nella posizione corretta sulla mappa. Questa rapida ricetta ti mostrerà come creare un punto di spawn per Gamemode puro e ricorda anche l'importanza di avere una superficie fisica da generare.

Prepararsi

1. Avere My_Level aprire all'interno di Sandbox.
2. Rivedere il Navigazione di un livello con la fotocamera Sandbox familiarizzare con il Vista in prospettiva.
3. Rivedere il Posizionare gli oggetti nel mondo e Affinamento del posizionamento dell'oggetto ricette.
4. Avere il Rollup Bar disponibile nel tuo layout Sandbox e pronto.

Come farlo?

A meno che il tuo gioco non supporti una sorta di meccanica di volo del giocatore, ti consigliamo di scegliere una posizione in cui il giocatore può stare in piedi quando genera inizialmente il tuo livello. Qualsiasi superficie fisica (piano, tetto, terreno, roccia e così via) funzionerà.

Per posizionare un punto di spawn, segui questi passaggi:

1. Vai al tuo Rollup Bar.
2. Apri il Oggetti scheda e fare clic su Entità pulsante.
3. Apri il Altri cartella nell'elenco delle entità.
4. Luogo Punto di spawn nel luogo in cui si desidera generare il giocatore.

Come funziona?

Questo punto di spawn iniziale funzionerà automaticamente come punto di spawn principale per la tua mappa Gamemode puro (purché si mantenga il valore predefinito SinglePlayer.lua regole del gioco). Se salti nella tua mappa dal Launcher ora, verrai generato in questa posizione.

Eventuali punti di spawn aggiuntivi non funzioneranno a meno che non ci sia qualche logica di gioco collegata alla loro funzionalità.


Esecuzione di una mappa dal Launcher

La ricetta finale di questo articolo spiegherà come accedervi Gamemode puro versione di My_Level dal Launcher.

Prepararsi

È necessario avere una mappa con un punto di spawn funzionante (altrimenti si genererà a 0,0,0), che è stata esportata dal motore con un funzionale level.pak.

Il livello deve essere anche dentro il tuo Costruire cartella.

Come farlo?

1. Da Esplora risorse, aprire entrambi? \ Bin32 o? \ Bin64.
2. Avvia il file eseguibile Launcher.exe.
3. Apri la console (~).
4. Digitare quanto segue: mappa My_level.
5. Quindi premere accedere.

Questo caricherà la mappa e ti genererà nel punto di spawn che è stato fornito.


Sommario

In questo articolo abbiamo appreso le funzionalità di base e più comunemente utilizzate fornite da Sandbox.


Circa l'autore :

Dan Tracy

Dan Tracy è il Level Designer di Crytek per il pluripremiato CryENGINE e Crysis 2. È responsabile della creazione e della manutenzione di numerose funzionalità tecniche e applicazioni esterne utilizzate per la telemetria e l'ottimizzazione. Visto come più di un level designer, Dan è orgoglioso di spingere la busta quando si tratta di migliorare sia i disegni tecnici che quelli relativi al gioco in più discipline di produzione. Dan è stato assunto da Crytek nel 2009 dopo l'anno precedente lavorando come tecnico dell'assicurazione della qualità per BioWare. È stato reclutato grazie al suo ruolo fondamentale nel co-fondare e guidare lo sviluppo del progetto di conversione totale vincitore del premio "MechWarrior: Living Legends". Da allora, è stato presentato in numerose riviste di giochi ed è stato intervistato da più organi di stampa. Dan è un appassionato giocatore, ma un modder e game designer ancora più appassionato con una vasta conoscenza ed esperienza con più motori e titoli tra cui "Aurora d'inverno" Aurora, Motore di Battlefield Frostbite, Unreal 3 e CryENGINE.


Vai al post del concorso e scopri come entrare!



Nota dell'editore: Questo post è stato sponsorizzato da Packt Publishing.