Files
mahjong-osnova-base/сцена|scene.js

136 lines
2.8 KiB
JavaScript
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

const ИМЯ = "ОМ | MB";
const БАЗА = "https://git.opengamestudio.org/mahjong/mahjong-modeli-models/raw/branch/master/";
// // // //
УбратьПереворотТекстурыФишки = мир =>
{
мир.текстураФишки.flipY = false;
};
// // // //
ПовернутьФишку = мир =>
{
мир.модельФишки.rotation.x += 0.03;
мир.модельФишки.rotation.y += 0.02;
};
// // // //
Отладка = мир =>
{
console.debug("Отладка", Date());
};
// // // //
ЗапуститьТаймерПоворотаФишки = мир =>
{
setInterval(
function() {
мир.уведомить("поворот фишки");
},
60
);
};
// // // //
ПодготовитьСцену = мир =>
{
мир.камера.position.z = 10;
мир.свет = new THREE.DirectionalLight(0xffffff, 1);
мир.свет.position.set(-0.5, 0.5, 1).normalize();
мир.сцена.add(мир.свет);
};
// // // //
СоздатьФишку = мир =>
{
мир.сцена.add(мир.модельФишки);
var материал = new THREE.MeshLambertMaterial({map: мир.текстураФишки});
мир.модельФишки.traverse(function(ребёнок) {
if (ребёнок.isMesh)
{
ребёнок.material = материал;
}
});
};
// // // //
ЗагрузитьТекстуруФишки = мир =>
{
var текстура = "текстура.png";
var адрес = БАЗА + текстура;
мир.загрузчикТекстур.load(
адрес,
function(текстура) {
мир.текстураФишки = текстура;
мир.уведомить("загрузили текстуру фишки");
},
null,
function(error) {
console.error("ОШИБКА | ERROR", error);
}
);
};
// // // //
СоздатьЗагрузчикТекстур = мир =>
{
мир.загрузчикТекстур = new THREE.TextureLoader();
};
// // // //
ЗагрузитьМодельФишки = мир =>
{
var модель = "фишка.gltf";
var адрес = БАЗА + модель;
console.debug("модель", адрес);
мир.загрузчикGLTF.load(
адрес,
function(gltf) {
мир.модельФишки = gltf.scene;
мир.уведомить("загрузили модель фишки");
},
null,
function(error) {
console.error("ОШИБКА | ERROR", error);
}
);
};
// // // //
СоздатьЗагрузчикGLTF = мир =>
{
мир.загрузчикGLTF = new THREE.GLTFLoader();
};