Commit Graph

11 Commits

Author SHA1 Message Date
8e1adb95cf Add support for HLE macros and accelerate MultiDrawElementsIndirectCount #2 (#2557)
* Add support for HLE macros and accelerate MultiDrawElementsIndirectCount

* Add missing barrier

* Fix index buffer count

* Add support check for each macro hle before use

* Add missing xml doc

Co-authored-by: gdkchan <gab.dark.100@gmail.com>
2021-08-26 23:50:28 +02:00
6c76bc3bc0 Change disabled vertex attribute value to (0, 0, 0, 1) (#2573)
This seems to be the default value when the vertex attribute is disabled, or components aren't defined.

This fixes a regression from #2307 in SMO where a plant in the Wooded Kingdom would draw slightly differently in the depth prepass, leading to depth test failing later on.

GDK has stated that the specific case in Gundam only expects x and y to be 0, and Vulkan's undefined value for z does appear to be 0 when a vertex attribute type does not have that component, hence the value (0, 0, 0, 1).

This worked in Vulkan despite also providing an all 0s attribute due to the vertex attribute binding being R32Float, so the other values were undefined. It should be changed there separately.
2021-08-20 18:09:30 -03:00
3fd6b55f04 Fix value of constant vertex attributes (#2307) 2021-05-24 17:38:38 +10:00
caf049ed15 Avoid some redundant GL calls (#1958) 2021-01-27 08:44:07 +11:00
c9841dab38 Fix vertex buffer handle null check (#1638) 2020-10-26 01:40:50 +01:00
5011640b30 Spanify Graphics Abstraction Layer (#1226)
* Spanify Graphics Abstraction Layer

* Be explicit about BufferHandle size
2020-05-23 11:46:09 +02:00
9948a7be53 Support constant attributes (with a value of zero) (#1066)
* Support constant attributes (with a value of zero)

* Remove extra line
2020-03-30 13:11:24 +11:00
59fdaa744b GPU resource disposal 2020-01-09 02:13:00 +01:00
654e617fe7 Some code cleanup 2020-01-09 02:13:00 +01:00
af8498d679 Add basic error logging to the GPU 2020-01-09 02:13:00 +01:00
gdk
1876b346fe Initial work 2020-01-09 02:13:00 +01:00