public void StartAssetToolkit() { if (_assetToolkit != null) { _assetToolkit.Destroy(); } _assetToolkit = new CAssetToolkit(); _assetToolkit.Init(ToolkitUI); }
public override void Init(CAssetToolkit Toolkit) { base.Init(Toolkit); mPrimaryContent = mUI.CreateElement(Toolkit.mPrimaryContent, "modelEditor"); mUI.AddLayout(mPrimaryContent, -1, -1, 1.0f, 1.0f); mUI.AddVerticalLayout(mPrimaryContent); mPrimaryContent.GetComponent <VerticalLayoutGroup>().spacing = 4.0f; GameObject toolbar = mUI.CreateElement(mPrimaryContent, "toolbarView"); mUI.AddLayout(toolbar, -1, 48, 1.0f, 0.0f); mUI.AddImage(toolbar, mUI.WindowPanelBackground); mUI.AddHorizontalLayout(toolbar); toolbar.GetComponent <HorizontalLayoutGroup>().spacing = 4; _tbbSave = mUI.CreateToolbarButton(toolbar, "Save", mUI.SaveImage, _Save); //mUI.CreateToolbarButton(toolbar, "Revert", mUI.SaveImage); GameObject content; GameObject w1p = mUI.CreateWindowPanel(mPrimaryContent, out content, "Brush Editor"); mUI.AddLayout(w1p, -1, -1, 1.0f, 1.0f); //mUI.CreateTextElement(w1pContent, "Information", "text", CToolkitUI.ETextStyle.TS_HEADING); //mUI.CreateTextElement(w1pContent, "Testing string"); mUI.CreateTextElement(content, "Brush Properties", "text", CToolkitUI.ETextStyle.TS_HEADING); GameObject editor; mUI.CreateFieldElement(content, "Color", out editor); mUI.CreateColorEditor(editor, _brushAsset.mRawColor, (Color color) => { _brushAsset.mRawColor = color; _ModifyAsset(); }); mUI.CreateFieldElement(content, "Line Weight", out editor); mUI.CreateFloatEditor(editor, _brushAsset.mWeight, (float value) => { _brushAsset.mWeight = value; _ModifyAsset(); }); mUI.CreateFieldElement(content, "Floor Color Mix", out editor); mUI.CreateFloatEditor(editor, _brushAsset.mFloorMix, (float value) => { _brushAsset.mFloorMix = value; _ModifyAsset(); }); }
public virtual void Init(CAssetToolkit Toolkit) { mToolkit = Toolkit; mUI = Toolkit.mUI; }
public override void Init(CAssetToolkit Toolkit) { base.Init(Toolkit); mPrimaryContent = mUI.CreateElement(Toolkit.mPrimaryContent, "modelEditor"); mUI.AddLayout(mPrimaryContent, -1, -1, 1.0f, 1.0f); mUI.AddVerticalLayout(mPrimaryContent); mPrimaryContent.GetComponent <VerticalLayoutGroup>().spacing = 4.0f; GameObject toolbar = mUI.CreateElement(mPrimaryContent, "toolbarView"); mUI.AddLayout(toolbar, -1, 48, 1.0f, 0.0f); mUI.AddImage(toolbar, mUI.WindowPanelBackground); mUI.AddHorizontalLayout(toolbar); toolbar.GetComponent <HorizontalLayoutGroup>().spacing = 4; _tbbSave = mUI.CreateToolbarButton(toolbar, "Save", mUI.SaveImage, _Save); //mUI.CreateToolbarButton(toolbar, "Revert", mUI.SaveImage); mUI.CreateToolbarSeparator(toolbar); _tbbCamGame = mUI.CreateToolbarButton(toolbar, "Game", mUI.CompanyImage, () => { _camState.SetViewGame(_viewDirection); CGame.CameraManager.SetCamState(_camState); mUI.SetToolbarButtonHighlight(_tbbCamGame, CToolkitUI.EButtonHighlight.SELECTED); mUI.SetToolbarButtonHighlight(_tbbCamFree, CToolkitUI.EButtonHighlight.NOTHING); mUI.SetToolbarButtonHighlight(_tbbCamSide, CToolkitUI.EButtonHighlight.NOTHING); mUI.SetToolbarButtonHighlight(_tbbCamTop, CToolkitUI.EButtonHighlight.NOTHING); mUI.SetToolbarButtonHighlight(_tbbCamFront, CToolkitUI.EButtonHighlight.NOTHING); }); _tbbCamFree = mUI.CreateToolbarButton(toolbar, "Free", mUI.CompanyImage, () => { _camState = CGame.CameraManager.GetCamState(); _camState.SetViewFree(); CGame.CameraManager.SetCamState(_camState); mUI.SetToolbarButtonHighlight(_tbbCamGame, CToolkitUI.EButtonHighlight.NOTHING); mUI.SetToolbarButtonHighlight(_tbbCamFree, CToolkitUI.EButtonHighlight.SELECTED); mUI.SetToolbarButtonHighlight(_tbbCamSide, CToolkitUI.EButtonHighlight.NOTHING); mUI.SetToolbarButtonHighlight(_tbbCamTop, CToolkitUI.EButtonHighlight.NOTHING); mUI.SetToolbarButtonHighlight(_tbbCamFront, CToolkitUI.EButtonHighlight.NOTHING); }); _tbbCamSide = mUI.CreateToolbarButton(toolbar, "Side", mUI.CompanyImage, () => { _camState.SetOrthographic(EOrhtoView.OV_LEFT); CGame.CameraManager.SetCamState(_camState); mUI.SetToolbarButtonHighlight(_tbbCamGame, CToolkitUI.EButtonHighlight.NOTHING); mUI.SetToolbarButtonHighlight(_tbbCamFree, CToolkitUI.EButtonHighlight.NOTHING); mUI.SetToolbarButtonHighlight(_tbbCamSide, CToolkitUI.EButtonHighlight.SELECTED); mUI.SetToolbarButtonHighlight(_tbbCamTop, CToolkitUI.EButtonHighlight.NOTHING); mUI.SetToolbarButtonHighlight(_tbbCamFront, CToolkitUI.EButtonHighlight.NOTHING); }); _tbbCamTop = mUI.CreateToolbarButton(toolbar, "Top", mUI.CompanyImage, () => { _camState.SetOrthographic(EOrhtoView.OV_TOP); CGame.CameraManager.SetCamState(_camState); mUI.SetToolbarButtonHighlight(_tbbCamGame, CToolkitUI.EButtonHighlight.NOTHING); mUI.SetToolbarButtonHighlight(_tbbCamFree, CToolkitUI.EButtonHighlight.NOTHING); mUI.SetToolbarButtonHighlight(_tbbCamSide, CToolkitUI.EButtonHighlight.NOTHING); mUI.SetToolbarButtonHighlight(_tbbCamTop, CToolkitUI.EButtonHighlight.SELECTED); mUI.SetToolbarButtonHighlight(_tbbCamFront, CToolkitUI.EButtonHighlight.NOTHING); }); _tbbCamFront = mUI.CreateToolbarButton(toolbar, "Front", mUI.CompanyImage, () => { _camState.SetOrthographic(EOrhtoView.OV_FRONT); CGame.CameraManager.SetCamState(_camState); mUI.SetToolbarButtonHighlight(_tbbCamGame, CToolkitUI.EButtonHighlight.NOTHING); mUI.SetToolbarButtonHighlight(_tbbCamFree, CToolkitUI.EButtonHighlight.NOTHING); mUI.SetToolbarButtonHighlight(_tbbCamSide, CToolkitUI.EButtonHighlight.NOTHING); mUI.SetToolbarButtonHighlight(_tbbCamTop, CToolkitUI.EButtonHighlight.NOTHING); mUI.SetToolbarButtonHighlight(_tbbCamFront, CToolkitUI.EButtonHighlight.SELECTED); }); mUI.CreateToolbarSeparator(toolbar); _tbbShowScale = mUI.CreateToolbarButton(toolbar, "Show Scale", mUI.BrushImage, _OnShowScale); mUI.SetToolbarButtonHighlight(_tbbShowScale, CToolkitUI.EButtonHighlight.SELECTED); mUI.CreateToolbarSeparator(toolbar); _tbbLocal = mUI.CreateToolbarButton(toolbar, "Local", mUI.SaveImage, _OnGlobalLocalClicked); mUI.CreateToolbarSeparator(toolbar); _tbbToolMove = mUI.CreateToolbarButton(toolbar, "Move", mUI.SaveImage, () => _SetTool(ETool.TRANSLATE)); //mUI.CreateToolbarButton(toolbar, "Rotate", mUI.SaveImage, () => _SetTool(ETool.ROTATE)); //mUI.CreateToolbarButton(toolbar, "Scale", mUI.SaveImage, () => _SetTool(ETool.SCALE)); _tbbToolVertex = mUI.CreateToolbarButton(toolbar, "Vertex", mUI.SaveImage, () => _SetTool(ETool.VERTEX)); _tbbToolEdgePaint = mUI.CreateToolbarButton(toolbar, "Edge Paint", mUI.SaveImage, () => _SetTool(ETool.EDGE)); mUI.SetToolbarButtonHighlight(_tbbToolMove, CToolkitUI.EButtonHighlight.SELECTED); GameObject hSplit = mUI.CreateElement(mPrimaryContent, "horzLayout"); mUI.AddLayout(hSplit, -1, -1, 1.0f, 1.0f); mUI.AddHorizontalLayout(hSplit); hSplit.GetComponent <HorizontalLayoutGroup>().spacing = 4; GameObject w1 = mUI.CreateElement(hSplit, "split1"); mUI.AddLayout(w1, 256, -1, 0.0f, 1.0f); mUI.AddVerticalLayout(w1); //AddImage(w1, Color.red); GameObject w2 = mUI.CreateElement(hSplit, "split2"); mUI.AddLayout(w2, -1, -1, 0.60f, 1.0f); mUI.AddVerticalLayout(w2); //AddImage(w2, Color.green); GameObject w3 = mUI.CreateElement(hSplit, "split3"); mUI.AddLayout(w3, 300, -1, 0.0f, 1.0f); mUI.AddVerticalLayout(w3); //AddImage(w3, Color.blue); // Split 1 GameObject w1pContent; GameObject w1p = mUI.CreateWindowPanel(w1, out w1pContent, "Tools"); mUI.AddLayout(w1p, -1, -1, 1.0f, 1.0f); //mUI.CreateTextElement(w1pContent, "Information", "text", CToolkitUI.ETextStyle.TS_HEADING); //mUI.CreateTextElement(w1pContent, "Testing string"); mUI.CreateTextElement(w1pContent, "View Direction", "text", CToolkitUI.ETextStyle.TS_HEADING); toolbar = mUI.CreateElement(w1pContent, "toolbarView"); mUI.AddLayout(toolbar, -1, 48, 1.0f, -1); mUI.AddImage(toolbar, mUI.WindowPanelBackground); mUI.AddHorizontalLayout(toolbar); toolbar.GetComponent <HorizontalLayoutGroup>().spacing = 4; _tbbView[0] = mUI.CreateToolbarButton(toolbar, "Front", mUI.LevelImage, () => _OnClickEdgeSetView(EViewDirection.VD_FRONT)); _tbbView[1] = mUI.CreateToolbarButton(toolbar, "Right", mUI.LevelImage, () => _OnClickEdgeSetView(EViewDirection.VD_RIGHT)); _tbbView[2] = mUI.CreateToolbarButton(toolbar, "Back", mUI.LevelImage, () => _OnClickEdgeSetView(EViewDirection.VD_BACK)); _tbbView[3] = mUI.CreateToolbarButton(toolbar, "Left", mUI.LevelImage, () => _OnClickEdgeSetView(EViewDirection.VD_LEFT)); mUI.SetToolbarButtonHighlight(_tbbView[0], CToolkitUI.EButtonHighlight.SELECTED); mUI.CreateTextElement(w1pContent, "Tool", "text", CToolkitUI.ETextStyle.TS_HEADING); GameObject editor; mUI.CreateFieldElement(w1pContent, "Edge Brush", out editor); mUI.CreateComboBox(editor, _edgeBrush, _GetBrushComboData, (string Name) => { _edgeBrush = Name; }); mUI.CreateFieldElement(w1pContent, "Floor Colour", out editor); mUI.CreateColorEditor(editor, _floorColour, (Color color) => { _SetFloorColour(color); }); //mUI.CreateFieldElement(w1pContent, "Translate Snap", out editor); mUI.CreateFloatEditor(editor, _snapSpacingTranslate, (float value) => { _snapSpacingTranslate = value; }); //mUI.CreateFieldElement(w1pContent, "Rotate Snap", out editor); mUI.CreateFloatEditor(editor, _snapSpacingRotate, (float value) => { _snapSpacingRotate = value; }); //mUI.CreateFieldElement(w1pContent, "Scale Snap", out editor); mUI.CreateFloatEditor(editor, _snapSpacingScale, (float value) => { _snapSpacingScale = value; }); mUI.CreateTextElement(w1pContent, "Model Components", "text", CToolkitUI.ETextStyle.TS_HEADING); toolbar = mUI.CreateElement(w1pContent, "toolbarView"); mUI.AddLayout(toolbar, -1, 48, 1.0f, -1); mUI.AddImage(toolbar, mUI.WindowPanelBackground); mUI.AddHorizontalLayout(toolbar); toolbar.GetComponent <HorizontalLayoutGroup>().spacing = 4; mUI.CreateToolbarButton(toolbar, "Add", mUI.LevelImage, _OnClickAddComponent); mUI.CreateToolbarButton(toolbar, "Duplicate", mUI.LevelImage, _OnClickDuplicateComponent); mUI.CreateToolbarButton(toolbar, "Remove", mUI.LevelImage, _OnClickRemoveComponent); GameObject scrollContent; GameObject scrollV1 = mUI.CreateScrollView(w1pContent, out scrollContent, true); mUI.AddLayout(scrollV1, -1, -1, 1.0f, 1.0f); CTUITreeView treeView; GameObject treeViewGob = mUI.CreateTreeView(scrollContent, out treeView); mUI.AddLayout(treeViewGob, -1, -1, 1.0f, 1.0f); _treeViewPrimItem = treeView.mRootItem.AddItem("Primitives"); _treeViewPrimItem.mExpanded = true; _RebuildComponentTree(); // Split 2 GameObject w2pContent; GameObject w2p = mUI.CreateWindowPanel(w2, out w2pContent, "Model View"); mUI.AddLayout(w2p, -1, -1, 1.0f, 1.0f); _viewport = mUI.CreateElement(w2pContent, "modelView"); _viewport.AddComponent <CameraView>(); _viewport.AddComponent <RawImage>().texture = mToolkit.mPrimaryRT; _viewport.GetComponent <CameraView>().mOnMouseDown = _OnViewportMouseDown; _viewport.GetComponent <CameraView>().mOnMouseUp = _OnViewportMouseUp; mUI.AddLayout(_viewport, -1, -1, 1.0f, 1.0f); // Split 3 GameObject w3pContent; GameObject w3p = mUI.CreateWindowPanel(w3, out w3pContent, "Properties"); mUI.AddLayout(w3p, -1, -1, 1.0f, 1.0f); mUI.CreateTextElement(w3pContent, "Selected Component", "text", CToolkitUI.ETextStyle.TS_HEADING); scrollV1 = mUI.CreateScrollView(w3pContent, out scrollContent, true); mUI.AddLayout(scrollV1, -1, -1, 1.0f, 1.0f); scrollContent.GetComponent <VerticalLayoutGroup>().spacing = 4; _primProps = scrollContent; // World Scene _sceneGraph = new GameObject("modelEditorRoot"); _scaleMan = GameObject.Instantiate(CGame.PrimaryResources.Prefabs[7] as GameObject); _scaleMan.transform.SetParent(_sceneGraph.transform); _scaleMan.transform.localPosition = new Vector3(-1.0f, 0.0f, -3.0f); _scaleMan.transform.rotation = Quaternion.AngleAxis(225, Vector3.up); _sceneGraph.SetActive(false); _modelGob = _vectorModel.CreateGameObject(_viewDirection); _modelGob.transform.SetParent(_sceneGraph.transform); _modelGob.GetComponent <MeshRenderer>().material.SetColor("_FloorColor", _floorColour); _camState.mBackgroundColor = new Color(0.18f, 0.18f, 0.18f, 1.0f); _camState.SetViewGame(EViewDirection.VD_FRONT); mUI.SetToolbarButtonHighlight(_tbbCamGame, CToolkitUI.EButtonHighlight.SELECTED); _tool = ETool.TRANSLATE; }
public override void Init(CAssetToolkit Toolkit) { base.Init(Toolkit); mPrimaryContent = mUI.CreateElement(Toolkit.mPrimaryContent, "horzLayout"); mPrimaryContent.SetActive(false); mUI.AddLayout(mPrimaryContent, -1, -1, 1.0f, 1.0f); mUI.AddVerticalLayout(mPrimaryContent); mPrimaryContent.GetComponent <VerticalLayoutGroup>().spacing = 4; GameObject toolbar = mUI.CreateElement(mPrimaryContent, "toolbarView"); mUI.AddLayout(toolbar, -1, 48, 1.0f, 0.0f); mUI.AddImage(toolbar, mUI.WindowPanelBackground); mUI.AddHorizontalLayout(toolbar); toolbar.GetComponent <HorizontalLayoutGroup>().spacing = 4; mUI.CreateToolbarButton(toolbar, "Sheet", mUI.SheetImage); mUI.CreateToolbarButton(toolbar, "Level", mUI.LevelImage, () => _OnClickNewModel(EAssetType.AT_LEVEL)); mUI.CreateToolbarButton(toolbar, "Brush", mUI.BrushImage, () => _OnClickNewModel(EAssetType.AT_BRUSH)); mUI.CreateToolbarButton(toolbar, "Model", mUI.ModelImage, () => _OnClickNewModel(EAssetType.AT_MODEL)); mUI.CreateToolbarButton(toolbar, "Item", mUI.ItemImage, () => _OnClickNewModel(EAssetType.AT_ITEM)); mUI.CreateToolbarSeparator(toolbar); mUI.CreateToolbarButton(toolbar, "Character", mUI.BrushImage, mToolkit.EditCharacter); GameObject hSplit = mUI.CreateElement(mPrimaryContent, "horzLayout"); mUI.AddLayout(hSplit, -1, -1, 1.0f, 1.0f); mUI.AddHorizontalLayout(hSplit); hSplit.GetComponent <HorizontalLayoutGroup>().spacing = 4; GameObject w1 = mUI.CreateElement(hSplit, "split1"); mUI.AddLayout(w1, -1, -1, 1.0f, 1.0f); mUI.AddVerticalLayout(w1); GameObject w2 = mUI.CreateElement(hSplit, "split2"); mUI.AddLayout(w2, 300, -1, 0.0f, 1.0f); mUI.AddVerticalLayout(w2); // Split 1 GameObject w1pContent; GameObject w1p = mUI.CreateWindowPanel(w1, out w1pContent, "Tools"); mUI.AddLayout(w1p, -1, -1, 1.0f, 1.0f); //mUI.CreateTextElement(w1pContent, "Create New Asset", "text", CToolkitUI.ETextStyle.TS_HEADING); /*toolbar = mUI.CreateElement(w1pContent, "toolbarView"); * mUI.AddLayout(toolbar, -1, 48, 1.0f, -1); * mUI.AddImage(toolbar, mUI.WindowPanelBackground); * mUI.AddHorizontalLayout(toolbar); * toolbar.GetComponent<HorizontalLayoutGroup>().spacing = 4; */ //mUI.CreateToolbarButton(toolbar, "Company", mUI.CompanyImage); //mUI.CreateToolbarButton(toolbar, "Sheet", mUI.SheetImage); mUI.CreateTextElement(w1pContent, "Asset Directory", "text", CToolkitUI.ETextStyle.TS_HEADING); GameObject scrollContent; GameObject scrollV1 = mUI.CreateScrollView(w1pContent, out scrollContent, true); mUI.AddLayout(scrollV1, -1, -1, 1.0f, 1.0f); CTUITreeView treeView; GameObject treeViewGob = mUI.CreateTreeView(scrollContent, out treeView); mUI.AddLayout(treeViewGob, -1, -1, 1.0f, 1.0f); _tviBrushes = treeView.mRootItem.AddItem("Brushes"); _tviModels = treeView.mRootItem.AddItem("Models"); _tviItems = treeView.mRootItem.AddItem("Items"); _tviLevels = treeView.mRootItem.AddItem("Levels"); _tviSheets = treeView.mRootItem.AddItem("Sheets"); //item.AddItem(entry.Value.mName); //item = treeView.mRootItem.AddItem("Models"); //item.AddItem(entry.Value.mName, () => OnClickAsset(0, guid), () => mToolkit.EditAsset(guid)); foreach (KeyValuePair <string, CAssetDeclaration> entry in CGame.AssetManager.mAssetDeclarations) { CAssetDeclaration decl = entry.Value; CTUITreeViewItem item = null; if (decl.mType == EAssetType.AT_BRUSH) { item = _tviBrushes; } else if (decl.mType == EAssetType.AT_MODEL) { item = _tviModels; } else if (decl.mType == EAssetType.AT_LEVEL) { item = _tviLevels; } else if (decl.mType == EAssetType.AT_ITEM) { item = _tviItems; } if (item != null) { item.AddItem(decl.mName, () => OnClickAsset(decl.mName), () => mToolkit.EditAsset(decl.mName)); } } treeView.Rebuild(); // Split 2 GameObject w2p = mUI.CreateWindowPanel(w2, out _propertiesContent, "Properties"); mUI.AddLayout(w2p, -1, -1, 1.0f, 1.0f); mUI.CreateTextElement(_propertiesContent, "(No Asset Selected)", "text", CToolkitUI.ETextStyle.TS_HEADING); }
public override void Init(CAssetToolkit Toolkit) { base.Init(Toolkit); // NOTE: Must assign new icon ASAP before UI elemnts are created that reference it. // TODO: Is this needed?? //CGame.IconBuilder.RebuildItemIcons(); mPrimaryContent = mUI.CreateElement(Toolkit.mPrimaryContent, "modelEditor"); mUI.AddLayout(mPrimaryContent, -1, -1, 1.0f, 1.0f); mUI.AddVerticalLayout(mPrimaryContent); mPrimaryContent.GetComponent <VerticalLayoutGroup>().spacing = 4.0f; GameObject toolbar = mUI.CreateElement(mPrimaryContent, "toolbarView"); mUI.AddLayout(toolbar, -1, 48, 1.0f, 0.0f); mUI.AddImage(toolbar, mUI.WindowPanelBackground); mUI.AddHorizontalLayout(toolbar); toolbar.GetComponent <HorizontalLayoutGroup>().spacing = 4; _tbbSave = mUI.CreateToolbarButton(toolbar, "Save", mUI.SaveImage, _Save); mUI.CreateToolbarSeparator(toolbar); _tbbShowGrid = mUI.CreateToolbarButton(toolbar, "Show Helpers", mUI.BrushImage, () => { _showGrid = !_showGrid; mUI.SetToolbarButtonHighlight(_tbbShowGrid, _showGrid ? CToolkitUI.EButtonHighlight.SELECTED : CToolkitUI.EButtonHighlight.NOTHING); }); mUI.SetToolbarButtonHighlight(_tbbShowGrid, CToolkitUI.EButtonHighlight.SELECTED); mUI.CreateToolbarSeparator(toolbar); mUI.CreateToolbarButton(toolbar, "Properties", mUI.SheetImage, () => { _SelectTile(-1, -1); _RebuildItemPropertiesView(); }); //mUI.CreateToolbarSeparator(toolbar); //mUI.CreateToolbarButton(toolbar, "Tiles", mUI.SaveImage); //mUI.CreateToolbarButton(toolbar, "Move", mUI.SaveImage); //mUI.SetToolbarButtonHighlight(_tbbShowGrid, CToolkitUI.EButtonHighlight.SELECTED); GameObject hSplit = mUI.CreateElement(mPrimaryContent, "horzLayout"); mUI.AddLayout(hSplit, -1, -1, 1.0f, 1.0f); mUI.AddHorizontalLayout(hSplit); hSplit.GetComponent <HorizontalLayoutGroup>().spacing = 4; GameObject w1 = mUI.CreateElement(hSplit, "split1"); mUI.AddLayout(w1, 256, -1, 0.0f, 1.0f); mUI.AddVerticalLayout(w1); //AddImage(w1, Color.red); GameObject w2 = mUI.CreateElement(hSplit, "split2"); mUI.AddLayout(w2, -1, -1, 0.60f, 1.0f); mUI.AddVerticalLayout(w2); //AddImage(w2, Color.green); GameObject w3 = mUI.CreateElement(hSplit, "split3"); mUI.AddLayout(w3, 300, -1, 0.0f, 1.0f); mUI.AddVerticalLayout(w3); // Split 1 GameObject w1p = mUI.CreateWindowPanel(w1, out _toolPanelContent, "Components"); mUI.AddLayout(w1p, -1, -1, 1.0f, 1.0f); mUI.CreateTextElement(_toolPanelContent, "View Direction", "text", CToolkitUI.ETextStyle.TS_HEADING); toolbar = mUI.CreateElement(_toolPanelContent, "toolbarView"); mUI.AddLayout(toolbar, -1, 48, 1.0f, -1); mUI.AddImage(toolbar, mUI.WindowPanelBackground); mUI.AddHorizontalLayout(toolbar); toolbar.GetComponent <HorizontalLayoutGroup>().spacing = 4; _tbbView[0] = mUI.CreateToolbarButton(toolbar, "Front", mUI.LevelImage, () => _OnClickEdgeSetView(EViewDirection.VD_FRONT)); _tbbView[1] = mUI.CreateToolbarButton(toolbar, "Right", mUI.LevelImage, () => _OnClickEdgeSetView(EViewDirection.VD_RIGHT)); _tbbView[2] = mUI.CreateToolbarButton(toolbar, "Back", mUI.LevelImage, () => _OnClickEdgeSetView(EViewDirection.VD_BACK)); _tbbView[3] = mUI.CreateToolbarButton(toolbar, "Left", mUI.LevelImage, () => _OnClickEdgeSetView(EViewDirection.VD_LEFT)); mUI.SetToolbarButtonHighlight(_tbbView[0], CToolkitUI.EButtonHighlight.SELECTED); _componentContent = mUI.CreateElement(_toolPanelContent); mUI.AddVerticalLayout(_componentContent); // Split 2 GameObject w2pContent; GameObject w2p = mUI.CreateWindowPanel(w2, out w2pContent, "Item View"); mUI.AddLayout(w2p, -1, -1, 1.0f, 1.0f); _viewport = mUI.CreateElement(w2pContent, "itemView"); _viewport.AddComponent <CameraView>(); _viewport.AddComponent <RawImage>().texture = mToolkit.mPrimaryRT; _viewport.GetComponent <CameraView>().mOnMouseDown = _OnViewportMouseDown; _viewport.GetComponent <CameraView>().mOnMouseUp = _OnViewportMouseUp; mUI.AddLayout(_viewport, -1, -1, 1.0f, 1.0f); // Split 3 GameObject w3pContent; GameObject w3p = mUI.CreateWindowPanel(w3, out w3pContent, "Properties"); mUI.AddLayout(w3p, -1, -1, 1.0f, 1.0f); GameObject scrollV2 = mUI.CreateScrollView(w3pContent, out _propViewContent, true); mUI.AddLayout(scrollV2, -1, -1, 1.0f, 1.0f); _propViewContent.GetComponent <VerticalLayoutGroup>().spacing = 4; // World Scene _sceneGraph = new GameObject("itemEditorRoot"); _sceneGraph.SetActive(false); _helpers = new GameObject("itemEditorHelpers"); _helpers.transform.SetParent(_sceneGraph.transform); _itemRoot = new GameObject("itemRoot"); _itemRoot.transform.SetParent(_sceneGraph.transform); _tileIcons = new GameObject("itemTileIcons"); _tileIcons.transform.SetParent(_helpers.transform); _camState.mBackgroundColor = new Color(0.18f, 0.18f, 0.18f, 1.0f); _camState.SetViewGame(EViewDirection.VD_FRONT); _RebuildComponentView(); _RebuildItemPropertiesView(); GameObject sceneText = _CreateSceneText(_helpers, "Width"); sceneText.transform.position = new Vector3(0.5f, 0.0f, 0.0f); sceneText.transform.rotation = Quaternion.Euler(90, 0, 0); sceneText = _CreateSceneText(_helpers, "Length"); sceneText.transform.position = new Vector3(0.0f, 0.0f, 0.5f); sceneText.transform.rotation = Quaternion.Euler(90, 90, 0); }
public override void Init(CAssetToolkit Toolkit) { base.Init(Toolkit); mPrimaryContent = mUI.CreateElement(Toolkit.mPrimaryContent, "modelEditor"); mUI.AddLayout(mPrimaryContent, -1, -1, 1.0f, 1.0f); mUI.AddVerticalLayout(mPrimaryContent); mPrimaryContent.GetComponent <VerticalLayoutGroup>().spacing = 4.0f; GameObject toolbar = mUI.CreateElement(mPrimaryContent, "toolbarView"); mUI.AddLayout(toolbar, -1, 48, 1.0f, 0.0f); mUI.AddImage(toolbar, mUI.WindowPanelBackground); mUI.AddHorizontalLayout(toolbar); toolbar.GetComponent <HorizontalLayoutGroup>().spacing = 4; _tbbShowGrid = mUI.CreateToolbarButton(toolbar, "Show Grid", mUI.BrushImage, () => { _showGrid = !_showGrid; mUI.SetToolbarButtonHighlight(_tbbShowGrid, _showGrid ? CToolkitUI.EButtonHighlight.SELECTED : CToolkitUI.EButtonHighlight.NOTHING); }); mUI.SetToolbarButtonHighlight(_tbbShowGrid, CToolkitUI.EButtonHighlight.SELECTED); mUI.CreateToolbarButton(toolbar, "Screenshot", mUI.LevelImage, () => { Application.CaptureScreenshot("shot.png"); }); GameObject hSplit = mUI.CreateElement(mPrimaryContent, "horzLayout"); mUI.AddLayout(hSplit, -1, -1, 1.0f, 1.0f); mUI.AddHorizontalLayout(hSplit); hSplit.GetComponent <HorizontalLayoutGroup>().spacing = 4; GameObject w1 = mUI.CreateElement(hSplit, "split1"); mUI.AddLayout(w1, 256, -1, 0.0f, 1.0f); mUI.AddVerticalLayout(w1); //AddImage(w1, Color.red); GameObject w2 = mUI.CreateElement(hSplit, "split2"); mUI.AddLayout(w2, -1, -1, 0.60f, 1.0f); mUI.AddVerticalLayout(w2); //AddImage(w2, Color.green); GameObject w3 = mUI.CreateElement(hSplit, "split3"); mUI.AddLayout(w3, 300, -1, 0.0f, 1.0f); mUI.AddVerticalLayout(w3); // Split 1 GameObject w1p = mUI.CreateWindowPanel(w1, out _toolPanelContent, "Tools"); mUI.AddLayout(w1p, -1, -1, 1.0f, 1.0f); _animName = Animation.GetDefaultAnimation(); GameObject editor; mUI.CreateFieldElement(_toolPanelContent, "Speed", out editor); mUI.CreateFloatEditor(editor, _animSpeed, (float Value) => { _animSpeed = Value; _animator.speed = Value; }); mUI.CreateFieldElement(_toolPanelContent, "Facing Angle", out editor); _facingAngleEditor = mUI.CreateFloatEditor(editor, _facingAngle, (float Value) => { _facingAngle = Value; _unit.transform.rotation = Quaternion.AngleAxis(_facingAngle, Vector3.up); }); mUI.CreateTextElement(_toolPanelContent, "(Click and drag in viewport to rotate)"); //mUI.CreateFieldElement(_toolPanelContent, "Animation", out editor); //mUI.CreateComboBox(editor, _animName, _GetAnimsComboData, (string Name) => { _SetAnim(Name); }); mUI.CreateTextElement(_toolPanelContent, "Animation", "test", CToolkitUI.ETextStyle.TS_HEADING); GameObject scrollContent; GameObject scrollV1 = mUI.CreateScrollView(_toolPanelContent, out scrollContent, true); mUI.AddLayout(scrollV1, -1, -1, 1.0f, 1.0f); CTUITreeView treeView; GameObject treeViewGob = mUI.CreateTreeView(scrollContent, out treeView); mUI.AddLayout(treeViewGob, -1, -1, 1.0f, 1.0f); for (int i = 0; i < Animation.FBXEntries.Length; ++i) { int localI = i; CTUITreeViewItem item = treeView.mRootItem.AddItem(Animation.FBXEntries[i].mName, () => { _SetAnim(Animation.FBXEntries[localI].mName); }); } treeView.Rebuild(); // Split 2 GameObject w2pContent; GameObject w2p = mUI.CreateWindowPanel(w2, out w2pContent, "Item View"); mUI.AddLayout(w2p, -1, -1, 1.0f, 1.0f); _viewport = mUI.CreateElement(w2pContent, "itemView"); _viewport.AddComponent <CameraView>(); _viewport.AddComponent <RawImage>().texture = mToolkit.mPrimaryRT; _viewport.GetComponent <CameraView>().mOnMouseDown = _OnViewportMouseDown; _viewport.GetComponent <CameraView>().mOnMouseUp = _OnViewportMouseUp; mUI.AddLayout(_viewport, -1, -1, 1.0f, 1.0f); mUI.AddVerticalLayout(_viewport, new RectOffset(4, 4, 4, 4)); _viewInfoText = mUI.CreateTextElement(_viewport, "Testing Text", "", CToolkitUI.ETextStyle.TS_HEADING).GetComponent <Text>(); // Split 3 GameObject w3p = mUI.CreateWindowPanel(w3, out _propViewContent, "Properties"); mUI.AddLayout(w3p, -1, -1, 1.0f, 1.0f); // World Scene _sceneGraph = new GameObject("charEditRoot"); _sceneGraph.SetActive(false); _camState.mBackgroundColor = new Color(0.18f, 0.18f, 0.18f, 1.0f); _camState.SetViewGame(EViewDirection.VD_FRONT); _unit = GameObject.Instantiate(CGame.PrimaryResources.Prefabs[7] as GameObject); _unit.transform.SetParent(_sceneGraph.transform); _unit.transform.localPosition = new Vector3(0.0f, 0.0f, 0.0f); _unit.transform.rotation = Quaternion.AngleAxis(_facingAngle, Vector3.up); _animator = _unit.transform.GetChild(0).GetComponent <Animator>(); }