void CreatePatternPlane() { _patternPlane = _editor.CreatePlane("PatternPlane", null, PixelEditorScreen.PATTERN_PLANE_DEPTH); float xPos = PlayerPrefs.GetFloat("patternPosX", 1.25f); float yPos = PlayerPrefs.GetFloat("patternPosY", 0.5f); _patternPlane.transform.position = new Vector3(xPos, yPos, PixelEditorScreen.PATTERN_PLANE_DEPTH); // create material Material material = (Material)Instantiate(Resources.Load("Materials/UnlitTransparent") as Material); _patternPlane.GetComponent <MeshRenderer>().material = material; // --------------------------------------------------------- // BORDER // --------------------------------------------------------- _patternBorderPlane = _editor.CreatePlane("Border", _patternPlane.transform, BORDER_DEPTH); // create border texture Texture2D borderTexture = new Texture2D(1, 1, TextureFormat.ARGB32, false); borderTexture.filterMode = FilterMode.Point; borderTexture.SetPixel(0, 0, PixelEditorScreen.BORDER_COLOR); borderTexture.Apply(); // create border material Material borderMaterial = (Material)Instantiate(Resources.Load("Materials/UnlitAlphaWithFade") as Material); borderMaterial.mainTexture = borderTexture; _patternBorderPlane.GetComponent <MeshRenderer>().material = borderMaterial; // --------------------------------------------------------- // GRID // --------------------------------------------------------- _gridPlane = _editor.CreatePlane("Grid", _patternPlane.transform, GRID_DEPTH); // create grid material Material gridMaterial = (Material)Instantiate(Resources.Load("Materials/Unlit") as Material); _gridPlane.GetComponent <MeshRenderer>().material = gridMaterial; }
void CreateSwatch(out GameObject plane, out Texture2D texture, out GameObject borderPlane) { plane = _editor.CreatePlane("SwatchPlane", null, PixelEditorScreen.PALETTE_PLANE_DEPTH); float xPos = PlayerPrefs.GetFloat("swatchPosX", -1.1f); float yPos = PlayerPrefs.GetFloat("swatchPosY", 0.8f); plane.transform.position = new Vector3(xPos, yPos, PixelEditorScreen.SWATCH_PLANE_DEPTH); float scale = PlayerPrefs.GetFloat("swatchZoom", 0.16f); plane.transform.localScale = new Vector3(scale, scale, 1.0f); plane.layer = LayerMask.NameToLayer("Swatch"); texture = new Texture2D(1, 1, TextureFormat.ARGB32, false); texture.filterMode = FilterMode.Point; // Create material Material swatchMaterial = (Material)Instantiate(Resources.Load("Materials/UnlitTransparent") as Material); swatchMaterial.mainTexture = texture; plane.GetComponent <MeshRenderer>().material = swatchMaterial; // --------------------------------------------------------- // BORDER // --------------------------------------------------------- borderPlane = _editor.CreatePlane("Border", plane.transform, 0.2f); // create border texture Texture2D borderTexture = new Texture2D(1, 1, TextureFormat.ARGB32, false); borderTexture.filterMode = FilterMode.Point; borderTexture.SetPixel(0, 0, PixelEditorScreen.BORDER_COLOR); borderTexture.Apply(); // create border material Material borderMaterial = (Material)Instantiate(Resources.Load("Materials/UnlitAlphaWithFade") as Material); borderMaterial.mainTexture = borderTexture; borderPlane.GetComponent <MeshRenderer>().material = borderMaterial; borderPlane.layer = LayerMask.NameToLayer("Swatch"); float scaleIncrease = 0.15f; borderPlane.transform.localScale = new Vector3(1.0f + scaleIncrease, 1.0f + scaleIncrease, 1.0f); // --------------------------------------------------------- // BACKGROUND // --------------------------------------------------------- GameObject backgroundPlane = _editor.CreatePlane("Background", plane.transform, BORDER_DEPTH); backgroundPlane.transform.localScale = new Vector3(1, 1, 1); // create border texture Texture2D backgroundTexture = new Texture2D(1, 1, TextureFormat.ARGB32, false); backgroundTexture.filterMode = FilterMode.Point; byte grey = PixelEditorScreen.CANVAS_CHECKERS_EVEN_SHADE; backgroundTexture.SetPixel(0, 0, new Color32(grey, grey, grey, 255)); backgroundTexture.Apply(); // create border material Material backgroundMaterial = (Material)Instantiate(Resources.Load("Materials/Unlit") as Material); backgroundMaterial.mainTexture = backgroundTexture; backgroundPlane.GetComponent <MeshRenderer>().material = backgroundMaterial; }
void CreatePalette() { _palettePlane = _editor.CreatePlane("PalettePlane", null, PixelEditorScreen.PALETTE_PLANE_DEPTH); float aspect = (float)PALETTE_NUM_X / (float)PALETTE_NUM_Y; float xPos = PlayerPrefs.GetFloat("palettePosX", -1.1f); float yPos = PlayerPrefs.GetFloat("palettePosY", -0.5f); _palettePlane.transform.position = new Vector3(xPos, yPos, PixelEditorScreen.PALETTE_PLANE_DEPTH); float scale = PlayerPrefs.GetFloat("paletteZoom", 0.16f); _palettePlane.transform.localScale = new Vector3(scale, scale / aspect, 1.0f); _paletteTexture = new Texture2D(PALETTE_NUM_X, PALETTE_NUM_Y, TextureFormat.ARGB32, false); _paletteTexture.filterMode = FilterMode.Point; _paletteColors = new Color32[PALETTE_NUM_X * PALETTE_NUM_Y]; for (int y = 0; y < PALETTE_NUM_Y; y++) { for (int x = 0; x < PALETTE_NUM_X; x++) { int index = (PALETTE_NUM_Y - y - 1) * PALETTE_NUM_X + x; string colorString = PlayerPrefs.GetString("PaletteColor" + index.ToString(), ""); if (colorString != "") { string[] vals = colorString.Split(','); if (vals.Length == 3 || vals.Length == 4) { Color32 color; if (vals.Length == 3) { color = new Color32(byte.Parse(vals[0]), byte.Parse(vals[1]), byte.Parse(vals[2]), 255); } else { color = new Color32(byte.Parse(vals[0]), byte.Parse(vals[1]), byte.Parse(vals[2]), byte.Parse(vals[3])); } _paletteColors[index] = color; } } else { _paletteColors[index] = new Color32(0, 0, 0, 0); } } } RefreshPaletteTextureColors(); // Create material Material paletteMaterial = (Material)Instantiate(Resources.Load("Materials/UnlitTransparent") as Material); paletteMaterial.mainTexture = _paletteTexture; _palettePlane.GetComponent <MeshRenderer>().material = paletteMaterial; // --------------------------------------------------------- // BORDER // --------------------------------------------------------- _paletteBorderPlane = _editor.CreatePlane("Border", _palettePlane.transform, BORDER_DEPTH); // create border texture Texture2D borderTexture = new Texture2D(1, 1, TextureFormat.ARGB32, false); borderTexture.filterMode = FilterMode.Point; borderTexture.SetPixel(0, 0, PixelEditorScreen.BORDER_COLOR); borderTexture.Apply(); // create border material Material borderMaterial = (Material)Instantiate(Resources.Load("Materials/UnlitAlphaWithFade") as Material); borderMaterial.mainTexture = borderTexture; _paletteBorderPlane.GetComponent <MeshRenderer>().material = borderMaterial; float xScaleIncrease = 0.15f; float yScaleIncrease = xScaleIncrease * aspect; _paletteBorderPlane.transform.localScale = new Vector3(1.0f + xScaleIncrease, 1.0f + yScaleIncrease, 1.0f); // --------------------------------------------------------- // GRID // --------------------------------------------------------- _paletteGridPlane = _editor.CreatePlane("Grid", _palettePlane.transform, GRID_DEPTH); _paletteGridPlane.transform.localScale = new Vector3(1, 1, 1); // create border texture Texture2D gridTexture = new Texture2D(PALETTE_NUM_X, PALETTE_NUM_Y, TextureFormat.ARGB32, false); gridTexture.filterMode = FilterMode.Point; for (int y = 0; y < PALETTE_NUM_Y; y++) { for (int x = 0; x < PALETTE_NUM_X; x++) { bool yOdd = y % 2 != 0; bool xOdd = x % 2 != 0; byte grey = (yOdd && xOdd || !yOdd && !xOdd) ? PixelEditorScreen.CANVAS_CHECKERS_EVEN_SHADE : PixelEditorScreen.CANVAS_CHECKERS_ODD_SHADE; gridTexture.SetPixel(x, y, new Color32(grey, grey, grey, 255)); } } gridTexture.Apply(); // create border material Material gridMaterial = (Material)Instantiate(Resources.Load("Materials/Unlit") as Material); gridMaterial.mainTexture = gridTexture; _paletteGridPlane.GetComponent <MeshRenderer>().material = gridMaterial; }
public void CreateFramePlane() { int i = GetNumFrames(); GameObject framePreviewPlane = _editor.CreatePlane("FramePreview: " + i, _frameContainer.transform, 0.0f); float aspect = (float)_editor.GetCanvas().pixelWidth / (float)_editor.GetCanvas().pixelHeight; float PREVIEW_SCALE = 0.1f; float xScaleFrameIncrease = 0.16f; float yScaleFrameIncrease = xScaleFrameIncrease * aspect; framePreviewPlane.transform.localScale = new Vector3(aspect * PREVIEW_SCALE, PREVIEW_SCALE, 1); _framePlanes.Add(framePreviewPlane); framePreviewPlane.layer = LayerMask.NameToLayer("PreviewFrame"); Material framePreviewMaterial = (Material)Instantiate(Resources.Load("Materials/UnlitAlphaWithFade") as Material); framePreviewPlane.GetComponent <MeshRenderer>().material = framePreviewMaterial; // --------------------------------------------------------- // BORDER // --------------------------------------------------------- GameObject borderPlane = _editor.CreatePlane("Frame Border " + i, framePreviewPlane.transform, BORDER_DEPTH); _frameBorderPlanes.Add(borderPlane); borderPlane.transform.localScale = new Vector3(1.0f + xScaleFrameIncrease, 1.0f + yScaleFrameIncrease, 1.0f); borderPlane.layer = LayerMask.NameToLayer("PreviewFrame"); // create border texture Texture2D borderTexture = new Texture2D(1, 1, TextureFormat.ARGB32, false); borderTexture.filterMode = FilterMode.Point; borderTexture.SetPixel(0, 0, PixelEditorScreen.BORDER_COLOR_NONCURRENT_FRAME); borderTexture.Apply(); // create border material Material borderMaterial = (Material)Instantiate(Resources.Load("Materials/UnlitAlphaWithFade") as Material); borderMaterial.mainTexture = borderTexture; borderPlane.GetComponent <MeshRenderer>().material = borderMaterial; // --------------------------------------------------------- // GRID // --------------------------------------------------------- GameObject gridPlane = _editor.CreatePlane("Grid", framePreviewPlane.transform, GRID_DEPTH); _frameGridPlanes.Add(gridPlane); gridPlane.transform.localScale = new Vector3(1, 1, 1); // create border texture Texture2D gridTexture = new Texture2D(_editor.GetCanvas().pixelWidth, _editor.GetCanvas().pixelHeight, TextureFormat.ARGB32, false); gridTexture.filterMode = FilterMode.Point; for (int y = 0; y < _editor.GetCanvas().pixelHeight; y++) { for (int x = 0; x < _editor.GetCanvas().pixelWidth; x++) { bool yOdd = y % 2 != 0; bool xOdd = x % 2 != 0; byte grey = (yOdd && xOdd || !yOdd && !xOdd) ? PixelEditorScreen.CANVAS_CHECKERS_EVEN_SHADE : PixelEditorScreen.CANVAS_CHECKERS_ODD_SHADE; gridTexture.SetPixel(x, y, new Color32(grey, grey, grey, 255)); } } gridTexture.Apply(); // create border material Material gridMaterial = (Material)Instantiate(Resources.Load("Materials/Unlit") as Material); gridMaterial.mainTexture = gridTexture; gridPlane.GetComponent <MeshRenderer>().material = gridMaterial; framePreviewPlane.renderer.material.mainTexture = CreateFrameTexture(); _frameTimes.Add(DEFAULT_FRAME_TIME); _editor.CurrentFrameTimeString = _frameTimes[_currentFrame].ToString(); RepositionFramePlanes(); HighlightCurrentFramePreview(); }
void CreateCanvasPlane() { _canvasPlane = _editor.CreatePlane("CanvasPlane", null, PixelEditorScreen.CANVAS_PLANE_DEPTH); float xPos = PlayerPrefs.GetFloat("canvasPosX", 0.0f); float yPos = PlayerPrefs.GetFloat("canvasPosY", 0.0f); _canvasPlane.transform.position = new Vector3(xPos, yPos, PixelEditorScreen.CANVAS_PLANE_DEPTH); // create material Material material = (Material)Instantiate(Resources.Load("Materials/UnlitTransparent") as Material); _canvasPlane.GetComponent <MeshRenderer>().material = material; // --------------------------------------------------------- // BORDER // --------------------------------------------------------- _canvasBorderPlane = _editor.CreatePlane("Border", _canvasPlane.transform, BORDER_DEPTH); // create border texture Texture2D borderTexture = new Texture2D(1, 1, TextureFormat.ARGB32, false); borderTexture.filterMode = FilterMode.Point; borderTexture.SetPixel(0, 0, PixelEditorScreen.BORDER_COLOR); borderTexture.Apply(); // create border material Material borderMaterial = (Material)Instantiate(Resources.Load("Materials/UnlitAlphaWithFade") as Material); borderMaterial.mainTexture = borderTexture; _canvasBorderPlane.GetComponent <MeshRenderer>().material = borderMaterial; // --------------------------------------------------------- // GRID // --------------------------------------------------------- _gridPlane = _editor.CreatePlane("Grid", _canvasPlane.transform, GRID_DEPTH); // create grid material Material gridMaterial = (Material)Instantiate(Resources.Load("Materials/Unlit") as Material); _gridPlane.GetComponent <MeshRenderer>().material = gridMaterial; // --------------------------------------------------------- // ONION SKIN // --------------------------------------------------------- _onionSkinPlane = _editor.CreatePlane("OnionSkin", _canvasPlane.transform, ONION_SKIN_DEPTH); // create onion skin material Material onionSkinMaterial = (Material)Instantiate(Resources.Load("Materials/UnlitAlphaWithFade") as Material); onionSkinMaterial.color = new Color(1.0f, 1.0f, 1.0f, 0.0f); _onionSkinPlane.GetComponent <MeshRenderer>().material = onionSkinMaterial; Destroy(_onionSkinPlane.GetComponent <MeshCollider>()); _onionSkinOpacity = PlayerPrefs.GetFloat("onionSkinOpacity", ONION_SKIN_OPACITY_DEFAULT); // --------------------------------------------------------- // HITBOX // --------------------------------------------------------- _hitboxPlane = _editor.CreatePlane("Hitbox", _canvasPlane.transform, HITBOX_DEPTH); // create hitbox material Material hitboxMaterial = (Material)Instantiate(Resources.Load("Materials/UnlitAlphaWithFade") as Material); hitboxMaterial.color = new Color(1.0f, 1.0f, 1.0f, 0.0f); _hitboxPlane.GetComponent <MeshRenderer>().material = hitboxMaterial; Destroy(_hitboxPlane.GetComponent <MeshCollider>()); }