summaryrefslogtreecommitdiffstatshomepage
path: root/src/osd/modules/render/drawd3d.cpp
Commit message (Collapse)AuthorAgeFilesLines
* Cleanup and version bumpmame0175 Miodrag Milanovic2016-06-291-11/+11
|
* Fixed crash of D3D when sliders menu is openend and resizing the window or ↵ ImJezze2016-06-201-141/+204
| | | | switching between window and full screen mode
* Add WINAPI to other needed functions for stdcall calling convention on 32-bit Brad Hughes2016-06-151-1/+1
|
* Introduce dynamic_module Giuseppe Gorgoglione2016-06-111-290/+286
| | | | | This is a central cross-platform facility to dynamically bind functions from shared libraries. Updated all OSD modules to use it.
* Procedural texture for vectors in HLSL ImJezze2016-06-051-97/+103
| | | | | | * added simple procedural texture for vectors with rounded line ends and beam smoothness * added optional -vector_beam_smooth option * removed -antialias option, antialiasing is now always applied, except for plain D3D
* Cleanup vector batch in D3D (nw) ImJezze2016-05-291-19/+18
|
* Removed dead D3D code (nw) ImJezze2016-05-291-173/+46
| | | | | | | - removed not functional vector texture code - removed unused D3DTOP_MODULATE2X/4X code - removed unused antialiasing code for UI lines - removed usage of vector_time_period which does not exist anymore
* Revert partial fix for border style issue (nw) ImJezze2016-05-241-2/+2
| | | | - reverted from commit f911dfc and a6ccd3b, because it wasted up to 10 percent of the performance in fullscreen mode (actual fix for MT-06209 is not harmed)
* Moved extension of vector lines to where it belongs (nw) ImJezze2016-05-221-2/+2
|
* Fixed half pixel offset of vectors in D3D ImJezze2016-05-171-0/+2
| | | | - appearance should be identical to GDI and BGFX
* Small changes to creation of render targest in HLSL (nw) ImJezze2016-05-161-3/+6
| | | | | - removed unessesary recreations of non-screen-quad texture targets - removed creation of cached targets for non-screen-quad texture
* Fixed several HLSL problems when running machines without screen (nw) ImJezze2016-05-161-2/+6
|
* Fixed MT 06209 (part 3) ImJezze2016-05-151-1/+1
| | | | - fixed switchres option
* Fixed MT 06209 (part 2) ImJezze2016-05-151-2/+2
| | | | - the D3D device is now always created with presentation parameters where Windowed = true, which actually does not make sense
* Fixed MT 06209 ImJezze2016-05-141-1/+0
| | | | - when deleting the D3D device, it was reset before with outdate presentation information
* leftovers from mt (nw) Miodrag Milanovic2016-05-061-8/+0
|
* Equalized options of HLSL and BGFX HLSL chain ImJezze2016-05-051-9/+5
| | | | | - removed POT texture size from shadow mask in HLSL, U/V size is now simply the percentage of the actual texture size - adjusted display names of options
* Revert "Temp revert of Brad changes (nw)" Miodrag Milanovic2016-04-251-51/+83
| | | | This reverts commit 5e831f6506ee06f8c30cb113551ee0fec53804db.
* Temp revert of Brad changes (nw) Miodrag Milanovic2016-04-251-83/+51
|
* Refactor OSD window. Brad Hughes2016-04-211-51/+83
| | | | | | | | | | Unified renderer in osd_window as std::unique_ptr Made windows all std::shared_ptr<window_type> Made window lists std::list<std::shared_ptr<window_type>> Updated OSD SDL worker_param to not use malloc (not compatible with smart pointers) Made renderer pointer to window a weak reference. May not be available during destruction of the window.
* Implemented handling for u_screen_scale and u_screen_offset (nw) ImJezze2016-04-211-1/+1
|
* Standardize platform window pointer storage in osd_window. Brad Hughes2016-04-181-6/+6
| | | | Also encapsulate show/hide capture/release cursor functionality.
* Removed hacks for vector screens from shaders (nw) ImJezze2016-04-131-13/+82
| | | | | - added handling of texture coordinates for vector screens to core render - added handling of orientation/rotation for vector screens to D3D renderer
* Make sliders use an std::vector instead of a linked list, nw therealmogminer@gmail.com2016-04-101-4/+10
|
* Removed empty header file (nw) Miodrag Milanovic2016-04-031-1/+0
|
* fix compile on windows (nw) Miodrag Milanovic2016-03-311-4/+4
|
* Iterate over core classes C++11 style AJR2016-03-311-63/+63
| | | | | | | | C++11 range-based for loops can now iterate over simple_list, tagged_list, core_options, device_t::subdevice_list, device_t::interface_list, render_primitive_list and all subclasses of the above, and much code has been refactored to use them. Most core classes that have these lists as members now have methods that return the lists themselves, replacing most of the methods that returned the object at an owned list's head. (A few have been retained due to their use in drivers or OSD.) device_t now manages subdevice and interface lists through subclasses, but has given up the work of adding and removing subdevices to machine_config. memory_manager has its tagged lists exposed, though the old rooted tag lookup methods have been removed (they were privatized already).
* Refactored Bloom ImJezze2016-03-281-4/+4
| | | | | | | - reduced raster bloom level to 8 - extended vector bloom level to 15 - changed vector bloom to be less blocky - removed bloom_lvl9_weight and bloom_lvl10_weight options
* Merge remote-tracking branch 'refs/remotes/mamedev/master' Antonio Giner2016-03-181-77/+146
|\
| * Refactoring of render targes and vector texture coordinates ImJezze2016-03-121-104/+126
| | | | | | | | | | | | | | | | - implemented proper texture coordinates for vector quad primitive - vector screen is now processed in texture coordinates - revered workaround for raster screen, which is again processed in texture coordinates - known issue: cocktail mode for vector screen looks wrong
| * Cleanup primary.fx ImJezze2016-02-281-10/+18
| | | | | | | | | | | | | | | | | | - split into primary.fx into 3 techniques for vector buffer, screen and UI pass - moved register_texture() for shaders outside of texture_info creation - added render_primitive parameter to register_texture(); currently unused - removed other unused register_texture() definition
| * Bloom refactoring ImJezze2016-02-251-10/+20
| | | | | | | | | | | | | | - calculation of bloom dimensions is now done only once, when render target is created - reduced blur width for non-vector screens - implemented shadow u/v option for source tile mode
| * Merge pull request #13 from mamedev/master ImJezze2016-02-221-3/+6
| |\ | | | | | | Sync to base master
| * \ Merge remote-tracking branch 'refs/remotes/mamedev/master' ImJezze2016-02-211-217/+185
| |\ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Resolved Conflicts: - src/osd/modules/render/d3d/d3dhlsl.cpp - src/osd/modules/render/d3d/d3dhlsl.h - src/osd/modules/render/drawd3d.cpp - src/osd/modules/render/drawd3d.h - src/osd/windows/winmain.cpp
| * | | Quality and Performance improvements ImJezze2016-02-201-119/+148
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | - 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)
* | | | Implement integer scaling in core renderer [Calamity] Antonio Giner2016-03-151-1/+1
| |_|/ |/| |
* | | Fix D3D and BGFX fullscreen toggle issues, nw therealmogminer@gmail.com2016-02-221-3/+6
| |/ |/|
* | Final fixups, get sliders working again, nw therealmogminer@gmail.com2016-02-211-3/+8
| |
* | First take on render API reorg, nw therealmogminer@gmail.com2016-02-211-213/+176
|/
* Merge pull request #587 from ImJezze/pull Miodrag Milanović2016-01-271-33/+0
|\ | | | | HLSL: NTSC and color convergence refactoring
| * Refactoring ImJezze2015-12-311-33/+0
| | | | | | | | | | | | | | | | | | | | | | | | - replaced shader parameters OrientationSwapXY xor RotationSwapXY by SwapXY - made shader parameters SourceDims, SourceRect, TargetDims, ScreenDims, QuadDims and SwapXY available for all shaders - color convolution, defocus and phosphor pass will now be skipped if all influencing parameters are 0 - removed unused bloom_texture and bloom_target arrays from cache_target class - fixed half texel offset in prescale.fx
* | removed memory tracking (nw) Miodrag Milanovic2016-01-081-2/+2
|/
* macro removal INLINE -> static inline (nw) Miodrag Milanovic2015-12-121-9/+9
|
* Cleanups and version bumpmame0168 Miodrag Milanovic2015-11-251-2/+2
|
* Fixed missing shadow mask ImJezze2015-11-201-21/+27
| | | | | - fixed missing shadow mask texture when switching between window mode and full screen
* Cleanup ImJezze2015-11-181-0/+1
| | | | | | | | - fixed not used HLSL settings from <custom>.ini if MAME was started without driver parameter - removed default values from HLSL sliders, the defaults here are more like null values to hint when an effect would be disable - slightly changed default HLSL settings
* Fixed dynamic beam width for invariabel vector intensity ImJezze2015-11-181-2/+1
| | | | | - the vector renderer now tries to detect a invariabel vector intensity and disables the calculation of a dynamic beam width
* Changed screen adjustment for HLSL ImJezze2015-11-171-0/+5
| | | | | | | | - screen adjustment (scale, offset) can now be handled by the respective render API itself (default behavior is as before) - D3D (if HLSL) is activated handles screen adjustment by itself within the shader, which fixes the odd behavior of some effects (e.g. round corners) when screen scale and offset is used
* Merge remote-tracking branch 'remotes/mamedev/master' ImJezze2015-11-151-18/+5
|\
| * more cleanups and fix (nw) Miodrag Milanovic2015-11-111-17/+5
| |