@@ -2,5 +2,7 @@ | |||||
1.0.0 | 1.0.0 | ||||
https://git.opengamestudio.org/mahjong/mahjong-scena | https://git.opengamestudio.org/mahjong/mahjong-scena | ||||
/привет|hello.js | |||||
/привет|hello.череда | |||||
/загрузка|loading.js | |||||
/загрузка|loading.череда | |||||
x /пуск|run.js | |||||
/пуск|run.череда |
@@ -0,0 +1,63 @@ | |||||
// // // // | |||||
УведомитьОбОкончанииЗагрузок = мир => | |||||
{ | |||||
мир.уведомить("окончили загрузки"); | |||||
}; | |||||
// // // // | |||||
ЗадатьОтладочнуюТемуФишекДляЗагрузки = мир => | |||||
{ | |||||
мир.темаФишек = "отладочная|debug"; | |||||
}; | |||||
// // // // | |||||
ЗагрузитьОтладочнуюРаскладку = мир => | |||||
{ | |||||
var модуль = мир.модули.модульПоИмени(ИМЯ_ОТЛ_РАСКЛАДКИ); | |||||
var ресурс = "/успех|success.layout"; | |||||
var содержимое = модуль.содержимое[ресурс]; | |||||
мир.раскладкаKMahjongg = { | |||||
"содержимое": содержимое, | |||||
}; | |||||
}; | |||||
// // // // | |||||
ЗагрузитьФишку = мир => | |||||
{ | |||||
var модуль = мир.модули.модульПоИмени(ИМЯ_МОДУЛЯ_РЕСУРСОВ); | |||||
var ресурс = "/фишка.gltf"; | |||||
var адрес = `${window.location.origin}${ресурс}`; | |||||
THREE.Cache.enabled = true; | |||||
THREE.Cache.add(адрес, модуль.содержимое[ресурс]); | |||||
мир.загрузчикGLTF.load( | |||||
адрес, | |||||
function(gltf) { | |||||
// Вычленяем Mesh. | |||||
gltf.scene.traverse(function(ребёнок) { | |||||
if (ребёнок.isMesh) | |||||
{ | |||||
мир.фишка = ребёнок; | |||||
} | |||||
}); | |||||
мир.уведомить("загрузили фишку"); | |||||
}, | |||||
null, | |||||
function(error) { | |||||
console.error("ОШИБКА | ERROR", error); | |||||
} | |||||
); | |||||
}; | |||||
@@ -0,0 +1,11 @@ | |||||
подготовили сцену | |||||
загрузить фишку | |||||
загрузили фишку | |||||
# загрузить раскладку | |||||
загрузить отладочную раскладку | |||||
разобрать раскладку KMahjongg | |||||
разобрали раскладку KMahjongg | |||||
задать отладочную тему фишек для загрузки | |||||
загрузить тему фишек маджонга | |||||
загрузили тему фишек маджонга | |||||
уведомить об окончании загрузок |
@@ -1,7 +0,0 @@ | |||||
ПоприветствоватьМир = function() | |||||
{ | |||||
console.log("Привет, мир!"); | |||||
console.log("Hello, world!"); | |||||
document.body.innerHTML += "<h1>Привет, мир!</h1>"; | |||||
document.body.innerHTML += "<h1>Hello, world!</h1>"; | |||||
}; |
@@ -1,2 +0,0 @@ | |||||
пуск | |||||
поприветствовать мир |
@@ -0,0 +1,41 @@ | |||||
// // // // | |||||
ПодготовитьСцену = мир => | |||||
{ | |||||
var коэффициент = 2; | |||||
var расстояние = 6; | |||||
мир.камера.position.y = расстояние * коэффициент; | |||||
мир.камера.position.z = расстояние; | |||||
мир.камера.lookAt(new THREE.Vector3(0, 0, 0)); | |||||
мир.свет = new THREE.DirectionalLight(0xffffff, 1); | |||||
мир.свет.position.set(-0.5, 1, 0.5).normalize(); | |||||
мир.сцена.add(мир.свет); | |||||
мир.корень = new THREE.Group(); | |||||
мир.сцена.add(мир.корень); | |||||
мир.уведомить("подготовили сцену"); | |||||
}; | |||||
// // // // | |||||
СоздатьЗагрузчикТекстур = мир => | |||||
{ | |||||
мир.загрузчикТекстур = new THREE.TextureLoader(); | |||||
}; | |||||
// // // // | |||||
СоздатьЗагрузчикGLTF = мир => | |||||
{ | |||||
мир.загрузчикGLTF = new THREE.GLTFLoader(); | |||||
}; | |||||
@@ -0,0 +1,11 @@ | |||||
пуск модулей маджонга | |||||
настроить ThreeJS | |||||
встроить отрисовщика ThreeJS | |||||
отслеживать изменение размера окна браузера | |||||
изменить размер отрисовщика ThreeJS | |||||
создать загрузчик GLTF | |||||
создать загрузчик текстур | |||||
подготовить сцену | |||||
запустить отрисовку | |||||
изменили размер окна браузера | |||||
изменить размер отрисовщика ThreeJS |