od[forum]: a shader each day - od[forum]

Jump to content

  • (8 Pages)
  • +
  • « First
  • 2
  • 3
  • 4
  • 5
  • 6
  • Last »
  • You cannot start a new topic
  • You cannot reply to this topic

a shader each day what it keeps away I don't know - but it can't hurt

#37 User is offline   rdg Icon

  • Houdini Master
  • PipPipPipPip
  • Group: Members
  • Posts: 548
  • Joined: 21-August 05
  • Gender:Male
  • Location:Vancouver, CA
  • Name:Georg
  • Duemlein

Posted 27 July 2008 - 04:33 AM

Andz,
Thanks for waiting - I missed me too :(
I finally found my way to "tchainova" - a tea pub across the street, that offers: "buy some tea - get wifi free".

Day 10: dashed selected sprites

Posted Image

The boxVOP seems to produce far more stable results. I'll try Jasons shading quality tipp next - and rework my "constant width" approach.
Also I need to copy the derrivate snipped to test it with this shader ...
The boxVOP is mixed with a wirepatternVOP to generate the dashes.

...

Yes, upping the shading quality makes a difference ... thanks Jason!
So many parameters, so little time.


Day 11: RDGautomaton - not a shader


Posted Image

This no shader at all. It's a pythonSOP that generates cellular autmatons as descibed in "A new kind of science" [1].
I get the impression that a VOPSOP might be way faster. It's b/w as I didn't understand how to multiply colors in python.

[1] http://www.wolframsc...online/toc.html

This post has been edited by rdg: 27 July 2008 - 04:47 AM

Georg Duemlein [www.preset.de]
<i>Certified Houdini Instructor</i>
0

#38 User is offline   rdg Icon

  • Houdini Master
  • PipPipPipPip
  • Group: Members
  • Posts: 548
  • Joined: 21-August 05
  • Gender:Male
  • Location:Vancouver, CA
  • Name:Georg
  • Duemlein

Posted 29 July 2008 - 01:10 AM

Errata Day 9:

After having a second look at my "constant border width":
I completely forgot about Z - and I guess the borders have a constant with - the distance to camera makes them fade.
Therefore my next version should take Z into account.
Day 10 version looks like constant width as the width is just 0.01 s/t and in almost any case will be rendered as just one pixel.

This post has been edited by rdg: 29 July 2008 - 01:11 AM

Georg Duemlein [www.preset.de]
<i>Certified Houdini Instructor</i>
0

#39 User is offline   ykcosmo Icon

  • Illusionist
  • PipPipPip
  • Group: Members
  • Posts: 344
  • Joined: 07-May 03
  • Gender:Male
  • Location:Sydney
  • Name:Kun
  • Yin

Posted 29 July 2008 - 07:45 AM

wow, very cool!!!
^_^
0

#40 User is offline   rdg Icon

  • Houdini Master
  • PipPipPipPip
  • Group: Members
  • Posts: 548
  • Joined: 21-August 05
  • Gender:Male
  • Location:Vancouver, CA
  • Name:Georg
  • Duemlein

Posted 18 August 2008 - 12:56 AM

Another Day

I had the chance to speak as an opening act for "Oldschool Blog Live!" at Siggraph2008.

Posted Image

The presentation was about cellular automata as an example of Houdini's workflow: creating complex results from rather basic rules.
You can download the presentation, the OTL and a example file from the exchange:
http://www.sidefx.co...m...er&Itemid=8

As a bonus for my loyal odforce readers - here is the annoymentSOP:
Attached File  annoymentSOP.hip (36.99K)
Number of downloads: 191

It utilises the new 9.5 scriptSOP - just dive into the network and press play.

Cheers,

Georg
Georg Duemlein [www.preset.de]
<i>Certified Houdini Instructor</i>
0

#41 User is offline   Jason Icon

  • King Tapir
  • PipPipPipPipPip
  • Group: Admin
  • Posts: 3,577
  • Joined: 08-November 00
  • Gender:Male
  • Name:Jason
  • Iversen

Posted 18 August 2008 - 09:16 AM

View Postrdg, on Aug 18 2008, 12:56 AM, said:

Another Day

I had the chance to speak as an opening act for "Oldschool Blog Live!" at Siggraph2008.


Well done and congratulations on your presentation! I'm sorry we didn't get a chance to meet up at SIGGRAPH..

This thread is very cool, by the way. Keep it coming:)
jason iversen
++odforce guy, and supervisor @ r+h
0

#42 User is offline   rdg Icon

  • Houdini Master
  • PipPipPipPip
  • Group: Members
  • Posts: 548
  • Joined: 21-August 05
  • Gender:Male
  • Location:Vancouver, CA
  • Name:Georg
  • Duemlein

Posted 25 September 2008 - 03:01 PM

Day 10: Lorem Ipsum was my Cradle Song

Posted Image

Slowly occluded toNDC() bricks with a hint of rotate().

Surprisingly bricksVOP got it's own lighting model, which I had to bypass to make it working without lights.
Most of the luminance() calls can be disregarded by working with floats instead of colors - I was just to lazy to substitute the brickVOP with something more efficient.

Attached File  loremIspumwasmyLullaby.hip (533.33K)
Number of downloads: 147
Georg Duemlein [www.preset.de]
<i>Certified Houdini Instructor</i>
0

#43 User is offline   rdg Icon

  • Houdini Master
  • PipPipPipPip
  • Group: Members
  • Posts: 548
  • Joined: 21-August 05
  • Gender:Male
  • Location:Vancouver, CA
  • Name:Georg
  • Duemlein

Posted 30 September 2008 - 03:23 PM

Day 11: XOR

hm ... not even sure if this is XOR but let's pretend it is ...

Posted Image

A shader that emulates basic/java/flash boolean diplay writing.

eetu commented:
"(12:25:28 AM) eetu: yea, tracing sounds a tad overkill :)"
Well, but how to cookie this?

Posted Image

I first felt that this is the time for gather() ... but ...
Reading some of Mario's posts I guess a gather needs a rayimport and both can be in the same shader ...
Anyway a trace() looked quite right once I transformed my direction vector into space:current.

But now:

Posted Image

The same struction from above.
Some raytracing limit? Just right as eetu suggested?
I guessed that I need to limit my rays to exactly one hit, but this wan't work probably as the shading works top down.
XOR works bottom up.

Well, this is 3D and I'm not limited to Y down cameras ...
This is a shaded XOR and DOF:

Posted Image

this is the base geometry:

Posted Image

My shaders still look better without lighting model ...

Posted Image

...

Attached File  rdg_XOR.hip (193.51K)
Number of downloads: 128
Georg Duemlein [www.preset.de]
<i>Certified Houdini Instructor</i>
0

#44 User is offline   Andz Icon

  • Houdini Master
  • PipPipPipPip
  • Group: Members
  • Posts: 639
  • Joined: 28-March 05
  • Location:Curitiba - Brazil
  • Name:Anderson
  • Baptista

Posted 30 September 2008 - 07:09 PM

Is RDG a poet or a philosofer? B)

This post has been edited by Andz: 04 October 2008 - 12:08 PM

Andz
My blog
0

#45 User is offline   rdg Icon

  • Houdini Master
  • PipPipPipPip
  • Group: Members
  • Posts: 548
  • Joined: 21-August 05
  • Gender:Male
  • Location:Vancouver, CA
  • Name:Georg
  • Duemlein

Posted 03 October 2008 - 10:07 AM

Day 12: RDG vs Easing Functions

This not a shader.

Attached Image

It's my first canny steps into the HDK.
I 'implemented' some easing functions as described e.g. at actionscript.org[1]


Not yet the standart Robert Penner Easing Functions [2] - most likely caused by my lack of c/c++ knowledge.
Thanks to Chip Collier and Mark Elendt I was able to have a function that takes more than two arguments :D

I compiled these on openSuse 10.3 64bit - I guess for other plattforms you have recompile them.
There is also a exhelp file, but how this might be merged to other existent files is a mystery to me.
It works fine, as I don't have any other exhelp files in $HOME/houdini9.5/help

Adds
* rdgeasein()
* rdgeaseout()
* rdgeaseexp()
* rdgeasecirc()
* rdgeasesin()

see exhelp rdg for details

Attached File  rdgEasingFunctions.tar.gz (14.54K)
Number of downloads: 97

[1] http://www.actionscr...ning/Page3.html
[2] http://www.robertpenner.com/easing/

This post has been edited by rdg: 03 October 2008 - 12:31 PM

Georg Duemlein [www.preset.de]
<i>Certified Houdini Instructor</i>
0

#46 User is offline   Mario Marengo Icon

  • Grand Master
  • PipPipPipPipPip
  • Group: Members
  • Posts: 1,215
  • Joined: 26-June 02
  • Gender:Male
  • Location:Toronto, Canada
  • Name:Mario
  • Marengo

Posted 03 October 2008 - 10:23 AM

View Postrdg, on Oct 3 2008, 02:07 PM, said:

Day 12: RDG vs Easing Functions


Hey rdg,

Looking good, but how are you implementing your ease function?
I haven't looked at your references, but AFAIK, the whole point of an ease() function (as an interpolation, not a spline) is that the slope at both ends is zero (a cubic spline with dydx=0 at the ends). I don't see that in your image (but maybe there aren't enough divs to show it?)... just curious.
Mario.
0

#47 User is offline   rdg Icon

  • Houdini Master
  • PipPipPipPip
  • Group: Members
  • Posts: 548
  • Joined: 21-August 05
  • Gender:Male
  • Location:Vancouver, CA
  • Name:Georg
  • Duemlein

Posted 03 October 2008 - 10:38 AM

View PostMario Marengo, on Oct 3 2008, 08:23 PM, said:

Hey rdg,

Looking good, but how are you implementing your ease function?
I haven't looked at your references, but AFAIK, the whole point of an ease() function (as an interpolation, not a spline) is that the slope at both ends is zero (a cubic spline with dydx=0 at the ends). I don't see that in your image (but maybe there aren't enough divs to show it?)... just curious.


ohm ... ahm ... well
What? :blink:

I guess easing might be the wrong term then.
The functions (easein, easeout, easeexp, easecirc, easesin) interpolate between 0...1.
E.g. :
fn easecirc(v) = -sqrt(1-v*v)-1;

Can the slope in an easein be zero at the end?

This post has been edited by rdg: 03 October 2008 - 10:38 AM

Georg Duemlein [www.preset.de]
<i>Certified Houdini Instructor</i>
0

#48 User is offline   Mario Marengo Icon

  • Grand Master
  • PipPipPipPipPip
  • Group: Members
  • Posts: 1,215
  • Joined: 26-June 02
  • Gender:Male
  • Location:Toronto, Canada
  • Name:Mario
  • Marengo

Posted 03 October 2008 - 11:19 AM

View Postrdg, on Oct 3 2008, 02:38 PM, said:

ohm ... ahm ... well
What? :blink:


For those not on IRC... :)
I'm aware that there are an infinite number of ways to interpolate two values, and all these ways are valid. So there's nothing "wrong" with your function (I never said there was). However, it doesn't resemble Houdini's "ease" function, and I thought that was perhaps what you were striving to get.

Ease:
3 x2 - 2 x3

And ease with "bias" or "power ease":
3 x2*bias - 2 x3*bias

And the easep() family (second function above) looks like this:

Attached Image
Mario.
0

  • (8 Pages)
  • +
  • « First
  • 2
  • 3
  • 4
  • 5
  • 6
  • Last »
  • You cannot start a new topic
  • You cannot reply to this topic

1 User(s) are reading this topic
0 members, 1 guests, 0 anonymous users