AutodeskGames / stingray-plugin

Questo repository fornisce un modo semplice per iniziare a creare nuovi plug-in per Autodesk Stingray 1.9.

Troverai un plug-in di esempio già impostato con alcuni contenuti di base e un framework su cui puoi costruire:

  • Un esempio .stingray_plugin file descrittore, che dice a Stingray qual è il tuo plug-in e cosa fa.
  • Vari componenti che estendono l’ambiente Stingray:
    • Risorse di contenuto che il plug-in mette a disposizione di tutti i progetti Stingray aperti nell’editor.
    • Codice C / C++ che estende il motore di runtime con nuove funzionalità.
    • Codice C / C++ che estende l’ambiente JavaScript dell’editor con ganci a funzioni implementate in codice nativo.
    • Moduli JavaScript che estendono l’editor Stingray con nuovi pannelli, menu e comandi.
    • Un progetto di contenuto Stingray che gli utenti del plug-in vedranno nella scheda Modelli del Project Manager.
  • Tutto il necessario per costruire C / C++ codice plug-in in .file dll pronti per il caricamento del motore e dell’editor:
    • make.rb avvia il sistema di compilazione del plug-in.
    • spm.rb recupera e installa pacchetti di build e librerie esterne. Viene chiamato internamente da make.rb, ma puoi anche usarlo da solo se il tuo plug-in ha altre dipendenze che vuoi scaricare automaticamente.
    • cmake genera e compila le soluzioni di Visual Studio per le estensioni plug-in native.

Per ulteriori informazioni sui plug-in, su come funzionano e su cosa è possibile fare con essi, consultare la Guida di Stingray SDK.

Passaggio 1. Installa prerequisiti

Avrai bisogno di un client Git per clonare il contenuto di questo repository sul tuo computer.

Se vuoi che il tuo plug-in includa librerie C/C++ che estendono l’editor o il motore, avrai anche bisogno di:

  • Ruby 2.0 o versione successiva.

  • Nodo 6.11.2 LTS o successivo.

  • Visual Studio 2015 con aggiornamento 3 & Patch KB3165756.

Passaggio 2. Ottenere una copia locale della fonte

Sarà necessario ottenere il contenuto di questo repository al computer in modo da poter lavorare con esso.

IMPORTANTE: Devi ottenere la versione di questo repository che corrisponde alla versione di Stingray con cui userai il tuo plug-in! Ciò è particolarmente vero se il plug-in utilizzerà un C/C++ .dll per estendere il motore o l’editor, poiché avrai bisogno di versioni compatibili dei file di intestazione Stingray SDK per compilare il plug-in.

  • Il ramo master è sempre sincronizzato con l’ultima versione rilasciata di Stingray. Questo è il ramo predefinito che otterrai se cloni questo repository. Usalo se vuoi che il tuo plug-in funzioni con la versione corrente di Stingray.

  • Se si desidera impostare il plug-in per funzionare con una versione precedente di Stingray, è possibile ottenere una versione di questo repository per abbinare controllando un tag di rilascio, o scaricando il sorgente dalla scheda Releases su GitHub.

Se si ha accesso al codice sorgente per Stingray:

  • Se stai usando il ramo develop del repository Stingray engine per raccogliere le ultime e più grandi modifiche e correzioni di bug, usa il ramo develop di questo repository per creare il tuo plug-in.

  • Se vuoi che il tuo plug-in supporti una prossima versione che non è ancora disponibile pubblicamente ma che ha il suo ramo releasenel repository del motore Stingray, usa il ramo release corrispondente di questo repository per rimanere sincronizzato.

Punto 3. Imposta la tua directory di libreria

Ogni revisione del codice sorgente del plug-in dipende da librerie e dipendenze che non sono memorizzate in Git. Invece, i nostri strumenti di compilazione copiano queste librerie sul tuo computer da un percorso di archiviazione su Internet.

Prima di eseguire una build, è necessario specificare una posizione sul computer in cui si desidera archiviare la build e accedere a queste librerie.

  • Crea una variabile di ambiente denominataSR_LIB_DIR. Impostare il suo valore su qualsiasi directory vuota sul computer in cui si desidera copiare le librerie.

Punto 4. Build

Se stai includendo un plug-in C/C++ per il motore o l’editor, costruiscilo eseguendo lo scriptmake.rb nella directory principale di questo repository.

> ruby make.rb

Questo comando:

  • aggiorna automaticamente la directory della libreria con le versioni corrette di tutte le librerie necessarie per la compilazione.
  • genera e costruisce soluzioni di Visual Studio per il motore Stingray e strumenti di editing.
  • offre diversi parametri che è possibile utilizzare per controllare ciò che viene costruito e come. Chiamalo con il parametro della riga di comando--help per ottenere un elenco di tutti i parametri disponibili.

NOTA: Se si ottiene un errore sulla verifica del certificato, potrebbe essere necessario installare questa correzione SSL per RubyGems

Build results

Per impostazione predefinita, lo script scrive tutto compilato .file dll nella directoryplugin/binaries sotto la directory principale in cui è stato clonato il codice sorgente Stingray.

È inoltre possibile utilizzare le soluzioni di Visual Studio generate nelle cartelle build/engine e build/editor per lavorare con il codice sorgente e ricostruire le librerie.

Tutorial!

Vedi il wiki per un tutorial che ti guida passo dopo passo attraverso il processo di creazione di un plug-in che estende sia il motore che l’editor.

Struttura di directory

  • build: Vari output di generazione (ad esempio soluzioni generate da CMake)
  • cmake: CMake helper scripts scaricato da spm
  • editor: Una cartella in cui è possibile inserire il codice C/C++ che estende l’editor.
  • engine: Una cartella in cui è possibile inserire il codice C/C++ che estende il motore di runtime.
  • plugin: Altre fonti di plugin (descrittore di plugin, estensione dell’editor, editor compilato e estensioni del motore, ecc.)
  • stingray_sdk: Editor Stingray e motore C/C++ header based plugin SDK scaricato daspm.
  • tools: Vari strumenti di compilazione scaricati da spm.
  • make.rb: Crea script di interfaccia. Eseguire make.rb --help per visualizzare tutte le opzioni.

Una volta creato con successo il plugin Stingray, è possibile comprimere la cartellaplugin e distribuire il plugin. Per informazioni su come iniziare con l’SDK di Stingray, consulta i video tutorial e gli argomenti nella Guida principale dell’SDK di Stingray.

Struttura del plugin

  • stingray-example.plugin: Descrittore iniziale del plugin. Si consiglia vivamente di rinominare il nome del file di questo file.
  • sample_project/: Progetto di esempio che dimostra come funziona il plugin.

Più aiuto

Si prega di consultare la Guida Stingray SDK per maggiori dettagli su come lavorare con plug-in, documentazione di riferimento API, e altro ancora.

Resta in contatto!

Il tuo feedback è essenziale per rendere questo prodotto un successo. Vi preghiamo di aiutarci condividendo le vostre opinioni su tutte le cose che stiamo facendo male nel forum degli utenti Stingray o nei forum degli utenti sul portale beta Autodesk. Gli ingegneri e i progettisti Autodesk sono attivamente impegnati nei thread del forum, in modo da poter far sentire la tua voce forte e chiara e ottenere aiuto direttamente dalla fonte.

Lascia un commento

Il tuo indirizzo email non sarà pubblicato.