Motivo
Sto provando a creare una piccola applicazione demo utilizzando WebGL. Ho scelto di usare SceneJS, perché sembrava un framework semplice e sarebbe più che sufficiente per questo scopo.Convertire il modello 3D in SceneJS JSON, inclusa la trama
Ho scaricato un paio di modelli .blend (Amy Rose, tra gli altri) e li ho esportati come file Collada (.dae) usando Blender. Poi ho usato scenejs-pycollada per convertirli in un modello JSON.
Ho appena trascorso un paio d'ore a far funzionare il convertitore scenejs-pycollada. Apparentemente ottenere che le dipendenze di Python funzionino in Windows non è così facile se non hai mai usato Python in precedenza. ;)
Problema
Ma ora sono bloccato (di nuovo). Il mio problema è che i modelli non hanno trame o materiali.
Ho usato il Seymour Plane Example di SceneJS. Il modello che ho convertito è appena visibile. È nero e non sembra rispondere all'illuminazione nella scena. Se carico l'aereo e il modello insieme, posso vedere che il modello è caricato, perché le sue braccia e le sue gambe stanno fuoriuscendo dall'aereo.
Ora ho seguito un paio di tutorial che mi permettevano di esportare la trama come immagine PNG. Ho quindi modificato il nome del file di texture nel modello JSON in modo che corrisponda al nome del file, ma non aiuta.
Quindi spero che qualcuno possa aiutarmi a trovare un modo per esportare i modelli di Blender (o altri modelli 3D comuni) nel formato JSON usato da SceneJS, incluse le trame.
Qualsiasi altro metodo di caricamento dei modelli in SceneJS lo farà, a condizione che funzioni.
Se si dispone di un collegamento per il download gratuito di modelli JSON corpo/figura, questo sarebbe utile per ora, ma preferisco imparare come funziona. :)
sto usando
- Windows 7 Home Premium a 64bit
- Python 2.7 (Windows 32 bit)
ho scelto la versione a 32 bit, perché apparentemente migliore supporto per le librerie, e più installatori disponibili. All'inizio ho mixato 32 e 64 bit e mi ha causato problemi, ma ora tutto sembra funzionare (tranne che per le trame, cioè). - Blender 2.59
- SceneJS 0.8.0
mio flusso di lavoro
In Blender ho esportare i modelli Collada file (* .dae), e poi convertirli in Raw JSON utilizzando scenejs- pycollada. Questo mi dà un file JSON con due oggetti in esso. La prima sembra essere la scena, la seconda la modella. Tengo il secondo e lo metto in una variabile Javascript che viene usata nel codice dell'esempio di SceneJS. Il modello termina con le proprietà , "type": "library", "parent": "Scene"
che ho bisogno di rimuovere dal codice per farlo caricare del tutto.
Grazie! Sembra funzionare con la tua versione di scenejs-pycollada e SceneJS 2.0. Non ho nemmeno bisogno di ricompilare nulla, quindi va bene. ;) Non incolpare moltissimo i ragazzi di Numpy, è stata una grandissima colpa mia installare le versioni incompatibili delle varie librerie. In questo momento sto provando GLGE, che qualcuno ha raccomandato. (carica i file .dae senza doverli convertire). Per ora ho bisogno di far funzionare la mia demo, ma spero di trovare presto il tempo per reinvestigare SceneJS. Grazie ancora. – GolezTrol
Nessun problema, altri bug fammi sapere :) –