private void RedrawBlockView() { _blockView?.Dispose(); var block = _spawnController.NextBlock; var bounds = ComputeBounds(block.Shape); var halfSize = bounds.size / 2; var root = _renderView.BlockRoot; _renderView.SetCameraScale(Mathf.Max(halfSize.x, halfSize.z) + 0.5f); _blockView = _blockViewBuilder.BuildView(block); _blockView.Position = root.position - bounds.center; _blockView.SetParent(root); }
public void Push(IBlockView blockView) { _blockViewPool.Push(blockView); blockView.SetActive(false); blockView.SetParent(_poolGameObject.transform); }