我一直在阅读很多关于openFrameworks和Processing的内容,但是除了一个在C ++中而另一个在Java中之外,仍然无法区分。有人能告诉我究竟是什么原因吗?
答案 0 :(得分:73)
你是对的,一个是C ++,另一个是Java,这些差异适用于这些框架,所以由你的偏好/项目范围决定哪一个最适合你。
使用处理:
使用 OpenFrameworks :
这些是现在想到的一些事情,可能会有更多。
就个人而言,我发现在Processing中编写真正基本的抛弃原型更容易。对于速度不是主要决策因素的情况,Processing会做得很好,但在其他情况下,我会将Processing原型移植到openFrameworks(大部分时间都很容易)。
一个例子是涉及音频的应用,无论是分析还是合成。根据复杂程度,Java垃圾收集器会在您最不期望的时候进行扫描,并在您需要响应时引起烦恼。
简而言之,两者都很酷,但 openFrameworks 更快。你自己通过管理记忆来支付这个速度。
在在线部署方面,它实际上取决于项目:如果它是一个简单的项目,可能p5.js在与其他js库的集成方面可能是最简单的。 oF导出对于庞大的复杂代码很方便,手动移植到JavaScript需要很长时间,但请记住Emscripten项目会很大(例如opencvExample
为17.5MB)(因此不是蜂窝友好的)如果您需要从网页调用oF app功能,您仍需要添加自己的JS -> C++绑定。
另外,如果您对C ++感兴趣,可能还需要查看libcinder或Polycode。
HTH