Scolring - Forum

Entraides et échanges autour de la technologie Scol - Informations and exchanges on the Scol technology

Vous pouvez changer la langue de l'interface une fois inscrit - You can change the language once registered

You are not logged in.

#1 23-May-2011 19:00:13

iri
Admin. / Scol language & Scol apps developer
From: France
Registered: 22-Feb-2009
Posts: 2,024
Website

SO3Engine et Ressources

Salut,

Quelles sont les différences fondamentales entre :
SO3AddResourceLocationDirectory, SO3AddResourceLocationURL et SO3AddResourceLocationZIP d'une part
et SO3SceneLoadResource et SO3SceneLoadResourceMaterial d'autre part ?

À part de lister un répertoire ou de récupérer depuis une url ...

Dans le premier lot, il n'y a pas de lien avec une scène précise contrairement au second lot. Est-ce à dire que dans le premier cas, les ressurces sont disponibles quelque soit la scène ? Dans le second, elles ne sont disponibles que pour une scène donnée ? Autres choses ?

Enfin, je vois dans le code source de la fonction SO3AddResourceLocationDirectory (SCOLResources.cpp., ligne 431), ce commentaire : « // TODO REMOVE »
Cette fonction est-elle condamnée à disparaître ?

Offline

#2 23-May-2011 19:11:32

iri
Admin. / Scol language & Scol apps developer
From: France
Registered: 22-Feb-2009
Posts: 2,024
Website

Re: SO3Engine et Ressources

SO3AddResourceLocationDirectory ne charge apparemment pas les matériaux (*.material) ce que semble confirmer un commentaire dans le code source de la fonction ...

Lorsqu'on charge une ressource scene (*.scene) avec SO3SceneLoadResource, quel est le flag le mieux adapté ?

Offline

#3 23-May-2011 19:17:40

iri
Admin. / Scol language & Scol apps developer
From: France
Registered: 22-Feb-2009
Posts: 2,024
Website

Re: SO3Engine et Ressources

Encore une question
Je n'ai pas lu toute la doc de Ogre3d mais les fichiers de ressources au format xml "texte" ne semblent pas lus par SO3SceneLoadResource, uniquement les binaires. Est-ce bien le cas ?

Offline

#4 23-May-2011 20:22:22

arkeon
Admin. / Scol language & OpenSpace3D developer
From: Nantes
Registered: 30-Mar-2009
Posts: 5,091
Website

Re: SO3Engine et Ressources

yop !

alors :
SO3AddResourceLocationDirectory Url et Zip sont amenées à disparaitres (ou au pire a changer ne fonctionne plus / a jamais fonctionné)
SO3SceneLoadResourceMaterial heuu bein elle sert a rien non plus ^^ comme quoi y a encore pas mal de trucs passés a coté du ménage de printemps hmm

utilises la fonction SO3SceneLoadResource pour précharger une ressource dans un groupe.

pour le fichier .scene attention ceci n'est pas un format natif de ressource Ogre, dans openspace ce fichier xml est parsé et appels les fonctions adéquat pour créer / charger les éléments
les fichiers mesh.xml non binaires ne sont pas chargés (pourquoi ? je sais pas smile > Ticket ^^)

pour les autres types de fichiers Scol gérant de lui meme les fichiers il n'y a aucun intérêt (enfin je pense) à les charger dans les groupes de ressources Ogre (je parle des fichiers .txt ou autre)

Offline

#5 23-May-2011 21:01:53

iri
Admin. / Scol language & Scol apps developer
From: France
Registered: 22-Feb-2009
Posts: 2,024
Website

Re: SO3Engine et Ressources

arkeon wrote:

les fichiers mesh.xml non binaires ne sont pas chargés (pourquoi ? je sais pas smile > Ticket ^^)

Et un ticket, un ! big_smile

arkeon wrote:

dans openspace ce fichier xml est parsé et appels les fonctions adéquat pour créer / charger les éléments

Quelles sont ces fonctions ?

1- Je charge la ressource via SO3SceneLoadResource
2- Pour créer les meshes, je prends SO3SceneLoadEntity mais cela n'est absolument pas logique.

J'ai bien essayé avec SO3SceneGetNode mais il me renvoie nil ; je suppose que je dois justement le créer avant ...
J'ai essayé aussi avec SO3SceneNodeCreate mais il me crée un nouvel objet avec le nom passé, pas l'objet contenu dans une ressource et portant ce nom

À noter d'ailleurs que SO3EntityCreate est dans la doc mais n'est plus présente au niveau de l'API.

Je suis loin d'être une bille en Scol mais retrouver le nom précis d'une simple fonction dans tout le code source d'os3d, c'est pas coton ! wink Et la doc du moteur n'est pas spécialement explicite.

Offline

#6 23-May-2011 21:33:49

arkeon
Admin. / Scol language & OpenSpace3D developer
From: Nantes
Registered: 30-Mar-2009
Posts: 5,091
Website

Re: SO3Engine et Ressources

la doc du moteur mériterais d'être updatée ^^ (oups c'est fait smile, fais pas gaffe a la fonction reloadGroup c'est un test, j'ai ajouté Deprecated sur les fonction mentionnées ci dessus)

pour les ressources dans SO3 ^^ le principe est qu'il faut "déclarer les ressources avant de les charger (afficher))
pour charger un mesh il faut donc :
1 - charger les textures, matériaux et mesh dans l'ordre avec SO3SceneLoadResource.
2 - créer l'instance du mesh (object) faisant référence à la ressource pré déclarée. SO3SceneLoadEntity

ton fichier material doit contenir les chemins vers les textures avec les dossiers relatifs a la partition scol (openspace réécrit ces fichiers automatiquement)

le parser du xml scene dans os3deditor est en grande partie dans loadOgreMaxNodes

Offline

#7 23-May-2011 21:36:15

arkeon
Admin. / Scol language & OpenSpace3D developer
From: Nantes
Registered: 30-Mar-2009
Posts: 5,091
Website

Re: SO3Engine et Ressources

conseil :
de base déclares SO3CbLogs avec au moins un _fooS pour afficher les érreurs / warnings eventuels sur les resources dans ogre

Offline

#8 23-May-2011 22:17:26

iri
Admin. / Scol language & Scol apps developer
From: France
Registered: 22-Feb-2009
Posts: 2,024
Website

Re: SO3Engine et Ressources

Merci du conseil.

Pour SO3SceneLoadEntity, ok, je l'utilise depuis le début mais ça me paraît pas logique.
Ce ne serait pas mieux d'inclure dans cette fonction (SO3SceneLoadEntity) le chargement dans un groupe ? Le nom du groupe est déjà nécessaire ...
Enfin, une suggestion !

Offline

#9 23-May-2011 23:42:26

arkeon
Admin. / Scol language & OpenSpace3D developer
From: Nantes
Registered: 30-Mar-2009
Posts: 5,091
Website

Re: SO3Engine et Ressources

c'est pas faux ^^
je me demande si ça a pas déja été le cas à un moment ^^
tout comme la création du groupe du coup dans la même logique
mais après a force c'est la qu'on risque de casser la logique avec le reste hmm

Offline

Board footer

Powered by FluxBB