Моя программа рисует молекулы; когда я начинал её писать, мне не хотелось разбираться с OpenGL/Direct3D, и вместо этого я сделал своё рисование по точкам (в Delphi). Чтобы нарисовать картинку на bitmap-е, берутся scanline-ы этого битмапа, и дальше с ними программа работает как с обычным двумерным массивом. Для каждой точки этого массива, если например рисуется сфера, просчитывается цвет (по данным о наклоне поверхности этой точки, направлению и цвету источника света и т.д.). Сферы рисуются как набор горизонтальных линий, цилиндры – как набор линий произвольного направления. Плюс реализовано много приёмов оптимизации, главный из которых – нарисовать что-то один раз в отдельном массиве и потом просто перерисовывать на картинку. Получилась такая графика:
У меня вопрос: на какие других платформах можно реализовать такой движок? Можно ли это реализовать на C#, Java, Flash, Unity3d (или там не хватит скорости)?
"Ты должен сделать добро из зла, потому что его больше не из чего сделать." Р.П. Уоррен