Page 1 of 2
Wave sets and Environment Maps

Posted:
Wed Jan 12, 2011 10:47 am
by ZURI
This post is in reference to Andy's tutorial on Dustin's website.
http://dusty.homeunix.net/wiki/Reflective_SurfacesMyself and other writers that I am in contact with have been having issues with the built-in EnvMap in the wavesets. In our experience, the built in map doesn't reflect objects the way we'd like. So, I started looking into manual EnvMaps.
On Andy's tutorial he states:
"Okay....But Can I Only Do Floors? Oh you can do anything if you'd like. I highly recommend this for small bodies of water that are NOT wavesets (fountain pools, puddles, etc). Large bodies of water like Ponds, Lakes or Oceans we use Wavesets and the reflectiveness is built into the script already."
Alright, my question is; How can I fix my waveset to actually reflect objects the way they should be reflected. Is there a way to "remove" the EnvMap from the waveset and replace it with a manual one that actually works? I've tried searching old threads, and while this may have been discussed before, I didn't have any luck finding information about it.
Thanks for any help!
Re: Wave sets and Environment Maps

Posted:
Wed Jan 12, 2011 11:07 am
by andylegate
If you take a look here at the GoW Wiki, there is a tutorial on
Wavesets in Blender there (and why I had not done one).
If you read through it, you'll see under "Setting Up A Waveset", the tutorial tells you that you need to set the "envradius" for your reflections.
Basically you can lay an imaginary circle over your water, and draw a line from it's center, to the nearest object that would be reflected. However many blender units that is would be the number you use here.
Now word of warning, it most likely will not be correct the very first time, but it will get you in the ball park, and you can keep adjusting that number until your reflections look right.
You could try and apply a material using a static or dynamic EnvMap as a texture, but I'm not sure how well that will turn out. Of course you never know until you try!

Re: Wave sets and Environment Maps

Posted:
Wed Jan 12, 2011 11:19 am
by ZURI
I've tried in vain to set the envradius to get the waveset correct, but it still looks terrible. I tried many different settings before posting here. I'm getting reflections on the wrong sides facing the wrong directions. I even tried setting it to 0, to perhaps (just guessing here) turn the EnvMap off - to no avail.
I'll try to manually set an EnvMap tonight and see if my computer explodes....

I'll post my results here for you all to peruse, or laugh at....
Re: Wave sets and Environment Maps

Posted:
Wed Jan 12, 2011 1:05 pm
by N. Sigismund
As 90% of the area covered by my age is plagued by a faulty envmap, I'd be very interested to know how that goes!
Re: Wave sets and Environment Maps

Posted:
Wed Jan 12, 2011 1:28 pm
by ZURI
I kinda figured weren't the only people having issues with this. I'm a bit reserved as to whether this will work, but there's only one way to find out. Hopefully this helps you too.
Re: Wave sets and Environment Maps

Posted:
Wed Jan 12, 2011 1:36 pm
by Jojon
It should be understood (...and I do believe it is, but still...) that envmaps, by their nature, are in no way accurate representations of real reflections.
They are simply projections, onto a (not displayed) cube, of the environment surrounding the cube, collapsed towards its centre.
When used, the images that has been projected onto the cube's surfaces, are projected "back", onto the reflective object.
It's a trick, really, which is considered "good enough" for your eyes to accept the illusion, in many cases. Large surfaces, littered with objects, are rarely such cases, which is why you see other tricks also being used, such as the upside-down copies of structures, beneath the lake surface in Ae'Gura/Harbour.
Re: Wave sets and Environment Maps

Posted:
Wed Jan 12, 2011 2:40 pm
by andylegate
You know, during Christmas, I sat down and wrote this REALLY LONG tutorial on Wavesets, with tips and help, but it was lost when our server crashed at the GoMa, DOH!
Okay, let me ask you some questions: Your waveset, is it a pond or an ocean?
I could point to my Max tutorial, but the problem is, Cyan's plugin has things in it for wavesets that you don't see in the Alcscripting, like Ripple Falloff. Ripple Falloff will affect how your waveset looks in a very big way.
However, all is not lost. You could always use PrpShop, and open up some of Cyan's Ages and look at their values for their wavesets (like the ones for an ocean sized waveset, and one for a small pond).
I can tell you this, I normally set the Envrefresh to 0, for just about all my wavesets.
Only other advice I can give you is to make sure your mesh that is your waveset, has it's center where it's suppose to be, and that you have all the normals on the faces pointed up, heh.
Re: Wave sets and Environment Maps

Posted:
Wed Jan 12, 2011 2:55 pm
by ZURI
The waveset is the ocean in Eder Taygahn. If you visit the age and walk up to the top of the hill, you'll see the reflections starting waaay off in the distance - where there aren't any objects at all to reflect.
I hadn't tried using the Envrefresh option. As a general rule, I don't tend to play around with things that I don't understand. For example the last time I tried to add a shoreline to the island, I ended up having to pull up and old archived version of the age to piece it back together. It took an entire off-day to fix a stupid mistake.
In an hour or so, I'll be home and will test out the advice I've recieved and see what happens. Thank you so much for all the responses. I'll let you know how it turns out.
Re: Wave sets and Environment Maps

Posted:
Wed Jan 12, 2011 4:27 pm
by D'Lanor
andylegate wrote:I could point to my Max tutorial, but the problem is, Cyan's plugin has things in it for wavesets that you don't see in the Alcscripting, like Ripple Falloff. Ripple Falloff will affect how your waveset looks in a very big way.
PyPRP has just about every parameter you can configure for wavesets. At least if libHSPlasma is a good indicator of that. And that is already way too many variables to configure by trial and error.
But you are right, you won't see the same names Cyan uses because PyPRP uses different names. I have no idea which one the PyPRP equivalent of your ripple falloff would be though.
btw, if I am not mistaken the names used by PyPRP are closer to the actual names that were used by the Plasma coders, since these were found by reverse engineering. The Cyan plugin names are most likely user friendly names that the coders invented for the modelers.
Re: Wave sets and Environment Maps

Posted:
Wed Jan 12, 2011 5:12 pm
by andylegate
Well, here are the parameters in Max with Cyan's plugin:

I count 30 varibles, not counting the 2 reference objects and Tints.
And then the ALCscripting in PyPRP is:
- Code: Select all
<object>:
visual:
waveset:
shores:
- <scnobjref>
decals:
- <scnobjref>
envmap: <envmapref>
geostate:
maxlen: 6.25
minlen: 6.0
ampoverlen: 0.001
chop: 0.0
angledev: 1
texstate:
maxlen: 6.25
minlen: 0.78
ampoverlen: 0.01
chop: 0.5
angledev: 1
ripplescale: 100
specnoise: 0.5
specstart: 250
specend: 1000
depthrange:
opac:
start: 0
end: 0.5
refl:
start: 0
end: 1
wave:
start: 0
end: 1
wispiness: 0.5
edgeopac: 1
edgeradius: 1
period: 1
fingerlength: 1
envrefresh: 3
envradius: 1000
winddir: <object>
windspeed: 0.1
I count 27 here, but I'm not including the Wind (that's a separate plasma component), shores, decal, or envmap reference.
Sooooo, yah. However, Zuri, look up there in the ALCscript, you do have "envmap:" that you can reference, so I'd say you can use a EnvMap that you've made.