Skip to content

Commit 9064bb4

Browse files
committed
fix ExportModelSettings warnings
- make public member variables private and use accessors instead
1 parent a006aeb commit 9064bb4

File tree

2 files changed

+32
-29
lines changed

2 files changed

+32
-29
lines changed

Packages/com.unity.formats.fbx/Editor/Scripts/ConvertToPrefabSettings.cs

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -24,7 +24,7 @@ public override void OnInspectorGUI ()
2424
GUILayout.BeginHorizontal();
2525
EditorGUILayout.LabelField(new GUIContent("Export Format", "Export the FBX file in the standard binary format." +
2626
" Select ASCII to export the FBX file in ASCII format."), GUILayout.Width(LabelWidth - FieldOffset));
27-
exportSettings.exportFormat = (ExportSettings.ExportFormat)EditorGUILayout.Popup((int)exportSettings.exportFormat, exportFormatOptions);
27+
exportSettings.SetExportFormat((ExportSettings.ExportFormat)EditorGUILayout.Popup((int)exportSettings.ExportFormat, exportFormatOptions));
2828
GUILayout.EndHorizontal();
2929

3030
GUILayout.BeginHorizontal();
@@ -51,18 +51,18 @@ public override void OnInspectorGUI ()
5151
EditorGUI.EndDisabledGroup ();
5252
GUILayout.EndHorizontal();
5353

54-
exportSettings.animatedSkinnedMesh = EditorGUILayout.Toggle ("Animated Skinned Mesh", exportSettings.animatedSkinnedMesh);
54+
exportSettings.SetAnimatedSkinnedMesh(EditorGUILayout.Toggle ("Animated Skinned Mesh", exportSettings.AnimateSkinnedMesh));
5555

56-
exportSettings.mayaCompatibleNaming = EditorGUILayout.Toggle (
56+
exportSettings.SetUseMayaCompatibleNames(EditorGUILayout.Toggle (
5757
new GUIContent ("Compatible Naming",
5858
"In Maya some symbols such as spaces and accents get replaced when importing an FBX " +
5959
"(e.g. \"foo bar\" becomes \"fooFBXASC032bar\"). " +
6060
"On export, convert the names of GameObjects so they are Maya compatible." +
61-
(exportSettings.mayaCompatibleNaming ? "" :
61+
(exportSettings.UseMayaCompatibleNames ? "" :
6262
"\n\nWARNING: Disabling this feature may result in lost material connections," +
6363
" and unexpected character replacements in Maya.")
6464
),
65-
exportSettings.mayaCompatibleNaming);
65+
exportSettings.UseMayaCompatibleNames));
6666
}
6767
}
6868

Packages/com.unity.formats.fbx/Editor/Scripts/ExportModelSettings.cs

Lines changed: 27 additions & 24 deletions
Original file line numberDiff line numberDiff line change
@@ -41,58 +41,58 @@ public override void OnInspectorGUI ()
4141
GUILayout.BeginHorizontal();
4242
EditorGUILayout.LabelField(new GUIContent("Export Format", "Export the FBX file in the standard binary format." +
4343
" Select ASCII to export the FBX file in ASCII format."), GUILayout.Width(LabelWidth - FieldOffset));
44-
exportSettings.exportFormat = (ExportSettings.ExportFormat)EditorGUILayout.Popup((int)exportSettings.exportFormat, exportFormatOptions);
44+
exportSettings.SetExportFormat((ExportSettings.ExportFormat)EditorGUILayout.Popup((int)exportSettings.ExportFormat, exportFormatOptions) );
4545
GUILayout.EndHorizontal();
4646

4747
GUILayout.BeginHorizontal();
4848
EditorGUILayout.LabelField(new GUIContent("Include", "Select whether to export models, animation or both."), GUILayout.Width(LabelWidth - FieldOffset));
4949
EditorGUI.BeginDisabledGroup(disableIncludeDropdown);
50-
exportSettings.include = (ExportSettings.Include)EditorGUILayout.Popup((int)exportSettings.include, includeOptions);
50+
exportSettings.SetModelAnimIncludeOption((ExportSettings.Include)EditorGUILayout.Popup((int)exportSettings.ModelAnimIncludeOption, includeOptions));
5151
EditorGUI.EndDisabledGroup ();
5252
GUILayout.EndHorizontal();
5353

5454
GUILayout.BeginHorizontal();
5555
EditorGUILayout.LabelField(new GUIContent("LOD level", "Select which LOD to export."), GUILayout.Width(LabelWidth - FieldOffset));
5656
// greyed out if animation only
57-
EditorGUI.BeginDisabledGroup(exportSettings.include == ExportSettings.Include.Anim);
58-
exportSettings.lodLevel = (ExportSettings.LODExportType)EditorGUILayout.Popup((int)exportSettings.lodLevel, lodOptions);
57+
EditorGUI.BeginDisabledGroup(exportSettings.ModelAnimIncludeOption == ExportSettings.Include.Anim);
58+
exportSettings.SetLODExportType((ExportSettings.LODExportType)EditorGUILayout.Popup((int)exportSettings.LODExportType, lodOptions));
5959
EditorGUI.EndDisabledGroup ();
6060
GUILayout.EndHorizontal();
6161

6262
GUILayout.BeginHorizontal();
6363
EditorGUILayout.LabelField(new GUIContent("Object(s) Position", "Select an option for exporting object's transform."), GUILayout.Width(LabelWidth - FieldOffset));
6464
// greyed out if animation only
65-
EditorGUI.BeginDisabledGroup(exportSettings.include == ExportSettings.Include.Anim);
66-
exportSettings.objectPosition = (ExportSettings.ObjectPosition)EditorGUILayout.Popup((int)exportSettings.objectPosition, objPositionOptions);
65+
EditorGUI.BeginDisabledGroup(exportSettings.ModelAnimIncludeOption == ExportSettings.Include.Anim);
66+
exportSettings.SetObjectPosition((ExportSettings.ObjectPosition)EditorGUILayout.Popup((int)exportSettings.ObjectPosition, objPositionOptions));
6767
EditorGUI.EndDisabledGroup ();
6868
GUILayout.EndHorizontal();
6969

7070
GUILayout.BeginHorizontal();
7171
EditorGUILayout.LabelField(new GUIContent("Animated Skinned Mesh",
7272
"If checked, animation on objects with skinned meshes will be exported"), GUILayout.Width(LabelWidth - FieldOffset));
7373
// greyed out if model
74-
EditorGUI.BeginDisabledGroup(exportSettings.include == ExportSettings.Include.Model);
75-
exportSettings.animatedSkinnedMesh = EditorGUILayout.Toggle(exportSettings.animatedSkinnedMesh);
74+
EditorGUI.BeginDisabledGroup(exportSettings.ModelAnimIncludeOption == ExportSettings.Include.Model);
75+
exportSettings.SetAnimatedSkinnedMesh(EditorGUILayout.Toggle(exportSettings.AnimateSkinnedMesh));
7676
EditorGUI.EndDisabledGroup ();
7777
GUILayout.EndHorizontal ();
7878

79-
exportSettings.mayaCompatibleNaming = EditorGUILayout.Toggle (
79+
exportSettings.SetUseMayaCompatibleNames(EditorGUILayout.Toggle (
8080
new GUIContent ("Compatible Naming",
8181
"In Maya some symbols such as spaces and accents get replaced when importing an FBX " +
8282
"(e.g. \"foo bar\" becomes \"fooFBXASC032bar\"). " +
8383
"On export, convert the names of GameObjects so they are Maya compatible." +
84-
(exportSettings.mayaCompatibleNaming ? "" :
84+
(exportSettings.UseMayaCompatibleNames ? "" :
8585
"\n\nWARNING: Disabling this feature may result in lost material connections," +
8686
" and unexpected character replacements in Maya.")
8787
),
88-
exportSettings.mayaCompatibleNaming);
88+
exportSettings.UseMayaCompatibleNames));
8989

9090
GUILayout.BeginHorizontal();
9191
EditorGUILayout.LabelField(new GUIContent("Export Unrendered",
9292
"If checked, meshes will be exported even if they don't have a Renderer component."), GUILayout.Width(LabelWidth - FieldOffset));
9393
// greyed out if animation only
94-
EditorGUI.BeginDisabledGroup(exportSettings.include == ExportSettings.Include.Anim);
95-
exportSettings.exportUnrendered = EditorGUILayout.Toggle(exportSettings.exportUnrendered);
94+
EditorGUI.BeginDisabledGroup(exportSettings.ModelAnimIncludeOption == ExportSettings.Include.Anim);
95+
exportSettings.SetExportUnredererd(EditorGUILayout.Toggle(exportSettings.ExportUnrendered));
9696
EditorGUI.EndDisabledGroup ();
9797
GUILayout.EndHorizontal ();
9898
}
@@ -113,7 +113,11 @@ public interface IExportOptions {
113113

114114
public abstract class ExportOptionsSettingsBase<T> : ScriptableObject where T : ExportOptionsSettingsSerializeBase, new()
115115
{
116-
public T info = new T();
116+
private T m_info = new T();
117+
public T info {
118+
get { return m_info; }
119+
set { m_info = value; }
120+
}
117121
}
118122

119123
public class ExportModelSettings : ExportOptionsSettingsBase<ExportModelSettingsSerialize>
@@ -122,15 +126,14 @@ public class ExportModelSettings : ExportOptionsSettingsBase<ExportModelSettings
122126
[System.Serializable]
123127
public abstract class ExportOptionsSettingsSerializeBase : IExportOptions
124128
{
125-
public ExportSettings.ExportFormat exportFormat = ExportSettings.ExportFormat.ASCII;
126-
public string rootMotionTransfer = "";
127-
public bool animatedSkinnedMesh = false;
128-
public bool mayaCompatibleNaming = true;
129+
private ExportSettings.ExportFormat exportFormat = ExportSettings.ExportFormat.ASCII;
130+
private bool animatedSkinnedMesh = false;
131+
private bool mayaCompatibleNaming = true;
129132

130133
[System.NonSerialized]
131-
protected Transform animSource;
134+
private Transform animSource;
132135
[System.NonSerialized]
133-
protected Transform animDest;
136+
private Transform animDest;
134137

135138
public ExportSettings.ExportFormat ExportFormat { get { return exportFormat; } }
136139
public void SetExportFormat(ExportSettings.ExportFormat format){ this.exportFormat = format; }
@@ -152,10 +155,10 @@ public abstract class ExportOptionsSettingsSerializeBase : IExportOptions
152155
[System.Serializable]
153156
public class ExportModelSettingsSerialize : ExportOptionsSettingsSerializeBase
154157
{
155-
public ExportSettings.Include include = ExportSettings.Include.ModelAndAnim;
156-
public ExportSettings.LODExportType lodLevel = ExportSettings.LODExportType.All;
157-
public ExportSettings.ObjectPosition objectPosition = ExportSettings.ObjectPosition.LocalCentered;
158-
public bool exportUnrendered = true;
158+
private ExportSettings.Include include = ExportSettings.Include.ModelAndAnim;
159+
private ExportSettings.LODExportType lodLevel = ExportSettings.LODExportType.All;
160+
private ExportSettings.ObjectPosition objectPosition = ExportSettings.ObjectPosition.LocalCentered;
161+
private bool exportUnrendered = true;
159162

160163
public override ExportSettings.Include ModelAnimIncludeOption { get { return include; } }
161164
public void SetModelAnimIncludeOption(ExportSettings.Include include) { this.include = include; }

0 commit comments

Comments
 (0)