Instance Range Texture – how to?

Blender (Export script developed by yoyoz; Integrated Plugin developed by JimStar)
Post Reply
J.C
Licensed Customer
Posts: 1857
Joined: Thu May 13, 2010 6:35 pm
Location: Wrocław

How to achieve the effect below in Blender plugin? I've tried using hair particle and array modifier but it did not work.
https://docs.otoy.com/StandaloneH/Stand ... s%7C_____5
CPU – i9 13900KF, 128GB RAM, GPU – RTX 4090
System – Windows 11
My Behance portfolio, Blender plugin FB support group
DrawFun
OctaneRender Team
Posts: 379
Joined: Fri Aug 25, 2017 5:02 am

Hi J.C, could you please check on following settings:
1. Make sure the mesh type of target objects is "Scatter" and they are not overwritten by global settings
2. Set scatter groups as you want in "Data Tab" - "Octane properties" - "Scatter group"
3. Set scatter instance id in "Data Tab" - "Octane properties" - "Scatter instance id"
Thanks.
J.C
Licensed Customer
Posts: 1857
Joined: Thu May 13, 2010 6:35 pm
Location: Wrocław

Hi DrawFun. I've tried and checked all the mentioned settings before. None of these helps. I attach my test file to check it out.
Attachments
octane particle instances.blend
(762.55 KiB) Downloaded 234 times
CPU – i9 13900KF, 128GB RAM, GPU – RTX 4090
System – Windows 11
My Behance portfolio, Blender plugin FB support group
DrawFun
OctaneRender Team
Posts: 379
Joined: Fri Aug 25, 2017 5:02 am

Hi J.C, I noticed that all the monkeys vertexes are duplicated by array modifier and packed into a single object and mesh.
We can only apply instance tex/color among objects but not vertexes.
Just check the scene I attach.
- all the "Suzanne" objects are grouped into "Scatter group" 1.
- all objects in group 1 uses the mesh and material of "Suzanne" (the one with "Used as source for current group" checked).
- each object in group 1 has its own instance id, which decides its sampled pixel in tex.

We can assign "scatter instance id" in python console as following:

>>> meshes = bpy.data.meshes.values()
>>> for mesh in meshes:
... if mesh.name.startswith('Suzanne.'):
... id = int(mesh.name[mesh.name.rfind('.') + 1 :])
... mesh.octane.scatter_instance_id = id

Hope it helps. Thanks.
Attachments
modified-octane particle instances.blend
(5.18 MiB) Downloaded 231 times
J.C
Licensed Customer
Posts: 1857
Joined: Thu May 13, 2010 6:35 pm
Location: Wrocław

Thank you for the information. This looks like a manual process than automated one.
I thought that this could be dane using particles or hair particles where id's are automatically assigned to all objects.

For what I understand now you have to place all objects manually, assign an id using script or manually and use the same instance group. Right?
CPU – i9 13900KF, 128GB RAM, GPU – RTX 4090
System – Windows 11
My Behance portfolio, Blender plugin FB support group
Post Reply

Return to “Blender”