cs_tds
Messages postés351Date d'inscriptionmercredi 21 janvier 2004StatutMembreDernière intervention 9 décembre 2004
-
18 mars 2004 à 12:32
dmaillet
Messages postés500Date d'inscriptionmercredi 20 août 2003StatutMembreDernière intervention11 juillet 2007
-
11 mai 2005 à 10:46
Voilà, je ne parviens pas à bouger dans mon univers (VirtualUniverse). Je ne veux pas utiliser SimpleUniverse parce que certaines objects view... sont isLive == true et je ne peux donc pas changer des capabilities...
// User-specified canvas
private Canvas3D canvas;
// Scene graph elements to which the user may want access
private BranchGroup vpRoot = new BranchGroup();
private VirtualUniverse universe;
private Locale locale;
private TransformGroup vpTrans;
private View view;
this.canvas = c;
//Establish a virtual universe that has a single
// hi-res Locale
universe = new VirtualUniverse();
locale = new Locale(universe);
// Create a PhysicalBody and PhysicalEnvironment object
PhysicalBody body = new PhysicalBody();
PhysicalEnvironment environment = new PhysicalEnvironment();
view = new View();
view.addCanvas3D(c);
view.setPhysicalBody(body);
view.setPhysicalEnvironment(environment);
// Create a BranchGroup node for the view platform
BranchGroup vpRoot = new BranchGroup();
// Create a ViewPlatform object, and its associated
// TransformGroup object, and attach it to the root of the
// subgraph. Attach the view to the view platform.
Transform3D t = new Transform3D();
t.set(new Vector3f(0.0f, 0.0f, 2.0f));
ViewPlatform vp = new ViewPlatform();
vpTrans = new TransformGroup(t);
view.attachViewPlatform(vp);
vpTrans.addChild(vp);
vpRoot.addChild(vpTrans);
// Attach the branch graph to the universe, via the
// Locale. The scene graph is now live!
locale.addBranchGraph(vpRoot);
}
/***********************/
/* LES GET ET LES SETS */
/***********************/
public VirtualUniverse getVirtualUniverse(){ return universe; }
public Locale getLocale (){ return locale; }
public TransformGroup getTransformGroup (){ return vpTrans; }
public View getView (){ return view; }
public Canvas3D getCanvas3D (){ return canvas; }
public BranchGroup getBranchRoot (){ return vpRoot; }
}
VOICI SIMPLEUNIVERSE (DE JAVA)
***************************
///////////////////////////////////////////////////////////
// DeJaved by mDeJava v1.0. Copyright 1999 MoleSoftware. //
// To download last version of this software: //
// http://molesoftware.hypermatr.net //
// e-mail:molesoftware@mail.ru //
///////////////////////////////////////////////////////////
// JAD JavaDecompiler by Pavel Kuznetsov //
// www.geocities.com/SiliconValley/Bridge/8617/jad.html //
///////////////////////////////////////////////////////////
public ViewingPlatform getViewingPlatform()
{
return viewer[0].getViewingPlatform();
}
public Canvas3D getCanvas()
{
return getCanvas(0);
}
public Canvas3D getCanvas(int i)
{
return viewer[0].getCanvas3D(i);
}
public void addBranchGraph(BranchGroup branchgroup)
{
locale.addBranchGraph(branchgroup);
}
public static GraphicsConfiguration getPreferredConfiguration()
{
GraphicsConfigTemplate3D graphicsconfigtemplate3d = new GraphicsConfigTemplate3D();
String s = (String)AccessController.doPrivileged(new Object() /* anonymous class not found */
class _anm1 {}
cs_tds
Messages postés351Date d'inscriptionmercredi 21 janvier 2004StatutMembreDernière intervention 9 décembre 2004 18 mars 2004 à 16:03
RELAX J'AI TROUVE...
JE METTRAI BIENTÔT MON CODE SUR LE SITE.
CE SERA UN VIRTUAL UNIVERSE + PUISSANT QUE LE SIMPLEUNIVERSE ET ON POURRA CHANGER LES CAPABILITIES COMME ON VEUT :-p
cs_tds
Messages postés351Date d'inscriptionmercredi 21 janvier 2004StatutMembreDernière intervention 9 décembre 2004 18 mars 2004 à 16:04
RELAX J'AI TROUVE...
JE METTRAI BIENTÔT MON CODE SUR LE SITE.
CE SERA UN VIRTUAL UNIVERSE + PUISSANT QUE LE SIMPLEUNIVERSE ET ON POURRA CHANGER LES CAPABILITIES COMME ON VEUT :-p
cs_neodante
Messages postés2835Date d'inscriptionlundi 11 août 2003StatutModérateurDernière intervention16 décembre 200611 18 mars 2004 à 16:42
:big) Neodante :big)
J'allais te dire la même chose pour les capabilities ... m'enfin ça sert également optimiser ton arbre et donc ton rendu, tout comme la méthode compile() !!
@++
cs_tds
Messages postés351Date d'inscriptionmercredi 21 janvier 2004StatutMembreDernière intervention 9 décembre 2004 19 mars 2004 à 10:19
Ca y est, c'est fait 8-)
J'ai fini mon virtualuniverse avec tout les galaxies qui sont animées et on peut bouger dans l'environnement...
Je pense que je vais encore ajouter les tests de collision, ce serait surement utile à plein de monde :)
Le code sera disponible dans 1 semaine ou deux le temps de le nettoyer...
cs_tds
Messages postés351Date d'inscriptionmercredi 21 janvier 2004StatutMembreDernière intervention 9 décembre 2004 19 mars 2004 à 16:14
J'essaie de détecter les collisions comme les games à la 1°personne. Pas simple... De plus presque toutes les infos sur le NET sont avec des SimpleUniverse.
Mais bon, je devrais bientôt trouver un moyen de faire cela.
cs_neodante
Messages postés2835Date d'inscriptionlundi 11 août 2003StatutModérateurDernière intervention16 décembre 200611 19 mars 2004 à 23:22
:big) Neodante :big)
Quoi comme type de viewer ... quel format de fichier ... tout ça quoi !! J3D c'est vraiment bon ... quand on sait s'en servir car pas facile d'en faire sans se plonger dedans !!! non ???
@+
cs_tds
Messages postés351Date d'inscriptionmercredi 21 janvier 2004StatutMembreDernière intervention 9 décembre 2004 24 mars 2004 à 11:45
LE RESULTAT EST PROCHE...
Vu l'aspect assez compliqué du java3d (du surement à un manque de pratique) je vais essayer d'être clair.
VOICI LE DERNIER PROBLEME:
1) J'ai un univers composé de deux branchesGroup
|_ un de volume
|_ un de vue
2) Mes behaviours détectent bien les collisions mais seulement entre les objets => normal.
3) Problème, il ne considère pas mon point de vue comme un objet.
4)Solution attacher un sphère transparente à ma caméra. Comme cela quand je me déplace je détecterai les collisions avant que les éléments ne rentrent en collision :)
5) Je pense que le Problème est: ma sphère ne bouge pas avec ma caméra. Quand je me déplace ma sphère reste sur place :sad)
=> DONNEZ VOTRE AVIS ET VOS ASTUCES SUR CETTE IDEE
cs_neodante
Messages postés2835Date d'inscriptionlundi 11 août 2003StatutModérateurDernière intervention16 décembre 200611 24 mars 2004 à 12:50
:big) Neodante :big)
Fais une classe Camera avec laquelle tu fais une composition d'une sphère que ta classe controleras (déplacera et géra la collision) sans que tu t'en apercoive juste en déplacant ta caméra ... c'est ce que je fais en C++ et c'est efficace maintenant y a plus qu'à faire et je me doute bien qu'en Java3D ca y avoir pas mal de code ... mais à mon avis c'est LA solution propre à ton problème et plus elle sera réutilisable ...
Dis moi ce que tu en pense .... à moins que ce soit ce que tu as fait ... :-p
D'ailleurs c'est ce que je vais faire dans pas longtemps à mon avis ... c'est noté dans ma boite à idée ... déjà bien fournie !
@+
cs_tds
Messages postés351Date d'inscriptionmercredi 21 janvier 2004StatutMembreDernière intervention 9 décembre 2004 24 mars 2004 à 13:02
D'office, cela fonctionne, j'étais occupé à commenter le code.
Je mets cela très bientôt. Ensuite, je te demanderai de bien vouloir m'aider à gérer la taille de la sphère de détection...
cs_tds
Messages postés351Date d'inscriptionmercredi 21 janvier 2004StatutMembreDernière intervention 9 décembre 2004 24 mars 2004 à 13:17
Je vais prendre mon temps pour que cela soit bien nettoyé.
Cela ne vaut pas la peine de mettre à disposition un nouvel exemple de 3D ou c'est trop fouillé et ou les gens ne comprendront rien.
dmaillet
Messages postés500Date d'inscriptionmercredi 20 août 2003StatutMembreDernière intervention11 juillet 2007 24 mars 2004 à 15:27
Oui, pareil...
je suis toujours a la recherche de nouvelle idee en java3d
et ca rime!
mais la, attention, c'est vers une surcouche de moteur 3D que cette discussion s'oriente...
ca commence a devenir interessant!
sofien007
Messages postés26Date d'inscriptionsamedi 16 octobre 2004StatutMembreDernière intervention25 novembre 20081 6 mai 2005 à 23:05
Salut,
y'a t'il quelqu'un qui peut m'aider dans java3D ?
J'ai un univers ou il ya plusieurs objets. Je voudrais que je peut
animer et deplacer chacun independemment des autres. cad si je deplace
un les autres restes immobiles