Commit Graph

3930 Commits

Author SHA1 Message Date
Isaac Marovitz e2445990a5 Fix some shader gen problems… 2024-12-23 21:16:52 -06:00
Isaac Marovitz dc4305f1cf Formatting 2024-12-23 21:16:48 -06:00
Isaac Marovitz b7a0aefa80 Make TypeConversion failure an error 2024-12-23 21:16:42 -06:00
Isaac Marovitz 7a99143a8a Fix MSL Reinterpret Casts 2024-12-23 21:16:39 -06:00
Isaac Marovitz 89d1caf30f Dont set Vertex Attributes for now 2024-12-23 21:16:35 -06:00
Isaac Marovitz de7b3e7dac Remove capture code 2024-12-23 21:16:31 -06:00
Isaac Marovitz 94e15aa662 Bind Textures & Samplers 2024-12-23 21:16:27 -06:00
Isaac Marovitz b157a8e549 Revise ISampler 2024-12-23 21:16:20 -06:00
Isaac Marovitz 6685041545 Try again 2024-12-23 21:16:15 -06:00
Isaac Marovitz b8630b5c45 Resolve warning 2024-12-23 21:16:12 -06:00
Isaac Marovitz c0da3d68ca Formatting 2024-12-23 21:16:07 -06:00
Isaac Marovitz 76bafe75f4 FIx build 2024-12-23 21:15:56 -06:00
Isaac Marovitz 3c562d8906 Fix some rebase errors 2024-12-23 21:15:36 -06:00
Isaac Marovitz df0dc4454b End Pass on Dispose 2024-12-23 21:15:33 -06:00
Isaac Marovitz 26ea1e6d37 Don’t change Render State if Vertex Function is Invalid 2024-12-23 21:15:26 -06:00
Isaac Marovitz e8d0212ec6 “Report” Driver 2024-12-23 21:15:18 -06:00
Isaac Marovitz e7197877a2 Adjust function signature 2024-12-23 21:15:14 -06:00
Isaac Marovitz dff9046f55 Get it building again 2024-12-23 21:15:07 -06:00
Isaac Marovitz cb36036faa Render Targets 2024-12-23 21:15:01 -06:00
Isaac Marovitz c4cf4895d8 format 2024-12-23 21:14:55 -06:00
Isaac Marovitz b6116da940 Formatting 2024-12-23 21:14:50 -06:00
Isaac Marovitz fbcd9994c8 smh 2024-12-23 21:14:18 -06:00
Isaac Marovitz 5d90932277 Dont specify [[stage_in]] on fragment 2024-12-23 21:14:06 -06:00
Isaac Marovitz 037157135e If one shader fails, whole program fails 2024-12-23 21:12:41 -06:00
Isaac Marovitz d45c7711ba Fix fragment shaders (and fuck everything up) 2024-12-23 21:09:35 -06:00
Isaac Marovitz b3629e3a8b Vertex buffer data 2024-12-23 21:09:25 -06:00
Isaac Marovitz c216028d00 Dont be stupid 2024-12-23 21:09:18 -06:00
Isaac Marovitz 02fbcfbadb Dont set 0 attributes 2024-12-23 21:09:07 -06:00
Isaac Marovitz a5c1b6a255 Reset Descriptor instead of making a new object 2024-12-23 21:09:00 -06:00
Isaac Marovitz be1d099879 Set Vertex Descriptor properly 2024-12-23 21:08:54 -06:00
Isaac Marovitz 3529fcd592 Start vertex descriptor work 2024-12-23 21:08:44 -06:00
Isaac Marovitz 3398977c97 Implement CreateProgram 2024-12-23 21:08:35 -06:00
Isaac Marovitz fe62c794b9 Fix fragment output color 2024-12-23 21:08:21 -06:00
Isaac Marovitz 2e3509f8e8 Set TargetLanguage for Metal to MSL 2024-12-23 21:08:06 -06:00
Isaac Marovitz d65858be25 Fix IoMap variable names
Output struct

Lazy Vertex IO

Output fixes

Fix output struct definition

MSL Binding Model description

Might need tweaks/adjustments

Cleanup

Typo + Format
2024-12-23 21:07:58 -06:00
Isaac Marovitz 2a28950739 Fix ETC2 PTA formats
Format
2024-12-23 21:07:52 -06:00
Isaac Marovitz 4587905cd8 Partial TextureQuerySamples 2024-12-23 21:07:07 -06:00
Isaac Marovitz 9cc56a3bca Fix instructions 2024-12-23 21:06:58 -06:00
Isaac Marovitz b06afd1a1f LDR ASTC 2024-12-23 21:06:52 -06:00
Isaac Marovitz 7182ac7233 Get build working again (values likely wrong) 2024-12-23 21:06:45 -06:00
Isaac Marovitz 398b6cb60e dotnet format 2024-12-23 21:06:31 -06:00
Isaac Marovitz c5522e3694 Back to where we were
First special instruction

Start Load/Store implementation

Start TextureSample

Sample progress

I/O Load/Store Progress

Rest of load/store

TODO: Currently, the generator still assumes the GLSL style of I/O attributres. On MSL, the vertex function should output a struct which contains a float4 with the required position attribute.

TextureSize and VectorExtract

Fix UserDefined IO Vars

Fix stage input struct names
2024-12-23 21:05:34 -06:00
Isaac Marovitz a3da70edc2 Boot TOTK 2024-12-23 21:05:28 -06:00
Evan Husted 14999a1d51 Merge branch 'master' into new-metal 2024-12-23 21:04:54 -06:00
Isaac Marovitz 94e699eeba Boot Sonic Mania 2024-12-23 21:01:19 -06:00
Isaac Marovitz b1785c0b14 Update for new Shader IR format 2024-12-23 21:01:10 -06:00
Isaac Marovitz 84c90f8895 Update src/Ryujinx.Graphics.Metal/Pipeline.cs
Co-authored-by: gdkchan <gab.dark.100@gmail.com>
2024-12-23 21:00:54 -06:00
Isaac Marovitz dc4d3078ef Vertex Input Attributes 2024-12-23 21:00:45 -06:00
Isaac Marovitz 4b5c3d7fc6 More Shader Gen Stuff
Mostly copied from GLSL since in terms of syntax within blocks they’re pretty similar. Likely the result will need tweaking…

Isn’t that conveniant?

“Do the simd_shuffle”

atomics

Remaining instructions

Remove removed special instructions

Getting somewhere…
2024-12-23 21:00:23 -06:00
Isaac Marovitz 5a802a550b Fix Metal Validation Error 2024-12-23 21:00:16 -06:00