Pull to refresh

Comments 97

>> IE за браузер не считаем

Дальше не читал.
хорошо, что не:

> >> Кубик Рубика
>
> Дальше не читал.
Пора переходить на что-то нормальное а не зацикливаться на старом.
UFO just landed and posted this here
Меня всегда удивляло — какое другим людям дело, какой у меня браузер? Кому какое дело, на каком языке я пишу? Кому какое дело, какая у меня ОС?
Так нет же, всегда находятся такие, кто будет кричать — ставь файрфокс! Ставь оперу! Ставь Виндоуз! Линух форева!
Личный вопрос можно? Какое вам дело, что у кого-то стоит IE? Лично мне нет до этого никакого дела.
на этот раз пятницо явилось в образе Кубика Рубика:)
UFO just landed and posted this here
Цвета легко настраиваются. Скажите шесть хороших цветов в формате #rrggbb, я заменю :-)
Используйте оригинальные цвета кубика.
Красный: #FF0000
Оранжевый: #FF8000
Жёлтый: #FFEB00
Белый: #FFFFFF
Синий: #0000FF
Зелёный: #00DC00
И не забудьте:
Белый напротив желтого,
Синий напротив зеленого,
Красный напротив оранжевого.
И с одной стороны видны белый, синий и красный так, что белый сверху, синий справа, а красный слева.

Так будет максимально верно.
Сделал, только зелёный поставил сильно темнее. А то приведённые цвета — пытка для дихроматов :-) У меня вроде был в детстве кубик с тёмно-зелёным.
UFO just landed and posted this here
Градиенты отключаются кнопкой Flat над кубиком.
UFO just landed and posted this here
Вебсторейдж тут не гуд вариант. Его надо юзать разве что на действия в сессию. Сохранение должно быть именно на сервере, иначе пришел с работы дамой и Бааа! жди понедельника.
UFO just landed and posted this here
а что их синхронизировать? запомнили на сервере id юзера + текущее расположение блоков.
UFO just landed and posted this here
энд? какое страшное слово… наверное это будет первый сайт в интернете с «авторизацией».

нашли чем ежа пугать.
UFO just landed and posted this here
Можно просто кодировать статус в строчку, которую человек может закинуть себе на флэшку или переслать по е-мейлу и потом назад вставить в поле для загрузки. Не хочется добавлять к этому сервер-сайд код.
тогда прямая дорога к мошенничеству =) на клиентсайде реализовать сколь-нибудь действенную защиту нереально.
Ну это не тот случай, чтобы защита нужна была. Чемпионат по сборке кубиков онлайн? :-) Программы должны помогать людям, даже если человек хочет читерить :-)
UFO just landed and posted this here
почему бы и нет?
сделать сайт с авторизацией, рекордами и соревнованиями (как мелькавший тут тетрис), и с вашим «рубик-движком» :)
у меня прочиталось «пришел с работы дáмой» — долго думал :)
UFO just landed and posted this here
шикарно, а из Shuffle (animated) при 11x11 вообще можно скринсейвер делать
Спасибо, в детстве небыло, хоть сейчас покручу
Что-то по-моему перспектива — наоборот, задняя стенка больше передней.
визуальный эффект. Глаз привык к перспективе.
Да нет, не визуальный, вот посмотрите например на стандартное положение кубика, верхние грани, левая и правая не параллельны, ну и если кубик повернуть фронтально — то задняя стенка немного — но выпирает.
Правда-правда визуальный эффект :-)
Я даже в графическом редакторе проверил… и правда визуальный эффект… жуть :)
Вы знаете, я не поверю, что человек осознанно программировал обратную перспективу. А то, что аксонометрия дает легкий эффект обратной перспективы — общеизвестно.
Человек вполне себе осознанно может ошибаться :) в том числе при реализации перспективы.
Это ж как нужно ошибиться? ;) Это из разряда:
— Что вы делаете в моей машине?
— Ой, я просто ошибся и сел не в свою!
;)

ЗЫ Undo после Shuffle прикольно работает ;)
Просто изометрия. То, что задняя грань такая же по длине как передняя можно легко проверить.
Для IE есть excanvas(http://code.google.com/p/explorercanvas/), IE9 превью умеют работать с канвасом — почему бы и не допилить?
Написал же — лень :-) Я знаю про excanvas и использовал её.
перспективу бы не изометрическую и все было бы отлично :)
Еще бы, для ленивых владельцев разобранного кубика, сделать инструмент для быстренькой пошаговой сборки :)
Кнопка shuffle кладёт вращения в undo-буфер. Поэтому можно после shuffle нажать 50 раз undo, и кубик вернётся в исходное состояние =)
Управление — лучшее из тех, что я видел (и делал:)).
Единственное, надо перспективу сделать, чтоб во время поворота самого кубика мозг не нагревался и будет великолепно.
Ах, да забыл, вращение кубика шифтом неудобно, идеально, когда всё ложится на мышь, например вместо зажатия шифта можно сделать зажатие правлй кнопки (всё равно не используется)
Сделал. На вебе обычно не стоит закладываться на правую кнопку (к примеру, пользователь может запретить переопределять контекстно меню в опциях Javascript). Кроме того есть мако-юзеры без правой кнопки :-) Так что я оставил шифт как альтернативу.
у оперы на «зажатая правая кнопка+движение влево-вправо» повешены гестуры, т.е. взад-вперед по истории страниц можно бегать. Повернул Ваш кубик влево, отпустил правую кнопку и обратно на хабр попал :)

так, что шифт очень даже нужен.
lany — искренне восхищаюсь ;)
сколько вы потратили времени если не секрет?
Пару дней с перерывами. Чистого времени — не знаю… Часов 15, может…
перспективную проекцию бы. делается просто, плюсов — много.
Самый простой способ: снять на видео «Shuffle (animated)» и прокручивая обратно — решить головоломку.
Даешь высокие технологии! :)
Нажмите после shuffle (необязательно animated) кнопку undo 50 раз (можно быстро подряд) и наслаждайтесь =)
UFO just landed and posted this here
UFO just landed and posted this here
Сделал, но у меня не было такой проблемы. Посмотрите, помогло ли :-)
UFO just landed and posted this here
А, вы про эти команды. Я думал, про мышиные эвенты на самом канвасе. Сейчас лучше?
UFO just landed and posted this here
Ну если подскажете, что дописать, то допишу :-)
404.
Там есть кнопки zoomIn/zoomOut. Может, вы их случайно нажали?
Сорри, сейчас будет.
Ага, интересная бага. После последней модификации вращения в матрице преобразований стала накапливаться погрешность. Сделал нормализацию матрицы, спасибо.
автор, добавьте заголовок HTML5 doctype html и ie9 автоматом переключится в режим поддержки стандартов и все заработает
да, все работает, спасибо
Спасибо автору, поразмялся немного. К управлению, действительно, привыкаешь довольно быстро.

Так этот-то из полностью собранного делается в 4 поворота :)
UFO just landed and posted this here
Небольшая проблема: shuffle иногда крутит один и тот же слой несколько раз подряд в разных направлениях.
Я знаю. Ну пускай, вам что ли жалко? :-) Если кажется, что замес недостаточно сложный, нажмите шаффл ещё раз :-)
Не жалко. Клевая игрушка:)
А вот это мне точно слабо о_О
Насколько я понимаю, это делается аналогично схемам K11-K13 из алгоритма 5×5, любой из которых будто бы естественно расширяется на любые внутренние кубики. Но выглядит красиво, да :-)
Я ничего, кроме как 2x2x2 и 3x3x3, не пробовал ни разу.
За что Вам ещё раз отдельное спасибо — сейчас кручу 4x4x4 :)
Да я тоже на своей программе большие размеры впервые попробовал :-) Теперь хочу уже купить хардварный 5×5 =)
Это собирается так же, как и окошки выше.
1) Любой центральный синий слой вращаем в сторону белого
2) Любой красный в сторону белого
3) Синий обратно
4) Красный обратно
В результате 4 поворотов получаем 1 синий «пиксель» на белом фоне.
Аналогично можно собрать любую двухцветную картинку. За это я и люблю многомерные кубики. Жаль у меня только 7*7*7 есть, уже хочу 11*11*11 и больше. )
А-а, блин, точно! Спасибо :)
я нажал Shuffle (animated), потом понял, что это надолго, и нажал Shuffle (fast)
он сработал, но Shuffle (animated) продолжился :)
есть ли способ остановить/отменить Shuffle (animated)?
Есть. Надо нажать Reset :-)
Можно написать отдельную функцию в три строчки, которая очистит очередь анимации.
я имел в виду — остановить без ресета, с сохранением уже имеющегося Shuffle
интуитивно я нажал Shuffle (fast) именно затем, чтоб Shuffle (animated) прекратился

на самом деле — это всё плюшки :)
сделано супер!
Меня предыдущие посты сподвигли на написание on-line решалки для кубика. Пока программа показывает только процесс решения по пунктам. Теперь думаю, как бы визуализировать процесс, чтобы показывала что-то типа видео-ролика с поворотами граней.
Ну если вы на JS пишете, то прикручивать решатель к моему коду совсем несложно. Загоняйте очередную комбинацию в cube.addSliceRotation, затем ждите, пока cube.animationQueue не опустеет, тогда продолжайте. Текущее состояние кубика в cube.state[грань][номер_элемента], взаимное расположение граней в cube.neighbors. Можно прикрутить к анимации callback, чтобы после завершения текущей анимации управление назад переходило к решателю.
Надо будет попробовать.
UFO just landed and posted this here
Sign up to leave a comment.

Articles