Blender Mega Thread

Replies

  • f1r3w4rr10r
    Offline / Send Message
    f1r3w4rr10r polycounter lvl 7
    Justo said:
    So...two features of Blender I feel should be added as soon as possible to make Blender a more industry-friendly app:

    Decouple XRay from Limit Selection to Visible (there is also an extensive feedback thread with reports from users who've worked with Blender for a lot longer than I):
    https://blender.community/c/rightclickselect/G6bbbc/
    Wow I use that so rarely, I didn't even notice it was changed in 2.8. But yeah everything that expands user options is a plus to me.
    Justo said:
    And you will also get a vote from me for this one.
    RN said:
    @Justo so I tried here, hiding a collection by script doesn't hide its objects. But then I noticed pressing 1, 2, 3 ... 9, 0, while holding Shift will toggle the visibility of the collection and its objects, so maybe a script isn't needed? You'd put all cutter objects in the same collection and press Shift + number-that-represents-that-collection.

    This is the only thing in the Blender default keybinds I have changed so far. It annoyed me to no end, that when I am in object mode and think I am in edit mode, I press 1, 2 or 3 to change selection modes, but instead hide everything except collection 1, 2 or 3. Now those do nothing anymore in object mode.
  • Blaizer
    Offline / Send Message
    Blaizer polycounter lvl 14
    Customizing Blender i have run into this problem. Is something normal? or i'm missing something. 


    In edit mode > polygon mode, using subdivide it generates what you see on the capture. With "perfect circle" faces and other shapes i obtain bad results. Can we apply the subdivision algorithm from the subdivision modifier via script?

    The subdivide operation is one of the most basic operations we need in subdivision modelling, but it doesn't work well as you can see here:


    This method of subdivision produces too many unneeded artifacts. Is the equivalent of modo's "smooth" method of subdivision (an option not very used). But there should be an option for a Catmull-Clark method while editing. Is this the result of removing open subdiv from blender?

    Applying a smooth in the affected part doesn't help at all, it erases the curvature and flattens all.


    With other subdiv primitives or cylindrical forms we get the "pumpkin effect". Not the desired result as shown in the side. If we could apply the modifier to a part of the mesh, it would be fantastic. This is forcing me to split parts as other objects. This is insane.
  • Dataday
    Offline / Send Message
    Dataday polycounter lvl 7
    @Blaizer If I recall you said you were working around a cintiq right? It should have some touch strip no? Or is it one of the newer models with no hotkeys & a remote?

    Both of my graphics tablets have touch strips (cintiq 20wsx and a huion kamvas pro 2019), which essentially emulates a mouse wheel. You could try that or if your cintiqs are missing hotkeys and a touch strip, grab or setup the wacom remote dial thing, whatever they call it now to do the same thing.

    Alternatively, you can look at the 3rd party options out there which include everything from a usb dial to an xp-pen hotkey remote, even a nintendo switch controller set up joy2key will work.


    You can always jump on the BlenderArtists forum as well and hit up this thread with your feedback: https://blenderartists.org/t/industry-compatible-keymap/1155183/53

    William Reynish, who is active in that thread is managing the Industry Standard Keymap. So he will mostly likely respond if you find something that needs work with the keymap.


  • Blaizer
    Offline / Send Message
    Blaizer polycounter lvl 14
    @Dataday Yes, i work with a new Cintiq, just the screen. I activated the "Emulate 3 Button Mouse" in the preferences and worked fine as RN suggested, but it brokes the loop selections.

    I've been lurking over those forums but i never registered. I will jump in sooner or later with some feedback. 
  • rollin
    Offline / Send Message
    rollin greentooth
    Fighting a bit with mirroring. How do I mirror an instanced mesh? Naturally I would go with the mirror modifier but it seems not possible to just mirror it does always double the mesh and works like the symmetry modifier from max

    Also the mirror command under transform seems to only mirror the global position or the local scale. Say you have a left arm and want a right arm but both should use the same mesh data (aka instances) - how is the current workflow of doing it so I get two separate objects (in contrary to the mirror modifier)
  • xrg
    Offline / Send Message
    xrg polycounter lvl 8
    I might be misunderstanding what you mean, but Alt+D does a Linked Duplicate which will create a new object but share the mesh data. You should be able to mirror the duplicate with the mirror commands. Then when you edit one mesh, they both receive the changes.
  • rollin
    Offline / Send Message
    rollin greentooth
    xrg said:
    I might be misunderstanding what you mean, but Alt+D does a Linked Duplicate which will create a new object but share the mesh data. You should be able to mirror the duplicate with the mirror commands. Then when you edit one mesh, they both receive the changes.
    I might be totally stupid here but I'm not able to.
    I create an object, rotate it in an arbitrary way, just to be off the world axis alignment, make a linked duplicate, set cursor to (0,0,0), use transform->mirror, around cursor, global space and I get the instance mirrored in position but not in topology


  • f1r3w4rr10r
    Offline / Send Message
    f1r3w4rr10r polycounter lvl 7
    @rollin I just had a look at it myself and it seems to be an interesting problem, which I never noticed myself so far. It seems that when you mirror and object, which has no rotation applied, you can mirror the linked mesh just fine. (Mirroring the object is just setting one of the scale axes to -1) However when the object you want to mirror has rotation applied, it does not do it. That's curious.

    I could imagine that's because there is no easy and reliable way to figure out on which axes to mirror, but it could also just be a bug.

    A workaround would be, to just mirror the object as you already did (or move it to where you want to have it) and then just setting the desired axis' scale to -1.
  • rollin
    Offline / Send Message
    rollin greentooth
    A workaround would be, to just mirror the object as you already did (or move it to where you want to have it) and then just setting the desired axis' scale to -1.
    Fastest work around I found yet was to parent the duplicate to an (empty) objects which acts as mirror and then negative-scale this parent. Then unparent by keeping transform ("Clear and Keep Transform"). This sets the parent matrix of the duplicate and applies negative scale as needed to the duplicate. 
    Still this:
    a) sucks speed wise even though it should be easy to script it into a macro
    and b) is stupid if I don't want to have negative scale which easily results in inverted faces when exported to e.g. a game engine. So on export the objects need to be made unique and scale applied (or at least made non-negative). Again something we can script but dude.. 

    Is anyone aware of an ticket regarding the mirror modifier - extending it to support simply flipping the mesh?  
  • LuisCherubini
    Offline / Send Message
    LuisCherubini greentooth
    Fellow artists, BCON2019 was awesome! I had the opportunity to meet all the devs, including Mike Erwin, who's currently working on the interchangeable part of Blender, for UE4 / Unity. Over my talk presented 2 weeks ago, I also mentioned some of my favorite addons this year, from @RN , @kio and Mark Kingsnorth. (I was a little nervous as you can see, never had such a big audience)  :p 



    But in overall, it was possible to see all the hard work and effort that was put into organizing such event. The staff received a deserved round of applause, including Francesco Siddi! Already hyped for next year! Let's hope to get more polycounters abroad to it as well.

    P.S: Expect to see a new boolean system integration, planned for next months, with co-planar intersections! 
  • RN
    Offline / Send Message
    RN polycounter
    @LuisCherubini omg man, that's awesome!! Congratulations on being a part of BCon, and thank you for the beautiful shout-out segment (watching it right now). Really cool.
    I also recognize that guy on the bottom right, that's Dalai Felinto, a Blender dev and fellow countryman.
  • Zablorg
    Offline / Send Message
    Zablorg polycounter lvl 4
    Anyone know why my UV unwrapping operations seem to result in the UV faces being separated, even when the faces are connected in the geometry and there aren't associated seams?
  • Justo
    Offline / Send Message
    Justo interpolator

    P.S: Expect to see a new boolean system integration, planned for next months, with co-planar intersections! 
    That's good to hear. With "co-planar intersections", do you mean when objects are perfectly overlapping certain sides? Because if so, that's my most anticipated 'fix' (if that's the proper word) to Blender's way of doing things atm. For the rest, I feel pretty comfortable with using HOps&Boxcutter.

    EDIT: Also, does anyone know if Blender has anything as fast and stable as Marmoset's feature that allows you to place lights based on the HDRI image? Something that would update in real-time too, like in the GIF, to play with different light settings quickly.

  • Blaizer
    Offline / Send Message
    Blaizer polycounter lvl 14
    Co-planar intersections!? sounds really good for me, i work a lot with booleans and that's a huge problem!

    Blender 2.79 had this useful extrusion, "destructive extrusions" like Sketchup: https://gumroad.com/l/cQjUX If you still use 2.79 like me, give it a try.

    But with 2.8 it doesn't works. Anyways, they are planning to add its functionalities in version 2.82. check it out, it's really useful  https://developer.blender.org/D5336
  • musashidan
  • musashidan
    Offline / Send Message
    musashidan insane polycounter
    @rollin maybe I'm misunderstanding your intention, but why not edit the position/rotation at the mesh level(origin remains at 0,0,0 and object transforms unaffected), instance, mirror, and you have the result. 2 separate, but instanced objects with mirrored topology. You'll still have to make unique and flip normals though.
  • Justo
    Offline / Send Message
    Justo interpolator
    @musashidan hey Danny, thanks for the fast response. That looks like what I'm looking for - the videos shown however focus on creating HDRIs from scratch, which isn't what I'm interested in. But the feature list seems to confirm it is possible: 

    "Mix any Image with procedural lights or use a FlatColor or a Gradient Fill. "

    I'm now asking the devs in their BA thread. Thanks for showing me this addon.
  • musashidan
    Offline / Send Message
    musashidan insane polycounter
    Justo said:
    "Mix any Image with procedural lights or use a FlatColor or a Gradient Fill. "


    Yeah mate, this is the first thing I checked in the list before posting. :D

    This would be a great feature to have built in.
  • rollin
    Offline / Send Message
    rollin greentooth
    @rollin maybe I'm misunderstanding your intention, but why not edit the position/rotation at the mesh level(origin remains at 0,0,0 and object transforms unaffected), instance, mirror, and you have the result. 2 separate, but instanced objects with mirrored topology. You'll still have to make unique and flip normals though.
    Thank you but I don't think this applies to my case. This would be what the modifier should be able to do imo. But as I only have one mesh data I don't really understand how I should edit it two get two positions / rotations out of it 0.o
    I want to edit the left side and the right side should follow. Just like with a mirror modifier - just not with a mirror modifier as it's currently not capable of what I want to do.

    The workflow I want to have is: Mirror objects like with the workaround I have described just with one command and then revert the scale of the mirrored object to positive values and re-invert on the mesh level with the not-yet-existing mirror modifier v2
    Hope this makes sense.
  • 99499
    Is there a board or a thread dedicated to having someone review your topology? I'm working on a particular mesh for a character I plan on animating for a game and I'd like to have an experienced person review how I've made it before I get started.
  • 99499
    Not sure how to delete the above post, but eh I'll just post a picture of it here.



    The above image is a little thing I've been working on for a while. Now that I take a look at this monstrosity I've created this thing has no type of grace or consideration for good topology, especially on the arms. Now I'm wondering is it worth attempting to retopologize this mess or should I just start over form square one?
    I'm asking this because I have no experience in retopologizing. From what I understand it is a way of correcting poor topology such as this but I have only ever seen this done on high res characters, not so much on low poly ones. So I'm trying to get some feedback on how I should proceed from here.
  • rollin
    Offline / Send Message
    rollin greentooth
    99499 said:
    Not sure how to delete the above post, but eh I'll just post a picture of it here.



    The above image is a little thing I've been working on for a while. Now that I take a look at this monstrosity I've created this thing has no type of grace or consideration for good topology, especially on the arms. Now I'm wondering is it worth attempting to retopologize this mess or should I just start over form square one?
    I'm asking this because I have no experience in retopologizing. From what I understand it is a way of correcting poor topology such as this but I have only ever seen this done on high res characters, not so much on low poly ones. So I'm trying to get some feedback on how I should proceed from here.
    You better create a new topic for this.
  • Justo
    Offline / Send Message
    Justo interpolator
    Is there any Blender 2.8+ script that can cut seams across sharp (or even Bevel'd) edges to create UV islands? I found the opposite: to set hard edges based on the islands, but not the inverse...
  • musashidan
    Offline / Send Message
    musashidan insane polycounter
    Justo said:
    Is there any Blender 2.8+ script that can cut seams across sharp (or even Bevel'd) edges to create UV islands? I found the opposite: to set hard edges based on the islands, but not the inverse...
    You've been using it obsessively for months!! :D  Maxivs Interactive tools has this feature and can also create seams from sharps and unwrap in one click. They're at the bottom of the panel in UV utilities.
  • musashidan
    Offline / Send Message
    musashidan insane polycounter
    rollin said:

    The workflow I want to have is: Mirror objects like with the workaround I have described just with one command and then revert the scale of the mirrored object to positive values and re-invert on the mesh level with the not-yet-existing mirror modifier v2
    Hope this makes sense.
    Still not exactly clear on your intention, but I'm thinking you want the same outcome as using Max's Mirror tool set to 'Geometry'? Max's Mirror used to invert scale and flip normals before they added that extra geometry feature. I don't think Blender can do this without workarounds like you've tried.
  • pior
    Online / Send Message
    pior insane polycounter
     A remark on making a selection based on explicitely marked hard edges : as far as I am aware there is no way to do it trough the interface (the "select hard edges" command is not doing what it says, it is really just a filter based on angle). However the bmesh library has it in the form of the "smooth" property. Meaning that you can do a script that filters edges based on that, and then do any edge operation after - like marking seams for UVs.
  • Justo
    Offline / Send Message
    Justo interpolator
    Justo said:
    Is there any Blender 2.8+ script that can cut seams across sharp (or even Bevel'd) edges to create UV islands? I found the opposite: to set hard edges based on the islands, but not the inverse...
    You've been using it obsessively for months!! :D  Maxivs Interactive tools has this feature and can also create seams from sharps and unwrap in one click. They're at the bottom of the panel in UV utilities.
    Looool indeed I have, oh god! Maxi must be shaking his head in disgust somewhere right now...Didn't know it was there hahaha. Now I'll need to watch some tuts on UVs too, since my God they've made even previewing UVs in that editor kind of strange and cumbersome...
  • musashidan
    Offline / Send Message
    musashidan insane polycounter
    @justo Haha! Maxi to the rescue.

    I've just started experimenting with the unwrap workflow myself. I've been using Rizom for a few months now so I didn't really bother as the Blender workflow seemed very frustrating with the weird selection disconnect between the 3D view and the UV view. I'd like to master unwrapping in Blender though, so I spent some time at it yesterday and after some fiddling it actually doesn't seem that bad. One thing I found absolutely VITAL is the UV Hightlight addon. This will somewhat alleviate the weirdness(sync toggle too, but it's a bit hacky and some tools/addons don't seem to work when it's on) Also, TexTools and UV Packmaster are pretty essential.

    On another note, I think I read a while back that you were looking for an easy way to hide boolean cutters. Boxcutter automatically creates a Cutter collection and there's a checkbox option to hide them automatically. This is great, but when you use Hops boolean tools it doesn't do this. I found that just hitting M>move to collection>cutters is a fast way to do this. Then you can use shift+1(or whatever number the cutters collection is in the outliner list) to toggle the global visibility of all your cutters in that collection.
  • f1r3w4rr10r
    Offline / Send Message
    f1r3w4rr10r polycounter lvl 7
    Justo said:
    Is there any Blender 2.8+ script that can cut seams across sharp (or even Bevel'd) edges to create UV islands? I found the opposite: to set hard edges based on the islands, but not the inverse...
    Is that not possible with the select similar tool?
  • pior
    Online / Send Message
    pior insane polycounter
    Well, Select Similar is indeed a workaround, but having to manually select one "starter" edge like that would prevent any automation of the process. I ran into exactly this issue when looking for a way to automate Hard Edge to Beveled Edge conversion (which is similar to what Justo is trying to do) and unfortunately the default exposed tools don't allow for that. Hence the need to script : deselect all > filter for non smooth edges using bmesh > mark as desired.
  • ant1fact
    Offline / Send Message
    ant1fact polycounter lvl 6
  • Zablorg
    Offline / Send Message
    Zablorg polycounter lvl 4
    Is it beneficial or advisable to represent the same details in both a normal map and a Bump Displacement at the same time? It's unclear whether having both improves the effect or amounts to the same thing, or what.
  • f1r3w4rr10r
    Offline / Send Message
    f1r3w4rr10r polycounter lvl 7
    @Zablorg As I understood it the outcome of both is the same, but they take different inputs. Normal maps just use the regular normal map, representing the angles of the changed normal as input. And I believe bump maps use a height map as input.


    You could use a displacement with a height map instead to have a different outcome.

  • Zablorg
    Offline / Send Message
    Zablorg polycounter lvl 4
    @Zablorg As I understood it the outcome of both is the same, but they take different inputs. Normal maps just use the regular normal map, representing the angles of the changed normal as input. And I believe bump maps use a height map as input.


    You could use a displacement with a height map instead to have a different outcome.

    Ah, I should have been more clear: I am talking about plugging something into the normals input of a shader's surface (using either technique from your first two links), as well as the equivalent detail in its Displacement input (like in your last link).

    But, the shader would be set to use use "Bump" for its displacement method rather than "True Displacement", so the mesh would be unchanged.
  • f1r3w4rr10r
    Offline / Send Message
    f1r3w4rr10r polycounter lvl 7
    But as far as I can see, plugging something into Displacement and then disabling displacement should not have any effect on the render.
  • wilson66
    Offline / Send Message
    wilson66 polycounter lvl 4
    Question about OBJ export. I have an asset that needs to be textured in Substance Painter. It is essential that the individual objects within the OBJ file are named correctly (e.g. I need to name the objects 'screws_low', 'wheels_low' ect.)

    When I export an OBJ file from Blender and then re-import it into Blender or Modo, the names of the objects have changed. Blender has attached some kind of appendices to each object, e.g. the object 'griff_low' in the blender file now is named 'griff_low_griff_low_test_for_modo:002:griff_test_for_modo:010' in the OBJ file, making it unusable in Substance Painter.

    This is really undesirable behavior. How do I tell Blender to keep the names of the objects within the OBJ file exactly the same as in the blender file it was exported from?

    There also is an option to 'keep the vertex order' in the Blender OBJ export window which is de-activated by default. I always want to keep the vertex order (obviously?), is there some way to have that option activated by default? 
  • f1r3w4rr10r
    Offline / Send Message
    f1r3w4rr10r polycounter lvl 7
    @wilson66 I have not used the OBJ export in a while, but I believe the names in the exported OBJ file come from the mesh names, not the object names. The object names are completely lost and blender generates some out of the mesh names on importing from OBJ.

    And if your target is substance painter, have a look at FBX export as well.
  • wilson66
    Offline / Send Message
    wilson66 polycounter lvl 4
    @wilson66 I have not used the OBJ export in a while, but I believe the names in the exported OBJ file come from the mesh names, not the object names. The object names are completely lost and blender generates some out of the mesh names on importing from OBJ.

    And if your target is substance painter, have a look at FBX export as well.
    Thanks for the quick answer. Of course, it was the mesh names. Sorry, I'm a Modo user, and been testing Blender for just a couple of months now. Still a lot to learn. I renamed the meshes, and the object names within the OBJ are now correct.

    I will definitely test the FBX format as well.
  • wilson66
    Offline / Send Message
    wilson66 polycounter lvl 4
    They need to work on the OBJ importer, this is not usable as is. Blender needs almost 10 minutes (!) to import a 250 MB OBJ file, whereas Modo imports the same file in less than 20 seconds.
  • Blaizer
    Offline / Send Message
    Blaizer polycounter lvl 14
    wilson66 said:
    They need to work on the OBJ importer, this is not usable as is. Blender needs almost 10 minutes (!) to import a 250 MB OBJ file, whereas Modo imports the same file in less than 20 seconds.
    That's why i prefer to use fbx instead of obj using Blender. They need to polish too many basic things.
  • f1r3w4rr10r
    Offline / Send Message
    f1r3w4rr10r polycounter lvl 7
    Is FBX faster with the same file format? If so it might really be the importer, otherwise it's Blenders internal structure at fault in this case.
  • musashidan
    Offline / Send Message
    musashidan insane polycounter
    Zablorg said:
    Is it beneficial or advisable to represent the same details in both a normal map and a Bump Displacement at the same time? It's unclear whether having both improves the effect or amounts to the same thing, or what.
    It depends on the microdetail frequency of the height/disp map, but generally you don't need the normal map if you have a high detail disp map and use disp+bump. Renderers like Arnold/Vray/Corona have added this displacement bump feature to cut down on geometry density. Arnold displacement, for instance, works like magic and doesn't require a dense mesh for fine detail. Cycles does have this feature, but from my tests it still requires a dense mesh, even using disp+bump.

    If you don't intend to displace the mesh then why are you using displacement? It is no benefit if you only intend it as a bump map and is additional rendering overhead. You can use the height map you have as a bump map and plug it into normal through a bump node, but in this case you would be better off using a normal map instead. Bump maps are pretty old school and not as effective as normal maps.
  • pior
    Online / Send Message
    pior insane polycounter
    FBX likely won't be any faster, if only because the FBX importer/exporter is reversed-engineerered (if I understand things correctly Autodesk doesn't allow for open source usage of the FBX SDK, so the Blender one has to use its own code). I assume that something similar is happening with the OBJ importer/exporter being extremely slow  (although admitedly OBJ is very easily readable, so maybe it simply isn't optimized)

    One thing for sure : you won't find any answers/solutions to these issue here. The only proactive thing to do is to bring it up to the developers with clear data and example files to back it up.

    (BTW : for transfer between Blender sessions ctrlc ctrlv is very handy. It some cases it might be one way to alleviate some of these issues)
  • f1r3w4rr10r
    Offline / Send Message
    f1r3w4rr10r polycounter lvl 7
    I just remembered something: OBJ is actually plain text, while FBX is binary I believe. So that might be one of the speed factors.
  • kio
    Offline / Send Message
    kio polycounter lvl 11
    the main issue is that the obj parser is written in python which cant really compete with a proper C based implementation.

  • xrg
    Offline / Send Message
    xrg polycounter lvl 8
    Faster I/O is on their todo. They had a GSoC project to do it, but the student didn't finish, unfortunately.

  • wilson66
    Offline / Send Message
    wilson66 polycounter lvl 4
    Thanks guys for your answers.

    Different question: I'm building a parking lot right now, and have made a couple of paving stones that I created paving from using multiple arrays. It works great, but now I'd like to randomize the transforms of each individual paving stone so the pavement looks more natural, especially when looking at it from some distance above.
    I'm aware of the Object -> Transform -> Randomize Transform feature. That requires though to first apply the array modifiers, producing lots and lots of geometry.
    Is it somehow possible to randomize transforms while keeping the array modifiers alive? Can I e.g. map a noise texture to a displace modifier, then tell the modifier to not displace vertices, but just transform entire connected geometry?
  • f1r3w4rr10r
    Offline / Send Message
    f1r3w4rr10r polycounter lvl 7
    Hmm I'd also be interested in this. The only way I was able to do randomization by mesh Hull so far was to put them in separate objects.
  • Prime8
    Online / Send Message
    Prime8 polycounter lvl 5
    wilson66 said:
    Thanks guys for your answers.

    Different question: I'm building a parking lot right now, and have made a couple of paving stones that I created paving from using multiple arrays. It works great, but now I'd like to randomize the transforms of each individual paving stone so the pavement looks more natural, especially when looking at it from some distance above.
    I'm aware of the Object -> Transform -> Randomize Transform feature. That requires though to first apply the array modifiers, producing lots and lots of geometry.
    Is it somehow possible to randomize transforms while keeping the array modifiers alive? Can I e.g. map a noise texture to a displace modifier, then tell the modifier to not displace vertices, but just transform entire connected geometry?
    You can try to use your array as an emitter and use the stones as particles.
    Might sound a bit over complicated, but give you a lot of randomisation options.
    The array geometry can be a single vertex or face and the emitter has to be setup accordingly to assure that you get one stone per face/vertex.
  • kwyjibo
    Offline / Send Message
    kwyjibo polycounter lvl 3
    @wilson66 

    This would be very easy to do using the Sverchok node based geometry addon. This can be used to generate a unique transform matrix with slight randomization to place each paving stone, not to mention a lot of options for randomizing the stones themselves. Creating the array could be done within sverchok using a grid node or use the scene geometry in node to take in a geometry from your scene (this could be a plane or a single vert acted on by an array modifier).
Sign In or Register to comment.