Вспоминается, как суровая интеловская демка на тему software occlusion за <10 мс обрабатывала миллион треугольников (трансформация + depth-only растеризация).
Ура, Гном!
FordPerfect
> Вспоминается, как суровая интеловская демка на тему software occlusion за <10
> мс обрабатывала миллион треугольников (трансформация + depth-only
> растеризация).
То есть ты намекаешь, что если Интел захочет посоревноваться со мной в создании софтрендера, я могу проиграть? Вот это засада. :)
Если серьезно, хорошо, что мой хоть как-то работает. Думаю, что мог и с этим не справиться, чудом написал. До сих пор миллион глюков и погрешностей.
programina
> да, через Wine
Спасибо. Круто, что под Wine нет падения производительности. Всегда думал что она тормозит.
soflot
Ага!
Zefick
> но вообещ софтварный рендеринг зайца даже в максимальной детализации должен
> вытягивать хотя бы кадров 15-20 в FullHD в зависимости от процессора.
Запилил тебе зайца с текстурой. Но там загрузка не оптимизирована, грузит секунд 30-минуту. Если интересно сравнить с твоим, скажи, выложу.
122
> Всегда думал что она тормозит
WINE = Wine Is Not Emulator
122
Мое почтение коллеге по написанию софтверных движков.)
Вот, кстати, один из моих экспериментов:
http://www.gamedev.ru/flame/forum/?id=200986
Если можешь, пожалуйста, отпишись в соответствующей теме о том, какая была производительность и на какой машине.
Ciaphas
> Мое почтение коллеге по написанию софтверных движков.
О, всегда приятно встретить человека с тем же увлечением.
> Если можешь, пожалуйста, отпишись в соответствующей теме о том, какая была
> производительность и на какой машине.
Конечно.
programina
> WINE = Wine Is Not Emulator
То была старая версия, года два или три ранее. Значит допилили.
Не как эмулятор тормозила, но все же. Раза в полтора или два замедляла если сравнить с нативной виндой на том же компе.
122
На виндовсе не проверяла, а вдруг там в 2 раза быстрее работает?))
122
> Но там загрузка не оптимизирована, грузит секунд 30-минуту.
Что-то вообще ни в какие ворота. Это я думал, что у меня пляски с копированием данных по два раза и парсингом индексов через регекспы, в результате чего загрузка длится две секунды, это говнокод. А оказывается всё может быть ещё хуже.
> Если интересно сравнить с твоим, скажи, выложу.
Сделай уже чтобы он просто грузил модель с названием model.obj, чтобы туда можно было положить любую модель. Ну и потом нормализуй как-нибудь координаты, чтобы они не выходили за единичный куб, например.
programina
> На виндовсе не проверяла, а вдруг там в 2 раза быстрее работает?))
Думаю, если и не в два, прибавка быть должна в любом случае.
Zefick
> А оказывается всё может быть ещё хуже.
Всегда есть куда хуже. :)
А тут это же не типичные данные, одиночные хайрез модели. А типичные, где раскрываются лучшие стороны движка, это лоу-рез с множественным перекрытием. Вот примерно как на сцене из теста на странице 3, с чайниками. А на хайрезе двиг умирает и по качеству и по скорости.
122
> А тут это же не типичные данные, одиночные хайрез модели.
Я ни хрена не понял. Как назначение движка влияет на скорость загрузки моделей?
> А типичные, где раскрываются лучшие стороны движка, это лоу-рез с множественным перекрытием.
Я не увидел в тестовых сценах ничего такого, для чего нужен нетипичный движок. Кроме того, конечно, что в одной из них освещение дёргается так, что эпилептиков к экрану лучше не подпускать, а в другой его вообще нет.
Zefick
Это все алгоритм чтобы одна вершина много раз не висела в данных. Он тормозит при загрузке. Тест вершин, чтобы не повторялись. Ну и сравниваю каждую с каждой.
Так что, покажешь своего движка? Вот чтобы грузил модель с текстурой и показывал фпс. Я свой выложу тогда. Посражаемся на чужом мне поле.
122
> Это все алгоритм чтобы одна вершина много раз не висела в данных. Он тормозит
> при загрузке. Тест вершин, чтобы не повторялись. Ну и сравниваю каждую с каждой.
Я смотрю заняться совсем нечем, мегабайта памяти пожалел? Ты уже просрал времени больше, чем в принципе мог бы сэкономить за всю дальнейшую работу над проектом и будешь просирать его и дальше при каждом запуске. Ну и да, модели обычно делают так, чтобы вершины там не повторялись. Такие уж точно. Так что твои тесты там, скорее всего, даже ничего не отсеяли.
Zefick
> Так что твои тесты там, скорее всего, даже ничего не отсеяли.
Они совершенно точно отсеяли. У меня при загрузке модель пишется во временную память, где каждый квад имеет свой адрес. А вот потом по квадам проходит оптимизатор и пишет в память уже из которой рендерит.
> мегабайта памяти пожалел?
Дело в быстродействии. Обрабатывать каждую вершину по четыре раза, или один раз. Рендер соответственно прибавляет фпс.
> Ты уже просрал времени больше
Милисекунды же. Скачай демку со страницы 03, там загрузка не оч долгая. Чайник в первой сцене грузится аж три раза, (для разных цветов) и ничего.
И да, покажи уже свой рендер. Чтобы грузил модель хоть без текстур и просто показывал фпс при рендере. Тебе самому разве не любопытно, во сколько раз ты отстанешь? :)
Кстати о софтредерах. Самореклама: сделано на собственном софтрендере http://www.gamedev.ru/flame/forum/?id=211334
Допилил первую игру на новом 3д-растеризаторе.
Крохотная, для обкатки движка и технологий. Гонки, несложные и расслабляющие.
Просьба потестировать и сообщить о тормозах, багах, и всяком таком. Может быть у кого советов мудрых найдется.
Все-таки первая 3д игра, я очень многого не умею.
+++
Ссылка на архив (игра обновлена до версии 1.01):
https://drive.google.com/file/d/0B3BRCLyorkD2ekFJWlBocFhiUEU/view?usp=sharing
Видео:

Скриншот:

Тема в архиве.
Тема закрыта.