public override void Draw( float offsetX, float offsetY, DebugPrimitiveRenderer2D renderer) { renderer.color = new Color32(255, 255, 255, 255); if (_sprite != null) { renderer.AddSprite( offsetX + localLeftX, offsetY + localTopY, width, height, _sprite); } else if (_texture != null) { renderer.AddTexturedRectangle( offsetX + localLeftX, offsetY + localTopY, width, height, _texture); } else { renderer.AddRectangle( offsetX + localLeftX, offsetY + localTopY, width, height); } }
public override void Draw( float offsetX, float offsetY, DebugPrimitiveRenderer2D renderer) { // 棒を描画 float ratio; if (_mode == Mode.Log10) { float logMin = Mathf.Log10(_min); float logMax = Mathf.Log10(_max); ratio = (Mathf.Log10(value) - logMin) / (logMax - logMin); } else { ratio = (value - _min) / (_max - _min); } ratio = (ratio < 0f) ? 0f : ((ratio > 1f) ? 1f : ratio); float barWidth = (width - (2f * borderWidth)) * ratio; renderer.color = gaugeColor; renderer.AddRectangle( offsetX + localLeftX + borderWidth, offsetY + localTopY + borderWidth, barWidth, height - (2f * borderWidth)); // 題名 float fontSize = height - (2f * borderWidth); fontSize *= 0.8f; renderer.color = textColor; if (_text.Length > 0) { renderer.AddText( _text, fontSize, offsetX + localLeftX + (borderWidth * 2f), offsetY + localTopY + (borderWidth * 2f), width - (borderWidth * 2f), height - (borderWidth * 2f)); } string formatString = (_mode == Mode.Integer) ? "F0" : "F2"; // 数字は右寄せ renderer.AddText( value.ToString(formatString), fontSize, offsetX + localLeftX + (borderWidth * 2f), offsetY + localTopY + (borderWidth * 2f), width - (borderWidth * 2f), height - (borderWidth * 2f), DebugPrimitiveRenderer.Alignment.Right); }
void DrawSafeArea() { var safeArea = GetSafeArea(); // 左上端 float x0 = 0f; float y0 = (float)Screen.height; ConvertCoordFromUnityScreen(ref x0, ref y0); // 左上端 float x1 = (float)Screen.width; float y1 = 0f; ConvertCoordFromUnityScreen(ref x1, ref y1); _renderer.color = new Color32(255, 0, 0, 64); _renderer.AddRectangle(x0, y0, (x1 - x0), -y0); // 上 _renderer.AddRectangle(x0, _root.height, (x1 - x0), y1 - _root.height); // 下 _renderer.AddRectangle(x0, 0f, -x0, _root.height); // 左 _renderer.AddRectangle(_root.width, 0f, x1 - _root.width, _root.height); // 右 }
void DrawSafeArea() { // 左上端 var rect = ScreenSettings.Instance.ActualScreenRect; float x0 = rect.x; float y0 = rect.y + rect.height; ConvertCoordFromUnityScreen(ref x0, ref y0); // 右下端 float x1 = rect.x + rect.width; float y1 = rect.y; ConvertCoordFromUnityScreen(ref x1, ref y1); _renderer.color = new Color32(255, 0, 0, 64); _renderer.AddRectangle(x0, y0, (x1 - x0), -y0); // 上 _renderer.AddRectangle(x0, _root.height, (x1 - x0), y1 - _root.height); // 下 _renderer.AddRectangle(x0, 0f, -x0, _root.height); // 左 _renderer.AddRectangle(_root.width, 0f, x1 - _root.width, _root.height); // 右 }
public override void Draw( float offsetX, float offsetY, DebugPrimitiveRenderer2D renderer) { Color32 tmpColor = (isPointerDown) ? pointerDownColor : color; renderer.color = tmpColor; if (texture != null) { renderer.AddTexturedRectangle( offsetX + localLeftX + borderWidth, offsetY + localTopY + borderWidth, width - (borderWidth * 2f), height - (borderWidth * 2f), texture); } else if (sprite != null) { renderer.AddSprite( offsetX + localLeftX + borderWidth, offsetY + localTopY + borderWidth, width - (borderWidth * 2f), height - (borderWidth * 2f), sprite); } else { renderer.AddRectangle( offsetX + localLeftX + borderWidth, offsetY + localTopY + borderWidth, width - (borderWidth * 2f), height - (borderWidth * 2f)); } Color32 tmpTextColor = (isPointerDown) ? pointerDownTextColor : textColor; renderer.color = tmpTextColor; renderer.AddText( text, offsetX + localLeftX + (width * 0.5f), offsetY + localTopY + (height * 0.5f), width - (borderWidth * 4f), height - (borderWidth * 4f), DebugPrimitiveRenderer.AlignX.Center, DebugPrimitiveRenderer.AlignY.Center); }
public override void Draw( float offsetX, float offsetY, DebugPrimitiveRenderer2D renderer) { Color32 tmpColor = (on) ? onColor : offColor; renderer.color = tmpColor; if (_sprite != null) { renderer.AddSprite( offsetX + localLeftX + borderWidth, offsetY + localTopY + borderWidth, width - (borderWidth * 2f), height - (borderWidth * 2f), _sprite); } else if (_texture != null) { renderer.AddTexturedRectangle( offsetX + localLeftX + borderWidth, offsetY + localTopY + borderWidth, width - (borderWidth * 2f), height - (borderWidth * 2f), _texture); } else { renderer.AddRectangle( offsetX + localLeftX + borderWidth, offsetY + localTopY + borderWidth, width - (borderWidth * 2f), height - (borderWidth * 2f)); } Color32 tmpTextColor = (on) ? onTextColor : offTextColor; DrawTextAuto( renderer, text, tmpTextColor, offsetX + localLeftX + (borderWidth * 2f), offsetY + localTopY + (borderWidth * 2f), width - (borderWidth * 4f), height - (borderWidth * 4f), _rotateToVertical); }
public void DrawRecursive( float offsetX, float offsetY, DebugPrimitiveRenderer2D renderer) { if (!_enabled) { return; } // まず自分描画 if (backgroundEnabled) { renderer.color = backgroundColor; renderer.AddRectangle( offsetX + localLeftX, offsetY + localTopY, width, height); } if (borderEnabled) { renderer.color = borderColor; renderer.AddRectangleFrame( offsetX + localLeftX, offsetY + localTopY, width, height, borderWidth); } Draw(offsetX, offsetY, renderer); // グローバル座標を計算して子を描画 float globalLeftX = offsetX + localLeftX; float globalTopY = offsetY + localTopY; var child = _firstChild; while (child != null) { child.DrawRecursive(globalLeftX, globalTopY, renderer); child = child._nextBrother; } }
void DrawGauge( float offsetX, float offsetY, DebugPrimitiveRenderer2D renderer, float value, Color32 color) { // seconadary float ratio = (value - _min) / (_max - _min); ratio = (ratio < 0f) ? 0f : ((ratio > 1f) ? 1f : ratio); float length = ratio * (width - (2f * borderWidth)); renderer.color = color; renderer.AddRectangle( offsetX + localLeftX + borderWidth, offsetY + localTopY + borderWidth, length, height - (2f * borderWidth)); }
public void DrawRecursive( float offsetX, float offsetY, DebugPrimitiveRenderer2D renderer) { if (!_enabled) { return; } // まず自分描画 if (backgroundEnabled) { renderer.color = backgroundColor; renderer.AddRectangle( offsetX + localLeftX, offsetY + localTopY, width, height); } if (borderEnabled) { renderer.color = borderColor; renderer.AddRectangleFrame( offsetX + localLeftX, offsetY + localTopY, width, height, borderWidth); } Draw(offsetX, offsetY, renderer); // グローバル座標を計算して子を描画 float globalLeftX = offsetX + localLeftX; float globalTopY = offsetY + localTopY; DrawChildren(globalLeftX, globalTopY, renderer); DrawPostChild(offsetX, offsetY, renderer); }