Home Technical Talk

How do I instance a given number of objects to specific faces only in Blender?

polycounter lvl 9
Offline / Send Message
Lifelover polycounter lvl 9

Since I'm primarily a Zbrush user and can do this trick with Nanomesh, I was wondering how to do that in Blender. Basically, I have a bracelet with spikes (see ref below) and I want to add to it an even number of spikes following its circular directions. The problem is all the tutorials I watched out there were about populating objects across all faces or verts, which is not what I want. Can anybody help?

PS: I do need to specificy that I want to first unwrap one spike and then instance it so that it shares the UVs with the rest objects once the instances are applied.


Replies

  • gnoop
    Options
    Offline / Send Message
    gnoop polycounter

    You can extract faces where you gonna place those instances . one face for each. Make them separate object to parent instanced object too. A kind of old way.

    Or you can use geometry nodes . Extract a curve from an edge loop and use that curve to distribute points on it: "curve to points" node . Then "instance on points" node to put those spikes on those points.


    "

  • Lifelover
    Options
    Offline / Send Message
    Lifelover polycounter lvl 9

    Thanks, will give it a shot. And if I may ask you an additional question - how do you properly unwrap a chain? Theoretically, I know I'm supposed to unwrap 1 link and then instance it but I have zero clue how to do that. I was hoping there's a way in Zbrush but it seems to be not working.

  • gnoop
    Options
    Offline / Send Message
    gnoop polycounter

    Unwrapping in Blender goes as follow.

    1. Switch to edit mesh node (Tab) > go to edge selection mode (2) to select edge loops alt+ click or click start edge and then Cntrl+click an end edge or just (shift+click) edges one by one. > use ctrl+E to open edge menu and "mark seams" those selected edges. Or you can just select UV island faces and then go select> select loops>select boundary loop > mark seams.
    2. Once you selected and marked all the seams , they should turn to be red colored hit U and in the menu that would appear hit unwrap , or you can try other ways from that menu too. Take attention to "Unwrap" panel that would appear in your pane bottom part. There you can chose a few options.
    3. Switch to UV edit mode or just make any Blender pane "UV edit" one where you can manually scale and re-composite UV islands . Notice it has "Synced" and unsynced modes. (top right corner). In Unsynced mode it shows you only those polies that selected in mesh edit mode currently. In Synced it automatically syncs your selection in UV edit and mesh edit sides but lacks few important options.
    4. I suggest to install free Textool addon and buy UVpackmaster3 one. The later makes your UV tools as good as Mayas if not better. I am not MAya user although.


    It's not that much different in Zbrush actually.

    1. you mark UV island as polygroups by "Groups by normals" or manually by Zmodeller brush.
    2. in Uvmaster check in "polygroups" and "work on clone"

    hit "unwrap then " flatten" then scale and pack your uvislands then "unflatten"


    One shared thing in between Blender and Zbrush is it's totally unsound to do UV on heavily subdivided mesh.

    You need to unvrap your low res mesh first BEFORE sculpting any extra details.

    Other way around it would be torture in both. Retopo and so on.

  • Lifelover
    Options
    Offline / Send Message
    Lifelover polycounter lvl 9

    @gnoop Much, much appreciated for the comprehensive guide!!! I'd say it's a big Christmas gift :) Thank you!

Sign In or Register to comment.