Commit Graph

3255 Commits

Author SHA1 Message Date
Matteo De Carlo 092bb536bd fixed some warnings and potential bugs
- added extra useful warnings
- added a virtual deconstructor when necessary
- cleaned up and added default to different switch blocks (should have zero impact on performance)
- cleaned and made faster `ComboBox::RemoveItem(int index)`
2022-08-23 17:16:45 +02:00
Turánszki János 1ba4014fc0 Collider editor (#527) 2022-08-23 13:13:00 +02:00
Turánszki János fe81c80b04 Softbody and rigidbody windows separated (#526) 2022-08-22 23:42:49 +02:00
Turánszki János a0a8c0c3fd Appveyor Removal (#524) 2022-08-22 19:02:32 +02:00
Turánszki János 817453a0cd script component update order fix 2022-08-22 18:25:26 +02:00
Matteo De Carlo e6e2bb176b Compiler warnings fixes (part 1) (#523)
* COMPILER WARNINGS: remove unused variables

* stricter linux compiler options and define fixes

* const char* for string constants

* Always initialize struct EventArgs with some valid values

and another possible use of initialized variable

* revert library change
2022-08-22 18:21:13 +02:00
Turánszki János bd41a54b3b Script Component (#521) 2022-08-22 13:53:59 +02:00
Turánszki János 12e410d893 Paint tool stabilizer, continuous stroke, multiselect (#519)
- continuous stroke
- stabilizer
- multiselect
- smoothness improvement
2022-08-21 17:13:43 +02:00
Turánszki János b5104b48a9 combobox ivalid-selection text 2022-08-21 10:13:09 +02:00
Matteo De Carlo fdc052b9f9 Fixing broken hashmaps on linux
Fixes #414

The issue is caused by Linux (and possibly other platforms) implementing the hash function as an identify function for data smaller than 64bit (including `int`).

Fixing only the TerrainGenerator is possible, but the issue could be generated again elsewhere and it would be quite difficult to identify and debug.

Therefore the proposed solution is to replace the `wi::unordered_map` on Linux with another implementation which is still quite fast and does account for the issue of the identify hash function.
The library is https://github.com/martinus/robin-hood-hashing (MIT License)

robin_hood.h:768
```
// return mixed of that, to be safe against identity hash
```
2022-08-20 23:02:41 +02:00
Turánszki János 64babc8fcd Config file support (#517) 2022-08-20 18:32:16 +02:00
Turánszki János f5f8e2f2fe Material outline property (#516) 2022-08-19 11:07:02 +02:00
Turánszki János 9cc6566e0a Editor updates (#515)
* renderer and postprocess windows combined into graphics window

* graphics window layout resize

* camera resizelayout, replace unordered map in terraingenerator for linux

* material userdata

* graphics window update
2022-08-19 08:43:10 +02:00
Turánszki János 96a78c089b updated grid helper colors 2022-08-18 13:41:31 +02:00
Turánszki János e91548fc3d ddgi serialization fix: don't create/download textures when data is empty 2022-08-18 12:15:13 +02:00
Turánszki János 084a1b1f1f DDGI updates (#514)
DDGI updates:
- allow 0 raycount to keep static DDGI
- DDGI serialization for saving and loading with scene
- grid dimensions configurable
- refactors
2022-08-18 11:50:09 +02:00
Turánszki János 1c3b874a44 VRM springbone and collider import (#513) 2022-08-17 16:09:31 +02:00
Turánszki János a374ede363 component library fix: serializer version also propagated on write 2022-08-17 11:54:51 +02:00
Megumumpkin 8aeed3e17f Add ComponentLibrary and Component Interfaces (#511)
* Add ComponentLibrary and Component Interfaces

* Component Interface removal

* ComponentLibrary Fat Trimming

* ComponentLibrary Fixes

* ComponentLibrary Fixes

* Add versioning in ComponentLibrary

* ComponentLibrary fixes

* Tidying up ComponentLibrary

* removed version arrays because they were unused;
changed componentVersion check to libraryVersion >= componentVersion;
and some refactors

* we also tell how many component managers were serialized

* Make Serializing Dynamic

I've added a function in wiArchive for retrieving the DATA array
directly. Used to serialize dynamically the archive by choosing to read
datablock or not. Integer hash from string will be used to determine
the existence of the component on the engine's scene or not.

* Make Serialization Dynamic

* archive can jump over unregistered component data; component versioning; refactors;

* component version will be jumped over too

Co-authored-by: Turánszki János <turanszkij@users.noreply.github.com>
2022-08-17 11:13:13 +02:00
Turánszki János 99b704d8c7 spring addition will be ordered to match hierarchy 2022-08-15 18:59:47 +02:00
Turánszki János c7da8a9dd3 added light shaft strength parameter 2022-08-15 15:20:43 +02:00
Turánszki János 20e1989630 GLTF sparse accessor, VRM model import 2022-08-15 14:14:09 +02:00
Matteo De Carlo 56e33b52f4 Engine optionally compiled as a dynamic library (#508)
use `-DWICKED_DYNAMIC_LIBRARY=ON` to compile as a dynamic library
disabled by default
2022-08-15 13:28:53 +02:00
Turánszki János bebe54efc6 Light animation support (#509) 2022-08-14 22:46:54 +02:00
Turánszki János 5345e4ba4f inverse kinematics stability improvement, editor bone size tweaks, default weather gradient 2022-08-13 13:02:03 +02:00
Turánszki János c7fc48abbb gui: global check text, editor: ik and spring bone coloring 2022-08-13 10:39:20 +02:00
Turánszki János f55e6f79fc editor: animation loop closing 2022-08-12 19:45:19 +02:00
Turánszki János 9747b59f5e animation stop fix 2022-08-12 19:20:42 +02:00
Turánszki János 56e2fe3845 editor: animation editing 2022-08-12 18:41:38 +02:00
Turánszki János af465d77a4 editor: animation sampling mode 2022-08-12 10:36:25 +02:00
Turánszki János c31024f5b1 animation and gui fixes 2022-08-12 09:29:05 +02:00
Turánszki János 4a5aa60b09 fix: vrs classification didn't request velocity buffer 2022-08-11 18:21:43 +02:00
Turánszki János 440ad123aa added capsule-ray intersect functions; editor bone picking; 2022-08-11 09:43:43 +02:00
Dennis Brakhane 2f7a6ea44c Replace Arial with "Liberation Sans" (#504)
The Arial license does not allow redistribution, so this commit replaces
it with the metrically compatible "Liberation Sans" font.
2022-08-11 08:06:31 +02:00
Turánszki János 0ee0098924 paint tool: axis locking, brush shape, brush rotation 2022-08-10 10:46:18 +02:00
Turánszki János bb1f66ee58 editor: terrain generator stackable modifiers 2022-08-09 18:49:18 +02:00
Turánszki János ce7ec070fb editor: paint tool brush visualizer improvement 2022-08-08 20:55:32 +02:00
Turánszki János 30584135b3 tests linux fix 2022-08-08 12:57:12 +02:00
Turánszki János 1f6160f56f font renderer: sdf rendering can be disabled, 2x upscaling by default 2022-08-08 12:46:01 +02:00
Turánszki János e741efea62 Image renderer improvements (#502)
* image renderer preparation for custom vertex buffer

* getcurrentrenderpass no longer needed

* corner rounding implementation

* treelist shadow fix

* image renderer border soften parameter
2022-08-08 00:08:54 +02:00
Turánszki János f155d08141 updated credits 2022-08-07 22:55:22 +02:00
Megumumpkin da6a2e53ba New Lua Scripting (#501)
* New Lua Scripting System

* Update Scripts

* Small fix on wiLua Globals

* Add One More Note To The New Demo

* -path fix
-renamed new_script_demo.lua to script_tracking.lua
-refactors
-version bump to 0.71.0

* removed GetScriptPath()

Co-authored-by: Turánszki János <turanszkij@users.noreply.github.com>
2022-08-07 18:26:28 +07:00
Turánszki János a18810bfcb gui: text input field selection highlight 2022-08-06 19:40:50 +02:00
Turánszki János 09f70458d4 text input improvements 2022-08-02 11:36:15 +02:00
Turánszki János 90fbbba9ba Text Input Caret (#500) 2022-08-01 18:25:15 +02:00
Turánszki János cd16ece14a gui scrollbar fix 2022-08-01 12:49:27 +02:00
Turánszki János 1b305b74c8 updated credits 2022-08-01 12:44:45 +02:00
Turánszki János a0ad653d7d GUI ResizeLayout (#495)
* gui resizelayout #51

* checkbox icons

* updates

* weather reset

* embedded logo asset
v0.70.18
2022-07-31 19:28:41 +02:00
Turánszki János 6376373353 Material picker (#494) 2022-07-30 17:56:36 +02:00
Turánszki János 1a9bec3708 editor: updated dark theme 2022-07-30 11:49:29 +02:00