Forest Material, Forest Color Support - Tutorial and samples

3D Studio Max Plugin (Export Script Plugins developed by [gk] and KilaD; Integrated Plugin developed by Karba)
Forum rules
Please post only in English in this subforum. For alternate language discussion please go here http://render.otoy.com/forum/viewforum.php?f=18
Post Reply
neonZorglub
OctaneRender Team
Posts: 999
Joined: Sun Jul 31, 2016 10:08 pm

Forest Material and Forest Color Support - Tutorial and samples
(from version 2022.1 - 13.14)

Prerequisites:

Preferences / Material tab : 'On-the-fly Material Conversion option enabled.

Optional / advanced usage:
Preferences / Material tab : Any plugin Texmap option enabled.


Forest Material:
This allows to add a random tint to any material placed in the Base Material slot.
This works by inserting an Octane Composite Texture in the material main color node.
The Base material can be an Octane material, or any material that support 'on the fly' conversion.

Limitations:
Shadow Textures and Forest Shader are not supported.



Forest Color:
This allow to set a random color, with additional random tint .
Up to 10 map or colors can be chosen randomly.
The tint can be selected from a gradient or a map.


Limitations:
Variation slider from Item to Element is not supported.
Apply Color Correction is not supported.



Both Forest Material and Forest Color can be used on a Forest pack object,
and will use the tint specified in the Material rollup, if 'Override Tint' is disabled in the FP material / color, and if
the Random Strength is not set to 0,0.

Special control:
Render settings / Support / Forest Pack has global options to control some settings:
-FP Material scale:
When a tint use a Map set 'As Texture', the result can be scaled with this value.
Note that the result is unlikely to match a render from Scaneline + Forest pack..

-Random seed:
This will change the seed of all random elements used in the scene.

Additional Note:
Forest Material and Forest Color can be used to any geometry, and are available in Forest Pack Lite.
This can help to apply random coloring / tint on any scattering tool, or multiple geometry instances created manually.

Samples: (min 3dsMax version: 2020)
ForestMaterial_OctaneSupport_samples.zip
(2.14 MiB) Downloaded 617 times
A01_ForestMaterial_OnForest_noTint.jpg
A01_ForestMaterial_OnForest_noTint.max
No tint is used, the final material is just the Base Material. (some bright blue)
A02_ForestMaterial_OnForest_TintFromMtl_grad.jpg
A02_ForestMaterial_OnForest_TintFromMtl_grad.max
Override Tint is used in Forest Material.
The bright blue of previous sample is tinted with the red-green gradient.
Use the min and max percent values to set a strength range.
Use the Render settings / Support / Forest Pack / Random seed value to change the random tint
A03_ForestMaterial_OnForest_TintFromMtl_map.jpg
A03_ForestMaterial_OnForest_TintFromMtl_map.max
Override Tint is used in Forest Material, with colors picked from a bitmap.
The bright blue of first sample is tinted with the random colors.
A04_ForestMaterial_OnForest_TintFromFP_grad.jpg
A04_ForestMaterial_OnForest_TintFromFP_grad.max
The tint is set from the Forest object.
(Forest pack 'Material' section has Random Strength values bigger than 0, and the Forest material do not use Override Tint)
A05_ForestMaterial_OnForest_TintFromFP_map.jpg
A05_ForestMaterial_OnForest_TintFromFP_map.max
The Forest Object tint uses a map, in Random values mode. Here we used an Octane Flake texture.
A06_ForestMaterial_OnForest_TintFromFP_mapSurf.jpg
A06_ForestMaterial_OnForest_TintFromFP_mapSurf.max
The Forest Object tint uses a map, in As Texture on Surface mode. Here we used an Octane Checks texture.
Use the Render settings / Support / Forest Pack / FP Material scale to adjust the size of the Checks texture.
B01_ForestMaterial_On2Forests.jpg
B01_ForestMaterial_On2Forests.max
2 Forest Pack objects use the same Forest Material, but enable a Color Tint with different colors.
C01_ForestMaterial_OnAnyGeo_instances_grad.jpg
C01_ForestMaterial_OnAnyGeo_instances_grad.max
Forest Material can be applied to any geometry.
When using multiple instances, each instance will have a different 'randomness'
Use the Render settings / Support / Forest Pack / Random seed value to change the random tint
C02_ForestMaterial_OnAnyGeo_instances_map.jpg
C02_ForestMaterial_OnAnyGeo_instances_map.max
The map mode can also be used for tint.
C03_ForestMaterial_OnAnyGeo_RailClone.jpg
C03_ForestMaterial_OnAnyGeo_RailClone.max
Any scattering tool that generate multiple instances should work with Forest Material.
Here one of the material of the railclone object has been set as Forest Material.
D01_ForestColor_OnForest_noTint.jpg
D01_ForestColor_OnForest_noTint.max
The basic usage of Forest Color is to randomly select one color / map per instance.
Here, a Standard material use a Standard Bitmap, an Octane Marble texture, and 2 colors.
The percentage of chance to be selected can be adjusted for each of the 10 slots.
Use the Render settings / Support / Forest Pack / Random seed value to change the random tint
D02_ForestColor_OnForest_TintFromFpCol.jpg
D02_ForestColor_OnForest_TintFromFpCol.max
The Forest Color tint is enabled.
D03_ForestColor_OnForest_TintFromFpObj.jpg
D03_ForestColor_OnForest_TintFromFpObj.max
The Tint is set in the Forest Object.
E01_ForestColor_OnAnyGeo_instances.jpg
E01_ForestColor_OnAnyGeo_instances.max
Octane material can use Forest Color in any texture slot.
When applied to standard instanced geometry, a random color / texture from the 10 slots will be used, with optional Tint options.
E02_ForestColor_OnAnyGeo_octSctSurf.jpg
E02_ForestColor_OnAnyGeo_octSctSurf.max
Geometry instances from an Octane Scatter Surface can also use Forest Color.
Here, an Octane Specular material use a Forest Color in the Transmission slot.
F01_ForestColorInOctMaterialSelector.jpg
F01_ForestColorInOctMaterialSelector.max
For additional randomness, the Octane Material Selector will assign materials randomly to multiple instances.
Each of those material can use a different Forest Color map..
ramone163
Licensed Customer
Posts: 253
Joined: Tue Aug 28, 2012 5:12 pm

Hello.
How to replicate this effect in Octane and ForestPack? In the Corona Renderer, objects inherit the color from surface. This does not work in octane. Any ideas how to fix this?
Attachments
Octane render
Octane render
Сorona render
Сorona render
GPU: 980+1080+1080Ti; 3ds max;
Behance portfolio; Handmadefont.com;
neonZorglub
OctaneRender Team
Posts: 999
Joined: Sun Jul 31, 2016 10:08 pm

ramone163 wrote:Hello.
How to replicate this effect in Octane and ForestPack? In the Corona Renderer, objects inherit the color from surface. This does not work in octane. Any ideas how to fix this?
Hi ramone163,
Could you please post a sample ?
And could you explain what is the 'surface' you are referring to ?
Thanks
ramone163
Licensed Customer
Posts: 253
Joined: Tue Aug 28, 2012 5:12 pm

neonZorglub wrote:
ramone163 wrote:Hello.
How to replicate this effect in Octane and ForestPack? In the Corona Renderer, objects inherit the color from surface. This does not work in octane. Any ideas how to fix this?
Hi ramone163,
Could you please post a sample ?
And could you explain what is the 'surface' you are referring to ?
Thanks
neonZorglub, please check my ZIP file.

I am talking about this "As texture on Surface" option in Forest Color map.
I need to color objects with the color of the surface pixel the forestpack object is on.
In corona renderer everything works as it should.

I used this tutorial as a basis:
https://www.youtube.com/watch?v=R-lI8lVUX-I
Attachments
Corona render
Corona render
Octane render.
Octane render.
Octane-ForestPack.zip
(965.9 KiB) Downloaded 453 times
GPU: 980+1080+1080Ti; 3ds max;
Behance portfolio; Handmadefont.com;
neonZorglub
OctaneRender Team
Posts: 999
Joined: Sun Jul 31, 2016 10:08 pm

ramone163 wrote:Hello.
How to replicate this effect in Octane and ForestPack? In the Corona Renderer, objects inherit the color from surface. This does not work in octane. Any ideas how to fix this?
Hi ramone163,
Thank you for the sample and explanations.
That's right, the current implementation of the FP color texture with the Tint map is not correct.
it's using a box transform that 'project' a color from the map vertically to the FP instance objects.. so it can't work well in you case..

The best alternative I found is to use the Octane 'Instance Position' projection with one of the Octane texture map.
We can get the same effect as FP, but the scale and translation need to be adjusted by hand ..
Here are some samples:
InstanceColorFromMap.zip
(244.15 KiB) Downloaded 452 times
instanceColFromMapAndPos1.png
instanceColFromMapAndPos2.png
Both the transform of the texture and the transform of the 'instance position' can be used to adjust the effect.
I might try to add a custom OSL texture that would apply those scale/transform automatically in the future..

Thanks
ramone163
Licensed Customer
Posts: 253
Joined: Tue Aug 28, 2012 5:12 pm

neonZorglub wrote:
ramone163 wrote:Hello.
How to replicate this effect in Octane and ForestPack? In the Corona Renderer, objects inherit the color from surface. This does not work in octane. Any ideas how to fix this?
Hi ramone163,
Thank you for the sample and explanations.
That's right, the current implementation of the FP color texture with the Tint map is not correct.
it's using a box transform that 'project' a color from the map vertically to the FP instance objects.. so it can't work well in you case..

The best alternative I found is to use the Octane 'Instance Position' projection with one of the Octane texture map.
We can get the same effect as FP, but the scale and translation need to be adjusted by hand ..
Here are some samples:
The attachment InstanceColorFromMap.zip is no longer available
The attachment instanceColFromMapAndPos1.png is no longer available
The attachment instanceColFromMapAndPos2.png is no longer available
Thank

Both the transform of the texture and the transform of the 'instance position' can be used to adjust the effect.
I might try to add a custom OSL texture that would apply those scale/transform automatically in the future..

Thanks
Thanks neonZorglub for the suggested solution. It would be great to have custom OSL texture.

Unfortunately this solution has a weak point - it doesn't work if you move/rotate the object or animate it.

Is it possible to fix this in future versions of Octane so that it works like in Corona or Vray?
Attachments
Recording 2025-01-08 at 1.14.29 PM.mp4
(4.31 MiB) Downloaded 8968 times
GPU: 980+1080+1080Ti; 3ds max;
Behance portfolio; Handmadefont.com;
neonZorglub
OctaneRender Team
Posts: 999
Joined: Sun Jul 31, 2016 10:08 pm

ramone163 wrote: Thanks neonZorglub for the suggested solution. It would be great to have custom OSL texture.

Unfortunately this solution has a weak point - it doesn't work if you move/rotate the object or animate it.

Is it possible to fix this in future versions of Octane so that it works like in Corona or Vray?
That's right, unfortunately the Instance Position projection only works in world space, so it gives different values when we move/rotate the instances..
I was hopping you would need this for static instances, like grass or trees..
I'll investigate more to find a better solution with OSL..
Thanks
Post Reply

Return to “Autodesk 3Ds Max”