1072 Commits

Author SHA1 Message Date
Jan
7a89630a13 Dump technique flags 2022-04-15 17:52:56 +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
7a2fe6dc4f Differentiate between argument sets when dumping techniques to find the actual matching shader argument 2022-04-10 13:23:44 +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
8cc632f613 Move D3D9ShaderAnalyser to ObjCommon 2022-04-09 18:55:43 +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
1d798647c3 Fix not reading hex numbers with integer only lexing for SimpleLexer 2022-03-30 19:25:07 +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
2fda10f133 Find vertexdecl to dump if the one in the asset is a referenced asset 2022-03-25 18:57:01 +01:00
Jan
a825a9df38 Remove unused dumper for vertex decls 2022-03-25 18:41:38 +01:00
Jan
d0e8e94561 Load vertex shader and pixel shader from raw 2022-03-25 18:35:22 +01:00
Jan
90eaf9c4a9 If pixel or vertex shader is only referenced asset, attempt to load asset from GlobalAssetPools to be able to use a shader from a previously loaded zone 2022-03-25 14:46:09 +01:00
Jan
324dead2e3 Disable warning about unscoped enums 2022-03-25 14:13:13 +01:00
Jan
f9fad26ccc Handling of referenced shaders 2022-03-25 00:23:53 +01:00
Jan
b48fbb2b0e Dump material constants and samplers 2022-03-25 00:04:27 +01:00
Jan
a06229042f Dump material pass literal shader arguments 2022-03-24 23:54:24 +01:00
Jan
5fdde037a8 Dump code sampler for technique arguments 2022-03-24 23:42:10 +01:00
Jan
f386e82f89 Omit code constants that have the same source and dest accessor 2022-03-24 23:26:07 +01:00
Jan
ef936eba57 Dump IW4 techset code constant argument mappings 2022-03-24 23:04:35 +01:00
Jan
7760e1579c fix compilation errors 2022-03-24 21:18:07 +01:00
Jan
d62cbb2e96 Consider shader constants when dumping techset args 2022-03-24 21:14:05 +01:00
Jan
55ccbfca9e Add analyser for directx9 shaders to extract information about constants and other stuff 2022-03-24 18:58:30 +01:00
Jan
935e6ac060 Dump IW4 vertex and pixel shader binary data 2022-03-24 17:36:12 +01:00
Jan
5f44d95770 TODO IW4 Shader arg dumping 2022-03-23 18:22:23 +01:00
Jan
b0ed7e9544 Dump IW4 vertexdecl 2022-03-23 17:11:30 +01:00
Jan
8e76f05d05 Skeleton for IW4 MaterialTechnique dumping 2022-03-23 16:46:49 +01:00
Jan
25244bc3b0 Dump IW4 techset files 2022-03-23 14:42:17 +01:00
Jan
66b62611f3 Add basis for iw4 techset dumping 2022-03-23 13:45:01 +01:00