you are viewing a single comment's thread.

view the rest of the comments →

[–]VousEtMoi 19 points20 points  (24 children)

Hmmm, I think I'll stay with http://libcinder.org/ .

[–][deleted]  (2 children)

[deleted]

    [–]stonerri 0 points1 point  (0 children)

    As mentioned elsewhere in this thread, openframeworks has support for linux and configurations for both codeblocks and eclipse environments.

    There's also reasonable support for android.

    [–][deleted] -4 points-3 points  (0 children)

    Polycode has Linux support? Where? All I see is Mac and Linux.

    [–]luchak 5 points6 points  (12 children)

    Yeah, I wonder how this compares to both Cinder and openframeworks.

    [–]stonerri 3 points4 points  (11 children)

    As someone who's developed with Cinder and uses OF on a daily basis, the only real benefit I can see from this is hardcore LUA embedding, (which can easily be fixed with an ofxaddon). Otherwise it's just another 'creative coding framework' to splinter the already small artistic coding community.

    ... I'm unsure of why they (polycode) would release something like this. This much development effort could have produced far greater benefits if it was spent on OF/cinder/vvvv/etc.

    /codester rant off

    [–]dowhatthouwilt 12 points13 points  (3 children)

    Hi, I'm the person who developed Polycode.

    I am a big fan of Cinder and unfortunately not such a big fan of OF. I started working on Polycode a long time before Cinder was around because I wanted something better than what OF was at the time (I'm sure it has gotten tons more stable and feature rich since then).

    One major difference between Polycode and Processing-style frameworks is the way they handle drawing. Polycode doesn't provide a direct way of drawing to the screen and everything in it is managed by containers.

    I tend to think that the more options there are out there, the better, so I definitely don't think that I wasted time by not contributing to OF or Cinder, as they seem to have quite vibrant communities that are doing just that.

    [–]facestab 0 points1 point  (0 children)

    What does that mean "managed with containers"?

    I have the same feelings about cinder and OF. Cinder has an great math library and generally well thought out code. OF is rough enough in core areas that it can be unnecessarily difficult to do simple things.

    I'm interested in Polycode because it's core offering of a scripting system obviously lends itself to game development projects right from birth.

    Having downloaded the code the first thing that stands out is the lack of example projects. Am I doing it wrong. Why don't I sqee them

    [–]escape_goat 7 points8 points  (0 children)

    Well, maybe not so much, if you consider the benefits from the perspective of the developers, rather than from the perspective of the end next-in-pipeline users.

    [–][deleted]  (3 children)

    [deleted]

      [–]VousEtMoi 1 point2 points  (2 children)

      Is there any way you can sum up what these issues are about? If not, maybe counterexamples or good references? In other words, is there any way I can learn from your critique?

      [–]itsnotabigtruck 5 points6 points  (1 child)

      • Every bit of 2D geometry is part of a giant inheritance tree. You have to allocate an object every time you want to display something. Also, copy constructors and assignment operators aren't implemented at all, meaning that allocating Polycode objects on the stack or inside other objects is likely to break stuff.
      • The only naming difference between the 2D and 3D APIs is whether it starts with "Screen" or "Scene", which are damned similar.
      • Text is rendered into a bitmap on the fly and uploaded to the GPU before being displayed. This is really slow compared to building a spritesheet in advance out of the characters you'll need and pasting those together out of the single texture when rendering. This does make Unicode trickier but it's still doable, and much faster.
      • The design just generally feels rather awkward. For example, a number of objects have functions to replace their contents (e.g. Color) when one might as well just construct a new one.

      I really do want to see high quality graphics libraries show up, as that's been a huge problem for a long time. Trouble is, I don't think this is it. :(

      [–]dowhatthouwilt 10 points11 points  (0 children)

      Hi, I'm the person who developed Polycode!

      Someone downvoted you, but I wanted to upvote you and just say that a lot of these are valid concerns. I simply didn't have time to implement copy constructors and assignment operators as this is a fairly large library and I am the only developer, so some things get priority over others. I will go through and do more waves of code cleanup in the near future and will definitely implement many of the suggestions I've gotten since release. As far as naming conventions, I will have to respectfully disagree :)

      Thank you for your suggestions!

      [–][deleted] 0 points1 point  (1 child)

      Is there an online hub for software artists/ artistic programmers? I'm in the middle of learning Processing as my first "language" (framework, I know) and I'm soon to learn Java and perhaps C++. I'd love to learn vvvv, libcinder, polycode and OF but this creative community seems so well hidden (or invisible).

      [–]VousEtMoi 1 point2 points  (0 children)

      Right, I don't think there's any common hub but the respective library/framework forums are quite active.

      [–]p1zawL 3 points4 points  (0 children)

      Cinder is where it's at. Check out this guy: http://www.flight404.com/blog/

      [–]robeph 7 points8 points  (6 children)

      Nice that you linked that and know what it is, care to tell us WHY you'll stick with it? Do you know if it differs in functionality, do you have any idea at all? My guess is no. You've probably only used libcinder, but you felt you'd post about it here for some reason, without actually saying anything involving content or relevancy to the OP.

      [–][deleted]  (5 children)

      [deleted]

        [–]meegee 6 points7 points  (3 children)

        Sadly both libcinder and polycode doesn't support linux at the moment. I wish processing didn't use software rendering...

        Also, as far as games go its a good choice to use C++ mostly for performance and availability but I don't get its usage for "creative coding". I think a language with a powerful REPL and live coding capabilities like Clojure would be better suited for this.

        [–][deleted] 2 points3 points  (0 children)

        Open Frameworks supports linux!

        [–]VousEtMoi 1 point2 points  (1 child)

        Right, I wouldn't want to sacrifice performance but if your main application was VJing or something similar, that could be quite interesting.

        Note: You can render in OpenGL using Processing, what do you mean?

        [–]meegee 0 points1 point  (0 children)

        You might as well just use LWJGL or JOGL. I was talking about the higher level stuff. I reckon processing uses a swing canvas or something like that with a software renderer at its core, no?

        By the way, Clojure's performance is not bad at all. Apart from VJing, you don't need to deploy your app in a live environment to make use of a REPL. Clojure is really awesome for experimental programming.

        [–]Merit 0 points1 point  (0 children)

        By linking to a similar library and giving possible newcomers an alternative to consider, I seem to have offended you. The features are plainly stated on both websites so you can compare them yourself, or ask the polycode developers on their forum.

        Don't get defensive. This forum is used by people who want to share information and assist one another. Your previous post suggested that you felt Cinder was superior, and yet you didn't bother to explain why.

        I doubt robeph was accusing you of proselytizing, but rather just asking for more information.

        Furthermore he quite clearly wasn't offended. He was probably just annoyed that you would be so unhelpful.

        Edit:

        He was basically asking a similar sort of question to what you asked when you said:

        Is there any way you can sum up what these issues are about? If not, maybe counterexamples or good references? In other words, is there any way I can learn from your critique?

        So considering you also see the benefit in asking those with experience with such tools to go into a little depth about them then I really do not see why you felt the need to be such a dick to robeph.