summaryrefslogtreecommitdiffstats
path: root/src/video_core/surface.cpp (unfollow)
Commit message (Collapse)AuthorFilesLines
2022-11-29video_core/surface: Eliminate casts in GetFormatType()Lioncash1-11/+4
We can just compare directly and get rid of verbose casting.
2022-11-24GPU: Implement additional render target formats.Fernando Sahmkow1-1/+9
2022-11-24Fermi2D: Implement Bilinear software filtering and address feedback.Fernando Sahmkow1-0/+2
2022-10-07Update 3D regsKelebek11-7/+7
2022-10-06Texture Cache: Add ASTC 10x5 Format.Fernando Sahmkow1-0/+3
2022-07-27chore: make yuzu REUSE compliantAndrea Pappacoda1-3/+2
[REUSE] is a specification that aims at making file copyright information consistent, so that it can be both human and machine readable. It basically requires that all files have a header containing copyright and licensing information. When this isn't possible, like when dealing with binary assets, generated files or embedded third-party dependencies, it is permitted to insert copyright information in the `.reuse/dep5` file. Oh, and it also requires that all the licenses used in the project are present in the `LICENSES` folder, that's why the diff is so huge. This can be done automatically with `reuse download --all`. The `reuse` tool also contains a handy subcommand that analyzes the project and tells whether or not the project is (still) compliant, `reuse lint`. Following REUSE has a few advantages over the current approach: - Copyright information is easy to access for users / downstream - Files like `dist/license.md` do not need to exist anymore, as `.reuse/dep5` is used instead - `reuse lint` makes it easy to ensure that copyright information of files like binary assets / images is always accurate and up to date To add copyright information of files that didn't have it I looked up who committed what and when, for each file. As yuzu contributors do not have to sign a CLA or similar I couldn't assume that copyright ownership was of the "yuzu Emulator Project", so I used the name and/or email of the commit author instead. [REUSE]: https://reuse.software Follow-up to 01cf05bc75b1e47beb08937439f3ed9339e7b254
2022-07-06renderer_(gl/vk): Implement ASTC_10x6_UNORMMorph1-0/+1
- Used by Monster Hunter Rise Update 10.0.2
2022-06-14common: Change semantics of UNREACHABLE to unconditionally crashLiam1-3/+3
2022-03-25hle: nvflinger: Migrate android namespace -> Service::android.bunnei1-4/+4
2022-03-25hle: nvflinger: Move PixelFormat to its own header.bunnei1-4/+4
2021-11-17video_core: Add S8_UINT stencil formatMorph1-0/+7
2021-11-16Vulkan Rasterizer: Fix clears on integer textures.FernandoS271-0/+47
2021-11-16vk_texture_cache: Use nearest neighbor scaling when availableameerj1-0/+27
2021-06-16Reaper: Address Feedback.Fernando Sahmkow1-0/+7
2020-12-30video_core: Rewrite the texture cacheReinUsesLisp1-1/+1
The current texture cache has several points that hurt maintainability and performance. It's easy to break unrelated parts of the cache when doing minor changes. The cache can easily forget valuable information about the cached textures by CPU writes or simply by its normal usage.The current texture cache has several points that hurt maintainability and performance. It's easy to break unrelated parts of the cache when doing minor changes. The cache can easily forget valuable information about the cached textures by CPU writes or simply by its normal usage. This commit aims to address those issues.
2020-12-07video_core: Remove unnecessary enum class casting in logging messagesLioncash1-6/+6
fmt now automatically prints the numeric value of an enum class member by default, so we don't need to use casts any more. Reduces the line noise a bit.
2020-07-13video_core: Rearrange pixel format namesReinUsesLisp1-114/+114
Normalizes pixel format names to match Vulkan names. Previous to this commit pixel formats had no convention, leading to confusion and potential bugs.
2020-07-13video_core: Fix DXT4 and RGB565ReinUsesLisp1-21/+0
2020-07-13video_core: Fix B5G6R5_UNORM render target formatReinUsesLisp1-1/+1
2020-07-13video_core: Implement RGBA32_SINT render targetReinUsesLisp1-0/+2
2020-07-13video_core: Implement RGBA32_SINT render targetReinUsesLisp1-0/+2
2020-07-13video_core: Implement RGBA16_SINT render targetReinUsesLisp1-0/+2
2020-07-13video_core: Implement RGBA8_SINT render targetReinUsesLisp1-0/+2
2020-07-13video_core: Implement RG32_SINT render targetReinUsesLisp1-0/+2
2020-07-13video_core: Implement RG8_SINT render target and fix RG8_UINTReinUsesLisp1-0/+2
2020-07-13video_core: Implement R8_SINT render targetReinUsesLisp1-0/+2
2020-07-13video_core: Implement R8_SNORM render targetReinUsesLisp1-0/+2
2020-07-13video_core/surface: Reorder render target to pixel format switchReinUsesLisp1-53/+51
2020-04-30texture: Implement R8G8UIMorph1-0/+2
- Used by The Walking Dead: The Final Season
2020-03-13video_core: Implement RGBA16_SNORMReinUsesLisp1-0/+2
Implement RGBA16_SNORM with the current API. Nothing special here.
2020-02-25video_core/surface: Add R32_SINT render target formatReinUsesLisp1-0/+2
2019-11-15texture_cache: Use a table instead of switch for texture formatsReinUsesLisp1-236/+0
Use a large flat array to look up texture formats. This allows us to properly implement formats with different component types. It should also be faster.
2019-11-14texture_cache: Drop abstracted ComponentTypeReinUsesLisp1-85/+0
Abstracted ComponentType was not being used in a meaningful way. This commit drops its usage. There is one place where it was being used to test compatibility between two cached surfaces, but this one is implied in the pixel format. Removing the component type test doesn't change the behaviour.
2019-11-14correct the implementation of RGBA16UIgreggameplayer1-0/+2
2019-10-27Video_Core: Implement texture format E5B9G9R9_SHAREDEXP.Fernando Sahmkow1-0/+8
This commit implements the E5B9G9R9 Texture format into the general system and OpenGL backend.
2019-10-16video_core/surface: Add missing break in PixelFormatFromTextureFormat()Lioncash1-0/+1
Prevents fallthrough into the following case.
2019-10-09Surfaces: Implement R4G4B4A4U format.Fernando Sahmkow1-0/+8
2019-10-09Surfaces: Implement ASTC 6x6 10x10 12x12 8x6 6x5Fernando Sahmkow1-0/+25
2019-09-22video_core: Implement RGBX16F PixelFormatFearlessTobi1-0/+3
2019-09-13video_core/surface: Add function to detect sRGB surfacesReinUsesLisp1-0/+20
This is required for proper conversion to RGBA8_UNORM or RGBA8_SRGB surfaces when a backend can target both native and converted ASTC.
2019-08-21renderer_opengl: Implement RGB565 framebuffer formatReinUsesLisp1-2/+3
2019-06-21surface: Correct format S8Z24Fernando Sahmkow1-2/+2
2019-06-21gl_rasterizer_cache: Use texture buffers to emulate texture buffersReinUsesLisp1-1/+3
2019-06-21maxwell_3d: Partially implement texture buffers as 1D texturesReinUsesLisp1-0/+2
2019-04-18video_core: Silent -Wswitch warningsReinUsesLisp1-35/+51
2019-04-09Implement Texture Format ZF32_X24S8.Fernando Sahmkow1-0/+2
2019-03-05video_core/surface: Remove obsolete TODO in PixelFormatFromRenderTargetFormat()Lioncash1-2/+0
This isn't needed anymore, according to Hexagon
2019-02-09Implement BGRA8 framebuffer formatgreggameplayer1-0/+2
2019-01-30gl_shader_cache: Fix texture view for cubemaps as cubemap arraysReinUsesLisp1-0/+18
Cubemaps are considered layered and to create a texture view the texture mustn't be a layered texture, resulting in cubemaps being bound as cubemap arrays. To fix this issue this commit introduces an extra surface parameter called "is_array" and uses this to query for texture view creation. Now that texture views for cubemaps are actually being created, this also fixes the number of layers created for the texture view (since they have to be 6 to create a texture view of cubemaps).
2018-12-28gpu: Remove PixelFormat G8R8U and G8R8S, as they do not seem to exist.bunnei1-2/+5
- Fixes UI rendering issues in The Legend of Zelda: Breath of the Wild.
2018-12-19Fixed uninitialized memory due to missing returns in canaryDavid Marcec1-0/+7
Functions which are suppose to crash on non canary builds usually don't return anything which lead to uninitialized memory being used.
2018-11-13Implement ASTC_2D_10X8 & ASTC_2D_10X8_SRGB (#1666)greggameplayer1-0/+4
* Implement ASTC_2D_10X8 & ASTC_2D_10X8_SRGB ( needed by Mario+Rabbids Kingdom Battle ) * Small placement correction
2018-11-02Fix ASTC Decompressor to support depth parameterFernandoS271-21/+5
2018-11-01Implement Cube ArraysFernandoS271-0/+3
2018-10-30video_core: Move surface declarations out of gl_rasterizer_cacheReinUsesLisp1-0/+499