ladybird/Tests
Jelle Raaijmakers a20bf80b05 LibGL+LibGPU+LibSoftGPU: Implement point and line drawing
Implement (anti)aliased point drawing and anti-aliased line drawing.
Supported through LibGL's `GL_POINTS`, `GL_LINES`, `GL_LINE_LOOP` and
`GL_LINE_STRIP`.

In order to support this, `LibSoftGPU`s rasterization logic was
reworked. Now, any primitive can be drawn by invoking `rasterize()`
which takes care of the quad loop and fragment testing logic. Three
callbacks need to be passed:

* `set_coverage_mask`: the primitive needs to provide initial coverage
   mask information so fragments can be discarded early.
* `set_quad_depth`: fragments survived stencil testing, so depth values
  need to be set so depth testing can take place.
* `set_quad_attributes`: fragments survived depth testing, so fragment
  shading is going to take place. All attributes like color, tex coords
  and fog depth need to be set so alpha testing and eventually,
  fragment rasterization can take place.

As of this commit, there are four instantiations of this function:

* Triangle rasterization
* Points - aliased
* Points - anti-aliased
* Lines - anti-aliased

In order to standardize vertex processing for all primitive types,
things like vertex transformation, lighting and tex coord generation
are now taking place before clipping.
2022-05-09 21:49:48 +02:00
..
AK AK: Disable the HashTable<double> test until UB issue is fixed 2022-04-11 00:11:53 +02:00
Kernel Everywhere: Purge all support and usage of framebuffer devices 2022-05-05 20:55:57 +02:00
LibC Tests: Add a test for printf truncation 2022-04-14 03:12:56 +04:30
LibCompress Everywhere: Run clang-format 2022-04-01 21:24:45 +01:00
LibCore LibCore: Introduce SharedSingleProducerCircularQueue 2022-04-21 13:55:00 +02:00
LibCpp Everywhere: Run clang-format 2022-04-01 21:24:45 +01:00
LibCrypto LibCrypto: Add ChaCha20 2022-04-13 09:13:17 +04:30
LibEDID LibEDID: Fix handling extension maps 2022-01-24 19:29:06 +00:00
LibELF Userland+Tests: Convert File::read_link() from String to ErrorOr<String> 2022-03-24 11:57:51 +01:00
LibGfx LibGfx: Move other font-related files to LibGfx/Font/ 2022-04-09 23:48:18 +02:00
LibGL LibGL+LibGPU+LibSoftGPU: Implement point and line drawing 2022-05-09 21:49:48 +02:00
LibIMAP Everywhere: Run clang-format 2022-04-01 21:24:45 +01:00
LibJS LibJS: Remove implicit wrapping/unwrapping of completion records 2022-05-03 01:09:29 +02:00
LibM Everywhere: Run clang-format 2022-04-01 21:24:45 +01:00
LibMarkdown Everywhere: Move commonmark.spec.json to /home/anon/Tests 2022-03-20 22:20:59 +01:00
LibPDF LibPDF: Add implementation of the Standard security handler 2022-03-29 02:52:57 +02:00
LibPthread LibPthread: Add first test cases for RWlock 2021-09-28 18:36:20 +03:30
LibRegex LibRegex: Check inverse_matched after every op, not just at the end 2022-04-22 10:02:39 +02:00
LibSQL Everywhere: Run clang-format 2022-04-01 21:24:45 +01:00
LibTest LibTest: Add EXPECT_NO_CRASH 2021-12-19 14:22:06 -08:00
LibTextCodec Tests: Add a basic UTF-8 to UTF-8 LibTextCodec test 2022-03-29 01:01:32 +02:00
LibThreading Tests: Disable LibThreading detach tests for now 2021-10-06 19:21:35 +02:00
LibTimeZone Everywhere: Update copyrights with my new serenityos.org e-mail :^) 2022-01-31 18:23:22 +00:00
LibTLS LibTLS: Fix TestTLSHandshake by correctly reading the CA certificates 2022-04-17 10:10:19 +04:30
LibTTF LibGfx: Move TTF files from TrueTypeFont/ to Font/TrueType/ 2022-04-09 23:48:18 +02:00
LibUnicode Tests: Add Unicode tests for CharacterType block properties 2022-02-15 10:13:19 -05:00
LibWasm Everywhere: Run clang-format 2022-04-01 21:24:45 +01:00
LibWeb Tests: Remove test-web 2022-04-06 19:35:07 +02:00
Spreadsheet LibJS: Add infallible variant of VM::push_execution_context() 2022-03-18 01:12:12 +01:00
UserspaceEmulator Everywhere: Run clang-format 2022-04-01 21:24:45 +01:00
CMakeLists.txt Tests: Add a basic UTF-8 to UTF-8 LibTextCodec test 2022-03-29 01:01:32 +02:00