Ejemplo n.º 1
0
 public NKMDViewer(NKMD NKMD)
 {
     this.NKMD = NKMD;
     InitializeComponent();
     simpleOpenGlControl1.InitializeContexts();
     simpleOpenGlControl1.MouseWheel += new MouseEventHandler(simpleOpenGlControl1_MouseWheel);
 }
Ejemplo n.º 2
0
        private void ExportPrepareTrack(int index)
        {
            var name = MKDS.InternalTrackNames[index];

            MainCARC = new CARCEditor(name + ".carc");
            var texture_carc = new CARCEditor(name + "Tex.carc");

            var track_model = new Model(TrackModelInfo, MainCARC, texture_carc);

            if (track_model.Export())
            {
                MainModelCombo.Items.Add("Track");
                MainModelCombo.SelectedIndex = 0;
                MainModels.Add(track_model);
                LoadModelIntoView(track_model);
            }
            else
            {
                Utils.ShowMessage("Unable to load track model.");
            }

            var skybox_model = new Model(SkyboxModelInfo, MainCARC, texture_carc);

            if (skybox_model.Export())
            {
                MainModelCombo.Items.Add("Track skybox");
                MainModelCombo.SelectedIndex = 0;
                MainModels.Add(skybox_model);
                LoadModelIntoView(skybox_model);
            }
            else
            {
                Utils.ShowMessage("Unable to load track skybox model.");
            }

            var nkm_data = MainCARC.ReadFile("course_map.nkm");

            TrackNKM = new NKMD(nkm_data);

            var kcl_data = MainCARC.ReadFile("course_collision.kcl");

            TrackKCL = new KCL(kcl_data);

            var dummy_kart_model_info = new ModelInfo {
                ModelFile = "kart_MR_a.nsbmd", TextureFile = "kart_MR_a.nsbtx"
            };
            var dummy_kart_model = new Model(dummy_kart_model_info, null, null);

            if (dummy_kart_model.Export())
            {
                ModelCombo.Items.Add("Start position");
                ModelCombo.SelectedIndex = 0;
                ItemModels.Add(dummy_kart_model);
                LoadModelIntoView(dummy_kart_model);

                var ktps = TrackNKM.KartPointStart.Entries[0];
                ItemModelTranslates.Add(new Vector3D(ktps.Position.X / 16, ktps.Position.Y / 16, ktps.Position.Z / 16));
                UpdateModelTranslate(0, ktps.Position.X / 16, ktps.Position.Y / 16, ktps.Position.Z / 16, true);
                UpdateModelRotation(0, ktps.Rotation.X, ktps.Rotation.Y, ktps.Rotation.Z);
            }
            else
            {
                Utils.ShowMessage("Unable to load demo kart model.");
            }
        }
 public NKMDViewer2(NKMD NKMD)
 {
     this.NKMD = NKMD;
     InitializeComponent();
 }