The main thing I really need for proper game art is true smoothing groups. The hard edges are not the same thing.
I mean, Maya, (which I believe has overtaken Max, prevalence-wise in the games industry?) uses a hard-edge system instead of smoothing groups, so.............
The main thing I really need for proper game art is true smoothing groups. The hard edges are not the same thing.
I mean, Maya, (which I believe has overtaken Max, prevalence-wise in the games industry?) uses a hard-edge system instead of smoothing groups, so.............
Yeah. As far as I know, in Max you select a group of polygons and add a smoothing group for them. The shading is broken based on the border of the selection, also known as edges... And yes, Maya and Blender has a similar system for hard/sharp edges.
"A proper game art" doesn't necessarily need smoothing groups that much. In these days you can use more polygons on low poly models with beveling and leave the mesh smooth all over, or if you wish to fine tune shading, use face weighted vertex normals.
What's the process for reporting bugs? Is there a forum or do I go straight to developer.blender.org and open a bug report? Basically using vertex color through the attribute node has been busted for the longest time (the color values aren't linearized correctly, and if you try to correct that with an inverse gamma node to linearize the vertex colors then obviously it's the interpolation that's not linear anymore) and I hoped it'd be either fixed in 2.81 or different in the all new vertex color input node but it has the exact same problem still.
After a little while using 2.8 and 2.81 there's really one thing that annoys me to no end : there seems to be no way to instantly tell (without scrolling through the outliner) which scene layer (or "collection", whatever the official name is) the currently selected/active object belongs to.
In 2.79 and earlier it was just a matter of having a quick glance at the layer grid, which clearly showed the scene layers, whether they contained objects or not, and which layer the currently selected object belonged to :
For instance here I can instantly read that I am using two scene layers (0 and 10 if one counts line by line), both of which have objects in them ; and the currently selected object belongs to 0. Super fast and elegant imho.
No in 2.8 I feel completely blind in that regard and I am losing a significant amount of time going back and forth between the viewport of the far-from perfect outliner, juggling with collection names, hiding/unhiding and expanding/collapsing them manually, and so on. I was hoping that the Scenes mode (showing the Collections without their objects) would help, but unfortunately the display of collection names is always white/grey there (as in : nothing happens visually there when selecting objects in the scene. I was hoping that at the very least the collection names would turn orange when selecting an object belonging to them).
Does anyone know of some workaround for that ? Either an add-on somehow bringing back an equivalent to the grid view and controls, or maybe something I am missing in the interface showing the collection names as the user clicks on objects.
(of course I understand that the new paradigm has a lot of value, if only just for the fact that it allows an infinite number of named layers as opposed to only 20 no-name layers. But as far as practically organizing/cleaning up complex scenes, the new paradigm brings a ton of annoying inertia imho).
- - - - -
Edit : ok I've found this, which indeed show which Collection the currently selected object belongs to ... but this is buried into the Object tab hence not displayed at all time. Any way to make this into a viewport overlay somehow ?
And admittedly, this little panel doesn't allow the instant hiding/unhiding of the other layers anyways. This stuff is really frustrating, to a point of considering going back to pre-2.8 for modeling ...
under the n panel there is a collections tab which lists all your collections and shows you to which collections your selected object belongs (bottom left corner in screenshot)
you can also view and hide collections with 1 2 3 4... and shift + 1 2 3 4... where each number stands for the position of your collection
After a little while using 2.8 and 2.81 there's really one thing that annoys me to no end : there seems to be no way to instantly tell (without scrolling through the outliner) which scene layer (or "collection", whatever the official name is) the currently selected/active object belongs to.
You can see the icon besides the collections lighting up depending on the selected object, no? That's a pretty evident signal of which collection contains selected stuff?
Edit : ok I've found this, which indeed show which Collection the currently selected object belongs to ... but this is buried into the Object tab hence not displayed at all time. Any way to make this into a viewport overlay somehow ?
Hey pior, you can right click on the 8 little dots and pin it. Or just shift+click. Should stay always in the panel. Could fix it partly. An overlay would be really great I think. Probably something for https://blender.community/c/rightclickselect/ ? Could be on there, didn't check yet.
What @Justo said. It should be visible in there in the outliner. Should even show for nested collections.
Another reason why you could not do it as easily as it was with the layers before: Objects can now be in multiple collections at the same time. I might be remembering wrong, but I think that was not possible with layers.
@Justo : unfortunately this is *precisely* the problem with this new paradigm. On paper/in theory it sounds great and all, the feature is here since the little triangle icon does get highlighted ... but in practice it doesn't really work (at least for me) because as soon as a collection has many members and is expanded, the objects names and their little highlighted icon will often end up past the visible area, requiring to bring the mouse cursor over there just to scroll up/down, dig into the hierarchy, and so on. Which is why I like the Scenes view better in that regard (but it doesn't have any highlight ).
To put things differently : what I am looking for is not some way to identify which collection an object belongs to, as there are obviously many ways to do that. I am rather looking for a foolproof way to do so, instantaneously, without having to click/scroll through anything, at any time. This is why the little grid of dots was so great, it was always there sitting right at the edge of peripheral vision, always available and easy to interact with.
@SnowInChina : this is great ! I wasn't aware of that tab, excellent. It's just a bit of a shame that it doesn't allow for renaming collections by double clicking on them though, so I'll have to use the outliner for that, but that will do. The 1-2-3-4 keys don't help at all for my issue however, because what I am looking for is a way to instantly check the collection status of the current selection of objects, at any time. Having to poke through collections at random by switching their visibility on and off would be a nightmare in that regard (and as a matter of fact even though I am aware of the functionality I barely ever use these numbered shortcuts as workflow wise they're pretty much worthless imho, too unpredictably because it's impossible to ever now which collection is going to be mapped to which number).
Also, @TheFlow : I didn't know that the subpanels of the N-panel were pinnable, that's very cool. It strikes me as odd that this seems to be saved not as a user pref but as a scene pref, and it's a bit annoying that it always changes screen location since it flows with the rest of the N panel unless placed at the very top (hence not as "rock solid reliable" as the gird of dots), but that is helping a lot already, thanks. BTW the one panel in the screenshot you quoted is not pinnable however AFAIK (at least in 2.8) - looks like only the N-panel supports pinning.
@f1r3w4rr10r : 2.79 and earlier definitely allowed for objects to be in multiple layers at once. As a matter of fact doing so was a lot easier/faster to do then compared to now, again thanks to the elegant design/UX of the grid of dots.
For completeness' sake, you can also hover your mouse over the outliner and press the focus key (Numpad + .) to instantly jump to the active item in the outliner.
It's not an answer to your no-clicks-wanted problem, but if there was a way to press something when hovering over the outliner to automatically close all the opened collections, i bet that would be cool...
For completeness' sake, you can also hover your mouse over the outliner and press the focus key (Numpad + .) to instantly jump to the active item in the outliner.
I have one object that I can't seem to merge/join with others or else the material/texture coordinates screw up. Tested in 2.79 and 2.81 with identical results.
Apart from having to have UVmaps with unique names assigned to each of these - what else is there to look out for?
I have one object that I can't seem to merge/join with others or else the material/texture coordinates screw up. Tested in 2.79 and 2.81 with identical results.
Apart from having to have UVmaps with unique names assigned to each of these - what else is there to look out for?
I have one object that I can't seem to merge/join with others or else the material/texture coordinates screw up. Tested in 2.79 and 2.81 with identical results.
Apart from having to have UVmaps with unique names assigned to each of these - what else is there to look out for?
This uv-part sounds bit buggy. If you would obj export / re-import the object. Does it then behave normally? The uv-data is just part of the mesh data object and usually there is nothing magical happening when joining with another data block. Indices will get re-ordered.. How do the UV-s precisely change?
"Apart from having to have UVmaps with unique names assigned to each of these - what else is there to look out for?" Well, you actually do want to use the exact same name for the UV sets of the objects to be merged - otherwise the system assumes that you want the UV sets to remain separate ... meaning that you might end up with the UVs you want to keep on a different set than expected. In short : make sure that the UV sets of all the objects you want to merge are called the exact same way before performing the merge.
Confirmed, I was doing it the wrong way around. Something unrelated must have gone wrong the first try, then I googled how to do it and found hints to the UVmap property. Argh. Thanks guys - this multi-subobject material BS isn't something I usually have to deal with.
Blender needs the ability to edit properties of multiple objects at once, or I don't know how to do it. If I want to e.g. 'Clear Custom Split Normals Data' from multiple objects at once, I can't. If I have 100 objects I need to clear that data from, I need to select each and every single one of the them, then click the button 100 times. Usability nightmare.
Have you tried just selecting all of them and then just searching for the command and executing it? Other than that, if I understand this correctly, you could also select all, go into edit mode, select all edges and then delete the split normals data.
@Michael Knubben : "crucially, Blender _does_ display the collection in the top left of the viewport." I would say : close, but not quite ! It does display the name of the currently active selection (last collection that was proactively clicked on or interacted with in the outliner), but that is different from the collection that the currently selected object belongs to. In other words : this top left corner display indicates the collection that the next created objects will go to. Which is useful in and of itself of course (and will probably save me quite a few headaches going forward, as I hate how I often end up with unselectable objects because of the way Blender treats the last edited collection as the active one), but it doesn't give the exhaustive information that the little dots were giving ...
Blender needs the ability to edit properties of multiple objects at once, or I don't know how to do it. If I want to e.g. 'Clear Custom Split Normals Data' from multiple objects at once, I can't. If I have 100 objects I need to clear that data from, I need to select each and every single one of the them, then click the button 100 times. Usability nightmare.
You can try selecting all the objects you want, then hold down the Alt key when changing the setting. I don't think it works with every setting, though. But yeah, I'd like to see tedious UX things like that improved.
so umm, 2.81 here, anyone know the basic transparency setup for eevee materials? Anything that is translucent and would let me see 50-80% of what's behind the glass. I'm playing around with the Alpha Blend options of mats, but nothing seems to get the job done...
I haven't played with it much, but I turned on transmission and enabled Screen Space Refraction (refraction depth controls the distortion). Over on the rendering tab I also checked Refraction in the Screen Space Reflections. Seems like you need both for it to work. Then the roughness controls the blurriness
Edit: You could also possibly just mix a transparent shader if you just want semi-transparency.
Each time I re-import an OBJ into Blender, it attaches the name of the object to the name of the mesh, and the name of the mesh to each object. Meaning, when I export the OBJ from Blender, an object is e.g. named 'object.001', and the mesh (child) named 'part.001_low'. When I close the file, then re-import the OBJ, the same object is named 'object.001_part.001_low', and the corresponding mesh is named 'object.001_part.001_low'. What gives? I have to rename all objects each time I re-import that OBJ because I have to edit something. How do I make Blender keep the original object + mesh names?
@wilson66 We discussed the same thing just recently. That is nothing Blender can do anything about, that is a limitation of the OBJ file format. In OBJ there is no concept for what Blender calls an Object. OBJ only knows about mesh data. So I wager that this concatenated name is already created, when you export it. You can even check that yourself, since OBJ is a plain text format. Just open it with a text editor and search for the name.
In general, OBJ is a really simple format. It can literally only do vertices and faces. Most applications should also handle UV and vertex color data, but not all do. Anything beyond that is not possible with OBJ. There are no bones, not animations, nothing.
It seems to have to do with the fact that Blender distinguishes between objects and meshes then, ok. This seems to be a concept unique to Blender though (?), e.g. Modo does not have such a problem. It just imports/ exports the OBJ with exactly the names you have defined.
@wilson66 It depends on how Modo implements an OBJ importer/exporter. I might as well be, that they write their names into comments in the file, so they can extract those back out later. I don't think Blender does that. Also here is a reference of what can be in an OBJ file: https://en.wikipedia.org/wiki/Wavefront_.obj_file#File_format
I suggest you save a simple scene with just a cube object and test-names for both the object and the mesh and have a look in the file with a text editor. And then do the same with a similar setup in Modo and have a look into the file that Modo exports.
I realize, that not everyone is a programmer or wants to be one, but this would be the first step I would do, to see if we can get the Blender devs to implement a functionality similar to what Modo does. Just be aware, that there is most likely no standard way to do this and thus it will likely not be implemented, just to understand Modo specific OBJ files. If anything my money would be that people are willing to implement name saving so that Blender can re-import the same names it also exported.
But as an overall comment: I really suggest you try FBX instead. It will not be pain free, but you will definitely have less problems with it than with OBJ.
I just noticed Blender does something strange with FBX files as well. It does not save objects or meshes with the same names as in the Blender file, but attaches some numbers to the name of the objects. When I have named objects 'object.001', object.002' ect. in Blender, export it as FBX, then open in Maya, the objects are named 'objectFBXASC046001' ect. and I get a 'nodes with illegal names were detected' message. Something is arwy here. Blender needs to export object/mesh names exactly as I have defined them, or the objects I need to texture/ bake in Substance Painter will not be usable, as it all depends on exact mesh names with specific suffixes. EDIT: noticed it seems to be something Maya specific. Modo imports FBX with correct names.
EDIT: noticed it seems to be something Maya specific. Modo imports FBX with correct names.
I was about to say, keep in mind that Blender's FBX importer/exporter is reverse engineered. Might as well be that Autodesk changed something in the file format again, which is backwards compatible, if you know how, but isn't implemented in Blender. So Autodesk software doesn't accept it, but software using older versions of the official SDK still do.
But what can you do, those are the joys of closed software/standards/file formats.
EDIT: Another reason why people should use more open formats like Alembic, so the whole industry isn't held in a grip by one player, even if they do not have anything to do with that one player.
EDIT 2: Having said that, you should actually try using Alembic, if you just go Blender <-> Autodesk software. They both support it. Substance does not yet, as it seems.
@f1r3w4rr10r I think glTF is the open-source equivalent to FBX, it's designed to be a 3D scene interchange format (so it should be better than Alembic in most cases, which is a baked mesh streaming format).
@RN Trye, but in the end it depends on what you plan to do with your scene in the other software. Yes overall glTF would be better, if it can store everything you need, including a modifier stack (not sure though what Maya/Max/Modo would do with a Blender modifier stack). But I am not quite sure it is supported everywhere. From what I can gather it seems to be widely supported, according to it's own website. I never used it so far, but hey I am always for more use of open formats. And more power to the Khronos Group.
This makes me very, very happy. Easily one of my top 2 frusrations with Blender atm for modeling. I still have no idea how to get this into my Blender but I will find out how.
@f1r3w4rr10r I haven't used Alembic yet, but I've read it's great for when you need to render a mesh that's been through simulations and such (softbody physics, cloth etc.) that no format supports. Such a thing has been used on some Unity projects for example:
@RN I mean being a one way street is what is pretty much true for all formats that are not the native scene files of the corresponding application I think. Just that some formats support more, some less. Most formats can not save procedural generation parameters like modifier stacks and I am not even speaking of moving those from one application to another. That will most likely be very difficult, because they are so application specific. But if the KhronosGroup managed to put some standard in place to save those things and got multiple applications to import/export those, then that would be great.
It does display the name of the currently active selection (last collection that was proactively clicked on or interacted with in the outliner), but that is different from the collection that the currently selected object belongs to.
Shit, you're right. While also useful, I'd rather see that display what collection the active object belongs to!
I am not able to replicate this disc brake material in another file (on a different mesh). I tried copy pasting the material from file 1, still the same results. recreated the material, Uv - project from view, tried the material on a cylinder, nothing works. On the Cylinder, the spherical gradient appears on the side instead of the front. Transforms are applied, Origin is in the centre of the object.
Hmm, ist there any additional mesh info that could be influencing this?
Edit: The UV projection should not have anything to do with it, since you are using object coordinates. Thinking about it, check the scale and rotation of the original mesh, if that is modified in any way. If they are at the default values as well, I am at a bit of a loss.
Any way to adjust the snapping distance of the knife tool? I often produce double vertices - because the knife tool doesn't actually snap to the vertex I click on, but places a vertex right next to it. It would also be better to adjust the functionality of the tool. Right now, a vertex is placed right where I click. If I didn't get the location correctly, I need to start over. It would be better if the functionality would be more like in Modo: Click on an edge -> hold down left mouse button -> move the pen/mouse to slide the vertex into place -> release the mouse button places the vertex. Each cut/ vertex can also be adjusted afterwards (slide each vertex on edge) until I drop the tool. Knife tool feels unreliable in general, it projects edges in all directions sometimes. Seems to be some kind of precision issue, it gets more and more unreliable the closer I zoom in to the geometry, to the point where it is unusable.
Thanks. Yes the mesh was imported and scaled. But Applying transforms should have sorted things out. Right now I tried in a new file on a new cylinder, got the same result. Maybe its a bug. Posting the file here, in case anyone wants to take a look.
@sinhead The thing is, this material uses Object space coordinates. I just tried your file and you can easily use the "Brake Disc" material, if you apply the scale to the "brake Disk" Object and then scale the Mesh (in edit mode) slightly down.
Texture coordinates in the Object space scale with the object.
Overall theory:
And the spherical Gradient Texture does not simply draw a circle on UV coordinates as you might be used to from other tools such as Substance. Texture generators in Blender are actually 3D. To demonstrate, take your cylinder in that scene, go into edit mode and move the mesh along the y-axis towards the brake disks and you will see what I mean.
@RN aside from it being in the (let's be honest: overcrowded and awful) sidepanel, yeah that looks pretty cool! I could probably move it to the viewport header with Pie Menu Editor, but I'd prefer to be given the option in the addon
Thanks a lot! This solves the problem. So to use the same material on a larger (pasted) brake disc, I scaled it down in Edit mode, until the texture fitted. And then in Object mode, scaled it up (in the "dimensions"), back to its original larger size. In the talk he uses multiply node etc for scaling, which I'll try later. The talk is great too. Blender conferences have a lot of hidden gems.
@sinhead just be careful because the recent updates to nodes (especially the additional dimensions for the noise texture) broke the wood grain setup he shows in the talk. I use that myself and I am still in the process of fixing it.
Replies
I mean, Maya, (which I believe has overtaken Max, prevalence-wise in the games industry?) uses a hard-edge system instead of smoothing groups, so.............
In 2.79 and earlier it was just a matter of having a quick glance at the layer grid, which clearly showed the scene layers, whether they contained objects or not, and which layer the currently selected object belonged to :
For instance here I can instantly read that I am using two scene layers (0 and 10 if one counts line by line), both of which have objects in them ; and the currently selected object belongs to 0. Super fast and elegant imho.
No in 2.8 I feel completely blind in that regard and I am losing a significant amount of time going back and forth between the viewport of the far-from perfect outliner, juggling with collection names, hiding/unhiding and expanding/collapsing them manually, and so on. I was hoping that the Scenes mode (showing the Collections without their objects) would help, but unfortunately the display of collection names is always white/grey there (as in : nothing happens visually there when selecting objects in the scene. I was hoping that at the very least the collection names would turn orange when selecting an object belonging to them).
Does anyone know of some workaround for that ? Either an add-on somehow bringing back an equivalent to the grid view and controls, or maybe something I am missing in the interface showing the collection names as the user clicks on objects.
(of course I understand that the new paradigm has a lot of value, if only just for the fact that it allows an infinite number of named layers as opposed to only 20 no-name layers. But as far as practically organizing/cleaning up complex scenes, the new paradigm brings a ton of annoying inertia imho).
- - - - -
Edit : ok I've found this, which indeed show which Collection the currently selected object belongs to ... but this is buried into the Object tab hence not displayed at all time. Any way to make this into a viewport overlay somehow ?
And admittedly, this little panel doesn't allow the instant hiding/unhiding of the other layers anyways. This stuff is really frustrating, to a point of considering going back to pre-2.8 for modeling ...
An overlay would be really great I think. Probably something for https://blender.community/c/rightclickselect/ ? Could be on there, didn't check yet.
@Justo : unfortunately this is *precisely* the problem with this new paradigm. On paper/in theory it sounds great and all, the feature is here since the little triangle icon does get highlighted ... but in practice it doesn't really work (at least for me) because as soon as a collection has many members and is expanded, the objects names and their little highlighted icon will often end up past the visible area, requiring to bring the mouse cursor over there just to scroll up/down, dig into the hierarchy, and so on. Which is why I like the Scenes view better in that regard (but it doesn't have any highlight ).
To put things differently : what I am looking for is not some way to identify which collection an object belongs to, as there are obviously many ways to do that. I am rather looking for a foolproof way to do so, instantaneously, without having to click/scroll through anything, at any time. This is why the little grid of dots was so great, it was always there sitting right at the edge of peripheral vision, always available and easy to interact with.
@SnowInChina : this is great ! I wasn't aware of that tab, excellent. It's just a bit of a shame that it doesn't allow for renaming collections by double clicking on them though, so I'll have to use the outliner for that, but that will do. The 1-2-3-4 keys don't help at all for my issue however, because what I am looking for is a way to instantly check the collection status of the current selection of objects, at any time. Having to poke through collections at random by switching their visibility on and off would be a nightmare in that regard (and as a matter of fact even though I am aware of the functionality I barely ever use these numbered shortcuts as workflow wise they're pretty much worthless imho, too unpredictably because it's impossible to ever now which collection is going to be mapped to which number).
Also, @TheFlow : I didn't know that the subpanels of the N-panel were pinnable, that's very cool. It strikes me as odd that this seems to be saved not as a user pref but as a scene pref, and it's a bit annoying that it always changes screen location since it flows with the rest of the N panel unless placed at the very top (hence not as "rock solid reliable" as the gird of dots), but that is helping a lot already, thanks. BTW the one panel in the screenshot you quoted is not pinnable however AFAIK (at least in 2.8) - looks like only the N-panel supports pinning.
@f1r3w4rr10r : 2.79 and earlier definitely allowed for objects to be in multiple layers at once. As a matter of fact doing so was a lot easier/faster to do then compared to now, again thanks to the elegant design/UX of the grid of dots.
Edit:
Oh, that's nice.
I still have access to my student license
How do the UV-s precisely change?
Well, you actually do want to use the exact same name for the UV sets of the objects to be merged - otherwise the system assumes that you want the UV sets to remain separate ... meaning that you might end up with the UVs you want to keep on a different set than expected.
In short : make sure that the UV sets of all the objects you want to merge are called the exact same way before performing the merge.
https://youtu.be/vKjnsQ5Rozs
https://render.otoy.com/forum/viewtopic.php?f=113&t=72241
"crucially, Blender _does_ display the collection in the top left of the viewport."
I would say : close, but not quite !
It does display the name of the currently active selection (last collection that was proactively clicked on or interacted with in the outliner), but that is different from the collection that the currently selected object belongs to.
In other words : this top left corner display indicates the collection that the next created objects will go to. Which is useful in and of itself of course (and will probably save me quite a few headaches going forward, as I hate how I often end up with unselectable objects because of the way Blender treats the last edited collection as the active one), but it doesn't give the exhaustive information that the little dots were giving ...
You can try selecting all the objects you want, then hold down the Alt key when changing the setting. I don't think it works with every setting, though. But yeah, I'd like to see tedious UX things like that improved.
Meaning, when I export the OBJ from Blender, an object is e.g. named 'object.001', and the mesh (child) named 'part.001_low'.
When I close the file, then re-import the OBJ, the same object is named 'object.001_part.001_low', and the corresponding mesh is named 'object.001_part.001_low'.
What gives? I have to rename all objects each time I re-import that OBJ because I have to edit something.
How do I make Blender keep the original object + mesh names?
Something is arwy here.
Blender needs to export object/mesh names exactly as I have defined them, or the objects I need to texture/ bake in Substance Painter will not be usable, as it all depends on exact mesh names with specific suffixes.
EDIT: noticed it seems to be something Maya specific. Modo imports FBX with correct names.
This makes me very, very happy. Easily one of my top 2 frusrations with Blender atm for modeling. I still have no idea how to get this into my Blender but I will find out how.
Transforms are applied, Origin is in the centre of the object.
It would also be better to adjust the functionality of the tool. Right now, a vertex is placed right where I click. If I didn't get the location correctly, I need to start over.
It would be better if the functionality would be more like in Modo: Click on an edge -> hold down left mouse button -> move the pen/mouse to slide the vertex into place -> release the mouse button places the vertex. Each cut/ vertex can also be adjusted afterwards (slide each vertex on edge) until I drop the tool.
Knife tool feels unreliable in general, it projects edges in all directions sometimes. Seems to be some kind of precision issue, it gets more and more unreliable the closer I zoom in to the geometry, to the point where it is unusable.
And yeah @Michael Knubben , I thought so too at first
I could probably move it to the viewport header with Pie Menu Editor, but I'd prefer to be given the option in the addon
Thanks a lot! This solves the problem. So to use the same material on a larger (pasted) brake disc, I scaled it down in Edit mode, until the texture fitted. And then in Object mode, scaled it up (in the "dimensions"), back to its original larger size.
In the talk he uses multiply node etc for scaling, which I'll try later.
The talk is great too. Blender conferences have a lot of hidden gems.