572 Commits

Author SHA1 Message Date
Jan
0cbf234faf Use string constants for material loading 2022-07-23 14:33:27 +02:00
Jan
92d808b7a4 Use constants for material sort key names 2022-07-23 13:05:37 +02:00
Jan
ea79e60856 Load material sortkeys v1 2022-07-23 12:22:59 +02:00
Jan
80a66a5d2c Finalize loaded material with textures 2022-07-15 11:25:38 +02:00
Jan
82349d3432 Material loading base 2022-07-15 11:21:54 +02:00
Jan
6ff86ae5e7 Set technique flags based on used constants, samplers and technique names 2022-04-16 22:51:38 +02:00
Jan
cb45bdaadc Progress on reversing technique flags 2022-04-16 15:41:45 +02:00
Jan
0ae5afc197 Set technique flags based on argument code samplers 2022-04-15 17:53:12 +02:00
Jan
15fd1ae686 Order shader args like the game does 2022-04-15 17:52:32 +02:00
Jan
9990338130 Handle custom samplers 2022-04-15 16:34:44 +02:00
Jan
65c9267b06 Correctly identify update frequencies for shader arguments 2022-04-15 16:01:39 +02:00
Jan
cd8e6cf96a Fix not being able to use StructuredDataDefSet assets from memory 2022-04-15 13:00:08 +02:00
Jan
12af03d77b Do not output errors when use menus from loaded assets 2022-04-15 12:54:37 +02:00
Jan
0f3d1d3488 Load shader from disk if they are only available as referenced assets to write techniques using them 2022-04-15 12:54:10 +02:00
Jan
7d80ff670d Convert technique passes 2022-04-14 20:11:51 +02:00
Jan
7f496ce478 Automatically handle unspecified shader arguments 2022-04-14 19:49:35 +02:00
Jan
3ba68eb2f4 Remember which vertex shader and pixel shader args have been handled already 2022-04-11 20:06:02 +02:00
Jan
99c7ebbe9b Load vertex decl asset 2022-04-10 19:39:26 +02:00
Jan
e0bcf7aff0 Load Vertex Stream Routing 2022-04-10 17:48:12 +02:00
Jan
bd291a75a9 Accept technique material arguments 2022-04-10 14:51:38 +02:00
Jan
516878698d Only accept sampler arguments for sampler shader arguments and constant argument for constant shader arguments 2022-04-10 13:58:08 +02:00
Jan
7d2ca46cb1 Dump known material argument hashes 2022-04-09 19:07:24 +02:00
Jan
13c5ea2986 Ignore shaders versions in technique files 2022-04-09 19:03:12 +02:00
Jan
bdb782a679 Fix issues with technique parser 2022-03-30 19:25:58 +02:00
Jan
4a52f3304e Fix asset loaders for vertex and pixel shader not using correct file name 2022-03-30 19:25:41 +02:00
Jan
a092f76ec9 Add option to not parse floating point numbers when using SimpleLexer 2022-03-30 19:07:54 +02:00
Jan
b5cd357014 WIP Technique loading 2022-03-30 18:38:50 +02:00
Jan
b770360ee1 Parse techniques 2022-03-27 21:10:33 +02:00
Jan
7c9805b4ba fix compilation issues 2022-03-27 16:28:25 +02:00
Jan
99d5caf1f2 Fix techset parsing naming issues 2022-03-27 16:21:06 +02:00
Jan
d8f490ec94 Base for technique loading 2022-03-27 16:17:50 +02:00
Jan
a47370613b Reuse previously loaded techniques 2022-03-27 16:17:36 +02:00
Jan
99f3f6fe0c Fix wrong techset reader dependency on structuredatadef 2022-03-27 16:16:41 +02:00
Jan
eb5312899f Parse techset files for IW4 2022-03-26 18:47:43 +01:00
Jan
d0e8e94561 Load vertex shader and pixel shader from raw 2022-03-25 18:35:22 +01:00
Jan
9009543c58 fix missing noexcept 2022-03-22 21:32:17 +01:00
Jan
e8ce4570ad Fix pipeline compilation 2022-03-22 17:12:43 +01:00
Jan
2e5405deb5 Fix counting padding for root struct even when root struct has no properties 2022-03-22 16:15:42 +01:00
Jan
8133f4d57e Fix accidentally setting size in bits value to a size in byte field when converting indexarray and enumedarray 2022-03-22 16:08:28 +01:00
Jan
f15e997f7b Fix not setting enum element count for enumedarrays when parsing 2022-03-22 16:07:43 +01:00
Jan
ab5a998903 Sort StructuredDataDef members and entries alphabetically after parsing 2022-03-22 15:09:07 +01:00
Jan
1b6f2ab9fa Calculate StructuredDataDef sizes and offsets 2022-03-22 15:08:42 +01:00
Jan
77420495f6 Add base for calculation sizes of structs for StructuredDataDef 2022-03-22 14:12:48 +01:00
Jan
c131c58bbe Replace references to undefined types after parsing entire StructuredDataDef 2022-03-22 12:34:21 +01:00
Jan
2fa1144425 Set remapped type for previously undefined types for StructuredDataDef 2022-03-22 12:14:30 +01:00
Jan
dc075847ff When parsing StructuredDataDefs accept undefined types 2022-03-22 12:03:15 +01:00
Jan
49c774b1e6 Parse checksumoverride for StructuredDataDef 2022-03-21 11:05:48 +01:00
Jan
93fea39ddd Move StructuredDataDef Parsing to new package 2022-03-21 10:30:54 +01:00
Jan
0a226652f2 Rename CommonStructuredDataStructEntry to Property 2022-03-20 17:40:12 +01:00
Jan
b2140260a4 Dump CommonStructuredDataDefSet instead of the game's internal structures 2022-03-19 23:39:50 +01:00