М.Двач / Gamedev

Этого треда уже нет.
Это копия, сохраненная 12 октября 2014 года.

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

Если вам полезен архив М.Двача, пожертвуйте на оплату сервера.

587 Кб, Webm

СВЕТ МЕРЦАЕТ ЧТО ДЕЛАТЬ ВЫРУЧАЙ 26 Июл, 17:25 #127272 В конец треда | Веб

Привет, гдач. Для освещения я использую библиотеку box2dlights. На видеорилейтеде можно увидеть, что при перемещении на лифте свет просто пиздец как мерцает. Это баг библиотеки? Как это можно исправить? Библиотека очень удобная, не хотелось бы отказываться от неё. На андроиде свет тоже мерцает.

Ответы: >>127338, >>127348

26 Июл, 17:30 #2 #127274

У тебя свет рисуется от состояния прошлого кадра, а не текущего.

Ответы: >>127278

26 Июл, 17:38 #3 #127278

>>127274

this.cam.position.lerp(new Vector3(x, y, 0), delta * 10);
this.cam.update();

this.shr.setProjectionMatrix(this.cam.combined);

for (GSensor sensor : this.core.get_world().get_sensor_handler().get_sensors()) // Здесь рендерим разные блоки
sensor.render(shr, delta);

for (GObject obj : this.core.get_lvl().get_objects()) // Здесь рендерим кнопки
obj.render(shr, delta);

this.rhd.setCombinedMatrix(this.cam.combined); // Вот здесь рендерим свет
this.rhd.updateAndRender();

У меня вот так. Что здесь неправильно?

Ответы: >>127279

26 Июл, 17:40 #4 #127279

>>127278
Блядь, кнопки и блоки перепутал местами. Сначала рендерим кнопки, а потом блоки.

26 Июл, 18:01 #5 #127280

попробуй на всякий случай оттранслейтить всё на 0.375 или 0.5

Ответы: >>127282

26 Июл, 18:04 #6 #127282

>>127280
Что это значит?

Ответы: >>127284

26 Июл, 18:17 #7 #127284

>>127282 https://www.opengl.org/discussion_boards/showthread.php/166043-The-meaning-of-the-0-375-pixel-translation

Ответы: >>127285, >>127287

26 Июл, 18:28 #8 #127285

>>127284
Но здесь глючит только свет. Вся остальная отрисовка не глючит.

26 Июл, 18:44 #9 #127287

>>127284
Я всё равно сделал, но нихуя не поменялось.

26 Июл, 20:01 #10 #127295

Бамп.

26 Июл, 22:48 #11 #127299

Ещё один бамп.

Ответы: >>127302

26 Июл, 23:22 #12 #127302

>>127299 Это хуюнити? Фильтрация point? Ставь bilinear.

Ответы: >>127303

26 Июл, 23:26 #13 #127303

>>127302
> box2dlights
> хуюнити
Нет.

Ответы: >>127304

26 Июл, 23:30 #14 #127304

>>127303 Суть в фильтрации ящитаю. Вот смотри. Сделай камеру зара в 2 ближе к сцене игры и ты увидишь. что еблобанить будет не только свет, но и все остальное, даже белая полосочка перед лифтом.

Ответы: >>127305

26 Июл, 23:42 #15 #127305

>>127304
А где ставить эту фильтрацию?

Ответы: >>127307

26 Июл, 23:47 #16 #127307

>>127305 С своем проекте. Такой эффект получается изза точечной фильтрации отображаемой картинки в игре. Ну как "лесенки" в 3д шутанах к примеру. Тут почти тоже самое. Ты в редакторе игру делаешь или на чем? Велосипедишь?

Ответы: >>127308

26 Июл, 23:56 #17 #127308

>>127307
В Eclipse IDE. Что мне написать, чтобы поставить фильтрацию? Гугл выдаёт только фильтрацию для текстурок, а текстурок у меня пока что нет.

c:934934

Ответы: >>127309

27 Июл, 00:04 #18 #127309

>>127308 Не текстуры, а рендер. Фильтрация всей сцены. Анизатропная, Трилинейная и т.п. У тебя к примеру полоска стоит на координате y=0, а ты хочешь плавно перемещать её вверх на y=0,89756. Тоже самое с камерой происходит. У тебя четкая граница пикселя изза точечной фильтрации просто смещается, пиксель не может быть и в координате y=0 и в y=0,999. Только целые числа.

мимокрокодил

Ответы: >>127310

27 Июл, 00:05 #19 #127310

>>127309
Но как мне это написать? Гугл ничего не находит.

Ответы: >>127311

27 Июл, 00:11 #20 #127311

>>127310 Тогда решай задачу другим способом. Если камера будет двигаться только с целыми числами такого эффекта не будет.

Ответы: >>127312, >>127313, >>127314, >>127317

27 Июл, 00:13 #21 #127312

>>127311
А если бы я делал это на чистом openGL, то как я смог бы включить фильтрование?

27 Июл, 00:14 #22 #127313

>>127311
Анон, а такая же хуйня может выдавать полосы на текстурах? Если позумить туда-сюда и подвигать, они могут пропасть.
У меня рендерится карта тайлов, средствами OpenGL
мимоанон-никогда-не-работал-с-фильтрацией

Ответы: >>127315, >>127316

27 Июл, 00:14 #23 #127314

>>127311 И попробуй вставить в игру текстуру на стену к примеру. Если камера будет двигаться в юнитах, а не пикселях - увидишь туже самую картину. Будет уже зависеть от фильтрации текстур. Игра то у тебя пиксельная будет или как?

27 Июл, 00:17 #24 #127315

>>127313
лол
загуглил свою проблему
нужен CLAMP_TO_EDGE при загрузке текстуры

27 Июл, 00:18 #25 #127316

>>127313 Да блять, ну РЕНДЕР сцены же есть! Я вот с короной сдк баловался, у меня все пиксельные текстуры в мыле были, я включил POINT - все стало красиво, а вот когда камера начинала двигаться на 0,9999999999999 юнитов? пропадали части границ у текстур. Просто сделал, чтобы камера ходила за персонажем и округляла свою позицию до целых.

27 Июл, 00:22 #26 #127317

>>127311
Проблема в том, что у меня целые числа - это координаты блоков. Перемещение камеры будет выглядеть очень неплавно, если я так сделаю.

Ответы: >>127318, >>127319

27 Июл, 00:24 #27 #127318

>>127317 Охуел чтоли? Неплавно блять. Раньше игры делали в разрешении 250х250 пикселей, и все плавно было. Что ты тут девочку из себя строишь? Заебашь текстур уже и поставь им фильтрацию.

Ответы: >>127320

27 Июл, 00:25 #28 #127319

>>127317
UPD: сделал так, как и написал тот анон.

this.cam.position.set(Math.round(player.x), Math.round(player.y), 0);

Всё равно мерцает. Значит дело не в этом.

27 Июл, 00:26 #29 #127320

>>127318
Если бы я округлял координаты, то у меня получилась бы игра 20x12. Это ещё меньше, чем 250x250. Но я вспомнил, что поебался до этого с масштабом и реализовал твой вариант.

Ответы: >>127321

27 Июл, 00:34 #30 #127321

>>127320 Что ты там округлял? Игра на андроид, верно? Бери минимальное допустимое, популярное разрешение. Сейчас я думаю 960х540. Для пиксельарта это много, режешь на 2. Получаем 480х270 - уже годно. Рисуй под это разрешение. Т.е. экран игры это 480х270, и растягивай на любой дисплей по вертинкальному соотношению, на разных телефонах будет видно покраям чуть больше, чуть меньше контента, а высота всегда одинаковая будет. Еще вариант делать комнаты на один экран, чтобы камера не бегала за играком, но тут уже от игры зависит. В чем соль то?

Ответы: >>127323

27 Июл, 00:39 #31 #127323

>>127321
Да блядь, иди ты нахуй со своими костылями. Может мне ещё чтобы графику не рисовать, использовать БЛЯДСКИЕ КУБИКИ, типа такой стиль игры чтобы был? Отдельные комнаты, вообще охуеть.

Ответы: >>127324, >>127336

27 Июл, 01:19 #32 #127324

>>127323
Именно. Мастер сделает шедевр даже из палок и бутылок, а безрукий дебил будет пыжиться на крузис, обязательно обосрется и остается ни с чем.

Ответы: >>127326

27 Июл, 01:26 #33 #127326

>>127324
> 2D платформер
> крузис

27 Июл, 12:43 #34 #127336

>>127323 Я бы тебя обоссал даже. Как ты собираешься скейлить игру под разные разрешения?

Ответы: >>127340, >>127343, >>127346

27 Июл, 13:01 #35 #127338

>>127272
библиотеки - для лохов. надо своё писать. с нуля.

Ответы: >>127339

27 Июл, 13:19 #36 #127339

>>127338
Велосипеды - для лохов. Нужно выжимать максимум из готовых решений.

Ответы: >>127341

27 Июл, 13:21 #37 #127340

>>127336
блядь, я такой графон с нуля могу запилить за сутки
Легонький рейкаст до стен - получаем карту теней, накладываем
Через шейдер делаем glow и размытие - получаем такое свечение
Когда что-то меняется трясем камеру, рисуем в буфер, а потом шейдером накладываем 2-3 эффекта с 3Д и рандомно распологаем, получается такой эффект перехода
Выеденного говна не стоит твоё видео

27 Июл, 13:23 #38 #127341

>>127339
Готовые решение - для лохов. Нужно писать свои готовые решения с учетом пожеланий Кирилла.

Ответы: >>127344

27 Июл, 13:28 #39 #127343

>>127336
Рисовать всегда в разрешении 5:3. Если потребуется - оставлять чёрные полосы по бокам.

Ответы: >>127346

27 Июл, 13:29 #40 #127344

>>127341
Ты меня убедил. Сделаю своё освещение.

27 Июл, 13:35 #41 #127346

>>127343 Ебать, и много платформеров с черными полосками ты видел? Кирилл, ей богу.

>использовать БЛЯДСКИЕ КУБИКИ
>>127336

Тим17 сделали, а выйдено говна любой продукт стоит. Можно и с такой хунты срубить бабла, при годном маркетинге. А ты обосрался.

>я такой графон с нуля могу запилить за сутки

Увы, но не сможешь. Инфа 146%. Прости. У тебя получится кусок говна, т.к. над этим графеном работали и художники, и программисты, а ты к сожелению пока что Кирилл.

Ответы: >>127347, >>127349, >>127351

27 Июл, 13:42 #42 #127347

>>127346
> Кирилл
Лол, а ты угадал.

27 Июл, 13:42 #43 #127348

>>127272 Эффект сам по себе интересный, только каким образом ты хочешь использовать его в игре? Я имею в виду от чего свет уходит за границы комнаты? И на самом деле, если крутить "свистелками" и "перделками" игра от этого лучше не станет. Главное же это геймплей? Нет? О чем игра?

Ответы: >>127350

27 Июл, 13:44 #44 #127349

>>127346
> много платформеров с черными полосками ты видел?
Видел шутаны с чёрными полосками. Правда, там можно было настроить WideScreen или что-то такое. Но с чёрными полосками всё равно можно было играть.

27 Июл, 13:46 #45 #127350

>>127348
Да простое освещение. Свет уходит за границы комнаты для того, чтобы текстурки стен освещались. Игра - обычный платформер вроде марио.

Ответы: >>127352

27 Июл, 13:48 #46 #127351

>>127346
>Увы, но не сможешь. Инфа 146%. Прости. У тебя получится кусок говна, т.к. над этим графеном работали и художники, и программисты, а ты к сожелению пока что Кирилл.
Я такое делал уже. Вся красота достигается одним эффектом глоу. Если будет время, на днях запилю вышеописанное, специально для такого дауна, как ты.
Может только эффекты пикселизации не сделаю, лень.

Ответы: >>127354

45 Кб, 680x423

27 Июл, 13:51 #47 #127352

>>127350 Лишний выебон кажется. Свет можно и обычной пнгшкой ебануть с наложением addictive. Пятно света. Не уверен правда, что будет потреблять больше ресурсов. В любом случае, все эффекты лучше делать в последний момент. Андроид пропускает кажется любые игры. А вот апстор не пускает приложения с черными полосками по краям, я это гарантирую.

Ответы: >>127355, >>127357

27 Июл, 13:54 #48 #127354

>>127351 Отговорки обычного Кирилла. Не получится у тебя достичь такой же картинки как у Тим17. Я и в фотошопе могу глоу нарисовать, суть в полноте картинки, которую не так легко достичь.

Ответы: >>127378, >>127380

27 Июл, 13:56 #49 #127355

>>127352
То есть, нужно запекать свет? Делать лайтмап?

27 Июл, 14:02 #50 #127357

>>127352
Я хочу вот такое освещение.

Ответы: >>127358, >>127359

76 Кб, 300x300

27 Июл, 14:19 #51 #127358

>>127357 Такое ощущение, что там и рейкасты и маски. Свет запекать никуда не нужно. Можно делать простые маски. Сделай сами текстуры на стенах уже и проверь как оно работает с твоим светом. Может быть и эффект мерцания пропадёт.

Ответы: >>127360

27 Июл, 14:21 #52 #127359

>>127357 Ну как я и думал, все в кучу. Вот такой эффект и получается.
http://frankforce.com/?p=2614

Ответы: >>127362

27 Июл, 14:36 #53 #127360

>>127358
> Может быть и эффект мерцания пропадёт.
А почему он должен пропасть?

Ответы: >>127361

27 Июл, 14:38 #54 #127361

>>127360 Потому что свет будет накладываться на текстуру, а не на черноту. Тебе сложно чтоли текстуру рандомную подложить? Артефакты остануться, из за рендера картинки в любом случае. Только с текстурами этот эффект будет чуть менее заметен. Пробуй, скидывай результат сюда.

Ответы: >>127362

27 Июл, 14:46 #55 #127362

>>127359
Как я понял, он запекает тени в отдельную текстуру? А почему тогда он запекает их вместе с тенью, которую отбрасывает машинка? Ведь машинка может менять свои координаты, а значит запекать тень для неё не нужно. Или я не так перевёл?

>>127361
Так ты про задний фон? Я не могу туда ничего наложить, т.к. в моём движке там всё ещё пустота. Это не получится реализовать за 10 минут.

Ответы: >>127364

27 Июл, 15:03 #56 #127364

>>127362 Волюметрик лайт. Не нужно запекать. И что за инструмент такой, который не умеет текстуры загружать ебана.

Ответы: >>127366, >>127379

27 Июл, 15:08 #57 #127366

>>127364
Ну их просто не на что натягивать. Загрузить-то можно.

Ответы: >>127367

27 Июл, 15:11 #58 #127367

>>127366 Ну это пиздец. Не можешь натянуть текстуры. Включи юнити, перетащи ассет "платформер марио" и выкладывай в стор. Ебать таких мудаков. Будет пол года ебаться с платформером, я уверен.

Ответы: >>127370

27 Июл, 15:14 #59 #127370

>>127367
Да пошёл ты нахуй, юнитидебил. Тебе сказали - текстуру не на что натянуть. А ебаться с костылями, чтобы потом их убирать я не хочу. Значит текстуру натягивать не буду.

Ответы: >>127373

27 Июл, 15:20 #60 #127373

>>127370 На что блядь натягивать? Пиздец, отрисовать ТЕКСТУРУ, ЗАДНИК! Это для тебя геморой? Причем тут кастыли? Платформер делается в любом игровом редакторе за 1-2 дня и выпускается школьниками в сторы. Ты мозги тут ебешь, подключил библиотеку и не знаешь как ей правильно пользоваться.

Ответы: >>127374

27 Июл, 15:25 #61 #127374

>>127373
> Продумать ёбаный сюжет, систему скриптов, диалогов, уровней
> 1-2 дня игровой редактор

Ответы: >>127375

27 Июл, 15:31 #62 #127375

>>127374 Ты думаешь, что школьники задумываются о сюжете или уровнях? Они просто натаскивают квадратики на уровень и ставят начало - конец. Собирают из готовых ассетов, грабят бесплатные ресурсы с персонажами и задниками. Еще к тому же делают все на кряках. Ты в каком веке живешь? Ты начал игру делать не с того места. Решил делать сюжеты и диалоги, а ебешься со светом, не мудак ли? Набросай в тетрадки уровни, в блокноте тексты, диалоги, а с графеном начинай уже после этого.

Ответы: >>127376

27 Июл, 15:36 #63 #127376

>>127375
В том и дело, что у меня всё готово. Остался графон.

27 Июл, 15:49 #64 #127378

>>127354
>Отговорки обычного Кирилла
Ты вообще даун?

Ответы: >>127381

27 Июл, 15:49 #65 #127379

>>127364
Ввёл в поиске гугла 2d volumetric ligts, а он ничего кроме юнити не находит. Может это как-то по другому называется?

27 Июл, 15:51 #66 #127380

>>127354
В полноте картины у него суть, ебать дебил.
Я тебе сказал, что такие эффекты легко пилится, а он мне про левел-дизайн втирает.
Ебанат чистой воды.

Ответы: >>127381, >>127382

27 Июл, 15:59 #67 #127381

>>127380 Где? Запили уже наконец. Легко у него. Вот оп ебется сидит, а ты только кричишь о том, что это ебать как легко. Ждем уже весь день сидим.

>>127378 Ты сказал, что тебе лень. О чем тогда говорить вообще?

>Я такое делал уже. Вся красота достигается одним эффектом глоу.

Что именно ты делал уже? Накладывал на текстуры глоу эффект?

Ответы: >>127383

27 Июл, 16:01 #68 #127382

>>127380
>блядь, я такой графон с нуля могу запилить за сутки
>Я тебе сказал, что такие эффекты легко пилится

Графон ты такой запилишь или эфеекты, или глоу просто включишь или обосрешься и заленишься что то сделать?

27 Июл, 16:06 #69 #127383

>>127381
>Что именно ты делал уже?
Мамку твою ебал.

Ответы: >>127384

9 Кб, 199x253

27 Июл, 16:08 #70 #127384

>>127383

28 Июл, 13:25 #71 #127487

Переебался с размерами фреймбуффера и вот что получилось. Оставить так или ебаться дальше, чтобы было нормальное сглаживание?

Ответы: >>127489, >>127514

134 Кб, 1600x900

28 Июл, 13:31 #72 #127489

>>127487
Блядь, пик отклеился. Ёбаный линукс не дал сделать скриншот из-за какого-то ограничения на клиентов. Опять пришлось перезагрузиться. Чёт у меня горит.

Ответы: >>127490

28 Июл, 13:32 #73 #127490

>>127489
> линукс
Да ты вообще не человек нахуй.

Ответы: >>127491

28 Июл, 13:36 #74 #127491

>>127490
Зато я могу переключаться между 9 рабочими столами, а ты не можешь.

Ответы: >>127517

Аутист !miq/AmrbWA 28 Июл, 16:20 #75 #127514

>>127487
>ебаться дальше, чтобы было нормальное сглаживание
This

28 Июл, 17:19 #76 #127517

>>127491
> Ёбаный линукс не дал сделать скриншот из-за какого-то ограничения на клиентов
> Зато я могу переключаться между 9 рабочими столами
Все ресурсы ушли на рабочие столы, на скриншоты уже не хватило.

Ответы: >>127519

28 Июл, 17:22 #77 #127519

>>127517
Но в xlsclients рабочего стола нет.

28 Июл, 19:27 #78 #127531

Всё, у меня нет идей насчёт того, как это фиксить. Увеличивать FrameBuffer - не вариант, т.к. при этом проседает FPS. А других решений проблемы я не вижу. Аноны, выручайте, я не могу доделать игру без освещения. Может быть, есть какие-нибудь другие библиотеки для освещения? Сюжет, диалоги, уровни и всё остальное уже есть. Остались текстурки, свет и звуки.

Ответы: >>127536, >>127614

28 Июл, 20:06 #79 #127536

>>127531
Ну, я постараюсь тебе помочь. Ты только подожди пару дней, у меня сейчас завал.

Ответы: >>127537

28 Июл, 20:09 #80 #127537

>>127536
Хорошо.

29 Июл, 13:59 #81 #127614

>>127531
Выложи побольше релевантного кода.

3137 Кб, Webm

UPD 07 Авг, 15:40 #82 #129409

Починил ебаный свет, но теперь двери иногда закрываются не до конца. На вебмке не видно, не смог записать.

Ответы: >>129416

07 Авг, 15:58 #83 #129416

>>129409 в чем дело-то было?

>закрываются не до конца
у тебя бох2д? попробуй увеличить кол-во его итераций, допустим не 60 фпс а 90

Ответы: >>129444

07 Авг, 20:09 #84 #129444

>>129416
Не знаю, в чём было дело. Я хотел делать свет, который не сильно проникает за границы стен, т.е. ставить setSmooth(false);. Но в итоге пришлось отказаться от этой идеи и просто ставить лампочки подальше от стен. Увеличение итераций тут не нужно, т.к. в моём коде плавного перемещателя сначала задаётся высчитанная скорость, а потом делается setTransform для избежания таких недоводов. И это работает, если не привязывать дверь к лифту. Т.е. работает на нижней и верхней дверях, но некорректно работает на двери лифта. Что ж поделать, буду ебать код и городить костыли. Может джоинт какой поставлю для парентинга объектов.

Тред утонул или удален.
Это копия, сохраненная 12 октября 2014 года.

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

Если вам полезен архив М.Двача, пожертвуйте на оплату сервера.

« /gd/В начало тредаВеб-версияНастройки/a//b//mu//s//vg/Все доски

Пользуетесь скринридером — пишите, что можно улучшить.
Host-Food.ru — надёжный хостинг от 12 руб/мес | Free DNS
Зеркала М.Двача: m2ch.hk, m2ch.lib, m2chfapiswfw2wcakptqp4o6ltgchvjuxfab7urxlduraomtlnhw5xad.onion