Извините, ничего не найдено.

Не расстраивайся! Лучше выпей чайку!
Регистрация
Справка
Календарь

Вернуться   forum.boolean.name > Поиск по форуму

Показано с 1 по 20 из 20.
На поиск затрачено 0.01 сек.
Поиск: Сообщения от: alko
Раздел: Проекты C++ 01.01.2014, 17:06
Ответов: 64
Просмотров: 31,844
Автор alko
Ответ: raycasting

Есть порт вульфенштейна на SDL.
Там он работает как и положено.
Нужно будет глянуть как там реализован вывод пикселя.
Раздел: Проекты C++ 31.12.2013, 11:16
Ответов: 64
Просмотров: 31,844
Автор alko
Ответ: raycasting

Пытался высчитывать дэльта-тайм между фреймами. Но он всё равно криво считается.


Знаю... То я так, эксперементировал с масштабированием спрайтов когда-то.
Раздел: Проекты C++ 31.12.2013, 01:11
Ответов: 64
Просмотров: 31,844
Автор alko
Ответ: raycasting

"чистый" SDL , без quickCG тоже медленно рисует вроде бы.
Вот я когда-то давно клепал на чистом SDL движок (с рейкастингом он правда никак не связан, но рисует всё попиксельно). На пентиуме тоже дико...
Раздел: Проекты C++ 31.12.2013, 00:59
Ответов: 64
Просмотров: 31,844
Автор alko
Ответ: raycasting

В приведенном мною коде это есть.
Uint32 buffer[screenWidth][screenHeight];



Так опять же, это делает функция :
drawBuffer(buffer[0]);

Я в курсе, что после каждой записи пикселя в ОЗУ глупо...
Раздел: Проекты C++ 30.12.2013, 13:47
Ответов: 64
Просмотров: 31,844
Автор alko
Ответ: raycasting

Даже не знаю где бы инфу черпануть по перебросу содержимого системного ОЗУ в видео-память на асме. + инициализировать граф. режим надо.
На моём излюбленном спектруме это делалось 5-тью 6-тью...
Раздел: Проекты C++ 29.12.2013, 23:21
Ответов: 64
Просмотров: 31,844
Автор alko
Ответ: raycasting

Видяха PCI ati Rage II. Из api поддерживается только DX 5.0 , и то - для галочки. Tomb Raider на софтверном рендеринге ЦП и то быстрее рисует, нежели та видяха на DX. Она очень медленно текстурирует....
Раздел: Проекты C++ 29.12.2013, 20:18
Ответов: 64
Просмотров: 31,844
Автор alko
Ответ: raycasting

И тут дело даже не в выборке пикселей из png-картинки.
Тут дело в выводе пикселя, каким бы он ни был.
Там даже обычное заполнение сплошным цветом - 4-5 кадров в секунду.
Раздел: Проекты C++ 29.12.2013, 20:07
Ответов: 64
Просмотров: 31,844
Автор alko
Ответ: raycasting

Дело не в рейкастинге... Дело в самом quickCG.
Попробовал написать элементарное Хыллоу Ворлд, где будет закрашиваться экран и выводится отмасштабированный в два раза спрайт. И таки шо ви думаете? Эта...
Раздел: Проекты C++ 29.12.2013, 19:34
Ответов: 64
Просмотров: 31,844
Автор alko
Ответ: raycasting

Это даже без тонирования в глубину.
Раздел: Проекты C++ 29.12.2013, 13:29
Ответов: 64
Просмотров: 31,844
Автор alko
Ответ: raycasting

:shit: всё очень печально :shit:
Запускал только-что на пентиуме вариант без пола и потолка - 4 кадра в секунду (если в обзор попадает спрайт - 3 кадра)
Комп как бы намекает, что это всё плохая затея.
Раздел: Проекты C++ 29.12.2013, 00:55
Ответов: 64
Просмотров: 31,844
Автор alko
Ответ: raycasting

Samodelkin, видал в твоём проЭкте сделана фишка "затенение в глубину" (или туман, если инверсия)

Как сделать это в том движке, на который я глаз положил ?
Там в зависимости от переменной...
Раздел: Проекты C++ 28.12.2013, 22:41
Ответов: 64
Просмотров: 31,844
Автор alko
Ответ: raycasting

Да, уверен.


Сделать такой редактор не проблема... Но нужно спрва разобраться с этим движком. Пол и потолок всё-таки пришлось убрать. Ещё сделаю где-то на 1/4 экрана интерфейс, заодно меньше...
Раздел: Проекты C++ 28.12.2013, 03:08
Ответов: 64
Просмотров: 31,844
Автор alko
Ответ: raycasting

в zero tolerance тоже 2д-массив карты, просто каждый элемент массива может принимать значения от 00 до FF... но кривизна не произвольная....
Раздел: Проекты C++ 28.12.2013, 00:09
Ответов: 64
Просмотров: 31,844
Автор alko
Ответ: raycasting

Есть идеи, как в том сорсе осуществить поворот стен хотя бы кратный 45-ти градусам ?
В смысле не строго север\юг\запад\восток, а хотя бы так, как в zero tolerance на мегадрайве.
Раздел: Проекты C++ 26.12.2013, 17:47
Ответов: 64
Просмотров: 31,844
Автор alko
Ответ: raycasting

За счёт побитного скролла fps увеличился с 50-ти до 62-ух (это если стенку в вплотную разглядывать... При разглядывании спрайтов fps почти вдвое меньше становится)
int d1=lineHeight * 128;
...
Раздел: Проекты C++ 23.12.2013, 19:51
Ответов: 64
Просмотров: 31,844
Автор alko
Ответ: raycasting

Вот сейчас интересует, как же запилить ассемблерную вставку в коде-блоксе (mingw gcc win32).
Чтоб произвести арифметические вычисления, и результат из регистра поместить в какую-либо переменную.
Раздел: Проекты C++ 23.12.2013, 19:47
Ответов: 64
Просмотров: 31,844
Автор alko
Ответ: raycasting

Та не. То я для примера привёл цифры.
так-то планирую хотя бы на 640*480 ориентироваться. Дело в том, что на 640*480 этот движок тоже адски тормозит.
На моём пне MMX вполне шустро работает виндовый...
Раздел: Проекты C++ 23.12.2013, 13:40
Ответов: 64
Просмотров: 31,844
Автор alko
Ответ: raycasting

Нужно избавиться от умножения. До тела цикла вычислить константу, а затем вычислять d+=const.
то же касается и TexY.
А вообще лучше конечно было бы асм-всавками воспользоваться, но хз, как потом...
Раздел: Проекты C++ 23.12.2013, 13:39
Ответов: 64
Просмотров: 31,844
Автор alko
Ответ: raycasting

В этом участке я максимум что осилил, так это вынести пару арифметических операций за тело цикла.
int dd=h * 128 ;
int dd1=lineHeight * 128;
for(int y = drawStart; y < drawEnd; y+=2)
...
Раздел: Проекты C++ 23.12.2013, 12:51
Ответов: 64
Просмотров: 31,844
Автор alko
Смущение Ответ: raycasting

Надеюсь автор топика не будет против, если я продолжу тему по иному рейкаст-двигателю (http://lodev.org/cgtutor/raycasting2.html)
Пробовал заделать пол и потолок градиентом (пикча...
Показано с 1 по 20 из 20.

 

Часовой пояс GMT +4, время: 12:23.


vBulletin® Version 3.6.5.
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Перевод: zCarot
Style crйe par Allan - vBulletin-Ressources.com