 |
Болтовня Разговоры на любые темы (думайте, о чем пишите) |
09.12.2012, 23:53
|
#1606
|
Элита
Регистрация: 16.01.2010
Адрес: Новосибирск
Сообщений: 2,158
Написано 502 полезных сообщений (для 1,012 пользователей)
|
Ответ: Кто какую игру делает? Скрины
Имхо согласен с Mr_F_, центральная более подходит для по стилю, да и выглядит получше обоих.
|
(Offline)
|
|
10.12.2012, 00:01
|
#1607
|
Разработчик
Регистрация: 20.02.2010
Сообщений: 397
Написано 173 полезных сообщений (для 565 пользователей)
|
Ответ: Кто какую игру делает? Скрины
Сообщение от Костян
Имхо согласен с Mr_F_, центральная более подходит для по стилю, да и выглядит получше обоих.
|
Костян у тебя с головой всё в порядке?
|
(Offline)
|
|
10.12.2012, 00:07
|
#1608
|
ТЫ ЧООО?
Регистрация: 26.02.2007
Сообщений: 3,369
Написано 2,020 полезных сообщений (для 7,192 пользователей)
|
Ответ: Кто какую игру делает? Скрины
Phyton крюта!
Когда дерево заваливается оно ещё должно пружинить на листве
__________________
Вертекс в глаз или в пиксель раз?
|
(Offline)
|
|
Эти 2 пользователя(ей) сказали Спасибо ARA за это полезное сообщение:
|
|
10.12.2012, 00:11
|
#1609
|
Разработчик
Регистрация: 20.02.2010
Сообщений: 397
Написано 173 полезных сообщений (для 565 пользователей)
|
Ответ: Кто какую игру делает? Скрины
Сообщение от ARENSHI
Phyton крюта!
Когда дерево заваливается оно ещё должно пружинить на листве
|
Спасибо! Да я это хочу сделать, но думаю будет упираться в производительность, я поразмышляю над этим.
|
(Offline)
|
|
10.12.2012, 00:30
|
#1610
|
ТЫ ЧООО?
Регистрация: 26.02.2007
Сообщений: 3,369
Написано 2,020 полезных сообщений (для 7,192 пользователей)
|
Ответ: Кто какую игру делает? Скрины
упираться в производительность
|
Щито? Если у тебя дерево падает с помощью RotateEntity, то просто когда дерево достигает земли вращать его в обратную сторону, а потом в другую а потом ещё раз в обратную.
__________________
Вертекс в глаз или в пиксель раз?
|
(Offline)
|
|
Эти 2 пользователя(ей) сказали Спасибо ARA за это полезное сообщение:
|
|
10.12.2012, 00:34
|
#1611
|
Бывалый
Регистрация: 17.12.2011
Сообщений: 862
Написано 443 полезных сообщений (для 1,133 пользователей)
|
Ответ: Кто какую игру делает? Скрины

Ващщее!
Сообщение от Phyton
Шаблон нового Вторжения, пока показываю без ботов, тестовый набросок.
Заодно проверил как снимает камера на моем XPERIA P
|
|
(Offline)
|
|
Сообщение было полезно следующим пользователям:
|
|
10.12.2012, 01:03
|
#1612
|
☭
Регистрация: 26.09.2006
Сообщений: 6,035
Написано 1,474 полезных сообщений (для 2,707 пользователей)
|
Ответ: Кто какую игру делает? Скрины
Phyton, освещение дыма клево выглядит. как делал?
|
(Offline)
|
|
Сообщение было полезно следующим пользователям:
|
|
10.12.2012, 01:17
|
#1613
|
Разработчик
Регистрация: 20.02.2010
Сообщений: 397
Написано 173 полезных сообщений (для 565 пользователей)
|
Ответ: Кто какую игру делает? Скрины
Сообщение от HolyDel
Phyton, освещение дыма клево выглядит. как делал?
|
Это обычный спрайт  дело в том, что в Ксорсе спрайты работают со стандартным освещением.
|
(Offline)
|
|
11.12.2012, 22:17
|
#1614
|
.
Регистрация: 05.08.2006
Сообщений: 10,429
Написано 3,454 полезных сообщений (для 6,863 пользователей)
|
Ответ: Кто какую игру делает? Скрины
Замутил теньки за два рабочих дня.
Один раз пришлось переписать и отработать функции пересечений т.к. там есть мелкие тонкости с артефактами, но вроди все поборол.
Тут никаких оптимизаций, так что не ругаемся на фпс - рисует тени для всех кастеров в радиусе источника света.
Тестировал только на Android, Firefox, Chrome (он рулит по производительности). На другие броузеры мне посрать.
Ссылка потестить: http://moka.co/shadows/

|
(Offline)
|
|
Эти 12 пользователя(ей) сказали Спасибо moka за это полезное сообщение:
|
den (11.12.2012), devolonter (12.12.2012), dsd (14.01.2013), FREE MAN (12.12.2012), HolyDel (11.12.2012), Hurrit (12.12.2012), m_512 (11.12.2012), pax (11.12.2012), pepel (11.12.2012), SBJoker (12.12.2012), St_AnGer (11.12.2012), Wegox (12.12.2012)
|
11.12.2012, 22:19
|
#1615
|
Мастер
Регистрация: 23.09.2009
Адрес: ленобласть
Сообщений: 1,189
Написано 447 полезных сообщений (для 2,526 пользователей)
|
Ответ: Кто какую игру делает? Скрины
Сообщение от MoKa
Замутил теньки за два рабочих дня.
Один раз пришлось переписать и отработать функции пересечений т.к. там есть мелкие тонкости с артефактами, но вроди все поборол.
Тут никаких оптимизаций, так что не ругаемся на фпс - рисует тени для всех кастеров в радиусе источника света.
Тестировал только на Android, Firefox, Chrome (он рулит по производительности). На другие броузеры мне посрать.
Ссылка потестить: http://moka.co/shadows/
|
круто. по какому принципу это все делается. всегда было интересно
|
(Offline)
|
|
11.12.2012, 22:47
|
#1616
|
.
Регистрация: 05.08.2006
Сообщений: 10,429
Написано 3,454 полезных сообщений (для 6,863 пользователей)
|
Ответ: Кто какую игру делает? Скрины
Сообщение от pepel
круто. по какому принципу это все делается. всегда было интересно
|
Я рассмотрел много вариантов, и для меня самый гибкий вариант - это логика и простейшие пересечения отрезков.
По сути есть кастер (отрезок, линия). И есть источник света имеющий радиус. Исходя из радиуса мы рисуем квадрат вокруг. Далее проверяем на пересечение боундинг боксов источника света и отрезков, далее если они пересекаются, проверяем дальне на пересечение всех боков бокса света с кастером. Находим все точки пересечения. Есть сценарий когда все точки кастера в боксе и не пересекаются с боксом света. Иногда пересечение одно, а иногда их два.
Исходя из разницы пересечений уже идёт разделение логики по категориям.
Далее исходя из категорий, проводим новые отрезки на пересечения с боксом света - это края теней. Исходя из боков с которыми пересекается, и точек пересечения кастера, в некоторых сценариях есть разные под категории.
Например бывает 1 угол в тени, бывает 2. Бывает ни одного. Для каждой категории и суб категории отрисовка идёт чуток по разному.
Вся сложность теней в нахождении этих всех сценариев.
PDF в приложении, я делал давно исследование всех сценариев. И решил написать тени на canvas. Делал их ранее на другом движке, но там были баги. Тут же подошёл серьёзнее, и провёл две итерации с рефакторингом, в результате пашет как надо.
Тут в PDF описываются дополнительные сценарии когда источник света бывает не посередине самого квадрата источника света. Это бывает если квадрат ограничивается самим экраном для оптимизации. Я сделал без, т.к. было лень описывать доп. сценарии. Да и это очень мелкий прирост. Но всё равно сделаю в будущем.
Что нужно будет ещё сделать, это строить сперва массив кастеров в радиусе источника света, и затем уже делать проверку начиная с самых близких. Далее проверять если каждый последующий не перегораживается ранее обработанными - это не так и просто будет замутить, но даст огромный прирост в indoor ситуациях, где много деталей за стенками.
Можно прикрутить также порталы сюда.
А ещё НУЖНО прикрутить octree или т.п. для поиска отрезков.
|
(Offline)
|
|
Сообщение было полезно следующим пользователям:
|
|
11.12.2012, 22:53
|
#1617
|
☭
Регистрация: 26.09.2006
Сообщений: 6,035
Написано 1,474 полезных сообщений (для 2,707 пользователей)
|
Ответ: Кто какую игру делает? Скрины
смысл жаловаться на фпс, если он тобой и ограничен на 60. давай снимай ограничения, чтобы железом мериться))
а так все круто, работает быстро и правильно, уважаю.
|
(Offline)
|
|
Сообщение было полезно следующим пользователям:
|
|
11.12.2012, 23:04
|
#1618
|
.
Регистрация: 05.08.2006
Сообщений: 10,429
Написано 3,454 полезных сообщений (для 6,863 пользователей)
|
Сообщение от HolyDel
смысл жаловаться на фпс, если он тобой и ограничен на 60. давай снимай ограничения, чтобы железом мериться))
а так все круто, работает быстро и правильно, уважаю.
|
Исправил, теперь шапка - 500.
Тут не только железо, но важнее броузер и версия.
Спасиб.
iMac (2.7 GHz Intel Core i5)
Firefox: 25 - 55
Chrome: 135 - 170
HTC One X: 7 - 9 (stock browser), 3 (Chrome), 7 - 9 (Firefox).
ЗЫ, левел сделал используя Photoshop и написал скрипт на JavaScript.
Всё просто - взял картинку плана замка, растянул на документ такого же размера как и canvas. Далее используя Pen Tool, обрисовал все стены. Далее скрипт пробегается по выделенному слою (хз почему только выделенный слой, но другие не заморачивался искать, т.к. всё сделал в одном слою). И находит все точки Path'а, и генерирует строку JSON, с отрезками. Далее эта строка копи-паститься в исходник для демки, и юзаются данные от туда для генерации линий уровня
Фотожоп рулит, и делать так уровни просто сказка.
В аттаче PSD документ, и вот скрипт для ExtendScript'а чтобы через Photoshop запустить:

#target photoshop
app.bringToFront();
$.level = 1;
if (app.documents.length > 0) { var strtRulerUnits = app.preferences.rulerUnits; app.preferences.rulerUnits = Units.PIXELS;
var doc = app.activeDocument;
var res = 'response\nlines = [\n'; var first = true; for(var l = 0; l < doc.pathItems.length; ++l) { var layer = doc.pathItems[l]; for(var p = 0; p < layer.subPathItems.length; ++p) { var subPath = layer.subPathItems[p]; var pointFirst = null; var pointLast = null; for(var i = 0; i < subPath.pathPoints.length; ++i) { var point = subPath.pathPoints[i]; if (pointLast) { if (first) { first = false; res += ' '; } else { res += ', '; } res += '{ startX: ' + Math.round(pointLast.anchor[0]) + ', startY: ' + Math.round(pointLast.anchor[1]) + ', endX: ' + Math.round(point.anchor[0]) + ', endY: ' + Math.round(point.anchor[1]) + ' }\n'; } pointLast = point; if (!pointFirst) { pointFirst = point; } } res += ', { startX: ' + Math.round(pointLast.anchor[0]) + ', startY: ' + Math.round(pointLast.anchor[1]) + ', endX: ' + Math.round(pointFirst.anchor[0]) + ', endY: ' + Math.round(pointFirst.anchor[1]) + ' }\n'; } }
res += ']\n';
Window.alert(res); }
|
(Offline)
|
|
11.12.2012, 23:07
|
#1619
|
☭
Регистрация: 26.09.2006
Сообщений: 6,035
Написано 1,474 полезных сообщений (для 2,707 пользователей)
|
Ответ: Кто какую игру делает? Скрины
i7 2770K / chrom == 88 fps
Note (stock browser) == 13 fps
Note 2(stock browser) == 20 fps
|
(Offline)
|
|
11.12.2012, 23:09
|
#1620
|
.
Регистрация: 05.08.2006
Сообщений: 10,429
Написано 3,454 полезных сообщений (для 6,863 пользователей)
|
Ответ: Кто какую игру делает? Скрины
Сообщение от HolyDel
i7 2770K / chrom == 88 fps
Note (stock browser) == 13 fps
Note 2(stock browser) == 20 fps
|
Никаких оптимизаций напомню! Да и разрешение самой canvas 720 х 480, когда для моего HTC One X например, оно должно быть 360 х 640. И с мета тагом для зуума.
Думаю на твоём Note 2 можно вытянуть 40 фпс без проблем.
Обновил пост выше.
|
(Offline)
|
|
Ваши права в разделе
|
Вы не можете создавать темы
Вы не можете отвечать на сообщения
Вы не можете прикреплять файлы
Вы не можете редактировать сообщения
HTML код Выкл.
|
|
|
Часовой пояс GMT +4, время: 10:55.
|