Этого треда уже нет.
Это копия, сохраненная 10 мая 2020 года.

Скачать тред: только с превью, с превью и прикрепленными файлами.
Второй вариант может долго скачиваться. Файлы будут только в живых или недавно утонувших тредах. Подробнее

Если вам полезен архив М.Двача, пожертвуйте на оплату сервера.
Аркадная стрелялка с видом сверху 525074 В конец треда | Веб
ИТТ я буду пилить аркадную стрелялку с видом сверху для веба в духе старых флэш-игр типа пикрелейтед.

Язык: Haxe
Платформа: Веб
Первая цель: запилить простенький графический движок на вебЖЛ.
Ну чо, народ, погнали, нахуй.
classic.jpg50 Кб, 445x372
2 525102
>>25074 (OP)

>Первая цель: запилить простенький графический движок на вебЖЛ.

3 525222
>>25102
Как же ты меня ловко, кратко и талантливо приложил!
Но тем не менее, самая основа у меня готова, 4 тысячи квадратиков рендерятся в 60-ти фпс, можно еще подшаманить с шейдером, чтобы увеличить производительность, но, думаю, должно и этого хватить. Потом добавлю рендеринг во фреймбуфер и блум, но это будет уже позже.

Следующий шаг: запилить кораблик игрока с управлением передвижением и стрельбой.
2018-09-02 22-01-40.mp4146 Кб, mp4,
800x600, 0:16
4 525655
Сделал передвижение вчера, это оказалось не так-то просто. Ощущается как-то не очень, но это можно будет подправить.

Следующий шаг: первые враги. Для этого понадобится запилить обнаружение коллизий, что будет несколько сложновато, но я справлюсь.
xzibit surprised.jpg53 Кб, 741x487
6 525978
>>25938
Хммм?
7 525989
>>25978 нет времени обьяснять
8 525996
>>25074 (OP)
Уж лучше тогда на Haxe писать pixi.js код с помощью привязок.

У haxe производительность сейчас не сказал бы, что хорошая, если будет много всяких эффектов - придётся заёбываться с производительностью.
9 525997
>>25996

>У haxe


У openfl конечно же, я думаю ты его используешь.
10 526000
>>25997
Нет, я использую велосипед на вебЖЛ. Никакого опенФЛ.
И кстати, я рендерю не квады с текстурами, а линии с помощью GL_LINE_LOOP.
2018-09-07 15-57-05.mp4252 Кб, mp4,
800x600, 0:15
11 526052
Думаю, стоит обновить тред.
Я все еще работаю над обнаружением коллизий. Я аппроксимирую объекты с помощью нескольких кружков и вычисляю их AABB, чтобы добавить их в uniform grid, которая используется для первой фазы collision detection'а.

Пора немного отрефакторить.
12 526053
Ах да, кстати, кто-нибудь знает, почему у меня canvas растянут? Он должен быть размерами 800х600, но почему-то получается 1000х750, в браузере я не приближаю, css не использую.
2018-09-08 22-32-45.mp418,6 Мб, mp4,
800x600, 0:11
13 526230
Затестил систему обнаружения коллизий. Вроде неплохо работает, хотя в фуррифоксе производительность оставляет желать лучшего: стоит задрать количество объектов до 2000, как фпс падает до сорока. Хром же стабильно показывает 55-60. Впрочем, 2000 - это дохуя, мне в худшем случае понадобится несколько сотен. К тому уже у меня уже есть кое-какие соображения по поводу оптимизации.

А теперь: рефакторинг. Надо создать отдельный объект для хранения состояния игры, плюс еще по мелочи...
sad kitty.jpg167 Кб, 600x942
14 527110
Чо-то я ленился на этой неделе. К тому же рефакторить скучно, и к некоторым решениям сложно придти.

Так что ничего нового пока.
15 527283
>>26053
Это в html аттрибутами задается: https://developer.mozilla.org/en-US/docs/Web/API/HTMLCanvasElement/width#Examples . И, судя по: "default value of 300 is used" - какой-то ксс у тебя используется.
16 527284
>>26230
Профилируй: задери кол-во объектов до 2м и посмотри, у каких функций self самый жирный (в хромовском дебаггере можно подключить микросекунды, но это лишнее). Еще у тебя демка очень похожа на классический пример 0/0 превратился в NaN, что выводит ф-ции из моно%забылслово% состояния (хотя, тут не факт что фокс умеет в отпимизацию по стилю в8). Про рефакторинг+оптимайз, раз уж ты маньяк, возьми веб-воркеры в каждый из них сунь useasm (и не забывай про минимальный пакет данных от оперативки к процу, даже если векторизация данных у js все еще в жопе), чтобы рассчитывать коллизии параллельно.
17 527823
>>27284
Спасибо за совет, но оптимизировать я буду позже. Как мне сказали:"преждевременная оптимизация - игрушка дьявола, ежжи!"

>>27283
Я так и делаю. Выставляю в атрибутах канваса ширину=800 и высоту=600, и для невооруженного глаза все выглядит правильно, но если попытаться записать видео, оказывается, что канвас увеличен в 1.25 раз.
sage 18 528958
>>27823

> записать видео, оказывается, что канвас увеличен в 1.25 раз


Интересно. Грешить можно на: 1. какой-нибудь зум в системе 2. запись видео. Если рядом с канвасом поставить div style="width:800px;height:600px;background:red" он будет меньше канваса?
19 528975
>>28958

>какой-нибудь зум в системе


Точно, так и есть. Заглянул в опции дисплея, там приближение 125% стоит, поставил на 100%, все стало милипизерным, но размер канваса правильный.
Спасибо за помощь!
2018-10-17 15-15-19.mp45,4 Мб, mp4,
800x600, 0:29
20 532881
Я стрельбу запилил. Кстати, я не говорил, но я в этом конкурсе участвую: https://2ch.hk/gd/res/528683.html (М)
21 533103
>>32884 (Del)
Не знал, чтобы здесь кто-то еще векторную графику использовал.
22 533129
>>33107 (Del)
Ага, особенно учитывая, что речь идет о всяких местных неймфагах.
23 533578
В общем, доделать игру к конкурсу я не успел, впрочем, как и всегда. История всей моей ёбанной жизни.
Зато он дал мне мотивацию продолжать разработку, в результате чего степень готовности игры уже не позволяет мне ее бросить, и я ее доделаю. Со временем.
24 534513
>>33578
Ты можешь пытаться наебать анона, но ты не можешь наебать себя.
25 534516
>>34513
Но ведь он анон.
sceptical husky.jpg39 Кб, 500x564
26 534529
>>34513
В чем наебка-то? В том, что я не успел игру доделать? Или в том, что в конкурсе участвовал?
27 534535
>>34529

>и я ее доделаю. Со временем.

crying laughing emoji.png90 Кб, 1024x1024
28 534595
>>34535
Хе-хе-хе, отлично подколол!
Пахом.jpg48 Кб, 604x471
29 534598
>>34595
Прекол, ржака!
unamused cat.png166 Кб, 450x300
sage 30 534608
>>34598
Именно.
31 542136
Вы думали, что я умер, но хуй вам.
В общем, я был и занят, и ленился, но больше всего я страдал от неуверенности, как именно стоит реализовать тот или иной элемент игры.

Однако, нововведения следующие:
1)Я перепилил пули: теперь вместо того, чтобы создавать новый подкласс пули каждый раз, когда мне требуется от нее новое поведение, я использую компоненты. Это позволяет мне иметь как пули с ручным наведением или летящие по синусоиде, так и пули с ручным наведением и летящие по синусоиде.
2)Добавил нормальные паттерны стрельбы, так что теперь можно сделать что-то типа двухствольного пулемета, у которого стволы стреляют попеременно. Причем сами паттерны создаются с помощью шаблона проектирования "строитель", что куда удобнее, чем использовать конструкторы с десятками аргументов.

Такие дела.
32 542212
Ну и зачем позвал?

Ну ты сделал разные типы стрельбы. А играть-то во что? Я пока не вижу как из этого сделать хоть что-то интересное.
33 542290
>>42212
Думал, может кому-то интересно будет, в некоторых тредах и того меньше, у меня хотя бы движок, как графический, так и физический есть.
34 548376
Уже почти месяц прошёл, сделал хоть какой нибудь геймплей ??
unamused medic.jpg32 Кб, 426x240
35 549643
>>48376
Нет, но мне приятно, что ты обо мне помнишь.
2019-03-05 21-46-00.mp42,4 Мб, mp4,
800x600, 0:15
36 563753
Отрефакторил множество мелочей, а также добавил рикошеты, пусть и кривые.
Никто не знает, как разрешать столкновения между объектами, если каждый объект состоит из нескольких окружностей?
Тред утонул или удален.
Это копия, сохраненная 10 мая 2020 года.

Скачать тред: только с превью, с превью и прикрепленными файлами.
Второй вариант может долго скачиваться. Файлы будут только в живых или недавно утонувших тредах. Подробнее

Если вам полезен архив М.Двача, пожертвуйте на оплату сервера.
« /gd/В начало тредаВеб-версияНастройки
/a//b//mu//s//vg/Все доски