Rename GameRenderer to BoardRenderer

This commit is contained in:
2025-12-13 18:56:50 +08:00
parent fccff79a6a
commit 98a7b34bfa
7 changed files with 23 additions and 23 deletions

View File

@@ -31,8 +31,8 @@ set(SOURCE_FILES
src/scenes/base/SceneManager.cpp src/scenes/base/SceneManager.cpp
src/scenes/gameplay/GameScene.cpp src/scenes/gameplay/GameScene.cpp
src/scenes/menu/MainMenuScene.cpp src/scenes/menu/MainMenuScene.cpp
src/graphics/GameRenderer.cpp src/graphics/game/BoardRenderer.cpp
src/graphics/CoordinateConverter.cpp src/graphics/game/CoordinateConverter.cpp
src/utils/CoordinateTools.cpp src/utils/CoordinateTools.cpp
src/graphics/font/FontManager.cpp src/graphics/font/FontManager.cpp
src/graphics/font/TextRenderer.cpp src/graphics/font/TextRenderer.cpp

View File

@@ -1,32 +1,32 @@
#include "GameRenderer.h" #include "BoardRenderer.h"
#include "game/Board.h" #include "game/Board.h"
#include <iostream> #include <iostream>
GameRenderer::GameRenderer(int WIDTH, int HEIGHT, SDL_Renderer* renderer) : m_Width(WIDTH), m_Height(HEIGHT), m_renderer(renderer) { BoardRenderer::BoardRenderer(int WIDTH, int HEIGHT, SDL_Renderer* renderer) : m_Width(WIDTH), m_Height(HEIGHT), m_renderer(renderer) {
m_cellSize = HEIGHT / m_boardRow; m_cellSize = HEIGHT / m_boardRow;
} }
GameRenderer::~GameRenderer() { BoardRenderer::~BoardRenderer() {
} }
bool GameRenderer::initialize() { bool BoardRenderer::initialize() {
return true; return true;
} }
void GameRenderer::setBoard(const Board* board) { void BoardRenderer::setBoard(const Board* board) {
m_board = board; m_board = board;
} }
void GameRenderer::drawBackground() { void BoardRenderer::drawBackground() {
} }
void GameRenderer::drawBoard() { void BoardRenderer::drawBoard() {
auto area = getBoardArea(); auto area = getBoardArea();
@@ -56,7 +56,7 @@ for (int row = 0; row < area.rows; ++row) {
} }
void GameRenderer::drawPiece(std::optional<std::pair<int, int>> selectedPiece) { void BoardRenderer::drawPiece(std::optional<std::pair<int, int>> selectedPiece) {
if (!m_board || !m_renderer) return; if (!m_board || !m_renderer) return;
auto area = getBoardArea(); auto area = getBoardArea();
@@ -99,7 +99,7 @@ void GameRenderer::drawPiece(std::optional<std::pair<int, int>> selectedPiece) {
} }
} }
BoardArea GameRenderer::getBoardArea() const { BoardArea BoardRenderer::getBoardArea() const {
return { return {
(m_Width - m_cellSize * m_boardCOL) / 2, (m_Width - m_cellSize * m_boardCOL) / 2,
(m_Height - m_cellSize * m_boardRow) / 2, (m_Height - m_cellSize * m_boardRow) / 2,

View File

@@ -14,7 +14,7 @@ struct PlayerColors {
class Board; class Board;
class GameRenderer class BoardRenderer
{ {
private: private:
SDL_Renderer* m_renderer = nullptr; SDL_Renderer* m_renderer = nullptr;
@@ -30,9 +30,9 @@ private:
float m_pieceRadiusRatio = 0.8f; // 棋子半径相对于格子大小的比例 float m_pieceRadiusRatio = 0.8f; // 棋子半径相对于格子大小的比例
PlayerColors m_colors; PlayerColors m_colors;
public: public:
GameRenderer(int WIDTH, int HEIGHT, SDL_Renderer* renderer); BoardRenderer(int WIDTH, int HEIGHT, SDL_Renderer* renderer);
~GameRenderer(); ~BoardRenderer();
// 渲染画面 // 渲染画面
// 初始化加载纹理 // 初始化加载纹理
bool initialize(); bool initialize();

View File

@@ -13,12 +13,12 @@ void GameScene::onEnter(SDL_Renderer* renderer, int WIDTH, int HEIGHT, UIRendere
m_uiRenderer = uiRenderer; m_uiRenderer = uiRenderer;
m_gameUIManager = std::make_unique<GameUIManager>(renderer, uiRenderer->getTextRenderer()); m_gameUIManager = std::make_unique<GameUIManager>(renderer, uiRenderer->getTextRenderer());
m_gameUIManager->init(); m_gameUIManager->init();
m_gameRenderer = std::make_unique<GameRenderer>(WIDTH, HEIGHT, renderer); m_boardRenderer = std::make_unique<BoardRenderer>(WIDTH, HEIGHT, renderer);
m_gameSession = std::make_unique<GameSession>(); m_gameSession = std::make_unique<GameSession>();
m_CoordinateConverter = std::make_unique<CoordinateConverter>(renderer); m_CoordinateConverter = std::make_unique<CoordinateConverter>(renderer);
m_gameSession->initialize(); m_gameSession->initialize();
m_gameRenderer->setBoard(m_gameSession->getBoard()); m_boardRenderer->setBoard(m_gameSession->getBoard());
@@ -31,16 +31,16 @@ void GameScene::update() {
void GameScene::render() { void GameScene::render() {
beginFrame(); beginFrame();
m_gameRenderer->drawBackground(); m_boardRenderer->drawBackground();
m_gameRenderer->drawBoard(); m_boardRenderer->drawBoard();
m_gameRenderer->drawPiece(m_gameSession->getSelectedPiece()); m_boardRenderer->drawPiece(m_gameSession->getSelectedPiece());
m_uiRenderer->renderUI(m_gameUIManager->getUIRenderData()); m_uiRenderer->renderUI(m_gameUIManager->getUIRenderData());
endFrame(); endFrame();
} }
void GameScene::handleClick(float screenX, float screenY) { void GameScene::handleClick(float screenX, float screenY) {
auto click = m_CoordinateConverter->ScreenToBoard(screenX, screenY, m_gameRenderer->getBoardArea()); auto click = m_CoordinateConverter->ScreenToBoard(screenX, screenY, m_boardRenderer->getBoardArea());
if (click) { if (click) {
auto [row, col] = click.value(); auto [row, col] = click.value();
m_gameSession->handleCoordinateInput(row, col); m_gameSession->handleCoordinateInput(row, col);

View File

@@ -1,7 +1,7 @@
#pragma once #pragma once
#include "scenes/base/Scene.h" #include "scenes/base/Scene.h"
#include "graphics/GameRenderer.h" #include "graphics/game/BoardRenderer.h"
#include "graphics/CoordinateConverter.h" #include "graphics/game/CoordinateConverter.h"
#include "game/GameSession.h" #include "game/GameSession.h"
#include "graphics/ui/UIRenderer.h" #include "graphics/ui/UIRenderer.h"
#include "ui/managers/GameUIManager.h" #include "ui/managers/GameUIManager.h"
@@ -20,7 +20,7 @@ public:
void renderMousePosition(float x, float y) override; void renderMousePosition(float x, float y) override;
private: private:
std::unique_ptr<GameRenderer> m_gameRenderer; std::unique_ptr<BoardRenderer> m_boardRenderer;
std::unique_ptr<CoordinateConverter> m_CoordinateConverter; std::unique_ptr<CoordinateConverter> m_CoordinateConverter;
std::unique_ptr<GameSession> m_gameSession; std::unique_ptr<GameSession> m_gameSession;