diff --git a/src/graphics/core/nulldevice.cpp b/src/graphics/core/nulldevice.cpp deleted file mode 100644 index a3fc04ee..00000000 --- a/src/graphics/core/nulldevice.cpp +++ /dev/null @@ -1,335 +0,0 @@ -/* - * This file is part of the Colobot: Gold Edition source code - * Copyright (C) 2001-2021, Daniel Roux, EPSITEC SA & TerranovaTeam - * http://epsitec.ch; http://colobot.info; http://github.com/colobot - * - * This program is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. - * See the GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with this program. If not, see http://gnu.org/licenses - */ - - -#include "graphics/core/nulldevice.h" - - -// Graphics module namespace -namespace Gfx -{ - -CNullDevice::CNullDevice() -{ -} - -CNullDevice::~CNullDevice() -{ -} - -void CNullDevice::DebugHook() -{ -} - -void CNullDevice::DebugLights() -{ -} - -std::string CNullDevice::GetName() -{ - return std::string("Null Device"); -} - -bool CNullDevice::Create() -{ - return true; -} - -void CNullDevice::Destroy() -{ -} - -void CNullDevice::ConfigChanged(const DeviceConfig &newConfig) -{ -} - -void CNullDevice::BeginScene() -{ -} - -void CNullDevice::EndScene() -{ -} - -void CNullDevice::Clear() -{ -} - -void CNullDevice::SetRenderMode(RenderMode mode) -{ -} - -void CNullDevice::SetTransform(TransformType type, const Math::Matrix &matrix) -{ -} - -void CNullDevice::SetMaterial(const Material &material) -{ -} - -int CNullDevice::GetMaxLightCount() -{ - return 99; -} - -void CNullDevice::SetLight(int index, const Light &light) -{ -} - -void CNullDevice::SetLightEnabled(int index, bool enabled) -{ -} - -Texture CNullDevice::CreateTexture(CImage *image, const TextureCreateParams ¶ms) -{ - Texture tex; - tex.id = 1; // tex.id = 0 => invalid texture - return tex; -} - -Texture CNullDevice::CreateTexture(ImageData *data, const TextureCreateParams ¶ms) -{ - Texture tex; - tex.id = 1; // tex.id = 0 => invalid texture - return tex; -} - -Texture CNullDevice::CreateDepthTexture(int width, int height, int depth) -{ - Texture tex; - tex.id = 1; // tex.id = 0 => invalid texture - return tex; -} - -void CNullDevice::UpdateTexture(const Texture& texture, Math::IntPoint offset, ImageData* data, TexImgFormat format) -{ -} - -void CNullDevice::DestroyTexture(const Texture &texture) -{ -} - -void CNullDevice::DestroyAllTextures() -{ -} - -int CNullDevice::GetMaxTextureStageCount() -{ - return 0; -} - -void CNullDevice::SetTexture(int index, const Texture &texture) -{ -} - -void CNullDevice::SetTexture(int index, unsigned int textureId) -{ -} - -void CNullDevice::SetTextureEnabled(int index, bool enabled) -{ -} - -void CNullDevice::SetTextureStageParams(int index, const TextureStageParams ¶ms) -{ -} - -void CNullDevice::SetTextureStageWrap(int index, TexWrapMode wrapS, TexWrapMode wrapT) -{ -} - -void CNullDevice::DrawPrimitive(PrimitiveType type, const Vertex *vertices, int vertexCount, - Color color) -{ -} - -void CNullDevice::DrawPrimitive(PrimitiveType type, const VertexTex2 *vertices, int vertexCount, - Color color) -{ -} - -void CNullDevice::DrawPrimitive(PrimitiveType type, const VertexCol *vertices, int vertexCount) -{ -} - -void CNullDevice::DrawPrimitives(PrimitiveType type, const Vertex *vertices, - int first[], int count[], int drawCount, Color color) -{ -} - -void CNullDevice::DrawPrimitives(PrimitiveType type, const VertexTex2 *vertices, - int first[], int count[], int drawCount, Color color) -{ -} - -void CNullDevice::DrawPrimitives(PrimitiveType type, const VertexCol *vertices, - int first[], int count[], int drawCount) -{ -} - -unsigned int CNullDevice::CreateStaticBuffer(PrimitiveType primitiveType, const Vertex* vertices, int vertexCount) -{ - return 0; -} - -unsigned int CNullDevice::CreateStaticBuffer(PrimitiveType primitiveType, const VertexTex2* vertices, int vertexCount) -{ - return 0; -} - -unsigned int CNullDevice::CreateStaticBuffer(PrimitiveType primitiveType, const VertexCol* vertices, int vertexCount) -{ - return 0; -} - -void CNullDevice::UpdateStaticBuffer(unsigned int bufferId, PrimitiveType primitiveType, const Vertex* vertices, int vertexCount) -{ -} - -void CNullDevice::UpdateStaticBuffer(unsigned int bufferId, PrimitiveType primitiveType, const VertexTex2* vertices, int vertexCount) -{ -} - -void CNullDevice::UpdateStaticBuffer(unsigned int bufferId, PrimitiveType primitiveType, const VertexCol* vertices, int vertexCount) -{ -} - -void CNullDevice::DrawStaticBuffer(unsigned int bufferId) -{ -} - -void CNullDevice::DestroyStaticBuffer(unsigned int bufferId) -{ -} - -int CNullDevice::ComputeSphereVisibility(const Math::Vector ¢er, float radius) -{ - return 0; -} - -void CNullDevice::SetViewport(int x, int y, int width, int height) -{ -} - -void CNullDevice::SetRenderState(RenderState state, bool enabled) -{ -} - -void CNullDevice::SetColorMask(bool red, bool green, bool blue, bool alpha) -{ -} - -void CNullDevice::SetDepthTestFunc(CompFunc func) -{ -} - -void CNullDevice::SetDepthBias(float factor, float units) -{ -} - -void CNullDevice::SetAlphaTestFunc(CompFunc func, float refValue) -{ -} - -void CNullDevice::SetBlendFunc(BlendFunc srcBlend, BlendFunc dstBlend) -{ -} - -void CNullDevice::SetClearColor(const Color &color) -{ -} - -void CNullDevice::SetGlobalAmbient(const Color &color) -{ -} - -void CNullDevice::SetFogParams(FogMode mode, const Color &color, float start, float end, float density) -{ -} - -void CNullDevice::SetCullMode(CullMode mode) -{ -} - -void CNullDevice::SetShadeModel(ShadeModel model) -{ -} - -void CNullDevice::SetShadowColor(float value) -{ -} - -void CNullDevice::SetFillMode(FillMode mode) -{ -} - -void CNullDevice::CopyFramebufferToTexture(Texture& texture, int xOffset, int yOffset, int x, int y, int width, int height) -{ -} - -std::unique_ptr CNullDevice::GetFrameBufferPixels() const -{ - return nullptr; -} - -CFramebuffer* CNullDevice::GetFramebuffer(std::string name) -{ - return nullptr; -} - -CFramebuffer* CNullDevice::CreateFramebuffer(std::string name, const FramebufferParams& params) -{ - return nullptr; -} - -void CNullDevice::DeleteFramebuffer(std::string name) -{ -} - -bool CNullDevice::IsAnisotropySupported() -{ - return false; -} - -int CNullDevice::GetMaxAnisotropyLevel() -{ - return 1; -} - -int CNullDevice::GetMaxSamples() -{ - return 1; -} - -bool CNullDevice::IsShadowMappingSupported() -{ - return false; -} - -int CNullDevice::GetMaxTextureSize() -{ - return 0; -} - -bool CNullDevice::IsFramebufferSupported() -{ - return false; -} - -} // namespace Gfx diff --git a/src/graphics/core/nulldevice.h b/src/graphics/core/nulldevice.h deleted file mode 100644 index e071b14c..00000000 --- a/src/graphics/core/nulldevice.h +++ /dev/null @@ -1,159 +0,0 @@ -/* - * This file is part of the Colobot: Gold Edition source code - * Copyright (C) 2001-2021, Daniel Roux, EPSITEC SA & TerranovaTeam - * http://epsitec.ch; http://colobot.info; http://github.com/colobot - * - * This program is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. - * See the GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with this program. If not, see http://gnu.org/licenses - */ - -#pragma once - -#include "graphics/core/device.h" - -#include "graphics/core/light.h" -#include "graphics/core/material.h" - -#include "math/matrix.h" - -// Graphics module namespace -namespace Gfx -{ - -/** - * \class CNullDevice - * \brief Device implementation that doesn't render anything - */ -class CNullDevice : public CDevice -{ -public: - CNullDevice(); - virtual ~CNullDevice(); - - void DebugHook() override; - void DebugLights() override; - - std::string GetName() override; - - bool Create() override; - void Destroy() override; - - void ConfigChanged(const DeviceConfig &newConfig) override; - - void BeginScene() override; - void EndScene() override; - - void Clear() override; - - void SetRenderMode(RenderMode mode) override; - - void SetTransform(TransformType type, const Math::Matrix &matrix) override; - - void SetMaterial(const Material &material) override; - - int GetMaxLightCount() override; - void SetLight(int index, const Light &light) override; - void SetLightEnabled(int index, bool enabled) override; - - Texture CreateTexture(CImage *image, const TextureCreateParams ¶ms) override; - Texture CreateTexture(ImageData *data, const TextureCreateParams ¶ms) override; - Texture CreateDepthTexture(int width, int height, int depth) override; - void UpdateTexture(const Texture& texture, Math::IntPoint offset, ImageData* data, TexImgFormat format) override; - void DestroyTexture(const Texture &texture) override; - void DestroyAllTextures() override; - - int GetMaxTextureStageCount() override; - void SetTexture(int index, const Texture &texture) override; - void SetTexture(int index, unsigned int textureId) override; - void SetTextureEnabled(int index, bool enabled) override; - - void SetTextureStageParams(int index, const TextureStageParams ¶ms) override; - - void SetTextureStageWrap(int index, Gfx::TexWrapMode wrapS, Gfx::TexWrapMode wrapT) override; - - void DrawPrimitive(PrimitiveType type, const Vertex* vertices, int vertexCount, Color color = Color(1.0f, 1.0f, 1.0f, 1.0f)) override; - void DrawPrimitive(PrimitiveType type, const VertexTex2* vertices, int vertexCount, Color color = Color(1.0f, 1.0f, 1.0f, 1.0f)) override; - void DrawPrimitive(PrimitiveType type, const VertexCol *vertices, int vertexCount) override; - - void DrawPrimitives(PrimitiveType type, const Vertex *vertices, - int first[], int count[], int drawCount, - Color color = Color(1.0f, 1.0f, 1.0f, 1.0f)) override; - void DrawPrimitives(PrimitiveType type, const VertexTex2 *vertices, - int first[], int count[], int drawCount, - Color color = Color(1.0f, 1.0f, 1.0f, 1.0f)) override; - void DrawPrimitives(PrimitiveType type, const VertexCol *vertices, - int first[], int count[], int drawCount) override; - - unsigned int CreateStaticBuffer(PrimitiveType primitiveType, const Vertex* vertices, int vertexCount) override; - unsigned int CreateStaticBuffer(PrimitiveType primitiveType, const VertexTex2* vertices, int vertexCount) override; - unsigned int CreateStaticBuffer(PrimitiveType primitiveType, const VertexCol* vertices, int vertexCount) override; - void UpdateStaticBuffer(unsigned int bufferId, PrimitiveType primitiveType, const Vertex* vertices, int vertexCount) override; - void UpdateStaticBuffer(unsigned int bufferId, PrimitiveType primitiveType, const VertexTex2* vertices, int vertexCount) override; - void UpdateStaticBuffer(unsigned int bufferId, PrimitiveType primitiveType, const VertexCol* vertices, int vertexCount) override; - void DrawStaticBuffer(unsigned int bufferId) override; - void DestroyStaticBuffer(unsigned int bufferId) override; - - int ComputeSphereVisibility(const Math::Vector ¢er, float radius) override; - - void SetViewport(int x, int y, int width, int height) override; - - void SetRenderState(RenderState state, bool enabled) override; - - void SetColorMask(bool red, bool green, bool blue, bool alpha) override; - - void SetDepthTestFunc(CompFunc func) override; - - void SetDepthBias(float factor, float units) override; - - void SetAlphaTestFunc(CompFunc func, float refValue) override; - - void SetBlendFunc(BlendFunc srcBlend, BlendFunc dstBlend) override; - - void SetClearColor(const Color &color) override; - - void SetGlobalAmbient(const Color &color) override; - - void SetFogParams(FogMode mode, const Color &color, float start, float end, float density) override; - - void SetCullMode(CullMode mode) override; - - void SetShadeModel(ShadeModel model) override; - - void SetShadowColor(float value) override; - - void SetFillMode(FillMode mode) override; - - void CopyFramebufferToTexture(Texture& texture, int xOffset, int yOffset, int x, int y, int width, int height) override; - - std::unique_ptr GetFrameBufferPixels() const override; - - CFramebuffer* GetFramebuffer(std::string name) override; - - CFramebuffer* CreateFramebuffer(std::string name, const FramebufferParams& params) override; - - void DeleteFramebuffer(std::string name) override; - - bool IsAnisotropySupported() override; - int GetMaxAnisotropyLevel() override; - - int GetMaxSamples() override; - - bool IsShadowMappingSupported() override; - - int GetMaxTextureSize() override; - - bool IsFramebufferSupported() override; -}; - - -} // namespace Gfx