Недавно защитил курсовую по своему "мега" движку. Весь код готовил по книге Андре Ламота. Дошёл я до освещения 4-мя источниками: point light, directional (infinite) light, spot light, diffuse light. Заливается всё одним цветом (с текстурами ещё не разобрался). Сцена грузится из четырёх объектов формата PLG/PLX (кто-нить про них слышал? :)). Так как у меня не многопоточная программа, я запускаю прогу на одном ядре с максимальным приоритетом - это даёт больше производительности, но главное - фпс показывает стабильно, а не прыгает с интервалом в 100fps.
Теперь, внимание вопрос: почему всё так отстойно выглядит? Неужели виноваты просвечивающие полигоны и недостаток текстур? Или я просто ещё в самом, самом низу, где обычно находятся семиклассники, когда начинают прогать свои первые движки? :)
И второй вопрос. Куда двигаться? Улучшать существующий код, переписывать на C++ и улучшать дальше на нём, перейти на C# + SlimDX (как положено, а не то, что сейчас у меня :)), перейти на C++ + DirectX/OpenGL? Естественно, хотелось бы увидеть обоснование =).
Если кому интересно, загружу все документы и исходный код.
Pixar
( C++ & (DirectX vs OpenGL)) vs (C# & SlimDX)
not this thread again
Reliktos
Что это значит?
Pixar
Наверное это значит, что это не хорошо...
>Типа мой двиг (спецом не показываю реальный скрин, чтобы заценили реальную прогу)
WTF?
>перейти на C++ + DirectX/OpenGL?
WTF??
Тема называется "C# софтварный рендерер".
Ты определись, что тебе нужно, софтварный рендер или GAPI для создания игры и красивая картинка.
>Что это значит?
Это значит, что постов на тему "что лучше C#/Delphi/VB или C++" и постов "OpenGL VS DirectX" тут уже было миллионы.
>с текстурами ещё не разобрался
Даже не сделал текстуры, а уже хочешь картинку уровня кризиса?
:D
Нет скриншотов - нет любви.
Pixar
Ник у тя классный, предлагаю сразу писать REYES. Вообще С# это банально. Написал бы на Аде лучше.
Выглядит так потому что ты так сделал, что за странный вопрос? Отчасти дело в том что ты написал - нет текстур + контента собственно нет иного, отчасти в освещении.
Зато защитился...
Не ясно, что "отстойно" выглядит?
Хотя так выглядит все.
Тест глубины хотя бы включить.
Почем нынче оценивают такой "курсовик" и если не секрет, то где?
И что там сделано не по книге?
Pixar
Конечно картинка гавёная : ) Ни арта ни текстур ни Z-Test-а. Освещение какое-то мего суровое (повершинное, чота там блымает).
Добавь хотябы текстуры! Посмотри наши форумные поделки http://www.gamedev.ru/code/forum/?id=126749 Там и мой C# софтрендерер есть. гдето на страницах выкладывал сорсы промежуточной версии (начальная без шейдеров и т.п. зато с текстурами)
Zakus
Скрин вставил =). Конечно, хочется красивой картинки, но в то же время хочу понять, как работают сами библиотеки.
FROL
REYES - не знаю чё такое. Ввёл в гугл - вылез футболист =). На C# писал т.к. мы в этом году проходили именно его (в следующем году круг расширяется до C++ и Java).
А про картинку спросил, потому что в инете видел реализации подобных же вещей (столько же источников света), но, как логично предположить, лучше. Возможно, у меня мало полигонов, хз...
Dronas
Тест глубины не успел доделать, пришлось оставить тупой алгоритм художника. Не по Ламоту там, если припомнить, загрузка ресурсов, вычисление нормалей, заполнение треугольников, ну и сама структура процентов на 15 отличается =), так как он всё-таки на C писал. Вообще там многое должно отличаться, так как я помню ботал лекции ВМиКа =).
Оценили на 8. (1-ый курс)
.L
Блин, так я и вдохновился этой темой. Можно сказать, если б не появилась такая тема, защищал бы я сейчас курсовую по сетям Петри или эллиптическим кривым :)
Pixar
> Оценили на 8
а максимум сколько?
Reliktos
10
Pixar
Ай-ай-ай, ну как же так) Pixar а рейес не знаешь.
http://en.wikipedia.org/wiki/Reyes_rendering
http://www.steckles.com/reyes1.html
FROL
Спасибо за ссылки, почитаю. Я когда-то посмотрел Toy story (это было давно...) и с тех пор у меня такой ник =)
тема называется "C# софтварный рендерер" хотя в вопросе ни одного упоминания софтварного рендера WTF?
> "почему всё так отстойно выглядит?"
в первую очередь вини себя а не спрашивай почему
> "Улучшать существующий код"
пока не изучишь множество аспектов геймдева забудь эту формулировку
> Куда двигаться
естественно переходи полностью на С++ если намерен сделать чтонибудь серьёзное
С# с его производительностью всё губит
Тема в архиве.