Pages: 1
- Accueil forums
- » Aide Irrlicht.NET et .NET CP
- » [.NET CP] Problème de chargement de texture
10-05-2007 22:44:10
- loic19871
- Membres
- Date d'inscription:
- Messages: 3
- IP: 88.162.208.98
- Courriel
Salut,
Je suis en train d'essayer Irrlicht .NET CP parce que j'en ai un peu assez du C++ (la gestion de la mémoire, ça va un moment mais bon ...).
Mon problème est le suivant : j'ai fait un petit modèle 3D avec milkshape 3D et une texture au format PNG. Lorsque je charge le modèle 3D, tout ce passe bien et le modèle apparait bien sur l'écran, mais lorsque je charge la texture rien ne s'affiche (bien que la console affiche "Loaded texture : mas-36.png").
Voici le code en question :
using System;
using System.Collections.Generic;
using System.Text;
using IrrlichtNETCP;
namespace testFPS_01
{
class Program
{
static public int Main(string[] args)
{
// On initialise le moteur 3D
IrrlichtDevice device = new IrrlichtDevice(DriverType.OpenGL,new Dimension2D(800,600),32,false,false,false,false);
// On fait des raccourcis sur le scene manager, le driver vidéo et l'interface
SceneManager scene = device.SceneManager;
VideoDriver driver = device.VideoDriver;
GUIEnvironment guienv = device.GUIEnvironment;
// Création d'une caméra
CameraSceneNode camera = device.SceneManager.AddCameraSceneNodeFPS(null, 100.0f, 100.0f, false);
// On charge le mesh 3D de l'arme
AnimatedMesh gunmesh = scene.GetMesh("mas36.ms3d");
AnimatedMeshSceneNode gunnode = scene.AddAnimatedMeshSceneNode(gunmesh);
gunnode.SetMaterialFlag(MaterialFlag.Lighting, false);
gunnode.SetMaterialTexture(0, driver.GetTexture("mas-36.png"));
// Boucle principale du programme
int lastFPS, fps;
lastFPS = -1;
while (device.Run())
{
// On mets à jour la scène 3D
device.VideoDriver.BeginScene(true, true, new IrrlichtNETCP.Color(0, 120, 102, 136));
device.SceneManager.DrawAll();
device.GUIEnvironment.DrawAll();
device.VideoDriver.EndScene();
// On affiche le nombre de FPS et on mets à jour l'affichage du titre de la fenêtre
fps = device.VideoDriver.FPS;
if (lastFPS != fps)
{
device.WindowCaption = "FPStest :: Irrlicht Engine [" +
device.VideoDriver.ToString() + "] FPS:" + fps.ToString();
lastFPS = fps;
}
}
// On ferme Irrlicht
device.Dispose();
// On quitte en renvoyant un code d'erreur
return 0;
}
}
}Voila, si vous avez des pistes je suis preneur.
Merci d'avance !
Hors ligne
11-05-2007 05:33:52
- DeusXL
- Membres

- Date d'inscription:
- Messages: 174
- IP: 82.66.209.23
- Courriel
À priori rien de problématique, sûrement un problème de mapping dans ton modèle mais là un modeleur t'en dirait sûrement plus que moi.
Fanatique d'Irrlicht + Fanatique de Mono + Fanatique de Linux => Créateur d'Irrlicht .NET CP bien sûr !
Version actuelle d'Irrlicht .NET CP : 0.8, Version en test : 0.9.
Hors ligne
11-05-2007 06:04:38
- loic19871
- Membres
- Date d'inscription:
- Messages: 3
- IP: 88.162.208.98
- Courriel
C'est ce que je pensais, mais mon modèle s'ouvre parfaitement dans le mesh viewer en C++ intégré au SDK Irrlicht. Je vais essayer de faire l'équivalent de mon code C# en C++ pour voir si j'ai le même problème.
EDIT : J'ai essayé d'ouvrir mon fichier avec le même code mais en C++ et ça marche parfaitement. Je ne comprends vraiment pas pourquoi ça ne marche pas avec le même code en C#. .NET CP a-t-il des limitations aux niveaux des formats de fichier que Irrlicht n'a pas (mon modèle est au format Milkshape 3d et ma texture en PNG, mais j'ai essayé de la mettre en BMP et mon modèle en .x et ça n'a rien changé).
Ci dessous, quelques captures
mon modèle avec le code en C++
mon modèle avec le code en C#
Voila, si quelqu'un a une idée je le remercie d'avance.
Hors ligne
11-05-2007 06:47:02
- DeusXL
- Membres

- Date d'inscription:
- Messages: 174
- IP: 82.66.209.23
- Courriel
Prends la version SVN d'Irrlicht .NET CP (la 0.8, qui sortira bientôt en release).
Fanatique d'Irrlicht + Fanatique de Mono + Fanatique de Linux => Créateur d'Irrlicht .NET CP bien sûr !
Version actuelle d'Irrlicht .NET CP : 0.8, Version en test : 0.9.
Hors ligne
11-05-2007 06:49:30
- loic19871
- Membres
- Date d'inscription:
- Messages: 3
- IP: 88.162.208.98
- Courriel
Ok je vais essayer ça dès que j'aurai un peu plus le temps.
Merci pour la réponse.
Hors ligne



