diff options
author | 2016-02-20 21:58:56 +0100 | |
---|---|---|
committer | 2016-02-20 21:58:56 +0100 | |
commit | e57c90084c5d1dd9f6cdb0bbbf8782dc4f369cda (patch) | |
tree | 650be9617f5dd57cce30eb78e283e15c149a0472 /src/osd/modules/render/d3d/d3dcomm.h | |
parent | d15d53c728b4848e3ed74d66b9ab446811e1acee (diff) |
Quality and Performance improvements
- HLSL now uses NPOT sized target surfaces (breaks compatibility with
graphics cards based on R300/R400/NV30 and older)
- HLSL target surfaces now have the size of the screen canvas
- removed HLSL pre-scale factor
- HLSL now uses a sharp bilinear interpolation to pre-scale textures to
screen canvas size, based on [Themaister's] implementation
- improved overall performance (based on the previously required
pre-scale factor, you might notice a 5-50% speed-up depending on your
graphics card, more if you used a higher pre-scale factor)
- improved shadow mask quality (pixel-perfect) in screen-mode
- fixed half source texel offset of bloom level alignment
- removed ./hlsl/artwork_support folder
- all shaders after pre-scale are now based on screen coordinate
(workaground, till both raster and vector pass can work on texture
coordinates)
- disabled distortion shader for more than one screen and for artworks
in full mode, does not affect artworks in copped mode (workaground, till
both raster and vector pass can work on texture coordinates)
- moved compute_texture_size() from texture_info to texture_manager (nw)
Diffstat (limited to 'src/osd/modules/render/d3d/d3dcomm.h')
-rw-r--r-- | src/osd/modules/render/d3d/d3dcomm.h | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/src/osd/modules/render/d3d/d3dcomm.h b/src/osd/modules/render/d3d/d3dcomm.h index 58a51eaf1cf..5f5a3f6794c 100644 --- a/src/osd/modules/render/d3d/d3dcomm.h +++ b/src/osd/modules/render/d3d/d3dcomm.h @@ -78,6 +78,8 @@ public: DWORD get_max_texture_width() { return m_texture_max_width; } DWORD get_max_texture_height() { return m_texture_max_height; } + void compute_texture_size(int texwidth, int texheight, int* p_width, int* p_height); + texture_info * get_default_texture() { return m_default_texture; } texture_info * get_vector_texture() { return m_vector_texture; } @@ -149,7 +151,6 @@ public: private: void prescale(); void compute_size(int texwidth, int texheight); - void compute_size_subroutine(int texwidth, int texheight, int* p_width, int* p_height); texture_manager * m_texture_manager; // texture manager pointer |