| Commit message (Collapse) | Author | Age | Files | Lines |
| |
|
|
|
|
|
|
|
|
|
|
|
|
| |
hlsl/phosphor.fx: Remove hacks
ini/presets/raster.ini, ini/presets/vector-mono.ini,
ini/presets/vector.ini: Tweak presets
src/osd/modules/render/d3d/d3dcomm.h,
src/osd/modules/render/d3d/d3dhlsl.cpp,
src/osd/modules/render/drawd3d.cpp: Change cache texture format to
floating point for precise for phosphor and ghosting shaders.
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
hlsl/ghosting.fx: Add LCD ghosting shader
hlsl/phosphor.fx: Remove LCD logic
ini/presets/gameboy.ini, ini/presets/gba.ini,
ini/presets/lcd-matrix.ini, ini/presets/lcd.ini, ini/presets/raster.ini,
ini/presets/vector.ini: Update presets
src/osd/modules/render/d3d/d3dhlsl.cpp,
src/osd/modules/render/d3d/d3dhlsl.h: Add LCD shader and sliders. Allow
sliders to be adjusted for R, G, and B components.
src/osd/windows/winmain.cpp, src/osd/windows/winmain.h: Add LCD
ghosting options.# Please enter the commit message for your changes. Lines starting
|
|
|
|
|
|
|
|
|
|
| |
hlsl/phosphor.fx: Scale parameter into tau or gamma.
src/osd/modules/render/d3d/d3dhlsl.cpp:
src/osd/modules/render/d3d/d3dhlsl.h:
src/osd/windows/winmain.cpp:
src/osd/windows/winmain.h: Combine tau and beta sliders into one
slider labeled 'Time Constant'.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
hlsl/phosphor.fx: Do LCD persistence effect using boolean LCD.
LCD persistence is monochrome and thus does not have separate components
like phosphor persistence.
src/osd/modules/render/d3d/d3dhlsl.cpp: Add slider for LCD
games.
src/osd/modules/render/d3d/d3dhlsl.h: (BP) Add options for LCD
games.
src/osd/windows/winmain.cpp: (BP) Add options for LCD games.
src/osd/windows/winmain.h: (BP) Add options for LCD games.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
hlsl/phosphor.fx: Make changes to the pixel shader. New
uniforms: Mode, Tau, Beta, Gamma. Remove Phosphor. Mode selects the
mode for phosphor simulation: off (no decay), exponential, inverse
power. Tau is the time constant for exp. decay. Beta and Gamma are
constants for inv-pow.
src/osd/modules/render/d3d/d3dhlsl.cpp: Provide uniforms and add
sliders for new options.
src/osd/modules/render/d3d/d3dhlsl.h: (BP) Provide new options.
src/osd/windows/winmain.cpp: (BP) Provide new options.
src/osd/windows/winmain.h: (BP) Provide new options.
|
|
|
|
|
|
|
| |
src/osd/modules/render/d3d/d3dhlsl.cpp: Move time members
calculation to shaders::begin_draw.
src/osd/modules/render/d3d/d3dhlsl.h: Remove update_t.
|
| |
|
|
|
|
|
|
|
|
|
| |
interfere with each other.
src/osd/modules/render/d3d/d3dhlsl.cpp: update_t flag is reset
for each emulated screen 0.
src/ods/modules/render/d3d/d3dhlsl.h: Add update_t.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
multi-window use.
hlsl/phosphor.fx: Update semantics.
src/osd/modules/render/d3d/d3dhlsl.cpp: Implement
shaders::delta_time member function.
src/osd/modules/render/d3d/d3dhlsl.h: Add acc_t and delta_t
members for use by shaders::delta_time. Member function returns the
amount of time since itself has been called, for use by time-dependent
shaders.
|
| |
|
|
|
|
|
|
|
|
|
| |
hlsl/phosphor.fx: Add calculation time passed to be used by
shader.
src/osd/modules/render/d3d/d3dhlsl.cpp: Make pixel shader
calculate the current pixel by factoring in the amount of time which has
passed since the last rendering.
|
| |
|
| |
|
|
|
|
| |
- e.g. atarifb, bowler
|
| |
|
| |
|
|
|
|
|
| |
- removed second defocus pass
- limited defocus stength to a maximum of 2.0
|
|
|
|
| |
- which was quite a performance overhead and not necessary because the shaders fill every texel of a target without blending
|
|
|
|
|
|
|
| |
* removed cashe_target class
* moved cashe texture and surface to d3d_render_target class
* render targets are now created per screen not per screen texture
* removed useless creation of render targets for ui textures
|
|
|
|
|
| |
Use standard uint64_t, uint32_t, uint16_t or uint8_t instead of UINT64, UINT32, UINT16 or UINT8
also use standard int64_t, int32_t, int16_t or int8_t instead of INT64, INT32, INT16 or INT8
|
|
|
|
|
| |
utf8_from_[a|w|t]string ==> osd::text::from_[a|w|t]string
[a|w|t]string_from_utf8 ==> osd::text::to_[a|w|t]string
|
| |
|
|
|
|
|
|
| |
* fixed target texture dimension when -intoverscan is used (this fixes the appereance of scanline and shadow mask)
* added target_scale and screen_count uniforms
* rounded corners now remain aligned with screen bounds when -intoverscan is used (single screen only)
|
| |
|
| |
|
|
|
|
| |
to inline functions (nw)
|
| |
|
|
|
|
| |
std::wstring
|
|
|
|
|
|
|
|
| |
* fixed copy of texture data to bitmap in BGFX
* changed AVI dimension to a lowest integral multiple of 4
(2 was still to low for most video players, e.g. VLC)
* added audio to AVI record in HLSL
* HLSL AVI record now uses window dimension instead of snap dimension
|
|
|
|
| |
Shift + F12) when screen dimension is swapped
|
| |
|
|
|
|
|
|
| |
Now the filenames for movies recorded by HLSL and BGFX renderers are automatically generated just like the ones for movies and snapshots recorded by the video core. They are generated according to the "snapname" template (eg. by default <snap_folder>/<device_name>/<numeric_index.avi>, so you can revert to the old behavior (why?) just setting "snapname bgfx.avi" or "snapname hlsl.avi".
The main advantage is that now you can record as many movies as you want during a single gaming session without much hassle (previously you had to move or rename the old movie file by hand before recording a new one).
|
|
|
|
|
|
|
|
| |
Use common infrastructure in aviwrite.c instead of equivalent local code.
In addition:
- the target textures used by the HLSL movie recorder are now allocated only when recording is ongoing
- removed shaders->begin_frame() and shaders->end_frame() hooks from the main Direct3D rendering loop
- set default HLSL movie name to hlsl.avi to match bgfx.avi setting
|
| |
|
|
|
|
| |
Removed unused methods, unused function parameters, redundant casts, doubly linked lists made into singly linked lists, etc.
|
| |
|
| |
|
|
|
|
| |
switching between window and full screen mode
|
| |
|
| |
|
|
|
|
| |
It was introduced to support Direct3D 8 and 9 with the same code base. They had a very similar programming model and the abstraction layer was taking advantage of that. Now, Direct3D 8 support in MAME was removed long time ago, an Direct3D 11 and 12 have very different programming models, so the layer is not useful anymore and can be safely removed to simplify the code.
|
|
|
|
|
| |
This is a central cross-platform facility to dynamically bind functions from shared libraries.
Updated all OSD modules to use it.
|
|
|
|
|
|
| |
* 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
|
|
|
|
|
|
|
| |
- 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
|
| |
|
|
|
|
|
|
|
| |
* move menu classes into ::ui namesapce
* reduce scope of many symbols
(first step in making UI code less rage-inducing so I can fix text input)
|
|
|
|
|
|
| |
- vector_length_ratio is now independent from screen size
- changed vector_length_ratio range from [0.0, 1000.0] to [0.0, 1.0]
- updated display name and description of vector_length_scale vector_length_ratio
|
|
|
|
| |
- this also improves the performance slightly
|