Извините, ничего не найдено.

Не расстраивайся! Лучше выпей чайку!
Регистрация
Справка
Календарь

Вернуться   forum.boolean.name > Общие темы > Болтовня

Болтовня Разговоры на любые темы (думайте, о чем пишите)

Ответ
 
Опции темы
Старый 18.09.2013, 04:23   #46
mauNgerS
Разработчик
 
Аватар для mauNgerS
 
Регистрация: 10.10.2008
Сообщений: 501
Написано 258 полезных сообщений
(для 670 пользователей)
Ответ: WebGL тесты

ПК хром
58-62
Планшет huawei mediapad fhd - вылетает и в хроме и во встроенном браузере
Телефон LG Optimus II пишет не удалось инициализировать webgl
__________________
(Offline)
 
Ответить с цитированием
Сообщение было полезно следующим пользователям:
Mr_F_ (18.09.2013)
Старый 18.09.2013, 12:16   #47
Mr_F_
Терабайт исходников
 
Аватар для Mr_F_
 
Регистрация: 13.09.2008
Сообщений: 3,947
Написано 2,189 полезных сообщений
(для 6,051 пользователей)
Ответ: WebGL тесты

Также это отрубает скейлинг и т.п.
добавил )

Это нужно для мобилок когда ориентацию меняешь, или некоторые броузеры адрес бар уберают.
у меня есть
			window.onresize = function(e)
			{
				canvas.width = window.innerWidth;
				canvas.height = window.innerHeight;
срабатывает при смене размера окна на винде или вытаскивании снизу консоли. не работает на телефонах?

ну и для проекции матрицу пересчитать
а чёрт, точно, забыл, там же пропорции могут меняться.


Телефон LG Optimus II пишет не удалось инициализировать webgl
хром? попробуй включить weblgl в настройках - напиши в адресной строке chrome://flags и там будет.

-----
Добавил пересчёт проекции после смены разрешения, правда есть подозрение что на мобилках с таким фовом мало в экран влезет теперь.
Так ли это?
__________________
бложик | geom.io | твиттер | faded | демо 1 2 | роботы | лайтмаппер
(Offline)
 
Ответить с цитированием
Старый 18.09.2013, 13:32   #48
mauNgerS
Разработчик
 
Аватар для mauNgerS
 
Регистрация: 10.10.2008
Сообщений: 501
Написано 258 полезных сообщений
(для 670 пользователей)
Ответ: WebGL тесты

Включил, теперь:
Планшет huawei 25-30
Телефон lg 15-20

Тач везде работает.
На huawei при взгляде на розовые цветочки появляются артефакты - вытянутые в разные стороны полигоны, выглядит как ёжик.
__________________
(Offline)
 
Ответить с цитированием
Сообщение было полезно следующим пользователям:
Mr_F_ (18.09.2013)
Старый 18.09.2013, 13:57   #49
moka
.
 
Регистрация: 05.08.2006
Сообщений: 10,429
Написано 3,454 полезных сообщений
(для 6,863 пользователей)
Ответ: WebGL тесты

Сообщение от Mr_F_ Посмотреть сообщение
у меня есть
window.onresize = function(e) {
  canvas.width = window.innerWidth;
  canvas.height = window.innerHeight;
}
срабатывает при смене размера окна на винде или вытаскивании снизу консоли. не работает на телефонах?
а чёрт, точно, забыл, там же пропорции могут меняться.
Не только пропорции меняются что требует пересчёт матрицы проекции, но также и это не будет стабильно работать на всех платформах. Проблема в том что евент onresize на практике срабатывает часто до того как ориентация полностью поменялась и новый размер был присвоен, т.к. смена ориентации обычно сопровождается анимацией.
Есть евент "orientationchange":
window.addEventListener('orientationchange', function() {
  
// ...

Он также будет срабатывать во время ориентации, и значения window.innerWidth = могут часто разводить.
Кстати для ориентации можешь заюзать также window.orientation - это чисто для константы.

Решение я нашёл, небольшой костыль, но не хак:
Заводим элемент вначале всего body:
<div id='ruler'></div
Стиль у него:
#ruler {
  
positionfixed;
  
widthauto;
  
heightauto;
  
left0;
  
top0;
  
right0;
  
bottom0;
  
visibilityhidden;

И далее при onresize, orientationchange а также каждые 200 мс, проверяй его размер (именно этого элемента). Т.к. проверка его размера "насильно" заставит броузер пересчитать размеры (reflow), что выдаст реальные данные:
var bounds ruler.getBoundingClientRect();
if (
bounds.width != oldWidth || bounds.height != oldHeight) {
  
// размер изменился

Я тестировл на куче платформ работает отлично, и реагирует на все евенты.
Заметил что на некоторых платформах нужно на 4 пикселя меньше делать.

Также не забудь указать overflow:hidden в css для body, чтобы предотвратить скроллинг.
(Offline)
 
Ответить с цитированием
Сообщение было полезно следующим пользователям:
Mr_F_ (18.09.2013)
Ответ


Опции темы

Ваши права в разделе
Вы не можете создавать темы
Вы не можете отвечать на сообщения
Вы не можете прикреплять файлы
Вы не можете редактировать сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.


Часовой пояс GMT +4, время: 02:11.


vBulletin® Version 3.6.5.
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Перевод: zCarot
Style crйe par Allan - vBulletin-Ressources.com