9

Мини игра лабиринт

На практике выдалось свободное время вот я и решил опробовать webgl в браузере, начал с чего-то очень простого и вот предлагаю мини игру на ваш суд. (хотя чего тут судить, куча багов , код не оптимальный, в своё оправдание могу сказать, что изначально я просто тестировал куски кода и оно как-то само превратилось в игру...
Да на данный момент это выглядит как детская поделка, но я ставил целью пощупать webgl в js..)

Ссылка: maze

upd: С мобильного устройства не поиграть... Нужен WebGL...
upd2: Если уж понравится, добавлю нечисти в лабиринт и подправлю код =)
p.s. если вы разбираетесь в glsl : для смеха посмотрите шейдеры в улучшенной графике(resources.js : Resources.advanced_shaders), да мне лень было делать нормальное затенение XD
Вы смотрите срез комментариев. Показать все
1
Автор поста оценил этот комментарий

Респаун вне карты, в лабиринт так и не смог зайти, "невидимая стена" не пускает(

Иллюстрация к комментарию
Иллюстрация к комментарию
Иллюстрация к комментарию
раскрыть ветку (23)
1
Автор поста оценил этот комментарий

Хм... Да же не представляю как такое могло произойти...
Генерация лабиринта начинается из точки (2,2) в которой спавнится игрок...

upd:Ааа... кажись понял, вероятнее всего вы нажали на движение раньше чем таймер отсчитал 1 секунду и таким образом случайну шагнули через стену...
Да такая хрень случается =)


раскрыть ветку (22)
0
Автор поста оценил этот комментарий

Умница! Пожалуй, так и было


Ещё было, что меня телепортировало, пока разглядывал карту)

Потом вернуло обратно, правда... но таймер сказал, что я прошёл лабиринт

раскрыть ветку (21)
1
Автор поста оценил этот комментарий

Сделал небольшой hotfix =)

0
Автор поста оценил этот комментарий

если любопытно есть ещё ссылка http://server1401.ddns.net/webgl/maze/index_mod.html
в режиме графики default можно нажать ф2 =)

раскрыть ветку (19)
1
Автор поста оценил этот комментарий

Прошлый баг, возможно отражён на карте
Где я был вне границ лабиринта)


Кстати, производительность вообще.. и фпс неверно показывает)
У меня висло буквально всё на ноуте (производительность дефолта топовая)

Иллюстрация к комментарию
раскрыть ветку (14)
1
Автор поста оценил этот комментарий

Хм... мягко сказать... оооочень странно...
ФПС считает так - сколько успел кадров в секунду нарисовать - столько фпс (максимум 30 в секунду)
хм а что за браузер, я всё в хроме тестил..

раскрыть ветку (13)
1
Автор поста оценил этот комментарий

Хром)
Но масштаб 1600x1080
И максимальный размер карты)

раскрыть ветку (12)
0
Автор поста оценил этот комментарий

И правда... есть такой глюк на максимальном размере...

В принципе я нашёл баг, но его исправлять - переписывать отрисовку карты...
Дело тут вот в чем: для отрисовки карты и экономии памяти хранится буфер индексов вот только тип буфера u16(unsigned short в языке C)(65тысяч возможных значений) а в случае 584 размера карты, на карте насчитывается уже (6126564/3) уникальных значений, иными словами надо делить карту на куски и рисовать их отдельно..
Хотя теоретически можно установить тип буфера в u32(unsigned int в С) там уже 4милиарда возможных значений вот только я не знаю насколько эта чухата поддерживается WebGL, уж больно она спицифичная... 

0
Автор поста оценил этот комментарий

Ну короче, я попробовал пофиксить и в итоге у меня чуть не помер игровой комп, вернул всё как было... XD
Думаю, что пока оставлю всё так, завтра снова иду на практику и если не найдётся мне работы займусь написанием новой миниигры уже с пострелушками в стиле doom =) 

раскрыть ветку (10)
0
Автор поста оценил этот комментарий

Отличный игровой комп, скажу я тебе :D

раскрыть ветку (9)
0
Автор поста оценил этот комментарий

Вот эта версия http://server1401.ddns.net/webgl/maze/index_u32idx.html
на максимальном размере карты случается такой момент, что браузер виснет намертво...
=)

раскрыть ветку (8)
0
Автор поста оценил этот комментарий

Что-то не очень грузит..
Пытается, но выдаёт ошибку доступа

раскрыть ветку (7)
0
Автор поста оценил этот комментарий

ааааааааааа
как вернуться обратно :D

раскрыть ветку (3)
1
Автор поста оценил этот комментарий

ф5(обновить страницу) =)
ну или в консоли (ф12 в хроме) - no_clip=false;eye_height=0;

раскрыть ветку (2)
1
Автор поста оценил этот комментарий

Если обновлю, то игру заново начинать)

С помощью консоли в режиме карты можно проходить сквозь стены)

раскрыть ветку (1)
0
Автор поста оценил этот комментарий

Это не режим карты, это я алгоритм лабиринта отлаживал =)

Вы смотрите срез комментариев. Чтобы написать комментарий, перейдите к общему списку

Темы

Политика

Теги

Популярные авторы

Сообщества

18+

Теги

Популярные авторы

Сообщества

Игры

Теги

Популярные авторы

Сообщества

Юмор

Теги

Популярные авторы

Сообщества

Отношения

Теги

Популярные авторы

Сообщества

Здоровье

Теги

Популярные авторы

Сообщества

Путешествия

Теги

Популярные авторы

Сообщества

Спорт

Теги

Популярные авторы

Сообщества

Хобби

Теги

Популярные авторы

Сообщества

Сервис

Теги

Популярные авторы

Сообщества

Природа

Теги

Популярные авторы

Сообщества

Бизнес

Теги

Популярные авторы

Сообщества

Транспорт

Теги

Популярные авторы

Сообщества

Общение

Теги

Популярные авторы

Сообщества

Юриспруденция

Теги

Популярные авторы

Сообщества

Наука

Теги

Популярные авторы

Сообщества

IT

Теги

Популярные авторы

Сообщества

Животные

Теги

Популярные авторы

Сообщества

Кино и сериалы

Теги

Популярные авторы

Сообщества

Экономика

Теги

Популярные авторы

Сообщества

Кулинария

Теги

Популярные авторы

Сообщества

История

Теги

Популярные авторы

Сообщества

Недвижимость и ремонт

Теги

Популярные авторы

Сообщества