Разбираемся в Brainfuck, Пишем для него генератор кода и интерпретаторИли рассказ о том, как я решал легкую C задачкуОднако я решил что решать эту задачу привычным методом будет скучно и я решил слегка усложнить себе задачу, чтобы поинтереснее было. Так и появилась идея написать этот код на brainfuck, а на C интерпретатор для него.Естественно делать это голыми руками будет больно и не приятно, поэтому я решил написать генератор brainfuck кода на Java. Читать далее
Предыдущая главаМы узнали всё, что нужно для перехода к практике! Теперь мы готовы написать наш первый трассировщик лучей. Вы уже должны быть в состоянии догадаться, как работает алгоритм трассировки лучей.for (int j = 0; j < imageHeight; ++j) { for (int i = 0; i < imageWidth; ++i) { // вычисляем направление основного луча Ray primRay;... Отрендерить статью
В процессе подготовки к соревнованиям по системному программированию на C++ я начал заново изучать CMake, потому что Cargo сильно меня избаловал. При этом я заметил в туториале интересное утверждение:Зачастую правильным оказывается написать для решения задачи инструмент на языке…
В этом посте мы заглянем под капот алгоритмов компьютерной графики, пошагово разберем основные принципы трассировки лучей и напишем ее простую реализацию на Python. Никаких сторонних графических библиотек — только NumPy и голый код в компиляторе.Примечание: Эта статья ни в коем случае не является полным руководством/объяснением трассировки лучей, поскольку эта тема слишком обширна, а скорее просто введением для любопытствующих. Читать далее