2009-11-16 8 views
3

Est-il possible de charger des objets 3D dans une application Silverlight 3 ou Silverlight 4? (Objets 3DS Max ou autres formats). En plus de charger l'objet, j'ai aussi besoin d'une interaction de base - des rotations simples, zoom avant/arrière.Charger un objet 3D dans Silverlight 3/4

Répondre

5

Je pense que le moteur 3D géré Balder pourrait être le bon choix pour vous. Il fonctionne assez bien dans Silverlight et je l'ai utilisé avec Silverlight 3 et 4b. Balder soutient le format ASE pour l'instant, mais Einar et ses contributeurs travaillent dur sur le moteur et ils veulent supporter plus de formats de mailles dans le futur.

3

Pas vraiment.

Il pourrait y avoir quelques librairies là-bas qui peuvent apporter des effets 3D-esq limites à SL (en effet SL 3 vient avec un peu de lui-même). Cependant SL n'a pas vraiment un bon support 3D.

Il existe l'ancien projet Kit3D mais pas où c'est actuellement, il n'a pas eu de mise à jour l'année dernière.

+0

+1 pour aucun support 3D réel. Limitation majeure de SL IMHO. –

1

Bien sûr, c'est possible. Combien de code voulez-vous écrire? A quel point faut-il regarder? L'idée de 3D dans Silverlight est la même que 3D dans Flash. Vous pouvez le faire, si vous êtes sur votre trigonométrie et l'algèbre de base. C'est assez facile à moins d'être rouillé. D'abord, vous devrez exporter vos sommets dans un format pouvant être lu ou intégré directement dans votre projet. Ensuite, vous devrez générer plusieurs triangles et les transformer en un tableau.

Vous ne pouvez pas faire un éclairage de vertex très efficacement, donc vous êtes probablement coincé avec un ombrage plat. Avant chaque cadre, vous devez:

  • Traverse la géométrie
  • Appliquer vos rotations & transforme (position, mise à l'échelle)
  • Régler un triangle dans votre tableau pour chaque triangle dans la géométrie (avec des matrices appliquées)
  • Trier vos triangles arrière vers l'avant
  • Régler la couleur de chaque triangle (une seule fois est le meilleur)
  • Etc.

Vous auriez du mal à dépasser 1 000 triangles/3 000 verts. Vous pouvez le faire, mais pas si vous voulez faire d'autres choses en même temps.

Alors, oui. C'est tout à fait possible, mais pas quelque chose qui soit disponible dans le commerce ou intégré à Silverlight. Pour le moment, nous devons recourir à la manière de faire des graphismes 3D comme au bon vieux temps ... à la main.

0

Presque impossible de charger l'objet 3Ds Max dans Silverlight 3/4.

Google o3D est probablement votre chemin à parcourir.

Questions connexes