PointJS - Российский Игровой Движок | Александр Птичкин – Telegram
PointJS - Российский Игровой Движок | Александр Птичкин
477 subscribers
1.18K photos
226 videos
25 files
438 links
1. Игровой движок: pointjs.ru
2. Чат @mult_uroki_ru
3. Обучение анимации: mult-uroki.ru
4. MMORPG игра: @Zombie_Tap_bot
5. Сотрудничество: @multuroki
6. Стикеры игры: https://news.1rj.ru/str/addstickers/Zombie_Tap
Download Telegram
This media is not supported in your browser
VIEW IN TELEGRAM
Один день работы по игре и есть значительные улучшения - мячики больше не дружат.

Кстати, уже сделал параметры, которые будут отвечать за оттяжку или прокат шара вперед.
Продолжаю писать механику игры и тут задумался. Почему на ноль можно делить и получается ноль. А ноль ни на что делить нельзя... Могли бы тоже сделать, что при делении 0 на любое число получалось 0. Из-за этого приходится делать лишние проверки. 😕
Отжал у ребенка планшет. Лучше, чем писать в блокноте и листики не тратятся. Очень подходят для быстрых мыслей в разработке.
👍7😈1
This media is not supported in your browser
VIEW IN TELEGRAM
Сам этому удивляюсь - но с каждой новой игрой или проектом удается создать еще лучший код чем был. Сейчас, оказывается, можно динамически таскать мяч руками и смотреть проходит ли его размер в лузу или нет. Если уж в ручном непредсказуемом режиме код отрабатывает в режиме реального времени и не дает мячу вылететь за пределы сцены - то и на автомате будет работать четка.
🔥4👍3🏆2
This media is not supported in your browser
VIEW IN TELEGRAM
Часто слышу вопросы про мобильную адаптацию. Можно ли на PointJS ее сделать. Да легко! Просто получите ширину экрана командой:

game.getWH().w;


И поделите самый большой элемент сцены (его ширину) на ширину экрана. Получите коэффициент, на который и надо делить все элементы сцены. Например, так за позиционированы шарики на сцене.

var ball4 = game.newImageObject({
file: "resources/ball4.png",
x: WH.w/2-(50/(s*1.3))+32/s,
y: 1280/s-920/s,
w: 50/s*1.3,
h: 50/s*1.3,
userData: {
moving: false,
velocity: point(0, 0)
}
})


Где s это поправочный коэффициент :

var s = 704/WH.w;
👍41🔥1
Когда жил с родителям, в детстве с папой смотрели снукер (у нас было спутниковое кабельное ТВ). Все тогда придумывали себе кумиров. Моим был Ронни О’Салливан. Посути, это ТВ было дверью в мир (компов то было). Много программ про животных, научных каналов, зарубежная музыка (OZZY OSBOURNE...) и т.д. А ночью на этих же частотах этих же каналов транслировали порно 😁.

Смотрю, что не так разбивается пирамида при ударе в лоб. Чуть отодвинул шары друг от друга, чтобы энергия не так резко распределялась.

Добился полного соответствия механики игры с реальной жизнью (той что я помню по крайней мере).

7 лет назад я даже не знал как сделать простейшую игру - сейчас же повторяю механику живых игр и переношу их в программный код. 😎
👍7🔥21😁1
Как сталкивать шарики?

Обычные столкновения через функцию isStaticIntersect не подойдут, так как учитываются сталикбоксы, которые чаще всего квадратные или прямоугольные.

Для столкновения шаров удобно использовать функцию getDistance, с помощью которой можно получать дистанцию до объекта, и если она будет меньше диаметра объекта то значит мы близко и можно сталкиваться.

И на скрине это четко видно, что шарики коснулись статикбоксами, но не сталкиваются так как идет проверка дистанции между ними.

А вот от стенок шарики отскакивают через проверку статикбоксов.
👍7
Бильярд доделал. Заработал на заказе 100к минус налог самозанятого 4%. Неплохо так за неделю. Скоро уже покажу. А пока начал делать следующий заказ - танчики.
🔥9👍4
А вот и хорошие новости подкатили. Зарегали прогу в реестре Роспатента 😎
🔥13👍3👏1
Сегодня ездил к юристу, забирал сертификат регистрации программы. А он мне ещё на день рождения книгу подарил. Вот буду изучать как захватывать мир 😈
👍9
Сегодня поднял все грамоты и награды и переоформил раздел Достижения на сайте PointJS. Смотрится теперь солидно ☺️
👍10🏆3👻1
Разработчики "Первого Российского движка" смотрю гордятся что меня заблокировали и не стесняются про это высказываться в таком формате...а это уже не красиво. Думают что прикрываясь ВК можно делать всё что угодно. Ну до поры до времени...

Сейчас как "Борщь" будут меня ещё 5 лет потом вспоминать 😎
😁5🗿1
Ну а тем временем, в этом году уже в двух государственных учебных заведениях начнут вести занятия в среде разработки игр PointJS IDE. Вовремя мы подготовили договор 😎. А вчера появился и третий возможный университет (школа).
71👏1
Сегодня ночью создал новые контроллеры Touch касания для движка PointJS ориентированные на мобильные игры и на множественные касания (хоть 1000 сделай на сцене) - их события пересекаться не будут.

Вторая мобила занята - не могу снять видео. Завтра покажу как Танк гоняет 😈
🔥4👍2🏆1
This media is not supported in your browser
VIEW IN TELEGRAM
И так, два вечера работы и  готова основная механика. Сегодня буду делать мобов

Получил тут в комментарии отзыв типа "И на такую хрень потрачено два вечера?".

Надо дать комментарии, а то есть народ , который до сих пор не понимает принцип создания игр. На сам код рабочей игры потратил пол часа. Два дня потрачено на верно выстроенный концепт игры готовый к публикации.
3👍3🔥2
Начал разрабатывать врагов танков. 5 лет назад я бы создал вручную массив из 20 или 40 танков (для мультиплеера). Сейчас планирую сделать массив из просто 40 цифр где каждые пять повторяются и то на автомате сделаю. А каждая цифра - это индекс фотографии танка. Буду выбирать четыре случайных числа из массива и согласно выпавшему числу инициализировать объект на сцене, и после этого удалять эти цифры из массива.
👍4
Ответ на часто задаваемый вопрос: почему в играх не пользуется код с уроков, ведь всё уже давно было (про танки).

Да, у меня есть исходники всех уроков и так было бы ещё быстрее. Но не использую я их по другой причине.

Я люблю разрабатывать код каждой игры с нуля. Тем самым каждый раз можно проверить разные варианты и получить наилучший или даже что-то изобрести.
👍4
Сейчас приготовили с ребёнком печеньки. Отгадайте какая моя? 😊

Многие могут подумать по фотографии, что пост вообще не по теме. Но на самом деле этот пост напрямую относятся к созданию игр. Программирую я игры ночью по часика два в день когда ребёнок уже спит и тишина есть и никто не мешает. Оставшиеся 80% дня я трачу на придумывание правильной идеи для программирования. Потому что идея - это основное. Код можно и не знать. Но если идея нерабочая, никакое знание кода не поможет.
👍62
Решил в игре про танки не обучать врагов реальным атакам и слежкам за игроком. Все оставил на случай рандома. Только задал приоритет движения(стремления) вниз к орлу. Кстати, уже появился моб. Даже не обученный уже снес пол сцены и орла 😦
👍4🔥4