Низкоуровневое программирование графики
От: Khimik  
Дата: 06.05.15 16:19
Оценка: 3 (1)
Моя программа рисует молекулы; когда я начинал её писать, мне не хотелось разбираться с OpenGL/Direct3D, и вместо этого я сделал своё рисование по точкам (в Delphi). Чтобы нарисовать картинку на bitmap-е, берутся scanline-ы этого битмапа, и дальше с ними программа работает как с обычным двумерным массивом. Для каждой точки этого массива, если например рисуется сфера, просчитывается цвет (по данным о наклоне поверхности этой точки, направлению и цвету источника света и т.д.). Сферы рисуются как набор горизонтальных линий, цилиндры – как набор линий произвольного направления. Плюс реализовано много приёмов оптимизации, главный из которых – нарисовать что-то один раз в отдельном массиве и потом просто перерисовывать на картинку. Получилась такая графика:



У меня вопрос: на какие других платформах можно реализовать такой движок? Можно ли это реализовать на C#, Java, Flash, Unity3d (или там не хватит скорости)?
"Ты должен сделать добро из зла, потому что его больше не из чего сделать." Р.П. Уоррен
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.