Thomas Harte
27e8a3a1b5
Obeys modals' zoom.
...
Subject to an attempt at factoring aspect ratio differences.
2020-08-16 21:11:43 -04:00
Thomas Harte
745797b596
Introduces a stencil buffer plus the inter-frame clearing it allows.
2020-08-16 16:42:32 -04:00
Thomas Harte
940e9e037e
Adds first_scan
to LineMetadata.
...
Also reorders `Line` fields to match `Scan` fields, just for visual consistency.
2020-08-16 08:59:37 -04:00
Thomas Harte
645c29f853
Adds an intermediate buffer to correct inter-frame smoothing.
...
Also goes someway back to the old scan output scheduling, albeit presently with limited thread safety.
2020-08-15 21:24:10 -04:00
Thomas Harte
27ca782cac
Enables blending; attempts to enable frame preservation.
...
The latter seems to be evidencing a double buffer at play. More investigation required.
On the plus side, the direct route is still well within GPU budget at 4k on my Core M. So a huge improvement there.
2020-08-12 19:34:07 -04:00
Thomas Harte
a136a00a2f
Takes a shot at adding RGB -> S-Video and composite conversion, for all RGB types.
2020-08-11 22:11:50 -04:00
Thomas Harte
4b55df1cb4
Starts upon a macro-oriented means of RGB input function generation.
2020-08-10 22:03:39 -04:00
Thomas Harte
8374a5e579
Adds superficially correct compositeSampleLuminance8Phase8
function.
...
Thereby uncovering a minor error in my decoding of colour phase.
2020-08-10 21:33:59 -04:00
Thomas Harte
525233e10b
Ensures all input data types are parseable in Metal.
...
Though now I need to think a bit more about the best way to compose signal-type conversions, and whether output-type calculations (i.e. gamma, brightness) are applied.
2020-08-10 19:47:47 -04:00
Thomas Harte
28d933d5d6
Does just enough to get 8-bit RGB and 1-bit luminance machines to display.
...
Assuming an 'RGB' output.
2020-08-09 21:19:07 -04:00
Thomas Harte
a118594c8b
Hacks to make RGB1 visible (in a fashion).
2020-08-09 20:45:51 -04:00
Thomas Harte
57fecdc09e
Ties everything together in an attempt to display RGB scans.
...
I'm actually just getting a mess of pixels, but it's something!
2020-08-09 18:41:15 -04:00
Thomas Harte
bdcf266e45
Having learnt a bit more: eliminates Metal attribute
tags, switches to more natural expression of structs.
...
Also thereby eliminates the need for a forced alignas(4) on various structs.
2020-08-08 17:27:32 -04:00
Thomas Harte
edf41b06fd
Eliminates the quad buffer.
...
Vertices can be adduced from vertex ID.
2020-08-08 17:12:49 -04:00
Thomas Harte
38960a08d6
Adds adjustment for display aspect ratio.
...
While also realising that I appear to be getting away without an MTLVertexDescriptor for Scans. Maybe OpenGL has prejudiced me, and they're actually optional for interleaved data?
2020-08-07 22:29:24 -04:00
Thomas Harte
fbda7aab23
Does just enough to get the correct (aspect ratio aside) output of scan outlines.
...
So, up next, can I start streaming these things?
2020-08-07 22:20:01 -04:00
Thomas Harte
4421acef34
Gets some uniforms in on the action.
...
With some effort towards scans, but incompletely so.
2020-08-07 21:19:17 -04:00
Thomas Harte
219923bd63
Reduces vertex size, draws a quad.
2020-08-05 21:33:25 -04:00
Thomas Harte
7551782a25
Switches to interleaved vertex data.
...
This more closely relates to what I actually want to do.
2020-08-05 17:27:43 -04:00
Thomas Harte
eff24a8726
My first baby steps in Metal continue; here's a triangle.
2020-08-04 21:49:01 -04:00