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

Ладно так и быть - продам рабочий проект за миллиард ☺️
🔥7🤣62
Media is too big
VIEW IN TELEGRAM
Презентация разработки изометрии и работы с 3D объектами в игровом движке PointJS 2D
🔥10👍1
Media is too big
VIEW IN TELEGRAM
Интересный эффект словил при разработке 😦
🔥6👀1
Media is too big
VIEW IN TELEGRAM
Обзор эффекта изометрии в движке PointJS 2D созданной еще 8 лет назад
🔥6
В школе задали из шишки сделать поделку. Как заставить делать что-то ребенка? Вот соревнуемся у кого лучше 😎
🔥6👍4
Media is too big
VIEW IN TELEGRAM
Разработки на PointJS 2D, которые изменили мир. Может и громкое название - но зато вы знаете что у нас за функционал спрятан внутри 😎
🔥5😎3
Этапы полной интеграции 3D в PointJS 2D. При этом у вас будет выбор в каком режиме работать.
🔥4
Сегодня ходили с ребёнком на кулинарный мастер класс.
🔥112
Теперь вы знаете о проекте больше 😎
🔥6👍32
Процесс обучения Ai пошел. Точность (зеленые цифры выше) начала повышаться.
🔥5
Ну как вам качество ответа без начального контекста! Качество поиска превысило 1 тоесть совсем четка.

Вопрос: Как сделать движение персонажа по клавиатуре.

Чтобы сделать движение персонажа по клавиатуре в PointJS, вы можете использовать следующий код:

var pjs = new PointJS(640, 480, {
backgroundColor: '#ffffff'
});

var game = pjs.game;
var key = pjs.keyControl.initControl();

// Создаем персонажа (анимированный объект)
var player = game.newAnimationObject({
animation: tiles.newImage("resources/animationCharacters/peasant/peasant_Idel_514_290_30_4.png").getAnimation(0, 0, 514, 290, 30),
x: 100,
y: 100,
w: 514,
h: 290,
delay: 4
});

// Обрабатываем игровой цикл для движения персонажа
game.newLoop('playerMovement', function() {
// Горизонтальное движение (A и D)
if (key.isDown('D')) { // Если зажата клавиша D
player.x += 2; // Перемещаем игрока вправо
} else if (key.isDown('A')) { // Если зажата клавиша A
player.x -= 2; // Перемещаем игрока влево
}

// Вертикальное движение (W и S)
if (key.isDown('W')) { // Если зажата клавиша W
player.y -= 2; // Перемещаем игрока вверх
} else if (key.isDown('S')) { // Если зажата клавиша S
player.y += 2; // Перемещаем игрока вниз
}

// Дополнительные действия при удержании комбинаций клавиш
if (key.isDown('Q') && key.isDown('W')) {
// Например, специальное действие
player.setFlip(0, 1); // Можете добавить свое действие здесь
}

player.draw(); // Рисуем игрока в каждом кадре анимации
});

game.setLoop('playerMovement'); // Устанавливаем наш игровой цикл как основной
game.start(); // Запускаем игру


Этот код:
1. Создает объект управления клавишами (key = pjs.keyControl.initControl())
2. Использует метод newAnimationObject для создания персонажа (можно заменить на newRectObject для простого прямоугольника)
3. В игровом цикле проверяет состояние каждой клавиши с помощью key.isDown()
4. При зажатии соответствующей клавиши изменяет координаты игрока
5. Рисует персонажа в каждом кадре анимации

Ключевые моменты:
- Используйте isDown() для проверки состояния клавиш (работает даже при удержании)
- Для движения используйте player.x +=/-= и player.y +=/-=
- Можно добавить ограничения на перемещение за границы экрана
- Для анимации персонажа используйте методы объекта animation

Пример для простого прямоугольника:

var player = game.newRectObject({
x: 100,
y: 100,
w: 50,
h: 50,
fillColor: '#3e90d1'
});

// В игровом цикле обрабатываем управление
game.newLoop('playerMovement', function() {
// Горизонтальное движение
if (key.isDown('D')) {
player.x += 2;
} else if (key.isDown('A')) {
player.x -= 2;
}

// Вертикальное движение
if (key.isDown('W')) {
player.y -= 2;
} else if (key.isDown('S')) {
player.y += 2;
}

player.draw();
});
🔥7👍1
Готовлю материал для второго урока по обучению DeepSeek. А тем временем первый урок летит по просмотрам. Может будет самым популярным, как в свое время стало видео по теме "Как работает транзистор" или по анимации в Moho
👍7🔥3
Часть 2 - Как установить DeepSeek на домашний компьютер и обучать модель своим данным локально https://youtu.be/TPYKUtFZqFs

В конце ролика уже вылетело из головы что хотел сказать - вспомнил. После обновления RAG файла просто удалите vector_store_improved.json и он пересоздастся заного.

Файлы к уроку в посте ниже 👇
🔥5👍1
myAi.zip
40.7 MB
Готовые файлы и дополнительные материалы к уроку по обучению DeepSeek

Также скачать и установить:
- Sublime3: https://www.sublimetext.com/3
- Node.js: https://nodejs.org/en/download
- Git Bush: https://git-scm.com/install/windows
🔥6👍1