Beispiel #1
0
        private void cbxenable_CheckedChanged(object sender, EventArgs e)
        {
            if (cbxenable.Checked)
            {
                inversionControl.MinAvgRes = -1;
                inversionControl.MaxAvgRes = -1;

                exportbtn.Show();
                txbmin.Enabled = true;
                txbmax.Enabled = true;
                txbmin.Text    = ModelBlocks.Min(x => x.Difference).ToString();
                txbmax.Text    = ModelBlocks.Max(x => x.Difference).ToString();

                cbxenableavg.Checked = false;
                cbxenableavg.Enabled = false;
            }
            else
            {
                exportbtn.Hide();
                txbmin.Enabled = false;
                txbmax.Enabled = false;
                txbmin.Text    = "-1";
                txbmax.Text    = "-1";

                cbxenableavg.Enabled = true;
            }
        }
Beispiel #2
0
        UIntList CreateJointReferences(MLOD.Mesh mesh, ModelBlocks.Vertex[] mverts, SKIN skin)
        {
            if (skin == null || skin.Bones == null) return new UIntList(null);

            int maxReference = -1;

            foreach (var vert in mverts)
                if (vert.BlendIndices != null)
                    foreach (var reference in vert.BlendIndices)
                        if ((sbyte)reference > maxReference) maxReference = reference;

            return maxReference > -1 ? new UIntList(null, skin.Bones.GetRange(0, maxReference + 1).ConvertAll<uint>(x => x.NameHash)) : new UIntList(null);
        }