Crée la couche plein écran à laquelle les contrôles d'interface sont ajoutés, dessinée sur tout le canevas
devant la scène quand foreground est vrai ; adaptiveScaling met la couche à l'échelle de la
densité de pixels de l'écran.
Le nom, l'indicateur de premier plan et l'indicateur de mise à l'échelle adaptative
La texture d'interface plein écran
const ui = bitbybit.babylon.gui.advancedDynamicTexture.createFullScreenUI({ name: "ui", foreground: true, adaptiveScaling: false });
const panel = bitbybit.babylon.gui.stackPanel.createStackPanel({ name: "panel", isVertical: true, spacing: 8, width: "300px", height: "400px", color: "#00000000", background: "#00000055" });
ui.addControl(panel);
Crée une texture d'interface plaquée sur un maillage, de sorte que les contrôles qui y sont ajoutés apparaissent sur la surface du maillage dans la scène ; le maillage a besoin de coordonnées de texture, un plan étant le choix habituel.
width et height dimensionnent la texture en pixels, supportPointerMove permet aux contrôles de réagir au
survol, et onlyAlphaTesting la dessine sans mélange.
Le maillage, la taille de la texture, les options de pointeur, d'alpha, de retournement et d'échantillonnage
La texture d'interface sur le maillage
const plane = bitbybit.babylon.meshBuilder.createRectanglePlane({ width: 4, height: 2, sideOrientation: Bit.Inputs.BabylonMesh.sideOrientationEnum.doubleside, enableShadows: false });
const ui = bitbybit.babylon.gui.advancedDynamicTexture.createForMesh({ mesh: plane, width: 1024, height: 512, supportPointerMove: true, onlyAlphaTesting: false, invertY: true, sampling: Bit.Inputs.BabylonTexture.samplingModeEnum.trilinear });
La surface sur laquelle les contrôles de l'interface sont dessinés : une couche plein écran sur le canevas, ou une texture appliquée sur un maillage pour que les contrôles se trouvent dans la scène 3D. Chaque contrôle doit être ajouté à l'une d'elles, directement ou par un conteneur, avant de s'afficher.