text:
Invalid handle cumodulegetglobal_v2
I have RTX 3060TI updated drivers 545 installed. I have an i7 9th gen processor and 64GB RAM with 1 TB M.2 SSD. But this error is still not resolved.

Try restarting your computer and then render.

Have you searched the Bug Report section of the developer website? I would also recommend updating your drivers at the very least. and making sure you're using a new stable version of Blender.

most likely outdated driver. i found this thread https://developer.blender.org/T96118


text:
Geometry Nodes: How to Find the Index of a point by looking for its attributes
I have created two 10 vertex circles using geometry nodes, assigned a random integer of  0-10 for each vertex and stored the respective values as an attribute. Both mesh circle uses a different seed for the random value node. Within each mesh the attributes may have repeating integers, but thats fine.
I am trying to move the points in mesh A to mesh B by grouping them up according to their equal attributes. (EG: Vertices in mesh A where Attribute=7, gets moved to the position of vertex in mesh B where attribute=7 and so on.)
My plan is to obtain the index of the vertices in Mesh B by inputting its attributes, and using the output index to sample its position.I know i can obtain the attributes of a particular point using its index with the Sample index node, but how do i obtain the index of a particular point using its attribute?

The thing is several points may end up with the same value, so you're going to have to decide which one of them to snap to. You should be able to do this using sorting (for iterative methods, use the repeat zone in Blender 4.0beta) https://blender.stackexchange.com/questions/264857/how-can-i-re-sort-the-points-indexes-of-an-object-in-geometry-nodes

What happens if you have multiple 7s in both Meshes A and B?

tbh i would add your real end goal to your question as well, because maybe someone comes up with a better idea than comparing attributes...which might result in very bad performance

source: Stack Exchange

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

sort: votes


text:
Mouse look not working in UPBGE

I'm trying to make my first person character, and im using the mouse to interact with the view, but im using the logic brick and when i start my game, it doesn't work, nothing happen, what should i do?

Please clarify your specific problem or provide additional details to highlight exactly what you need. As it's currently written, it's hard to tell exactly what you're asking.

You need to click the small arrow in the mouse sensor so that the movement is tracked every frame!

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


text:
Black triangles/weird texture on character
It only appears on this character, and it can't be the light because even if I shine a spot light on it, although its not black, the outlines are still there. I noticed it wasn't affecting a character far away so I stole his head and when side by side, its being affected by it too. I disabled sky dome and particle system plane above him but it didn't help. No HDR. There is no texture, his skin is just pure white via the color in the BSDF. No nodes besides the default. It ONLY shows in render view. Viewport doesn't have this issue. Trying to render in cycles. Ideas?
I do not have overlapping geometry.I have tried higher sample counts and de-noising.

It is hard to tell what could be the issue just by looking at the picture. If possible please share an example .blend file for testing. If not possible - try giving the character a standard material. If the glitch is gone share the material you are using.

Turns out it was the sun. Turning shadows from the sun off made no noticeable difference in my scene but fixed this issue.


text:
How to use empties in a cloth simulation with geometry nodes
i have set up a cloth simulation with six cloth objects, each is 1,5m wide and 6m high. I have placed three on the left side of a stage and the other three on the right side of the stage. To each (plane) i have hooked an empty to the top vertices and another empty to the bottom vertices. In that way i can move the cloth objects across the stage to create interesting backdrops for a music stage. I would move the top of one cloth to midstage while the bottom stays at stageright to create a diagonal cloth band for instance.
Now i want to move the empties more comfortable. The goal is to make animation of the cloth pieces easier. I would like to make a "menu" with maybe different "sliders" to move the top and bottom of the cloth, a button to keyframe the settings and a button which selects all planes, tabs into edit mode and then back in object mode again because the geometry needs to be "re set" in that way after you made changes, this is a workaround i learned while working with the cloth system, i assume this is a little bug in Blender.
What would be the right way to do something like that and can you explain me how to do it?
Thanks in advance,
Mike

Why do you want to use Geometry Nodes? Empty objects have no geometry. Yes, you can move them around with GN - but what is the advantage of using GN for this? Sounds more like a job for a Python add-on to me - or drivers or just keyframes. With GN you can neither create buttons and sliders nor keyframes.

Please edit the question to limit it to a specific problem with enough detail to identify an adequate answer.

thanks for your comment Blunder, obviously GN are not the right solution for that, i will look into drivers and how they can help me with that!


text:
Geometry node proximity to generate action
In abstract, I want object A to get closer to object B, so something happens in object B (for example color change, or whatever). But I want this state to remain. The problem that I have is that when object A continue it's movement and it get away from object B, then object B go back to the initial state.
I have tried with simulation nodes, with the geometry proximity node, and I don't find the proper solution. I found a solution, that is that object A creates a hidden geometry that stays there, so the state of object B don't go batk,1 but it creates a lot of geometry and it's very heavy. I'm sure that there is a better solution, but I can't find it.
I have the file for the attached video, but I don't know how to upload it, sorry.
Update, here is the example file

[]

Could you provide your Blender file using https://blend-exchange.com/ ?

What about a Named Attribute to store the Scale ? Initialize it with 0, then inside the Simulation Zone, update it with the maximum between the previous frame value and the actual output of the Color Ramp node. Once at 1, it will keep this value, even with the sphere away.

Hi StefLancien, thank you! I'll give it a try! If it works, I'll be back

Hi, I tried what you propose, but probably I'm missing something or I don't know how to implement it. I have uploaded the file. Thank you in advance!

Here is an example how you can store the new scale as maximum between previous and current scale and use it for scaling the elements:

Side note: If the "new scale" field is not used outside of the GN modifier, this field can be directly initialized then recycled between the Simulation Zone output and input as a "bake item", instead of using a Store Named Attribute node. See https://i.sstatic.net/CUvJUTbr.png

@StefLAncien Yes, correct. I started off differently where I used the attribute outside the simulation and then did not spend much time on making it more efficient.

Gordon, this is exactly what I was looking for, thank you so so much! This solution is really useful, since it can be applied for example for color changes, or similar stuff. Again, thank you so much!


text:
Particle system motion blur with dinamic geometry
Recently I found a very anoyinng problem with the motion blur and the simulation zone. Basically if you create a particle system, you asign an age to the particles, and you try to render when the particles are starting to be deleted, you'll find that the motion blur is totally broken. This is a well known problem and you can try to fix assigning manually the IDs (for example with random numbers).
I was testing a different method to achieve the same result (my project is an object that disolves, and emits particles and smoke while it's disolving) so I wanted to test the particle system integrated in blender, just to compare with the simulation zone. And I found that the particle system in Blender have exactly the same problem with the IDs. Apparently it have something to do with the geometry pipeline in Blender, but if, for example, you create an object and the geometry of the object is changing (for example if some faces are deleted during the animation) when you try to emit particles from this object, you'll have corrupted motion blur. AND in simulation zones you can manually add an ID, but in the particle system you don't have any opportunity to solve this since you can't asign an ID manually, so the only option that you have is to switch off the particle system.
Do you have any idea on how to solve this problem?
Attached you can see a failed motion blur vs a correct one

Blend File example:


text:
How to get even, straight edges using bevel profiles and curves?
I have a nice method for creating pipes and moldings, but there's an issue I'm coming across that ruins the final result.
This is what I'm trying to achieve:

And here is how I am doing it in Blender:

So basically I make that shape with vertices, and then convert to a curve, add some depth and use a bevel profile. But I get this:

Notice how that shape on the left is tapering. I do not want that. Now there is a solution - all you need to do is bevel the vertices beforehand, but I don't want that. I want perfectly sharp edges like was shown in the first picture.
You can also set the Twist Method to Tangent, but it doesn't look right. Only one side gets thickness.
Any idea how that is very similar to my workflow? I could of course hand model all of it, but I prefer the easier approach.
Blender file:

could you upload a sample file?  (How to add a blend file)

I added the file.

I don't think it's possible or you'll need to manually tune the curve vertex radius where needed.

https://blender.stackexchange.com/questions/66353/how-to-make-beveled-90-degree-corners-on-a-curve-better

You can get slightly better results by scaling each of the control points to 0 individually, and setting the vector type to Vector (which I think you've already done;) but in the end you're always going to have problems with the compound corners.


text:
Black lines when compositing
I am attempting to composite a back plate, and blender environment and also the main blender scene. I seem to have manged this with render passes but I am getting a thin black line around the foreground image I am compositing. Any ideas how to how get rid of the black line? I attach a screen shot and compositor nodes to show the problem. Thank you.

Try avoiding the alpha settings of the Color Mix node. Use an Alpha Over node instead.
Check Captain Disillusions rant on Blender and alpha channel on Youtube if you want to find out more in a hilarious way.

That helped - thank you. Revised node tree posted above to show answer in action.

@Starfury359 Frederik suggested the correct answer, which is the alpha over node. You still show a mix. Use the alpha over and you will be fine.

@troy_s in the second image I use the Alpha Over node as suggested by Frederick and this indeed solved the issue - there are no mix nodes. The firsts image is before I learnt about the Alpha Over node. Thanks.


text:
Quality loss when rendering in H.264 or even AVI RAW
I rendered a video in H.264 (with what was recommended in the accepted answer here in fact: Video Quality Loss after Rendering in VSE) but the rendered video was always blurrier and less contrasted than the original sequence. So I tried to not compress anything with having AVI RAW as the output format, but even that does not seem to preserve the video quality...
Attached is a picture comparing the two: the left one is the original sequence, the right one is the rendered video (H.264 or AVI RAW look the same).
I tried to play with options such as anti-aliasing, lossless output, the bitrate or even the GOP size but the result is more or less always the same and there is an obvious quality loss.
What could this be due to? I must mention that I'm on Ubuntu 14.04 with Blender 2.77, maybe this has something to do with codecs on my operating system? Or is this quality loss unavoidable, which would be very surprising to me..?
Many thanks,

Assuming you didn't miss anything obvious (wrong resolution) I would recommend to render it out with a really high bitrate (24300k) and then use handbrake to compress it in a useful manner. The default bitrate of 6k is just way to low.

Also there may be a blur node hiding in your setup. Looking closely at the ladder on top of the mast it seems like everything is spread out by one pixel.(left original, right encoded)

Ok my bad it's the first time I use Blender for Video editing... You gave me a good hint with resolution (which of course is something obvious): I used the correct resolution (720p in my case) but I didn't notice this percentage bar right under the X and Y resolution... It was set at 50% and that was the problem... Thanks for your reply!

I realize, I should have phrased that in a less offensive manner...  It was not my Intention to make you feel bad. Glad I could point you in the right direction.

No worries, I didn't take it badly at all, and I checked the resolution lead too hastily: it is I who felt a bit sorry to ask such a question here. Hopefully it will help someone else later. Thanks again.

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


text:
Copy render settings between scenes using Python
I simply want to take the render settings from one scene and copy them to another scene. Something like
bpy.data.scenes[1].render = bpy.data.scenes[0].render

except that this fails as bpy.types.Scene.render is read-only. Ideally I'd like the render settings linked between the scenes but I'll settle for deep-copying.
I previously found Can you link render settings across all scenes so they can all be changed at once? but it doesn't get an answer.
The only solution I can come up with is manually copying each and every attribute one at a time but this seems very cumbersome. I also found https://stackoverflow.com/questions/3818825/python-what-is-the-correct-way-to-copy-an-objects-attributes-over-to-another/3818861#3818861 which gets me some of the way but falls over for read-only attributes, i.e. the other classes within bpy.types.Scene.render.
Any help much appreciated as this appears simple to do! Thanks.

Is there a better solution without any add-on now in Blender 3.1?

There is this bundled addon for this:

If you specifically need the python code, you can do it like this:
import bpy
settings = ["resolution_x", "resolution_y", "resolution_percentage"]
dict = {sett: getattr(bpy.context.scene.render, sett) for sett in settings}
for scene in bpy.data.scenes:
    for sett, val in dict.items():
        setattr(scene.render, sett, val)

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


text:
Noob questions about UVs in Blender
As I said in another question I made, I'm following a tutorial based on a book. I'm making this model called Captain Blender. But I stopped a long time ago and I'm just getting back to it and I was having some issues.
This time, the location of the UV islands is not matching the texture image file that's there. I don't know why this is happening and why I would leave it like that when I stopped. Makes no sense to me since I have older versions of the file where it's matching perfectly.
This texture was brought in from Zbrush. I simply painted on the model's head, exported that as a texture (seams were already made in Blender) and then brought back to Blender. I can't remember now if I had to adjust the islands. Is it matching perfect in the older files because I adjusted the islands to match the image, or is there a way in Zbrush to make sure they match the ones in Blender?
I don't remember doing anything on Zbrush before other than simply exporting the texture.

I don't see anything wrong. Not my fault you didn't understand. Why would I delete YOUR edits? Put it back how it was. If no one answers then so be it. Your edit to my question is not correct. I know how to move the islands around. I'm asking if there's a way that no adjusting would be needed, as I don't remember doing it. I thought, in the past, the image brought from Zbrush fit perfectly without adjusting UV on Blender.

was the file you were working on, open and saved in a recent verseion of blender, before you did zbrush? and does it happen if you do a quick test on a new model?  It could be an update issue,(Cpt. B tut was originally for 2.48) or it could be an issue with zbrush/blender storing/restoring UV maps.

It's hard to say what was the reason behind the changing UV layout (that was you importing it from ZBrush to Blender, so you should've noticed if something was wrong) but it should be possible to repair easily. As you can notice, top islands are flipped with position (you can grab them into place), and bottom right ones are flipped with position and rotation (you can scale them by -1).

Yes, it was definitely an older version of Blender dval. But in an older file, they are perfectly positioned. I guess I must have moved them and don't remember. I must have unwrapped UVs again later, messing it up, and saved it that way. Good tip @Mr Zak, I actually rotated them by eye, I could have just flipped them. As for moving them with G, everyone just does it by eye correct? I'm just trying to make sure there isn't a more accurate way of doing it.


text:
Model with hair shows up black in rendered viewport shading
First off, I am a complete beginner, and I was following a very high-altitude tutorial. So I expect there is a box that I haven't checked. Here is what I see:

The model is supposed to look like fabric (a puppet). In the material preview viewport shading, everything looks correct, but if I switch to rendered viewport shading (also with renders), everything with hair on it appears black. The only things I did were to delete all of the starting assets and model the puppet. I have a Nvidia GeForce RTX 3070 and 11th Gen Intel Core i9-11900k processor. I have to assume that's good enough for basic Blender modeling.
I changed the render engine to cycles. I added a couple kinds of lighting back into the scene, which seem to be illuminating the eyes properly. None of the videos or forum posts that I found with similar problems solved my problem. That could just mean I'm missing something very simple.

Put the IOR back to the default 1.55 (instead of 0) and it seems to work:

I can't upvote, but that seems to be the problem. Thanks!

@Krozber Just as a quick (possible) explanation: the IOR between two media is calculated as the ratio of the speed of light in one medium to that in another medium. Which means an IOR of 0 would make the speed of light 0 in one medium, hence no light would reach the camera from the surface which makes it black. But of course this is more hypothetical and I don't know how much this actually plays a role in the render engine.


text:
How to make glass dispersion behind a no dispersion glass? (cycles) and why light reflections is triangle in a round surface?
I created a camera lens in cycles, and I want it's core lens to display color dispersions:

However, there are a glass panel that covering the core lens which prevent color dispersions to show up.

what Can I do? I don't want the glass panel have the color dispersion but I need to see the color dispersion from the inside.
by the way, why the light reflections shows in triangle in a round surface??

here is my blender file:
https://drive.google.com/file/d/1vsgvzQEEytQ2biYIJYbLcj2zZUfLeX0b/view?usp=sharing

First of all, for the glass panel covering the core lens, the material setup makes no sense. With the Mix Shader's Fac set to 1, only the Glass BSDF will contribute to the output, so you can directly connect it and delete the Mix Shader and Light Path nodes.
With the material for the core lens, the Light Path node creates the problem: by using the Transmission Depth information as a mix factor, you limit the dispersion glass to be only visible with a transmission depth less than 1, which means only when viewed directly. When you have a glass panel above it (with a front and back face), you have a transmission depth of 2.
So the solution is to do something similar like before: delete the Mix Shader and the Light Path and only use the result of the added red, green and blue glass for the Material Output (this is in Blender 4.0, don't know your version but for me this looks better than in 3.6.5) - of course it does not look exactly like without the glass panel, because the refraction and absorption of that glass has an influence on the appearance too, while at the same time the dispersion now influences the reflections inside the core lens and of the red lens as well:

For the shading problem: you have messed up geometry there. The ring consist of only two n-gons, but on the upper right there are some orphaned edges connecting vertices without faces, which remain even after deleting the two ring faces:

I would suggest you delete the faces and the orphaned edges, then select the two edge loops around the gap. With the Loop Tools addon enabled you now can simply right-click and choose Loop Tools > Bridge from the context menu to create new clean topology:

Afterwards the shading issues are gone:

Thanks for your kind help! I've learned alot!

Oh here is one thing, I feel like the color is too complex the core lens has, if I only want it to reflect green color when lights hit on it, what can I do? I don't want the whole core lens turnning to green, Only the reflected spot, I tried alot and searched on the internet, I still can't find the solution


text:
Liquid gets less/vanishes if effector is rotated in animation
I am experimenting with liquids in an animation, but I don't get it to work properly.
I have an simple container, liquid flows in. Then it rotates so the collected liquid should be able to flow of another hole, which the liquid reaches by this rotation.
But instead it "collapses" in one corner and almost vanishes.
I have attached a sample .blend-File, with almost default settings of "Quick Liquid".
liquid_rotation.blend
Edit: I am using version 4.0.2

I cannot "really" explain why this happens (i just think it might be because of rounding issues), but "normally" you can achieve better results in fluid simulations with higher resolution divisions.
So here is your result with 128 (instead of 32):

so you might even get better results with even higher resolutions, but of course with the cost of much more time to bake that.

For the final bake, increasing the divisions would be no problem, but the provided .blend-File is a simplified version of one I am working on atm. There, even a resolultion of 128 does not work and higher ones make planning my scene almost unbearable :-(


text:
List the available render engines with python
so I want to get the list of available render engines, like in the error shown to check if luxcore is available, a workaround is to list the attribute names of bpy.context.scene if there's the luxcore string but I don't think this is neat
Traceback (most recent call last):
  File "<blender_console>", line 1, in <module>
TypeError: bpy_struct: item.attr = val: enum "FOO" not found in ('BLENDER_EEVEE', 'BLENDER_WORKBENCH', 'CYCLES', 'LUXCORE')

This is the error thrown when you set a random string in C.scene.render.engine = 'FOO'

A possible answer is in this question: https://blender.stackexchange.com/questions/58030/how-to-get-all-available-entries-of-an-enumproperty but I noticed something odd: when listing the enum entires for the render engine, only BLENDER_EEVEE is listed. When trying other enum properties in Blender, multiple values are listed as expected. Not sure why this is.

This is handled a bit strangely by Blender, the enum is initialized only with Eevee in the items and the others can't be access through the bl_rna properties with enum_items. For every render engine that is registered through Python inheriting from bpy.types.RenderEngine you can list them through bpy.types.RenderEngine.__subclasses__() and their respective bl_idname. This however does not include BLENDER_EEVEE and BLENDER_WORKBENCH.

As far as I can tell the enum is dynamically populated by rna_RenderSettings_engine_itemf in rna_scene.c.

For luxcore using bpy.types.RenderEngine.__subclasses__() lists luxcore and cycles, but the others not, maybe because blender_eevee and blender workbench are not addons, and listing enum properties (didn't know that, nice) should list the entries like in the error.

@Iszotic yes Eevee and the Workbench engine are considered internal (which they are) and therefore not inheriting the RenderEngine class, which is only the case for the Python add-ons. The enum_items only contains the value from the time of declaration, where only BLENDER_EEVEE is in it. It works when adding the bpy.context.scene.render.engine as prop in a panel, because that internally retrieves the items through the additional callback function rna_RenderSettings_engine_itemf which is not accessible through the Python API.


text:
How to turn off gamma correction with Python in Blender 2.69
I'm trying to render surface normals for my scene, and I've gotten it to work in Blender 2.78. One of the important steps was to eliminate the gamma correction which was whitening the image. I did this in 2.78 by doing
scene.view_settings.view_transform = 'Raw'

Unfortunately I also need this to work in Blender 2.69, but I can't find the appropriate setting as the 'Raw' enum was introduced after 2.69.
I've tried setting it to 'NONE' (which the Blender 2.69 API lists as an option) but this throws an error saying that the only option is 'Default'. I've also tried directly setting
scene.view_settings.gamma = 0.0

But this has no effect.

Update: Thanks for your answer, Troy. Ultimately I'm trying to create a png image with the surface normals that I'll use for another task. This other task needs me to remap the colors of the surface normals (to look like this: https://arxiv.org/pdf/1411.4958v1.pdf).
I'm definitely open to using another path to producing normals, but I need to use only Python scripting. Non-color Data sounds promising. Would I be able to render something using nodes, and then save that render (from an output node, not from the RenderLayer) as Non-color Data? Please let me know if I'm not being clear!

Update 2: Thanks, Sambler. When I set scene.display_settings.display_device = 'XYX' I get TypeError: bpy_struct: item.attr = val: enum "XYZ" not found in ('sRGB').
Trying to change
scene.display_settings.display_device = 'sRGB'
scene.view_settings.view_transform = 'Raw'

yields TypeError: bpy_struct: item.attr = val: enum "Raw" not found in ('Default')
This question seems pertinent. In this question the solution was to reinstall Blender. As I'm working on a shared cluster, to ask the admin to reinstall Blender in order to help me debug is, ideally, a last resort.

PNG is a less that sub optimal format. If you render to EXR and flag as Non-Color Data you should be absolutely fine. This can also be done via Python of course. Never use PNG, it is a truly worthless format.

Rather than asking to reinstall - consider asking to update to something less than 3 years old. On the remote blender what do you get for bpy.app.ocio.supported

Wrong approach.
Simply render or load an image and tag it as Non-color Data in the UV Image editors properties panel. Being a good imager, you are already using the EXR format exclusively, as it is a linearized, high precision encoding format for both colour and data.
The Non-color Data tag keeps the buffer entirely out of the colour transform pipeline.

I'm definitely open to using another path to producing normals, but I need to use only Python scripting. Non-color Data sounds promising. Would I be able to render something using nodes, and then save that render (from an output node, not from the RenderLayer) as Non-color Data? Please let me know if I'm not being clear!

The colour transform tag on an image buffer is only metadata, and as such, if you save that buffer as an EXR, there is nothing more that you need to do. Simply load the EXR, then use Python to set the buffer's tag to Non-Color Data and you are done. Those values will not be put through any view transform.
It should be noted that when viewing Non-Color Data in the viewport, it might seem that the view is identical to when it is set to linear. The difference is that linear is defined as a colour transform and will get passed through various transforms, where, as stated above, Non-Color Data always will pass through untransformed.

Hey that's a good tip, I didn't know this ;-)

scene.view_settings.view_transform is part of the colour management settings, the values accepted vary based on the display device setting. I see the same values available in 2.68 and 2.78
When scene.display_settings.display_device == 'None' view_transform can only be set to 'Default'
When display_device == 'Rec709' view_transform can be set to 'Default' or 'RRT'
When display_device == 'XYZ' view_transform can be set to 'Default', 'RRT', 'DCI', 'Raw' or 'Log'
When display_device == 'sRGB' view_transform can be set to 'Default', 'RRT', 'Film', 'Raw' or 'Log'

That is the view transform. Views have nothing to do with internal representation of data, nor the issue of data based buffers such as the OP's question, which setting data to Non-Color Data keeps the buffer out of the transformation chain.

It is the setting being changed in 2.78 that produced the desired result but fails in 2.69. It may not be the best solution but it is what is failing.

Sorry, no. It is completely misunderstanding colour management. You do not disable a view. Views are for colour data. You tag data that isn't colour as such. It isn't terribly complex.

But he is trying to disable colour management so that a rendered image isn't adjusted by the colour management. I would expect only one render from the scene is desired this way so disabling colour management for one render could be easier than changing each image setting based on the render being done. But that's just an assumption.

"But he is trying to disable colour management so that a rendered image isn't adjusted by colour management." This is precisely what is addressed via EXR. Non-Color Data should also work on some display referred image formats.

authors: Евгений Медведский


text:
How to align/straighten adjacent edges? (Solved)
So I've looked on stack here, and I've also tried here, but I could not find what I was looking for. I remember looking at this tutorial once, and someone used a fast key or key combination to straighten adjacent edges.
Look at my image,
What I basically want to do is use that key combination to somewhat align those edges/vertices to be somewhat along the same height on the x-axis. I remember using that key combination on another shirt I made once. You could keep 'spamming' the combination/key until they were (almost) perfectly aligned.
Anyone happen to know which combination that is?
Thank you!

Hello :). This thread could help: https://blender.stackexchange.com/q/28063/

Hey, I saw that one, but it's not that that I need. Thank you for your answer anyways!

Hi :). Then perhaps: https://blender.stackexchange.com/q/33525/. Or try to better describe your problem.

I think I found it, but I just remembered it wrong. It worked with the scaling :)


text:
How can I exit graph editor
I'm working on creating a looping rotation and the tutorial I was following had me use the graph editor at one point. I was really confused by the way that new windows are opened so in my attempts to close it i ended up creating several more. I also elected to hide the header because I thought they might be closed as a result. Long story short, I accidently closed the window I was working on and am left with a graph editor window with no heder and no way to switch back to 3d viewport mode. I can still view my models through the other windows like sculpt and model but I can't work on the animation. Is there anything I can do???

Can you attach a screendump of Your fullscreen?

@sorenfroststaal I attached a screenshot. Hope it helps

To make the header appear again, click the downward facing arrow on top the window :

Then, you can change the window type as usual.

Thanks for the help!!!


text:
Can't illuminate object from below nor changing light source from script
I've been using blender and its scripting capabilities for a machine learning project. The script generates a bunch of different sun objects and cameras (positioned close to the lighting directions) and then cycles through each combination to render the image.
I'm dealing with two problems:
1) The first question is for artists too. My object, being a satellite, is free floating in the model space and there's no obstruction of any kind for the light rays to reach it. Somehow, however, although everything is fine when the light comes from above the model, when the direction of the sun comes from below, the model is not illuminated at all. I really can't figure out what's wrong with it.
2) The other question is about the script. I have to activate the lighting one at a time, one for each iteration over the related cameras, just like each of the others were switched off. I've tried many solutions: when I try to deactivate and reactivate the light object according to my needs, renders seem to show like the last generated light always stay active and the others are unaffected; when I try to put to zero the energy of all the lights but the one I'm interested in, instead, rendered images are all dark.
Any suggestion would be greatly appreciated. Thank you everybody!
EDIT:
Sorry for not immediately providing the .blend file, but I didn't know how to do it. Here you have, thank you!

For those willing to take a look at the code, here are the relevant pieces. The code is not very clean, but there you can see (commented out) some of the strategies I've tried. I think, anyway, it is quite useless to read it since the question is quite straightforward: I just need to know how to turn on and off a light source from the command line, if it is even possible.
EDIT 2: To better explain how the script should work, as requested.
I'm dealing with a machine learning project: that means that I'm NOT interested in any kind of animation or anything similar, I just need to produce many static images of the model at hand in different lighting conditions and from different POVs. With "many" I mean thousands of them, that's why I need to automate everything through a script.
So, the script I wrote should work like this: a certain number of light sources (Sun objects) is created and linked to the scene, by default they should all be switched off. Then the script cycles through them. In each iteration, one of the light sources is activated and a certain number of cameras are introduced. A nested for cycle then goes through all of the cameras, sets the compositing nodes to output the ID masks of the objects that compose the satellite (I need them too), and renders the different images. Than, the light source is switched off and the primary for cycle proceeds to the next iteration with another light source.
As simple as that, no need for fancy animations or anything. And everything works just fine but for the switching on and off the lights.

Welcome! TBH without seeing the script or your scene it's actually hard to give any good answer/advice based on this post. This is a q&a site so please add some screenshots at least to give us a chance resolving your issue. Also the site works best asking one question per post. Start here: https://blender.stackexchange.com/tour If you consider uploading your file please use: https://blend-exchange.giantcowfilms.com/ Thanks

I know the code is a mess, I'm sorry, but I wanted to leave it like that in order to show the various tries I had. Anyway, I've never written a single line of C in my life (nor I am a proficient python user), but I think you're referring to the fact that the main part of the script in enclosed in a function definition. That's simply because I initially planned to call it in another script, but than changed my mind and I didn't care about reformatting it.

I really don't know how is it possible since the file is the same, but for me the problem with the lighting is there. Both with Eevee and Cycles, when I hide and unhide lights from the viewport (clicking the little eye icon) only the lights coming from above are correctly previewed and/or rendered. Even if I delete all of the others from the scene. Is there some hidden setting I should change somewhere? I'm really a newbie with Blender.
The expression to toggle the light on or off is exactly what I'm looking for, but I wasn't able to find it up to now. Please, tell me.

Yeah, I knew that hiding an object in the viewport has nothing to do with the render, but as mentioned, the rendered viewport shading was wrong too. By the way, thank you, adding those other buttons to the window helped me understand that I should be able to switch the light on and off in the render using "bpy.data.object.hide_render = True/False". Still lights from below don't produce any effect (not even in the viewport) and most of the renders are dark (often even when light comes from above). I can upload the whole code to github if necessary.

No no, I was already using the rendered preview and the problem with the lighting from below is noticeable there. In your file the problem is not present though.
Furthermore, something is wrong with my script anyway, because results are as expected when rendering from within the program (e.g. hitting F12), I mean, they are coherent with what you see in the viewport and what you have hidden or not from the rendering. That's not true when rendering from the script, I guess I'm missing some render setting.

can you post the whole code? Without the entire thing it's hit and miss to debug.


text:
Creating a specific tileable pattern mask

I am trying to create a tileable mask for the pattern above.
I tried to arrange the lines with an Voronoi Texture, with 0.0 randomness and Chebychev Distance Matrix as well as an Color Ramp to get hard lines:
Like this and with Vector Math Nodes like Add and Multiply and finally Mix Color Nodes I tried to arrange the lines, but even after many attempts, I just did not get it tileable, like in the first picture above.
Now I'm out of ideas, how to achieve that. Does somebody has an idea?
Here is what I got so far:

Why do you want to use a Voronoi texture here?

I just want to get the result. The Voronoi gives me lines.

I would use generate texture coordinates instead of object.

From that, use some value to determinate the subdivision scale, modulo and scale the coordinates from it.
Then use 'vector absolute' node as the figure is symmetrical in both X and Y.
Next:

From top to bottom:
Big diagonals are where X equal Y.
Inclined smaller diagonals are where 2 X equal Y.
Shifted lines parallel to the previous where 2 (X - 0.25) equal Y.
Centered horizontal lines are where Y equal 0 but for X less than 0.25.
Bottom/top horizontal lines are where Y equal 0.5 for X greater than 0.25.
Vertical lines are for X equal 0 or 0.5.
 (Blender 4.0)
I realized you may effectively want to use object coordinates in order to have a regular wallpaper whatever the object is.
To do that with the previous settings, modify the begining like so:

Scale down the coordinates with some factor (e.g. 1/64) and get absolute value. The next steps are the same as before.

A million thanks. I see I am far away from even being a noob in Blender :-D

This setup won't stretch 1x2 by itself: if you want that, you'll need to divide to half Y at some step

Ok. First I need to analyze the node tree. I am really eager to understand it completely. I was to naive in thinking craeting patterns would be an easy task.


text:
Design won't show in blender
I created some things on Marvelous Designer and did the step by step to export the documents for blender, now when I import the obj content it will not show. The name and everything appears but I can't figure out what I'm doing wrong. I've tried watching YouTube tutorials but none of them seem to be helping and were from 6+ years ago, I'm using a Mac if that's any help

maybe it's very small and you need to scale up?

Try deleting the default cube and scrolling right in. If that doesn't help try @moonboots suggestion and if that doesn't work we'll need to see your Blend file. You can share it via https://blend-exchange.com/ following the instructions there to copy the link on that page and then edit your question here and paste the link into it assuming it isn't over 30Meg in size.

@JohnEason I hope that works? I didn't have a clue how to work it haha.

Yes that's fine. I'll post an answer shortly.

As far as I remember, the scaling factor for MD without correction is 1000 ...so the object is either much too small or much too large.

Much too large in this case! :^)

Your object has been imported with the origin a long way away from the mesh and at a very large scale. Select the object in the outliner then hit the N key to show the size of the object!

You can scale it down using S 0.01 to reduce it's size which will bring it into view

Now use the Object > Set Origin > Geometry to Origin menu to move the object to its origin and rotate it to the correct orientation using R X 90.

Finally apply the rotation using Ctrl-A > Rotation and you may want to reduce the scale further before applying it with Ctrl-A > Scale.
Incidentally, you can import with a different scale and rotation by hitting the N key while you're in the file selector. But I'll leave that as an exercise for the reader! :^)

Thank you so much! I'm so dumb, but I appreciate you showing step by step <3 you saved me the hassle of searching so much videos!

No problem You can accept my answer as correct if you wish.


text:
Can I lock rotation to the "closest" rotation axis?
I like having close control over how I rotate an object. So I usually only rotate along a single global or local axis at a time.
This requires me specifying the axis I want to rotate around ("r x", "r y", "r z" or, using the middle mouse button). But I often find myself rotating around the axis that is closest to the viewport normal. Is there a simple way to accomplish this that will determine the required axis itself, without me having to explicitly specify it?
n.b.: I don't want to set the transform orientation to "viewport", I want to actually rotate around one of the global x, y, z. I also don't want to align the viewport to one of the axis first (which would require me to figure out which axis to rotate around too).

Setting transform orientation to View and using X axis will be the fastest way to do that. To avoid double pressing X enable Trasform manipulator if you use it and click on red line to rotate the object. I don't think there's any other faster way other than scripting something


text:
Merging Nearby Instances to a single point in Blender Geometry Nodes
With Geometry Nodes, is there a way to merge all the top 3 points coming from distributed particles into a single point (such as the median point of the yellow sphere) in a scene like pictured?

Thanks @Chris that was an excellent example. Here I clarified your solution for GeoNode newbies like myself:

You do not merge three points with this solution, but all points of the end section of your previously created mesh.

if you mean like this:

then you can use this node setup:


text:
Geometry Nodes: Animating a cube array in order
Seems like the tutorials I've been testing are missing on some possible basic concepts that I need help with.  I'd like to create a Geometry node that reveals one cube at a time in an animation in the exact order I have listed below in the attached image. Not important at the moment but I'd like to test this a bit and understand the logic if I needed to use it for other sort orders.

Update so the solution by @Chris seems to do mostly what I need and reversing direction isn't too hard. The only issue I'm finding is where and what nodes to add to get the position of each new instance of each new box as it's created. I wanted to use that to move other objects around.  Tried sample index, field at index... I might have to create another thread for this question.

with this node setup:

you get this:

I might accept that as the final answer but it's going in the opposite direction. I see in your video you're viewing the camera from the opposite direction. I can also see your X axis on the top right is positive left. Would you know how to correct this?

I am sure you are intelligent enough to change that direction on your own! Good luck and happy blending!


text:
Following each new cube being created during geometry delete
As shown in the image I have a sphere sitting in a static position above cubes that get generated one at a time.  I would like the sphere object to move one at at time directly above the center of each newly created cube. If it's not too complicated I'd like it to gracefully glide across as each cube is created with a delay.
Rather than creating a manually keyed animation, I'd like to use Geometry Nodes.
I tried a few things including trying a shared attribute value from GM nodes to a driver of the separate sphere but I didn't know if I could do that like sharing a color with shading nodes. I don't think I can force a move of a separate object from GN.
3 Roadblocks seem to be holding me back:
1 & 2: Passing and Receiving any value / vertex from GN to other objects (so I can affect them) with maybe a driver
3: Getting center position of cube after delete geometry
(This sounded like it might have solved it but it doesn't seem to work in my tests
https://www.reddit.com/r/blender/comments/tb9cbs/geometry_nodes_how_can_i_access_the_position_of_a/ )

I'd like the render to look something like this:

I don't think I understand what your aim is from your description, can you show a visual example? You can use blend-exchange.com to upload files (it'll give you an html code, which you can edit into your post).

@Kuboå thanks for the tip and updated the question.  The complexity is getting the location of each new cube and somehow passing it to the floating sphere so it moves.

i am not sure, but hopefully you mean it like that:

great and I just hid the view and render of the sphere to get your solution.


text:
Help with height map cropping?
I'm trying to apply an entire height map to one plane, but it never appears with the full map, just a portion of it. When applied to a much larger plane, it repeats the still incorrect texture. Can anyone help?

In the modifier change Coordinates from Local to UV?

In the Displace modifier, switch Coordinates from Local to UV, if the unwrap is not correct just unwrap again:


text:
Using a script to set the current values of a shader node groups sockets, as their new "default" values
I'm trying to fix an old discontinued addon, but the new bpy changes in 4.0 are throwing me off. I've tried implementing the new 'tree.interface' elements, but it keeps spitting errors. And of course ChatGPT was of no help as it's stuck on the old bpy.
        materialname = bpy.context.active_object.active_material.name
        material = bpy.data.materials[materialname]
        matnodes = material.node_tree.nodes
        i = 0
        while i < len(matnodes):
            if matnodes[i].select:
                node_group = matnodes[i].node_tree
                j = 0
                while j < len(matnodes[i].inputs):
                    node_group.inputs[j].default_value = matnodes[i].inputs[j].default_value
                    j += 1
            i += 1

Basically I to use this functionality from 3.0 BPY, where it takes your arbitrarily selected node group, and you hit a button that runs this function, and it takes all of the values of the sliders in your node groups UI, and sets those sockets defaults as their current values.
I've been trying to fix this for a while as my workflow is dependent on this functionality for mass amounts of custom group presets, and being able to set their new defaults as their current set display values is important for appending those groups through an addon or simply through the append option.
Many thanks in advance,
Cody (SMOUSE)

fwiw you can replace your while loops with for i in range(len(matnodes)):

node_group is the node group inside the material node tree
node_group.inputs will get inputs of that node_group
to change the default values of Group Inputs of that node_group
you have to change thenode_group.node_tree.interface.items_tree[input.name].default_value to input.default_value by looping over node_group.inputs
import bpy

node_group = bpy.data.materials['Material'].node_tree.nodes['Group']

for input in node_group.inputs:
    node_group.node_tree.interface.items_tree[input.name].default_value = input.default_value

import bpy
from bpy.types import Operator

class NODE_OT_set_group_default(Operator):
    bl_idname = "node.set_group_default"
    bl_label = "Set Group Default"
    bl_description = "Set Group Default Value"
    bl_options = {"REGISTER", "UNDO"}

    @classmethod
    def poll(cls, context):
        return context.active_node is not None and context.active_node.type == "GROUP"

    def execute(self, context):
        node_group = context.active_node

        for input in node_group.inputs:
            # if input.is_linked or input.hide_value:
            #     continue

            node_group.node_tree.interface.items_tree[input.name].default_value = input.default_value

        self.report({'INFO'}, "Group Default Value Set")
        return {"FINISHED"}

classes = (NODE_OT_set_group_default,)

def draw_operator(self, context):
    layout = self.layout
    layout.operator(NODE_OT_set_group_default.bl_idname)

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

    bpy.types.NODE_HT_header.append(draw_operator)

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

    bpy.types.NODE_HT_header.remove(draw_operator)

if __name__ == "__main__":
    register()

That worked flawlessly, thank you very much! :)


text:
How to move edge loops with geometry nodes
I am fairly new to blender and I am starting to use the geometry nodes. Currently I am asking myself if there is a way to subdivide the surface of a cube unevenly. What I mean by that is more easily explained in this image then explaining it by text:
I believe this has to be done with moving the centerpoint of every face in two steps:

move center point of all faces in a row
move center point of all faces in a collum
subdivide

This way I would keep the structure that I want in the xy-plane and not have randomly displaced n-gons.
Is this possible by using geometry nodes?

It looks like you want to move edge loops is this what you want?
https://www.youtube.com/watch?v=NUAXKcfvx7A

@RickT nice question, would be great to have an regular answer :) (or is it dupli here?) Thank you

@knoeterich ... consider to change title to something like RickT's "How to move edge loop" if you feel it right ... uneven subdivisions sounds more like random that is without specific control, and that is not your case.

@vklidu  I can't say if it's really a dup, the user hasn't responded to say if that's what they want or not.

What might be interesting here as well is: do you want this to be procedural, so that you can easily change parameters like number of cuts, which edges and how far they are moved etc.? If so the question would be in which way will all these things be determined? And if you don't need to keep this procedural the question would be, why do you want to do it in Geometry Nodes?

@RickT Yea! The youtube link you attached is what I was looking for :) Thx!

@GordonBrinkmann yes I want to use this procedurally so I only have to adjust one value. I did not try this yes but I think with the method presented in the youTube-video it'll work :)

I think there isn't really a different answer than: use "Set Position" node… And Maths… https://blender.stackexchange.com/a/264240/60486


text:
Force subdivision surface to pass through control vertices
When creating a subdivision surface from a low poly quad mesh, I get a very smooth and rounded surface all over on the subdivision limit surface. However, the limit surface does not pass on the quad mesh vertices. I was wandering if there is any set of parameters or any method to force the limit surface to pass through some specified vertices, while still getting smoothed and rounded everywhere.
I tried playing with the Crease settings on some edges, and with the Loop Edge duplication, but the result is always a loss of smoothness and rounding.
Here is my low-poly mesh:

Here is the subdivision limit surface:

As you can see, the limit surface volume has shrank to the inside of the control mesh. I would like to force the control mesh vertices placement on the limit surface.
Is this possible with Subdivision modifier, or do I need something else?
Many thanks in advance :)

Hello and welcome, is there any reason or can you explain the issue that this is causing to you? The more info you can provide, the better for other users to help you.

Hello Emir, the reason I'm asking this is because I need my geometry to go though some specific vertices of the control mesh. This is a domain modeling constraint on the application I'm building. I would like my final surface to be smooth everywhere, but to still respect the control vertices. The reason I'm using a subdivision modifier is because I very mush like the modeling ease of use and the quality of the final result.

A probably disappointed answer... Does this answer your question? Why does the Subdivision Modifier leave a Gap between Original and Final Shape?

Thank you Emir for the link. It does provide a reasonable explanation to the problem.

If you need final surface to be touching your control points then subdivision surface sounds like the wrong tool. You should be using something like NURBs surfaces on a CAD package

@DuarteFarrajotaRamos I have very limited experience with NURBS, went through the theory once… To my understanding there are no settings that make NURBS curves/surfaces go through the points defining them?

Hi Duarte, I'm using NURBS on other projects, and yes there are ways to force a NURBS surface to go through specific positions. But on this specific project I need to use a SubDiv because it allows for more modeling control and freedom than a NURBS system.

@MarkusvonBroady True, now that you mention NURBs surfaces do conform less then I expected, but depending on the modelling technique, if you veer more towards lofting,  and ruled surfaces, they do conform to defining bounds quite closely

Marking an edge as crease will prevent subdivision modifier from yoinking it out of position. It can be used to keep the key outlines constant while smoothing everything else.

The slow solution
As mentioned in my other answer, here's the easier way, but slower. I use a simulation zone, but a repeat zone can be used instead...
Sorry for a big screenshot, but Blender designers conspire against my vertical node trees...

The adjustment could be accelerated by making the offset depend on the frame number / loop index, or on the last distance to desired position.
Here's the result:

Wow... awesome work! Being completely new to Blender I would not implement this algorithm using that Nodes interface. Actually, I'm not working inside blender, I'm implementing my own application that uses the same subdivision API (OpenSubdiv) used by Blender. So, I will implement this algorithm by code using the good old C++. But many thanks for the proof of concept. It really looks awesome!

I don't have the time or energy for a full answer, but this won't fit into a comment, and is better than nothing, I guess. The behavior you want is probably how beziers with auto handles work:

You can control the smoothing by scaling the handles, that is, moving them towards or away from the point they belong to:

Question is, how to apply this behavior for a 3D mesh? I'll outline the algorithm, that I think can work:

Assume quad-based manifold topology for simplicity. Perhaps the algorithm could be improved to support triangles and n-gons…
Subdivide input mesh, using simple subdivision.
For each face of unsubdivided input mesh, predict where the intermediary vertices will be using linear interpolation between the vertices and find the indices of those vertices using the "sample nearest" node (that's why the mesh has to be manifold because with overlapping geometry you could have 2 vertices at the same place).
Walk through the mesh, using the Repeat Zone, in order to separate loops of edges, and then convert them to curves.
Subdivide the curves with same resolution as in p. 1.
Convert the unsubdivided copy of curves to bezier, set spline handles to AUTO, adjust handles if needed.
Set bezier spline resolution to match the topology (resolution) of the subdivided curves.
Convert the beziers to mesh and loft it, by spawning 1×1 grids, subdivided with the same resolution as in p. 1., and moving the points of the grids by taking the found indices in p. 2., from them, finding the points of subdivided curves (which is easy because they have the same position), and then using the indices of those points, reading the position of the bezier points with same indices.
Merge by Distance.

I haven't tested it, so maybe I'm missing something, it's an elaborate setup, and perhaps you want to test something different, e.g. a simulation that applies subdivision surface on original geometry, checks how the points moved, based on that move these points along normals forward/backward, and try to subdivide again - might give you a good enough result…

Thank you Markus. I like your final advise about the iterative adjustment along normals. It's reasonably easy to implement and it might work. I will give it a try.


text:
Strange Rigify Behavior
I've rigged a mesh. I now want to generate the rigify buttons.
Before I try to generate the rigify buttons, everything is in place, however, when generated, everything looks out of order.

No idea what to do.

Make sure you have applied Location/ Rotation / Scale before you generate the rig..

Besides my comment about applying - which you should do - it seems you added a bit of animation to the metarig = which is a no-no. Go into pose mode and AltR, AltG, AltS - to remove all transforms. Back in object mode - generate your Rig and it all works fine.

authors: Джанибек Абикенов


text:
Anyone knows the correct way of parenting the mesh to the rig?
So, I got myself a robot and rigged it a bit, but when I parent the mesh to the rig with "automatic weights" it goes all laggy, so I think that automatic weights isn't the correct way of parenting this kind of robot, but what is?

Your mesh is set to flat shaded and then smoothed by subdivision modifier that cranks the model to 4 million faces and that is way it is getting laggy. This is not a proper way to make smooth models.
Select the mesh, find "Shading" in the left panel and click "Smooth". This provides smoothing that makes the subsurface modifier unnecessary. If you need some edges sharp, add an edge split modifier. You can further teak which edges are sharp and which smooth if you untick "edge angle" and go into edit mode, select the sharp edges and CTRL-E -> mark sharp and only those edges will be sharp.
The mesh seems to deform well with the amount of faces without subsurface modifier although the resolution still seems little high at certain places depending on the intended use.

Do you perhaps have a video on the edge splitting? I don't understand it

first use the great advice of kheetor to reduce amount of vertices in the mesh to avoid lags, and then retouch a bit a rig itself. if you want automatic weights to work for you you need to length the main bone toward the top of the hat. or if you want the body and the hat to bent then just add some extra bones on its spine. the hat would have a single bone. and of course fingers - they are not covered with bones. and it seems that it's better for its both legs being attached to the wheel to be affected by a single bone (bone chain) instead of two. otherwise you'll have a headache trying to animate the legs ;-)
if nothing works, try to use the "Weight paint mode" (just select a bone and paint its weight manually on the mesh). it's the ultimate solution =)


text:
Need help with making fire
currently I'm making a scene, where I want a torch to have fire, I watched a few tutorials, I made a fire by pressing spacebar --> quick smoke, then I clicked on fire and got a fire animation, is there anyway to make this in render view? It's not an animation by the way, tell me if you need a .blend

You mean to render the fire?

Yep, with the f12 button you know?

did you press alt + A (in the 3d view window) to start the smoke animation?

Which render engine do you use? Blender Internal or Cycles? Provide .blend file if you can to: blend-exchange.giantcowfilms.com

Cycles, posting blend file now

Smoke is rendering actually but it is almost transparent....

I'm assuming you do not have the flame attributes node hooked up to your node set up.

In the material, add an attribute node and type flame into the text field
hook up the fac output to a color ramp
add an emissions node and set its out put to the volume in the material output node
Connect the color ramp to the strength input on the emission node

So you need to adjust this value to make the smoke more dense (see the image below):

Is there any way to add the fire too?

Yes basically you should add a new attribute to the domain material called fire or flame (im not sure), check this tutorial its good: https://www.youtube.com/watch?v=u-zK7Bu8cAI

Also check this : http://blender.stackexchange.com/questions/14262/what-can-you-call-from-the-attribute-node


text:
bone heat weighting failed to find solution for one or more bones
I am guessing you guys get this a lot, but I've tried everything to fix the Bone Heat Weighting Failed error. I have no idea what to do, so if you guys can somehow fix this, then you're amazing.
.blend file below:

Got it. The use of a Decimate object modifier can aid in solving your problem. Note that in my rigging of your mesh, I changed the names and added a bone between the feet. This can be used to move all bones, as all other bones are parented to it.
Solution
Go to the Object modifier tab in the Properties panel and delete any Armature modifiers. Add a Decimate modifier from the dropdown. Select Planar from the three options and set the Angle Limit: value to 6.4. It should look something like this:

Apply the Decimate modifier. Next, select your mesh and then your armature. Key Ctrl + P to open the parenting pop up menu and select With Automatic Weights under the Armature Deform section. The option should look like this:

After a second or two, it should be finished. Here is a .blend file if you want to just download it:

so it didnt work because it had too many vertices?

You need to " set origin to geometry" for the mesh.
The button is located in the (t)toolshelf-->Edit-->SetOrigin


text:
Dark texture on model, even on solid appears also in texture mode
when I go into texture mode I get a pretty weird look of the "body" of the robot, the hat is good though

things i've tried
remove doubles
change some stuff in shading (I'm bad at this though)
flip over
file:

can you upload your file? your problem is what? the body is half-dark?

How should i do that?

http://blend-exchange.giantcowfilms.com/help/

I did so, it doesn't appear on solid anymore but still does on texture  hope you can help me out

i can't understand . . . please explain better you can and in the easiest way your problem

It's dark you see, the body and it shouldnt be

No textures are packed into your file, pack them by going to File>external data> pack all into .blend The normals on your hat object are flipped as well, that may help you. Recalculate them with Ctrl+N with all selected in edit mode. I would also suggest adding more light than a single point lamp to your scene.

I didn't see any problem with mesh except for hat which had normals flipped. Other than that it seems different file was uploaded compared to the screenshot.

Sorry, I've completely worded myself wrong, i've already fixed the black on solid mode, however, its still in texture mode, how should i fix that, sorry again.

ive added some light it now look slike this http://i.imgur.com/pueeHJJ.png


text:
Face keeps disappearing
I'm using the source engine with blender, however, my face keeps disappearing, how do I fix it?
The disappearing faces are red, you can also download the blend

Is your face an NGon, does it have more than 4 sides? It looks like the Source Engine doest like ngons. Try making your model all composed of triangles and 4 sided faces only

how do i do that?

That is generally something you strive for while building your model so it is planed that way from scratch. Here is a guide that may help you http://topology-guides.tumblr.com/ For you case now may be too late for a simple solution without too much work, try first using a triangulate modifier and see if it solves the problem.

One other common cause for disappearing faces that may be affecting your model is incorrecty facing normals. Try recalculating your mesh normals be selecting all faces and pressing Ctrl+N to make all normals consistent

It appears like you have reversed normals.


text:
How can I script moving bone constraints up the constraints stack?
I'm running into walls trying to reorder the bone constraints stack on blender 2.78.
I have an armature for which I want to re-order bone constraints on every bone. The way to do this seems to be to use
bpy.ops.constraint.move_up(constraint=name, owner='BONE')

Where name is the name of the constraint.
I'm assuming I need to be in pose mode and I need to select the bone I want to operate on, so:
bpy.ops.object.mode_set(mode = 'POSE')
bone = bpy.context.active_object.pose.bones['the_bone_i_want']
bone.bone.select = True
bpy.ops.constraint.move_up(constraint=name, owner='BONE')

This produces a RuntimeError: Operator bpy.ops.constraint.move_up.poll() Context missing 'constraint'
OK, so I'm in the wrong context. Why? Which context has the necessary constraint?
I also thought about changing the active area to the properties beforehand, like this:
bpy.context.area.type = 'PROPERTIES'

This does change the active area, but doesn't get rid of the error message.
Can anyone point out what I'm doing wrong, or give me a way to reorder bone constraints that works?

I figured it out:
import bpy

name='Secondary Controller'
bone_name = 'ConstraintHolder'

bone = bpy.context.active_object.pose.bones[bone_name]
bpy.context.active_object.data.bones.active = bone.bone
my_context = bpy.context.copy()
my_context["constraint"] = bone.constraints[name]

bpy.ops.constraint.move_up(my_context, constraint=name, owner='BONE')

Seems like I need to add the 'constraint' key to the context myself, and pass in the constraint I want to work on. I also need to continue passing the name of the constraint to the operator. Doesn't make any sense, but it works.
Thanks to Campell Barton: https://developer.blender.org/T39891

This can now be done without bpy.ops.
bone.constraints.move(from_index, to_index)
https://docs.blender.org/api/current/bpy.types.ObjectConstraints.html?highlight=constraints%20move#bpy.types.ObjectConstraints.move


text:
Create number grid of text objects in Animation Nodes
I'm trying to find a way to use animation nodes to generate a grid of numbers that would look something like this ...

In pseudo code, I would imagine it working something like this:

Generate grid mesh
Get Nth mesh point
Generate new text object at Nth point with index value as text input

I've tried doing this in animation nodes with an object instancer. What ends up happening is that all the generated text objects end up with the same offset, and the same content (i.e. the last index value). For some reason it is only applying the values from the last iteration of the loop to all the text objects!
See here:

Are there any Animation Node masters out there who can tell me where I'm going wrong please?

try to check "Deep Copy" in the Object Instancer node

Well it seems that I've answered my own question.
My mistake was using a source text object for the instancer. Instead, I just disabled the "Copy from source" setting and then selected "Text" from the drop down list of available types to instance.

The next challenge will be getting the numbers to count up horizontally instead.
Update!
I vastly simplified the node network from my (deleted) post yesterday, and made it able to order the numbers in anyway you want, up down left right, down up right left, etc.

There's still just the issue of not having any access to the font object material at all.

To get the numbers to count up horizontally instead of vertically, just switch the X and Y offsets in the object output

that is the better than my "quick fix" to the problem :)

My next need is to get the numbers to count in an "Up down, Up down" - i.e. getting odd numbers on one row and even numbers on the other row.

I'm going to try making two loops, one for even, one for odd.

Changed my mind, I think I can do it in math ...

@DavidGilson Please accept your answer if it answers your question.


text:
Cycles camera: Trying to understand Fisheye Polynomial lens and approximate a convex parabolic mirror
According to the documentation, the polynomial fisheye lens in Cycles can be used to approximate a wide range of fisheye cameras by using the formula
$$
r = \sqrt{x^2 + y^2} \\
\theta = k_0 + k_1 r + k_2 r^2 + k_3 r^3 + k^4 r^4
$$
where $x, y$ are given in $mm$ on the camera sensor and $\theta$ is calculated in radians.
I'm confused by this though, because:

there is no camera sensor size setting in this mode, so the value must somehow be hardcoded, right? From manual testing, apparently, choosing $k_1 = 10°$ and all others $k_{i\neq1}=0°$ will essentially reproduce Mirror Ball.
I see no reason why these coefficients are given in $°$ (degrees) in the UI. As far as I can tell, these $k_i$ do not represent angles?

I would like to approximate a lens equivalent to a convex parabolic mirror but due to these confusing design choices I'm not sure how to do so / whether my values are wrong because I didn't do the relevant conversion correctly, or because of a different issue.
As far as I can tell, to get something parabolic in principle, you need the polar coordinates of the relevant lens shape expressed as a function $\theta\left(r\right)$. Unfortunately, the result involves trig functions, but I can get the closest match up to fourth order by doing a Taylor expansion accordingly.
I think my values ought to be either of:
$$
k_0 = 0 \ \text{or} \ \frac{\pi}{2} \\
k_1 = \frac{1}{2} \ \text{or} -\frac{1}{2} \\
k_2 = 0 \\
k_3 = -\frac{5}{48} \ \text{or} \ \frac{5}{48} \\
k_4 = 0
$$
so my polynomial is $ \theta = \frac{\pi}{4} \pm \frac{\pi}{4} r \mp \frac{1}{2} \pm \frac{5}{48} r^3$
I'm not sure which of those would be correct, but one or the other should be.
However, that doesn't really make a whole lot of sense unless I figure out what the actual units here are supposed to be. I'm expecting a result where I don't (and indeed can't ever) see the full 360° view because a parabolic mirror is never going to be parallel with the incoming ray (unlike a mirror ball that always shows a 360° view in it, except for a small distortion where it occludes its own backside - but in the idealized mirror ball camera mode, that occlusion is 0, so it's a full 360° view. In fact, it's equivalent to Equisolid at 9mm apparently)
What I'm actually getting looks like:

So what is the right approach here?
Note: I'm not even sure whether my formula is entirely right. But due to the unclear documentation and way it's shown in the UI, I don't know whether the formulae are wrong or I simply have to interpret the $k_i$ differently.


text:
Why 2 objects have same location, orientation, scale and origin yet they're displaying at different positions on the viewport
I opened an old large project I worked on as a newbie and I wanted to clean up a batch of objects, removing excess faces, edges, vertices as well as fixing the normals. In order to copy the cleaned object to another location (replacing another object and in the provided example another column support), I need to figure out how 2 separate objects in 2 separate displayed locations is showing the same location, orientation, scale and origin.
I noticed this anomaly when I tried to link my corrected object with a incorrectly modeled object. Selecting SupportOnly.005 object then shift selecting SupportOnly.004 then pressing Ctrl+L then Link Object Data as per:
Is there any way to replace an object?
Maybe not necessary for non-coders but here's python code on how I found out both objects had the same above data:
import bpy
print("")
print("------START-------")

active_object = bpy.context.active_object
selected_objects = bpy.context.selected_objects

print("Selected objects:")
for item in selected_objects:
    print(item.name)
    print(f"  Location: ({item.location.x}, {item.location.y}, {item.location.z})")
    print(f"  Orientation: ({item.rotation_euler.x}, {item.rotation_euler.y}, {item.rotation_euler.z})")
    print(f"  Scale: ({item.scale.x}, {item.scale.y}, {item.scale.z})")
    print(f"  Origin: ({item.matrix_world.to_translation().x}, {item.matrix_world.to_translation().y}, {item.matrix_world.to_translation().z})")
print("------DONE-------")

and this is the result
------START-------
Selected objects:
SupportsOnly.004
  Location: (-0.0012478828430175781, 0.0014386177062988281, 0.0)
  Orientation: (0.0, -0.0, -0.00023472122848033905)
  Scale: (1.0, 1.0, 1.0)
  Origin: (-0.0012478828430175781, 0.0014386177062988281, 0.0)
SupportsOnly.005
  Location: (-0.0012478828430175781, 0.0014386177062988281, 0.0)
  Orientation: (0.0, -0.0, -0.00023472122848033905)
  Scale: (1.0, 1.0, 1.0)

Thanks for any help or tips.
Example file download:
https://drive.google.com/file/d/1IVcYJrbPXnD3nH6kXYHey-8EZ7Jxm3sJ/view?usp=sharing
Solution: Thanks for the background and solution @moonboots!
The problem was that the origin of each object of the file is not located at the center of each mesh but rather at the same point. It began when I separated the building support object into multiple separate objects (P->Separate), after doing so, I needed to set origin to geometry (Right click > Set Origin > Origin to Geometry) for each object.
Details:
The key thought here is the visual display in the viewport is a calculation of the geometric properties of the mesh (such as vertex locations) and the transform properties of the object (such as location, orientation, scale, and origin).
Example Model:

The origins of the 4 objects are at the same location (almost at the center of the scene), that's why they share the same location

@moonboots, can you explain that another way?  Are you saying that the example objects are such a small fraction apart so the order of magnitude displayed in the panels and python isn't showing this minute difference?

the origin of each object of the file is not located at the center of each mesh, it's far away, and for some reason they are all at the same location, but you can change the origin location with a right click > Set Origin > Origin to Geometry

@moonboots, jackpot. Both had origins at a central point on the floorplan. Would you happen to know how it calculates the position on the viewport if it seems all the object data relative to position was the same on both objects?

I'm not sure what you mean, the thing that probably happened is that you had one object with these different meshes and at what point you separated each mesh as a separate object (P > Separate), but this operation doesn't realign each origin to the geometry of each object, it keeps it where it was when the meshes were part of the same object

@moonboots, yes I did separate them. What still isn't making sense is how does Blender calculate where each object displays in the viewport. If Blender was only using 4 data fields [location, orientation, scale and origin] then both objects would be displayed over each other.

i think you are confusing object and mesh, an object is like an empty box that is defined by an origin and some transformation data (loc/rot/scale), the object can contain a mesh or another one, but the mesh can be far away from the origin

@moonboots. Yes. Thanks I am confusing both.  The problem then is in the mesh vertices in relation to the world origin as per your suggestion. Thus if the 8 vertices of the rectangular cube is linked (via Ctrl+L) it's not really copying over the objects origin but the mesh data.

If you link the object data via Ctrl L, the object will keep its own origin but it will get the same mesh as the active object, if the origin of the 2 objects are overlapping, the meshes will overlapping as well

What probably happened is that you had an object with several meshes inside and at one point you've separated these meshes with a P > Separate Selection:

The result is that you have now 2 (or more) objects, but the origin stays where it was before the separate operation, so as long as you don't move these objects the origins will still overlap. As the Location of the object depends on the origin position in the 3D scene, these objects share the same Location, even though their mesh are not overlapping. If you want the origin to be placed at the center of the mesh geometry, in Object mode right click and > Set Origin > Origin to Geometry.


text:
how to isolate and texture a certain area of a mesh

hello so i sculpted this beautiful boy over here and i want to make the area around his eyes alot darker than the rest of his body,most of the textures are procedural so is there of doing it in only the node editor.
thanks to moonboot for the answer

if you absolutely want to keep it procedural you could use Vertex Paint?

could you explain further?

If you don't want to use any image texture you can do it with Vertex Paint:

Switch to Vertex Paint mode, open the Tool panel, choose a black color, select the Blend > Mix mode, paint around the eyes. The vertex paint only uses the vertices, so its smoothness and precision will depend on your mesh density:

As you can see it has created a Vertex Colors group:

In your Shade Editor, create a Input > Attribute node. In the Name field, type the name of the vertex color group you've just created. Now you can use it as a factor in a Mix Shader:

Note that in 2.80 there is a "Vertex Color" node which lets you select directly the vertex color group rather than having to type the name. But you lose the "Fac" output which you can get with a "RGB to BW" node.

oh ok, I used 2.8 but you must be talking about a later version

Oh, right, might be 2.81 :) sorry


text:
Rigid body on animated mesh is not updating
Hi I have this ring interacting with the neck of the character. It should update to the movement of the neck but for some reason it behaves as if the neck was always at the position of the first frame an the ring just slides without moving left or right.
I've tried deleting the backed and rebeaking but nothing seems to work.
Any ideas if I'm missing here something?
Thanks in advance
Edit: Based on the comments feedback , I created this repo https://github.com/RDaneelOlivav/animation_tests, where I create the same scene with a generic animated character in mixamo and the same ring:

Edit2: I applied the deforming in the animate dmesh an dit works much better. Its still behaving a bit wired, because eteh ring doesn't rest on the top of the neck, which I don't really know how to fix that. I increased the sensibility to 0.0015 but I don't quite know what to do to improve this.

pls provide blend file, because it could be a lot of reasons. Rigid body animations are pretty complex and depend not only on settings in rigid body, but also in things like applied scale, mesh topology etc.

As @Chris says.. ideally, with a reduced case that still shows the problem.. maybe a simple cylinder  and ring.. that should help you debug, too.

Hello maybe share your file?

Hi, Sorry about teh late response:

Hi, here you have the repo with an example with a generic mixamo animated model https://github.com/RDaneelOlivav/animation_tests . I've edited the question also with more details

Indicate for both meshes, the collision system should take deform modifiers into account:

Thanks! It worked! I had just to adjust the sensitivity to try and make it fall better as a ring would do, but still not quite there. But at least it doesn't behave super strange. I posted the new result in the question.


text:
Model deforming when I export it as FBX
I'm new to Blender and used a tutorial to make the humanoid model. I animated a walk animation and I have an idle animation as well, though when I select the mesh and armature then export it as FBX, the mesh gets deformed. I've tried changing the export settings but I'm having no luck in fixing the issue. Is there something wrong with the armature itself?
Image of problem:

This is my blend file:

I would appreciate any advice, I'm still very new to Blender


text:
Weird texture problem with glass
I'm trying to make a posion, however, when I try and aim the camera,it still shows the wood, not sure what's causing it.

Hi gabe. 1: your glass wall have zero thickness. 2: this is predictable behaviors, because glass reflect wood texture and also there are glass refraction

1:  other words: you made one solid glass object. You have no empty space in the bottle.

The answer was from Subol, he said that it wasn't thick enough, to make it "thicker", add a solidify modifier.


text:
weird rigging problem
I made a little guy and rigged his legs with an Armature modifier. I've done the weight painting manually. However, when I attempt to move his leg, it doesn't follow the armature like it should. Any fix?

Can you include a .blend file?

It looks like the right leg of the mesh is not totally (or not only) rigged to the right part of the armature. But yes, a .blend file may help to check that.

That looks like a weight-painting issue, like the leg mesh is 50% weighted to the right leg bone, and 50% weighted to the left, or some other set of bones.  Try weight painting with 'Add' mode and make sure your brush is set to 1.0, and 'Clean Weights' after you're done.

http://www.mediafire.com/download/xnixcls52bghyjl/gabennn+n+n+nn+.blend1 Did it on mediafire cause its above 30 mb

It's your weight painting. Every single one of your bones has too much influence over the mesh. Luckily, there is an easy solution.
Solution
First, select the mesh and delete the Armature Deform object modifier. Next, RMB select the mesh, then Shift + RMB select the armature (make sure both are in Object Mode) and key Ctrl + P to open the parenting menu. Select With Automatic Weights under Armature Deform (pictured below). It may take a while to parent because of the high vertex count. Afterward, your mesh should now have reassigned weights and move perfectly.

The Parenting Menu.
I do not have media fire, so I could not include a .blend file. If you have any question, though, ask away.
UPDATE:
The use of a Decimate modifier set to Planar and Angle Limit: 6.4 can solve the Bone Heat Weighting Failed issue. Read more about in my answer here. Download a rigged and finished .blend file below.

Hmm, it said, it failed to find solutions for one ore more heights or something like that, thanks for the help for now though, trying to fix it

Posted the good blend for anyone that could help me, sitll cant do it

Still cant do it

@gabe I answered your newer question and updated this one. This time, I included a .blend file, so you should have no issues. If you believe that my answers here and also there helped, please consider accepting one or preferably both. I would greatly appreciate it.

Your mesh have too many unrelated bone influences.  Your best bet at this point:

Get into weight painting mode
Select all the bones
Hit W >> Assign Automatic from Bones.
Viewport menu >> Weights >> Normalize All.

If you do make any adjustments, make sure the brush is set to 'Add' and make the power 1.0.  The lion's share of weight-painting can be done this way.
Slightly unrelated: the model has way too much geometry for the detail that it has, and you can likely half, even quarter the amount of faces you have without losing any meaningful features.  This will ease up on your filesize, and viewport performance.  You should also give your bones meaningful names (Femur.R, not Bone.004).

how do you select all bones?

If you have a bone already selected, hit a twice.  If none are selected hit a once.


text:
Weird line in my mirrored mesh
was following a tutorial where I stumbled into this weird line in my mirrored mesh (sorry for the feet lol)

You can also download the blender file

Problem
This is caused by faces inside your mesh. The main sign of this is that the crease only appears when subsurf is turned up; the inside faces add weight that pulls the verticies inwards (according to the subsurf algorithm).
Solution
Tab into edit mode and uncheck the X box in the Mirror modifier. Your properties panel should look like this:

This will leave you with half a human. Change into face select mode:  and select these faces:

Key X and select Faces. Tab out of edit mode and recheck X in the Mirror modifier. This is the repaired mesh:

I had a similar problem, And I just increased the merge limit in the mirror modifier, and it worked for me :)

I had a similar problem after applying the mirror modifier (no crease but a sharp line between mirrors). What worked for me was to select all and use Mesh - Normals - Set from faces in edit mode after the modifier was applied.


text:
Bone influencing on both sides
I've created a rig and added "automatic weights" to the model. The thing is, the left side bones have influence on the right side, and the right side has no influence at all. I can't even correct it by weight painting, once the left side paints the right one at the same time. Why does it happen and how to fix it?
*The image shows what happens when I move the left arm.
Thank you!

maybe apply scale? recalculate normals?

check out the weight paint maybe it the other side is colored with red or yellow when it should be blue

@moonboots - The normals are correct, but I'm not sure what you mean by " apply scale ".

@BillBoholst - Yes. The right side is colored in the same way as the left one ( when I select a left bone ); it's creating a simmetry. However, the right side ( right bone ) is completely blue. So I'd like to paint the right side at the same time I correct the left one, otherwise I'll have to adjust both sides manually.

Here is the sequence of steps I used to get behavior that works as desired. There may be other approaches, but this worked for me:
Start by putting your Mirror modifier at the top of the Modifier Stack and applying it. Next, apply the Armature modifier. We are going to recreate it.
With your armature selected, go into the Object Data tab and turn on only the first bone layer, the one with your Def bones in it. Now select your character mesh and shift-select your armature, and from the Ctrl-P menu, bind armature with automatic weights. A settings box will show up at the bottom left of the screen. Open it and check the X-Mirror box. I have seemingly never needed to bother with this before, but I consciously checked it this time.
After the bind is finished, make sure your armature is selected and go back into the Object Data Properties tab to get access to the bone layers once again, and now toggle to the bone layer for your TGT skeleton.
When you rotate the bones, the arms and legs move independently.
Theory: You had never applied your mirror modifier before beginning your bind. The binding with automatic weights tries to create unique vertex groups for all the bones, but it also needs unique mesh locations for all of them also. Unfortunately, a mesh with a Mirror modifier currently unapplied technically does not truly have two different sides, but only one, until you commit to it having two by applying the Mirror modifier. My guess is that when the bind tried to create vertex groups, it couldn't do so properly, because there was no other side to put the groups. So it placed them in such a way that both arms, and both legs, would always move together.
Here is the repaired version of the file.

Thank you!
Your theory is completely right. However, I'm not sure why this would happen to my model, whereas it worked on his.The differences were:
1- He chose " Empty groups " instead of " Automatic weights ", because his model was made of spare parts. He also applied it manually, by selecting the bone's vertex group  and selecting the vertices; then adding it to the vertices he wanted it to have influence on.
2 - He managed to apply it on one side ( with the mirror still unapplied ) and it symmetrized on the other side correcly and automatically. Not sure how it happened.

I was wondering if a model is created by just " one mesh ", you need to apply the mirror before, or it has something to do with the option you select to deform your amarture.
The second model he was using, more like mine, he did apply the mirror before adding the armature.

In answer to your previous questions:
1 - Yes, I'm following a course called " The Art of effective rigging in Blender ". I no doubt recommend it.
2- Apparently you could work with 1 set of bones, but he's using this method mainly to avoid bugs when the model goes to another software, like Unity. Somehow the def-bones shouldn't be parented among themselves and it would work out.
3 - I don't know if there're other ways to replicate it, once I don't have much experience with rigging.

Put the name of the course on youtube and you'll find on his channel a timelapse of him creating the second character's rig. Maybe you can figure it out.

This is all very interesting. It may be that my theory is only half right. But since your YouTube instructor created the initial bind with empty weights, my thinking is that my original reasoning still follows to some extent, because clearly, he wanted to have complete control over how the vertex group weight values would be assigned, and so opted to do things manually. Though I don't know to what extent it would be possible to keep the Mirror modifier unapplied, and yet still avoid your undesirable results. So because of that, I guess we would have to conclude that your mystery still remains.

I've been working on the rig but I haven't been able to get rid of shoulder bone's influence on the eye/head. I already used weight paint and all that and even when I control its influence manually by selecting vertices it doesn't change. Any ideas?

Check and see if you have more than one armature modifier. Sometimes an extra one gets created accidently and when it does, it often leads to double transformations or other weirdness.

There's only one armature, but I created two groups of bones ( deformation and target. The deformation bones are being constrained by the target bones; a copy transform constraint. ) .
I only checked " deform " on the target ones. I've done it before, it should be working...

Can you upload your file? I'd be willing to take a look at it.

You can download it here : https://www.dropbox.com/s/0v3f3l3b13z2iak/bear_problem.blend?dl=0

I must confess that I have yet to create a rig that has multiple sets of bones, where only one set actually deforms a mesh. So I don't really know how to do what you are trying to do, but I was hoping to learn something about your process and identify the problem anyway. I wanted to ask: Were you following a tutorial to get this far? And also: What happens when you try to work with a single set of bones? Can you get the bind to behave? Finally: Is it possible there's a proper process for duplicating the skeleton within a single armature object, where duplicating it in other ways causes issues?

Observation: The strange transformation behavior of the limbs disappears when unbinding the mesh. Did you discover this, also? I find this very strange. The armature modifier is connected to the problem somehow, but I don't know how this could be. I've never experienced anything like it.

Observation: The leg bones on your TGT skeleton have no parent listed under Bone properties. Likewise, neither the shoulder bones, nor the leg bones for the Def skeleton have a parent listed under Bone properties either. Fixing this does not seem to fix your issue, but I still found it interesting and possibly worthy of mention.

Observation: Changing the Modifier Stack order seems to affect the weird limb motion. Placing the Armature modifier at the top of the stack changes the direction of the rotations on the strangely connected limbs. This change fixes nothing, but is an interesting clue.

OKAY! I think I figured it out. See below.


text:
How to apply fcurve modifiers on top of each other, like object modifiers?
I have a looping animation made up of a few keyframes and a Cycles fcurve modifier.
I'd like to introduce some random variations so it doesn't look like an exact loop, however the cycles modifier always appears to be applied last; random patterns produce by the noise modifier are repeated as well:

Is there a way to do this without adding a ton of empties and constraints?

Have you considered the NLA?
Add Noise to your original fcurve.
Cycle with strip repeat
Add Noise to the NLA strip

Add Noise to the animated influence
Add noise to the animated strip time.

Produces some random patterns over the cycles, with a fair touch of overkill.  Just the repeat and noise modifier in the NLA would suffice.

authors: Дмитрий Хохлов


text:
What is the purpose of the "active" toggle on fcurve modifiers?
What is the purpose of this toggle?

What can it be used for?
The manual page doesn't mention anything about it as far as I can see.

I believe it designates which modifier's properties are being "displayed" on the graph editor canvas.  For an envelope modifier, for instance, if you look carefully at the graph display there are dots for the control points and a stippled line for the envelope limits, of the "active" env mod.

For example, if I click on the noise modifier and it put my mouse over it, it says "F-curve modifier is the one being edited":

and if I click on the noise modifier and it put my mouse over it, it says "F-curve modifier is the one being edited":

The graph displayed looks the same whether one or the other is selected.
It basically says which modifier you clicked on
Maybe this could help:
http://www.blender.org/api/blender_python_api_2_75_3/bpy.types.FModifier.html

Hm. How is this useful?


text:
Is it possible to set the vertex shader without overriding the fragment shader?
I'd like to make vertices of an object randomly move around a little. To do this, I created a vertex shader.
I assigned the vertex shader to the object's material with shader.setSource() like so:
import bge

cont = bge.logic.getCurrentController()

VertexShader = """

uniform float time;

void main() {
    gl_Position = gl_ModelViewProjectionMatrix * gl_Vertex + sin(time + gl_Vertex.z);
}

"""

# dummy fragment shader
FragmentShader = """

void main() {
    gl_FragColor = vec4(1.0, 0.0, 1.0, 1.0);
}

"""

mesh = cont.owner.meshes[0]
for mat in mesh.materials:
    if mesh.getMaterialName(mat.getMaterialIndex()) == "MAleaves":
        shader = mat.getShader()
        if shader != None:
            if not shader.isValid():
                shader.setSource(VertexShader, FragmentShader, 1)
            shader.setUniform1f('time', bge.logic.getRealTime())

However I'd prefer to use the blender material shading instead of the fragment shader. How can I do this?

Does Blender support geometry shaders?

@iKlsR unfortunately no, at least as far as I'm aware.

While I was digging through the docs one day, I stumbled upon the gpu.export_shader(scene, material) function, which seems to allow exporting the shader code of blenders internal materials. Note that this call eats non BGE types. Here is an example which extracts the code for a simple material on a lovely blue cube (*.blend below)

It should be possible to combine this extracted fragment shader with your own vertex shader (e.g. copy from console and paste in your BGE script).

Thanks for the answer! Unfortunately getFragmentProg() and getVertexProg() return blank strings for me..

You are right. I was looking for a way to extract Blenders GLSL code one day and found a function which may help you probably. It's not the getFragmentProg() and getVertexProg() as in my initial answer - I edited it accordingly.