Ophidon 7b711214a7
Slang Subframe Shaders Feature (#16209)
Adds support for sub-frame shaders to vulkan/glcore/dx10-11-12.

Builds on the concept already present for frame duplication in use for BFI, to present multiple 'sub' frames per real frame to the shaders, so they can run at a higher framerate than the content framerate. Must be enabled via subframe shaders setting under synchronization settings to be active.

Will allow BFI to be implemented inside of the shaders, among any other use for the higher framerate shader authors can devise.

CurrentSubFrame and TotalSubFrames have been available inside the shaders to track what they want to do on an given subframe. TotalSubFrames will always be 1 when the setting is disabled (and when in menu/ff/pause). Framecount will not increment on sub-frames, as it does not for injected bfi frames now. Should not interfere with any existing shaders that do not check for subframes.
2024-02-09 03:12:55 -08:00
..
2020-06-21 19:03:09 +03:00
2020-06-30 15:20:30 +03:00
2020-06-30 15:20:30 +03:00
2020-06-30 15:20:30 +03:00
2020-06-30 15:20:30 +03:00
2020-06-30 15:20:30 +03:00
2020-06-22 19:35:14 +03:00
2024-02-05 00:12:07 +00:00
2024-01-23 00:12:59 +00:00
2024-01-26 00:12:10 +00:00
2024-01-23 00:12:59 +00:00
2024-02-05 00:12:07 +00:00
2024-02-05 00:12:07 +00:00
2024-02-05 00:12:07 +00:00
2024-01-23 00:12:59 +00:00
2024-01-23 00:12:59 +00:00
2024-02-06 00:11:42 +00:00
2024-01-23 00:12:59 +00:00
2024-01-30 00:11:30 +00:00
2023-12-05 00:11:33 +00:00
2024-02-06 00:11:42 +00:00
2024-01-23 00:12:59 +00:00
2024-02-07 00:11:07 +00:00
2024-02-05 00:12:07 +00:00
2024-01-23 00:12:59 +00:00
2024-01-23 00:12:59 +00:00
2024-01-23 00:12:59 +00:00
2024-02-09 00:11:17 +00:00
2024-02-05 00:12:07 +00:00
2024-02-06 00:11:42 +00:00
2024-02-09 00:11:17 +00:00
2024-02-05 00:12:07 +00:00
2023-12-05 00:11:33 +00:00
2024-01-23 00:12:59 +00:00
2024-01-23 00:12:59 +00:00
2023-12-05 00:11:33 +00:00
2023-12-05 00:11:33 +00:00
2024-02-05 00:12:07 +00:00
2023-12-05 00:11:33 +00:00
2024-02-08 00:11:21 +00:00
2023-12-05 00:11:33 +00:00
2024-01-23 00:12:59 +00:00
2024-01-23 00:12:59 +00:00
2024-01-23 00:12:59 +00:00
2024-02-06 00:11:42 +00:00
2024-01-23 00:12:59 +00:00
2024-01-23 00:12:59 +00:00
2024-01-23 00:12:59 +00:00
2024-02-09 00:11:17 +00:00
2023-04-27 00:12:10 +00:00
2022-02-22 00:09:41 +00:00
2023-03-28 00:12:21 +00:00
2022-02-22 00:09:41 +00:00
2022-02-22 00:09:41 +00:00
2022-02-22 00:09:41 +00:00
2022-02-27 00:10:40 +00:00
2022-02-22 00:09:41 +00:00
2022-02-22 00:09:41 +00:00
2022-04-05 00:10:01 +00:00
2022-02-22 00:09:41 +00:00
2022-05-08 00:12:15 +00:00
2022-02-22 00:09:41 +00:00
2022-02-23 00:09:57 +00:00
2022-02-22 00:09:41 +00:00
2022-02-23 00:09:57 +00:00
2022-02-22 00:09:41 +00:00
2022-02-22 00:09:41 +00:00
2022-02-22 00:09:41 +00:00
2022-11-02 00:13:41 +00:00
2023-03-13 00:12:32 +00:00
2022-02-22 00:09:41 +00:00
2024-01-23 00:12:59 +00:00
2023-01-25 00:11:53 +00:00
2022-02-22 00:09:41 +00:00
2022-10-11 00:18:14 +00:00
2022-02-22 00:09:41 +00:00
2022-02-22 00:09:41 +00:00
2023-05-15 00:11:26 +00:00
2022-02-22 00:09:41 +00:00
2023-10-10 00:11:15 +00:00
2022-02-22 00:09:41 +00:00
2022-02-22 00:09:41 +00:00
2023-08-20 00:11:22 +00:00
2022-02-22 00:09:41 +00:00
2022-11-10 00:14:31 +00:00
2022-02-21 20:11:25 +01:00
2022-04-02 00:09:55 +00:00
2023-05-16 00:11:26 +00:00

Internationalization Workflow

For Translators

Use Crowdin

  1. Register user account at https://crowdin.com/
  2. Join the project https://crowdin.com/project/retroarch/
  3. Select your language to translate
  4. Click the file name msg_hash_us.json and the editor should open
  5. Select an untranslated (red) string from the list
  6. Type translation and save
  7. Next string...

Links:

Request New Language

You can open a new issue and @guoyunhe to add new language.

For Maintainers

Set Up

Install Java, Python3 and Git

Synchronize

cd intl
python3 crowin_sync.py

Manage Crowdin Project

  1. You need to be project admin. Please contact @guoyunhe or @twinaphex
  2. Go to https://crowdin.com/project/retroarch/settings
  3. You can manage languages, members etc. here

Links:

Message File Format

  1. Must NOT contain #else
  2. Must NOT have multiple-line string syntax
    // bad
    MSG_HASH(
      MENU_ENUM_SUBLABEL_CHEEVOS_ENABLE,
      "Compete to earn custom-made achievements in classic games.\n"
      "For more information, visit http://retroachievements.org"
      )
    // good
    MSG_HASH(
      MENU_ENUM_SUBLABEL_CHEEVOS_ENABLE,
      "Compete to earn custom-made achievements in classic games.\nFor more information, visit http://retroachievements.org"
      )
    
  3. Must NOT contain lowercase letters in key name
    // bad (x)
    MSG_HASH(
      MENU_ENUM_LABEL_VALUE_CTR_VIDEO_MODE_2D_800x240,
      "2D (High Resolution)"
      )
    // good (X)
    MSG_HASH(
      MENU_ENUM_LABEL_VALUE_CTR_VIDEO_MODE_2D_800X240,
      "2D (High Resolution)"
      )
    

Add New Languages

  1. Go to Crowdin and add the language
  2. Run Crowdin script to download new translations
  3. Add new language into menu (see #10787)