public static void CreateGroupTool(MenuCommand menuCmd) { GameObject g = new GameObject("Terrain Group"); if (menuCmd != null) { GameObjectUtility.SetParentAndAlign(g, menuCmd.context as GameObject); } g.transform.localPosition = Vector3.zero; g.transform.hideFlags = HideFlags.HideInInspector; GTerrainGroup group = g.AddComponent <GTerrainGroup>(); group.GroupId = -1; Selection.activeGameObject = g; Undo.RegisterCreatedObjectUndo(g, "Creating Terrain Group"); }
public static GTerrainGroup CreateGroupTool() { GameObject root = GetTerrainToolsRoot(); if (root == null) { root = CreateTerrainToolsRoot(); } GameObject g = new GameObject("Group Tool"); g.transform.parent = root.transform; g.transform.position = Vector3.zero; g.transform.rotation = Quaternion.identity; g.transform.localScale = Vector3.one; g.transform.hideFlags = HideFlags.HideInInspector; GTerrainGroup group = g.AddComponent <GTerrainGroup>(); return(group); }
private static void DrawTerrainsManagementGUI() { string label = "2. Terrains Management"; string id = "wizard-terrains-management"; GEditorCommon.Foldout(label, false, id, () => { EditorGUILayout.LabelField( "Edit properties of an individual terrain by selecting it and use the Inspector.", GEditorCommon.WordWrapLeftLabel); EditorGUILayout.LabelField( string.Format("Use context menus ({0}) in the terrain Inspector to perform additional tasks.", GEditorCommon.contextIconText), GEditorCommon.WordWrapLeftLabel); EditorGUILayout.LabelField( "Use the Group Tool to edit properties of multiple terrains at once.", GEditorCommon.WordWrapLeftLabel); if (GUILayout.Button("Create Group Tool")) { GTerrainGroup group = GWizard.CreateGroupTool(); EditorGUIUtility.PingObject(group); Selection.activeGameObject = group.gameObject; } }); }
public static void CreateTerrainTools(MenuCommand menuCmd) { GameObject g = new GameObject("Polaris V2 Tools"); if (menuCmd != null) { GameObjectUtility.SetParentAndAlign(g, menuCmd.context as GameObject); } g.transform.localPosition = Vector3.zero; g.transform.localRotation = Quaternion.identity; g.transform.localScale = Vector3.one; g.transform.hideFlags = HideFlags.HideInInspector; GTerrainTools tools = g.AddComponent <GTerrainTools>(); tools.hideFlags = HideFlags.HideInInspector; GameObject terrainGroup = new GameObject("Terrain Group"); GUtilities.ResetTransform(terrainGroup.transform, g.transform); terrainGroup.transform.hideFlags = HideFlags.HideInInspector; GTerrainGroup group = terrainGroup.AddComponent <GTerrainGroup>(); group.GroupId = -1; GameObject texturePainter = new GameObject("Geometry & Texture Painter"); GUtilities.ResetTransform(texturePainter.transform, g.transform); texturePainter.transform.hideFlags = HideFlags.HideInInspector; GTerrainTexturePainter texturePainterComponent = texturePainter.AddComponent <GTerrainTexturePainter>(); texturePainterComponent.GroupId = -1; GameObject foliagePainter = new GameObject("Foliage Painter"); GUtilities.ResetTransform(foliagePainter.transform, g.transform); foliagePainter.transform.hideFlags = HideFlags.HideInInspector; GFoliagePainter foliagePainterComponent = foliagePainter.AddComponent <GFoliagePainter>(); foliagePainterComponent.GroupId = -1; foliagePainterComponent.gameObject.AddComponent <GRotationRandomizeFilter>(); foliagePainterComponent.gameObject.AddComponent <GScaleRandomizeFilter>(); GameObject objectPainter = new GameObject("Object Painter"); GUtilities.ResetTransform(objectPainter.transform, g.transform); objectPainter.transform.hideFlags = HideFlags.HideInInspector; GObjectPainter objectPainterComponent = objectPainter.AddComponent <GObjectPainter>(); objectPainterComponent.GroupId = -1; objectPainterComponent.gameObject.AddComponent <GRotationRandomizeFilter>(); objectPainterComponent.gameObject.AddComponent <GScaleRandomizeFilter>(); GameObject assetExplorer = new GameObject("Asset Explorer"); GUtilities.ResetTransform(assetExplorer.transform, g.transform); assetExplorer.transform.hideFlags = HideFlags.HideInInspector; assetExplorer.AddComponent <GAssetExplorer>(); GameObject helpTool = new GameObject("Help"); GUtilities.ResetTransform(helpTool.transform, g.transform); helpTool.transform.hideFlags = HideFlags.HideInInspector; helpTool.AddComponent <GHelpComponent>(); Selection.activeGameObject = terrainGroup; Undo.RegisterCreatedObjectUndo(g, "Creating Terrain Tools"); }