Commit Graph

3535 Commits (e839f0dec7d7e13fd8abdddf0c28e955cc32b698)

Author SHA1 Message Date
Tomasz Kapuściński e839f0dec7 Extended Material structure with PBR material attributes and added some of them to object renderer
Moved PBR lighting calculations to a separate shader source file
Removed some unused stuff
2022-02-26 01:16:36 +01:00
Tomasz Kapuściński 3168bf4350 Small cleanup 2022-02-25 21:07:01 +01:00
Tomasz Kapuściński 6447304531 Added nlohmann-json library to dependencies 2022-02-25 20:41:45 +01:00
Tomasz Kapuściński c378009128 Feature-breaking refactors
* Partially filled Material structure, currently only base attributes
* Removed recoloring of textures and team variants
* Removed one base object tier in engine structures
* Removed EngineRenderState
* Rewritten some code to better coding style
2022-02-13 00:03:46 +01:00
Tomasz Kapuściński 0d612b9928 Optimized text rendering 2022-02-05 21:07:25 +01:00
Tomasz Kapuściński aacc2d0596 Moved non-CRenderer-specific functionality back to CDevice and refactored some of the state change methods
Rewritten control rendering code to use improved way of sending geometry to GPU memory
2022-02-05 19:07:46 +01:00
Tomasz Kapuściński 074706e7ec Removed Vertex and VertexCol structures 2022-02-04 01:22:27 +01:00
Tomasz Kapuściński 1631b9587f Removed all DrawPrimitive*() methods from CDevice 2022-02-04 01:06:37 +01:00
Tomasz Kapuściński 750a470b9a Minor color refactors, added DrawPrimitives, rewritten remaining effect rendering 2022-02-04 01:00:18 +01:00
Tomasz Kapuściński 37bdc8665f Removed remaining rendering code from CGL33Device and fixed some issues 2022-02-03 20:53:53 +01:00
Tomasz Kapuściński cbf661f69f Disabled tests for light manager as it needs future refactoring 2022-02-03 19:35:30 +01:00
Tomasz Kapuściński d16144eee4 Added missing include and removed debugging calls 2022-02-03 18:55:46 +01:00
Tomasz Kapuściński 1a190b7f6f Partial refactor of UI rendering to improve performance and fix transparency issues
Disabled rendering via CDevice
2022-02-03 18:40:58 +01:00
Tomasz Kapuściński 0908e10ff6 Removed material, lighting, fog and shadowing code from CDevice 2022-02-02 19:09:38 +01:00
Tomasz Kapuściński 7d9badb542 Added UV transform and rewritten animated texture mapping code to use it 2022-02-02 18:13:21 +01:00
Tomasz Kapuściński 3bd4fee844 Merge branch 'dev' into dev-graphics-overhaul
# Conflicts:
#	src/graphics/engine/camera.cpp
#	src/object/auto/autonuclearplant.cpp
#	src/object/auto/autopowerplant.cpp
#	src/object/interface/powered_object.h
#	src/object/motion/motionvehicle.cpp
#	src/object/old_object.cpp
#	src/object/old_object.h
#	src/object/task/taskmanip.cpp
#	src/object/task/taskmanip.h
#	src/object/task/tasktake.cpp
2022-02-02 18:11:06 +01:00
Emxx52 85dc3f68e7
Merge pull request #1497 from colobot/dev-fix-recharging
Fix assert fail after PR#1444
2022-01-30 21:21:16 +01:00
tomangelo2 eff8e885d5 Fix assert fail after PR#1444 2022-01-30 20:40:04 +01:00
tomangelo cbc07c04a5
Merge pull request #1444 from immibis/slotted-object
Slotted object interface
2022-01-29 17:20:36 +01:00
tomangelo2 0003494c9e Merge PR #1444 2022-01-29 17:16:57 +01:00
Tomasz Kapuściński 741d5c75ba Refactored shadow framebuffer creation and binding 2022-01-24 23:16:22 +01:00
Tomasz Kapuściński 2ff722eee6 Refactored or removed some of the unused CDevice features 2022-01-24 22:29:39 +01:00
Tomasz Kapuściński 39b6621463 Renamed transparency to ghost mode 2022-01-24 21:57:56 +01:00
Tomasz Kapuściński 9a07c1d858 Refactored background, cloud and planet rendering, fixed shadow settings 2022-01-24 21:50:45 +01:00
Tomasz Kapuściński e76c00c7f4 Fixed the Z coordinate not working in particle renderer 2022-01-22 01:50:10 +01:00
Tomasz Kapuściński cba70fc912 Added DrawPrimitive() to CObjectRenderer and used it for rendering water 2022-01-22 00:57:00 +01:00
Tomasz Kapuściński 048393f448 Added CParticleRenderer and reimplemented particle rendering code to use it 2022-01-20 21:38:58 +01:00
Tomasz Kapuściński 710f448477 Partially fixed rendering of models in front of the interface (e.g. profile screen) 2022-01-19 23:14:03 +01:00
Tomasz Kapuściński 367dab9c5a Cleanup in vertex structures 2022-01-19 22:22:59 +01:00
Tomasz Kapuściński c280924c0e Removed Gfx::VertexTex2 2022-01-19 21:33:53 +01:00
Tomasz Kapuściński 5dacb82b22 Partial refactor of model I/O
* Mostly removed legacy Gfx::Material usage
* Bake legacy diffuse color to vertex color
* Removed code that writes to old model formats
2022-01-19 19:46:39 +01:00
Tomasz Kapuściński a54a59146d Corrected transparency mode 2022-01-19 17:14:27 +01:00
Tomasz Kapuściński a1ea633a3e Refactored EngineTextureMapping into enum class 2022-01-18 20:14:07 +01:00
Tomasz Kapuściński 68a222e03a Refactored EngineShadowType to enum class 2022-01-18 19:42:19 +01:00
Tomasz Kapuściński 67bd982969 Refactored EngineTriangleType into enum class 2022-01-18 19:29:36 +01:00
Tomasz Kapuściński d9073de251 Removed unnecessary tests and include 2022-01-05 21:08:28 +01:00
Tomasz Kapuściński 754684bfe9 Refactored MatrixVectorMultiply(), added TransformDivide() for cases where perspective divide is needed 2022-01-05 19:22:57 +01:00
Tomasz Kapuściński 9c37f6cbd5 Fully refactored Math::Matrix, removed matrix.h and moved remaining functions to other files 2022-01-05 19:12:35 +01:00
Tomasz Kapuściński 208f142cd2 Made Math::Matrix an alias to glm::mat4, partial refactors 2022-01-05 00:35:41 +01:00
Tomasz Kapuściński e5d8e2b428 Fixed compilation error 2022-01-04 21:45:10 +01:00
Tomasz Kapuściński 0bba168f94 Removed vector.h, refactored redundant functions and moved remaining ones to func.h 2022-01-04 20:43:36 +01:00
Tomasz Kapuściński db3b1d74d1 Refactored unnecessary Normalize, DotProduct, CrossProduct and Clamp functions 2022-01-04 02:10:36 +01:00
Tomasz Kapuściński 50fe905455 Removed Math::Vector alias and refactored remaining uses of it 2022-01-04 01:39:55 +01:00
Tomasz Kapuściński d5e8cfd4ba Refactored Math::Vector to glm::vec3 in object task classes 2022-01-04 01:18:46 +01:00
Tomasz Kapuściński ffe1815ec9 Refactored Math::Vector to glm::vec3 in object motion classes 2022-01-04 01:05:24 +01:00
Tomasz Kapuściński 2690d04f64 Refactored Math::Vector to glm::vec3 in object interface and object subclass classes 2022-01-04 00:52:07 +01:00
Tomasz Kapuściński 3707daf678 Refactored Math::Vector in object implementations 2022-01-04 00:16:59 +01:00
Tomasz Kapuściński 076dce6981 Refactored Math::Vector in CScriptFunctions 2022-01-04 00:11:20 +01:00
Tomasz Kapuściński d6d74f200b Refactored Math::Vector in convert_model tool 2022-01-04 00:03:57 +01:00
Tomasz Kapuściński 1a7ffa693b Refactored Math::Vector in remaining UI classes 2022-01-04 00:01:54 +01:00