Historique des modifications - Message

Message #2233

Sujet: [.NET CP] Problème de chargement de texture


Type Date Auteur Contenu
Création du message 10-05-2007 22:44:10 loic19871
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 !

Retour

Options Liens officiels Caractéristiques Statistiques Communauté
Préférences cookies
Corrections
irrlicht
irrklang
irredit
irrxml
Propulsé par Django
xhtml 1.0
css 2.1
884 membres
1440 sujets
11337 messages
Dernier membre inscrit: Saidov17
118 invités en ligne
membre en ligne: -
RSS Feed