text:
How to set origin of multiple objects at the same time?
I want to set the pivot of all the arrows to their bottoms like the pic below. The method of "origin to geometry" does not help in this case. I have like 6000 arrows, so... Any ideas?

It appears that the distance between your arrows is equal, couldn't you simply edit a single arrow and use two array modifiers for duplication. (apply after edit if needed)?

You could link object data between arrows and edit point of origin for one of them; keep in mind though that distance between them can change, however this may be inefficient and probably substituting arrows with arrayed ones may be better.

are all the centers currently at the same position relatively to each arrow ?

@stacker Yes that's exactly what I have done. After applying, I made the arrows to be separated objects pressing "P" and their origin all became to the same as the first one. I then set "origin to geometry" and all the origin changed to the their geometry centre now...

I have made a YouTube video for making multiple objects set origin at the bottom center and making those objects at zero surface level.

Well I'm not sure of a good way to do this, you can try to select all your arrows, and then select the one with the correct origin, then press CTRL+L, and select "Object Data" from the list.. Unfortunately this is not ideal, as it also copies all other object data such as materials and UVs, effectively making all the arrows instances of the active one.

You can then select all the arrows again, then press U on the keyboard, and select "Objects and Data" from the list, to make all the arrows mesh data single users again, and not instanced..

You can complete by "make single user" after "make link"... so it works

ok... comment and edit at the same time : )

Thanks haha :) actually this seems to work pretty well. :D

More importantly: is there a good reason for the arrows to NOT share a single mesh datablock?

It might actually benefit from sharing a single data-block yeah.

You can use advanced align tools to change objects origin points based on objects bounding box x/y/z, min/max/center etc. values

Script is here but it doesn't work for 3.1 (addon cannot be found after activation, e.g. not in the contextual menu which is the equivalent of the the Special Menu mentioned in the documentation).

In blender 2.93 you can select the cursor set it where you want the origin to be, then go into the Object tab and set each object origin to the cursor. That will set the origins where you want them. Unfortunately, you have to set each origin individually, so it would be a pain to use if you have more than a few objects.

For 2.8+ users, there is an addon introduced since 2.81 that is documented here called Align tools that allow to perform stuff like this.
As an example, I have this bunch of cubes :

As you can see their origins are all over the place. The first thing I do is set each object's origin to each object's center by Object>Set Origin>Origin to Geometry :

Then I can align all the objects on the Z axis with Align tools.
If the addon is not activated yet, you can activate it on the preferences, it comes along with Blender since 2.81. Once activated, we can access it on the N-panel>Item>Align Tools.

With all the cubes selected, clicking on the Z button under Align Location align all the cubes on the Z axis (In  my case, it is the Z axis but it depends on the setup, in the O.P.'s question for instance, it should be the X axis):

Then I select one of the cubes, go to Edit Mode and select its bottom face and press SHIFTS then choose Cursor to Selected :

Go back to Object Mode and select all the cubes again and click on the Advanced button in Align Tools :

To set each cube's origin to its bottom, set the first option to Pivot (which will move the pivot point instead of the object's geometry), the Align Location to Z, the align target to Active and the Destination Point to cursor (which aligns the pivots to the cursor):

I hope this would help someone.
I would like to point out that this method does not allow to retrieve/keep the cubes original position since I assumed that the objects are supposed to be scattered using particles or GeoNodes so that their positions doesn't matter much.

You can join objects. Then set origin and then unjoin them.

I believe that will result in same predicament as question.  All separated objects will have the once joined object origin.

@batFINGER sorry, i messed that.

In 2.82, you can select all objects then set origin to geometry and it will set each objects origin to its own geometry... But some may be a little off. Before doing anything else, look to the lower left of the screen where that little gray box pops up when you do any action. In that box you need to change "Median Center" to "Bounds Center".
At that point, if you want to change the origin to the bottom of each object, go into edit mode while they are all selected and move them all up at once to where you want.


text:
How To Prevent a mesh from overlapping into another?
What is the best way to prevent this:
Obviously, these are pages in a book, and there are also a stack of pages beneath these, so I've got to make sure there are no "gaps".  Should I utilize adjustments with shrinkwrap, make the pages thicker, add subsurface, etc. or......

I'd say in this case the best course of action is to not use shrinkwrap, and do precisely the opposite. Make sure there's always a small gap between your pages so they are never completely overlapping by for example moving them slightly apart in Z direction, Check this question http://blender.stackexchange.com/questions/55380/prevent-z-fighting-between-billboard-particles

cegaton actually put me on the right track.  While "Keep Above Surface" was not successful, I stumbled on the fact that the "offset" value could be key framed.  Was able to key frame at the right moment to keep meshes from overlapping.  Thanks cegaton...how do I give you a "thumbs up"?

As was pointed out by Duarte Farrajota Ramos , you want to keep the pages separated to avoid Z fighting.
If this causes problems because there are so many pages the separation causes them to have a painfully thick stack, then you might want to start animating the hide_render property (the camera icon in the outliner) so that pages which are obscured don't even get rendered until it's time for them to be visible.
Depending on what fraction of the book you will flip through, you might even have a box-ish mesh representing the bulk of the pages, and then 2-3 flippable pages renderable at any one instant.

source: Stack Exchange

license: Creative Commons - Attribution Share-Alike - https://creativecommons.org/licenses/by-sa/3.0/

sort: votes


text:
Texture On Plane Issue?
I'm using a video as texture on a plane.  It's a 10 sec looping video, but is a fireplace and appears seamless.  The issue is, my project is nearly five minutes long, and I only need the video in three locations, lasting 70 sec, 1 sec and 35 sec, respectively.
I'm confused as to how to do this most efficiently, without having to run the video in the background for the entire project??

The video texture doesn't need to continuously run in the background, as blender draws or renders a frame where the texture is visible it will read the one relevant frame from the video that it needs, this is similar to it reading any other image textures in your scene. As you are using a small video it will most likely be cached in RAM while it is being used and have little impact on performance.
To prevent your fire from always being visible you can animate the visibility of your plane both in the viewport and the render.

all_licenses: Creative Commons - Attribution Share-Alike - https://creativecommons.org/licenses/by-sa/3.0/


text:
Apply Text To Surface Question?
How do I create this?
I want to similarly add text to an old plank fence, but I don't want it to just look like an "overlay"

have you already made the plank texture? are the planks different objects? or different meshes within one object? maybe tell a bit more...

Using text may not yield a better result. Try unwrapping the object, design the text with transparent background in photo apps, and then do the overlaying in the Texture area

moonbots - the plank texture has been downloaded from CG textures, one image which is a plank fence.

Israel Bamidele - Somewhat new to this...could you give a little more detail to your suggestion?  I also have the text as a PNG image, with a transparent background.  Are you recommending unwrapping this onto the plank image?  I've tried that, but the text still appears as if it's simply overlayed.  I would like for the cracks/gaps in the planking to show through the text.  Hope that's more clear??

We lack some informations about your current file, but the basic way to do it is this one:

Unwrap your planks (Smart UV Project mode is good for this kind of object) and put your wood image texture on it with the following node organization:

In your picture software (Photoshop, Krita or even Blender), create your text with an alpha transparency.

Create a second UV Map and unwrap (Project From View mode) the front plank faces, those where the text is supposed to appear. You need this second UV Map because the first you've created won't fit.

Now you need to mix your wood Image Texture with your text Image Texture. Create a second Image Texture and load the text picture.  Into the Vector input, plug an Input > UVmap node, and choose the second UVmap you've created so that the text will be displayed according it. Use a Color > MixRGB node to mix the 2 Image Textures. In the Factor, plug the Alpha output of the text Image Texture so that it lets all the transparent area display the wood.

Of course it would need a bit more work, like creating a bump map and plugging it into your nodes Normal inputs to give your object a bit of 3D bumps...

Thanks, moonbots, for the quick reply!  My learning curve is immense, so I've copied your instructions and will work on it!  I understand the node setup, but have not worked with two UV maps yet, so I kind of got lost with that part.  Also, using Projecting with Smart UV Project confused me, but I'll keep working on it.  Thanks again!!

you can create and use as many UV maps as you want, if you create a new one, you'll have to use a UV map node, by default the other nodes will use the first UV map on the list I guess, but you can also plug another UV map node in the other Image Texture with the first UV map you created

Thanks again, moonboots.  That certainly did the trick!  If I can ever get my learning curve up to speed, I'll certainly try to pay it forward to others!  Have a good one!

you're welcome  ;)  nice if you understood verything

license: Creative Commons - Attribution Share-Alike - https://creativecommons.org/licenses/by-sa/4.0/


text:
Using Alt-D Versus Shift-D
I'm aware of the difference between Alt-D and Shift-D; however, when I attempt to move objects modeled as rigid body that I've duplicated with Alt-D, they snap back to their original location.
When I relocate these same objects, duplicated with Shift-D, this doesn't happen?  However, I then have to go into the Rigid Body and change data on each one separately.
I'm using 2.8, new to me, and I apparently don't know how to make sure I don't have Snapping on somewhere...or I'm not doing something else right!  In any event, would certainly appreciate any help!

After you duplicate and place your object, try invalidating the rigid body cache.
One way to do that is by entering and exiting edit mode and jumping to the start frame (ShiftLeft). You'll notice the colored bar along the bar along the bottom of the timeline changes color, which indicates the cache is no longer valid.

all_licenses: Creative Commons - Attribution Share-Alike - https://creativecommons.org/licenses/by-sa/4.0/


text:
Weight Painting
I'm using 2.8, and wondering if someone could point me in the right direction as to solving whatever causes this:

a bone must influence this part of your mesh, in Edit mode, select it, then go in the Properties panel > Data > Vertex Groups, and use the down arrow in the right of the vertex groups list and choose Remove From All Groups

Thanks for the assist, moonboots.  Worked perfectly.  Is there a place/location on Stackexchange to reflect this was a good/correct response?

A bone is influencing this part of your mesh. Solution: In Edit mode, select it, then go in the Properties panel > Data > Vertex Groups, and use the down arrow in the right of the vertex groups list and choose Remove From All Groups.


text:
How To Fade Still Image In VSE From B/W To Color?
I'm using vers 2.83, and would like to "fade" a still image, from black/white to full color in VSE.  I've made multiple attempts at inserting keyframes to the Color/Saturation in VSE, but it seems to only allow either B/W OR color, but cannot "fade" from one to the other.
Need help, please!

Try to duplicate the image, make BW one of them and add a cross fade between them.

FFeller - Worked, and accomplishes the needed effect!  Thanks.  Still wonder why animating the Color/Saturation doesn't work??  Oh well, thanks again for the suggestion!


text:
Cannot Keyframe - Vers.2.83?
In VSE, I cannot get any of the keyframe properties to work!
Example: In the VSE, using Saturation, at Frame 1, I slider to "0" and select "I", then move to frame 30, slider to "1" and select "I".  This only changes the "0" at Frame 1 to also be "1".
Example 2: In the VSE, I've added a text layer and want it to scroll.  At Frame 1, have the Y location set to "Bottom" with a parameter of -0.01, and then select "I" (turns yellow); I then move to frame 30 and set the Y location to 0.87, select "I" and it turns yellow. However, the "-0.01" at Frame 1 has now also changed to "0.87", and there is no animation!!@
Is this something you can no longer do in 2.83?

I do not think that they removed keyframing in 2.83 which would be ... let's just call it stupid. I rather think that it is a bug since this version is still in beta.

I had this problem and I redownloaded Blender 2.83. I opened my file, and all the keyframing works the way it's supposed to. Proabably a bug.

You guys were both correct.  I "re-downloaded" another copy, and it works as intended!  Thanks for the input!!


text:
How to extrude random individual faces
Is there a method to extrude faces randomly to get uneven height of the extruded mesh?

I am not sure, but maybe you could extrude it in the same height, put all those vertices in the vertex group and use displace texture on only those vertices in the group... But to randomly extrude? I don't think that there is a default way to do it, maybe with help of proportional editing, ..... hmm I just tried it, and no, my thought is not possible to achieve, so maybe there is some other way

It's a few steps but I found a way do do this.
I Select all the faces you want to extrude and extrude them with no movement. You can also instead use an inset with size 0 if you want your edges to separate the heights.
(if your faces are not aligned with a global or local axis, now would be the time to create a custom axis by clicking the little + in the transform orientations dropdown)
II Use the Mesh>Transform>Randomize Operator with an Amount of your choosing, Uniform set to 0 and Normal set to 1.
III Set your Pivot Point to Individual Origins and scale along the relevant Axis by 0 (the one normal to your faces)
It's done

A work around could be:
-Extrude the individual faces that you want CTRL + F > Extrude individual faces
-Then solo those faces Shift + H and deselect all after that.
-Go to Select > Select Random
-Move the faces G + (any axis) a bit and finally unhide everything Alt + H

What got me what I wanted was enabling the Add-on Mesh: Edit Mesh Tools from the preferences and using "Multi Extrude".

Good tip, thanks for the information, always glad someone can share more techniques!


text:
How does the instructor using extrude get this mesh shape
I'm watching a tutorial, and the instructor is using extrude method to get a notch in a sphere using the extrude method. He's going to fast to understand how he achieves this. Its the 02:58, where he says he's going to extrude that little bit.
https://www.youtube.com/watch?v=FV66bVT1Tog&t=180s

This is what I select on my sphere, and the result I get when extruding.

The video is too fast to see the different operations, but you can select the 4 faces, press E to extrude and Enter right away:

Then SZ0 to flatten:

Enable the Snap to Vertex and the Auto Merge option, move down and snap to the vertices:

Remove the 2 front faces:


text:
Embossed logo on glass surface using displace node looks incorrect
Im following a tutorial, how to apply a logo on glass surface using a displacement node.
Im running into two issues, the logo letters look too thick bevelled, and in the preview shader it looks correct, but when I switch to render shader, the logo looks shattered. I have attached the Blend file as well.

The texture is not packed into the blend file.

In cycles settings of your material change displacement to bump only. The vertices are displaced in real world coordinates and I guess you don't have a high enough density of vertices to make it work.

Here's the Texture: https://ibb.co/TRp5JqZ

@Gorgious, the tutorials settings as is: https://ibb.co/1QPGxFT

If you're going to follow a tutorial, you better do it to the letter :)

The differences between your model and the one in the tutorial: first of all, he sets the Strength in the Displacement node to 0.03, yours is at 0.2 - that is almost 7× larger. It also depends on the size of your object, if yours is smaller or larger than the one in the tutorial, you might need to adjust it further.
Then he has Subdivision Surface modifier on the object set to Level 3 to have more resolution in the mesh for finer details in the displacement (although 3 he has just for the viewport, for render it's only 2). You do not have any subdivision on the mesh.
The other thing which makes the render look odd apart from the too strong displacement, you can see the mirrored logo on the backside of the bottle through the glass, distorted by the IOR. I did not watch the complete tutorial so I don't know if he has excluded the backside from the UV map to not show the mirrored logo or if you just cannot see it that strong from the fact that he has a liquid object inside which is additionally obstructing the view through the bottle. Your scene is missing that liquid.

Yes I noticed even the slightest values make a big difference in the result. Thank you Gordon!

@blenderbreath You're welcome! If you want to know more about how displacement scale works, read my answer on this question: Get Height of Displacement Texture


text:
How to make scratches on shinny plastic material
I have made a transparent material (the four window rectangles), and lowered its blend mode. I import a PNG scratch texture I made, Images as planes, and I want to make those scratches seem they are on the windows, like the examples I have attached.
Also here's the file
and scratches link

https://ibb.co/sCKhBd6

You have opaque faces behind your glasses, you need to delete them if you want to see through. For the glass material, under Settings enable Screen Space Refraction and in the Render panel > Screen Space Reflections, enable Refraction. For your basic glass material plug your Image Texture into the Transmission of your Principled BSDF:

The scratch texture can be used as :

an input for the Bump node to create dents
a mapping to increase the roughness of the plastic
a mapping to reduce the transparency of the plastic

in order to try to achieve the effect you're looking for.
Similar topic here for node setup if needed :
Implement surface imperfection textures over base material textures

Both answers super helpful, Ill be posting another inquiry I have regarding materials.
Kind regards.


text:
How to make a mesh to bend animate from the middle axis without influencing the edges of the mesh
I'd like to modify the bend of this straight line from the middle, so it can make a rounded curve.
I have attached an example below.

You can use the Curve Modifier.
First align your object in edit mode with your X axis.
Add a NURBS Curve and in the Curve Data check the options:

Shape: Curve Deform > Stretch

Shape: Curve Deform > Bounds Clamp

Active Spline: Endpoint > U

In Edit Mode delete the 3rd point and move the 2nd point to the center/
Select your object and add Curve Modifier and choose your NURBS Curve as a Curve Object.
Now you can move the mid point of your curve and deform the mesh object.

If you want to move, rotate and scale the objects around you can Parent the Mesh object to the NURBS curve and transform the Parent object the way you like.

Thank you Rumen, excellent method!


text:
I can't scale the size of UV texture image
I was making this tile following a tutorial.
I was usually able to scale UV texture simply in the UV editor screen.
However this time, although I did the scaling as I wanted the tiles to appear bigger and larger, it looks exactly the same, very dense.
How can I fix it?
Thank you so much!

Looks like you have 2 UV sets. So to use one of them put UV map node in material, and select right one:

Then, connect UV map node to textures:

Thank you very much!!! I've been stuck here for days :S You saved me!

Please do not add a comment on your question or on an answer to say "Thank you". Comments are meant for requesting clarification, leaving constructive criticism, or adding relevant but minor additional information – not for socializing. If you want to say "thank you," vote on or accept that person's answer, or simply pay it forward by providing a great answer to someone else's question. https://blender.stackexchange.com/help/someone-answers


text:
How can I make multiple holes without breaking the mesh?
This object is a part of an electric heater that I'm making now :)
I had to make lots and lots of holes there. I found out boolean function can do the job but also found out it often ruins the vertex connections. I made a number of cylinders to make holes in the object but as expected it ended up making ugly meshes. Since boolean is considered not that easy for beginners to clean up edges and vertices, I also tried to look for any other way to make the holes such as knife but it either makes the ugly surface or it's difficult to duplicate the holes as many as it should be. Please help me with any solution. It doesn't matter if I should begin from the beginning or any other way. I appreciate so much!

Maybe model one section containing two holes and add an "Array Modifier" two extend x number of holes. Then "Apply" the Modifier and then extrude the ends.


text:
Texture stretched along the edge?
I was making a simple sofa. I checked 'remove doubles', 'adjusting scale' or 'recalculate'. As a beginner so far those were all I could check :S The problem is along the edge texture is stretched. I've been searching for how to fix it for days but couldn't get through. I also tried to add more loops in the model and start again and again. But I'm not sure what I'm missing. Thank you for your help!

Removing doubles modified your geometry, and hence the texture mapping. You need to re-unwrap your model, or manually fix that part of the UV layout

Thank you! I don't know why Smart UV unwrap doesn't solve the problem. I did like you said marking seams and then unwrapped and it worked :D


text:
How do I unwrap without stretching the texture?
I had this UV unwrapping problem several times already whenever I tried to make things. I think as a beginner I did not really understand how to unwrap properly yet. This time I made a chesterfield sofa.

But many folds and volumes of the sofa made me feel very difficult to unwrap, which may end up with marking hundreds seams manually.
So I used Smart UV project to see how it goes. But as always I could see stretched texture at every corner of the object.
How am I supposed to properly unwrap these kind of objects?

you have to make seams in the object. You can take a look at the link below. this guy explains the unwrapping really well. https://www.youtube.com/watch?v=scPSP_U858k&t=95s

Thank you for the comment. It did not really help solve the problem but helped me a lot improve and understand how UV generally works! Sometimes marking seams on my own simply fixes the issue but most times I see the problem not fixed :( I think with time learning blender and UV more, it will gradually be better :) For now, I just ended up applying subsurf modifiers and then decimate, which kinda fixes the problem for anyone wondering. I guess it's not a appropriate way though.


text:
Weird mesh mistake that can't be edited in edit mode?

Hiya new to this site so forgive me for getting things wrong! The photos should clearly show what is wrong but further information is that this happened after i did a running animation, i went back into object mode and the body mesh had been moved back along the y axis, when i moved it forward in edit mode it was fine, go back into object mode and it is like the picture.
Any help would be appreciated.
Thanks!

Check your weighting.

If you have modifiers, select show in edit mode to see influence of modifier in edit mode.


text:
How do I fix an indirect weight paint change error?

I've been having this error for the last few days now in different variations: Sometimes I move/rotate a bone and in an unrelated mesh an objects moves around it like shown in the picture.
This is based on a custom armature system I've created since the model(imported .obj file) has four legs and not much of a head.
Is there anyway to make the items stay in place when rotating it?

looks to me like your vertex weights are messed up.

And how would I go about fixing that? I'm still relatively new at Blender.


text:
Elliptical Movement of a Ball on a Narrow Edge
I'm working on an animation where a ping bong ball rolls around the edge of a paddle then goes up the handle. I've been trying to create this animation with manual keyframes, but it's been tricky getting the ball not to glitch into the paddle. I was wondering if there is a way to simulate this rolling motion along the edge of the paddle and then bake the simulation. When I created the ball as an active rigid body, and the paddle as a passive one, then the ball simply falls off the paddle.

You mean the ball should rotate on the yellow edge.

How about using a path and a Follow Path constraint. You could use the geometry of the paddle as a basis for the path so that it matches.

Use the Shrinkwrap constraint to automatically move your ball down to the surface of the moving paddle.
Note that the Shrinkwrap constrain includes a 'Distance' property and this can be used to control the distance from the paddle. This will be fine if the target mesh is concave and fairly rounded but can cause the ball to intersect with the mesh for convex or sharp edges.
To address this we can create an additional mesh based on the original one but 'expanded' so the surface is at a specific distance from the original surface.
Duplicate the mesh and add a Solidify modifier. Set the Depth to the radius of the ball - but negative so that the solidify is outside ratehr than inside the mesh. This will produce rather 'square' results so to round the edges add a Bebel modifier prior to solidify. Adjust the bevel on the generated mesh closely match the radius of the ball.
NOTE : Using Solidify in this way will result in geometry of the 'expanded' mesh that exactly coincides with the original mesh. This can cause problems with rendering so it's a good idea to move the faces slightly so as to offset them. To achieve this you can simply amend the Solidify 'offset' by a small amount - eg, -0.98 rather than the default of -1.00.

Optionally add a Subsurf modifier to round any remaining edges.
Finally, use the 'expanded' mesh as the target for the Shrinkwrap constraint on the ball. Parent the 'expanded' mesh to the original so that it moves in unison with it (select the 'expanded' mesh, hold Shift and select the orignal mesh, Ctrl+P, Set Parent to Object).

Now place the ball over the paddle and set up the Shrinkwrap constraint using Project mode in the -Z direction, setting the Target to the 'expanded' mesh. Moving the paddle under the ball should result in the ball following the surface of the paddle.

For added realism you can animate the location and/or rotation (if using Local axis space) of the ball in order to change the position on the paddle and move the paddle (in real life the paddle would need to be moved towards the ball to 'force' it uphill). If animating the rotation of the ball to make it appear to roll on the surface then set the Axis Space to World Space so that the rotation of the ball does not affect the location of the shrinkwrap projection.
Blend file included

If you want it to look naturally, physics might still be a good way. If just the ball wouldn't fall off.
Here's the trick. Instead of using the paddle, I am using a paddle shaped mesh that is much wider than the paddle itself. A simple mesh for the simulation, a beautiful one for rendering.

And instead of hoping the ball won't fall off, I am simply using two invisible boxes with zero friction. The ball has nowhere to go.


text:
Changing Spline Evaluation Rate in Animation Nodes
I would like the ball to accelerate in the begging and end of the spline evaluation and deaccelerate in the middle, while it is in the air. Is there a way to change the default location?

You can evaluate the time at some interpolation whose derivative represents the velocity of the animation. In your case, such interpolation would look like:

Also, don't keyframe your nodes, try to use the Time Info and Animate Float nodes instead. Finally, you don't need the Mesh Info node, the same output is in the Mesh Object Info node.


text:
How To Render PNG's With Transparent Background?
I have a series of PNG images that I've placed in the Video Sequencer.  I want to render them as an mp4 video, with a transparent background.
I've checked the Transparent box; selected FFmpeg video as the File Format; ticked the RGBA button; selected Quicktime as the Container; selected FFmpeg video codec #1; gone to Render Animation...and the resulting video cannot be opened with QuickTime Player ("file isn't compatible).
I then opened the same video in VLC, and the background is NOT TRANSPARENT.  I want to render the PNG images as an mp4, with a resulting transparent background.
I've tried many other Format/Container/Codec options as well, but cannot achieve a transparent background.  Hope this is concise enough that I might get some help? The file is here:waving_flag

Hello and welcome :). This thread should help: https://blender.stackexchange.com/q/2050/78972. Specifically this answer concerning Blender 2.8 https://blender.stackexchange.com/a/145475/78972

Please don't post the same question more than once, see What should I do if no one answers my question?

Thanks, Jachym.  I've looked at all of your links, and I'm prepared to say that I've tried every combination available, and none produce a transparent background.  There is either something wrong with my blend file (hyperlinked/attached to my initial inquiry above), or Blender 2.82 does not support transparency in video??

Duarte - I reposted because moderator brockmann told me to do so  He said my question was not clear and closed the original string.  I must say, I'm learning a lot about how and when to ask questions, and I only wish I could get resolution!

@jmarkt Hi. No, they asked you to add information to your question, not re-ask it. You should use the 'edit' link below your original question to add information.


text:
2.82 shape key problem?
I'm trying to create a lower thirds seamless vid, using waving cloth physics.  However, after saving/applying the .mdd file/adding Mesh Cache modifiers/tweaking Influence, etc, it will not animate between frames 125-240?
Do I have the settings wrong:


text:
Baking out proper normals and AO's from Blender
I am new to blender and this is my first post on the forums so please forgive me if these are noob questions (I looked through the previously asked questions already but haven't found a solution to my problem). I am working on a work flow that takes me from Blender through Quixel. Currently I am using pre-made models and unwrapping the UV's for them, I am separating the components of the model by material labeling them as such for easy ID in Quixel.
After that I am baking out (using Blender game render) my material map, my normal map and my AO map, but I am not getting the traditional looking "purple normal map) or the "white and shaded AO" like I understand them.
Normal Map

AO Map

as normals and ao are just textures.. did you try to bake with Cycles ?

You should turn OFF "Selected to Active," choose "Tangent" for your Normal space. , and set your "Distance" higher than zero. The Distance setting here is for baking to a cage (lo-poly version of your hi-poly model). There's a similar Distance setting in the AO section that should be greater than zero.
Cycles is currently (and quite admirably) trying to map your normals and AO map onto the lamp. "Selected to Active" is for baking normals from a hi-poly mesh onto a lo-poly mesh. It doesn't have anything to do with the lamp. In this case, you just want it off.
You also want to check the AO settings in the World panel. That's (mysteriously) where the AO distance and sampling settings are. Make sure those a reasonable, and you should get a better result.

Ok, thanks for replying. I tried your suggestions the way I understood them
Normal Map (there is no detail? am I doing something wrong?)

AO Map (This looks better, or more like I expect they should look anyway.)

for the normal map... this is just "normal"... you cannot bake the normal of a face to itself as this face is just align to itself (by construction). Generally you bake a higher poly object to a lower poly because the higher poly has several faces for 1 in the lower poly. But you can bake (normals) of a mesh to itself from a displacement (bump map).


text:
Is there a library in Blender 2.76?
I am a Scenic/Set Designer and was wondering if there was a library that I can save a drawing of a 2x4 to so I can insert/add it to a drawing as many times as I want without redrawing it?

How can I reuse existing materials, objects, etc from an existing .blend?

There are a few addons 1 2 3 and external solutions for this around, but the truth is in recent versions Blender's native builtin  tools have improved considerably in the area of asset management.
You have always been able to link (remotely references data) or append (import from other file) data from any other Blender file into the current one by going to File > Link or File > Append.
You can do this for most data like models, groups, materials, lighting and animation.
In recent versions asset management got considerably improved by making the file browser able to display Blender image thumbnails even for Blender internal data, and making Blender able to generate per data-block thumbnails.
Just go to File > Data Previews > Batch-Generate Previews and make sure your file browser is set to display thumbnails.

Thanks. This is what I was looking for. Now I figure out the best one for what I am doing.

In a way, Yes, you can Either use File>>Link OR File>>Append.
You have to manage your own library structure through the file system though, and when you do this, you want to make certain that you group your objects in a group with a descriptive name. The group maintains a lot of things (including keyframe and material information - So there are pros and cons to this, so you have to manage these assets understanding that things like this also come along for the ride).
That way after you select one of the Link/Append functions, you browse to your desired asset blend file, and then you get presented with the internals of that file. Now all you have to do is double-click the Group folder, and pick your named group.


text:
Data transfer modifier error
I have a sphere curved surface, and I have moved some faces which caused a shading issue. So I tried to do a data transfer, but its not working. And I'm also getting an error: Source and destination cannot be used in this case. What am I doing incorrect?

If your DT 'Mapping' is via  'Topology' , the source and destination must have corresponding geometric elements. Have you edited the geometry?

Hi Robin. Sorry but I cannot understand when you referred to the DT mapping.

Hi bb! I was just using  DT as an abbreviation for Data Transfer.  :) See answer.

Your Data Transfer modifier is attempting to use 'Topology' as the means of mapping data from one object to another. Your objects do not have the same topology, so this wont work; Blender can't find a vertex on the source object corresponding to every vertex on the target object.
Instead, you could change the vertex-group which the modifier affects as follows:

(These are the vertices the modifier will not affect)
Then change the mapping of the transfer from 'Topology' to something more appropriate...

Here, because the source is spherical, 'Projected Face Interpolated' seems to work well.
Note the double-arrow to the right of the Vertex Group field is checked, to select the inverse of the 'TG' group.


text:
UV Mapping Black PNG text on Object
I have 3 PNG images, one with Red Text,Green text and the other with Black text. I UV unwrap my object, and then apply the images on the mesh. The Red and Green text appears on the mesh, but when I switch to apply the PNG with Black text, it does not appear on my object. Im sure it's there but I cannot see it.

If this is black text on transparent background and if you don't use the alpha output to overlay on another color, you will only see black on black, but maybe pack your images and share your file?

Here's the Packed file:

You haven't shared the black text image, but the red text image that you share has a transparent background, I suppose it is the same for the black text. If you plug the black text in a Principled BSDF it will appear entirely black because the alpha channel will be interpreted as black. But if you plug the Alpha output into the Alpha input of the Principled BSDF you'll get the transparency (note that in Eevee you'll need to set the Blend Mode to Alpha Blend):

If you want a colored background, plug the image into a Color > Mix Color and use the Alpha as factor:

The second screen shot with the Mix, is what worked. Keeping the mesh any colour, and the text Black. Thanks!


text:
How to make a circular pattern dent on a mesh
I'm trying to make circular dent pattern on a mesh. I'm using the sculpt mode making each individual circular dent, and it's extremely time consuming. What's the correct method to achieve this? I also tried creating a pattern Alpha brush, but It's not working correctly for me.
Ideally I'd like to import my Alpha brush, and with a click those circle shapes would appear on the mesh.

You could sculpt it, but if the object shape allows it, it would be even simpler to use a Displace modifier to project the pattern, subdivide your object enough, use a Smooth modifier if necessary (but the holes will loose their sharpness):

Also you could use a higher resolution image: Open your image in Krita, convert to 16 or 32-bit float, scale it up, blur, save, and use this new image:

How did you get the circle holes so smooth? I subdivided my mesh 5 times, and the holes still have ugly edges.
https://ibb.co/r4ybQ03
https://ibb.co/vz4x3GD

The more it will be subdivided before the Displace modifier the smoother it will be, also your image is rather low-resolution, you should open it in Photoshop or Krita, scale up its size, blur a bit, and use this new image

Thanks for the further explanation, I will be experimenting more with this new method.
https://ibb.co/vv5vj4k


text:
Importing camera to position in negative value coordination question
I have 2 different blender files, with the same object but different colours, one is light Green, and the other Yellow.
I have set up my camera angle in the light Green file, and then import the camera to my 2nd blender file. The camera is imported correctly, but I want to reverse the Location and Rotation values to match the angle of my light Green angle. ( Like the example I have attached ).
As shown in the example I have reversed the values in the rotation and location panel, and the camera is not situated as I was expecting.

i am not sure that this is what you want, but if you look the camera from above, you can easier see how to change the camera properties, to get what you want:


text:
How to get better smooth subdivision corners
I'm trying to round off the corner section on the mesh, but the outer line is more sharper than
the inside one. I tried moving the outer vertices to get better result. but its pinching the mesh and looks incorrect.

https://cgcookie.com/articles/guide-to-clean-topology
you can also try moving your pole (5-edge) to the flatter top surface

Maybe use this kind of topology? You'll be able to precisely control the corner roundness:


text:
How to correctly export PNG sequence with maximum quality
I have exported a PNG sequence of 100 frames from blender, I chose 16bit and 100% compressed to get high quality. When I import the PNG sequence into After effects, the PNG sequence seems to have lost its sharpness and is just a little but blurred. Is there another preferred method to export so the images don't deteriorate their quality?

You might want to check that the output png pixel resolution is exactly the pixel resolution of your after-effect project. Because any post scaling of a raster picture will introduce some blur loss of detail. See: https://www.quora.com/Why-is-it-becoming-blur-when-I-import-a-PNG-image-into-Adobe-After-Effects

Do not set it to 100% compressed, set it to 0.
Compression reduces picture quality in order to reduce file size.
Uncompressed is better.
To be honest,the design here is not as intuitive as it is in other graphics programs.

PNG is lossless image format, so I would expect this kind of compression setting only to increase compression time. What extra does Blender do that would actually affect image quality?

Wow, I had the impression the higher the compression the sharper the image would be, and the lower the quality would deteriorate. But thanks for the information!

@blenderbreath How did you get this impression? Compression in signal processing - no matter if it's audio or video or other kind of data - is always a process of encoding some information by using less bits than the original information. This way it reduces for example the dynamic range of audio signals or image color spaces, resulting in a possible loss of quality if the compression is too strong to retrieve all original information back again.


text:
Constrain to limit location
I'm trying to limit the location of the cubes, but regardless if I select local space or world space and try to set the limits, the cube (or any cube) will jump to the middle of the world. I need to limit the locations of each cube where they are situated.
Ps: I have set the origins to centre of each cube and also have applied all transforms in case that helped, but it did not.

Hello ! I don't really understand what you're trying to achieve, you set the minimal location to (0, 0, 0) and maximal location to (0, 0, 0) so it's only fair that the objects jump to the world origin, isn't it ? Or maybe you want to apply the transforms first so their origin is at world origin ? Or parent them to an empty at world origin ? Please add more details :)

Hi there. Even if I set the limit to 1, the cube or any cube will jump to the middle of the world: https://ibb.co/DKWxmN9
I was following this tutorial here https://www.youtube.com/watch?v=zCQYGJjkrMg, 2:20
and he has set his to local space, and the object moves from its location back or forth, but I cannot do it.

Well yes, you are setting the max value to 1 along the Z axis, but the other ones are still constrained to 0, so you should be able to move your cube one unit along the Z axis but it will stay at x = 0 and y = 0

If you have a look at this tutorial, you'll see the cubes move along its Z axis on their own local space:, this is what I'm trying to achieve.
https://blender.stackexchange.com/questions/253991/how-to-make-an-rgb-slider-to-affect-the-colour-of-one-object?noredirect=1#comment432895_253991

I assume it's because the cube's transforms are applied. Try CTRL + A > Location

here are the constraints and how i did it:

you always need to change the y value to its original position, if you are using world space. The local space is only considered with bones or if parenting is used - if i understood that right.

In the video that you have shown, bones are used, not objects. So you need to know that bones has initial positions defined in edit mode.
Local space is used if you have object parented to other object. In this example, cube is parented to empty(P) and parent inverse is cleared (Alt + P):


text:
How to get better topology on a Ellipse corner
I have made a circle on a flat area then inset it. And then to imitate a speedometre I have extruded the mesh selection. As seen on the left bottom edge of the topology the ends are a bit sharp, and on the right more circular. I used the knife tool, rather than adding another loop, but made Ngons and some triangles, I'm trying to clean the topology up, can anyone post how the topology could be better?
PS: adding a loop towards the down topology can fix this issue, but Ill be adding lots of the semicircle extruded groves on a larger surface, and could possible ruin other parts of the mesh, so this is why I'd like to know how to get a better topology just in that section.

so do you want the ends to be sharp or circular?

I need the ends to be circular, but without the extra loop passing as @Vclidu suggested.

Circular end Is native result od subsurf ... extra loop you need for square end.

Here is a proposition if you want the end to be circular:

Begin with a plane, subdivide (3 cuts), extrude inwards, then LoopTools > Circle:

Extrude inwards again, fill the center, bevel the circle (3 segments):

Rearrange the topology, then extrude down the circle, bevel the edges, etc:

It is good to have one extra loop following a circle embos ...
Here I deleted all front vertices except two inne loops.
Second inner loop make circled with To Sphere (Shift+Alt+S+1)
Extrude scale several times for desired result ...

To make ends more squary add edge loop Ctrl+R and slide ...

To make top edges sharp – select them plus end face and Crease Shift+E to 1 ...


text:
How to get consecutive colour using gradient node on joined object
I have joined the spheres as one object, and added a gradient texture and colour ramp with 3 colour transitions ( blue, Orange, Red). I'm playing around with the Rotation in the mapping node, but its making a slight angle, and also not treating it as one object, rather on every sphere, if I don't play around with the rotations, each individual sphere has three colours as the colour gradient.
On the right had side I have made squares, not joined and applying each colour separately. that's the effect I want to achieve but using the colorramp node.

I would consider using an Empty object as the coordinates input for this material. It will give you way more control over the look you want, just by scaling and rotating the empty in the viewport. Much more intuitive.

Just WOW, never seen this on any tutorial before, worked amazing, thanks a lot!


text:
How can I make this shape with Displacement modifier
In my previous post, I learnt how to use the displacement modifier, adding an Alpha PNG shape. @moonboots, explained to me how to use this method. The circle pattern shape turned out well on a flat square mesh. But this time I'm trying to make it on a circular mesh.
I used a Boolean object to make the circle shape, by cutting into a plane mesh which was heavily subdivided. And the border of the circle shape is jagged.
What is another method to get it correctly modelled?

In the previous question you show an image of some kind of bowl. Do you mean a circle shape or some kind of curved or domed shape?

Please use a title that matches the content of the post. It should read like a question, be descriptive but succinct, unique and identifying, summarizing the problem so that anyone searching for similar issues is likely to find this. Remove anything superfluous, avoid using words like "this", "help with", "issue" or "question about", instead describe what "it" is. Remember, your title is the first thing visitors see, answers you get depend heavily on it. See What is the problem of asking “How do I do this?"

You can use the Knife Project tool:
Create a plane, subdivide it, create a circle object that you put over the plane:

Switch to top view, select the plane, switch to Edit mode, press CtrlLMB to select the circle, then Mesh > Knife Project:

Invert the selection with Ctrli and delete the edges:

Here is the result, you can use the Displace modifier on it:


text:
Install "AnimAll" Addon with python
I'm running a python script outside of Blender GUI using the bpy module.
For my code I need the "animAll" add-on from Blender, but I get an error when I try to enable it.
It seems that blender tries to look for the gui to add the panel...
Is there a way to disable 3D Viewport or is it not possible to run this add-on without GUI?
the link to the repro:
https://github.com/blender/blender-addons/blob/master/animation_animall.py
Code:
import addon_utils
addon_utils.enable("animation_animall")

Error:
[animation_animall]
AnimAll: Updating Panel locations has failed

Error:

'bpy_prop_collection[key]: key "animation_animall" not found'
Exception in module unregister(): '/home/blender/blender-git/lib/linux_centos7_x86_64/python/lib/python3.9/site-packages/3.0/scripts/addons/animation_animall.py'
Traceback (most recent call last):
File "/home/blender/blender-git/lib/linux_centos7_x86_64/python/lib/python3.9/site-packages/3.0/scripts/modules/addon_utils.py", line 439, in disable
mod.unregister()
File "/home/blender/blender-git/lib/linux_centos7_x86_64/python/lib/python3.9/site-packages/3.0/scripts/addons/animation_animall.py", line 581, in unregister
bpy.utils.unregister_class(VIEW3D_PT_animall)
RuntimeError: unregister_class(...):, missing bl_rna attribute from 'RNAMeta' instance (may not be registered)
Error: Not freed memory blocks: 26368, total unfreed memory 8.083801 MB

Nor sure but I guess you need to import the module that contains the 'RNAMeta' instance

@DGRL  hmm.. do you know what this module actually does or where i can find it? Maybe blender coudn't already register the VIEW3D_PT_animall class and therfore this class can't be unregisterd?

How about "'bpy_prop_collection[key]: key "animation_animall" not found'"
What key is this?


text:
Resize 3D Objects in python without operator function
I want to move objects with the resize function, while enabling Transform affects only to location. In 3D-Editor it is easy to give them the direction, so that the objects move away from center.
Now I want to implement this in python and resize it via script. I could only find the operator function "bpy.ops.resize()" which I don't want to use.
If you have other suggestions creating this movement would be good as well.

Simple vector maths.
The global location of any object is gl = ob.matrix_world.translation
The global location of the cursor is cl = scene.cursor.location
The vector that describes the distance and direction from object to cursor is the difference d = gl - cl
To move to a scaled location
ob.matrix_world.translation = cl + scale_factor * d

or similarly
import bpy

context = bpy.context
scene = context.scene
cursor_loc = scene.cursor.location

scale_factor = 1.1

for o in scene.objects:
    d = o.matrix_world.translation - cursor_loc
    o.matrix_world.translation += (scale_factor - 1) * d


text:
How can I create hollow pipework?
I'm trying to create a length of pipe with includes straight and curved lengths.
I'm wanting to create a mesh so I can import it into unity, add a mesh collider and run fluid through it.
Does anyone know the best way to approach this?

For modelling pipes, bezier curves are recommended: see the "bevel object" of curves, converting curves to meshes, and the curve modifier. Using it as a collision object for real time fluid simulations in Unity sounds like a separate problem for the Unity forums.

As well as curve objects, enable the Add Mesh Extra Objects addon. It adds Mechanical->Pipe Joints to the add mesh object menu which has several variations of joints.

To model it I would add a cylinder, tab for edit mode, remove the caps of the cylinder.
Then in add and apply a solidify modifier.
You possibly should also create a simplified pipe with smaller amount of vertices to work as a collision mesh for a  mesh collider, because higher poly pipe might require quite a bit of collision calculations.


text:
Rigging: the left toe's mesh moves along with the right foot
When I move the right bone on my character the left toe's mesh moves along with the right foot.

Enter weight painting mode, select your brush to subtract and remove the weights from unnecessary parts.


text:
Cycles rendering weird bubble shadows
I have no idea what is causing this, but for some reason when I render my scene in Cycles it gives me these shadow spots. What's more weird is that it's only when I'm rendering interiors and it only shows up in the final render, the rendered viewport is perfectly fine.


text:
Unpredictable copy bone rotation
I'm trying to rig a 3 bone-setup that allows me to twist the mesh's forearm like you would in real life. I've got a copy bone rotation on the bone (haven't done the rest) but rotating it just freaks out the chain.
Here's how it looks like:

And that's only on 0.359 influence limited on the Y axis (Local space -> Local space (I've tried different ones; they ended up with either the same results or worse)). Also, why does it take more than one Alt-R's to reset the bone rotation?

Probably a stupid question and I'm just missing something really obvious. In any case, any help is appreciated. Thank you!

You are encountering a circular dependancy: A child bone influences the parent bone, which influences the child bone.

Here's a pseudo explanation of whats going on. Assume, you're moving the mouse in an 45° arc as illustrated on the left. boneB (the child bone) rotates. But since it influences the parent bone slightly, the parent bone will rotate as well. But now the relation of the starting and end position of the mouse towards the shifted origin of the child bone are different and produce another angle. Since the boneB is slightly lower on the right illustration, the angle is slightly bigger, now the parent bone has to be recalculated. And then the child bone, etc. All this happening, while the mouse is being moved obviously produces this weird behaviour.

Y Rotation
To solve this problem for the y rotation, simply parent boneB to the parent of boneA. If you wish you can lock the translation axes of boneB.

All rotations
To create a similiar behaviour for all rotation do the following. (Remember, child bones aren't allowed to influence their parents, if this changing the child bone's properties.)
Create an additional bone, which will be the animated one and parent it to the firstparent (root). Add a copy rotation from the handle to boneB, and a copy rotation constraint to boneA with your desired influence.

The result works, but the handle isn't location at boneB, the segment, which the animator wants to manipulate. This is not intuitive. (At the same time, this is why everything works, the relation of the handle bone to the mouse doesn't change during the rotation operation.)
To enhance the setup, position the handle at a better location. Hide the other bones, or move them to another layer, since the animator doesn't need to touch them. Then choose a custom shape for the handle bone, and choose the boneB in the At field. The custom object will now always be displayed at the position of boneB. The origin of rotation (where the dashed line to the mouse is drawn from), remains at the handle bone's position though.


text:
how to print the centroid/origin of an object?
I am trying to re-center an object that I have imported into blender.
I have set the object origin to the Center of Mass of the object, now I want to translate the object so its' center of mass is exactly at the global (0,0,0) location.
How can I print the x,y,z coordinates of the object's center of mass? or is there a way to just directly translate the object center of mass to a given x,y,z point?
Thanks!!

Are you trying to place object in center of grid?
import bpy

bpy.ops.object.location_clear(clear_delta=False)

or something like this.
import bpy

ACT_OBJ  = bpy.context.active_object

ACT_OBJ.location = (0.0, 0.0, 0.0)

I think this is what I'm looking for..this translates the object location (origin) to the center of the grid (xyz= 0,0,0), correct? Just trying to understand the code

Yeah, it sends it back to xyz= 0,0,0. There’s prolly other ways to do it though.

excellent!! although I can achieve the same result with both, the second suggestion is what I was looking for..thanks

obj.matrix_world.translation = (0, 0, 0)  will move obj to global origin regardless of parenting.

Set matrix_world translation

I want to translate the object so its center of mass is exactly at
  the global (0,0,0) location.

Following up on a comment above. To ensure object is at global origin set the translation of its matrix world to zero vectpr.
Setting an object's location to zero only ensures it is at global origin if it either has no parent, or its parent is also at the global origin.
bpy.ops.object.origin_set(type='ORIGIN_CENTER_OF_VOLUME')
# set location to global origin.
context.object.matrix_world.translation = (0, 0, 0)

In the end used the following code:
bpy.ops.object.origin_set(type='ORIGIN_CENTER_OF_VOLUME') #set origin to volume centroid
bpy.context.object.location #check origin location if needed for any purpose
bpy.ops.object.location_clear(clear_delta=False) #translate origin to global (0,0,0)
bpy.context.object.location #double check it worked


text:
how to displace or scale mesh based on point attribute
I have results from a scientific simulation of vessels moving around. I also have a trail behind each vessel.
Right now the trail has a tube modifier so it's a 3D mesh, but I can also just have this as points/edges with no faces.

This trail also has a float attribute stored at each point (denoted by the color in the image)
Im trying to find a way to displace or scale the mesh to turn it into a cone/wedge shape, that looks more like a real wake behind the ship. Something like this:

My first thought was simply to displace/scale the faces in their normal direction by this float attribute. Since it varies over the trail, it should end up giving me some kind of conical shape.
But I'm having a hard time achieving this, been messing around with different shader materials and tried in geometry nodes as well, but struggling.
I just want to make this trail look like a wake, or clouds, or something semi-realistic.
Please note the ship movements are not keyframed, so using a dynamic paint approach wont work. I need to find a way to make it look like a wake using it's shape and point attribute.
The closest I was able to get was using geometry nodes, though I can't figure out how to rotate the result about it's own axis to look properly, or to smooth out the "steps":

any ideas on how you would do this properly?

(Using Blender 3.6.8)
One approach is to move vertices on both side of the wake by a distance function of the point attribute. Without much details about the original mesh geometry, it is assumed in what follows that it is in the (X,Y) plane and "strait" along one local axis (X or Y). So the displacement is applied perpendicularly to this "main" axis.

The top views show the original strait strip (in black), and a copy with the GeometryNodes modifier activated (in orange).
1. For the demo, the Y coordinate is used instead of the original "Time". The Multiply math node is to adjust the wake width, while the Power math node is to create some curvature of the wake rims.
2. The direction perpendicular to the strip "main" axis is computed from the shortest edge of its Bounding Box.
3. The Sign of the projection of a vertex position along this direction (computed with a Dot Product math node) is used to move in opposite directions points on each side of the wake central line.
4. The Offset of each point in the perpendicular direction is proportional to the "Time" stored attribute.
Resources:

Note: if the original wakes were curves, the local tangent vector could have been used to align a wake profile perpendicularly to the wake central line, and the radius property could have been used to scale it. The meshed wake would have been generated then by a Curve to Mesh node. This approach can be developed  as an other answer if required.

not forcing you, but it would be amazing if you were able to add both approaches :) appreciate the suggestion, I'll make an attempt at it

(Using Blender 3.6.8)
One approach is to define the wake central line with a curve, and the wake profile with an other curve that is "extruded" following the central line. The mesh of the wake is made with a Curve to Mesh node, connecting the wake profile at the Profile Curve socket. The width of the wake is controlled using a Set Curve Radius node.

1. The black outline in the top left view is the wake profile (NB: It seems upside-down because of the central line curve tilt).
2. For the demo, the Length along the central curve is used instead of the original "Time". The Multiply math node is to adjust the wake width, while the Power math node is to create some curvature of the wake rims. The Add math node is setting the wake minimal width.
3. The "Time" attribute is used to set the radius, thus the scaling of the wake profile curve, which is recovered through an Object Info node.
4. It is to notice that attributes are transferred from the curve to the mesh in the Point domain by the Curve to Mesh node.

1. Because the scaling by the radius is uniform, the wake profile aspect ratio is preserved all along the wake.
2. So to reduce the wake height, its Z coordinate is modified by the bottom nodes group. As it is proportional to the "Time" attribute, dividing it by a power larger than 1 of this attribute makes it decreasing as the length increases. The Multiply math node is to adjust the resulting wake height.
Resources:

thank you very much for the answers, I ended up accepting the other one only because it was closer to my end application and worked more easily for me


text:
How to use different offset for each duplicate created with array modifier?
I would like to generate several copies of an object, but place them at specific locations. One way I thought I could do that was to use the array modifier, but have it use different relative offset for each iteration (eg. the first clone is created with relative offset {1, 0, 0}, second with offset {0, 1, 0} and third again with offset {1, 0, 0} to create sort of S shape).
I tried to use the array modifier multiple times on one object with different offsets, but it always duplicated all the objects previously created by previous array modifiers instead of creating just one new copy.
I understood that using array modifier is probably not the way to go. How could I accomplish what I want?

You can use duplication (instancing) on the faces of a different mesh

Create a mesh, with one face per each intended duplication location

Select the object to duplicate, then Shift + Select the newly created mesh. Do CtrlP, then Parent to Object.

(optional) make the origins of the two meshes coincide

On the "S" shaped mesh, under Duplication in the Object panel, choose Faces

(btw, the "S" mesh won't be rendered: only your object's instances)

Although I don't precisely understand why it works, it does. Thanks for answer!

Duplication > Faces (once called "duplifaces", soon to be called "instancing on faces") means just that: on each of the (Parent) object faces, create an instance of the Child object. You can also duplicate on vertices, but I personally think that faces give you more control, as you can rotate them in the 3D space and make it affect the instances.

I had no idea this was even a feature. +1!

I think that one way to accomplish what you need is to create a Bezier curve wich have te route that you want, then add a array modifier to the mesh that you wish to duplicate but set the Fit Type to "Fit curve", finally you can add a Curve modifier and in the Object, select the curve. So the first modifier will match the curve's length and the second will match the route that you need.

That doesn't do what I wanted. I want the original mesh undisturbed, but just place copies of it at arbitrary places. So I want to have the same mesh at some specific locations I set.

Sorry man, the other thing that comes to mi mind is that you use Alt + D to duplicate and link objects so when you modify one it affect all of them. I hope this actually helps.


text:
Is there a better way to make addon working on both blender 2.80 and 2.79?
I know this works:
import bpy

class Test(bpy.types.PropertyGroup):
    def unedit(self, context):
        print(self.type)
    if bpy.app.version >= (2, 80, 0):
        type: bpy.props.StringProperty(default='xxxxxxxxxxxxxxxxxx')
        name: bpy.props.StringProperty(update=unedit)
    else:
        type= bpy.props.StringProperty(default='xxxxxxxxxxxxxxxxxx')
        name= bpy.props.StringProperty(update=unedit)

bpy.utils.register_class(Test)

but it is coping and paste solution (bed for many properties). Is there a better way?

Two separate addons
The code in question and your answer has versioning for one part of the changes from 2.79 to 2.80, ie annotations in property groups.
I would suggest writing  two addons, one that works in 2.79 and one that works in 2.80. (As opposed to having versioning code ad hoc in each py file.)
Distribute as an addon for that version. If using github a branch is often used.
If wish to distribute as a single addon that works in both, suggest putting each in a subfolder of the root folder of the addon, then in the addons __init__.py check once for version and import modules from that version folder.
See this post on fake modules for some cool trickery https://stackoverflow.com/a/27476659/5317130

I think this approach is best since many other changes exist in 2.8 that have to be fixed for a 2.79 script to work there.

That also makes it easier to discontinue/freeze the development 2.79 addon, since the Blender 2.8x code is probably going to differ more and more due to further development.

The problem I have with making a code that works in both versions is it gets more complicated and more evaluation needs to happen at runtime. There is extra code and 'baggage' than in either version would be.
Normally in c/c++ you would implement pre-processor directives into the code to organize it and generate an executable of only what you need.
In python this is not so easy. You can use __debug__ which is pre-processed by the compiler and evaluated based on -O command line argument and any if False: part of code will be skipped by the optimizer, but you have to run the code with arguments which is not convenient for Blender use.
The solution I found is to use pypreprocessor. It lets you do:
from pypreprocessor import pypreprocessor
pypreprocessor.parse()

#define 2_80

#ifdef 2_80
print('2_80 code')
#else
print('2_79 code')
#endif

Normally when you call .parse() it generates a temporary copy with pypreprocessor commented (not to run recursively) and also any unused code commented out and this post-processed code is executed on-the-fly.
The best thing about it is instead of executing the post-processed code you can output to a file with a user-defined filename and even remove all the preprocessor directives and preprocessor specific code:
pypreprocessor.defines.append('define')
pypreprocessor.run = False
pypreprocessor.save = True
pypreprocessor.output = 'addon_2_80.py'
pypreprocessor.removeMeta = True

This way you get clean files for 2.80 or 2.79 versions, that no one knows were generated from the same source.

You can just use the assignment and accept that it'll show warnings on 2.80. It'll still work, and you can make the step to 2.80+ when 2.80 or 2.81 is released.

I am answering my own question, maybe someone finds it useful.
import bpy

class Test_2_80(bpy.types.PropertyGroup):
    def unedit(self, context):
        print(self.type)
    type: bpy.props.StringProperty(default='xxxxxxxxxxxxxxxxxx')
    name: bpy.props.StringProperty(update=unedit)

class Test(Test_2_80):
    if bpy.app.version < (2, 80, 0):
        for val, fun in Test_2_80.__annotations__.items():
            exec('{} = fun'.format(val))
        val, fun = None, None
    else:
        pass

bpy.utils.register_class(Test)

bpy.types.Scene.test = bpy.props.PointerProperty(type=Test)
bpy.context.scene.test.name = 'g'

Any ideas for better solutions?

Note: I have a lot of experience with Python, but no experience with Blender (I found the source code to look through).
Warning: I also have not tested either.
Another option is to create a decorator:
import bpy

def copy_annotations_to_dict_if_old_blender(x):
    if bpy.app.version < (2, 80):
        for name, value in x.__annotations__.items():  # x.__dict__.update doesn't work
            setattr(x, name, value)

    return x

@copy_annotations_to_dict_if_old_blender
class Test(bpy.types.PropertyGroup):
    def unedit(self, context):
        print(self.type)
    type: bpy.props.StringProperty(default='xxxxxxxxxxxxxxxxxx')
    name: bpy.props.StringProperty(update=unedit)

Previous code that used a metaclass instead:
import bpy

if bpy.app.version >= (2, 80):
    MyPropertyGroupMeta = bpy.RNAMetaPropGroup
else:
    class MyPropertyGroup(bpy.types.PropertyGroup):
        def __new__(cls, name, bases, namespace, **kwargs):
            result = super().__new__(cls, name, bases, namespace, **kwargs)
            result.__dict__.update(result.__annotations__)
            return result

class MyPropertyGroup(bpy.types.StructRNA, metaclass=MyPropertyGroupMeta):
    __slots__ = ()

class Test(MyPropertyGroup):
    def unedit(self, context):
        print(self.type)

    type: bpy.props.StringProperty(default='xxxxxxxxxxxxxxxxxx')
    name: bpy.props.StringProperty(update=unedit)

 (the decorator code is more readable and more likely to work)

Wery pythonic but:
AttributeError: 'mappingproxy' object has no attribute 'update'

@PiotrKowalczyk Does this work? The one problem is that it might be immutable. There are workarounds, but they could cause issues if caching or something similar is used.

@PiotrKowalczyk Great! Glad I could help!

This doesn't work, because Blender 2.79 is using Python 3.5, which doesn't support the syntax for annotations on class members.


text:
Can I set region width with python?
I can get TOLLS width with code:
for region in bpy.context.area.regions:
    if region.type == "TOOLS":
        print(region.width)
        break

I can't set it in the same way (read-only error).
Is it possible to set it by python script?

Not easy to find an answer! Same questions here.


text:
update function in build in blender property
When I create a new property, I can add an update function to execute every time it will be changed:
bpy.types.Scene.testprop = bpy.props.FloatProperty(update=update_func)

What if I want to call update_func on the update of build in blender property (for example mesh name). I found a similar question here. But it does not work when I change the property from UI.
Thanks

Hi. What do you mean by 'build' in this context?

bpy.context.scene.render.resolution_x  is property build in blender

Is that Impossible?


text:
How to alter operator property while it's invoking
In this script, I am taking two names, and printing them. The first name should be chosen from the menu or written manually (a new one).
import bpy

class NAME_MT_menu(bpy.types.Menu):
    bl_label = "List of existing names to choose"

    def draw(self, context):
        layout = self.layout
        for name in ('Peter', 'Patrick', 'John', 'Colom', 'Jerry'):
            layout.operator(NAME_OT_names_from_menu.bl_idname, text=name).name = name

class NAME_OT_names_from_menu(bpy.types.Operator):
    bl_idname = "name.names_from_menu"
    bl_label = "Add existing name to menu"
    name = bpy.props.StringProperty()

    def execute(self, context):
        # how to alter operator property while it's invoking
        return {"FINISHED"}

class NAME_OT_get(bpy.types.Operator):
    bl_idname = "name.get"
    bl_label = "Get names"
    first_name = bpy.props.StringProperty()
    second_name = bpy.props.StringProperty()

    def invoke(self, context, event):
        return context.window_manager.invoke_props_dialog(self)

    def execute(self, context):

        print("Hi {} {}".format(self.first_name, self.second_name))

        return {"FINISHED"}
        # return {"CANCELLED"}

    def draw(self, context):
        layout = self.layout
        row = layout.row()
        row.prop(self, 'first_name', text='')
        row.menu('NAME_MT_menu', text='')
        row = layout.row()
        row.prop(self, 'second_name', text='')

class NAME_PT_panel(bpy.types.Panel):
    bl_space_type = 'VIEW_3D'
    bl_region_type = 'TOOLS'
    bl_label = 'My Panel'
    bl_context = 'objectmode'
    bl_category = 'Test'

    # drawing menu
    def draw(self, context):
        self.layout.operator(NAME_OT_get.bl_idname)

classes = (NAME_PT_panel, NAME_OT_get, NAME_OT_names_from_menu, NAME_MT_menu)

def register():
    for cls in classes:
        bpy.utils.register_class(cls)

def unregister():
    for cls in reversed(classes):
        bpy.utils.unregister_class(cls)

if __name__ == "__main__":
    register()

I know it can work if I will register first_name like this :
bpy.types.Scene.first_name = bpy.props.StringProperty()

and use context.scene.first_name instead of self.first_name, but it is like creating global variables, and I want to avoid this. Another issue with this solution is: when the name is chosen, the text field will not update until the user will hoover the mouse over it.

Since no one helped I changed approach.
Instead of using a menu, I used enum property, with the update function.
import bpy

def update_names():
    def func(self, context):
        self.first_name = self.names
    return func

def get_items():
    def func(self, context):
        items = [(name, name, "") for name in sorted(('Peter', 'Patrick', 'John', 'Colom', 'Jerry'))]
        return items
    return func

class NAME_OT_get(bpy.types.Operator):
    bl_idname = "name.get"
    bl_label = "Get names"
    first_name = bpy.props.StringProperty()
    second_name = bpy.props.StringProperty()
    names = bpy.props.EnumProperty(items=get_items(), update=update_names())

    def check(self, context):
        return True

    def invoke(self, context, event):
        return context.window_manager.invoke_props_dialog(self)

    def execute(self, context):

        print("Hi {} {}".format(self.first_name, self.second_name))

        return {"FINISHED"}
        # return {"CANCELLED"}

    def draw(self, context):
        layout = self.layout
        row = layout.row()
        row.prop(self, 'first_name', text='')
        row.prop(self, 'names',text='')
        row = layout.row()
        row.prop(self, 'second_name', text='')

class NAME_PT_panel(bpy.types.Panel):
    bl_space_type = 'VIEW_3D'
    bl_region_type = 'TOOLS'
    bl_label = 'My Panel'
    bl_context = 'objectmode'
    bl_category = 'Test'

    # drawing menu
    def draw(self, context):
        self.layout.operator(NAME_OT_get.bl_idname)

classes = (NAME_PT_panel, NAME_OT_get)

def register():
    for cls in classes:
        bpy.utils.register_class(cls)

def unregister():
    for cls in reversed(classes):
        bpy.utils.unregister_class(cls)

if __name__ == "__main__":
    register()

check() function is solving my problem with refreshing of first_name prop.
So I did not want to have global property, I have a global update() function instead. At least it is not registered as blender property. Is someone know how to make update function as a method in NAME_OT_get class?


text:
I can't color some parts of my model
I am sorry if someone already asked for this question, I wasn't able to find it anywhere..I googled lots of things and didn't satisfied my needs so I hope you can help me out :) :P.
When I try to hand texture my model, some parts are being unable to be textured.
I hope you understand what I mean, here is a screenshot so I can explain you.

The blue line is showing where I can't texture it as you can see it's white.
I had to "Fill" to get the white color even though some places got still black as on the picture you can see black texture on the fore-end/near barrel.

It looks like those are boundary areas in your UV unwrap, and it looks like you are trying to paint or texture areas that are outside the image or too stretched out and causing severe distortions. Have you tried fixing your UV map? Could you post a screenshot of your unwrapped mesh?

I think you need to increase the bleed setting.
When the colour in your image stops right on the edge of your uv's, you can get errors due to floating point accuracy that means you may sometimes get the colour from either side of the line. This happens more when the edges are at an angle on the image texture. By allowing your painting to bleed over the edge a few pixels you ensure that drawing from the image will always get the colour you want. You also need to be sure that you have enough of a gap between uv islands or that neighbouring islands will always use the same colour.
While a little misleading, you can find the bleed setting in the options tab under Project Paint while you are texture painting.

Sometimes it's hard to paint some areas in the 3D Window. You may try going to UV Editor, change the mode from View to Paint and paint these areas there.


text:
Editing Blender normals
I'm currently creating a character for the Unity game engine inside of Blender. The characters meshes are seperated into several objects to allow switching of equipment pieces (upperbody, lowebody, feet, hands, ...) inside of Unity lateron. However this is where my problem pops up. The screenshot below displays the intersection between the characters arm and its hand.

Currently I recon that the seam is related the direction of the vertex normals. In this screenshot I've joined the 2 objects to display the different directions the vertex normals are facing.

I've been attempting to fix this issue using several different techniques, including edgesplits, adding loops, ... before noticing Blenders Edit Normals modifier. But I still wasn't able to get the right result. I fear the modifier doesn't offer the fidelity that is required to fix the direction of the normals on my particular mesh.
Am I using wrong settings or is there any workaround that helps me to fix this issue?

Nevermind.
Just found an easy workaround using the Data Transfer modifier. Below are the steps I took to fix it:

Created copies of all my objects (body, head, hands, feet, ...)
Joined them together into 1 single object
Used the Data Transfer on each of the remaining original objects
Settings: Face Corner Data -> Custom Normals and Source object the newly created full character object


text:
How to get fix these poles which are pinching my the mesh
I have made a rounded mesh using loop tools. But the poles are causing a bad shade when I add the subdivision modifier. Is there a way to improve the mesh?

you need to make sure that the poles are not on a curved surface or pinching will be quite visible. So make sure that the circular shape is made of loops and that the poles are on the outside of it

Thanks Alex, much appreciated for the example.


text:
How to get a smooth emboss circle shape on a mesh
Is there a method I can get a smooth embossed circle shape on a more condensed mesh. On the left I have very little subdivisions which makes a nice smooth transition, but not enough subdivision for more detailing around the circle shape. On the right Mesh, double the subdivisions but not good smooth transition. So what technique is best.

Is tweaking the topology out of the question?

Please do share a topology sample so I can see how to improve, thank you.

what result do you want? the lower left or lower right?

Something along these lines ... making sure the base topo doesn't fight the circular profile.

@RobinBetts. I'm currently on Blender 3.4.1, can you please make it that version? I try opening up your file, and Blender crashes.  Thank you.

If you have a dense topology that needs to stay dense for some reason, do a bevel:

You can play with vertex and edge creases and use a subdivision as starting point:


text:
How can I get this gradient on a semi circle
I have made this smooth gradient in Photoshop, and trying to get the same result in Blender.
I noticed that I'm getting dark spots on my gradient transition on my shape (Dark spots in red circle). And also in the centre where there is a transition, I can see some white colour I used an empty object to rotate the gradient texture, but Its not exactly like PS gradient. How can I get it more accurate?

You mean you want a gradient along the arch (bottom left to middle top to bottom right)?

For the dark spots: it looks like you are having emission in your material and EEVEE with Bloom enabled etc., all these things might of course change the appearance of your colors and have an effect on the transition between darker and brighter areas. It also seems as if you have brought the outer sliders too far in.

The "some white color" is the transition from purple to green in the center (it's more of a greenish grey actually), because those sliders are close to each other on your Color Ramp, but since the interpolation is not set to constant there will always be a slight transition between different colors, no matter how close you put the sliders together.
So why don't you just use the Color Ramp like in Photoshop? There you have the bright parts on the outside - so they meet without a transition between them. You only have to adjust the position of the dark sliders probably different because the gradient interpolation is linear in Blender and not like in Photoshop. (Oh, and I flipped the colors, but that might depend on the orientation of your circle and empty if this is necessary or not. But the gradients are different in both programs, PS starts on the right with 0 and goes clockwise to 1 while Blender starts on the left with 0 and goes counter-clockwise to 1.)
You are also using the Mapping node incorrectly (or unnecessarily complicated) and actually, you do not need it in this case. Just put an empty where you want the center of the radial gradient to be, then rotate it by 90° or -90° on the according axis (in my case it was -90° on Z because I created this circle looking top down), maybe adjust the sliders more to your liking and you're good to go:

By the way, when using a Mapping node the empty is not necessary, in this case (when using the Object texture coordinates without selecting a separate object) the origin of the circle is the origin of the coordinates and then it is just a matter of getting the right position and rotation.

@lemon You didn't have to delete your answer - with a bit tweaking this would work as well, you just had the Color Ramp built up like in the question, although the Photoshop gradient is a different one which is the biggest part of the problem.

Gordon, yours is far cleaner and I missed details that you explain very well. That's why it was better to delete it.

Much appreciated Gordon. Sometimes the wrong tutorials can lead to misleading node set up, that's why I come to BSE, most trusted people to help me with my inquiries. Cheers!

@blenderbreath I've added a slightly edited approach at the end without the need of an  extra empty, although an empty can sometimes be useful if you want external control over the coordinates.

@blenderbreath Another tip for the colors, of course Blender's Color Management changes the look of them as well, but as a good starting point it is always best to use the hex values in Photoshop to transfer them into Blender, do not use HSB or RGB values and convert them into the 0 to 1 range.


text:
How to blender 2 textures using BlenderKit
Is it possible I can mix 2 different textures using Blenderkit on an object?
When I use the find material option, I can drag/drop one material at a time, which the materials are available in the Material Properties.
for demonstration purposes, I just used 2 random materials.

what about making a node group out of both materials without the material output node, then make a new material with these two nodegroups and use  a mix shader node to combine them?

Yes, this was a good option, I didn't know I can save node-groups using Blenderkit. Thanks for your help.

you are welcome

Just make a node group out of both materials without the material output node. Then make a new material with these two nodegroups and use a mix shader node to combine them.


text:
Build animation modifier build up and then reverse
I have a plane which I have applied the build modifier. I'm trying to make the build go to 50th keyframe (without a complete build up of the squares), and then reverse, so the modifier doesn't fully complete the plane. I also added another plane, which has it going into reverse, but the build is colliding and cannot see each individual square.

You can reverse without using the Reversed option simply by increasing the Start Frame property faster than the current frame number. So you may find using a driver solution more intuitive: max(0, frame-50) *2

Explanation of the formula:

frame is a global variable holding the current frame number - you can drive the field: Start Frame to be the same as the current frame number; this means that each frame becomes the first frame of the modifier, effectively making the object invisible throughout whole animation (because the first frame of Build modifier is empty)
* is a multiplication: by multiplying the frame by 2: frame * 2 you can make the driven field to be twice higher than current frame, e.g. on frame 15 the Start Frame will be 30; this is not very useful as the modifier makes the object invisible before the Start Frame.
(frame-50)*2 substraction is used to offset the animation so that on frame 0 the Start Frame is (0-50)*2 = -50*2 = -100, on frame 25 it's (25-50)*2 = -25*2 = -50 and on frame 50 it's (50-50)*2 = 0 * 2 = 0 and on frame 100 it's (100-50)*2 = 50*2 = 100  This finally shows the animation, in reverse, as the Start Frame starts at a value 100 lower than current frame, but increases twice as fast, so after 100 frames surpasses the current frame. Think of it as two runners holding a tape measure: a slower runner begins at the start, a faster runner begins with a handicap and is put 100 m before the start: so the tape is extended by 100 m at first, but as the faster runner comes closer and closer to the slow runner, the tape retracts to 0 length.
max is a function that returns the biggest of passed values. It's typically used to clamp values, to make sure they don't go below a certain limit. Here by using max(0, x) I make sure to get a value of x but no less than 0. This means that Start Frame will never be below 0. Looking at the runners analogy, imagine that the faster runner doesn't hold the tape from the beginning, it waits for him at the line marking 0 m of the racing track. So now as the slower runner starts the race, the tape extends, but only until the faster runner reaches the 0 m mark, grabs the tape and approaches the slower runner, decreasing the tape length.

Hopefully that clears things up.

Yay! Cracked it! This should be the one?

really cool solution!

Hi Markus, thanks for your information, I never knew about a driver solution. It worked well, and what I was after for my project. What I'd like to understand is, what's the: *2 value do? Thank you.

@blenderbreath see the edit.

This (slightly unexpected?) keyframing works for me, for an animation to build to 50% and back, over frames 1-100.
In the Build modifier:

At frame 1 - Start Frame:1, Length:99, Reversed:True, Randomize:True
All fields keyfamed.
At frame 49 - Start Frame:1, Length:99, Reversed:False, Randomize:True
Reversed only keyframed.
At frame 100, All keyframed, as 49.

I suspect this is a hack.

Thank you for your reply Robin. But your modifier builds up, and covers up the whole plane. I've uploaded a rough video so I can show more precisely what I'm after.  See how the squares build up but don't become a whole square, then they become less again as if they're looping? https://streamable.com/4nnwno

@blenderbreath just multiply the length, so the animation doesn't reach the end before reversing. You won't get more reputable source than Robin, I'm afraid :).

@MarkusvonBroady 'Reputable' or not, I still can't get my head round achieving exactly what blenderbreath wants, this way :D

You need to keyframe only the Reversed property to be unchecked at frame 1 and checked at frame 50 with a constant interpolation in the dope sheet.

+1 with the caveat it won't work if you want to reverse at a different point than half of the length.

and here is a geometry nodes solution, which is pretty flexible. You could easily change the frames, fill rate, size of grid etc.
Node tree:

HI Chris, thank you for the node tree set up, I might use it in the future. I'm still on previous Blender version currently, and get an alert when opening up your file, that some nodes are undefined appearing in red.

@blenderbreath: no problem. You are right, i used version 3.0 alpha for that. But you didn't write that there are version restrictions ;)

Nice. I still managed to not learn geonodes by now, so I need to ask: does this work only for this particular case (squares), or does it recreate the Build modifier?

Thank you! Since geonodes works with instances and not with faces - it cannot recreate the build modifier. But of course you could do the same to every mesh/model, it would work, but if you use planes or whatever instance…your model wouldn’t look perfekt so…

Second Markus'  'Nice' :)  Just been playing... You can put a Weld modifier below the Geonodes...


text:
follow path offset factor question
I have an object following a path, I used the offset to insert keyframes,  but the object stops at the 40 frame mark. But I had inserted the frame at 250 frame mark.

By default paths are animated up until frame 100, you have to manually change it in the curve properties (not sure this is the problem though since there is not much information in the question)

Here's the blender file:

Related https://blender.stackexchange.com/questions/183301/how-do-i-make-a-path-animation-last-longer-than-100-frames --->  https://blender.stackexchange.com/questions/23311/cyclic-orbit-animation   IMO don't use the parenting option, simply add the constraint, make it fixed position, animate the offset. 0 is one end, 1 the other.

As Gorgious commented, change it here:
Select your curve, open path animation tab and increase your frames to your desired value.

So for your case: select rrrrrr and change the frame value to 250.


text:
How to make image transparent/Opaque for image render
I have an image I'm trying to make it transparent. I have tried both methods, importing images as planes and adding it as a background.
importing it as a background I can lower the alpha, but it wont render.
Adding it as a: Image as planes, It does render, but the transparent setting I have chosen wont make it transparent/opaque.
So what Im trying to do, is, have my main image in the background, and trying to lower the opacity of the image in the front, and render it.

you can't render a Reference or Background image, but you can render an Image as Planes, then if you want to make it partially opaque you need to lower down the Principled Alpha value or mix it with a Transparent node

OK, thanks for that. I believe this is the node set up, but my shader viewport is so much different from my render. https://ibb.co/bs45RPB

because you have given a color to your world but you've also enabled the Render > Film > Transparent option, with Transparent enabled you won't see the world in your render

All good thanks!

You can't render a Reference or a Background image, but you can render an Image as Planes, then if you want to make it partially opaque you need to lower down the Principled Alpha value or mix it with a Transparent node.
As for your World: you have given a color to your World but you've also enabled the Render > Film > Transparent option. With Transparent enabled you won't see the World in your render.


text:
Looping Smooth Spline Generation That Will Be Evaluated in Animation Nodes
I would like to generate a spline with smooth peaks and troughs. This spline will be evaluated. Once the object following the spline reaches the end of the spline, it returns to the beginning (loop, not ping pong), and a new spline (generated spline 2) with the same start and end points is generated, however, it has different peaks and troughs. How could one achieve this effect in animation nodes?

You can use BAN if that is your preference.  In addition you might find it simpler to use Blender Curves and Edit Mode and Proportional editing.  Looping can be done with the Follow Path Constraint.  It appears you have very little graphical feedback compared to the Curve in edit mode in Blender. It seems like you are ignoring the useful features of Blender.

You can create some random points and use them as the handles of a spline as follows:

To generate another spline, just change the seed.


text:
Make End of Rotation the Beginning Rotation of New Animation in Animation Nodes

I would like to have an object animate between Start_1 and End_1. Every 50 frames the ending value is given a new random value, and the preceding end value becomes the new start value.
In other words, where the last euler animation ended is where the new euler animation starts. This continues on indefinitely.
I imagine re-assigned a variable in a loop is involved, but I haven't been able to get much further than that.

First, use the Repeat Time node to repeat the the animation every constant duration. Except, we are going to dynamically change the start and end of the animation. Now, if you floor divide the time by the duration, you will get an integer that is constant for the whole duration of the animation and increases by one every time the animation repeats. Since the random nodes are deterministic based on the seed, we can use that integer as the seed of a random node and use its output as the start of the animation, while the end of the animation will be a random node evaluated at the integer plus one as follows:

Note that the node seed is equal in both random nodes.


text:
Continuously Move Around Spline with Animation Nodes
With the Evaluate Spline mode, as you move the parameter towards 1, the object moves to the end of the spline. How could you make the Suzanne continuously move around the spline, such that once it reaches the end of the spline, it starts to move the beginning, in a looping fashion?

You can use Modulo math operation:


text:
Deform Helix Around Spline in Animation Nodes
I know in this answer it has been shown how to create a helix in animation nodes: How to make a rope winding animation?
However, I'm wondering if there is anyway make a helix deform to the curves of a spline, achieving a similar result to the below image where I applied curve modifier to a helix curve.

Just add a curve modifier to the target object from the answer you have indicated in your question. You can also find this related answer useful https://blender.stackexchange.com/questions/76756/how-to-animate-winding-a-ribbon-onto-a-cylinder/76788#76788

All you have to do is change the basis of the parametric equation to the tangent, normal, and cotangent of the spline. The cotangent is computed by crossing the normal and the tangent vectors.

Note that the samples vectors are not normalized.


text:
"Blobbing Effect" in Animation Nodes
How could one re-create this "blobbing-off" effect in animation nodes?

Just use a Ping Pong repeated time as the scale of one of the meta balls as follows:

You can also evaluate the output at some interpolation to get more custom animation.


text:
Output ob.matrix_world.translation as a Vector in Animation Nodes
I would like to make a script which will allow me to output the ob.matrix_world.translation value of an object as I would a normal vector. The ob.matrix_world.translation will be plugged into an Object Transforms Input node.

Similar question. https://blender.stackexchange.com/questions/123924/absolute-location-of-a-mesh-with-curve-modifier-applied

Not a big user of animation nodes but suspect the world output from Object matrix nnode might be it.  Feel free to ask via comments

Use the Object Attribute Input node to get any attribute of an object:

In this case, the Object Matrix Input node can be used. You can decompose the output matrix to get the required vector.