NINJA GAIDEN 3: Razor's Edge

Will not start at all: "Insufficient VRAM. Please close all running applications." It is a Direct3D 9 title and CrossOver's DXVK cannot create a Vulkan device for it. Needs d9vk plus winevideo's DirectShow filters, applied to this executable only.

What you see

Will not start: "Insufficient VRAM. Please close all running applications."

Why it happens

It is Direct3D 9 only, and CrossOver's DXVK cannot create a Vulkan device on MoltenVK, which offers neither transformFeedback nor timelineSemaphore. Its ASF movies never start because Wine's ASF Reader blocks the audio behind the video.

What the fix changes

Four DLLs in the prefix's system32 for this executable only: d9vk for Direct3D 9, and winevideo's qasf, quartz and winegstreamer for the movies. The prefix's own copies are kept aside.

The code

The four DLLs go into the prefix's system32, its own copies kept aside, and Wine is told to load them for this game's executable only; each override is read back rather than assumed.

fixes/install-ng3-fix.sh, lines 483–503
bash
for d in $DLLS; do
  s="$(src_for "$d")" || { echo "error: $d is not beside this script" >&2; exit 1; }
  # Only the prefix's own file is kept aside: ours, from an earlier install,
  # is not an original to put back.
  if [ -f "$SYS/$d" ] && [ ! -f "$SYS/$d.mgvf-stock" ] && ! cmp -s "$SYS/$d" "$s"; then
    mv "$SYS/$d" "$SYS/$d.mgvf-stock"
  fi
  cp "$s" "$SYS/$d"
  echo "  $d  <- ${s#$HOME/}"
done

if [ -n "$PFX" ]; then
  for n in d3d9 qasf quartz winegstreamer; do
    # Written and then read back, as below for a bottle.
    if ! user_reg_edit "$PFX" set "$REG_KEY" "*$n" "native,builtin" \
       || ! user_reg_has_value "$PFX" "$REG_KEY" "*$n"; then
      echo "error: could not write the override for $n into $PFX/user.reg" >&2
      exit 1
    fi
  done
  echo "  overrides written for this executable only, into the prefix's user.reg"

Thanks to

  • winevideoFound why the movies never start (Wine's ASF Reader blocks its audio behind the video) and built the patched qasf, quartz and winegstreamer the fix installs (LGPL-2.1-or-later).
  • d9vk by Sikarugir-AppThe Direct3D 9 the game runs on (zlib).

Details

Needs
DXVK (d9vk), in a prefix
Installer
install-ng3-fix.sh
Executable
NINJA GAIDEN 3 Razor's Edge.exe
Verified on
A patched CrossOver Preview 27 (27.0.0.40921), 2026-08-28

The full story, with the measurements and the wrong turns