Lioncash
5e98cb139a
hecl/hecl: Convert std::string/std::wstring to views
...
Gets rid of two static constructors.
2019-08-24 15:23:57 -04:00
Lioncash
7088235bc4
hecl: Correct fmt formatting specifiers
...
These should be using {}-style formatting specifiers instead of printf
style. While we're at it, std::move the std::string instances where
applicable to potentially avoid reallocations.
2019-08-24 03:21:16 -04:00
Phillip Stephens
e12e0057c3
Minor compile fixes
2019-08-23 16:58:15 -07:00
Phillip Stephens
ff7e95546b
Merge pull request #16 from lioncash/string
...
hecl/Compilers: Amend minor string related code
2019-08-23 16:36:53 -07:00
Lioncash
2d7dd9bf5b
Connection: Collapse emplace_back(), back() pairs
...
emplace_back() already returns a reference to the constructed member, so
we don't need to query it via back() again.
2019-08-23 14:02:18 -04:00
Lioncash
cbcfdcb67a
Connection: Eliminate variable shadowing
...
Amends trivial cases of variable shadowing.
2019-08-23 13:56:11 -04:00
Lioncash
6492117d60
Connection: Remove <iostream> include
...
Avoids injecting a static constructor into translation units including
this source file, even if nothing in the source file uses the iostream
facilities.
Instead, we can replace this with an ostream include. While we're at it,
we can make sure we include everything necessary within the source file.
2019-08-23 13:44:30 -04:00
Lioncash
877ca7ad87
Connection: Make use of std::array where applicable
...
Uses std::array in place of C arrays where not used as a buffer.
2019-08-23 12:44:55 -04:00
Lioncash
a3caa28483
Connection: Collapse definition of operator== for Vert
...
This can be collapsed down to a single tie comparison
2019-08-23 12:32:13 -04:00
Lioncash
8fdd9a15c4
Connection: Collapse VertInBank into std::any_of
...
Same thing, single line.
2019-08-23 12:26:14 -04:00
Lioncash
5d30a9d7ea
Connection: Use nullptr instead of NULL where applicable
...
Same behavior, stronger typing.
2019-08-23 12:08:08 -04:00
Lioncash
2e16f882d2
hecl/Compilers: Make use of nullptr over NULL
...
Same behavior, stricter type.
2019-08-23 11:56:37 -04:00
Lioncash
d59d453db3
hecl/Compilers: Convert fprintf calls over to fmt::print
...
Makes the Metal code more consistent with the other compilers. While
we're at it we can also fix accidental printf leftovers within the
existing fmt format strings.
2019-08-23 11:53:39 -04:00
Lioncash
73cf8df409
hecl/Compilers: Convert printf call over to fmt::print
...
Same behavior, but properly handles the case where the given string_view
may not be null terminated.
2019-08-23 11:49:55 -04:00
Lioncash
3b60cee576
hecl/Compilers: Make name strings constexpr
...
Same behavior (as of C++17), without the need to duplicate the variable
name.
2019-08-23 11:42:12 -04:00
Phillip Stephens
e691b95cbf
Merge pull request #15 from lioncash/file
...
hecl/hecl: Introduce FopenUnique
2019-08-21 23:16:25 -07:00
Lioncash
fb9e4df372
hecl: Make use of FopenUnique
...
Makes use of the introduced API function to eliminate the need to
explicit fclose FILE* instances.
2019-08-22 01:16:48 -04:00
Lioncash
7bb3912d39
General: Make operator bool() explicit where applicable
...
Makes conversions to bool slightly less error-prone by requiring them to
be explicit in non-obvious contexts.
2019-08-22 01:15:38 -04:00
Phillip Stephens
120ed20bfa
Merge pull request #14 from lioncash/string
...
Connection: Replace std::string _writeStr overload with std::string_view
2019-08-21 20:23:56 -07:00
Phillip Stephens
3ef555dba4
Merge pull request #11 from lioncash/lock
...
General: Make use of lock deduction guides
2019-08-21 20:23:43 -07:00
Lioncash
d00cb36fc2
Connection: Amend clang-format discrepancies
2019-08-21 19:16:46 -04:00
Lioncash
ac4858b857
Connection: Replace usages of goto
2019-08-21 19:16:02 -04:00
Lioncash
5d157e97b3
General: Use override where applicable
2019-08-21 18:20:07 -04:00
Lioncash
82109b785d
General: Make use of lock deduction guides
...
Allows dehardcoding the type within the locks.
2019-08-21 17:01:03 -04:00
Phillip Stephens
bcfea9a09a
Merge pull request #10 from lioncash/cv
...
CVar: Remove redundant const return for toLiteral() and toWideLiteral()
2019-08-20 19:31:06 -07:00
Lioncash
b9e5417a94
CVar: Remove redundant const return for toLiteral() and toWideLiteral()
...
This can actually inhibit copy elision
2019-08-20 10:15:14 -04:00
Lioncash
645f20c308
CVarManager: Deduplicate repetitive names
...
We can just assign the repeated portion of the expression to a reference
instead of continually re-accessing the same variable, making it nicer
to read.
2019-08-20 06:29:17 -04:00
Lioncash
cfced1bf0a
CVarManager: Eliminate redundant map lookups
...
We can simply utilize the iterator of the previous existence check to
access the member instead of hashing through the map again.
2019-08-20 06:23:25 -04:00
Lioncash
4818198e41
CVarManager: Brace multi-line statements
...
Makes intentions explicit.
2019-08-20 06:10:23 -04:00
Lioncash
a16327df68
CVarManager: Use std::any_of for restartRequired()
...
Same thing, but more concise.
2019-08-20 06:08:12 -04:00
Lioncash
a1a18c6816
CVarManager: Use insert_or_assign where applicable
...
Avoids the need to create an initial entry in the map which is then
overwritten with the value being assigned to it.
2019-08-20 06:06:55 -04:00
Lioncash
64ac2e423e
hecl/FourCC: Make use of constexpr constructors where applicable
2019-08-15 06:48:38 -04:00
Jack Andersen
7b05b41d34
Windows build fixes
2019-07-27 15:19:48 -10:00
Jack Andersen
08d15514a9
Update submodules
2019-07-20 22:42:03 -10:00
Jack Andersen
6988f86672
Massive fmtlib refactor
2019-07-19 18:22:58 -10:00
Phillip Stephens
efa7463a9a
shaderc metal "error" fix
2019-07-01 01:26:42 -07:00
Jack Andersen
4fa1a2f3b7
Fixes for ANCS cooking
2019-06-14 14:37:53 -10:00
Jack Andersen
31caec79dd
Windows build fixes
2019-06-12 15:29:52 -10:00
Jack Andersen
387f8fa864
Blender Python API updates and better CMake dependency handling
2019-06-11 16:01:19 -10:00
Jack Andersen
7cc157c8b9
Support for per-stage shader hashing
2019-06-05 14:07:29 -10:00
Jack Andersen
f596cbff83
Windows fixes for refactor
2019-05-09 18:07:48 -10:00
Jack Andersen
92e2c03a01
Fix skin binding unordered_map use
2019-05-08 13:38:00 -10:00
Jack Andersen
5c59acddf2
Blender 2.8 refactor
2019-05-07 17:47:34 -10:00
Jack Andersen
8b1b674a7d
Ensure uninitialized data is not accessed in normal operation
2019-04-06 18:54:58 -10:00
Jack Andersen
2ab5c1436b
Add True and False tests for bitwise enums
2019-04-02 18:29:04 -10:00
Jack Andersen
72b14a78a0
Correct indirect texture sampling swizzle
2019-03-07 17:33:50 -10:00
Jack Andersen
927be4e839
Proper blending modes for handling alpha test
2019-03-02 20:17:41 -10:00
Jack Andersen
1f04f7ae12
Add closefrom call to RunProcess
2019-02-26 19:13:19 -10:00
Jack Andersen
6626557cc4
TexGen bug fix with diffuse-only pass
2019-02-26 18:50:13 -10:00
Jack Andersen
8e8ecaf4aa
Add fallback for diffuse expression
2019-02-24 22:10:34 -10:00
Jack Andersen
a9254f6643
Ensure pipes aren't duplicated between blender instances
2019-02-24 00:14:44 -10:00
Jack Andersen
470182de06
Support for diffuse texture identification in IR
2019-02-23 21:14:43 -10:00
Jack Andersen
fc40190933
Implicit switch fallthrough refactor
2019-02-17 19:44:46 -10:00
Jack Andersen
b6af26fa91
addColor term for standard shader model
2019-02-07 21:55:39 -10:00
Jack Andersen
d88c9cc21b
Debug mode for metal shaders
2019-02-03 15:38:14 -10:00
Jack Andersen
23a6d66a8c
Add -j argument for hecl cooking
2019-02-03 14:01:12 -10:00
Jack Andersen
f35285b076
Windows fixes
2019-01-28 22:25:51 -10:00
Phillip Stephens
7542cb9650
Minor fixes
2019-01-26 15:21:30 -08:00
Phillip Stephens
f776f89bee
Minor Console fixes
2018-12-09 21:12:10 -08:00
Jack Andersen
72193079ae
New code style refactor
2018-12-07 19:18:42 -10:00
Jack Andersen
54c466276b
SIMD refactor
2018-12-07 15:31:11 -10:00
Jack Andersen
1b073abb76
Change cheats CVar key
2018-11-23 22:08:44 -10:00
Jack Andersen
e2ec1f69a3
Vertex shaders do rigging computations in object space
2018-11-07 14:53:00 -10:00
Jack Andersen
344148e3b3
Add direct SDNA parser for blend files
2018-10-21 22:14:32 -10:00
Jack Andersen
a230eeb3b1
Macros for shader extensions to determine blend factors
2018-10-20 18:13:25 -10:00
Jack Andersen
3698199403
Reflection sampler fixes
2018-10-18 13:55:42 -10:00
Jack Andersen
d395f4a79e
macOS build fixes
2018-10-15 17:15:05 -10:00
Jack Andersen
61a50aa57e
Windows sync fixes for API changes
2018-10-14 10:09:15 -10:00
Jack Andersen
aef455e1ab
Attachment model support in blender addon
2018-10-11 10:48:13 -10:00
Jack Andersen
0ee18025dd
Huge shader infrastructure refactor
2018-10-06 16:53:57 -10:00
Jack Andersen
e16ef9709d
Update submodules
2018-09-02 14:45:32 -10:00
Jack Andersen
3f45710fb2
Fix cook tool crash
2018-06-15 16:26:30 -10:00
Phillip Stephens
61f744e15d
Defer values for unregistered CVars
2018-06-12 20:19:08 -07:00
Phillip Stephens
801214d9a8
Add support for string literals in Console::executeString, add implicit get/set for CVars
2018-06-12 19:03:29 -07:00
Jack Andersen
eff677ca20
Update boo
2018-06-11 15:16:00 -10:00
Jack Andersen
03cb7cf237
Ensure lighting extension is passed vec3
2018-06-06 18:36:46 -10:00
Jack Andersen
56a0661d33
Update boo
2018-06-01 14:02:20 -10:00
Jack Andersen
c11557bcff
Make SIGINT a bit cleaner for packaging
2018-05-25 17:07:04 -10:00
Jack Andersen
77f814192e
Windows build fixes
2018-05-24 20:34:58 -10:00
Jack Andersen
d0d330062f
Resource tracing and memory leak fixes
2018-05-19 20:12:32 -10:00
Jack Andersen
9c30a44a65
Fix see through collision material
2018-05-10 21:02:19 -10:00
Phillip Stephens
0aac384e60
Fix windows build
2018-05-01 17:41:51 -07:00
Phillip Stephens
eae0dbd2bb
Add ability to flag commands
2018-04-29 20:11:37 -07:00
Phillip Stephens
031c139e2d
Merge commit '13b41ab'
2018-04-26 14:11:49 -07:00
Phillip Stephens
694bc0a888
Add ability to unregister command on the fly
2018-04-26 14:10:32 -07:00
Jack Andersen
aa84d7c725
Add emissive cycles shaders
2018-04-14 20:04:08 -10:00
Jack Andersen
2c5a662fec
Add adjacent area lightmap cooking
2018-04-08 14:08:33 -10:00
Jack Andersen
396790181a
Minimized shader hash generation; more compatible MultiProgressPrinter
2018-04-07 10:52:35 -10:00
Jack Andersen
b54dedb22b
Minor cook fixes
2018-04-03 22:28:13 -10:00
Jack Andersen
94988eb9e5
GX shader cook fixes; Resource cook passes
2018-04-01 18:26:21 -10:00
Jack Andersen
c9f61eb9da
Fixes for GameCube targeting
2018-03-27 22:06:34 -10:00
Jack Andersen
d1a66e15d4
Add parallel progress printing
2018-03-23 11:40:12 -10:00
Jack Andersen
f2d6f643c9
PATH cooking bug fix
2018-02-26 00:38:50 -10:00
Jack Andersen
3acb9c9e3d
Initial PATH cooking support
2018-02-24 22:23:00 -10:00
Jack Andersen
2f6d9d2509
Minor macro adjustment
2018-02-23 20:33:01 -10:00
Jack Andersen
06797cd9fc
Add PATH .blend file type
2018-02-23 20:15:12 -10:00
Jack Andersen
3eedbd3c3b
Template-based DNA refactor
2018-02-21 21:23:15 -10:00
Jack Andersen
7a60440d58
Add shader mode for constant alpha overwrite
2018-02-04 20:54:35 -10:00
Jack Andersen
1b861eaa61
Non-clobbering YAML serialize operation
2018-01-22 18:40:09 -10:00
Phillip Stephens
2f840e5321
Merge commit 'f47d7d9'
2018-01-21 18:41:17 -08:00
Phillip Stephens
24abe43865
Restore old CVar system
2018-01-21 18:40:11 -08:00
Jack Andersen
f546400cc1
Update boo
2018-01-21 12:03:48 -10:00
Jack Andersen
ac29a724ba
Deep color CVar and GLSL backend bug fixes
2018-01-15 20:30:37 -10:00
Phillip Stephens
8cef2f5192
Add ability to enable developer mode in-code
2018-01-15 05:18:03 -08:00
Phillip Stephens
5c66ffc5df
Refactor CVar class
2018-01-15 04:34:02 -08:00
Phillip Stephens
4543e2a87e
Merge commit 'c46f861'
2018-01-13 23:38:17 -08:00
Phillip Stephens
52c14848d9
Various minor fixes
2018-01-13 23:37:00 -08:00
Jack Andersen
7a815e2962
Add missing <sstream> include
2018-01-13 20:40:42 -10:00
Phillip Stephens
f777d034f2
Implement core Console behavior and CVarManager commands
2018-01-13 18:39:32 -08:00
Phillip Stephens
7f6913e046
Fix linux build, initial logvisor integration into Console
2018-01-11 08:26:33 -08:00
Phillip Stephens
24ee3fa21e
Windows build fix
2018-01-11 04:38:35 -08:00
Phillip Stephens
e247733d04
Initial `Console` implementation
2018-01-11 01:36:00 -08:00
Jack Andersen
2d0f079991
Add CVarCommons; hecl-light library
2018-01-09 20:16:18 -10:00
Jack Andersen
b3ca5b1e1e
Changes to support MSAA rendering
2018-01-06 19:17:45 -10:00
Jack Andersen
308af03115
Disable cotire unity build
2017-12-31 16:53:17 -10:00
Jack Andersen
9daa74e08e
Windows PCH fixes
2017-12-29 15:07:15 -10:00
Jack Andersen
aae0dc56b7
Huge compile performance refactor
2017-12-28 21:56:31 -10:00
Phillip Stephens
0e4310903d
Update boo; Add initial GUI mode support
2017-12-15 18:13:20 -08:00
Jack Andersen
758c602dc5
Add ASan build capability
2017-12-11 16:05:28 -10:00
Jack Andersen
93711460f8
More flexible cull-mode options for shader extensions
2017-12-09 19:29:23 -10:00
Jack Andersen
a60a02a31e
Add flip flag for collision triangles
2017-12-08 19:15:26 -10:00
Jack Andersen
79f0336588
UWP fixes
2017-12-06 18:09:27 -10:00
Jack Andersen
559096feeb
UWP support
2017-12-05 17:22:31 -10:00
Jack Andersen
d4ce1d4913
ProjectPath bug fixes
2017-12-01 19:49:45 -10:00
Jack Andersen
1987a6e3d3
Implement asprintf for Windows
2017-11-24 16:49:50 -10:00
Jack Andersen
b382188a5c
Remove debugging changes
2017-11-21 00:22:36 -10:00
Jack Andersen
ddf7c983da
Major refactor of hecl parser using @hackyourlife architecture
2017-11-20 23:33:28 -10:00
Jack Andersen
b41b21cb4b
Windows fixes
2017-11-13 17:34:05 -10:00
Jack Andersen
4111d49d64
string_view refactor
2017-11-12 20:13:53 -10:00
Jack Andersen
b9490877a4
Iterator fix
2017-11-06 22:05:40 -10:00
Jack Andersen
a3b9a32633
Remaining object tracker platforms
2017-11-05 20:56:17 -10:00
Jack Andersen
d2fda8a373
Changes to support new boo object tracker API
2017-11-04 20:15:03 -10:00
Jack Andersen
3e18e519ce
Windows fixes
2017-10-29 21:29:07 -10:00
Jack Andersen
a2c5d891b5
Various bug fixes
2017-10-27 00:10:08 -10:00
Jack Andersen
5e99ee1d95
Minor improvements
2017-10-25 19:37:15 -10:00
Jack Andersen
b7208bfc5f
Implement `hecl package`
2017-10-24 21:46:32 -10:00
Jack Andersen
a5b7a7b96c
Windows fixes
2017-10-23 17:11:44 -10:00
Jack Andersen
48ec4cf6eb
Various bug fixes
2017-10-21 20:10:59 -10:00
Jack Andersen
ebad51dc2e
Add DCLN blend type
2017-10-16 19:51:13 -10:00
Jack Andersen
7c3bac2951
Add perspective division to texture matrix processing
2017-09-30 18:25:49 -10:00
Phillip Stephens
cc8415b4f6
update boo
2017-09-10 01:08:52 -07:00
Jack Andersen
2674989a4a
Generate pool skin index for CPU-based skinning operations
2017-08-20 19:46:26 -10:00
Jack Andersen
6d997e4ffa
NULL path bug fix
2017-08-17 17:18:52 -10:00
Jack Andersen
f761810e8c
Other platforms for SteamFinder
2017-07-23 13:44:17 -10:00
Jack Andersen
14277fa386
Add Steam app finder, fix missing blender cube bug
2017-07-22 23:20:28 -10:00
Jack Andersen
d8ed2fd157
Isolate hecl::SystemChar in single header
2017-06-10 08:22:40 -10:00
Phillip Stephens
c72ee72f6f
Conform other platforms
2017-05-29 01:18:54 -07:00
Phillip Stephens
145c152012
Fix GLSL reflection shader compile errors.
2017-05-28 23:00:17 -07:00
Jack Andersen
8bfac09158
Add map visibility mode property
2017-04-18 13:38:23 -10:00
Jack Andersen
21e2a26e36
HLSL reflection fix
2017-03-26 08:21:01 -10:00