Защо използваме точно тази библиотека? За DirectX е ясно, но защо не използваме OpenGL или JOGL? И като допълнителен въпрос бих искал да питам дали в JOGL има реализиран ray tracer, и ако няма може ли някой да ми препоръча библиотека за Java, при която има?
Comments
Каквото и друго да бяхме
Каквото и друго да бяхме ползвали, пак някой щеше да пита "А защо не фубар?". Истината е, че кода който използва SDL е незначително малко. Няма никакво значение дали е SDL, OpenGL, Direct3D, DirectDraw, GDI+, WinForms, etc.
JOGL, доколкото знам, е просто OpenGL wrapper за Java. Като така, за Java raytracer-ите е от много малко значение дали го ползват или не.
Ето тука има списък от Java raytracer-и: http://lmgtfy.com/?q=java+raytracers . Аз бих ти препоръчал да погледнеш Sunflow, ако те интересува как би изглеждал raytracer написан на Java.
Понеже знаех, че рано или
Понеже знаех, че рано или късно ще се появи такъв въпрос - ако някой чувства, че има времето и желанието да реализира (преведе) fmiray на езика Java (+ произволен пакет за визуализация), да ми пише. Ще му направя отделен branch във SVN-а, да си копае там, но изискването е да се държи up-to-date със C++ fmiray (т.е. ще е unsupported by me & slavi).
Ако наистина се получи нещо читаво, ще можете да предавате домашни и курсови проекти на Java.
А конкретно на въпроса за C++ fmiray:
1) Не ползваме OpenGL, защото той не предлага удобни функции за показване на проста картинка (каквото реално правим ние засега) на екрана. Не поддържа прихващане на клавиатура и мишка (което ще ни трябва по-нататък за realtime частта). Не поддържа и разни удобни неща като таймери, тредове, функцийки ала SDL_Delay(), SDL_GetTicks() и прочее
2) За JOGL: погледни 1)