public MaterialListData ToData()
        {
            var data = new MaterialListData();

            data.List = _materials.Select(m => m.Value.ToData()).ToList();

            return(data);
        }
        public BoctMaterialList(MaterialListData data) : this()
        {
            var materialDataList = data.List;

            if (materialDataList == null)
            {
                throw new BoctException("Material data is null.");
            }

            foreach (var materialData in materialDataList)
            {
                _materials[materialData.LUID] = new BoctMaterial(materialData);
            }
        }