![]() |
CriWare Unreal Engine
Plug-ins for CriWare solutions.
|
The word Cue sheet has come up many times in the lessons so far, but what exactly is a Cue sheet?
In CRIWARE SDK, a unit of audio playback is called a Cue. A Cue contains multiple tracks, and each track can contain multiple materials (audio waveform data). These are designed on AtomCraft.
An object that aggregates multiple Cue . The audio File for each Cue sheet are Output as one File (.acb). Cue sheets are designed on AtomCraft.
It is up to the user (mainly the Sound designer ) to decide what kind of Cue are grouped into one Cue sheet.
For example, it is common to have one Cue sheet for each map in the game.
In this case, map-specific environmental sounds etc. are implemented as separate Cue and belong to one Cue sheet.
In addition, dialog lines and system menu SE groups for each major character may be combined into a single Cue sheet such as "CharacterHoge" or "SystemMenuSE."
In addition to ease of understanding as a group of sounds, memory usage is also a design indicator for such Cue sheets.
Basically, Cue sheets are loaded in units of cue sheets, so even if a Cue sheet contains unnecessary Cue in a certain situation, that amount of memory will always be consumed.
Although it will require more management effort, it may be easier to tune memory performance by dividing the Cue sheet into smaller pieces.
An ACB File is a File (.acb) Output by CRI Atom Craft. One is Output for each Cue sheet.
When we simply refer to " ACB data " in this tutorial, we are not referring to the ACB File itself, but to the entire information stored in this File .
These are assets generated when you import an ACB File.
One Atom Cue Sheet asset is saved as an asset File(.uasset).
This .uasset File contains the contents of the ACB File. In other words, the Atom Cue Sheet asset File contains the ACB File.
A C++ class that represents an Atom Cue Sheet asset.
It has various properties and functions for handling Cue sheet information .
This is an asset that has a one-to-one relationship with the Cue in the Cue sheet. Basically, these are not saved individually as asset File (.uasset). When playing a particular audio (Cue), you need to pass a reference to the corresponding Atom Cue asset to the CRI API.
To play a Cue, you must load the Cue sheet associated with it. "Load" here means loading the Cue sheet into the CRI UE Plugin.
Specifically, both of the following conditions must be met:
1.Atom Cue Sheet asset loaded 2.Cue sheet is loaded (ACB data in Atom Cue Sheet asset is loaded)
Please Attention that the two are strictly different. The former means that Unreal Engine's asset loading mechanism expands the contents of the .uasset into memory and makes it available on the system.
On the other hand, the latter means that the ACB data has been loaded into the library by the CRI UE Plugin mechanism.
If a Cue playback command is issued before the Cue sheet has been loaded, steps 1 and 2 above are implicitly implemented inside the CRI UE Plugin. This mechanism makes it possible to play Cue without having to be aware of the Cue sheet.
Playback is possible without being aware of the loading state, but you can manage the lifetime of Cue sheet resources.
This management can be set from "Loading" in the Atom Cue Sheet asset details.
The value set in atom.streamcache.DefaultSoundBankLoadingBehavior will be applied.
The Cue sheet is loaded when the asset is loaded, and the lifetime is controlled on the Unreal Engine side.
If the user specifies read, the Cue sheet will be loaded if necessary at the playback timing of orAtomComponent etc.
Cue sheet resources are not destroyed after the Cue sheet is discard destroy until the Atom Cue Sheet asset is discard destroy.
(Unloading assets = unloading Cue seeds)
The Cue sheet will be loaded when the asset is read .
Therefore, the loading is already done at the time of playback, so playback can be performed with 0 latency.
If the user specifies read, the Cue sheet will be loaded if necessary at the playback timing of orAtomComponent etc.
Therefore, if you try to play the Cue sheet before it is loaded, it will take some time until the cue sheet is loaded.
THIS SERVICE MAY CONTAIN TRANSLATIONS POWERED BY GOOGLE. GOOGLE DISCLAIMS ALL WARRANTIES RELATED TO THE TRANSLATIONS, EXPRESS OR IMPLIED, INCLUDING ANY WARRANTIES OF ACCURACY, RELIABILITY, AND ANY IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.