1
0
mirror of https://github.com/misskey-dev/misskey.git synced 2026-05-27 11:54:32 +02:00
This commit is contained in:
syuilo
2026-04-25 04:19:52 +09:00
parent 3263f4bcc0
commit 1cd6d01fdd
13 changed files with 118 additions and 169 deletions

View File

@@ -93,25 +93,21 @@ export const wallGlassPictureFrame = defineObject({
applySize();
const applyCustomPicture = () => new Promise<void>((resolve) => {
// テクスチャの読み込みに失敗したときの救済
// TODO: 丁寧な実装に直す
setTimeout(() => {
resolve();
}, 10000);
if (options.customPicture != null) {
const tex = new BABYLON.Texture(options.customPicture, scene, false, false);
tex.wrapU = BABYLON.Texture.MIRROR_ADDRESSMODE;
tex.wrapV = BABYLON.Texture.MIRROR_ADDRESSMODE;
pictureMaterial.unfreeze();
pictureMaterial.albedoColor = new BABYLON.Color3(1, 1, 1);
pictureMaterial.albedoTexture = tex;
tex.onLoadObservable.addOnce(() => {
const tex = new BABYLON.Texture(options.customPicture, scene, false, false, undefined, () => {
pictureMaterial.albedoColor = new BABYLON.Color3(1, 1, 1);
pictureMaterial.albedoTexture = tex;
applyFit();
resolve();
}, (message, exception) => {
console.warn('Failed to load texture:', message, exception);
pictureMaterial.albedoColor = new BABYLON.Color3(0, 1, 0);
pictureMaterial.albedoTexture = null;
resolve();
});
tex.wrapU = BABYLON.Texture.MIRROR_ADDRESSMODE;
tex.wrapV = BABYLON.Texture.MIRROR_ADDRESSMODE;
} else {
pictureMaterial.albedoColor = new BABYLON.Color3(0.5, 0.5, 0.5);
pictureMaterial.albedoTexture = null;