由用户创建的信息 Onis
23 July 2015 15:25
19 July 2015 00:26
Жаль что нет ещё такого встроенного функционала, но и то что есть уже весьма хорошо. Осталось только вызывать нужные ограничения в нужное время. С вашими подсказками разобрался как закодить первый и второй вопрос. Обрабатывать ограничения при срабатывании обработчиков событий мышки наверно не самый лучший выход. Наверно стоит переопределить методы камеры hover, которые используются при зуме и повороте, вызываемые при событиях прокрутки колесика и при перетаскивании зажатой правой клавиши мышки(камера hover). Нашел где определяется часть методов модуля камеры /deploy/api_doc/camera.js.html , а вот найти где находится реализация камеры hover мне не удалось. Я надеюсь это не коммерческая тайна и вы сможете назвать какие методы нужно переопределить или где находится реализация камеры hover?
17 July 2015 16:03
Здравствуйте, хотел узнать можно ли у камеры с move style "hover" ограничить углы поворота по горизонтали (Use Horizontal Rotation). 2. И ещё можно ли задать ограничения на передвижение по x y относительно зума. Допустим стоит ограничение Use Horizontal Translation Limits 0 - 4 . Но эти ограничение одинаковые при любом приближении камеры (Use Distance Limits). То есть если я вижу всю сцену при минимальном зуме и могу её немного перемещать по горизонтали, то при максимальном зуме я вижу лишь часть сцены и движение по горизонтали не дают доходит до краев сцены. В идеале бы получить камеру которая на максимальном зуме видит всю сцену и нет перемещения по х у, а по при зумировании появляется возможность перемещать камеру до краев сцены.
16 July 2015 12:10
16 July 2015 02:54
Нет, не только загрузку изображения но и все действия отрисовки в канвасе. Там операции занимают тоже какое-то время. Картинку при желании можно и заранее произвести, у вас есть демо на гитхабе /apps_dev/code_snippets/code_snippets_dev.html?scene=canvas_texture тут загрузка текстур идет после инициализации сцены. Можно ли сделать так, чтобы загрузка текстур происходила во время инициализации сцены
Тут я вас правильно понял. Скорее всего, вам надо будет написать свой прелоудер, завершающийся по окончанию отрисовок в canvas. Для многих демо-преложений мы делаем свои собственные прелоудеры (webplayer, как пример), это не так трудно. Если будут возникать вопросы, их можно задать тут.
Посмотрел webplayer, не совсем понятно как это связано с canvas текстурами. В weblayerе, насколько я понял, оформление прелоадера сделано, а тут несколько другое. Тут же идет речь о подгрузке изображений и их обработке.
Приведу пример кода
function(){
canvas = $.createElement({nodeName:'canvas', width:'4096', height:'4096'});
var ctx_landscape = canvas.getContext('2d');
if (ctx_landscape)
{
var image = new Image();
image.src = 'texture.jpg';
image.onload = function()
{
var pattern = ctx_landscape.createPattern(image,'repeat');
ctx_landscape.fillStyle = pattern;
ctx_landscape.fillRect(0,0,ctx_landscape.canvas.width, ctx_landscape.canvas.height);
ImageFromJpg.getData({type:'pattern', url:'texture2.jpg'},'l2.jpg', function(data)
{
ctx_landscape.drawImage(data, 0, 0);
ImageFromJpg.getData({type:'mask', color:'rgba(0, 0, 0, 0.1)'},'l1.jpg', function(data)
{ ctx_landscape.drawImage(data, 0, 0);
})
})
}
}
}
Речь идет чтобы втулить выполнение этой функции в расчет процентов в update_preloader(percentage) . Я не вижу как могу вмешаться в вычисление процентов. Можно лишь остановить на 100% прелоадер и сделать зависание если не выполнилась функция.
Да сцену можно не открывать пока канвас не сгенерируется, но зависание на 100% это костыль. Речь идет о том можно ли учитывать загрузку изображений для канваса и отрисовку канваса при расчете процентов прелоадера?
Посетила мысль ещё об одном решении, оно меньше напоминает костыль, напишу, может кому пригодится. Можно в update_preloader(percentage) у получаемых процентов отобрать 30% скажем на генерацию канвас текстур, по мере прогресса можно начислять эти 30. Итого на загрузку сцены выделить 70% и на генерацию текстур 30%
Кстати у вас в документации не указан второй параметр update_preloader(percentage, TIME) . Проект забабахали конечно невероятный, молодцы. Жаль только, что мало о нем кто знает, большое бы комьюнити и эти ответы будут сразу в гугл запросах
15 July 2015 22:26
15 July 2015 17:22
15 July 2015 17:20
15 July 2015 15:13
то она не учитывается в прелоадере, когда он пропадает
Вы имеете ввиду загрузку изображения, которое затем будет отрисовываться в canvas'e текстуры?
Тут уже придется производить изменения в загрузке движка. Мы подумаем над этим.
Если все же вам необходима смена текстуры, без использования canvas, то можно воспользоваться нодовой анимацией. Там не возникнет такой проблемы
Нет, не только загрузку изображения но и все действия отрисовки в канвасе. Там операции занимают тоже какое-то время. Картинку при желании можно и заранее произвести, у вас есть демо на гитхабе /apps_dev/code_snippets/code_snippets_dev.html?scene=canvas_texture тут загрузка текстур идет после инициализации сцены. Можно ли сделать так, чтобы загрузка текстур происходила во время инициализации сцены