Commit Graph

3750 Commits (fde2b901bdfad7143d4d7fd5dd284cf443e0d5bd)

Author SHA1 Message Date
Tomasz Kapuściński 640cde1653 Various improvements and fixes
* Added strength parameter for ambient occlusion
* Added proper support for material and emissive textures
* Added team-based recoloring, uses "team" tag
* Changed shadow ranges to make close-up shadows much better
* Fixed background coloring
* Added proper defaulting for glTF values
* Fixed parsing of emissive values
* Added normalization of normals in vertex shaders of object and terrain renderers
2022-04-07 01:11:23 +02:00
Tomasz Kapuściński 4b1b1763df Removed extensions from model filenames to let the game load alternatives when available 2022-03-12 23:34:46 +01:00
Tomasz Kapuściński 829c5fb42f Added support for glTF 2.0 model format 2022-03-12 23:31:32 +01:00
Tomasz Kapuściński fd3c2af358 A proper fix? 2022-03-11 23:33:21 +01:00
Tomasz Kapuściński 5c2c52ad31 Fix for missing <filesystem>? 2022-03-11 23:16:50 +01:00
Tomasz Kapuściński aa3efd5841 Simplified model I/O, uses filename extensions to figure out format 2022-03-11 22:40:50 +01:00
Tomasz Kapuściński 920a4c3fc8 Split model I/O to separate files based on model format and removed new binary format 2022-03-11 21:06:40 +01:00
Tomasz Kapuściński d57370578f Disabled convert_model tool 2022-03-11 20:48:55 +01:00
Tomasz Kapuściński 4a16ee76a1 Partially refactored model and mesh structures 2022-03-11 19:49:03 +01:00
Tomasz Kapuściński 7af32caec2 Changed path type from std::string to std::filesystem::path in CInputStream, CInputStreamBuffer, COutputStream and COutputStreamBuffer 2022-03-11 17:46:24 +01:00
Tomasz Kapuściński 2d9db9c90a Refactored lighting in terrain renderer and rewritten drawing terrain to include all PBR properties 2022-03-09 20:47:44 +01:00
Tomasz Kapuściński d7a22bf74c Removed explicit from Color constructor 2022-03-09 17:08:51 +01:00
Tomasz Kapuściński 1a7346b845 A couple of fixes for rendering states 2022-03-09 16:59:23 +01:00
Tomasz Kapuściński 8c40b7c753 Force buffer orphaning to fix initial buffer binding 2022-03-09 16:56:03 +01:00
Rasmus Brönnegård fdc1792932 Let space() find points on the spaceship 2022-03-07 00:02:08 +01:00
Rasmus Brönnegård 483a855848 Add DistanceSquared to vector.h 2022-03-07 00:00:19 +01:00
tomangelo 4541db7f21
Merge pull request #1498 from rasmusgo/dev-loadgame-arg
Load game from command line
2022-03-06 23:05:04 +01:00
tomangelo 86d8ee4c38
Merge pull request #1496 from rasmusgo/fix-spelling
Fix spelling
2022-03-04 16:28:32 +01:00
MrSimbax 73db861cc6 Update data submodule 2022-03-01 17:35:57 +01:00
tomangelo 061ef44def
Merge pull request #1499 from rasmusgo/dev-better-goto
Better goto
2022-02-28 22:16:37 +01:00
Tomasz Kapuściński dffb988798 Added checkout submodule for docs 2022-02-26 22:32:00 +01:00
Tomasz Kapuściński d09c5da493 Checkout json submodule 2022-02-26 21:47:22 +01:00
Tomasz Kapuściński c011e49112 Another fix 2022-02-26 21:42:09 +01:00
Tomasz Kapuściński 628567701a Added nlohmann json as submodule 2022-02-26 21:12:40 +01:00
Tomasz Kapuściński 38990e283b Another fix 2022-02-26 20:04:13 +01:00
Tomasz Kapuściński fa5e229015 Fixed forward declaration of enums 2022-02-26 19:44:49 +01:00
Tomasz Kapuściński 05163c09a1 Fix for dependencies 2022-02-26 19:04:04 +01:00
Tomasz Kapuściński 8533be8d5c Replaced MakeUnique and MakeUniqueArray with std::make_unique 2022-02-26 18:48:51 +01:00
Tomasz Kapuściński 89551c83cf Merge branch 'dev' into dev-graphics-overhaul
# Conflicts:
#	src/graphics/engine/text.cpp
#	src/graphics/engine/text.h
#	src/script/scriptfunc.cpp
2022-02-26 04:43:56 +01:00
Tomasz Kapuściński 3001927576 Removed engine.h from includes in header files, replaced by forward declarations and includes in source files 2022-02-26 03:53:39 +01:00
Tomasz Kapuściński baa616050a Some refactors to reduce extensive recompilation cascades
Renamed AlphaMode::OPAQUE to AlphaMode::NONE due to clash with preprocessor define
Moved Gfx::EngineTriangle to a separate file
2022-02-26 02:39:13 +01:00
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
Mateusz Przybył 6aebf60300
Merge pull request #1487 from pestoffne/fix/editor-input-utf8
Fixed input of long UTF-8 symbols in editor (#1423)
2022-02-25 17:09:27 +01:00
Rasmus Brönnegård 0829cd84fe goto: Remove unused BEAM_ACCURACY 2022-02-17 23:58:32 +01:00
Rasmus Brönnegård 8af600692e goto: Reduce NB_ITER back to 200 2022-02-17 23:40:07 +01:00
Rasmus Brönnegård 3478ee322b goto: Find a more exact end of path wrt goalRadius
The last segment of the path is shortened to avoid going too close
and risk bumping into the object that it was meant to approach.

The same position could also be found by finding the roots of a second
order polynomial analytically but this solution is simple and sufficient.
2022-02-15 22:46:30 +01:00
Evgeny Pestov 550d0f915b Use std::out_of_range in Utf8CharSizeAt 2022-02-14 18:33:41 +07:00
Evgeny Pestov d9e26c2516 Use std::invalid_argument in Utf8CharSizeAt 2022-02-14 18:23:44 +07:00
Evgeny Pestov 4bce63e38d Use 0b instead of 0x and check 1-byte prefix first in Utf8CharSizeAt
1-byte symbols is more common then 4-bytes symbols.
So checking 1-byte prefix first is more efficient.
2022-02-14 18:09:08 +07:00
Evgeny Pestov ec8a09e4a9 Merge commit '3405c03' into fix/editor-input-utf8 2022-02-14 17:57:30 +07:00
Evgeny Pestov 05b68a4b80 Refactor: Create function isUtf8ContinuationByte 2022-02-14 17:56:34 +07: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
Rasmus Brönnegård 2d794d1a32 goto: Handle oversized costs with a special bucket
This is a bit redundant because the current usage of goto
does not trigger it. It can be triggered by:
* increasing goalRadius
* decreasing NUMQUEUEBUCKETS
* decreasing BM_DIM_STEP
* increasing edge costs
2022-02-12 23:35:58 +01:00
Rasmus Brönnegård e38835cfd4 goto with A-star (with bucket queue) 2022-02-12 23:35:58 +01:00
tomangelo2 e3ba1a1840 Fix compilation errors on MacOS 2022-02-10 19:46:50 +01:00
tomangelo2 08f6c32551 Update Homebrew installation command 2022-02-09 20:43:35 +01:00
Rasmus Brönnegård 2b8d580355 goto with Dial's algo (Dijkstra's + bucket sort) 2022-02-08 21:14:17 +01:00
Rasmus Brönnegård ee390bc270 LoadFinishedLevels if needed in LoadScene 2022-02-08 20:02:56 +01:00