New IPP series

Re: New IPP series

Postby ikam » Saturday, 13.October 2012, 16:26

ok this is a proto, many things will change but you can show the result.
I put 3-4 shader to test.

:P
ikam
Operator
Operator
 
Posts: 911
Joined: Friday, 14.October 2011, 13:00
Location: France

Re: New IPP series

Postby Skinnytorus » Saturday, 13.October 2012, 17:45

Fantastic! :)
Comments:
1. The input texture doesn't change anything, but I think it's because the work is not finished yet.
2. How to 'reap' the essence of shader examples found on the web? Can a non-programmer do that?
Skinnytorus
Operator
Operator
 
Posts: 1300
Joined: Monday, 06.February 2012, 17:46

Re: New IPP series

Postby ikam » Saturday, 13.October 2012, 19:45

1. extra Texture is active (just one in this proto, if I remember) but not used in the current examples I give, if you want to use it declare in the shade code :

sampler2D myTexture : register(s1); // register(s0) is the current view converted into a texture, so s1 is the next texture slot...

so you can use it in code with the "tex2D" function (try replace s0 by myTexture for example).

2. you can find on the web many shader code source, word key : hlsl shader etc...
But you need surely to adapt the code to work here, principally variable name or type, so not the entire structure...
It's a good idea to learn HLSL, I think this operator can truly increase the werkkzeug power and the final render of your demo.
It's not so complicated even if at start it's seems a bit hard, it's look like scripting syntax, and I could give you fundamentals.
ikam
Operator
Operator
 
Posts: 911
Joined: Friday, 14.October 2011, 13:00
Location: France

Re: New IPP series

Postby ikam » Sunday, 14.October 2012, 08:03

oh I forgot a detail : you can bind customIPP variables (ctontrol gui) to pixel shader, here is the power :)

example with this shader :

sampler2D s0 : register(s0);
uniform float2 var1 : register(c0); // var1
uniform float2 var2 : register(c1); // var2
uniform float var3 : register(c2); // var3
uniform float var4 : register(c3); // var4
uniform float var5 : register(c4); // var5

float4 main (float2 uv : TEXCOORD) : COLOR
{
float4 color;
color = var2.x - tex2D(s0, uv);
color.a = 1;
return color;
}

Try to change the var2.x value with gui... 8) , don't forget you can also animate them in the animation script area...

So maybe the creation of static IPP is useless, cause all previous static ipp I gave, can be written with this operator
ikam
Operator
Operator
 
Posts: 911
Joined: Friday, 14.October 2011, 13:00
Location: France

Re: New IPP series

Postby Skinnytorus » Sunday, 14.October 2012, 13:57

1. Thanks for the info. Very useful.
2. I don't think creation of single purpose IPPs is useless - it makes wz more user friendly. People like wz because of it's being a modular environment consisting of ready to use modules. Steps toward a more code-based approach are great for advanced demo-makers, but for non-coders (artists) it may become a real challenge.
That is why I suggest you finish your stand-alone ipps you announced. Inclusion of the cusom ipp op will be a huge bonus facility for advanced users :)
What do you think?
Skinnytorus
Operator
Operator
 
Posts: 1300
Joined: Monday, 06.February 2012, 17:46

Re: New IPP series

Postby ikam » Sunday, 14.October 2012, 14:01

you're right, but we could also create a shader library, and which of ipp choose as static ?
ikam
Operator
Operator
 
Posts: 911
Joined: Friday, 14.October 2011, 13:00
Location: France

Re: New IPP series

Postby Skinnytorus » Sunday, 14.October 2012, 14:08

Sure, but how will you make the library available 'out of the box'? I mean how to find the shaders through the menu? Presets?
Skinnytorus
Operator
Operator
 
Posts: 1300
Joined: Monday, 06.February 2012, 17:46

Re: New IPP series

Postby ikam » Sunday, 14.October 2012, 14:28

don't know what it's better yet, there is many possiblity, for example

- a simple wz4 file with a collection inside.
- a menu to load a shader library file which contains many shader and for each shader it create a entry in the menu. and option for customIPP to save the shader in this file when you want to save it.
- a link to a web serveur
...
ikam
Operator
Operator
 
Posts: 911
Joined: Friday, 14.October 2011, 13:00
Location: France

Re: New IPP series

Postby ikam » Sunday, 14.October 2012, 14:38

I think i will just relase this operator for now, and ask to Ryg or Farbrausch guys what they think about.
ikam
Operator
Operator
 
Posts: 911
Joined: Friday, 14.October 2011, 13:00
Location: France

Re: New IPP series

Postby erbsen » Sunday, 14.October 2012, 16:37

ikam wrote:- a menu to load a shader library file which contains many shader and for each shader it create a entry in the menu. and option for customIPP to save the shader in this file when you want to save it.
Yes, a simple drop down menu would be nice and the ability to save/add self-created shaders.

Skinnytorus wrote:I don't think creation of single purpose IPPs is useless - it makes wz more user friendly. People like wz because of it's being a modular environment consisting of ready to use modules. Steps toward a more code-based approach are great for advanced demo-makers, but for non-coders (artists) it may become a real challenge.
That is why I suggest you finish your stand-alone ipps you announced. Inclusion of the cusom ipp op will be a huge bonus facility for advanced users
I agree, that would be great.
erbsen
Operator
Operator
 
Posts: 873
Joined: Thursday, 15.July 2004, 23:00
Location: Os

Re: New IPP series

Postby Skinnytorus » Sunday, 14.October 2012, 17:10

OK, guys. I've messed with the proto and now have to conclude the following:
As soon as a custom ipp shader is just piece of code, a collection of text ops with ready to use shader code seems the simplest solution.
But I think, several most used in demo making shaders are worth promoting to stand-alone ipp ops. Let ikam choose them himself.
Skinnytorus
Operator
Operator
 
Posts: 1300
Joined: Monday, 06.February 2012, 17:46

Re: New IPP series

Postby ikam » Monday, 15.October 2012, 10:12

Personnaly I thinks it's a pity to set as fixed operator simple shaders which can be created with customIPP, for many reasons like the loss of opportunity to customise or extend them, for example imagine I wrote the actual distort shader as an operator, but after weeks I write a more efficient or a more cool distort shader, the old become obsolete or less used, but remains in the wz4 ipp list, it will become unmanageable to decide which of ipp keep or not, and we can't pass our time to add remove or declare shaders as obsolete, especially that shaders offer so many possibilities and that in few time the shaders list could become substantial.

So I think that only more complex ipp, that can't be only rendered with customIPP need a place in the hall of static ipp. I'm agrre that a collection of text op as ready to use shader is the simplest and the more extensible way.
ikam
Operator
Operator
 
Posts: 911
Joined: Friday, 14.October 2011, 13:00
Location: France

Re: New IPP series

Postby Skinnytorus » Monday, 15.October 2012, 13:58

True... But on the other hand that applies to any operator in wz ;). That is why the old material op is still on board. Along with that, I agree that only the most essential art-wise (but not necessarily the most complex) ops deserve the stand-alone status. Should you decide to drastically update such ops, the old version may well be transferred to 'shift-a' menu. How do you feel about that?
Skinnytorus
Operator
Operator
 
Posts: 1300
Joined: Monday, 06.February 2012, 17:46

Re: New IPP series

Postby ikam » Monday, 15.October 2012, 17:29

Yes it's true too ](*,)
So maybe a solution is to let past a certain time, time to experiment different shaders and play with them in wz, see how at final how everything react, and according to the feedbacks, we can choose and select shaders you will want to see as operator.

I've rewrote the code to make it clean, to fix it and to add some features (vertex shader compil, 15 extra textures as input, more parameters, a shader debug window).

I think I will not go much further so if you have feedbacks or remarks about this version and before the last release, go on.
ikam
Operator
Operator
 
Posts: 911
Joined: Friday, 14.October 2011, 13:00
Location: France

Re: New IPP series

Postby Skinnytorus » Monday, 15.October 2012, 18:20

OK. Let it be.
I've just begun to test your latest version and there is something strange going on: whenever I start editing the shader code, a popup window appears at Custom ipp op and I have to click at the place in the code I started to edit once again, then return to the pop-up window and close it. Very ennoying this is...
Skinnytorus
Operator
Operator
 
Posts: 1300
Joined: Monday, 06.February 2012, 17:46


Return to Development and contribution



Who is online

Users browsing this forum: No registered users and 12 guests

cron