twinaphex
fbd6d0ebc6
Turn more matrix 4x4 functions into macros
2017-04-16 03:53:07 +02:00
twinaphex
1b27c3dec1
Make some log messages more consistent
2017-03-24 00:28:21 +01:00
hunterk
a1124b8ded
(Vulkan) add bokeh menu shader for vulkan
2017-02-20 22:59:05 -06:00
twinaphex
0d873b6da1
(Vulkan) Add fancy snow for Vulkan
2017-02-20 21:51:58 +01:00
Hans-Kristian Arntzen
2d88530c98
Vulkan: Simple snow pipeline works.
...
Some other fixes too.
2017-02-20 20:53:59 +01:00
twinaphex
374fd57270
Remove the few performance counters that depend on runloop_ctl
2017-01-25 18:15:58 +01:00
twinaphex
a9164b7124
Try to use performance counter plus functions in most cases
2017-01-25 17:12:43 +01:00
twinaphex
6661c0fb94
Rewrite performance counter stop/start/init into macros
2017-01-25 16:53:06 +01:00
twinaphex
a104c73738
Go back to this
2017-01-22 23:19:35 +01:00
twinaphex
8698525f86
Only show the frame when libretro_running is true
2017-01-22 21:42:42 +01:00
twinaphex
2f504b4057
(gfx/drivers) Get rid of remaining runloop.h / runloop_ctl
...
references inside gfx/drivers
2017-01-22 18:17:48 +01:00
twinaphex
96c8ca5a09
Header update #1
2017-01-22 13:40:32 +01:00
twinaphex
57f8c637bf
Cut down on runloop_ctl calls inside gfx/drivers
2017-01-22 12:38:20 +01:00
twinaphex
fe84312340
Add some header includes
2017-01-19 17:20:42 +01:00
twinaphex
e0ff0541a2
Pass video_info pointer to font drivers
2017-01-19 16:30:40 +01:00
twinaphex
9d1de5c974
Rewrite video_context_driver_set_resize
2017-01-19 14:31:57 +01:00
twinaphex
c5445d2980
Reduce amount of times video_driver_get_size is called
2017-01-18 23:02:24 +01:00
twinaphex
bf511b72e6
Create menu_driver_frame
2017-01-18 21:23:18 +01:00
twinaphex
a6a4808e94
Refactor frame monitor code
2017-01-18 17:41:27 +01:00
twinaphex
76ae7ac4a0
Cleanup some of the video drivers - add some members to
...
video_info_t to reduce the need for accessing the settings
struct
2017-01-10 18:16:22 +01:00
twinaphex
6b3cc9068d
Pass video_info to swap_buffers too
2017-01-09 14:59:15 +01:00
twinaphex
3d92ce140e
Pass video_frame_info_t to update_window_title
2017-01-09 14:42:07 +01:00
twinaphex
be2f921ee2
Don't use settings pointer inside video_frame function
2017-01-09 14:25:59 +01:00
twinaphex
6a45541f24
(Vulkan) Rename pipeline files
2016-12-12 13:17:20 +01:00
barbudreadmon
ad273d6299
Fix for issue #4165
...
vulkan video driver don't rotate the same way as gl video driver without this.
2016-12-11 10:53:02 +01:00
Hans-Kristian Arntzen
eb7870db5a
Vulkan: Check for more cases in vulkan_load_texture().
...
*Sigh*
2016-12-03 18:54:34 +01:00
Hans-Kristian Arntzen
b96f1fa067
Vulkan: Load a dummy texture if needed.
2016-12-03 17:48:48 +01:00
Lioncash
d34202aea6
vulkan: Move vk_t pointer dereferences after the null check
2016-11-25 23:21:31 -05:00
Hans-Kristian Arntzen
0d718a9365
Vulkan: Workaround warning from validation layers.
2016-11-06 16:07:44 +01:00
twinaphex
456c4c4d58
Remove video_driver_cached_frame_render wrapper function
2016-10-25 00:42:26 +02:00
twinaphex
275814e291
Replace font_driver_free(NULL) calls with font_driver_free_osd()
...
inside video drivers
2016-10-20 00:39:33 +02:00
Higor Eurípedes
6f2cb9742d
(font) Create font_data_t and update font_driver_init_first()
2016-10-18 20:07:00 -03:00
twinaphex
202e3e796e
Get rid of more general.h includes
2016-09-11 14:46:53 +02:00
twinaphex
acd4dd527b
Header include cleanups
2016-09-05 18:31:32 +02:00
twinaphex
064f74825a
CXX_BUILD buildfix
2016-09-01 18:26:01 +02:00
twinaphex
467451fccc
Cleanup more header includes
2016-09-01 18:18:55 +02:00
Hans-Kristian Arntzen
96818a297c
Vulkan: Fix validation errors with OriginalHistory.
...
For some reason, OriginalHistory blit happened inside a render pass.
Also add more TRANSFER_SRC_BIT caps to images as they might have to be
copied to history.
2016-08-07 01:09:15 +02:00
Hans-Kristian Arntzen
4e8e79eabd
Vulkan: Add mipmapping support.
2016-07-31 13:47:10 +02:00
Hans-Kristian Arntzen
d39a3619d6
Begin implementation of LUTs in Vulkan.
2016-07-31 12:26:14 +02:00
Hans-Kristian Arntzen
f54b0c0ff0
Vulkan: Implement swap_interval > 1.
...
We have to fake it by duping since Vulkan has no native support for
this.
2016-07-24 00:34:48 +02:00
Hans-Kristian Arntzen
8c1b935969
Vulkan: Implement BFI.
2016-07-24 00:07:32 +02:00
Hans-Kristian Arntzen
8569028189
Vulkan: Use manual memory management for cached/incoherent devices.
2016-07-15 16:12:30 +00:00
Hans-Kristian Arntzen
4729ec9e1b
Add support for signalling semaphores from frontend.
...
Useful for conserving framebuffer memory.
2016-06-27 20:54:53 +02:00
Hans-Kristian Arntzen
54c1759f45
Vulkan: Make a more general purpose symbol loader.
...
Avoids painful manual loading and wrapping function pointers everywhere
...
Reusable for cores, so move to libretro-common.
Also update built-in Vulkan headers.
2016-06-26 13:10:58 +02:00
Hans-Kristian Arntzen
b013a9c863
Vulkan: Replace prebaked shaders with glslc -mfmt=c.
...
Far more clean and avoids illegal punning.
2016-06-25 14:55:03 +02:00
Hans-Kristian Arntzen
972a5db7ae
Vulkan: Fix shader module leak.
2016-06-25 14:06:14 +02:00
Hans-Kristian Arntzen
07880e3f45
Vulkan: Begin hooking up validation layers.
...
Found lots of regressions due to bad reformatting.
2016-06-25 13:52:33 +02:00
Hans-Kristian Arntzen
d043123f71
Vulkan: Add support for queue transfers in HW rendering.
2016-06-25 11:39:52 +02:00
twinaphex
281a33d61f
Rename function to performance_counter_init
2016-05-16 09:58:45 +02:00
twinaphex
f5bc75c640
Rename retro_perf_start/retro_perf_stop
2016-05-16 09:53:54 +02:00
twinaphex
18355d4748
Rename retro_perf_stop
2016-05-16 09:48:14 +02:00
twinaphex
0d833c903a
Merge remote-tracking branch 'origin/vulkan-windows'
2016-05-16 07:51:01 +02:00
twinaphex
fc56f6ebdb
Add some HAVE_THREADS ifdefs
2016-05-11 10:10:30 +02:00
twinaphex
78783cc2aa
Buildfixes for compiling without HAVE_MENU
2016-05-11 10:06:15 +02:00
twinaphex
4a7ab8366b
Move libretro.h headers to libretro-common/include
2016-05-10 19:03:53 +02:00
twinaphex
b79b2dca13
Create performance_counters
2016-05-10 08:53:14 +02:00
twinaphex
dde471e001
Rename gfx_ structs
2016-05-10 02:39:09 +02:00
twinaphex
44ed8d1116
CXX_BUILD fixes
2016-05-09 05:48:47 +02:00
twinaphex
b20d550cc4
Rename video context driver functions
2016-05-08 20:32:56 +02:00
twinaphex
7399ba386a
Rename gfx_ctx_ prefix
2016-05-08 19:24:23 +02:00
Hans-Kristian Arntzen
d723411436
De ioctl video_driver.
2016-05-08 14:00:51 +02:00
Hans-Kristian Arntzen
464a4add66
XMB ribbon works in Vulkan.
2016-05-08 11:11:28 +02:00
twinaphex
65dec874a8
Move some path settings
2016-04-28 19:52:25 +02:00
Hans-Kristian Arntzen
c7b96b75b8
Vulkan: Add more error logging.
2016-03-29 17:36:13 +02:00
Hans-Kristian Arntzen
38a305bb6e
Vulkan: Add proc address query functions to HW interface.
...
Allows cores to avoid linking directly against any extra library.
Update HW interface version to 2 to signal ABI change.
Note that the interface is still experimental and can change at any time.
2016-03-29 16:35:31 +02:00
Hans-Kristian Arntzen
1ff4445ba0
Remove dead code with full_x/full_y.
...
Very confusing and no longer serves any purpose anyways.
2016-03-29 15:28:13 +02:00
Hans-Kristian Arntzen
82db5a4950
Vulkan: Use single UBO for all passes and sync indices.
...
Significantly reduces number of allocations.
2016-03-26 19:39:51 +01:00
Hans-Kristian Arntzen
3838b3c045
Vulkan: Add frame count suport.
2016-03-25 22:06:31 +01:00
Hans-Kristian Arntzen
83ab0d799f
Vulkan: Begin implementing history and feedback.
2016-03-25 14:51:37 +01:00
Hans-Kristian Arntzen
f1a5725f66
Vulkan: Host writes are implicitly flushed on submit.
...
Use TOP_OF_PIPE/0 access instead to work
around spammy asserts on Anvil.
We still have to invalidate the caches however.
2016-03-21 16:57:04 +01:00
Hans-Kristian Arntzen
7899d449e6
Vulkan: Also invalidate fragment uniform buffer
2016-03-21 11:49:27 +01:00
Hans-Kristian Arntzen
a21687b5d7
Vulkan: Ensure vertex caches are invalidated.
2016-03-21 10:10:29 +01:00
Hans-Kristian Arntzen
84923a0465
Vulkan: Tighten up pipeline barrier usage.
...
Lots of memory barriers used with TOP_OF_PIPE which is not valid.
2016-03-21 10:02:00 +01:00
Hans-Kristian Arntzen
07524fe433
Vulkan: Log about format use.
2016-03-21 09:29:41 +01:00
Hans-Kristian Arntzen
f02faeea27
Vulkan: Fix segfault on nVidia.
2016-03-06 12:33:46 +01:00
Hans-Kristian Arntzen
c00d32f30f
Vulkan: Get correct window mode size.
2016-03-06 12:18:11 +01:00
Hans-Kristian Arntzen
6cde59a8ad
Vulkan: Add more detailed counters.
2016-03-06 12:11:44 +01:00
twinaphex
eebcde721b
Rename video_coord_array
2016-03-05 07:28:02 +01:00
twinaphex
64a77af881
Use RARCH_DISPLAY_CTL_HW_CONTEXT_GET directly instead of
...
going through video_driver_callback
2016-03-04 20:49:55 +01:00
twinaphex
86a8899b0f
(Android) Start preparing Android JNI Makefiles for Android
2016-03-01 18:46:40 +01:00
Themaister
bce0d55a43
Vulkan: Allocate correct number of descriptors.
...
Have to allocate for entire pool, not per set.
2016-03-01 09:44:18 +01:00
twinaphex
b79edb6095
Reimplement function pointers
2016-03-01 02:21:53 +01:00
twinaphex
937230564d
move more code to vksym.h
2016-03-01 01:53:48 +01:00
twinaphex
4a1a623099
(Vulkan) Add more funcptrs
2016-02-29 23:09:05 +01:00
twinaphex
0e60d20705
Add Command Function pointers
2016-02-29 23:04:17 +01:00
twinaphex
67ea4e1d6b
(Vulkan) Pipeline function pointers
2016-02-29 22:55:31 +01:00
twinaphex
1fbac78e35
(Vulkan) Go through function pointer for vkDestroyPipelineCache
2016-02-29 22:38:58 +01:00
twinaphex
1b85ee442f
Go through funcptr for vkAllocateCommandBuffers
2016-02-29 22:23:35 +01:00
twinaphex
83dc7db6c7
(Vulkan) Add descriptor set layout function callbacks
2016-02-29 22:04:23 +01:00
twinaphex
caed6c61cb
(Vulkan) Function pointer for vkFreeCommandBuffers
2016-02-29 21:58:10 +01:00
twinaphex
1e407079e4
Add function pointers for image view functions
2016-02-29 21:55:54 +01:00
twinaphex
a6eb40b3d2
Add funcptr for vkAllocateCommandBuffers
2016-02-29 21:51:42 +01:00
twinaphex
4771c45ed3
Add render pass command function pointers
2016-02-29 21:43:04 +01:00
twinaphex
7f5d0f2763
(Vulkan) More function pointers for command buffer functions
2016-02-29 21:37:35 +01:00
twinaphex
860ffff3c9
(Vulkan) Go through funcptr for vkEndCommandBuffer
2016-02-29 21:31:51 +01:00
twinaphex
eae652d6a5
Go through funcptr for vkDestroyCommandPool
2016-02-29 21:17:21 +01:00
twinaphex
8232135922
Cleanups
2016-02-29 20:08:56 +01:00
twinaphex
e669f92399
(Vulkan) Cleanups
2016-02-29 20:07:11 +01:00
twinaphex
8a06e27c22
(Vulkan) Cleanups
2016-02-29 19:44:46 +01:00
twinaphex
59ad8fcfde
(Vulkan) Cleanups
2016-02-29 19:43:54 +01:00
twinaphex
f0458495f4
Go through funcptr for vkDestroyPipeline
2016-02-29 19:41:25 +01:00
twinaphex
d45f0e0946
Some cleanups
2016-02-29 19:39:49 +01:00
twinaphex
670eede306
Go through function pointer for vkCmdClearAttachments
2016-02-29 19:34:40 +01:00
twinaphex
fc7a972466
Go through function pointers for vkMapMemory/vkUnmapMemory
2016-02-29 19:20:42 +01:00
twinaphex
28d5ca6a86
(Vulkan) Style nits
2016-02-29 19:16:21 +01:00
twinaphex
b660fb8878
Create sampler function pointers
2016-02-29 19:11:09 +01:00
twinaphex
0e91bb6852
Go through more function pointers
2016-02-29 19:03:18 +01:00
twinaphex
1d96e80b05
(Vulkan) More funcptrs
2016-02-29 18:40:30 +01:00
twinaphex
5863996d83
Go through VKFUNC
2016-02-29 17:06:41 +01:00
twinaphex
6c9e8041c6
Add function pointer for vkCreateCommandPool
2016-02-29 16:41:49 +01:00
twinaphex
6dce80ea07
Add function pointers for vkCreatePipelineCache and vkCreatePipelineLayout
2016-02-29 16:37:15 +01:00
twinaphex
778b50fc28
Add funcptr for vkCreateFramebuffer
2016-02-29 16:32:34 +01:00
twinaphex
361cce328d
vkCreateRenderPass - add funcptr
2016-02-29 16:30:45 +01:00
twinaphex
4248e244a8
Go through funcptr for vkCmdCopyImage
2016-02-29 06:52:08 +01:00
twinaphex
01f5a7ad84
Go through vkQueueWaitIdle function pointer
2016-02-29 06:31:55 +01:00
Hans-Kristian Arntzen
cece4e5ae2
Vulkan: Add workaround for broken VkImageView swizzling.
...
Certain early drivers fail to apply swizzle mask.
2016-02-21 13:52:30 +01:00
Hans-Kristian Arntzen
f09338b1b8
Set alphaBlendOp correctly.
2016-02-21 13:40:19 +01:00
Hans-Kristian Arntzen
0dddd671f8
Vulkan: Use more approriate barrier
2016-02-21 12:59:11 +01:00
Hans-Kristian Arntzen
4259ea3d06
Merge branch 'master' of git://github.com/libretro/RetroArch
2016-02-21 12:45:26 +01:00
Hans-Kristian Arntzen
36eb07e067
Vulkan: Use copy paths if needed.
2016-02-21 12:33:16 +01:00
twinaphex
fbc7eaf287
(vulkan.c) Style nits
2016-02-20 20:29:52 +01:00
twinaphex
1426cf7fb2
(vulkan.c) Style nits
2016-02-20 20:15:46 +01:00
Hans-Kristian Arntzen
fa449646e9
Bug fixes for Vulkan readback.
...
We were getting weird and inconsistent viewport sizes back.
2016-02-20 14:04:33 +01:00
Hans-Kristian Arntzen
bcac4a204f
Vulkan: Set initial viewport after keep_aspect is correct.
...
Fixes fullscreen recording.
2016-02-20 13:46:20 +01:00
Hans-Kristian Arntzen
5542427246
Try to use cached memory for readbacks.
...
Speeds up nVidia readbacks by order of magnitude.
2016-02-20 12:04:53 +01:00
Hans-Kristian Arntzen
459c55989a
Use vkCmdCopyImage for readbacks.
...
Blits often imply render targets.
2016-02-20 11:21:39 +01:00
Hans-Kristian Arntzen
c74c7ae053
Vulkan: Work around broken push constants on Ivy Bridge.
...
Use UBOs instead, should be more compatible with early drivers.
2016-02-18 18:36:49 +01:00
Hans-Kristian Arntzen
adbf9fed16
Vulkan implementation.
2016-02-16 20:42:02 +01:00