Is there a way to speed up DX9?

Questions about Wine on macOS.
Locked
yunomi
Newbie
Newbie
Posts: 1
Joined: Wed Jan 03, 2024 8:36 am

Is there a way to speed up DX9?

Post by yunomi »

I played some old 3D games that run on DX9 and found that the frame rate was low. I looked it up and found out that WineD3D’s renderer is OpenGL and macOS doesn’t have the latest OpenGL. So I changed the renderer to vulkan in the registry and the games that used to work started to crash. However, if I set the renderer to gl, the problem goes away. Here is the log when it crashes.

Code: Select all

012c:err:environ:init_peb starting L"C:\\Program Files (x86)\\mackoy\\BveTs5\\BveTs.exe" in experimental wow64 mode
012c:fixme:ntdll:NtQuerySystemInformation info_class SYSTEM_PERFORMANCE_INFORMATION
012c:fixme:ntdll:EtwEventSetInformation (deadbeef, 2, 7B9A3241, 28) stub
012c:fixme:ntdll:EtwRegisterTraceGuidsW   register trace class {044973cd-251f-4dff-a3e9-9d6307286b05}
012c:fixme:ntdll:EtwRegisterTraceGuidsW   register trace class {3044f61a-99b0-4c21-b203-d39423c73b00}
012c:fixme:ntdll:EtwRegisterTraceGuidsW   register trace class {d00792da-07b7-40f5-97eb-5d974e054740}
012c:fixme:ntdll:EtwRegisterTraceGuidsW   register trace class {cfc4ba53-fb42-4757-8b70-5f5d51fee2f4}
012c:fixme:ntdll:EtwRegisterTraceGuidsW   register trace class {efdf1eac-1d5d-4e84-893a-19b80f692176}
012c:fixme:ntdll:EtwRegisterTraceGuidsW   register trace class {c71408de-42cc-4f81-9c93-b8912abf2a0f}
012c:fixme:ntdll:EtwRegisterTraceGuidsW   register trace class {840c8456-6457-4eb7-9cd0-d28f01c64f5e}
012c:fixme:ntdll:EtwRegisterTraceGuidsW   register trace class {c424b3e3-2ae0-416e-a039-410c5d8e5f14}
012c:fixme:ntdll:EtwRegisterTraceGuidsW   register trace class {300ce105-86d1-41f8-b9d2-83fcbff32d99}
012c:fixme:ntdll:EtwRegisterTraceGuidsW   register trace class {561410f5-a138-4ab3-945e-516483cddfbc}
012c:fixme:ntdll:EtwRegisterTraceGuidsW   register trace class {02d08a4f-fd01-4538-989b-03e437b950f4}
012c:fixme:ntdll:EtwRegisterTraceGuidsW   register trace class {ea40c74d-4f65-4561-bb26-656231c8967f}
013c:fixme:keyboard:NtUserActivateKeyboardLayout Changing user locale is not supported
0140:fixme:keyboard:NtUserActivateKeyboardLayout Changing user locale is not supported
0134:err:ole:CoGetContextToken apartment not initialised
0150:err:environ:init_peb starting L"C:\\windows\\Microsoft.NET\\Framework\\v2.0.50727\\csc.exe" in experimental wow64 mode
0150:fixme:ntdll:NtQuerySystemInformation info_class SYSTEM_PERFORMANCE_INFORMATION
0158:fixme:keyboard:NtUserActivateKeyboardLayout Changing user locale is not supported
0150:fixme:ntdll:EtwEventSetInformation (deadbeef, 2, 7B9A3241, 28) stub
0160:err:environ:init_peb starting L"C:\\windows\\Microsoft.NET\\Framework\\v2.0.50727\\cvtres.exe" in experimental wow64 mode
0150:fixme:msvcrt:__clean_type_info_names_internal (5E0B59D8) stub
0150:fixme:msvcrt:__clean_type_info_names_internal (63FA8378) stub
0150:fixme:msvcrt:__clean_type_info_names_internal (7A3BEC7C) stub
0150:fixme:msvcrt:__clean_type_info_names_internal (5A1F35E0) stub
0168:err:environ:init_peb starting L"C:\\windows\\Microsoft.NET\\Framework\\v2.0.50727\\csc.exe" in experimental wow64 mode
0168:fixme:ntdll:NtQuerySystemInformation info_class SYSTEM_PERFORMANCE_INFORMATION
0170:fixme:keyboard:NtUserActivateKeyboardLayout Changing user locale is not supported
0168:fixme:ntdll:EtwEventSetInformation (deadbeef, 2, 7B9A3241, 28) stub
0178:err:environ:init_peb starting L"C:\\windows\\Microsoft.NET\\Framework\\v2.0.50727\\cvtres.exe" in experimental wow64 mode
0168:fixme:msvcrt:__clean_type_info_names_internal (5E0B59D8) stub
0168:fixme:msvcrt:__clean_type_info_names_internal (63FA8378) stub
0168:fixme:msvcrt:__clean_type_info_names_internal (7A3BEC7C) stub
0168:fixme:msvcrt:__clean_type_info_names_internal (5A1F35E0) stub
012c:fixme:keyboard:NtUserActivateKeyboardLayout Changing user locale is not supported
012c:fixme:font:find_matching_face Untranslated charset 255
012c:fixme:font:get_nearest_charset returning DEFAULT_CHARSET face->fs.fsCsb[0] = 00000000 file = L"\\??\\Z:\\System\\Library\\Fonts\\Apple Braille Pinpoint 8 Dot.ttf"
012c:fixme:font:find_matching_face Untranslated charset 255
012c:fixme:font:get_nearest_charset returning DEFAULT_CHARSET face->fs.fsCsb[0] = 00000000 file = L"\\??\\Z:\\System\\Library\\Fonts\\Supplemental\\Baghdad.ttc"
012c:fixme:font:find_matching_face Untranslated charset 255
012c:fixme:font:get_nearest_charset returning DEFAULT_CHARSET face->fs.fsCsb[0] = 00000000 file = L"\\??\\Z:\\System\\Library\\Fonts\\Supplemental\\Gujarati Sangam MN.ttc"
012c:fixme:font:find_matching_face Untranslated charset 255
012c:fixme:font:get_nearest_charset returning DEFAULT_CHARSET face->fs.fsCsb[0] = 00000000 file = L"\\??\\Z:\\System\\Library\\Fonts\\Supplemental\\Gurmukhi Sangam MN.ttc"
012c:fixme:font:find_matching_face Untranslated charset 255
012c:fixme:font:get_nearest_charset returning DEFAULT_CHARSET face->fs.fsCsb[0] = 00000000 file = L"\\??\\Z:\\System\\Library\\Fonts\\HelveticaNeue.ttc"
012c:fixme:font:find_matching_face Untranslated charset 255
012c:fixme:font:get_nearest_charset returning DEFAULT_CHARSET face->fs.fsCsb[0] = 00000000 file = L"\\??\\Z:\\System\\Library\\Fonts\\Supplemental\\Hoefler Text Ornaments.ttf"
012c:fixme:font:find_matching_face Untranslated charset 255
012c:fixme:font:get_nearest_charset returning DEFAULT_CHARSET face->fs.fsCsb[0] = 00000000 file = L"\\??\\Z:\\System\\Library\\Fonts\\Supplemental\\ITFDevanagari.ttc"
012c:fixme:font:find_matching_face Untranslated charset 255
012c:fixme:font:get_nearest_charset returning DEFAULT_CHARSET face->fs.fsCsb[0] = 00000000 file = L"\\??\\Z:\\System\\Library\\Fonts\\Supplemental\\ITFDevanagari.ttc"
012c:fixme:font:find_matching_face Untranslated charset 255
012c:fixme:font:get_nearest_charset returning DEFAULT_CHARSET face->fs.fsCsb[0] = 00000000 file = L"\\??\\Z:\\System\\Library\\Fonts\\Supplemental\\Kailasa.ttc"
012c:fixme:font:find_matching_face Untranslated charset 255
012c:fixme:font:get_nearest_charset returning DEFAULT_CHARSET face->fs.fsCsb[0] = 00000000 file = L"\\??\\Z:\\System\\Library\\Fonts\\KohinoorGujarati.ttc"
012c:fixme:font:find_matching_face Untranslated charset 255
012c:fixme:font:get_nearest_charset returning DEFAULT_CHARSET face->fs.fsCsb[0] = 00000000 file = L"\\??\\Z:\\System\\Library\\Fonts\\Supplemental\\KufiStandardGK.ttc"
012c:fixme:font:find_matching_face Untranslated charset 255
012c:fixme:font:get_nearest_charset returning DEFAULT_CHARSET face->fs.fsCsb[0] = 00000000 file = L"\\??\\Z:\\System\\Library\\Fonts\\Supplemental\\Nadeem.ttc"
012c:fixme:font:find_matching_face Untranslated charset 255
012c:fixme:font:get_nearest_charset returning DEFAULT_CHARSET face->fs.fsCsb[0] = 00000000 file = L"\\??\\Z:\\System\\Library\\AssetsV2\\com_apple_MobileAsset_Font7\\7ca27bc02dd7660f9dacd69df96d24639b96e080.asset\\AssetData\\Pilgiche.ttf"
012c:fixme:font:find_matching_face Untranslated charset 255
012c:fixme:font:get_nearest_charset returning DEFAULT_CHARSET face->fs.fsCsb[0] = 00000000 file = L"\\??\\Z:\\System\\Library\\Fonts\\Supplemental\\Skia.ttf"
012c:fixme:font:find_matching_face Untranslated charset 255
012c:fixme:font:get_nearest_charset returning DEFAULT_CHARSET face->fs.fsCsb[0] = 00000000 file = L"\\??\\Z:\\System\\Library\\Fonts\\ZapfDingbats.ttf"
012c:fixme:gdiplus:GdipGetFamilyName No support for handling of multiple languages!
012c:fixme:olepicture:OLEPictureImpl_QueryInterface () : asking for unsupported interface {c3fcc19e-a970-11d2-8b5a-00a0c9b7c9c4}
012c:fixme:olepicture:OLEPictureImpl_QueryInterface () : asking for unsupported interface {b196b283-bab4-101a-b69c-00aa00341d07}
012c:fixme:olepicture:OLEPictureImpl_QueryInterface () : asking for unsupported interface {00000003-0000-0000-c000-000000000046}
012c:fixme:olepicture:OLEPictureImpl_QueryInterface () : asking for unsupported interface {00000144-0000-0000-c000-000000000046}
012c:fixme:gdiplus:GdipCreateHalftonePalette stub
012c:err:winediag:wined3d_dll_init Using the Vulkan renderer.
[mvk-info] MoltenVK version 1.2.6, supporting Vulkan version 1.2.268.
	The following 102 Vulkan extensions are supported:
		VK_KHR_16bit_storage v1
		VK_KHR_8bit_storage v1
		VK_KHR_bind_memory2 v1
		VK_KHR_buffer_device_address v1
		VK_KHR_copy_commands2 v1
		VK_KHR_create_renderpass2 v1
		VK_KHR_dedicated_allocation v3
		VK_KHR_deferred_host_operations v4
		VK_KHR_depth_stencil_resolve v1
		VK_KHR_descriptor_update_template v1
		VK_KHR_device_group v4
		VK_KHR_device_group_creation v1
		VK_KHR_driver_properties v1
		VK_KHR_dynamic_rendering v1
		VK_KHR_external_fence v1
		VK_KHR_external_fence_capabilities v1
		VK_KHR_external_memory v1
		VK_KHR_external_memory_capabilities v1
		VK_KHR_external_semaphore v1
		VK_KHR_external_semaphore_capabilities v1
		VK_KHR_fragment_shader_barycentric v1
		VK_KHR_get_memory_requirements2 v1
		VK_KHR_get_physical_device_properties2 v2
		VK_KHR_get_surface_capabilities2 v1
		VK_KHR_imageless_framebuffer v1
		VK_KHR_image_format_list v1
		VK_KHR_incremental_present v2
		VK_KHR_maintenance1 v2
		VK_KHR_maintenance2 v1
		VK_KHR_maintenance3 v1
		VK_KHR_map_memory2 v1
		VK_KHR_multiview v1
		VK_KHR_portability_subset v1
		VK_KHR_push_descriptor v2
		VK_KHR_relaxed_block_layout v1
		VK_KHR_sampler_mirror_clamp_to_edge v3
		VK_KHR_sampler_ycbcr_conversion v14
		VK_KHR_separate_depth_stencil_layouts v1
		VK_KHR_shader_draw_parameters v1
		VK_KHR_shader_float_controls v4
		VK_KHR_shader_float16_int8 v1
		VK_KHR_shader_non_semantic_info v1
		VK_KHR_shader_subgroup_extended_types v1
		VK_KHR_spirv_1_4 v1
		VK_KHR_storage_buffer_storage_class v1
		VK_KHR_surface v25
		VK_KHR_swapchain v70
		VK_KHR_swapchain_mutable_format v1
		VK_KHR_synchronization2 v1
		VK_KHR_timeline_semaphore v2
		VK_KHR_uniform_buffer_standard_layout v1
		VK_KHR_variable_pointers v1
		VK_EXT_4444_formats v1
		VK_EXT_buffer_device_address v2
		VK_EXT_calibrated_timestamps v2
		VK_EXT_debug_marker v4
		VK_EXT_debug_report v10
		VK_EXT_debug_utils v2
		VK_EXT_descriptor_indexing v2
		VK_EXT_extended_dynamic_state v1
		VK_EXT_extended_dynamic_state2 v1
		VK_EXT_external_memory_host v1
		VK_EXT_fragment_shader_interlock v1
		VK_EXT_hdr_metadata v2
		VK_EXT_host_query_reset v1
		VK_EXT_image_robustness v1
		VK_EXT_inline_uniform_block v1
		VK_EXT_memory_budget v1
		VK_EXT_metal_objects v1
		VK_EXT_metal_surface v1
		VK_EXT_pipeline_creation_cache_control v3
		VK_EXT_pipeline_creation_feedback v1
		VK_EXT_post_depth_coverage v1
		VK_EXT_private_data v1
		VK_EXT_robustness2 v1
		VK_EXT_sample_locations v1
		VK_EXT_scalar_block_layout v1
		VK_EXT_separate_stencil_usage v1
		VK_EXT_shader_atomic_float v1
		VK_EXT_shader_demote_to_helper_invocation v1
		VK_EXT_shader_stencil_export v1
		VK_EXT_shader_subgroup_ballot v1
		VK_EXT_shader_subgroup_vote v1
		VK_EXT_shader_viewport_index_layer v1
		VK_EXT_subgroup_size_control v2
		VK_EXT_surface_maintenance1 v1
		VK_EXT_swapchain_colorspace v4
		VK_EXT_swapchain_maintenance1 v1
		VK_EXT_texel_buffer_alignment v1
		VK_EXT_texture_compression_astc_hdr v1
		VK_EXT_vertex_attribute_divisor v3
		VK_AMD_gpu_shader_half_float v2
		VK_AMD_negative_viewport_height v1
		VK_AMD_shader_image_load_store_lod v1
		VK_AMD_shader_trinary_minmax v1
		VK_IMG_format_pvrtc v1
		VK_INTEL_shader_integer_functions2 v1
		VK_GOOGLE_display_timing v1
		VK_MVK_macos_surface v3
		VK_MVK_moltenvk v37
		VK_NV_fragment_shader_barycentric v1
		VK_NV_glsl_shader v1
[mvk-info] GPU device:
		model: Apple M1 Pro
		type: Integrated
		vendorID: 0x106b
		deviceID: 0xe0203ef
		pipelineCacheUUID: 9E4EE9E6-0E02-03EF-0000-000000000000
		GPU memory available: 10922 MB
		GPU memory used: 0 MB
	supports the following Metal Versions, GPU's and Feature Sets:
		Metal Shading Language 3.0
		GPU Family Apple 7
		GPU Family Apple 6
		GPU Family Apple 5
		GPU Family Apple 4
		GPU Family Apple 3
		GPU Family Apple 2
		GPU Family Apple 1
		GPU Family Mac 2
		GPU Family Mac 1
		GPU Family Common 3
		GPU Family Common 2
		GPU Family Common 1
		macOS GPU Family 2 v1
		macOS GPU Family 1 v4
		macOS GPU Family 1 v3
		macOS GPU Family 1 v2
		macOS GPU Family 1 v1
[mvk-info] Created VkInstance for Vulkan version 1.1.0, as requested by app, with the following 4 Vulkan extensions enabled:
		VK_KHR_external_memory_capabilities v1
		VK_KHR_get_physical_device_properties2 v2
		VK_KHR_surface v25
		VK_EXT_metal_surface v1
012c:fixme:d3d:adapter_vk_init_driver_info Failed to retrieve GPU description for device "Apple M1 Pro" 106b:e0203ef.
[mvk-info] Vulkan semaphores using Metal implicit guarantees within a single queue.
[mvk-info] Created VkDevice to run on GPU Apple M1 Pro with the following 6 Vulkan extensions enabled:
		VK_KHR_external_memory v1
		VK_KHR_sampler_mirror_clamp_to_edge v3
		VK_KHR_swapchain v70
		VK_EXT_external_memory_host v1
		VK_EXT_host_query_reset v1
		VK_EXT_vertex_attribute_divisor v3
[mvk-info] Created 2 swapchain images with size (3024, 1708) and contents scale 2.0 in layer CAMetalLayer: WineMetalView (0x600000e2b900) on screen 内蔵Retinaディスプレイ.
012c:fixme:coreaudio:ca_channel_layout_to_channel_mask Unhandled channel 0xffffffff
012c:fixme:coreaudio:ca_channel_layout_to_channel_mask Unhandled channel 0xffffffff
012c:fixme:coreaudio:ca_channel_layout_to_channel_mask Unhandled channel 0xffffffff
012c:fixme:coreaudio:ca_channel_layout_to_channel_mask Unhandled channel 0xffffffff
012c:fixme:coreaudio:ca_channel_layout_to_channel_mask Unhandled channel 0xffffffff
012c:fixme:coreaudio:ca_channel_layout_to_channel_mask Unhandled channel 0xffffffff
012c:fixme:coreaudio:ca_channel_layout_to_channel_mask Unhandled channel 0xffffffff
012c:fixme:coreaudio:ca_channel_layout_to_channel_mask Unhandled channel 0xffffffff
012c:fixme:coreaudio:ca_channel_layout_to_channel_mask Unhandled channel 0xffffffff
012c:fixme:coreaudio:ca_channel_layout_to_channel_mask Unhandled channel 0xffffffff
012c:fixme:coreaudio:ca_channel_layout_to_channel_mask Unhandled channel 0xffffffff
012c:fixme:coreaudio:ca_channel_layout_to_channel_mask Unhandled channel 0xffffffff
012c:fixme:coreaudio:ca_channel_layout_to_channel_mask Unhandled channel 0xffffffff
012c:fixme:coreaudio:ca_channel_layout_to_channel_mask Unhandled channel 0xffffffff
012c:fixme:coreaudio:ca_channel_layout_to_channel_mask Unhandled channel 0xffffffff
012c:fixme:coreaudio:ca_channel_layout_to_channel_mask Unhandled channel 0xffffffff
012c:fixme:d3d:wined3d_query_vk_create Unhandled query type 0x4.
0180:fixme:vulkan:wine_vkAllocateMemory Using VK_EXT_external_memory_host
0180:fixme:d3d:wined3d_sampler_vk_cs_init Unhandled srgb_decode 0.
0180:err:msvcrt:_wassert (L"!status && \"vkCreateGraphicsPipelines\"",L"/Users/gcenx/Documents/GitHub/wine/dlls/winevulkan/loader_thunks.c",2861)
0180:fixme:msvcrt:__clean_type_info_names_internal (10332F0C) stub
0180:fixme:msvcrt:__clean_type_info_names_internal (7842E65C) stub
0180:fixme:msvcrt:__clean_type_info_names_internal (64222018) stub
0180:fixme:msvcrt:__clean_type_info_names_internal (60345094) stub
0180:fixme:msvcrt:__clean_type_info_names_internal (64209A88) stub
0180:fixme:msvcrt:__clean_type_info_names_internal (790B22CC) stub
0180:fixme:msvcrt:__clean_type_info_names_internal (7A3BEC7C) stub
Is this simply because WineVulkan ran something that is not implemented? Or did I miss some settings? Is there any other way to make DX9 run smoothly?
Locked