lessphic? may be a future for morphic

Previous Topic Next Topic
 
classic Classic list List threaded Threaded
43 messages Options
123
Reply | Threaded
Open this post in threaded view
|

Re: lessphic? may be a future for morphic

Juan Vuletich-4
Bert Freudenberg wrote:

>
> The way I would do your demo in OpenGL would be that every morph
> renders to its own off-screen surface, and when compositing, it would
> apply the non-linear transformation. This is now a standard
> implementation technique, except it usually is not used for projective
> geometry but for fancy effects (like the Genie effect when minimizing
> Mac OS X windows).
>
> Mind I did not understand what you said in the talk, just commenting
> on the visuals ...
>
> - Bert -
>
>
Yes. But you would be doing only a part of it in OpenGL. The geometric
deformations would still be needed, but working only on bitmaps. The
quality would not be as good (for things like CurveMorphs) because the
off-screen surface would have some specific resolution, that could be
too coarse for those areas that are enlarged by the non-linear
transformation. Think for example on a graph with logarithmic X. Pixels
in the off-screen surface would be too big at the left of the graph and
too small at the right.

Cheers,
Juan Vuletich

Reply | Threaded
Open this post in threaded view
|

Re: lessphic? may be a future for morphic

Juan Vuletich-4
In reply to this post by Igor Stasenko
Igor Stasenko wrote:
> I'd like to hear, how this highly abstract structures and coordinate
> systems can be designed in such manner, that it will be efficient for
> rendering with high speed using pixel blitting operations and/or
> hardware accelerated libraries (such as OpenGL).
>
>
>
>
>  
If all the coordinate systems are cartesian, then it is possible to use
OpenGL or Cairo. However you'd lose "the signal processing approach to
anti aliasing".

Cheers,
Juan Vuletich

Reply | Threaded
Open this post in threaded view
|

Re: lessphic? may be a future for morphic

Boris Popov, DeepCove Labs (SNN)
In reply to this post by stephane ducasse
Re: lessphic? may be a future for morphic

Cairo (+Quartz), no?

Cheers!

-Boris (via BlackBerry)

----- Original Message -----
From: [hidden email] <[hidden email]>
To: The general-purpose Squeak developers list <[hidden email]>
Sent: Thu Jan 31 05:40:16 2008
Subject: Re: lessphic? may be a future for morphic

I'd like to hear, how this highly abstract structures and coordinate
systems can be designed in such manner, that it will be efficient for
rendering with high speed using pixel blitting operations and/or
hardware accelerated libraries (such as OpenGL).




--
Best regards,
Igor Stasenko AKA sig.



Reply | Threaded
Open this post in threaded view
|

Re: lessphic? may be a future for morphic

Jason Johnson-5
In reply to this post by Juan Vuletich-4
On Jan 31, 2008 4:12 PM, Juan Vuletich <[hidden email]> wrote:
>
> Better design that current Morphic, with simpler and smaller code.

What is the appropriate place discuss the class/api/etc. design?  If
others had an idea about that then they might be able to help
building.

Reply | Threaded
Open this post in threaded view
|

Re: lessphic? may be a future for morphic

Bert Freudenberg
In reply to this post by Juan Vuletich-4
On Jan 31, 2008, at 16:12 , Juan Vuletich wrote:

> Bert Freudenberg wrote:
>>
>> The way I would do your demo in OpenGL would be that every morph  
>> renders to its own off-screen surface, and when compositing, it  
>> would apply the non-linear transformation. This is now a standard  
>> implementation technique, except it usually is not used for  
>> projective geometry but for fancy effects (like the Genie effect  
>> when minimizing Mac OS X windows).
>>
>> Mind I did not understand what you said in the talk, just  
>> commenting on the visuals ...
>>
>> - Bert -
>>
>>
> Yes. But you would be doing only a part of it in OpenGL. The  
> geometric deformations would still be needed, but working only on  
> bitmaps. The quality would not be as good (for things like  
> CurveMorphs) because the off-screen surface would have some  
> specific resolution, that could be too coarse for those areas that  
> are enlarged by the non-linear transformation. Think for example on  
> a graph with logarithmic X. Pixels in the off-screen surface would  
> be too big at the left of the graph and too small at the right.

I am beginning to understand your point :) Yes, having that power in  
the base system would be cool. I still think it can be implemented on  
latest-gen OpenGL hardware (which can do the non-linear transform and  
adaptively tesselate curves to pixel resolution) but that then would  
be just an optimization.

- Bert -



Reply | Threaded
Open this post in threaded view
|

Re: lessphic? may be a future for morphic

Igor Stasenko
On 31/01/2008, Bert Freudenberg <[hidden email]> wrote:

> I am beginning to understand your point :) Yes, having that power in
> the base system would be cool. I still think it can be implemented on
> latest-gen OpenGL hardware (which can do the non-linear transform and
> adaptively tesselate curves to pixel resolution) but that then would
> be just an optimization.
>

What i'm against, is to bind rendering subsystem to specific hardware.
There should be a layer, which should offer a rendering services to
application, and number of layers to deliver graphics to device(s).
In perfect, it should be able to render itself using any device:
screen or printer or remote (networked) canvas.
There also can be a different options in what a rendering media is:
it's wrong to assume that rendering surface is planar (it can be a 3D
holo-projector, for instance).
What is hard, is to design such system to be fast and optimal and
still be generic enough to be able to render anywhere.


--
Best regards,
Igor Stasenko AKA sig.

Reply | Threaded
Open this post in threaded view
|

Re: lessphic? may be a future for morphic

Juan Vuletich-4
In reply to this post by Bert Freudenberg
Bert Freudenberg wrote:

>
> I am beginning to understand your point :) Yes, having that power in
> the base system would be cool. I still think it can be implemented on
> latest-gen OpenGL hardware (which can do the non-linear transform and
> adaptively tesselate curves to pixel resolution) but that then would
> be just an optimization.
>
> - Bert -
>
>
>
>

Yes!

Cheers,
Juan Vuletich

Reply | Threaded
Open this post in threaded view
|

Re: lessphic? may be a future for morphic

Juan Vuletich-4
In reply to this post by Jason Johnson-5
Hi Jason,

The place is here. If most people think we get way off topic, we could
set up a mail list.

Cheers,
Juan Vuletich

Jason Johnson wrote:

> On Jan 31, 2008 4:12 PM, Juan Vuletich <[hidden email]> wrote:
>  
>> Better design that current Morphic, with simpler and smaller code.
>>    
>
> What is the appropriate place discuss the class/api/etc. design?  If
> others had an idea about that then they might be able to help
> building.
>
>
>  


Reply | Threaded
Open this post in threaded view
|

Re: lessphic? may be a future for morphic

Juan Vuletich-4
In reply to this post by Igor Stasenko
Igor Stasenko wrote:

> On 31/01/2008, Bert Freudenberg <[hidden email]> wrote:
>
>  
>> I am beginning to understand your point :) Yes, having that power in
>> the base system would be cool. I still think it can be implemented on
>> latest-gen OpenGL hardware (which can do the non-linear transform and
>> adaptively tesselate curves to pixel resolution) but that then would
>> be just an optimization.
>>
>>    
>
> What i'm against, is to bind rendering subsystem to specific hardware.
> There should be a layer, which should offer a rendering services to
> application, and number of layers to deliver graphics to device(s).
> In perfect, it should be able to render itself using any device:
> screen or printer or remote (networked) canvas.
> There also can be a different options in what a rendering media is:
> it's wrong to assume that rendering surface is planar (it can be a 3D
> holo-projector, for instance).
> What is hard, is to design such system to be fast and optimal and
> still be generic enough to be able to render anywhere.
>
>
>  

Morphic 3 is not tied to any hardware! It only assumes the Display in
Squeak. And it will not be too hard to separate it from the rendering
engine. Non planar targets could be addressed by a custom coordinate system.

Cheers,
Juan Vuletich

Reply | Threaded
Open this post in threaded view
|

Re: lessphic? may be a future for morphic

Igor Stasenko
On 31/01/2008, Juan Vuletich <[hidden email]> wrote:

> >>
> >
> > What i'm against, is to bind rendering subsystem to specific hardware.
> > There should be a layer, which should offer a rendering services to
> > application, and number of layers to deliver graphics to device(s).
> > In perfect, it should be able to render itself using any device:
> > screen or printer or remote (networked) canvas.
> > There also can be a different options in what a rendering media is:
> > it's wrong to assume that rendering surface is planar (it can be a 3D
> > holo-projector, for instance).
> > What is hard, is to design such system to be fast and optimal and
> > still be generic enough to be able to render anywhere.
> >
> >
> >
>
> Morphic 3 is not tied to any hardware! It only assumes the Display in
> Squeak. And it will not be too hard to separate it from the rendering
> engine. Non planar targets could be addressed by a custom coordinate system.
>

I didn't examined your Morphic 3 design precisely, but using a Display
(as it currently represented in Squeak) is exactly what i'm against.
It's like interacting with hardware directly, bypassing software drivers.
Display should represent a device with own set of capabilities. Canvas
providing a generic abstract layer for interacting it. Morphs should
use canvas , but assume nothing about existence of  Display or Printer
or Whatever.
Otherwise, once you start using Display, soon it will become too tied
together, and you start mixing things in one cup, just because you
assuming that everything what you doing will be rendered using
Display, so you starting care less about other devices/surfaces,
limiting it and finally bury it down under heap of optimizations :)

> Cheers,
> Juan Vuletich
>
>


--
Best regards,
Igor Stasenko AKA sig.

Reply | Threaded
Open this post in threaded view
|

Re: lessphic? may be a future for morphic

Igor Stasenko
And some notes about input.
Again, morphic should not assume that there are standard input devices
, like keyboard and mouse, it's should be able to interact with any
available input devices.
For this, i think, we should think twice on how introduce different
events in future morphic system.

For instance, what is the point in having #handlesMouseDown: ,
#keyDown: methods, when there is no mouse/keyboard on platform (assume
i run squeak on touchpad)?

These layers should be detached from each other, i think, and morphs
should react on more abstract (or generalised) events.

--
Best regards,
Igor Stasenko AKA sig.

Reply | Threaded
Open this post in threaded view
|

Re: lessphic? may be a future for morphic

stephane ducasse
In reply to this post by Juan Vuletich-4
thansk for the video I always wanted to see it running.

Stef

On Jan 30, 2008, at 12:04 PM, Juan Vuletich wrote:

> Hi Gulik,
>
> Morphic 3 supports arbitrary non-linear coordinate systems. I don't  
> understand how you envision rendering over those targets. Morphic 3  
> has a rendering engine that renders on Squeak Display, as current  
> Morphic's canvases with Balloon 2D and BitBlt.
>
> Please read my documents, and let's talk about coordinate systems!  
> Currently I have implemented Cartesian, LogX and a few cartographic.  
> Watch the demo at Smalltalks 2007 at http://www.youtube.com/watch?v=90TGhRZUSOo 
>  . It is worth watching even if you don't understand my Spanish.
>
> Cheers,
> Juan Vuletich
>
> Michael van der Gulik wrote:
>>
>>
>>
>> Some time in the next couple of years, I'll need a secure graphics  
>> API for my SecureSqueak project. The basic idea is that I need as  
>> thin a layer of abstraction as possible over various 2-D graphics  
>> targets: X11, MS Windows, Mac, Postscript/other printer APIs,  
>> OpenGL, VNC and possibly libraries such as Cairo. It would also  
>> need to do some event handling, as many events rely on a particular  
>> coordinate system. GUIs such as Morphic or Tweak would run on top  
>> of this.
>>
>> Does your Morphic3 project have a base which could target all  
>> these? So far all I'm seeing is talk about bizarre coordinate  
>> systems.
>>
>> Gulik.
>>
>>
>> --
>> http://people.squeakfoundation.org/person/mikevdg
>> http://gulik.pbwiki.com/
>> ------------------------------------------------------------------------
>>
>>
>>  
>> ------------------------------------------------------------------------
>>
>> No virus found in this incoming message.
>> Checked by AVG Free Edition. Version: 7.5.516 / Virus Database:  
>> 269.19.16/1250 - Release Date: 1/29/2008 10:20 PM
>>
>
>
>


Reply | Threaded
Open this post in threaded view
|

Re: lessphic? may be a future for morphic

stephane ducasse
In reply to this post by Juan Vuletich-4
I liked the earth spinning :)

> Please read my documents, and let's talk about coordinate systems!  
> Currently I have implemented Cartesian, LogX and a few cartographic.  
> Watch the demo at Smalltalks 2007 at http://www.youtube.com/watch?v=90TGhRZUSOo 
>  . It is worth watching even if you don't understand my Spanish.
So when will we get a version 1.0 of Morphic 3.0?


Reply | Threaded
Open this post in threaded view
|

Re: lessphic? may be a future for morphic

stephane ducasse
In reply to this post by Juan Vuletich-4

On Jan 30, 2008, at 12:31 PM, Juan Vuletich wrote:

> - get Esug to sponsor me. If I could work full time on M3, things  
> would go much faster.

How much?


> Cheers,
> Juan Vuletich

> Ps. What do you mean by "the stream of Craig"?

A while ago craig reimplemented a subpart of stream but to use them  
you have to destroy the default library.
Net result we lost his work.
Now with Nile this is different you can load Nile and use it if you  
want and migrate from stream to Nile
when you want. For Morphic 3 I imagine well that event processing can  
be difficult to get m2 and m3 working
but this was not what I asked. Just the fact that people want to be  
able to load your code in their image.

Stef

Reply | Threaded
Open this post in threaded view
|

re: streams (was "lessphic")

ccrraaiigg

 > A while ago craig reimplemented a subpart of stream but to use them
 > you have to destroy the default library.

      That's not true. I wrote a complete hierarchy. There were a few
class name conflicts; one can simply rename one group or the other. In
the meantime I have been working on a way to make class name conflicts
irrelevant.

 > Net result we lost his work.

      Not all of us did. :)


      thanks,

-C

--
Craig Latta
improvisational musical informaticist
www.netjam.org
Smalltalkers do: [:it | All with: Class, (And love: it)]


Reply | Threaded
Open this post in threaded view
|

Re: lessphic? may be a future for morphic

Juan Vuletich-4
In reply to this post by Igor Stasenko
Igor Stasenko wrote:
>
>
> I didn't examined your Morphic 3 design precisely, but using a Display
> (as it currently represented in Squeak) is exactly what i'm against.
>  

Ok.

> It's like interacting with hardware directly, bypassing software drivers.
>  

Not at all. I did interact with hardware directly. The result is
non-portable. Assuming the Display might have some limitations, but
portability is not an issue.

> Display should represent a device with own set of capabilities. Canvas
> providing a generic abstract layer for interacting it. Morphs should
> use canvas , but assume nothing about existence of  Display or Printer
> or Whatever.
>  

Sure. Morphic 3 assumes Display. But not the morphs. Only the Canvas and
rendering engine. Morphs only know about Canvas services. Writing the
kinds of canvases you mention is perfectly possible.

> Otherwise, once you start using Display, soon it will become too tied
> together, and you start mixing things in one cup, just because you
> assuming that everything what you doing will be rendered using
> Display, so you starting care less about other devices/surfaces,
> limiting it and finally bury it down under heap of optimizations :)
>
>  

Sure.

Cheers,
Juan Vuletich


Reply | Threaded
Open this post in threaded view
|

Re: lessphic? may be a future for morphic

Juan Vuletich-4
In reply to this post by Igor Stasenko
Igor Stasenko wrote:

> And some notes about input.
> Again, morphic should not assume that there are standard input devices
> , like keyboard and mouse, it's should be able to interact with any
> available input devices.
> For this, i think, we should think twice on how introduce different
> events in future morphic system.
>
> For instance, what is the point in having #handlesMouseDown: ,
> #keyDown: methods, when there is no mouse/keyboard on platform (assume
> i run squeak on touchpad)?
>
> These layers should be detached from each other, i think, and morphs
> should react on more abstract (or generalised) events.
>
>  
I still haven't thought much about this, but I fully agree. If you have
further ideas on this, I'd like to know.

Cheers,
Juan Vuletich


Reply | Threaded
Open this post in threaded view
|

Re: lessphic? may be a future for morphic

Juan Vuletich-4
In reply to this post by stephane ducasse
stephane ducasse wrote:
> I liked the earth spinning :)

Thanks!

>
>> Please read my documents, and let's talk about coordinate systems!
>> Currently I have implemented Cartesian, LogX and a few cartographic.
>> Watch the demo at Smalltalks 2007 at
>> http://www.youtube.com/watch?v=90TGhRZUSOo . It is worth watching
>> even if you don't understand my Spanish.
> So when will we get a version 1.0 of Morphic 3.0?
>
>
Hopefully during this year.

Cheers,
Juan Vuletich


Reply | Threaded
Open this post in threaded view
|

Re: lessphic? may be a future for morphic

Juan Vuletich-4
In reply to this post by stephane ducasse
I will answer in private email.

Cheers,
Juan Vuletich

stephane ducasse wrote:

>
> On Jan 30, 2008, at 12:31 PM, Juan Vuletich wrote:
>
>> - get Esug to sponsor me. If I could work full time on M3, things
>> would go much faster.
>
> How much?
>
>
>> Cheers,
>> Juan Vuletich
>
>> Ps. What do you mean by "the stream of Craig"?
>
> A while ago craig reimplemented a subpart of stream but to use them
> you have to destroy the default library.
> Net result we lost his work.
> Now with Nile this is different you can load Nile and use it if you
> want and migrate from stream to Nile
> when you want. For Morphic 3 I imagine well that event processing can
> be difficult to get m2 and m3 working
> but this was not what I asked. Just the fact that people want to be
> able to load your code in their image.
>
> Stef
>
>
>



Reply | Threaded
Open this post in threaded view
|

Re: lessphic? may be a future for morphic

Juan Vuletich-4
In reply to this post by Bert Freudenberg
Bert Freudenberg wrote:
>
> I am beginning to understand your point :) Yes, having that power in
> the base system would be cool. I still think it can be implemented on
> latest-gen OpenGL hardware (which can do the non-linear transform and
> adaptively tesselate curves to pixel resolution) but that then would
> be just an optimization.
>
> - Bert -
>

Do you have any links on this OpenGL stuff?

Cheers,
Juan Vuletich

123