From c0a4d627af7a5224c240ffa2d0644c89703c3afb Mon Sep 17 00:00:00 2001 From: Anonymous Maarten Date: Wed, 1 Nov 2017 04:36:52 +0100 Subject: [PATCH] rwengine: iwyu: reduce warnings in render subdirectory --- openrw_iwyu.imp | 1 + rwengine/src/engine/GameData.cpp | 1 + rwengine/src/engine/SaveGame.cpp | 2 -- rwengine/src/render/DebugDraw.cpp | 15 ++++++--- rwengine/src/render/DebugDraw.hpp | 19 +++++++++-- rwengine/src/render/GameRenderer.cpp | 44 ++++++++++++-------------- rwengine/src/render/GameRenderer.hpp | 44 ++++++++++---------------- rwengine/src/render/GameShaders.cpp | 12 +++---- rwengine/src/render/GameShaders.hpp | 5 ++- rwengine/src/render/MapRenderer.cpp | 23 ++++++++++---- rwengine/src/render/MapRenderer.hpp | 16 ++++++++-- rwengine/src/render/ObjectRenderer.cpp | 30 +++++++++++------- rwengine/src/render/ObjectRenderer.hpp | 30 +++++++++++++----- rwengine/src/render/OpenGLRenderer.cpp | 22 +++++++------ rwengine/src/render/OpenGLRenderer.hpp | 20 ++++++++---- rwengine/src/render/TextRenderer.cpp | 11 +++++-- rwengine/src/render/TextRenderer.hpp | 17 +++++++--- rwengine/src/render/ViewCamera.hpp | 7 ++-- rwengine/src/render/ViewFrustum.hpp | 6 ++-- rwengine/src/render/VisualFX.cpp | 4 +-- rwengine/src/render/VisualFX.hpp | 8 +++-- rwengine/src/render/WaterRenderer.cpp | 16 +++++++--- rwengine/src/render/WaterRenderer.hpp | 14 ++++++-- rwgame/DrawUI.cpp | 1 + rwgame/GameBase.cpp | 9 ++++-- rwgame/MenuSystem.hpp | 7 ++-- rwgame/RWGame.cpp | 1 + rwgame/states/BenchmarkState.cpp | 4 ++- rwgame/states/DebugState.cpp | 1 + rwgame/states/IngameState.hpp | 1 + rwgame/states/PauseState.cpp | 2 ++ 31 files changed, 255 insertions(+), 138 deletions(-) diff --git a/openrw_iwyu.imp b/openrw_iwyu.imp index 8f20368d..42ff9da0 100644 --- a/openrw_iwyu.imp +++ b/openrw_iwyu.imp @@ -13,6 +13,7 @@ { "include": [ "@", "private", "", "public"] }, { "include": [ "@", "public", "", "public"] }, { "include": [ "@", "public", "", "public"] }, + { "symbol": [ "glm::value_ptr", "private", "", "public"] }, # Boost filesystem: { "include": [ "@", "private", "", "public"] }, # Boost iterator: diff --git a/rwengine/src/engine/GameData.cpp b/rwengine/src/engine/GameData.cpp index 5d13b07d..82ca19db 100644 --- a/rwengine/src/engine/GameData.cpp +++ b/rwengine/src/engine/GameData.cpp @@ -5,6 +5,7 @@ #include #include #include +#include #include #include diff --git a/rwengine/src/engine/SaveGame.cpp b/rwengine/src/engine/SaveGame.cpp index d285703e..15e496fc 100644 --- a/rwengine/src/engine/SaveGame.cpp +++ b/rwengine/src/engine/SaveGame.cpp @@ -5,9 +5,7 @@ #include #include -#if RW_DEBUG #include -#endif #include diff --git a/rwengine/src/render/DebugDraw.cpp b/rwengine/src/render/DebugDraw.cpp index 7d7b8c9e..84459acd 100644 --- a/rwengine/src/render/DebugDraw.cpp +++ b/rwengine/src/render/DebugDraw.cpp @@ -1,11 +1,18 @@ #include "render/DebugDraw.hpp" -#include -#include -#include - #include +#include +#include + +#include +#include +#include +#include +#include + +#include "render/GameRenderer.hpp" + DebugDraw::DebugDraw() : shaderProgram(nullptr) { lineBuff = new GeometryBuffer; dbuff = new DrawBuffer; diff --git a/rwengine/src/render/DebugDraw.hpp b/rwengine/src/render/DebugDraw.hpp index f96bca33..d7fc74bc 100644 --- a/rwengine/src/render/DebugDraw.hpp +++ b/rwengine/src/render/DebugDraw.hpp @@ -1,8 +1,21 @@ -#pragma once +#ifndef _RWENGINE_DEBUGDRAW_HPP_ +#define _RWENGINE_DEBUGDRAW_HPP_ + +#include +#include #include +#include + #include -#include +#include + +#include "render/OpenGLRenderer.hpp" + +class btVector3; +class DrawBuffer; +class GameRenderer; +class GeometryBuffer; class DebugDraw : public btIDebugDraw { public: @@ -38,3 +51,5 @@ protected: GLuint texture; }; + +#endif diff --git a/rwengine/src/render/GameRenderer.cpp b/rwengine/src/render/GameRenderer.cpp index 3d6f708d..3a1da24f 100644 --- a/rwengine/src/render/GameRenderer.cpp +++ b/rwengine/src/render/GameRenderer.cpp @@ -1,31 +1,29 @@ -#include -#include -#include -#include -#include +#include "render/GameRenderer.hpp" -#include -#include -#include -#include -#include +#include +#include +#include +#include +#include -#include -#include - -#include -#include -#include - -#include -#include - -#include #include #include -#include +#include +#include -#include +#include +#include + +#include "core/Logger.hpp" +#include "core/Profiler.hpp" +#include "engine/GameData.hpp" +#include "engine/GameState.hpp" +#include "engine/GameWorld.hpp" +#include "loaders/WeatherLoader.hpp" +#include "objects/GameObject.hpp" +#include "render/ObjectRenderer.hpp" +#include "render/GameShaders.hpp" +#include "render/VisualFX.hpp" const size_t skydomeSegments = 8, skydomeRows = 10; constexpr uint32_t kMissingTextureBytes[] = { diff --git a/rwengine/src/render/GameRenderer.hpp b/rwengine/src/render/GameRenderer.hpp index 7ce43ace..e877191d 100644 --- a/rwengine/src/render/GameRenderer.hpp +++ b/rwengine/src/render/GameRenderer.hpp @@ -1,39 +1,27 @@ -#ifndef _GAMERENDERER_HPP_ -#define _GAMERENDERER_HPP_ -#include +#ifndef _RWENGINE_GAMERENDERER_HPP_ +#define _RWENGINE_GAMERENDERER_HPP_ -class Logger; +#include +#include +#include + +#include +#include #include -#include -#include - -#include +#include #include -#include "MapRenderer.hpp" -#include "TextRenderer.hpp" -#include "WaterRenderer.hpp" +#include +#include +#include +#include -class Clump; -class ModelFrame; +class Logger; +class GameData; class GameWorld; -class GameObject; - -struct AreaIndicatorInfo; - -/// @todo migrate to some other way of rendering each object type. -class CharacterObject; -class VehicleObject; -class InstanceObject; -class PickupObject; -class ProjectileObject; -class CutsceneObject; - -class Animator; - -class Renderer; +class TextureData; /** * @brief Implements high level drawing logic and low level draw commands diff --git a/rwengine/src/render/GameShaders.cpp b/rwengine/src/render/GameShaders.cpp index 509faa04..54165a03 100644 --- a/rwengine/src/render/GameShaders.cpp +++ b/rwengine/src/render/GameShaders.cpp @@ -1,4 +1,4 @@ -#include +#include "render/GameShaders.hpp" namespace GameShaders { @@ -44,17 +44,17 @@ vec3 planeIntercept( vec3 start, vec3 dir, float height ) void main() { TexCoords = position * vec2(0.5,0.5) + vec2(0.5); - + mat4 vp = projection * view; mat4 projector = inverseVP; - + mat3 rot = mat3(view); vec3 ray = vec3(-position.x, -position.y, projection[0][0] ) * rot; - + float plane = texture( data, TexCoords ).r; - + vec3 ws = planeIntercept( campos.xyz, ray, plane ); - + ws.z = ws.z + (-1.0+(sin(time + (ws.x + ws.y) * waveParams.x)) * waveParams.y); TexCoords = ws.xy / 5.0; gl_Position = vp * vec4(ws, 1.0); diff --git a/rwengine/src/render/GameShaders.hpp b/rwengine/src/render/GameShaders.hpp index 8912ff56..4e2f851c 100644 --- a/rwengine/src/render/GameShaders.hpp +++ b/rwengine/src/render/GameShaders.hpp @@ -1,6 +1,5 @@ -#pragma once -#ifndef _GAMESHADERS_HPP_ -#define _GAMESHADERS_HPP_ +#ifndef _RWENGINE_GAMESHADERS_HPP_ +#define _RWENGINE_GAMESHADERS_HPP_ #define SHADER_VF(Name) \ struct Name { \ diff --git a/rwengine/src/render/MapRenderer.cpp b/rwengine/src/render/MapRenderer.cpp index 42fa4f7d..4753bb9b 100644 --- a/rwengine/src/render/MapRenderer.cpp +++ b/rwengine/src/render/MapRenderer.cpp @@ -1,10 +1,19 @@ -#include -#include -#include -#include -#include -#include -#include +#include "render/MapRenderer.hpp" + +#include +#include +#include + +#include +#include + +#include +#include + +#include "engine/GameData.hpp" +#include "engine/GameState.hpp" +#include "engine/GameWorld.hpp" +#include "objects/GameObject.hpp" const char* MapVertexShader = R"( #version 330 diff --git a/rwengine/src/render/MapRenderer.hpp b/rwengine/src/render/MapRenderer.hpp index 7454668e..d7d7db9e 100644 --- a/rwengine/src/render/MapRenderer.hpp +++ b/rwengine/src/render/MapRenderer.hpp @@ -1,6 +1,16 @@ -#pragma once +#ifndef _RWENGINE_MAPRENDERER_HPP_ +#define _RWENGINE_MAPRENDERER_HPP_ + +#include +#include + +#include + +#include +#include + +#include "render/OpenGLRenderer.hpp" -#include class GameData; class GameWorld; @@ -51,3 +61,5 @@ private: void drawBlip(const glm::vec2& coord, const glm::mat4& view, const MapInfo& mi, glm::vec4 colour, float size); }; + +#endif diff --git a/rwengine/src/render/ObjectRenderer.cpp b/rwengine/src/render/ObjectRenderer.cpp index a6e71e68..6dc2bc31 100644 --- a/rwengine/src/render/ObjectRenderer.cpp +++ b/rwengine/src/render/ObjectRenderer.cpp @@ -1,19 +1,27 @@ +#include "render/ObjectRenderer.hpp" + +#include + #include +#include #include -#include -#include -#include -#include -#include + +#include "data/CutsceneData.hpp" #include "data/WeaponData.hpp" +#include "engine/GameData.hpp" +#include "engine/GameState.hpp" +#include "engine/GameWorld.hpp" +#include "render/ViewCamera.hpp" + // Objects that we know how to turn into renderlist entries -#include -#include -#include -#include -#include -#include +#include "objects/CharacterObject.hpp" +#include "objects/CutsceneObject.hpp" +#include "objects/InstanceObject.hpp" +#include "objects/PickupObject.hpp" +#include "objects/ProjectileObject.hpp" +#include "objects/VehicleObject.hpp" + #ifdef RW_WINDOWS #include #endif diff --git a/rwengine/src/render/ObjectRenderer.hpp b/rwengine/src/render/ObjectRenderer.hpp index 8332d686..79827d32 100644 --- a/rwengine/src/render/ObjectRenderer.hpp +++ b/rwengine/src/render/ObjectRenderer.hpp @@ -1,16 +1,30 @@ #ifndef _RWENGINE_OBJECTRENDERER_HPP_ #define _RWENGINE_OBJECTRENDERER_HPP_ -#include -#include -#include -#include -#include -#include -#include +#include -class ProjectileObject; +#include + +//#include +//#include +#include +//#include +#include +//#include +//#include + +class Atomic; +class CharacterObject; +class Clump; +class CutsceneObject; +class GameObject; +class GameWorld; +class InstanceObject; class PickupObject; +class ProjectileObject; +class VehicleObject; +class ViewCamera; +struct Geometry; /** * @brief The ObjectRenderer class handles object -> renderer transformation diff --git a/rwengine/src/render/OpenGLRenderer.cpp b/rwengine/src/render/OpenGLRenderer.cpp index 78951d54..7e57dc10 100644 --- a/rwengine/src/render/OpenGLRenderer.cpp +++ b/rwengine/src/render/OpenGLRenderer.cpp @@ -1,9 +1,13 @@ +#include "render/OpenGLRenderer.hpp" + +#include +#include + #include #include -#include -#include -#include +#include +#include namespace { constexpr GLuint kUBOIndexScene = 1; @@ -19,7 +23,7 @@ GLuint compileShader(GLenum type, const char* source) { glGetShaderiv(shader, GL_COMPILE_STATUS, &status); if (status != GL_TRUE) { - std::cerr << "[OGL] Shader Compilation Failed" << std::endl; + RW_ERROR("[OGL] Shader Compilation Failed"); } GLint len; @@ -33,9 +37,9 @@ GLuint compileShader(GLenum type, const char* source) { GLchar* sourceBuff = new GLchar[sourceLen]; glGetShaderSource(shader, sourceLen, nullptr, sourceBuff); - std::cerr << "[OGL] Shader InfoLog(" << shader << "):\n" + RW_ERROR("[OGL] Shader InfoLog(" << shader << "):\n" << buffer << "\nSource:\n" - << sourceBuff << std::endl; + << sourceBuff); delete[] buffer; delete[] sourceBuff; @@ -68,7 +72,7 @@ GLuint compileProgram(const char* vertex, const char* fragment) { glGetProgramiv(prog, GL_LINK_STATUS, &status); if (status != GL_TRUE) { - std::cerr << "[OGL] Program Link Failed" << std::endl; + RW_ERROR("[OGL] Program Link Failed"); } GLint len; @@ -77,8 +81,8 @@ GLuint compileProgram(const char* vertex, const char* fragment) { GLchar* buffer = new GLchar[len]; glGetProgramInfoLog(prog, len, NULL, buffer); - std::cerr << "[OGL] Program InfoLog(" << prog << "):\n" - << buffer << std::endl; + RW_ERROR("[OGL] Program InfoLog(" << prog << "):\n" + << buffer); delete[] buffer; } diff --git a/rwengine/src/render/OpenGLRenderer.hpp b/rwengine/src/render/OpenGLRenderer.hpp index 7280ee26..2095e982 100644 --- a/rwengine/src/render/OpenGLRenderer.hpp +++ b/rwengine/src/render/OpenGLRenderer.hpp @@ -1,11 +1,19 @@ -#pragma once -#ifndef _OPENGLRENDERER_HPP_ -#define _OPENGLRENDERER_HPP_ +#ifndef _RWENGINE_OPENGLRENDERER_HPP_ +#define _RWENGINE_OPENGLRENDERER_HPP_ -#include +#include +#include +#include +#include +#include +#include + +#include + +#include #include -#include -#include + +class DrawBuffer; typedef uint64_t RenderKey; diff --git a/rwengine/src/render/TextRenderer.cpp b/rwengine/src/render/TextRenderer.cpp index d2231a40..c36fb11b 100644 --- a/rwengine/src/render/TextRenderer.cpp +++ b/rwengine/src/render/TextRenderer.cpp @@ -1,9 +1,16 @@ #include "render/TextRenderer.hpp" -#include -#include #include #include +#include +#include +#include +#include + +#include + +#include "engine/GameData.hpp" +#include "render/GameRenderer.hpp" int charToIndex(uint16_t g) { // Correct for the default font maps diff --git a/rwengine/src/render/TextRenderer.hpp b/rwengine/src/render/TextRenderer.hpp index 9d2b757b..0428d12b 100644 --- a/rwengine/src/render/TextRenderer.hpp +++ b/rwengine/src/render/TextRenderer.hpp @@ -1,7 +1,16 @@ -#ifndef RWENGINE_TEXTRENDERER_HPP -#define RWENGINE_TEXTRENDERER_HPP -#include -#include "OpenGLRenderer.hpp" +#ifndef _RWENGINE_TEXTRENDERER_HPP_ +#define _RWENGINE_TEXTRENDERER_HPP_ + +#include +#include + +#include + +#include +#include + +#include +#include #define GAME_FONTS 3 #define GAME_GLYPHS 192 diff --git a/rwengine/src/render/ViewCamera.hpp b/rwengine/src/render/ViewCamera.hpp index 2213769e..97a79ad6 100644 --- a/rwengine/src/render/ViewCamera.hpp +++ b/rwengine/src/render/ViewCamera.hpp @@ -1,7 +1,8 @@ -#ifndef _VIEWCAMERA_HPP_ -#define _VIEWCAMERA_HPP_ +#ifndef _RWENGINE_VIEWCAMERA_HPP_ +#define _RWENGINE_VIEWCAMERA_HPP_ #include -#include "ViewFrustum.hpp" + +#include "render/ViewFrustum.hpp" class ViewCamera { public: diff --git a/rwengine/src/render/ViewFrustum.hpp b/rwengine/src/render/ViewFrustum.hpp index 4d3b7eab..63d396a3 100644 --- a/rwengine/src/render/ViewFrustum.hpp +++ b/rwengine/src/render/ViewFrustum.hpp @@ -1,7 +1,9 @@ -#ifndef _VIEWFRUSTUM_HPP_ -#define _VIEWFRUSTUM_HPP_ +#ifndef _RWENGINE_VIEWFRUSTUM_HPP_ +#define _RWENGINE_VIEWFRUSTUM_HPP_ + #include #include + #ifdef RW_WINDOWS #include #endif diff --git a/rwengine/src/render/VisualFX.cpp b/rwengine/src/render/VisualFX.cpp index d8fe8d95..77b011e8 100644 --- a/rwengine/src/render/VisualFX.cpp +++ b/rwengine/src/render/VisualFX.cpp @@ -1,6 +1,6 @@ -#include +#include "render/VisualFX.hpp" -#include +#include VisualFX::LightData::~LightData() { } diff --git a/rwengine/src/render/VisualFX.hpp b/rwengine/src/render/VisualFX.hpp index ccb54c45..487df186 100644 --- a/rwengine/src/render/VisualFX.hpp +++ b/rwengine/src/render/VisualFX.hpp @@ -1,7 +1,9 @@ -#pragma once +#ifndef _RWENGINE_VISUALFX_HPP_ +#define _RWENGINE_VISUALFX_HPP_ + +#include #include -#include /** * Represents a scene effect: lighting, particles etc. @@ -80,3 +82,5 @@ public: private: EffectType type; }; + +#endif diff --git a/rwengine/src/render/WaterRenderer.cpp b/rwengine/src/render/WaterRenderer.cpp index e3ac7582..3deb839c 100644 --- a/rwengine/src/render/WaterRenderer.cpp +++ b/rwengine/src/render/WaterRenderer.cpp @@ -1,10 +1,18 @@ -#include -#include -#include -#include +#include "render/WaterRenderer.hpp" + +#include #include +#include +#include + +#include "engine/GameData.hpp" +#include "engine/GameWorld.hpp" +#include "render/GameRenderer.hpp" +#include "render/GameShaders.hpp" +#include "render/OpenGLRenderer.hpp" + WaterRenderer::WaterRenderer(GameRenderer* renderer) : waterProg(nullptr) { maskDraw.setFaceType(GL_TRIANGLES); gridDraw.setFaceType(GL_TRIANGLES); diff --git a/rwengine/src/render/WaterRenderer.hpp b/rwengine/src/render/WaterRenderer.hpp index 0b8ecb75..86128b6a 100644 --- a/rwengine/src/render/WaterRenderer.hpp +++ b/rwengine/src/render/WaterRenderer.hpp @@ -1,7 +1,15 @@ -#pragma once +#ifndef _RWENGINE_WATERRENDERER_HPP_ +#define _RWENGINE_WATERRENDERER_HPP_ + +#include +#include +#include + +#include +#include +#include #include -#include class GameRenderer; class GameWorld; @@ -47,3 +55,5 @@ private: GLuint fbOutput; GLuint dataTexture; }; + +#endif diff --git a/rwgame/DrawUI.cpp b/rwgame/DrawUI.cpp index 57a7d32c..e27721c3 100644 --- a/rwgame/DrawUI.cpp +++ b/rwgame/DrawUI.cpp @@ -3,6 +3,7 @@ #include #include #include +#include #include #include diff --git a/rwgame/GameBase.cpp b/rwgame/GameBase.cpp index 86836abd..05051ff9 100644 --- a/rwgame/GameBase.cpp +++ b/rwgame/GameBase.cpp @@ -1,12 +1,15 @@ #include "GameBase.hpp" +//#include + +#include + +#include + #include -#include #include "GitSHA1.h" -#include "SDL.h" - #include // Use first 8 chars of git hash as the build string diff --git a/rwgame/MenuSystem.hpp b/rwgame/MenuSystem.hpp index b1299124..ceb342ed 100644 --- a/rwgame/MenuSystem.hpp +++ b/rwgame/MenuSystem.hpp @@ -2,11 +2,14 @@ #define _GAME_MENUSYSTEM_HPP_ #include #include -#include #include -#include #include +#include + +#include +#include + /** * Default values for menus that should match the look and feel of the original */ diff --git a/rwgame/RWGame.cpp b/rwgame/RWGame.cpp index 22060f24..121af500 100644 --- a/rwgame/RWGame.cpp +++ b/rwgame/RWGame.cpp @@ -24,6 +24,7 @@ #include #include #include +#include std::map kSpecialModels = { {GameRenderer::ZoneCylinderA, "zonecyla.dff"}, diff --git a/rwgame/states/BenchmarkState.cpp b/rwgame/states/BenchmarkState.cpp index 0a0c6d81..98255b0f 100644 --- a/rwgame/states/BenchmarkState.cpp +++ b/rwgame/states/BenchmarkState.cpp @@ -1,8 +1,10 @@ #include "BenchmarkState.hpp" #include -#include #include "RWGame.hpp" +#include +#include + BenchmarkState::BenchmarkState(RWGame* game, const std::string& benchfile) : State(game), benchfile(benchfile), benchmarkTime(0.f), duration(0.f), frameCounter(0) { } diff --git a/rwgame/states/DebugState.cpp b/rwgame/states/DebugState.cpp index 89372b89..7e357005 100644 --- a/rwgame/states/DebugState.cpp +++ b/rwgame/states/DebugState.cpp @@ -8,6 +8,7 @@ #include #include #include +#include #include "RWGame.hpp" constexpr float kDebugEntryHeight = 14.f; diff --git a/rwgame/states/IngameState.hpp b/rwgame/states/IngameState.hpp index 5a92f7d3..7a714879 100644 --- a/rwgame/states/IngameState.hpp +++ b/rwgame/states/IngameState.hpp @@ -3,6 +3,7 @@ #include "StateManager.hpp" +class GameObject; class PlayerController; class IngameState : public State { diff --git a/rwgame/states/PauseState.cpp b/rwgame/states/PauseState.cpp index dd5b5a92..ba4b2f4b 100644 --- a/rwgame/states/PauseState.cpp +++ b/rwgame/states/PauseState.cpp @@ -1,6 +1,8 @@ #include "PauseState.hpp" #include "RWGame.hpp" +#include + PauseState::PauseState(RWGame* game) : State(game) { auto& t = game->getGameData().texts;