Hello, i have a problem, i have the Ubershader with and a Noise Displacement.

The problem are is i need to make a dolly/zoom in from far far away to a boat on the ocean.
I solve the close proximity with the regular fluid simulator, BUT for the far away waves (from approx. 25m away) i need procedural waves that ONLY bump map!

The problem is: I have a wonderful static Picture picture with procedural noise, but i can’t animate the noise SEED.
I know that you can do it by offset value, but i don’t want it to move, but the waves to go up and down.
I can’t use animated bump textures, cause at the horizont if i tile (Rendering is 4K!) you see the repeating pattern, also they are resolution dependent, contrary to procedurals which are better/faster.

So what i need is to either:
Control the SEED of a noise node to have smooth moving waves.
Is there a way to make the Ocean modifier to output only as animated bump but no actual displacement geometry ?
Any other idea ?

Here the image:

Anyone ?

Try adding a mapping node between the texture coordinate and noise nodes, then animate the location. For variation superimpose (add or mix) more than one noise node with different sizes and different rates of change of location.

To control the seed of the Noise node… No can do.

To let the Ocean modifier spit some animated bump map… No can do.

Another idea? Maybe.

A tidbit of information: Cycles procedural noise is three-dimensional. So, take a plane, use the noise as bump map and animate the Z coordinate fed to the Noise node. Something like that:

You must find the right speed or all you get is white noise. That’s the tricky part.

While I’m typing, Blender is rendering a quick animation in which the value added to the Z coordinates goes from 0 to 0.5 during 250 frames. It looks quite promising… altho I think that the animation is already too fast.

(Cuda crash at frame 134. Pfffrrrrttt!)

And I was right, the speed was too high. I reduced the FPS of the video to 12… but that’s not the same… Expect for the duration. :wink:

See for yourself:

You’re allowed not to like it, despite all the work I did… just for you. :wink:

@Kaluura, MAN, YOU ARE MY PERSONAL HERO ! NOW SERIOUSLY ! :smiley: YOU SAVED ME ! I didn’t think about that. For THAT you get in the credits :smiley: ! PM me your name :-D!

By the way, i needed that cause i render also about 1 Million trees (yes, many billions polys!) of generated island trees (8 different palm tree kinds), trough CUDA, so i need to keep the render times and memory as low as possible = bump only + noise.




Please, put this solution somewhere sticky and/or in the blender wiki
It is the fastest Ocean thingy there is, also as far away as 20 km and interpolation free ! (procedural)

“Kaluura” is my name in Blender’s world. That gives already enough old crap for people to dig out the web… :wink: Plus the crap of the few people without imagination who just pick my name which used to be unique. (Sigh)

It also works well with the Mapping node suggested by see360 instead of the 3 Converter nodes :).

@Manolo76: 76? Seinomarin? :eyebrowlift2:

Je préfère ne pas utiliser le Mapping node quand je n’ai pas besoin de toutes ses fonctions. Ce truc-là est trop gros… Et puis, je le soupçonne de faire toutes les transformations qu’il propose tout le temps. Gaspillage maximal! Ça va plus vite de separer les composants d’un vector et d’ajouter des Math nodes juste là où il faut. Chaque ms perdue compte! :wink: (Et je n’utilise pas de convertisseurs ici…)

I prefer not to use the Mapping node when I don’t need all of its features. That thing is way too big… Besides, I suspect it to do all the proposed transformations all the time. Maximum waste! It’s just faster to separate the components of your vector and to add Math nodes only where needed. Every lost ms counts! :wink: (And I use no converter in here…)

Non, 76 parce que j’approche de la quarantaine :P, je suis plus proche de la méditerranée que de la manche. Concernant les convertisseurs, c’est parce que ce sont les nodes qui sont sous Add -> Converter -> Separate RGB etc…

J’ai vu que tu utilisais souvent le RGB pour récupérer les valeurs x, y, z et je ne suis pas très familier avec ça (le mapping me parle plus) mais effectivement, pour une animation, si on peut gagner du temps de calcul, c’est important. Je ferai un test quand j’aurai mon PC pour comparer le temps de rendu entre le Mapping node et les 3 Converter nodes.

About converters, this because it’s the nodes we can find in Add -> Converter -> Separate RGB etc…

I saw that you often use RGB values to sort the X,Y,Z values and I’m not familiar with this (mapping is more intuitive for me) but you’re right, every second of render time won in animation is important. I will do a comparison between Mapping node and the 3 Converter nodes when I will be at home in front of my desktop.

PS : I really like the theme you use for Blender. It’s a theme that is downloadable or a custom theme you did ?

@Manolo76: Je vois… Cela ne fait que confirmer que l’organisation des nodes dans leurs menus n’a pas de sens… Et puisqu’on parle de thème, il faudrait que je regarde ce que je peux faire. :evilgrin:

I see… It just confirms that the organization of the nodes in their menus is nonsensical… And, since we’re talking about theme, I really should look what I can do about it. :evilgrin:

Now, for my very own theme that I did by myself, find the place where Blender keeps your “startup.blend” and “userprefs.blend”. (Check this page if you don’t know.)

Next to the “config” folder, you should also have a “scripts” folder. Go down this path, deeper and deeper. For me, on Linux, that is:


(Create the folders if they are missing.)

Extract this zip file in there: natural_ki_269.xml.zip (4.09 KB) (Just one XML file.)

Next time you’ll start Blender, my theme will be available as a preset named “Natural Ki 269”. (Don’t pay attention to the “2.69” tag. I live in the future. :wink: That’s just my theme for 2.68 with a new number.)

Yeah, thank you very much for your theme. I just tried it on the 2.69 RC3 and as I expected from your previous screenshots for other materials, very nice to the eyes :).

On my GPUs the mapping node is about 10% faster than separating out the components (although the time is about the same on my CPU). I have some materials where I separate out the coordinates by color, and it makes a lot of sense sometimes. I just got lucky because I didn’t take speed into consideration for this, it just seemed more straight forward.

PS Whether you use a mapping node or RGB separation, be sure to key the change in location with linear interpolation instead of the default. The default key frame interpolation will give the waves the appearance of slow motion at first that speeds up to the midway point and then slows to a near stop at the end.

I tried too and it’s also a liitle bit faster with the Mapping node (10.67) than the 3 Converter nodes (11.25) for 200 samples on GPU.

My try here (30 samples/frame, about 2.72s/frame) : Ocean


You solution is also ok, also works in normal circumstances maybe faster, but…

The problem is that i have a sea plane that is about 30km in size and have to see as near as 10 cm for the clipping plane. I tested it and i have 2 advantages from RGB lift instead of mapping node, First is that at that huge clipping size (20km to 10cm) of the plane i am more accurate with the rgb node (way more) and secondly rendering 1 Mio tree instances on the island behind, i saw it is also faster from frame to frame (faster BVH built which takes at 1 Mio. a lot of time parsing the coordinates (they move very slow in the wind as hair>recalculating every time, not the rendering itself) especially for animation. Somehow the RGB value is not addressed the same as a full remapping node, even if it does the same. (2 x CUDA 680 GTX on OSX Mavericks)

So still thank you both for the solutions, but Kaluura has slightly the edge (in my case). :wink:

EDIT: Also i have full transmission/underwater HDRI caustics which i get from the bottom of the island laguna, RGB lift works also easier as an IO for the ubershader (island bathymetry). Still many thanks.

Good to know. Thank you for sharing your experience :slight_smile:

When we are closer like the demo of Kaluura let or mine, it makes no difference using Mapping node or Converter nodes about accuracy. By raising the value in the add node by 0.3 or raising the Z value by 0.3 every 25 frames in the mapping node, I get the exactly same frames.

Hmmm… I hadn’t checked before. I always assumed that the Mapping node was slower than splitting the vector. Now I know… But I will keep on doing my stuff. It’s just more flexible. You can plug in the values used by the transformations, do multiple operations on each component and reassemble the results in as many different vectors as you need… while the Mapping node has only 1 input, 1 output and its widgets in between.

Still, See360 has a good point about the linear interpolation for the keyframes. I forgot that I recently switched my Blender to use vector handles by default. :smiley: That’s why I had no problem of speed in my little ocean video… and in general any more.

Here you guys can see what i was talking about :smiley: There are still MANY things not in this layer.
The transmission in water comes from the depth texture refracted/transmitted.
There are 4 Mio (8 sorts) of palm trees (each 2,5k polys with translucence) here on 150 square km :slight_smile: I know i am crazy. :smiley: EDIT: I already have to watch over the GPU ram, still not critical, but will get soon. :-D.
AFTER 1 min of waiting for copying to the device… it renders 1-2 min to 256 samples WITH caustics and transmission on. :wink:
Of course i will render in layers :- D :stuck_out_tongue:
If you like my theme, get it from blendswap under my enilnacs nick name.

I can’t show you guys any characters or scenes of them i am working on. When the whole short is ready. :slight_smile: