v1.19.1

Fast says why in one line, and fits iPhone memory

When Fast can't start on a device, Simulate now says so in one short sentence instead of a block of shader code, and runs the scene on Accurate. Fast also keeps its GPU memory within what iPhone and iPad allow.

If you see the message

Open any Simulate demo with Engine set to Fast. If Fast can't start on your device, the line under Engine reads: Fast isn't available on this device's GPU, so this runs on Accurate. The scene still runs, on Accurate. To tell us what failed, open Technical details under that line (on a phone: Settings, then Engine) and send us the line it shows.

Everything in this release

Fixed

  • When Fast cannot start on a device, Simulate shows one sentence under Engine and in the run bar: "Fast isn't available on this device's GPU, so this runs on Accurate." The scene then runs on Accurate. Before, the notice printed the whole generated shader code.
  • Under that sentence, a collapsed Technical details line names the part of Fast that failed and the first line of the error. It never shows shader code. On a phone it is in the Settings sheet, under Engine.
  • Fast keeps each block of GPU memory within the largest size the device allows. Safari on iPhone and iPad allows at most 1 GB per block, and a water scene at finer sizes used to ask for up to 1.6 GB. Fast now sizes its pressure solve's storage to fit, and stops and says so if a frame ever needs more. On a Mac with Chrome or Safari nothing changes.
  • If a scene is too large for the device's GPU, Simulate says: "This scene is too large for Fast on this device's GPU, so it runs on Accurate."
  • Limit: Fast's demos are checked in WebKit, the browser engine Safari uses, on a Mac. They are not yet confirmed on an iPhone or iPad. If Fast still can't start there, the Technical details line tells us why.

Other improvements

  • When Fast can't start on a device (for example in Safari on an iPhone), Simulate shows one sentence, "Fast isn't available on this device's GPU, so this runs on Accurate.", and runs the scene on Accurate, with a collapsed Technical details line naming what failed. Before, the notice printed the whole generated shader code.
  • Fast keeps each block of GPU memory within what the device allows (at most 1 GB per block in Safari on iPhone and iPad; a water scene at finer sizes used to ask for up to 1.6 GB). A scene too large for the device's GPU runs on Accurate and says so in one line.