The Morphic 3 project

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

The Morphic 3 project

Juan Vuletich-4
Hi Folks,

I'm new to this list, but many of you already know me.

Morphic 3 is a deep redesign of the Morphic framework. It includes new
rendering algorithms I developed that produce unparalleled visual
quality. Really. This is the best 2d rendering in the world. You can
take a look at  www.jvuletich.org. I have been working a lot recently,
and uploaded several very cool samples for you to see.

I also want to thank publicly to Stef Ducasse and ESUG, as they are
sponsoring Morphic 3 via the "support your project" program, described
in http://www.esug.org/Promotion/Project . Thanks ESUG!

Comments welcome.

Cheers,
Juan Vuletich

_______________________________________________
Pharo-project mailing list
[hidden email]
http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project
Reply | Threaded
Open this post in threaded view
|

Re: The Morphic 3 project

Lukas Renggli
Hi Juan,

This looks really exiting!

How do you get the actual pixels drawn? Is this implemented in
Smalltalk? Did you write primitives to do that? Are you using external
libraries? How does it compare performance wise with the current
rendering?

Lukas

On 2 June 2010 13:43, Juan Vuletich <[hidden email]> wrote:

> Hi Folks,
>
> I'm new to this list, but many of you already know me.
>
> Morphic 3 is a deep redesign of the Morphic framework. It includes new
> rendering algorithms I developed that produce unparalleled visual quality.
> Really. This is the best 2d rendering in the world. You can take a look at
>  www.jvuletich.org. I have been working a lot recently, and uploaded several
> very cool samples for you to see.
>
> I also want to thank publicly to Stef Ducasse and ESUG, as they are
> sponsoring Morphic 3 via the "support your project" program, described in
> http://www.esug.org/Promotion/Project . Thanks ESUG!
>
> Comments welcome.
>
> Cheers,
> Juan Vuletich
>
> _______________________________________________
> Pharo-project mailing list
> [hidden email]
> http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project
>



--
Lukas Renggli
www.lukas-renggli.ch

_______________________________________________
Pharo-project mailing list
[hidden email]
http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project
Reply | Threaded
Open this post in threaded view
|

Re: The Morphic 3 project

Juan Vuletich-4
Lukas Renggli wrote:

> Hi Juan,
>
> This looks really exiting!
>
> How do you get the actual pixels drawn? Is this implemented in
> Smalltalk? Did you write primitives to do that? Are you using external
> libraries? How does it compare performance wise with the current
> rendering?
>
> Lukas
>
>  

Hi Lukas,

I'm glad you like it. It is all done in Smalltalk. There are no external
libraries. In fact, I developed new drawing algorithms that are better
than those in Cairo, AGG, etc. So there are no libraries in existence I
could call!

The sampling theorem is about 80 years old. It is the base (together
with Fourier analysis) of most of the DSP (Digital Signal Processing)
field. It is therefore the basis of digital audio and photography. But
it seems I am the first one to apply it to 2d rendering! I have been
working on this for the last 3 years, after finishing my Ms.Sc. in CS on
Image and Signal Processing. I had to establish the theoretical
foundations, and come up with new algorithms to draw basic elements
using this theory. What you see are the first practical result of all
this work.

It is still pure Smalltalk, and therefore, a bit slow. The lion takes
1.8 secs to draw on my 1.6GHz Mac mini. I am still changing the code a
lot, but when it stabilizes I'll do a VM plugin. I guess it would be
about 100 times faster. The other option is to use Igor's NativeBoost.
That could perhaps be 10 times faster than the plugin, at the cost of
portability and hand written asm (I'd done lots of asm in a previous life).

Cheers,
Juan Vuletich

> On 2 June 2010 13:43, Juan Vuletich <[hidden email]> wrote:
>  
>> Hi Folks,
>>
>> I'm new to this list, but many of you already know me.
>>
>> Morphic 3 is a deep redesign of the Morphic framework. It includes new
>> rendering algorithms I developed that produce unparalleled visual quality.
>> Really. This is the best 2d rendering in the world. You can take a look at
>>  www.jvuletich.org. I have been working a lot recently, and uploaded several
>> very cool samples for you to see.
>>
>> I also want to thank publicly to Stef Ducasse and ESUG, as they are
>> sponsoring Morphic 3 via the "support your project" program, described in
>> http://www.esug.org/Promotion/Project . Thanks ESUG!
>>
>> Comments welcome.
>>
>> Cheers,
>> Juan Vuletich
>>
>> _______________________________________________
>> Pharo-project mailing list
>> [hidden email]
>> http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project
>>
>>    
>
>
>
>  
> ------------------------------------------------------------------------
>
>
> No virus found in this incoming message.
> Checked by AVG - www.avg.com
> Version: 9.0.819 / Virus Database: 271.1.1/2912 - Release Date: 06/02/10 03:25:00
>
>  


_______________________________________________
Pharo-project mailing list
[hidden email]
http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project
Reply | Threaded
Open this post in threaded view
|

Re: The Morphic 3 project

Alexandre Bergel-4
Hi Juan,

This is __really__ cool.

Cheers,
Alexandre

On 2 Jun 2010, at 08:16, Juan Vuletich wrote:

> Lukas Renggli wrote:
>> Hi Juan,
>>
>> This looks really exiting!
>>
>> How do you get the actual pixels drawn? Is this implemented in
>> Smalltalk? Did you write primitives to do that? Are you using external
>> libraries? How does it compare performance wise with the current
>> rendering?
>>
>> Lukas
>>
>>  
>
> Hi Lukas,
>
> I'm glad you like it. It is all done in Smalltalk. There are no external libraries. In fact, I developed new drawing algorithms that are better than those in Cairo, AGG, etc. So there are no libraries in existence I could call!
>
> The sampling theorem is about 80 years old. It is the base (together with Fourier analysis) of most of the DSP (Digital Signal Processing) field. It is therefore the basis of digital audio and photography. But it seems I am the first one to apply it to 2d rendering! I have been working on this for the last 3 years, after finishing my Ms.Sc. in CS on Image and Signal Processing. I had to establish the theoretical foundations, and come up with new algorithms to draw basic elements using this theory. What you see are the first practical result of all this work.
>
> It is still pure Smalltalk, and therefore, a bit slow. The lion takes 1.8 secs to draw on my 1.6GHz Mac mini. I am still changing the code a lot, but when it stabilizes I'll do a VM plugin. I guess it would be about 100 times faster. The other option is to use Igor's NativeBoost. That could perhaps be 10 times faster than the plugin, at the cost of portability and hand written asm (I'd done lots of asm in a previous life).
>
> Cheers,
> Juan Vuletich
>
>> On 2 June 2010 13:43, Juan Vuletich <[hidden email]> wrote:
>>  
>>> Hi Folks,
>>>
>>> I'm new to this list, but many of you already know me.
>>>
>>> Morphic 3 is a deep redesign of the Morphic framework. It includes new
>>> rendering algorithms I developed that produce unparalleled visual quality.
>>> Really. This is the best 2d rendering in the world. You can take a look at
>>> www.jvuletich.org. I have been working a lot recently, and uploaded several
>>> very cool samples for you to see.
>>>
>>> I also want to thank publicly to Stef Ducasse and ESUG, as they are
>>> sponsoring Morphic 3 via the "support your project" program, described in
>>> http://www.esug.org/Promotion/Project . Thanks ESUG!
>>>
>>> Comments welcome.
>>>
>>> Cheers,
>>> Juan Vuletich
>>>
>>> _______________________________________________
>>> Pharo-project mailing list
>>> [hidden email]
>>> http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project
>>>
>>>    
>>
>>
>>
>>  ------------------------------------------------------------------------
>>
>>
>> No virus found in this incoming message.
>> Checked by AVG - www.avg.com Version: 9.0.819 / Virus Database: 271.1.1/2912 - Release Date: 06/02/10 03:25:00
>>
>>  
>
>
> _______________________________________________
> Pharo-project mailing list
> [hidden email]
> http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project


_______________________________________________
Pharo-project mailing list
[hidden email]
http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project
Reply | Threaded
Open this post in threaded view
|

Re: The Morphic 3 project

Tudor Girba
Actually, this is beyond cool :)

Doru


On 2 Jun 2010, at 17:42, Alexandre Bergel wrote:

> Hi Juan,
>
> This is __really__ cool.
>
> Cheers,
> Alexandre
>
> On 2 Jun 2010, at 08:16, Juan Vuletich wrote:
>
>> Lukas Renggli wrote:
>>> Hi Juan,
>>>
>>> This looks really exiting!
>>>
>>> How do you get the actual pixels drawn? Is this implemented in
>>> Smalltalk? Did you write primitives to do that? Are you using  
>>> external
>>> libraries? How does it compare performance wise with the current
>>> rendering?
>>>
>>> Lukas
>>>
>>>
>>
>> Hi Lukas,
>>
>> I'm glad you like it. It is all done in Smalltalk. There are no  
>> external libraries. In fact, I developed new drawing algorithms  
>> that are better than those in Cairo, AGG, etc. So there are no  
>> libraries in existence I could call!
>>
>> The sampling theorem is about 80 years old. It is the base  
>> (together with Fourier analysis) of most of the DSP (Digital Signal  
>> Processing) field. It is therefore the basis of digital audio and  
>> photography. But it seems I am the first one to apply it to 2d  
>> rendering! I have been working on this for the last 3 years, after  
>> finishing my Ms.Sc. in CS on Image and Signal Processing. I had to  
>> establish the theoretical foundations, and come up with new  
>> algorithms to draw basic elements using this theory. What you see  
>> are the first practical result of all this work.
>>
>> It is still pure Smalltalk, and therefore, a bit slow. The lion  
>> takes 1.8 secs to draw on my 1.6GHz Mac mini. I am still changing  
>> the code a lot, but when it stabilizes I'll do a VM plugin. I guess  
>> it would be about 100 times faster. The other option is to use  
>> Igor's NativeBoost. That could perhaps be 10 times faster than the  
>> plugin, at the cost of portability and hand written asm (I'd done  
>> lots of asm in a previous life).
>>
>> Cheers,
>> Juan Vuletich
>>
>>> On 2 June 2010 13:43, Juan Vuletich <[hidden email]> wrote:
>>>
>>>> Hi Folks,
>>>>
>>>> I'm new to this list, but many of you already know me.
>>>>
>>>> Morphic 3 is a deep redesign of the Morphic framework. It  
>>>> includes new
>>>> rendering algorithms I developed that produce unparalleled visual  
>>>> quality.
>>>> Really. This is the best 2d rendering in the world. You can take  
>>>> a look at
>>>> www.jvuletich.org. I have been working a lot recently, and  
>>>> uploaded several
>>>> very cool samples for you to see.
>>>>
>>>> I also want to thank publicly to Stef Ducasse and ESUG, as they are
>>>> sponsoring Morphic 3 via the "support your project" program,  
>>>> described in
>>>> http://www.esug.org/Promotion/Project . Thanks ESUG!
>>>>
>>>> Comments welcome.
>>>>
>>>> Cheers,
>>>> Juan Vuletich
>>>>
>>>> _______________________________________________
>>>> Pharo-project mailing list
>>>> [hidden email]
>>>> http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project
>>>>
>>>>
>>>
>>>
>>>
>>> ------------------------------------------------------------------------
>>>
>>>
>>> No virus found in this incoming message.
>>> Checked by AVG - www.avg.com Version: 9.0.819 / Virus Database:  
>>> 271.1.1/2912 - Release Date: 06/02/10 03:25:00
>>>
>>>
>>
>>
>> _______________________________________________
>> Pharo-project mailing list
>> [hidden email]
>> http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project
>
>
> _______________________________________________
> Pharo-project mailing list
> [hidden email]
> http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project

--
www.tudorgirba.com

"It's not how it is, it is how we see it."


_______________________________________________
Pharo-project mailing list
[hidden email]
http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project
Reply | Threaded
Open this post in threaded view
|

Re: The Morphic 3 project

Douglas Brebner
In reply to this post by Juan Vuletich-4
On 02/06/2010 12:43, Juan Vuletich wrote:

> Hi Folks,
>
> I'm new to this list, but many of you already know me.
>
> Morphic 3 is a deep redesign of the Morphic framework. It includes new
> rendering algorithms I developed that produce unparalleled visual
> quality. Really. This is the best 2d rendering in the world. You can
> take a look at  www.jvuletich.org. I have been working a lot recently,
> and uploaded several very cool samples for you to see.
>

This is awesome :)

I'm wondering though, what you intend for the input side. There's a lot
of touch screen and multitouch devices around now which would be nice to
directly support in addition to keyboard + mouse, things like pinch-zoom
on a ZUI would be cool :)

_______________________________________________
Pharo-project mailing list
[hidden email]
http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project
Reply | Threaded
Open this post in threaded view
|

Re: The Morphic 3 project

Richard Durr-2
Woah, cool. ^^

On Wed, Jun 2, 2010 at 8:44 PM, Douglas Brebner
<[hidden email]> wrote:

> On 02/06/2010 12:43, Juan Vuletich wrote:
>>
>> Hi Folks,
>>
>> I'm new to this list, but many of you already know me.
>>
>> Morphic 3 is a deep redesign of the Morphic framework. It includes new
>> rendering algorithms I developed that produce unparalleled visual quality.
>> Really. This is the best 2d rendering in the world. You can take a look at
>>  www.jvuletich.org. I have been working a lot recently, and uploaded several
>> very cool samples for you to see.
>>
>
> This is awesome :)
>
> I'm wondering though, what you intend for the input side. There's a lot of
> touch screen and multitouch devices around now which would be nice to
> directly support in addition to keyboard + mouse, things like pinch-zoom on
> a ZUI would be cool :)
>
> _______________________________________________
> Pharo-project mailing list
> [hidden email]
> http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project
>

_______________________________________________
Pharo-project mailing list
[hidden email]
http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project
Reply | Threaded
Open this post in threaded view
|

Re: The Morphic 3 project

Juan Vuletich-4
In reply to this post by Douglas Brebner
Douglas Brebner wrote:

> On 02/06/2010 12:43, Juan Vuletich wrote:
>> Hi Folks,
>>
>> I'm new to this list, but many of you already know me.
>>
>> Morphic 3 is a deep redesign of the Morphic framework. It includes
>> new rendering algorithms I developed that produce unparalleled visual
>> quality. Really. This is the best 2d rendering in the world. You can
>> take a look at  www.jvuletich.org. I have been working a lot
>> recently, and uploaded several very cool samples for you to see.
>>
>
> This is awesome :)
>
> I'm wondering though, what you intend for the input side. There's a
> lot of touch screen and multitouch devices around now which would be
> nice to directly support in addition to keyboard + mouse, things like
> pinch-zoom on a ZUI would be cool :)
Yes, that would be cool. I also thought about multi user multi touch
tables, where I need to handle input form several fingers
simultaneously, that can belong or not to the same hand (user). Also
multiple standard and MIDI keyboards, continuous MIDI controllers, pen
tablets, more "special" input devices, such as the voice and various
devices designed for people with disabilities, etc... But I have done
nothing of this yet.

Cheers,
Juan Vuletich

_______________________________________________
Pharo-project mailing list
[hidden email]
http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project
Reply | Threaded
Open this post in threaded view
|

Re: The Morphic 3 project

Stéphane Ducasse
finishing something is always taking time and this is great to see you making progress on that front.
For the PhD it could be full time job to sell that.
Did you identify potential research group?

Stef

> Douglas Brebner wrote:
>> On 02/06/2010 12:43, Juan Vuletich wrote:
>>> Hi Folks,
>>>
>>> I'm new to this list, but many of you already know me.
>>>
>>> Morphic 3 is a deep redesign of the Morphic framework. It includes new rendering algorithms I developed that produce unparalleled visual quality. Really. This is the best 2d rendering in the world. You can take a look at  www.jvuletich.org. I have been working a lot recently, and uploaded several very cool samples for you to see.
>>>
>>
>> This is awesome :)
>>
>> I'm wondering though, what you intend for the input side. There's a lot of touch screen and multitouch devices around now which would be nice to directly support in addition to keyboard + mouse, things like pinch-zoom on a ZUI would be cool :)
> Yes, that would be cool. I also thought about multi user multi touch tables, where I need to handle input form several fingers simultaneously, that can belong or not to the same hand (user). Also multiple standard and MIDI keyboards, continuous MIDI controllers, pen tablets, more "special" input devices, such as the voice and various devices designed for people with disabilities, etc... But I have done nothing of this yet.
>
> Cheers,
> Juan Vuletich
>
> _______________________________________________
> Pharo-project mailing list
> [hidden email]
> http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project


_______________________________________________
Pharo-project mailing list
[hidden email]
http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project
Reply | Threaded
Open this post in threaded view
|

Re: The Morphic 3 project

Brian Brown-6
In reply to this post by Juan Vuletich-4
Juan Vuletich wrote:

> Yes, that would be cool. I also thought about multi user multi touch
> tables, where I need to handle input form several fingers
> simultaneously, that can belong or not to the same hand (user). Also
> multiple standard and MIDI keyboards, continuous MIDI controllers, pen
> tablets, more "special" input devices, such as the voice and various
> devices designed for people with disabilities, etc... But I have done
> nothing of this yet.
>
> Cheers,
> Juan Vuletich
>

On a related note... when I went to your website and looked at the svg
samples, there is only one link for each pair of images; for example,
both lion pictures are linked to:

         http://www.jvuletich.org/Morphic3/lionx.svg

This is the same for all pictures, so it is hard to compare in an SVG
viewer ;)

- Brian

_______________________________________________
Pharo-project mailing list
[hidden email]
http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project
Reply | Threaded
Open this post in threaded view
|

Re: The Morphic 3 project

Juan Vuletich-4
In reply to this post by Stéphane Ducasse
Stéphane Ducasse wrote:
> finishing something is always taking time and this is great to see you making progress on that front.
> For the PhD it could be full time job to sell that.
> Did you identify potential research group?
>
> Stef
>  

I'm trying to contact a research group on graphics at my university, but
without luck so far.

Cheers,
Juna Vuletich

>> Douglas Brebner wrote:
>>    
>>> On 02/06/2010 12:43, Juan Vuletich wrote:
>>>      
>>>> Hi Folks,
>>>>
>>>> I'm new to this list, but many of you already know me.
>>>>
>>>> Morphic 3 is a deep redesign of the Morphic framework. It includes new rendering algorithms I developed that produce unparalleled visual quality. Really. This is the best 2d rendering in the world. You can take a look at  www.jvuletich.org. I have been working a lot recently, and uploaded several very cool samples for you to see.
>>>>
>>>>        
>>> This is awesome :)
>>>
>>> I'm wondering though, what you intend for the input side. There's a lot of touch screen and multitouch devices around now which would be nice to directly support in addition to keyboard + mouse, things like pinch-zoom on a ZUI would be cool :)
>>>      
>> Yes, that would be cool. I also thought about multi user multi touch tables, where I need to handle input form several fingers simultaneously, that can belong or not to the same hand (user). Also multiple standard and MIDI keyboards, continuous MIDI controllers, pen tablets, more "special" input devices, such as the voice and various devices designed for people with disabilities, etc... But I have done nothing of this yet.
>>
>> Cheers,
>> Juan Vuletich
>>    


_______________________________________________
Pharo-project mailing list
[hidden email]
http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project
Reply | Threaded
Open this post in threaded view
|

Re: The Morphic 3 project

Juan Vuletich-4
In reply to this post by Brian Brown-6
Brian Brown wrote:

> Juan Vuletich wrote:
>
>> Yes, that would be cool. I also thought about multi user multi touch
>> tables, where I need to handle input form several fingers
>> simultaneously, that can belong or not to the same hand (user). Also
>> multiple standard and MIDI keyboards, continuous MIDI controllers, pen
>> tablets, more "special" input devices, such as the voice and various
>> devices designed for people with disabilities, etc... But I have done
>> nothing of this yet.
>>
>> Cheers,
>> Juan Vuletich
>>
>
> On a related note... when I went to your website and looked at the svg
> samples, there is only one link for each pair of images; for example,
> both lion pictures are linked to:
>
>      http://www.jvuletich.org/Morphic3/lionx.svg
>
> This is the same for all pictures, so it is hard to compare in an SVG
> viewer ;)
>
> - Brian

My work is not about creating svg files but about rendering them. The
links are the same because they point to the original svg (vector
graphics) file used to render both in Inkscape and in Morphic 3. If you
want to save the rendered versions, your web browser should allow
something like right click / Save image As...

Cheers,
Juan Vuletich

_______________________________________________
Pharo-project mailing list
[hidden email]
http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project
Reply | Threaded
Open this post in threaded view
|

Re: The Morphic 3 project

Brian Brown-6
Juan Vuletich wrote:

> My work is not about creating svg files but about rendering them. The
> links are the same because they point to the original svg (vector
> graphics) file used to render both in Inkscape and in Morphic 3. If you
> want to save the rendered versions, your web browser should allow
> something like right click / Save image As...
>
Sorry, a misunderstanding on my part - I get it now!



_______________________________________________
Pharo-project mailing list
[hidden email]
http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project
Reply | Threaded
Open this post in threaded view
|

Re: The Morphic 3 project

Igor Stasenko
In reply to this post by Juan Vuletich-4
On 2 June 2010 15:16, Juan Vuletich <[hidden email]> wrote:

> Lukas Renggli wrote:
>>
>> Hi Juan,
>>
>> This looks really exiting!
>>
>> How do you get the actual pixels drawn? Is this implemented in
>> Smalltalk? Did you write primitives to do that? Are you using external
>> libraries? How does it compare performance wise with the current
>> rendering?
>>
>> Lukas
>>
>>
>
> Hi Lukas,
>
> I'm glad you like it. It is all done in Smalltalk. There are no external
> libraries. In fact, I developed new drawing algorithms that are better than
> those in Cairo, AGG, etc. So there are no libraries in existence I could
> call!
>
> The sampling theorem is about 80 years old. It is the base (together with
> Fourier analysis) of most of the DSP (Digital Signal Processing) field. It
> is therefore the basis of digital audio and photography. But it seems I am
> the first one to apply it to 2d rendering! I have been working on this for
> the last 3 years, after finishing my Ms.Sc. in CS on Image and Signal
> Processing. I had to establish the theoretical foundations, and come up with
> new algorithms to draw basic elements using this theory. What you see are
> the first practical result of all this work.
>
> It is still pure Smalltalk, and therefore, a bit slow. The lion takes 1.8
> secs to draw on my 1.6GHz Mac mini. I am still changing the code a lot, but
> when it stabilizes I'll do a VM plugin. I guess it would be about 100 times
> faster. The other option is to use Igor's NativeBoost. That could perhaps be
> 10 times faster than the plugin, at the cost of portability and hand written
> asm (I'd done lots of asm in a previous life).
>

Last year i built an SVG API bindings. And i were able to render the Tiger
at screen refresh rate (65Hz). The rendering throughput is even higher
than that,
but it looks like SVG implementation limits the frame rate to screen
refresh rate as maximum :)

Sure thing, the quality is not that high as yours,
but still, it shows how much speed-up we could achieve, if we put all
processing on
GPU side.

It would be cool if we could cooperate and implement this stuff using
OpenGL as backend.

> Cheers,
> Juan Vuletich
>
>> On 2 June 2010 13:43, Juan Vuletich <[hidden email]> wrote:
>>
>>>
>>> Hi Folks,
>>>
>>> I'm new to this list, but many of you already know me.
>>>
>>> Morphic 3 is a deep redesign of the Morphic framework. It includes new
>>> rendering algorithms I developed that produce unparalleled visual
>>> quality.
>>> Really. This is the best 2d rendering in the world. You can take a look
>>> at
>>>  www.jvuletich.org. I have been working a lot recently, and uploaded
>>> several
>>> very cool samples for you to see.
>>>
>>> I also want to thank publicly to Stef Ducasse and ESUG, as they are
>>> sponsoring Morphic 3 via the "support your project" program, described in
>>> http://www.esug.org/Promotion/Project . Thanks ESUG!
>>>
>>> Comments welcome.
>>>
>>> Cheers,
>>> Juan Vuletich
>>>
>>> _______________________________________________
>>> Pharo-project mailing list
>>> [hidden email]
>>> http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project
>>>
>>>
>>
>>
>>
>>  ------------------------------------------------------------------------
>>
>>
>> No virus found in this incoming message.
>> Checked by AVG - www.avg.com Version: 9.0.819 / Virus Database:
>> 271.1.1/2912 - Release Date: 06/02/10 03:25:00
>>
>>
>
>
> _______________________________________________
> Pharo-project mailing list
> [hidden email]
> http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project
>



--
Best regards,
Igor Stasenko AKA sig.

_______________________________________________
Pharo-project mailing list
[hidden email]
http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project
Reply | Threaded
Open this post in threaded view
|

Re: The Morphic 3 project

Juan Vuletich-4
Igor Stasenko wrote:

> On 2 June 2010 15:16, Juan Vuletich <[hidden email]> wrote:
>  
>> Lukas Renggli wrote:
>>    
>>> Hi Juan,
>>>
>>> This looks really exiting!
>>>
>>> How do you get the actual pixels drawn? Is this implemented in
>>> Smalltalk? Did you write primitives to do that? Are you using external
>>> libraries? How does it compare performance wise with the current
>>> rendering?
>>>
>>> Lukas
>>>
>>>
>>>      
>> Hi Lukas,
>>
>> I'm glad you like it. It is all done in Smalltalk. There are no external
>> libraries. In fact, I developed new drawing algorithms that are better than
>> those in Cairo, AGG, etc. So there are no libraries in existence I could
>> call!
>>
>> The sampling theorem is about 80 years old. It is the base (together with
>> Fourier analysis) of most of the DSP (Digital Signal Processing) field. It
>> is therefore the basis of digital audio and photography. But it seems I am
>> the first one to apply it to 2d rendering! I have been working on this for
>> the last 3 years, after finishing my Ms.Sc. in CS on Image and Signal
>> Processing. I had to establish the theoretical foundations, and come up with
>> new algorithms to draw basic elements using this theory. What you see are
>> the first practical result of all this work.
>>
>> It is still pure Smalltalk, and therefore, a bit slow. The lion takes 1.8
>> secs to draw on my 1.6GHz Mac mini. I am still changing the code a lot, but
>> when it stabilizes I'll do a VM plugin. I guess it would be about 100 times
>> faster. The other option is to use Igor's NativeBoost. That could perhaps be
>> 10 times faster than the plugin, at the cost of portability and hand written
>> asm (I'd done lots of asm in a previous life).
>>
>>    
>
> Last year i built an SVG API bindings. And i were able to render the Tiger
> at screen refresh rate (65Hz). The rendering throughput is even higher
> than that,
> but it looks like SVG implementation limits the frame rate to screen
> refresh rate as maximum :)
>
> Sure thing, the quality is not that high as yours,
> but still, it shows how much speed-up we could achieve, if we put all
> processing on
> GPU side.
>
> It would be cool if we could cooperate and implement this stuff using
> OpenGL as backend

Indeed. Although I wonder if OpenGL is general enough to implement it...
I mean, the only standard operation I do is to blend pixels...
Everything else is done with new algorithms. Without being an OpenGL
expert, I believe that CUDA / OpenCL would be better suited.

Cheers,
Juan Vuletich

_______________________________________________
Pharo-project mailing list
[hidden email]
http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project
Reply | Threaded
Open this post in threaded view
|

Re: The Morphic 3 project

Igor Stasenko
On 4 June 2010 16:26, Juan Vuletich <[hidden email]> wrote:

> Igor Stasenko wrote:
>>
>> On 2 June 2010 15:16, Juan Vuletich <[hidden email]> wrote:
>>
>>>
>>> Lukas Renggli wrote:
>>>
>>>>
>>>> Hi Juan,
>>>>
>>>> This looks really exiting!
>>>>
>>>> How do you get the actual pixels drawn? Is this implemented in
>>>> Smalltalk? Did you write primitives to do that? Are you using external
>>>> libraries? How does it compare performance wise with the current
>>>> rendering?
>>>>
>>>> Lukas
>>>>
>>>>
>>>>
>>>
>>> Hi Lukas,
>>>
>>> I'm glad you like it. It is all done in Smalltalk. There are no external
>>> libraries. In fact, I developed new drawing algorithms that are better
>>> than
>>> those in Cairo, AGG, etc. So there are no libraries in existence I could
>>> call!
>>>
>>> The sampling theorem is about 80 years old. It is the base (together with
>>> Fourier analysis) of most of the DSP (Digital Signal Processing) field.
>>> It
>>> is therefore the basis of digital audio and photography. But it seems I
>>> am
>>> the first one to apply it to 2d rendering! I have been working on this
>>> for
>>> the last 3 years, after finishing my Ms.Sc. in CS on Image and Signal
>>> Processing. I had to establish the theoretical foundations, and come up
>>> with
>>> new algorithms to draw basic elements using this theory. What you see are
>>> the first practical result of all this work.
>>>
>>> It is still pure Smalltalk, and therefore, a bit slow. The lion takes 1.8
>>> secs to draw on my 1.6GHz Mac mini. I am still changing the code a lot,
>>> but
>>> when it stabilizes I'll do a VM plugin. I guess it would be about 100
>>> times
>>> faster. The other option is to use Igor's NativeBoost. That could perhaps
>>> be
>>> 10 times faster than the plugin, at the cost of portability and hand
>>> written
>>> asm (I'd done lots of asm in a previous life).
>>>
>>>
>>
>> Last year i built an SVG API bindings. And i were able to render the Tiger
>> at screen refresh rate (65Hz). The rendering throughput is even higher
>> than that,
>> but it looks like SVG implementation limits the frame rate to screen
>> refresh rate as maximum :)
>>
>> Sure thing, the quality is not that high as yours,
>> but still, it shows how much speed-up we could achieve, if we put all
>> processing on
>> GPU side.
>>
>> It would be cool if we could cooperate and implement this stuff using
>> OpenGL as backend
>
> Indeed. Although I wonder if OpenGL is general enough to implement it... I
> mean, the only standard operation I do is to blend pixels... Everything else
> is done with new algorithms. Without being an OpenGL expert, I believe that
> CUDA / OpenCL would be better suited.
>

I don't know. But i don't think it is too different from many other
techniques, which
implemented using shaders.
The rendering algorithms is highly parallelisable, that's why GPU is
best place where
they should run. And i guess, your algorithms is not an exception.

I see there are two separate stages for rendering:
 1. rasterize the path to mask (including pixel coverage)
 2. fill the mask with paint

Both can be implemented quite efficiently on GPU.

> Cheers,
> Juan Vuletich
>
> _______________________________________________
> Pharo-project mailing list
> [hidden email]
> http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project
>


--
Best regards,
Igor Stasenko AKA sig.

_______________________________________________
Pharo-project mailing list
[hidden email]
http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project