Guys

the animation of roassal2 are done really simply using viva.

Stef

On 14/9/14 19:07, Nicolai Hess wrote:
2014-09-14 18:20 GMT+02:00 kilon alios <[email protected] <mailto:[email protected]>>:

    Plenty ? no

    A few ? yes

    Woden is certainly a project that I want it to be successful and
    keep going forward but at the moment I can't say its usable when
    each time I resize the window it corrupts the viewport.

    No offense intended but lately the more I dive inside Pharo the
    more I feel I waste my time, I love the IDE and the environment
    and live coding but using the libraries is a never ending struggle
    for me. I agree with Nicolai the landscape is not good, Pharo
    really lacks mature libraries . Sure we like to bash Java but Java
    libs are rock solid and very well documented. I bring Java as
    example. Again I am not complaining at all, I knew when I came to
    Pharo that I will have to face these limitations. I also don't
    feel comfortable asking questions all the time as if I want others
    to do my code but I did not have much of a choice. I just cant
    deal with the lack of documentation any more.

    I think Pharo as a general idea is great , you definitely have
    taken the Squeak fork one big step further but you have a very
    long road ahead of you to make Pharo a modern environment. Asking
    for animating a window with good performance is one of the very
    basics of a good GUI API. I know you have limited resources and
    once again I am not complaining at all I just present my opinion.
    Its clear that Pharo needs a lot more people to contribute and
    bring the system forward at least to solve the basic problems.


This is definitly wrong :)
Especially the older squeak versions were ahead of its time with (animated) interactive UI elements. Java (Swing) does not come with an animation framework for the UI (JavaFX, yes but that took its time). There was a timing/animation framework used by Roman Guy for its FilthyRich clients, that did really look great. He created UIs that never looked like ordinary Java UIs. But I think that was done by few people only. So, doing this for pharo should be doable. (I do remember something like that was done for Morphic (maybe this one: https://www.hpi.uni-potsdam.de/hirschfeld/trac/SqueakCommunityProjects/wiki/animations))

yoiu can do great thinks with Qt for C++ simple animation with the good old qwidget and the newer qml-framework. That's what I would call feature UIs (mostly what is done nowadays on mobile devices and other
"platforms" have their own frameworks (java)android and Object-C (IPhone).

And I think we will see more "feature"-UI on the web with HTML5/Canvas/Web-GL.

Do we need a good new UI framework for pharo? Yes.
Do we need many developers for working on this ? No, I think a handfull (2-4) people would be enough.
What pharo really needs are:
Many more developers *using* pharo as a platform.

nicolai



    Thank you all people who helped me. But I don't think it worths to
    make my project in Pharo, too many problems.  I feel privileged to
    have helped you with my contributions , I wish the Pharo the best.

    I could return back to Python but I think its time for me to bite
    the bullet and learn C/C++, since graphics is an area that deeply
    interest me (more as an artist less as a coder), so I don't have
    much of choice. Maybe I can brings some of my code back to Pharo
    with NB wrappers , I definitely will keep a close eye on Pharo.

    In a few months I will also present to the Pharo community a
    secret last contribution ;)

    On Sun, Sep 14, 2014 at 6:26 PM, [email protected]
    <mailto:[email protected]> <[email protected]
    <mailto:[email protected]>> wrote:

        Do you know anything better for futuristic UIs at the moment?

        I guess that we aren't talking about commercial dev here. And
        if we would rely on everything being documented in Pharo,
        errr, we wouldn't go too far.

        That being said, there are plenty of examples in the Woden code.

        Phil

        Le 14 sept. 2014 16:28, "Nicolai Hess" <[email protected]
        <mailto:[email protected]>> a écrit :

            Why should he use it, now?
            I mean, is there a stable API? Or a roadmap ?

            Sometimes it is a bit dangerous to trust on "bleeding
            edge" pharo frameworks.
            I did some work based on Roassal3D just to found out there
            won't be any further development.
            The same happens with Roassal and GraphET.
            The same can happen with Woden too :)





            2014-09-14 14:13 GMT+02:00 [email protected]
            <mailto:[email protected]> <[email protected]
            <mailto:[email protected]>>:

                Why not use Woden?

                Phil

                Le 14 sept. 2014 12:51, "kilon alios"
                <[email protected] <mailto:[email protected]>>
                a écrit :

                    yeah I am afraid transparency is very important to me

                    On Sun, Sep 14, 2014 at 1:34 PM, Nicolai Hess
                    <[email protected] <mailto:[email protected]>>
                    wrote:

                        2014-09-14 11:32 GMT+02:00 stepharo
                        <[email protected] <mailto:[email protected]>>:

                            I remember that there was an animated gif
                            support.
                            Now I do not remember exactly.


                        At least in squeak there is an
                        AnimatedImageMorph, that can load and display
                        animated gifs.
                        That works and is quite fast even for multiple
                        instances. But of course no (alpha-)transparency


                            for roassal2 have a look at the viva
                            classes: this is the animation frameworks
                            that igor designed.

                            Stef



                            On 14/9/14 10:22, kilon alios wrote:
                            so I tried to animate in Roassal having
                            two different images display with a delay
                            for few millisecond but it only displays
                            the second image with this code

                            form1 :=Form
                            fromFileNamed:'/Users/kilon/Pictures/pharo.png'.
                            form2 :=Form
                            fromFileNamed:'/Users/kilon/Pictures/box.png'.
                            v := RTView new.
                            c := v canvas.
                            s := TRBitmapShape new.
                            s form: form1.
                            c addShape: s.
                            v  open.

                            (1 to: 100) do: [ :index|
                            s form: form1.
                            s signalUpdate .
                            "(Delay forMilliseconds: 1000 ) wait."
                            s form: form2.
                            s signalUpdate .
                            (Delay forMilliseconds: 1000) wait.].

                            I looked into RTAnimation but dont know
                            how to use it for this example. Any help
                            ? Does Roassal 2 support such animations ?

                            if I do s form: and then s signalUpdate
                            for each form separately it works fine
                            but inside the loops does not seem to
                            work , I tried bigger delays with no effect.

                            On Sun, Sep 14, 2014 at 10:57 AM,
                            stepharo <[email protected]
                            <mailto:[email protected]>> wrote:

                                Ronie when you ready I can help
                                writting a chapter for the nex book.

                                Stef


                                On 13/9/14 21:42, Ronie Salgado wrote:
                                Hello,

                                    On 13/9/14 20:11, Enrico Schwass
                                    wrote:
                                    Hi

                                    another option could be the
                                    verse protocol. There was a
                                    plugin for Maya and Blender to
                                    do realtime rendering. Dont
                                    know if there is some automatic
                                    Swig-like wrapper for smalltalk
                                    but FFI might work.

                                    There is Wig like wrapper for
                                    Pharo done by ronie salgado.


                                I have an adapted version of Swig
                                for Pharo NativeBoost here:
                                https://github.com/ronsaldo/swig

                                Currently I am using it to generate
                                my Bullet bindings (available here:
                                https://github.com/ronsaldo/bullet-pharo)
                                that can be used as an example of
                                using Swig.
                                I still have to improve more my Swig
                                generator, by writing documentation
                                and fixing some bugs.

                                Greetings,
                                Ronie

                                2014-09-13 16:11 GMT-03:00 stepharo
                                <[email protected]
                                <mailto:[email protected]>>:


                                    On 13/9/14 20:11, Enrico Schwass
                                    wrote:
                                    Hi

                                    another option could be the
                                    verse protocol. There was a
                                    plugin for Maya and Blender to
                                    do realtime rendering. Dont
                                    know if there is some automatic
                                    Swig-like wrapper for smalltalk
                                    but FFI might work.

                                    There is Wig like wrapper for
                                    Pharo done by ronie salgado.

                                    Stef



                                    http://youtu.be/c_D2YJSNj8I

                                    Almost a decade ago I did some
                                    ruby bindings by hand. It was
                                    working out of the box

                                    Bye
                                    Enno

                                    Am 13.09.2014 um 16:11 schrieb
                                    kilon alios
                                    <[email protected]
                                    <mailto:[email protected]>>:


                                    " I am curious. You mean
                                    rendering Bitmap from blender,
                                    for later use in Pharo UI? "

                                    yes exactly. Blender can
                                    render in all popular graphics
                                    files, most used are png.
                                    Animation frames can be
                                    rendered each frame in its own
                                    file.

                                    So basically its a lot like
                                    the average games out there.

                                    "I will suggest bare bone
                                    Morphic mainly, then Athens
                                    when you need vectorial drawing."

                                    ok

                                    "For iStoa I decided to go
                                    purely Morphic, I have a lot
                                    of bitmap. Bitmap source is
                                    SVG, then converted to PNG,
                                    overscaled for production use.
                                    Then from iStoa, depending on
                                    the application window extent,
                                    the bitmap are downscaled
                                    accordingly, I am pretty
                                    satisfied by the result."

                                    I fail to understand how your
                                    bitmap source is SVG for me
                                    bitmap is a raster graphic
                                    format svg is  procedural
                                    graphic format. Two opposite
                                    things.

                                    "Sure. The downpoint, you will
                                    depend on one additional layer."

                                    dependency is not an issue.
                                    Afterall the graphic files
                                    themselves will be far bigger
                                    download even more so if the
                                    GUI becomes very large.

                                    "Nice. What will be the
                                    expected outcomes of such API,
                                    I am not sure to understand
                                    and I am curious."

                                    Well Blender besides creating
                                    3d objects (which can be used
                                    as 2d objects too) it can also
                                    create 3d unrendable objects.
                                    That means that objects
                                    produce no graphics and have
                                    the role of placeholders or
                                    helpers, for example when you
                                    want an emitter of light or
                                    emitter of a physical power
                                    like gravity or wind. Those
                                    are called dummy objects and I
                                    could use them to give
                                    characteristics to the
                                    graphics , for example I could
                                    use a dummy to define the are
                                    of influence of a mouse click
                                    , or what type of event the
                                    bitmap will respond to. That
                                    means you wont have to import
                                    the graphics manually to pharo
                                    and create a separate morph
                                    for each bitmap and then set
                                    the events but rather press a
                                    button in blender and then
                                    Ephestos will import then
                                    bitmaps to pharo , set the
                                    events and create the morphs
                                    automagically.

                                    So basically you will be using
                                    Blender as a GUI designer.

                                    "Use fuel to store the state
                                    of your application objects."

                                    ah nice so fuel is a good
                                    candidate.

                                    I will also take a look at Dr
                                    Geo and Phratch , both apps
                                    have custom GUIs and use only
                                    Morphic (Dr Geo using Athens
                                    for the geometry primitives) .











Reply via email to