db&w documentation wiki

finest software | finest docs

Site Tools


tools:random_image_mapper

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revisionPrevious revision
Next revision
Previous revision
tools:random_image_mapper [2019/02/26 15:39] – [Placement (tab)] lightwolftools:random_image_mapper [2019/12/02 09:53] (current) – [Projection] lightwolf
Line 1: Line 1:
-====== Random Image Mapper (preliminary) ======+====== Random Image Mapper ====== 
 <WRAP info> <WRAP info>
 This node is based on the [[https://github.com/ADN-DevTech/3dsMax-OSL-Shaders/blob/master/3ds%20Max%20Shipping%20Shaders/RandomBitmap.osl|3DS Max Random Bitmap OSL shader]]. \\ Developed by Zap Andersson, Copyright 2018 Autodesk Inc, All rights reserved.  Licensed under [[https://github.com/ADN-DevTech/3dsMax-OSL-Shaders/blob/master/LICENSE.txt|Apache 2.0 license]]. This node is based on the [[https://github.com/ADN-DevTech/3dsMax-OSL-Shaders/blob/master/3ds%20Max%20Shipping%20Shaders/RandomBitmap.osl|3DS Max Random Bitmap OSL shader]]. \\ Developed by Zap Andersson, Copyright 2018 Autodesk Inc, All rights reserved.  Licensed under [[https://github.com/ADN-DevTech/3dsMax-OSL-Shaders/blob/master/LICENSE.txt|Apache 2.0 license]].
Line 6: Line 7:
 The node places one image within a 0..1 range of UV values, similar to UDIM tiles.  The node places one image within a 0..1 range of UV values, similar to UDIM tiles. 
  
-<WRAP important>This node requires a projection node to be connected to the projection input.</WRAP> 
  
-{{ :tools:randomimagemapper_gui.png?nolink|}}+
  
 ===== Controls ===== ===== Controls =====
Line 18: Line 18:
  
 This control displays a list of all images used by the node. The top most images has the lowest index (0). This control displays a list of all images used by the node. The top most images has the lowest index (0).
 +
 +The images should have embedded alpha if required, ideally their RGB should be pre-multiplied by alpha.
  
 Selecting an image will display it in the preview control. Selecting an image will display it in the preview control.
Line 25: Line 27:
  
 This allows you to change the select image to another loaded image, load a new image and select it or change it to (none) - which will treat the list entry as being black with no alpha when rendering. This allows you to change the select image to another loaded image, load a new image and select it or change it to (none) - which will treat the list entry as being black with no alpha when rendering.
- 
-=== RMB Menu === 
 {{ :tools:multi-image_sampler_rmb.png?nolink|}} {{ :tools:multi-image_sampler_rmb.png?nolink|}}
-This menu can be launch by right clicking anywhere on the list control. Some of the options will only be available if an image is selected in the list.+=== RMB Menu ===
  
 +This menu can be launch by right clicking anywhere on the list control. Some of the options will only be available if an image is selected in the list.
 +<WRAP box>
 == Move Up == == Move Up ==
 If an image is selected - and isn't the first image in the list already - it will move up by one entry in the list. If an image is selected - and isn't the first image in the list already - it will move up by one entry in the list.
Line 44: Line 46:
 == Clear all Images == == Clear all Images ==
 This clears the list of images. This clears the list of images.
 +</WRAP>
 ==== Images (tab) ==== ==== Images (tab) ====
 === Overlap === === Overlap ===
Line 49: Line 52:
 The node places one image within a 0..1 range of UV values, similar to UDIM tiles. Normally, it also only checks for images within the current tile to see if it has to be placed and rendered or not. The node places one image within a 0..1 range of UV values, similar to UDIM tiles. Normally, it also only checks for images within the current tile to see if it has to be placed and rendered or not.
 Overlap extends the "search" area. If you notice images being cut off, increase this value. Overlap extends the "search" area. If you notice images being cut off, increase this value.
-<WRAP important>Higher values will lead to much longer rendering times. Anything above a value of 5 or so will be extremely slow.</WRAP>+<WRAP important>Higher values will lead to much longer rendering times. Anything above a value of 5 or so will be extremely slow. \\ Basically: If images are cut off at their border, increase this value. Otherwise: Don't. ;) 
 +</WRAP>
  
 === Reference Width (Pixels) === === Reference Width (Pixels) ===
Line 64: Line 68:
  
 === Random Seed === === Random Seed ===
 +{{ :tools:randomimagemapper_instances.png?400|}}
 The placement of the images as well as the variations defined below are computed using pseudo-random noise. The noise is based on this seed number. The placement of the images as well as the variations defined below are computed using pseudo-random noise. The noise is based on this seed number.
 A different seed produces different results. A different seed produces different results.
Line 72: Line 76:
 === Create New Seed === === Create New Seed ===
 This doesn't do anything at the moment. Eventually it will replace the *Random Seed* with a new random number. This doesn't do anything at the moment. Eventually it will replace the *Random Seed* with a new random number.
 +=== Noise Frequency ===
 +The randomness of the placement of the images as well as their rotation, scale, etc. is based on a noise function. This setting changes the scale of that noise.
 +Larger values make it more chaotic, smaller values less so, which will lead to images next to each other using more similar settings.
 === Probability === === Probability ===
 The probability a bitmap will show up.     The probability a bitmap will show up.    
Line 79: Line 86:
 The scale of the **Variation** randomness. The scale of the **Variation** randomness.
 === Position (tab) === === Position (tab) ===
-== == +This controls how much the position of every image may deviate from the middle of the UV tile, on the horizontal ( **X** ) as well as the vertical (**Y**) axis. 
-== ==+0 will always place the image at the centre, 0.5 allows it to be placed anywhere from -0.5 to 0.5 from the centre (which covers the whole UV tile). 
 === Rotation (tab) === === Rotation (tab) ===
 == Base == == Base ==
 +
 +This rotates all placed images. If **Randomize** is active, it's the minimum rotation.
 +
 == Randomize == == Randomize ==
 +
 +Enabling this allows for randomized rotations.
 +
 == Max == == Max ==
 +
 +This is the maximum rotation if **Randomize** is enabled. The random rotations will be in the range from **Base** to this value.
 +
 == Steps == == Steps ==
 +
 +A value larger than 1 will only allow for random rotations in discreet steps.
 +
 +For example, if **Base** is 0°, **Max** is 360° and **Steps** is 4, the result of the random rotation will be 0°, 90°, 180° or 270°.
 +
 === Scale (tab) === === Scale (tab) ===
 == Base == == Base ==
 +This scales all placed images. If **Randomize** is active, it's the minimum scale.
 == Randomize == == Randomize ==
 +Enabling this allows for randomized scale.
 == Max == == Max ==
 +This is the maximum scale if **Randomize** is enabled. The random scale will be in the range from **Base** to this value.
 === HSV (tab)=== === HSV (tab)===
 +This tab allows you to modify the Hue, Saturation and Value (Brightness) of the placed image.
 == Base == == Base ==
 +This changes the colour of all placed images. If **Randomize** is active, it's the minimum HSV value.
 == Randomize == == Randomize ==
 +Enabling this allows for randomized HSV variations.
 == Max == == Max ==
 +This is the maximum HSV value if **Randomize** is enabled. The random colouring will be in the range from **Base** to this value.
 === Alpha (tab)=== === Alpha (tab)===
 +
 == Base == == Base ==
 +This changes the transparency of all placed images. If **Randomize** is active, it's the minimum transparency.
 == Randomize == == Randomize ==
 +Enabling this allows for randomized transparency.
 == Max == == Max ==
 +This is the maximum transparency value if **Randomize** is enabled. The random transparency will be in the range from **Base** to this value.
 +
 +===== Node Connections =====
 +==== Inputs ====
 +
 +==== Projection ====
 +Connect a Projection node to define the texture projection used for the node. If it's not connected, the default UV Map will be used if has been defined.
 +
 +
 +The other inputs correspond to the controls with the same name. Please remember that the inputs change the values per (surface) spot that is evaluated.
 +==== Outputs ====
 +
 +=== Colour ===
  
 +This is the final composite of the random images over the background colour.
  
 +=== RGB ===
  
 +This is just the colour of the random images. If no image is visible at a spot, it will be black.
  
 +=== Luma ===
  
 +This is the luminosity of the **RGB** output.
  
 +=== Alpha ===
  
 +The transparency of the random images, taking their respective alpha channels into account.
  
 +=== Bump ===
  
 +A bump map computed from the luminosity of the images.
  
 +=== Tile Value ===
  
 +This is a random value between black and white (0 .. 1.0) for each tile, taking the alpha channel of the mapped images into account.
  
  
tools/random_image_mapper.1551191950.txt.gz · Last modified: 2019/02/26 15:39 by lightwolf