text:
How to use emitter for generating thick forest so that trees would not intersect?
I am trying to make thick forest in blender using emitter or hair emitter. The problem is that with huge ammount of trees they intersect with each other and I do not want that to happen. I did use various setting, groups and tricks without success. Does anyone have idea how to make it work? Here you can find blend file

You might be interested in this answer: http://blender.stackexchange.com/a/68389/28015

I would suggest to disable Emit in Random order.

Particles in this case are emitted from faces. Every faces has it's own id. With the Random opton enabled you are asking Blender to pick a Random face id to generate the next particle.
In this case, where your simulation does'n run trought time, means that is very likely to have a particle create in the same place of another.
Let's say you have 100 faces. First random id is 1, so a tree is generated in Face1. Than pick another id, randomly..it may occour to pick the same id..1, so the generated tree will be overlapped to the previous one. It may seems that you have a low probability to pick the only 1% that is already came out, but you have to consider that for each particle cration iteration, the number of "free" ids lower, so when you are at half of the particle cration, you'll have 50% probability of overlap.
If this effect is not very strong is because you have also Random distribution option enabled.

With that, you are asking to position randomly the created tree on the face. So , despite they are created on the same face, the might have different location. On th other side, it may occour that two tree of born in adiacent faces, let's say along the common border, will be very near, causing overlap.
Particles generation is not aware of where other particles have previously been generated (it would be very high computing demanding for large numbers), so for now it is not possible to have a random distribution without any overlaps.

One possible workaround can bw to subdivide your mesh till the faces are almost the size of the trees XY bounding plane. Now you should have about 2000 faces in the "forest area". If we put without a tree in the center of each faces we would be able to create about 2000 trees without any overlap.

This obiuvsly resamble more to a plantation than a forest, but by lowering the amount of trees and the use of voronoi density map:

you should be able to dampen the "grid" effect a bit.

Thank you for detailed and fast reply. Sadly I plan to make forest on low poly terrain but still this is quite usefull workaround that I will use in future projects. Hopefully someone will make add-on someday that will allow to generate nice forests without using emitters.

You can use two different planes, one lowpoly and one for emission. Just hide the emission plane below or make it unrenderable or transparent. Or make particles real by converting the particles.

Nice explanation! Are you sure heavy computation is the reason an overlap prevention feature doesn't exist? I hope such a feature will be added in the future. In the meantime, I solved this problem by: First making a particle system to scatter single-vert objects. Then I converted those particles to real objects and joined them into one object. Next I did a Remove Doubles operation at a threshold that would just remove the ones that appeared too close. Finally, I used this new point cloud object as my emitter mesh with the particle count matching the number of verts on the mesh.

It wouldn't be impossible to find a "free" location for the particle, but it should at least be calculated the position of each particle on the surface and (at least) it's bounding box. I'm not saying this is impossible to implement, is just not handy (particles were firsty thought to simulate large numbers of tiny and moving objects). Not to mention that there are some current features (e.g. rotation, size, emission vector...) that would make the formula much more complicated in order to preserve their functionalities.

That's a good solution @Mentalist: post that in your question when you have time! Even if it has some limitations [e.g. is not "interactive" as a particle system (you had to bake it), it doesn't take into account surface normal or particle size (just location)] I think it could be a nice way to achieve a result with the current tools.

Poisson disk sampling
Since the coming of Geometry Nodes we have some tools that can be useful in distriubuting points onto a surface.
From the page manual about Point distribute node

The Point Distribute node places points on the surface of the input geometry object. Point, corner and polygon attributes of the input geometry are transferred to the generated points. That includes vertex weights and UV maps. Additionally, the generated points will have a normal, id and rotation attribute.

Poisson Disk: Distribute points randomly on the surface while taking a minimum distance into account.

You need to set a minimum distance to ensure some room between the particles.


text:
Comprehension question about "Interpolation from Curve Mapping" node
I do not understand properly the behavior of the "Interpolation from Curve Mapping" node.
At all interpolation nodes the output value of the corresponding Evaluate node is "0" at positon "0" and "1" at position "1". Except for the "Interpolation from Curve Mapping" node; at this node the output value is "-0.5" at positon "0" and "1.5" at position "1", even though the first point of the interpolation curve is at "0,0" and the last is at "1,1".
Why behaves the "Interpolation from Curve Mapping" node like this?

I see unexpected behaviour as well.  Not the same as yours.  In my experiment I can produce negative values on both ends even though I expect non negative values.

May I add a picture to your question which is mentioned above in the comment?

This (at the first glimpse) unexpected behavior exists because otherwise you can't create certain types of interpolations. eg the 'back' interpolation with an overshoot would not be possible.
This is why AN (Animation Nodes addon) remaps the Y values: 0.25 -> 0; 0.75 -> 1
All values below 0.25 or above 0.75 will be the 'overshoot' (and you need this overshoot quite often in motion graphics..)
Fortunately, Blender draws the horizontal lines in the curve mapping editor so that it is easy to see where 0.25 and 0.75 are.
Use the Debug Interpolation node to see the mapping performed by Animation Nodes.

If the remapping would not exist, there would just not be enough space in the node ui to have control over the overshoot:

Can you give an example of why [you need this overshoot quite often]?

It is mainly used for Motion Graphics. eg when you want to animate an object that flys into the scene it looks much better if it goes over that target and comes back afterwards.

Your answer is unclear. What is "that" which you implemented at first and what is "it" to which you reverted? What is "that" for which there is a reason (2nd sentence)? And what is "AN?" Please make this a complete answer.

Sorry for being unclear... I hope it is a bit clearer now.. Tell me if not

I read what you wrote. I understand the general concept of overshoot.  I do not understand how this assists in the creation of overshoot.  Do you have something already written or a simple node example which illustrates the usefulness of this? A link to written words ...  or nodes example?

edited the answer again... I hope it is clear now, because I have no idea how to explain that better.

If the problem is that, if the remapping would not exist, there is not enough space in the node ui, than why you can not simply use the zoom function? If you set the "clipping options" (dot icon) accordingly, than you can zoom out as you need it.

thanks for pointing that out! I didn't know that to be honest. I just tested it but it does not really look better in my opinion. And I find it relatively 'hard' to setup. Will see, maybe I will change this remapping in a later release.

That's right, you have to know how it has to be configured. But the zoom-variant also has some advantages: 1. No astonishment at the mapping of the values (the output value at x corresponds to the adjusted y value). 2. No restriction of the curve point values (now the values are (visually) limited to 0,-0.5;1,1.5) 3. No mapping to remapping, when you create the curve (as in my case) from a specified list of x-y-values. Perhaps it would be the easiest solution to show a tutorial in the documentation how to zoom out. Many thanks for answering my questions.

That convinced me. The next version will contain the new behavior. thanks :)

source: Stack Exchange

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

sort: votes


text:
Preferences Shuts Down Blender
I am trying to simply change some preferences, but each time I click on "User Preferences", Blender just turns itself off. I can't make any adjustments, and am missing out on functionality as a result. Could you help me understand why this is happening and what to do, as I have attempted to uninstall and reinstall Blender several times to avoid this problem, but have been unsuccessful.
Sincerely,
Cole

You probably have outdated drivers, please try updating your drivers, or you could try going into user preferences by changing 3d view-port window to user preferences

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


text:
Iterate over Properties of an Operator
I'd like to iterate over the properties (names and values) of a dialog operator in its execute method.
My current way of doing this involves a metaclass and multiple inheritance...
Is there any simpler way?

To iterate over all RNA properties you can access:
self.rna_type.properties.keys(),
In most cases you'll want to skip rna_type, which is added automatically.

Example operator which prints its properties in order.
import bpy
from bpy.props import StringProperty

class SimpleOperator(bpy.types.Operator):
    bl_idname = "object.simple_operator"
    bl_label = "Simple Operator"

    foo = StringProperty()
    bar = StringProperty()
    baz = StringProperty()
    spam = StringProperty()

    def execute(self, context):
        for k in self.rna_type.properties.keys():
            if k == "rna_type":
                continue
            print(k)
        return {'FINISHED'}

def register():
    bpy.utils.register_class(SimpleOperator)

def unregister():
    bpy.utils.unregister_class(SimpleOperator)

if __name__ == "__main__":
    register()

    # test call
    bpy.ops.object.simple_operator()


text:
wm.context_toggle for Toggle On / Off X-RAY Armature ( Context attribute )
hi im looking for correct context attribute to toggle on / off with shortcut key at input editor
XRAY armature because i find use it often and decided to make it as shortcut

i tried the following context attribute but gives error

active_object.data.show_x_ray
Object.Show_x_ray

thank you for answers

Have you tried object.show_x_ray without the caps? Python is case-sensitive.

Set your custom keyboard shortcut like this:

Key points

When setting toggle shortcuts use wm.context_toggle
When it pertains to the active object use active_object. followed by the last part of your context attribute name, which in this case is show_x_ray
If you add this to the list under the Object Mode section the shortcut will only trigger X-ray display while you are in Object Mode, which frees up your keyboard shortcut to be used for something else in Edit Mode, etc. If you add it under 3D View (Global) the keyboard shortcut will trigger it in all 3D View modes.

Close with Object.  Without getting too technical you will not find a data_path containing capitals.
Any one of
bpy.ops.wm.context_toggle(data_path="object.show_x_ray")
bpy.ops.wm.context_toggle(data_path="active_object.show_x_ray")
bpy.ops.wm.context_toggle(data_path="scene.objects.active.show_x_ray")

The python console C is a shortcut for bpy.context, and [ctrl-space] is autocomplete.  With the armature selected, typing C.ob[ctrl-space] completes to C.object.  Add a . and  again gives you the list of properties.


text:
Bending with Lattice modifier
I'm trying to bend a simple snake-like model (see the figures) using a curve in order to tune the shape for my needs. I first tried to use the curve modifier, but since I'm already given a mesh with deformed axis it didn't work as expected. I next thought of using the lattice modifier, deformed itself by the curve I set, i.e. I first bend the lattice to match the form of my mesh (using a Bezier curve) and then apply it as a modifier to my mesh.

Unfortunately, it didn't work either: the lattice twists and squeezes the shape the way I don't want (see the figure).
What am I doing wrong? How to make the mesh deformation follow the curve I specify?

Probably you haven't applied transforms on some of your objects. With curve specified lattice will follow its deformation, and the cube will follow the lattice.

Thanks @Mr Zak for suggestion, but in my case, the lattice follows the curve, though the mesh doesn't. Which transforms did you mean? The gif looks encouraging!

The problem is already visible when I'm trying to "align" my mesh: I need to keep it's volume, but however I move it, it gets squeezed in the best case

I meant applying scaling and rotation made in Object mode. It can influnce on the modifiers' result, rather drastically sometimes. Still, in your case the mesh does follow the lattice as I saw, it simply gets transformed not in desired way. "Aligning" mesh may be tricky, but you can start with grabbing yours by Z axis (or start tweaking objects' origins etc).

In the reference they mention that the lattice should fit around the object, but nothing is mentioned about the origin. Should the origin of the mesh and the lattice match? I tried moving the mesh around, but I still can't get an expected deformation.

This is getting ridiculous. I applied all possible transforms to my mesh, and that's what I got...

I'm afraid you should have applied transforms before setting modifiers (or dropping them, applying, and them adding modifs again). Provided that new data being applied, size and/or location of mesh changes. And Lattice modifier does take it into account, beginning to edit your mesh in another way. I could write an answer here (so not to make these comments to be a stack), but I'm not sure what's the problem. Could you upload file to blend-exchange ? I will try to make your mesh work, either by repairing exhisting or adding new lattice

Very kind of you. There you go

In case of mesh already bent, whose volume should be preserved, it can be too complicated to use Lattice modifier. Lattice can be edited with using Curve Modifier, but the last one may not be applied to it. And the results in this case will be rather unpredictable and bad looking (for example).
You could edit Lattice by yourself in Edit mode, but why ? A good reason not to do that is that you won't be able to use provided curve as a desired shape.
A workaround is to create rig for the mesh.
You add armature, extrude it (I began from right to left). Then you parent mesh to armature (with Automatic weights will suit your needs) and grab / rotate bones as you'd like:

I used curve as a reference according to which I edited the bones:

Download file here.


text:
Blender quit showing the words when I open it
I have Blender on my Acer Aspire One laptop and I have only been using it for almost 2 weeks and when I open blender it won't show what anything is labeled no matter what I click. No words. Just pictures. Can you please help me with this and tell me how to fix it??

Quite likely it's your graphics drivers OpenGL.  Make sure they are up to date.  Can you post the specs, graphics card , driver versions. Minimum Requirements http://www.blender.org/download/requirements/

Show a screenshot that will help us to see where you are. Could it be that it opens into the image editor? Does pressing Escape do anything?


text:
Is it possible or desireable to allow a color to be assigned to vertex groups in edit mode
Is it possible or desirable to assign vertex groups a color in edit mode.
It might make it easy to decifer the rats nest of a complicated model.
Thanks

I didn't make myself clear. In edit mode create a vertex group. I want to assign a color to the edges and vertices that would show in the edit window. In the example, you showed the edges and vertices are still black. I think it would be desirable to have different colors for different vertex groups. It would be evident even in wireframe mode. So if you are editing a model and want to change one particular vertex group you could identify it by color.

You can make your question clear by including a screen snapshot of Blender.

And note that an Edit button is provided.

Edit Mode. Show Weights. In the panel
Consider hiding vertices from the menu choices.
Consider hiding vertices with a Mask Modifier

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


text:
Color tab Weirdness
My white color tab is faintly green. The Hex is ffffff.  Material created is white in the viewport.  It doesn't affect the output white objects are still white. It doesn't make sense to color correct the monitor. What gives?

This strongly sounds like you are using a different viewer or have some degree of operating system colour management employed, or your display is potentially off. Not enough information to even begin to answer the question.

Would this by any chance be the answer to this question? If so you could of posted an answer here, and not asked a new question as an answer.


text:
BLENDER 2.8 TEXTURE PAINT
I made a low poly model, uv unwrap it, go to texture paint, apply all scales, set a diffuse texture but can't paint on the model only on the uv.
Also where did the color picker go in 2.8?

Tools are in the properties panel under the little wrench and screw driver icon. Try to add painting slot there. There will be everything familiar.

Actually I did add a painting slot. The only weird thing is that I separated the model. I made a bird decoy with a base. It seemed easier to separate the base from the bird to simplify texturing. I tried again with a new model made from scratch and everything seems to work ok. When I separated the model by loose parts it didn't seem to work at first but they did become separate objects.

So I repeated the problem. If I make a model , uv unwrap, go to texture paint I can freely paint on the model and the uv image panel. If I make a model and separate it into two objects I can only paint on the uv panel not the model itself.

In this case i can paint only on the active object (outlined with yellow) not on every selected object. But if I make active the another in object mode, then go back to text paint mode I can paint on it. But everytime I able to paint one of them. If you can't paint any of them it's probably a bug.

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


text:
How can you set, if at all possible, the channels for OpenVDB export?
As we all know, the latest addition of OpenVDB in Blender is awesome and cool. Buuuut I still have some questions. When you export OpenVDB it's important to have the channels with them ( temperature, heat, density, velocity,...). Now, in Houdini you can set which channels you want to export with your OpenVDB files. In Blender it seems a little more random ( or I haven't found the settings panel yet ). When I cache a fire to OpenVDB I sometimes get just a density channel, sometimes density and temperature, sometimes nothing.
I don't have to tell you that these channels are super important, because they act as masks for shading ( at least, that is what I was told. ). So, in order to make this usable, and make me a very happy camper, I would like to know if it's possible at all to set these channels. Or at least where to find them. Or just let me know if this is a bug, and I'll report it.
Well, that's my predicament. I hope to find some answers.
Cheers!

well, as far as I know there is just basic vdb support and blender does not offer you the possibilities houdini does. the vdb data is hard coded and depends on the sim settings. Though I have experienced that blender exported vdbs hold all the information needed to shade them within houdini. If you feel like the same simulation exports differently every time this is probably a bug. If it changes together with certain sim settings I would think it is supposed to be that way.


text:
How to deal with changing focus when 3d tracking
I'm doing a 3D camera track on some footage, but my error margin stays on 0.3. My guess is the camera operator changes the focal distance while shooting. Does blender take this into account when solving? I refine the focus, k1, k2, focal length, Optical Center when I calculate the solve, but does it animate the focus in the scene?

This doesn't quite answer your question, but if you have After Effects, sometimes it can be helpful to track in there with the 3D camera tracker, then use atom'S AE to blender script to get it in blender. After effects's camera tracker can do wonders


text:
Background image shows in front of 3D objects, not behind them.
I've done a quick 3D track in blender and I'm trying to render my output, but the plate I used to track is showing up over my 3d objects.
I want to render the objects in the scene with an alpha channel and comp them over the plate I tracked. My renders however, are covered by the aforementioned plate.
Un-checking "Background Images" in the camera properties (only removes it from the viewport) isn't doing it for my render outputs.
Working on some production tests and am not really proficient with the software yet, my apologies in advance.

Do you have anything in the VSE?


text:
Importing .obj from 3DS to Blender distortion issue
I want to export a mesh from 3DS to Blender, I currently use .obj format.
My screenshots are taken from Unreal but the issue is the same on Blender.
Here is my 2 floors superposed, one is selected in yellow

My problem is that when I use .obj,  only my height is incorrect:

As you can see, my lenght and width are similar, but my windows, walls, door have a bad height. If I check on 3DS, both of my floors have the same height and everything is good.
Do you have an idea why ? Thank you.

Could you show screenshot of these objects before exporting ? I don't think I see what do you mean by "bad height". The only suggestion would be to apply transforms before exporting.

If the issue is the same in both Blender and Unreal, it means it comes from 3DSMax exporter somehow. Could imagine e.g. some kind of weird transform applied to walls to get them the same height as windows, that does not get applied during OBJ export, or something like that…


text:
Problems with import/export script with --background
I have a simple script
import bpy

bpy.ops.import_scene.autodesk_3ds(filepath="C:\\Temp\\Blender\\3DS\\5004.3ds")

bpy.ops.object.select_all(action='INVERT')

bpy.ops.wm.addon_expand(module="threejs")

bpy.ops.export.three(filepath="C:\\Temp\\Blender\\JSON\\Output.js")

which I execute using
blender --background --python c:\temp\blender\Test.py

The script runs, the 3DS model is loaded, an output file is produced, but it only contains "CubeGeometry" and not the 3DS model I have loaded. I am presuming this is the cube that Blender loads by default. I tried after loading to invert the selection expecting that I would then get my imported model, but with no success.
Any ideas?

After saving, the file must be loaded.https://blender.stackexchange.com/questions/1365/how-can-i-run-blender-from-command-line-or-a-python-script-without-opening-a-gui/1366#1366


text:
In version 2.77 how do I view textures in different interpolation modes from viewport?
Recently I updated my blender to 2.77a and annoyingly I noticed that the interpolation mode selection from the image texture node no longer takes effect in the texture mode at viewport.
Is this function simply removed or now I have to have it activated somewhere?

Disabling mip-mapping in user-preferences works, but is admittedly a rather clumsy workaround.

I knew I can do that but unfortunately for me it's not remotely close to a workaround since a lot of times I have lots of textures that need to be in different interpolation mode and I rely on 3d viewport to check whether they are properly interpolated. I'm just gonna send a feedback to blender.org. Thank you for you help.


text:
Is it possible to have an animatable render mask to restrict render area?
Let's say I have a scene to render in cycles, and one particular area needs a much large sample rate to achieve satisfying render result. I would like to render the scene in normal sample rate (say, 150), and then I come back to render that particular area with a much higher sample rate (like 500 or higher) with an animated mask so that blender would only render that area. I know there's a mask layer thing in blender but that doesn't stop blender from rendering the whole scene first. I needed something like the render area crop, only animated. Is it possible?

Related: http://blender.stackexchange.com/a/33903/599

You can use the Render Border Addon and animate Center X and Center Y values, see: http://blender.stackexchange.com/a/45837/3710 How much movement is in your scene?

Depending on the complexity of your scene, you could also just use render layers to Isolate what you are rendering, and composite them together in the Node Editor. (eg. Render Layer #1 gets first pass sampling, then Render Layer #2 get 2nd pass sampling at a higher rate). The major thing to consider is surrounding objects that need to solve for reflection/lighting/etc... If you are going to take this approach, there may just be things that must exist in multiple layers to keep the reflectivity/lighting more true to life.


text:
Fixing unclean Normal map on round shapes?
This is more of a general 3D material question than a Blender issue but there seems to be no Stack Exchange forum for more general 3D design questions so I'm posting this here.
I'm trying to bake a normal map from a high poly model to a low poly model so that the normal map gives the impression of high detail (as used generally for low poly game 3D objects) but I can't figure out how to get it look smooth on round shapes like in my example here ...

This is a simple bucket model. The hi poly model cylinder has 24 sides vertically and looks very smooth in subdivision mode. The low poly model has 12 sides. You can see that the baked round edge doesn't help anything to make the low poly model more detailed. it just looks bad. So I wonder what are some good ways to improve this without increasing the polys on the low poly mesh?

A few more subs to the low poly-smooth shading.

The only way to improve the look here is to increase the low-poly polycount.
The normal map looks ok, but if you will face any problems in the future, you can find a massive amounts of good info here: http://wiki.polycount.com/wiki/Normal_map

I'll say it directly in case it isn't clear: You can't use a normal map to make that part look rounder. Normal maps will do NOTHING to a silhouette (that is, the edges or shape of a model). They only allow you to give the illusion of detail, depth or roundness on the surface of a model.

Use Subsurface to do it. Crease the edges first by using Ctrl E and then use subsurface. Simple.

Creasing edges will add those sharp edges back which are the very reason of the question. Note that using Subsurf for models which require performance like e.g. game models is usually no-go.

Then make the texture's outline like the UV shapes.


text:
How to change the scroll distance
If I scroll the mouse one time then it goes very far:

It is hard to work like this and not normal behaviour. If I start a new project then everything is ok. Im not sure what I did, how can I change it back to normal?

Try changing center point the viewport is orbitting around; as ab alternative you can change the Pivot point to Median Point or Bounding Box (as it looks like you have it set to something other than Median Point), still the latter might not be the best solution.
This seems to be caused by the fact that you zoomed in and out too much around the scene in different orientations and created big offset between the location of current central point and location of the actual viewport camera.
This behaviour also depends on setup iin User Preferences you use, like Auto Depth, Zoom to Mouse Position, Rotate Around Selection and locks to object or cursor on the Properties shelf.
One easy method would be to press Shift+B and draw a rectangle where you want new center to be (note that there should be any geometry to draw on though as otherwise depth of field will be too large). From this point of view this question is related to Why does the zoom sometimes stop at a point?, there also are several ways to reset the center point.

It works again after using Shift+B and draw the rectangle on my model!

As we know, the scrolling zoom speed increases with the distance from the center point of the viewport camera. I think the problem occurs because the center point is far away from view.
I suggest:
1)Select the object and press NUM . to move center point to the selection.
2)Use Ctrl + Middle Click to perform precise zooming.
3)Use fly mode (Shift + F) to navigate.

Yes but it seems that this behaviour is specific to the scene @Black is working on.

I know that I could use CTRL+Middle Click, but this does not answer my question.

Alright, looks like I'm too late with my edit.


text:
How to reset stencil rotation in texture paint mode?
Sometimes I am accidentially rotating the stencil. Is there a way to reset the rotation of the stencil to 0? Pressing CTRL+Z for undoing does not work.

Set Angle to 0.
You can also use this value to precisely rotate your stencil.


text:
Is it possible to scale and rotate the 'image for clone tool'?
I have the same question as the user hooliganzo from blenderartists.org, I copy his question here.
"In the UV editor under paint menu with clone brush selected. I can select an image under the paint menu, move that image around over the UV and click on the UV map to paint that texture on the UV texture. The problem is that I can't figure out how to scale or rotate the clone source image.
Here is what I am talking about

I can move it by holding RMB and that is it. I've tried pressing S and R by itself and I've tried it while holding RMB. I don't know if it is even possible but it seems like something that would be implemented."

Why did you ask the same question twice?

I think i sended the form twice accidentailly.

The answer is "no", you cannot rotate the clone source in the Image Editor. But an alternate is available that DOES allow you to rotate and scale your image source, and that is by loading the clone source instead as a Brush Texture in the properties panel while using the TexDraw brush (default texture paint).

The Texture then needs to be set to 'Stencil' in the tool bar Texture panel. Zoom out, and then move the stencil with RMB, scale it with Shift-RMB, and with Ctrl-RMB you can rotate it. The same thing can be done with the Texture Mask set to Stencil, but use Alt-RMB to move, Alt-Shift-RMB to scale and Alt-Ctrl-RMB to rotate.
This same set up works in the 3d view for painting directly on your 3d textured object. Have some fun!
edit: Also you can use the Stencil Widget by Kgeogeo that allows to use a lot of controls on the stencil texture/texture mask


text:
Change start frame of a background movie clip?
I added a "Background Image" and selected "Movie clip".
Now I am wondering if it is possible to change the start frame.

I am animating a character and I need the movie clip to start at a specific frame.

Movie Clip is a special data type in Blender. To change its properties you would have to go the Movie Clip Editor, open up the clip there, open the properties panel (N), go to footage settings and add an offset there in order to change the start frame.
However, if you only want to have a background video, I would advise you not to use the Movie Clip type. Instead, click on 'Image', and open up your video. There you can also adjust the offset in order to change the video's startframe.

If I try to load a mp4 file as image, then it does not appear. (All Views is set)

Hm, that's odd. And loading it as MovieClip works?

Yes MovieClips works. I think this is a bug. I am using blender 2.79. I will turn my computer off an on again later and try it again, this helped me sometimes.


text:
How to apply normal-, gloss-, occlusion-, specularity- and displacement map on one cycles material?
I try to apply all these textures to one material in cycles.
These are all my textures:

My attempt (no idea at all how occlusion map works)

It can't be said exactly as it depends on the setup/program they were baked out of in the first place. But in general:
Color: Diffuse Node Color
Normal: Diffuse and Gloss Normal input. Put into Normal node first if you want control of it.
Displace: Bump node, then Diffuse and Gloss Normal input. When you also have a normal map, plug the normal map into the Bump node's normal input. It can also go in the material output Displacement socket. This is necessary if trying to use True Displacement. But generally not needed.
Gloss: This is either the Glossy Node's color or Roughness. If it is the roughness, the color should be pure white.
Spec: This is the mix fac between Diffuse and Gloss. It can be combined with Fresnel for added realism (the details for how to do this vary.) Note that in some cases, Gloss and Spec are reversed.
Occlusion: This can mean several things, so it also varies. It could be Roughness, or it could be multiplied over Diffuse and Gloss color, or it could be a mix fac between Diffuse and black AO node, or a color for AO with an unknown mix fac with Diffuse. Or it could not be needed at all due to Cycles having global illumination. AO is generally for faking some aspects of ambient light in game engines that don't actually have real indirect lighting.
If you can give more info on where the maps came from, or share the whole file, then we can narrow it down more for this specific case.


text:
How to connect two vertices?
I forgot how to connect two vertices.

The documentation says I need to press "J" but nothing happens.

J is not related to this case. It works only splitting existing geometry (like Knife) and doesn't generate any new one

I figured it out again... you have to press F.

Orly? No kidding...

Yes, I hate it when I forget something this simple if I abandon blender for a long time... even though I know blender for centuries lol

How many years is 'centuries'? I go back to 2000/2001

There indeed aren't any questions here on BSE on questions like "how to create edge" or "face" or stuff because they are very basic. This can be quickly found in blender manual

@MrZak, I even searched the manual but did not found it.

Use search terms making blender manual be the top priority, vary the words. That's most general and the best way to get any result


text:
How to make grease pencil draws permanent?
I am using the grease pencil during animation creation to mark some specific places. However, some drawings dissapear everytime if I change to another frame.
Is it possible to make them persistent?

I figured it out, you have to go to the right menue and press on the button Frame locked

Note that this will overwrite any other strokes painted in the frames other than active when you pressed Lock. Hence only one frame of the GP will be visible


text:
How do I rig each blade to fan out like an aperture lens?
I'm new to blender so I've got loads to learn.
My problem at the moment is that I want to rig up each individual triangle, so that I can get it to fan out like a camera aperture. Can anyone help me achieve this?

It would be better to make one blade and create a radial array.

@James Skidmore Are you wanting to create an animated iris (perhaps like the iris valve used in the 2nd half of the movie 'Alien'?), that opens and closes to make the aperture larger or smaller?

@MikeMetcalf Yes ideally I want to use it as an eye for a robot character I'm designing and so I'd like to animated the Iris to represent eye interaction

Copy Rotation Constraint + Local Space
I would move the triangle's origin somwhere along the shortest edge.

Then assing to the object a Copy Rotation Constraint pointing to an empty.

We are only interested in copying the rotation on one axis, in this case the Z axis as the blades are in the XY plane.
Notice that we must also change the Rotation space as in the picture above to transfer the rotation of the empty to the object's Local space.
Then we can duplicate the object and control the individual rotation of all blades with the empty:

Thank you for this, Carlo. Like James, I'm a complete newbie at Blender. Would you mind explaining to me how you 'duplicate the object' so perfectly in a perfect circle? I've seen a YT demo on creating circular arrays but that requires the empty to be at the centre of the array. How did you duplicate these fan blades about the master blade's apex so exactly? Thanks in advance. VV

@VectorVictor I used dupliverts https://i.sstatic.net/STZqQ.png (quick explanation: https://blender.stackexchange.com/a/15997/15140) on a Circle mesh with Rotation option enabled and then ran the "make duplicates real" operator to "bake" the duplicates in the scene. If you need further explanations, feel free to write again or ask a question in the site: maybe someone else use other techniques.

Very grateful, Carlo, than you. I'll read up and check it out. It's slow - but FUN!


text:
How to get a head to track an empty
I've been working on this robot character and I'm trying to animate so that all the body parts float, similar to that of rayman.
The problem I'm having is I can't get the floating head to track an empty, it comes up with a red box when i try.
How can I rig up this figure properly and get it to move around like it is floating?
Blend file here for reference:
https://www.dropbox.com/sh/h0gc9837wnutcoc/AACIO3YAgyFSY7MviS15yyI1a?dl=0
Any help would be greatly appreciated

The following should work:
Add the empty to your scene and position it in front of the head, then select your head object and apply rotation by pressing CTRL+A and select "rotation" from the list:

Now with your head still selected, go to the constraints panel and add a "Track To" constraint, and in the Target field select the Empty you want the head to follow:

Note: You may have to change the axis in the Track To constraint, depending on which way your head is looking. Judging by your screenshot, I suspect it will be something like -Y

Just tried this out and it worked, thank you so much for your help

no problem. rock on :D


text:
Adjusting Freestyle in the Blender compositor
Can anyone tell me if it's possible to adjust freestyle in the compositor?
I'm using it in my short film and its a drag to actually render the whole thing every time to see the changes I made.
Thanks

You can also composite your own lines, you will have more control over the whole line setup. This technique also speed up your render times because you avoid the extra freestyle line calculation. I am just using this technique so I am not really sure if Freestyle gives you more or additional line settings. To get good results you also will need good over-all compositor skills. Blender Tutorial - Rendering Contours

Yes, it's possible. I mostly render my freestyle stuff on a separate Freestyle-Renderlayer and recombine it with the ordinary one in the Compositor. If you just want to rerender your FreeStyle strokes you can just render the Freestyle Renderlayer.
I've only done it in Cycles so far, so the following is only for Cycles.
To separate it:

Activate Freestyle in Render Settings > Freestyle.
Tick "Transparent" in Render Settings > Film to have the background transparent.
Create a new Renderlayer (eg. "FreestyleLayer").
Create the Freestyle settings you want.
Override samples with 1 (for example).
Turn off "Use Environment", "Use Surfaces" and "Use Hair" in the Layer panel. That way basically nothing gets rendered except the Freestyle strokes.

In the ordinary RenderLayer:

Delete the Freestyle LineSet so you don't get any strokes here.
Activate the "Environment" pass, so we can readd the background if we want to (because we just made it transparent above).

So far for separating. We now have a renderlayer that's transparent and only the Freestyle stroke will be visible.
To recombine it, do it like this in the Compositor:

Note that the Environment Pass is also readded here. This can just be left out if one doesn't want it.
Hope this helps.

Since Blender 2.83 there is an option to set Freestyle as a render pass in "View Layer Properties".

In the compositor, Freestyle can then be processed separately.

For the default cube, the content of this render pass would look like this.


text:
How can I save both FK and IK animations in one .blend file?
Here’s my problem: I exported a model from MakeHuman using the “game” rig. I imported the model into Blender, and made an animation using FK. From here, I am able to import my model and animation into Unity without issue.
Then, I added some IK bones/constraints to my model’s rig, and made another animation using IK. Now, I can't find a way to successfully import both animations to Unity. If I turn off the IK constraints, my FK animation works great but my IK animation is broken. If I leave them on, the reverse is true.
I've tried using visual keying, but it doesn't seem to apply to IK.
Is there some way I can bake the FK animation to always ignore the IK stuff? I would like to be able to get both of these animations into Unity without having to completely redo one of them (and further, I’d like to be able to work with IK or FK in the same model depending on what kind of animation I want to do.
Thanks!

An old question, but based on this link, you need to set up IK through a script so it works correctly.


text:
Cycles Render Option Not Showing Up In Blender 2.77
I installed Blender 2.77 RC1 but I only get the Blender Render and Game Engine options for rendering.  Cycles doesn't appear in the pull down menu.
I've reinstalled 2.77 and checked all the preferences, but no joy.
Anyone having the same problem?  If so, is there a trick of some sort to get to the Cycles opation?

You have to enable it in user preferences and addons.


text:
How Do You Make A Suggestion To Blender Developers?
I get it.  The Bender Foundation probably gets thousands of suggestions to "improve" Blender's work flow or capabilities.  But I haven't yet found where suggestions can be forwarded.  Any ideas?
I have several suggestions, but there doesn't seem to be a way to submit them or give the developers my opinion as to how important they are.
For example, I love the fact that Blend is constantly adding new capabilities, but I wish they would skip a cycle and just focus on improving the workflow.  Too many times I'm faced with multiple steps in different panels to create something.
In too many cases, Blender is like, "Oh, if you want to do that then you need to do the following 6 steps each and every time.
OK, I get it.  Not everyone needs to streamline workflow according to me.
So, Blender, give me a macro capability where I can "record" the six steps I normally need to take in standard Blender so I can execute a macro to automate my custom workflow.  If there is at time I only need 3 of the 6 steps then I can do it manually or record another macro.
Come on guys, there are many things I do routinely that requires a number of specific steps that are the same each and every time.  Give me a macro capability to automate my custom routines within Blender.
I have perhaps 3 or 4 more suggestions that I think would streamline workflows that I don't think would take much programming effort.
I hate having to memorize: first go to this panel and do this, then scroll down and do this and this and this, then go to another panel and do these two things, etc.
Give me a macro capability to record all of the steps once and use it a hundred times.

Blender does include a macro capability - most of the operations you perform are output to a log window that's normally hidden off the top - drag the bottom edge of the top menu down to see it.

When you perform an action you'll see the equivalent python call in the log. You can copy the command and paste it either into a Console window or into a Text Editor text block to run as a python script (give a name ending in '.py' to tell Blender it's python code.
For example, add a cube, scale it, rotate it :
bpy.ops.mesh.primitive_cube_add(radius=1, view_align=False, enter_editmode=False, location=(0, 0, 0), layers=(True, False, False, False, False, False, False, False, False, False, False, False, False, False, False, False, False, False, False, False))
bpy.ops.transform.resize(value=(2, 1, 1), constraint_axis=(True, False, False), constraint_orientation='GLOBAL', mirror=False, proportional='DISABLED', proportional_edit_falloff='SMOOTH', proportional_size=1)
bpy.ops.transform.rotate(value=0.785398, axis=(0, 0, 1), constraint_axis=(False, False, True), constraint_orientation='GLOBAL', mirror=False, proportional='DISABLED', proportional_edit_falloff='SMOOTH', proportional_size=1)


text:
How to change grid floor?
Is it possible to change the grid floor?
It is hard to time root bone animations with the current one.
I would like to change it to something like this, or better:

Is this possible?

If you want to increase grid density, open N-panel in 3D View, reduce scale and increase line count:

It does still not look as clear as the above from my question. I try to make the lines white.

@Black you can change color of the grid floor lines only in the theme settings (User Prefs > Theme) for 3D viewport. Note that only color will be changed there, no different thickness lines etc. As another solution find a texture and assing it to a plane

ok but some of this will only work in ortographic view, I was looking for a possibilty to change the grid so that it is noticable in any view.

This is just an addition to @Serge L answer.
You can change color of the Grid in User Preferences > Themes > 3D View > Grid.
Also, and this can be seen in Top Ortho view, Subdivision value is responsible for those thicker white grid size.

Changing subdivisions does not do anything for me.

@Black In Top Ortho view?

Nevermind, it works but I noticed that it was only visible when zooming in, because there were too many subdivisions on a too high scale


text:
How to reset rotation of a UV-Island?
I accidentially rotated an UV-Island

Is there a way to reset the rotation to 0 so that it is horizontal again like the other islands?
I know I could just rotate it normaly, but this would not be perfect.

Unwrap that face again


text:
Free camera moves without user interaction and behaves weird
The free camera (SHIFT + F) worked perfectly fine in previous blender versions. However now I updated to 2.78c and made very bad experience.
The camera automatically keeps moving slowly in the last direction where you pushed the mouse and behaves extremly weird. Sometimes it does not move at all right after I activate it.
What is going on, is this a bug or a feature?

Check if in the preferences > Input Walk/Fly mode is set to Walk by default as probably you're activating Fly mode while looking for the other one.

After I started my computer today it is working as expected and I am not sure why.


text:
Delete all scale animations from specific animation
Is it possible to somehow delete all scale animations from a specific animation?
I am creating animations for unity, and in unity I get alot of warnings if I use scale animations, because they cost much performance.
Sometimes I accidentally add scale animations, then I have to find the specific bones and delete the scale animations on them one by one.
Is there a faster way, maybe a script?

In graph editor or dope sheet you can select all bones and type "scale" in search bar, then select all keyframes at once and delete.

Select all bones/objects
Open Graph Editor or Dope Sheet
Type "scale" in search bar
Select all keyframes and delete


text:
How can I view a texture on a model?
I have an .obj model from a game, and its .dds texture map. I simply want to make some adjustments to the texture. Normally I can do this just using Photoshop, but this particular texture map is really confusing and I can't figure out which part of the body I'm painting. How can I view the textured model while editing the textures?
Edit: Still trying to figure this out... these are the steps I followed:

I imported the .obj file
I opened the .dds file in UV/Image Editor
I selected the model, switched to Edit Mode, then did Mesh > UV Unwrap > Unwrap
In UV/Image Editor, I did UVs > Unwrap

Now I have this:
 http://puu.sh/kt7PA/79f4596875.jpg
This isn't right, is it? Besides the fact that it doesn't look like it's mapped right at all, I tried painting on it and couldn't see any difference on the model.

Texture Painting   ......    http://blender.stackexchange.com/questions/38399/texture-painting-on-sphere/38414#38414

If the model has had texture already then it's likely it has been already unwrapped. At the same time, according to your 3 and 4 steps, you replaced original unwrap (which you'd like to use to simply adjust texture) with the new one (which you see after step 4).

Has this question been answered? If so, please except an answer. If not, please clarify what problems you are still experiencing.

Sometimes while importing an obj model, the uvs get messed up, which eliminates all simple answers. If not, there is an easy way.

import the model into Blender.
Switch from object mode, to texture paint mode.
Switch to textured view. (or material view, depending on how you like it and your circumstances.)

The most common error, besides the UVs being messed up, is the material not working in Blender. If you are simply texture painting, this is easy to fix.
Simply,

Add a material. (or click use nodes on the current one).
Load the texture into the material.

Now it should show up.
This same concept applies to most model types.
Here is an illustration using a .3ds model I got from www.archibase.net.
In this example, the uv map was already there how it was meant to be, I just needed to adjust the material. If I would have re-unwrapped, that would have ruined the intended position of the texture.

Open up the texture map in the image editor, and unwrap the uv of the model. If you also have the 3d view open, you should be able to see the texture getting edited as you edit it.

Please add more info to this answer.

For one thing, you need to reimport the game model so that it has its original UVs. When you use the Unwrap operator, it replaces the UVs of all the faces that you've selected with low-distortion, unique UVs. This is probably not what you want to do if you're just modding the texture.
Once you've got the model reimported into Blender, the next step is to make sure that you're using Blender Render. In the top bar of the program there's a dropdown that might say "Blender Render", "Cycles Render", or "Blender Game Engine." If it's not on Blender Render, click on it and change it to Blender Render.
You'll need to set the viewmode of your 3d viewport to Textured. This can be done with the hotkey Alt+Z by default, or there's a dropdown menu with all the view modes in the bottom bar.
The next step after all of this is done is to split the 3d View so that you have a 3d View and a UV/Image Editor. Open up the texture in the UV/Image Editor and enter Edit Mode in the 3d View. Select all of the faces on the model with the A key, then if the UV/Image Editor switched to a blank image go back to the UV/Image Editor and switch back to the texture you wanted. This sets the active texture for all of the polygons on your mesh to be the one you wanted to edit. Now you can exit Edit Mode. You may want to open the N Panel in the 3d View, go down to the Shading section, and set shading to Multitexture and turn Shadeless on. If you decide that you want some lighting on the model so it's easier to see the shapes, I recommend using a Hemi lamp as that will show you the models shape while lighting it entirely.
You can change the UV/Image Editor from View mode to Paint mode in the bottom bar and use the T panel to pick colors. This way you can paint on the image in Blender. If you decide that you need to go back to Photoshop to do your painting, you can easily preview what it's going to look like on the model by saving the PSD, loading it into Blender, setting it as the active texture, and resaving the PSD from Photoshop whenever you need to view the changes, going back to Blender and using the hotkey Alt+R to reload.

Spencer, thank you so very much for this amazing answer!! I really appreciate all the detail you've included!
Just one problem now... I can sometimes get paint to show up on the model, but not always? I've found I need to have X & Y tiling turned on, and then I have to scribble quite a bit to get it to show anything. But even then, it doesn't always seem to work. http://puu.sh/kwlbj/fa1a83947d.jpg

May I see the UV layout, please? Have you tried following a similar procedure with a cube that's got a simple UV layout (say, done by adding a cube, going into edit mode, unwrapping with the hotkey U and then choosing Smart UV Project) to see if you can get your painting to show up on a more straightforward mesh?

Don't listen to the people telling you to unwrap the model. If you want the uv's of the model that it currently uses with the texture youre trying to modify then all you need to do is select all faces and look in the uv image editor. The uv's should be there. If you unwrap then it gets rid of the uv the model already uses which means you need to re texture or adjust the new uv's to fit the texture.
To do what i think you want, don't unwrap, just apply a new material. Go to cycles.  Make sure your object is selected and go to node editor add and "image texture" then import and select the texture you want to modify or select it if its already in. Then connect the little yellow do to the diffuse nodes yellow dot. If you look in the uv image editor with all faces selected you should see your uv's of the model. At the bottom select the image you used in the "image texture" node earlier. Now texture paint the 3d model or in uv image editor select paint and paint.

authors: Алексей Курзанов


text:
Auto save images along with .blend
Blender has a very irritating quirk in which it fails to save an image that you have painted on, when the .blend is saved. To fix this you have to remember to use "save as image", before you save the .blend. Is there anyway to automatically save the image when saving the .blend?
P.S.
A script free solution(or a script that runs whenever I save, no matter which button/keyboard short cut.)would be of great value!

I was hoping for a script free solution, since I would have to remember to fire the script instead of the regular save function, which defeats the point.

Theres a patch to do just this: https://developer.blender.org/D398

@ideasman42 does that mean I have to build it myself? Is the patch going it release?

@GiantCowFilms - not sure yet, the patch is more a test-case, even though it works OK. I'm not really happy with just adding more options.

This sample code will save external images before saving to .blend (overwrites the originals):
bl_info = {
    "name": "Auto-save external images",
    "author": "CoDEmanX",
    "version": (1, 0),
    "blender": (2, 67, 0),
    "location": "",
    "description": "Save image datablocks on saving .blend",
    "warning": "Works on external images only!",
    "wiki_url": "",
    "category": "System"}

import bpy

def save_external_images(dummy):
    for img in bpy.data.images:
        img.save()

def register():
    bpy.app.handlers.save_pre.append(save_external_images)

def unregister():
    bpy.app.handlers.save_pre.remove(save_external_images)

if __name__ == "__main__":
    register()

Make sure you enable this addon by default!
It does not work on internal image datablocks, unless you extent above code to save to an external file or maybe pack internally.

You can easily turn it into and addon. How is that done?

It's covered here: http://www.blender.org/documentation/blender_python_api_2_71_release/info_tutorial_addon.html, but I did that for you (see my updated answer)

For some reason the script doesn't work as it is written above and gives error "RenderResult has no image data to be saved" or something like that. I suppose it tries to save Render Result as well when iterating through images. When I tried to make checking with "if img.is_dirty" inside the loop  to iterate only through images with Asterisk it worked. It would be great to edit the code or append it so to make it working out of the box


text:
Which object should be selected when selected to active is check for texture baking?
Which object should be selected when selected to active is checked for baking, the one I'm baking to or from? I can never remember which one.

Backing is blender is so not likeable, and even after reading this topic it goes wrong...

The active object is the same no matter what action you are performing in blender.
The active object is always the object you selected last.
When using the default theme, the active object is outlined in yellow, and all other selected objects are in orange.
If you selected your object in the wrong order, you can just ShiftRMB  on the object again to make it the active object.
To remember the selection order for baking is simple when you know what the active object is. Just say selected to active. Now think, you are baking from the selected object to the active object.

The object you're baking to is selected, quickest way to remember this is that the active object is the object you're changing

This is backwards, the active object is the one that is changing.

@gandalf3 ??? excatly

The object you want to bake from should be selected, not active..

Yes, they are all selected, so I'm using selected to mean active

Selected != active. They are two different things, only one object can be active, and it doesn't have to be selected to be active.

So what the verb for active...?

@GiantCowFilms quickest way to remember this is that the active object is the object you're changing.

@GiantCowFilms Activate? I've never seen it used like that though, as you usually make the active object active by selecting it. However if you deselect it by pressing A, its still active. In your answer you used selected as an adjective, so I don't seen any problem with just s/selected/active?


text:
Blender command line - Change input image when rendering?
I'm rendering an image from the command line using this command:
blender "file.blend"  --background  --render-output "output name" --engine CYCLES --render-format PNG --use-extension 1 --render-frame 1
However, I'd also like to set the image path for an image node named "Target Node" in one of the materials as well as the world material.
How can I do this? Do I need a python script? If so, how do I pass the value to it from the command line.

You can use a script for this.

You can read command line arguments with the sys module's argv property.
Access the image filepath through the image texture node (lines 9-14).

Code:
import bpy
import sys
from os.path import isfile

# Take image path as the last command line argument
imgPath = sys.argv[-1]

o  = bpy.data.objects['Cube'] # Replace with your actual object's name
t  = o.active_material.node_tree
im = t.nodes['Image Texture'].image

#For the world texture, use something like this:

w  = bpy.data.worlds['World'] # Replace with your actual world's name
w.use_nodes = True
t  = w.node_tree
im = t.nodes['Texture'].image

# If provided image exists set is as the image texture node's image
if isfile( imgPath ): im.filepath = imgPath

Run blender with the script and provided image path thus:
blender.exe pathToBlend\scene.blend -b -P pathToScript\script.py --render-output renderPath --engine CYCLES --render-format PNG --use-extension 1 --render-frame 1 -- pathToImage\image.jpg

If you are trying to change the image on a material:
python script:
import bpy
import sys
from os.path import isfile

# Take image path as the last command line argument
imgPath = sys.argv[-1]
texture = bpy.data.materials['texture'].node_tree.nodes["Image Texture"].image
# If provided image exists set is as the image texture node's image
if isfile( imgPath ): texture.filepath = imgPath

bat file
cd "C:\Program Files\Blender Foundation\Blender 3.1"
blender.exe "C:\Users\b\iCloudDrive\nhandee\rendertest.blend" -b -P "C:\Users\b\iCloudDrive\folder\script.py" --render-output "C:\Users\b\iCloudDrive\folder\x####" -a -- "C:\Users\b\iCloudDrive\folder\2.png"

similar to the accepted answer except for materials that have a pricipled bsdf with an image as the base color


text:
Make materials colors show on textured solid?
In solid mode with textured solid checked, A model will show the material color until any face on the model is "attached to an image" (have the face selected, and open an image in the UV image editor). The model will then turn white. Is there any way to revert this? I'm using internal.

Here we are in textured solid mode. The green cube has a green material. I selected the green cube, enter edit mode, select a face, then change the image in the UV image editor. A UV map that I never created appears, and the cube  turns white:

How can I make it green again while still showing the texture on the checkered cube

Are you using blender internal or cycles?

Please include  screen images to increase clarity.

Once you have UVs the object color will be ignored in the viewport, I think you can achieve that only in textured shading

the other faces has no texture to a color from

Consider Delete the UV Map
Add a new UV Map if desired
Assuming the first UV Map was a quick and easy inspection
Please note that the Blender User can have multiple 3D View type windows.  Not all windows are simultaneously affected by this inconvenience.

@GiantCowFilms once you select an image it will be created

@Chebhou just noticed, facepalm, that was so obvious! I never knew blender would make a UV map simply because I changed the image in the UV image editor...

It's a little strange but, as you have discovered: selecting an image in the uv editor dropdown while in edit mode with one or more faces selected is the mechanic for assigning an image to those face(s).
And when the object owning the selected faces has no uvmap, the above operation forces a new one to be made. In a "blank", new uvmap, every quad is mapped to the entire 0,0->1,1 UV space. Not sure what the defaults are for other poly types.
It could be argued that in textured solid a face with a uvmap but no image should fall back to the material; it's certainly possible to have a uvmap on an object just to control a procedural material's scale and warp; I usually use a set of colored test grids for that personally, but they mean nothing to the render.


text:
Cycles node editor - Map gray scale value map to extremes
I have a value map that is black and white, but it covers a very small range of that spectrum, having the brightest value at 90% grey, and the darkest somewhere around 80% grey. What I need to do is stretch these values, using nodes, from fully black to fully white, well maintaining their relative brightness. For example, if it spans between 80-90% grey, something at 81% grey would become 10% grey and something 85% grey would be 50% grey, etc.
If possible I would like to do this entirely proceduraly, so that any entered map would work.

Are the max and min values known? Or does the setup need to figure those out dynamically?

@ajwood dynamically

Somewhat related to finding min and max values automatically: http://blender.stackexchange.com/q/3775/599. If you already know the min and max values, a color ramp node will work, but you'll have to set the stop positions manually

I'm pretty sure that this is impossible in material nodes without some ridiculous hacks, unless maybe something can be done  with OSL

It might be very challenging to find the min/max automatically since each node/shader only has access to the pixel it's working on, not the entire texture.

Where does your value map come from? Might it be possible to wrap the source somehow, forcing it to advertise its min/max?

@GiantCowFilms Is the map generated or does it come from a texture or from a gif?

@WorldSEnder It comes form texture nodes.

@GiantCowFilms When you say 'texture nodes' are you referring to the generated textures like Voronoi, Musgrave etc...? In my experience, these textures output full value range gradients by default, How are you limiting the value range? More specifically, is this associated with the input or output of your texture node (or none of the above)? Maybe there is some useful data to employ from your means of generating this limited value range, which could be used for iteration to identify the min/max values. Might be nothing, but do you have any images you could post? Thanks. Good question!

@YoeyYutch In this case I am using the Normal out put of the geometry node. I would like to map the values from 0 to 1 without editing my geometry.

i think this means a complete image/texture with separated RGB values check to get the min/max values, i don't think it's possible (unless you use an incredibly complex node setup) without scripting

@GiantCowFilms Normal output from geometry will always be normalized. Do you refer to only single channel/axis? Then that could need normalizing indeed. And that could be done with processing the geometry, so no need to analyze some image.

The only solution and a major workaround that would work is:

Create a frame change handler that grabs bpy.data.textures and for each texture determines the min and max value in it (by iterating over all pixels). This would be slow. The data should be outputted to some scene custom prop array for example.
Drive a math cycles nodes with those custom prop array items. Everytime you switch texture you would need to re-target to appropriate array item (index). With this the rest of shader is simple.

With only nodes it's impossible because they operate per-sample. You would have to use as many nodes as are pixels in the texture and compare them (you can sample any pixel from texture with mapping vectors).
It would be possible if the min/max values could be encoded into the image (for example as grey values in 2 exact corners). The shader then would crop the texture by some extend and wouldn't use the border of the image with encoded data.

With OSL it's definitely doable but the texture would have to be part of that shader, it wouldn't work with RGB input socket (reason as above). Instead a path to the texture could be an input for such shader.

Sadly, my texture is based of a cords input. If I were to put it on disk I may as well do it in the compositor.

@GiantCowFilms I see - so you have a large texture, and with coords input you are only using a little part of it and you need this part to be always normalized? I first thought there are multiple textures and you use the whole surface of each. Am I assuming this right?

@GiantCowFilms if so this changes things for the script or OSL shader. Also if the image is not on disk the data could be grabbed from bpy.data.textures an the input would be the name.

(EDITED ANSWER: ADDING DRIVER)
You need to make these steps:

Create a Map Range node
Create python scripts to get the maximum and minimum values
Add drivers to execute the scripts dinamically

Create a Map Range node
You can use a node group like this:

This node group is similar to another node available for compositing.
It works plugging your input value into the Value socket (the value you describe in your problem) and setting up the four sockets below that. In your problem the ToMin value (To minimum) should be 0.0 and the ToMax value (To Maximum) should be 1.0. The FromMin (From Minimum) and FromMax (From Maximum) values depends on you input.

Create python scripts
You have to create a script with this code:
import bpy

# create an index to be used in a dictionary
def idx_to_co(idx, width):
    r = int(idx / width)
    c = idx % width
    return r, c

# create a dict from a list
def px_list_to_dict(px_list, width):
    px_dict = {}
    for idx, px in enumerate(px_list):
        px_dict[idx_to_co(idx, width)] = px

    return px_dict

# return the maximum color value in a Black_and_White image
def max_color_bw_image(image_name):
    # access image from blend file
    img = bpy.data.images[image_name]

    # initial max_value to compare with the image
    max_value  = 0.0

    # tuples!
    img_width = img.size[0]
    #img_height = img.size[1]

    # slowest part is the transfer from pixel array to list
    pxs = tuple(img.pixels)
    #r,g,b,a = pxs[::4], pxs[1::4], pxs[2::4], pxs[3::4]
    r,g,b = pxs[::4], pxs[1::4], pxs[2::4]
    #px_list = zip(r,g,b,a)
    px_list = zip(r,g,b)

    # create dictionary
    px_dict = px_list_to_dict(px_list, img_width)

    # iterate over the dictionary and get the maximum value
    for key, value in px_dict.items():
        # evaluate only r color coordinate since the image is BW
        max_value = max(max_value,value[0])

    return max_value

# return the minimum color value in a Black_and_White image
def min_color_bw_image(image_name):
    # access image from blend file
    img = bpy.data.images[image_name]

    # initial min_value to compare with the image
    min_value  = 1.0

    # tuples!
    img_width = img.size[0]
    #img_height = img.size[1]

    # slowest part is the transfer from pixel array to list
    pxs = tuple(img.pixels)
    r,g,b = pxs[::4], pxs[1::4], pxs[2::4]
    px_list = zip(r,g,b)

    # create dictionary
    px_dict = px_list_to_dict(px_list, img_width)

    # iterate over the dictionary and get the maximum value
    for key, value in px_dict.items():
        # evaluate only r color coordinate since the image is BW
        min_value = min(min_value,value[0])

    return min_value

bpy.app.driver_namespace['min_color_bw_image'] = min_color_bw_image
bpy.app.driver_namespace['max_color_bw_image'] = max_color_bw_image

Thanks to Blender scripting blog for explaining how to work with images files.
Add drivers to execute the scripts dinamically
Finally you have to add a driver to the From Min parameter (min_color_bw_image function) an another driver to the From Max parameter (max_color_bw_image function) of the Map Range node.
Note: You have to use drivers of Scripted Expression kind and type the name of the datablock image. You can not use driver variables for strings. For example, you can write "max_color_bw_image function('my_image_datablock_name')" in the Expression textbox of the driver.
That is not the topic of this question. I have created an article in my blog about how to create a python script and add it to a driver in a node.
These are the resutls:
No Map Range used:

Map Range used:

And exactly how do you set those FromMax and FromMin values dynamically as OP asked?

Interesting, but figuring out those min and max values is half the problem ;D.

Note that this can also be done with a color ramp node, without the need for an extra node group

I think that it is not possible to set the Max and Min values only through nodes. You can determine the max and min values if you evaluate you map, take the min and max values and then you use them in your node set up. There are not nodes to collect the values of your pixels before rendering. Besides you map is a texture in cycles and it is evalulating at render time, depending on how it is applied to you mesh.

With OSL language you will have the same problems. The only way may be creating two drivers with python and connecting them to the FromMax and FromMin sockets in my node group.

Will this work with any input, not just image textures, because it looks like the python script is only ready to handle images from disk, when there is also procedural data to account for?

The script will work with the name of a datablock image. In my example the name of the datablock is the same that the name of the file. That name is given by blender when I opened the image in the Image Texture Node. Besides the script is optimized to work with images. Other simple scripts will take a long time to get the maximum and minimum values. This one is fast enough. You need to provide the name when you set up the driver. You can create another driver with another image datablock name and the same python function, but not with other kind of datablock.

Since in cycles nodes there isn't really a way to deal with an image as a whole, only on individual pixels this is technically impossible to do perfectly.  But I have come up with a very ugly method of doing it imperfectly, i.e. not sampling all the pixels of the image.
First I made two group nodes, one which returns the maximum of two inputs, the other returns the minimum.
Here is the max node:

The min node is identical except that the math node is set to Less Than.
Now comes the ugly part.  What I did was to duplicate the image texture node several times. Each node is using a different vector so the more nodes you use the more places you sample the image.  The colors from each image texture node are sent through a progressive series of min and max nodes so the min and max nodes at the end will have the minimum and maximum of all the pixels sampled.

This example samples 11 pixels along a diagonal of the image and gives the minimum and maximum of each.  The more duplicates you make the more accurate the result.
Here is the .blend file:

The image I am using is CC-0 from Pixabay.

Run the image, in this case a pointiness input for Suzanne through the following node setup.  Keep in mind, the invert value was arbitrarily chosen but works quite well for almost any image.  Out of the 'Normalizes' frame comes the image that is quite close to being valued from 0-1.  If you further want a custom range placed on those values, run the output of that frame into the Custom Range frame.  In the second frame, simply enter the minimum and maximum values you want as the range for your image.  Run the output where ever you'd like.

Would you mind explaining how those nodes work, as well as any short comings? What is your strategy?


text:
Turn weight paint(vertex groups) into vertex paint?
Can I turn weight paint(vertex group data) into vertex paint? I would like to take the weight paint value and convert it into a black and white grey scale vertex paint map.

you forgot a tag that may help a lot here -> Python!

@MarcClintDion Tag the question, not the answers. Even if the only solution is python, if the OP isn't specifically looking for a python solution, then I think the current tags are fine.

True but for some reason I felt that GiantCowFilms would not have a problem with Python solutions as well.  Maybe I'm remembering history wrong.  Anyways, the reason I brought it up is because some people may just be skimming the tags only and moving past questions with no Python tag and I was pretty sure there was no built in tool to do this.

I don't mind python if there is no alternative.

@MarcClintDion It seems there are differing opinions on this.. e.g. http://meta.stackexchange.com/q/59333/238438 and http://meta.stackexchange.com/q/184658/238438 (the second one has no answers, but links to a bunch of related/duplicate questions with answers)

gandalf3:  There was a good point made on that first link.  Since I believed that there was no in-house tool already for this task and that Python would likely be necessary: I should have just tagged it myself since I knew it was probably needed here.   Thanks.

I think you will still have to do a bit of scripting to get the following to work but it does most of what you want.  A while back, someone posted a question about how to convert an existing script that turns Weight Paint to Vertex Color Paint, he posted the script link and there are a couple reasons why I decided to post this as an answer instead of only directing you to the link.
First, there is an important step necessary to get this to work properly.
Second, I'd like to also post the script here directly in case the link to the external site goes down, this way it will still be available here.
To start with, Vertex Color Paint starts off as all white and if you try to use the Addon with the Vertex Colors as all White then it fails weirdly.  The first results I got looked like the following.  It transitions from white to grey then back to white.  It's not black where the blue is in Weight Paint mode.

However, if you first add a Color vertex group and then make that group black, the Addon works fine.  Just set the brush color to black and use the Set Vertex Color shift +k

Now you will have all black vertex colors.
So now you can enter weight paint mode and use the Addon which can be found in the spacebar search menu under Weight2VertexCol
You should get results something like the following.

Now the fun part, you have to modify the Addon to invert black and white.  Fortunately, the math for this is easy, unfortunately I don't know Python scripting very well and I'm mediocre with math.  Now if I think correctly(which I don't always do) you can use (x*-1.0)+1.0 to invert black and white.  So I assume if we find the place in the script that writes the Vertex Colors and we place that variable where the x is in the above formula then the script should do what you want.
I'll just post the script for now and then maybe someone can figure this last part out. I'll be really surprised if that code works without some indentation reformatting using a program like PyCharm CE since the code window here botched the copy and paste and I had to do a bunch of manual indentation.  Anyways, here is the link to the script on the external site so people can just use this copy as a last resort.
https://bitbucket.org/kursad/blender_addons_weight2vertcolortransfer/src/42070d95e0063df441b4f2d617492669b690592c/src/vertex_color_weight_transfer.py?at=master
The script has the filename -> vertex_color_weight_transfer.py in case anyone from the future wants to Google it.  His name is listed in the script below.
I put some notes after the script about how I think you can modify it to make Red = 0.0 and Blue = 1.0 instead of what it does now(Unless I'm confused and it already does.)
import bpy
from mathutils import Color
import random
from bpy.props import *

import bmesh

bl_info = {
    "name": "Weight2VertexCol",
    "author": "Kursad Karatas",
    "version": (0, 1, 0),
    "blender": (2, 6 ,6),
    "location": "View3D > UI panel >CopyWeightColors",
    "description": "Transfers Weights as Vertex Colors",
    "warning": "",
    "wiki_url": "",
    "tracker_url": "",
    "category": "3D View"}

class Weight2VertexCol(bpy.types.Operator):
    """Tooltip"""
    bl_idname = "object.weight2vertexcol"
    bl_label = "Weight2VertexCol"
    bl_space_type = "VIEW_3D"
    bl_options = {'REGISTER', 'UNDO'}

    method=bpy.props.BoolProperty(name="Color", description="Choose the coloring method", default=False)

@classmethod
def poll(cls, context):
    return context.active_object is not None

def execute(self, context):
    transferWeight2VertexCol(context, self.method)
    context.active_object.data.update()
    return {'FINISHED'}

def transferWeight2VertexCol(context, method):
    me=context.active_object
    verts=me.data.vertices

    col=Color()
   col.h=0
    col.s=1
col.v=1

#vcolgrp=bpy.context.active_object.data.vertex_colors.keys()

try:
    assert bpy.context.active_object.vertex_groups
    assert bpy.context.active_object.data.vertex_colors

except AssertionError:
    bpy.ops.error.message('INVOKE_DEFAULT',
            type = "Error",
            message = 'you need at least one vertex group and one color group')
    return

vgrp=bpy.context.active_object.vertex_groups.keys()

vcolgrp=bpy.context.active_object.data.vertex_colors

#Check to see if we have at least one vertex group and one vertex color group
if len(vgrp) > 0 and len(vcolgrp) > 0:
    print ("enough parameters")

    #Colored
    if method:
        for poly in me.data.polygons:
            for loop in poly.loop_indices:
                vertindex=me.data.loops[loop].vertex_index

                #Check to see if the vertex has any geoup association
                try:
                    weight=me.vertex_groups.active.weight(vertindex)
                except:
                   continue

                #col=Color ((r, g, b ))
                col.h=0.66*weight
                col.s=1
                col.v=1
                me.data.vertex_colors.active.data[loop].color = (col.b, col.g, col.r)

    if not method:
        for poly in me.data.polygons:
            for loop in poly.loop_indices:
                vertindex=me.data.loops[loop].vertex_index
                #weight=me.vertex_groups['Group'].weight(vertindex)

                #Check to see if the vertex has any geoup association
                try:
                    weight=me.vertex_groups.active.weight(vertindex)
                except:
                    continue

                col.r=weight
                col.g=col.r
                col.b=col.r
                me.data.vertex_colors.active.data[loop].color = (col.b, col.g, col.r)

class MessageOperator(bpy.types.Operator):
    bl_idname = "error.message"
    bl_label = "Message"
    type = StringProperty()
    message = StringProperty()

    def execute(self, context):
        self.report({'INFO'}, self.message)
        print(self.message)
        return {'FINISHED'}

    def invoke(self, context, event):
        wm = context.window_manager
        return wm.invoke_popup(self, width=800, height=200)

    def draw(self, context):
        self.layout.label("A message has arrived")
        row = self.layout.split(0.25)
        row.prop(self, "type")
        row.prop(self, "message")
        row = self.layout.split(0.80)
        row.label("")
        row.operator("error.ok")

#
#   The OK button in the error dialog
#
class OkOperator(bpy.types.Operator):
    bl_idname = "error.ok"
    bl_label = "OK"
    def execute(self, context):
        return {'FINISHED'}

def menu_draw(self, context):
    self.layout.operator_context = 'INVOKE_REGION_WIN'
    self.layout.operator(Bevel.bl_idname, "Weight2VertexCol")

def register():
    bpy.utils.register_class(Weight2VertexCol)
    bpy.types.VIEW3D_MT_edit_mesh_specials.prepend(menu_draw)

    #error window
    bpy.utils.register_class(OkOperator)
    bpy.utils.register_class(MessageOperator)

def unregister():
    bpy.types.VIEW3D_MT_edit_mesh_specials.remove(menu_draw)
    bpy.utils.unregister_class(Weight2VertexCol)

if __name__ == "Weight2VertexCol":
    register()

The following lines look like where the Red and Blue are being transferred to Black and White.
The col.r = weight is a pretty good indication.  So is the fact that all three color channels are being assigned the same information. That is how you make a grey scale color which is what we are looking for here.
col.r=weight
col.g=col.r
col.b=col.r
So, as a starting point, I would modify the first line of that snippet to be
col.r= (weight*-1.0)+1.0
and then I would test it.  It should do what you want I think.
What would be even better is if you were to find a way to modify the code so that it automatically makes the Vertex Colors all black for you as part of the script which will save you a few steps.
UPDATE:  I tested the invert formula and now the script seems to do what you want, here is the result.  Also, with the greyscale inversion added, the initial Vertex Colors should start off white instead of black so this saves a bit of setup for you.

This is a really old thread, but I want to add a little correction: the best way to invert a color/alpha value is to simply subtract it from one. It's actually the same math, x*-1 + 1 = 1-x, but one fewer calculation can save time. I do this a lot in shaders, where performance does matter.

Comment on old threads all you want, it's not an offense.  Your point is valid especially with shaders.  I use 1-x in GLSL as well.  It slipped past me here, thanks for pointing it out.

The answer is now super easy for Blender 2.9 (I have only tested with 2.91)
* See bottom of post for reference images

Have your target object selected and relevant vertex group ready
Enter vertex paint mode (Ctrl+Tab, 8)
a. Check that you have the vertex group selected on the right under the "Object Data Properties" menu
b. Select the top "Paint" menu > "Vertex Color from Weight" (or search it with spacebar)
Voila! You have painted verts from black to white based on 0-to-1 weight

With Images

Have your target object selected and relevant vertex group ready

Enter vertex paint mode (Ctrl+Tab, 8)

a. Check that you have the vertex group selected on the right under the "Object Data Properties" menu
b. Select the top "Paint" menu > "Vertex Color from Weight" (or search it with spacebar)

Voila! You have painted verts from black to white based on 0-to-1 weight

Here's a script for Blender that does the same thing, works in 2.8. It borrows some from the other script, but it's mostly my own. It's a little rough around the edges, I haven't made it into an addon yet. It'll be a while before I bother to improve it, though, so I'll post it here for anyone that needs it.
How to use:
Select the object you want to copy WP to VP or VP to WP. The active WP or VP layer will be copied to VP or WP (respectively) and take the same name + '_Copy'. If you want to copy VP to WP, run the script as it is. If you want to copy WP to VP, comment out line 56 that says CopyVPaintToVWeight(obAct) and uncomment the line beneath it that says CopyVWeightToVPaint(obAct)
At some point, I'll polish this, add features, and update it. It's not a priority for me at the moment, though!
#feel free to use this code for any purpose, anywhere
import bpy
from mathutils import Color

def CopyVWeightToVPaint(ob):
    values = GetListFromVertexDataLayer( "VW", ob)
    vCol = (ob.vertex_groups.active.name + "_Copy")
    ob.data.vertex_colors.new(name = vCol)
    for l in ob.data.loops:
        i = l.vertex_index
        val = values[i]
        ob.data.vertex_colors[vCol].data[l.index].color =  (val, val, val, val)

def CopyVPaintToVWeight(ob):
    values = GetListFromVertexDataLayer( "VP", ob)
    grp = (ob.data.vertex_colors.active.name + "_Copy")
    ob.vertex_groups.new(name = grp)
    for key in values:
        ob.vertex_groups[grp].add([key], values[key], 'REPLACE')

def DesaturateColor(col):
    #just a simple average is good enough for now
    noAlpha = []
    for i in (range(len(col)-1)):
        noAlpha.append(col[i])
    return (sum(noAlpha)/len(noAlpha))

def GetListFromVertexDataLayer(layerType, ob):
    outList = {}
    if (layerType == "VP"):
        print ("Getting " + str((len(ob.data.loops))) + " values from paint layer:", ob.data.vertex_colors.active.name)
        for l in (ob.data.loops):
            i = l.vertex_index
            #should check if there's already an i in outList
            j = l.index
            col=[]
            for channel in (ob.data.vertex_colors.active.data[j].color):
                col.append(channel)
            val = DesaturateColor(col)
            outList[i] = val
    elif (layerType == "VW"):
        print ("Getting " + str((len(ob.data.vertices))) + " values from weight layer:", ob.vertex_groups.active.name)
        for v in ob.data.vertices:
            try:
                weight = ob.vertex_groups.active.weight(v.index)
                #I'm sure there's a better way
            except:
                weight = 0
            outList[v.index] = weight
    print ("Length of output:", len(outList), "Expected Length:", len(ob.data.vertices))
    return outList

obAct = bpy.context.active_object
obActData = obAct.data
CopyVPaintToVWeight(obAct)
#CopyVWeightToVPaint(obAct)

Tissue addon 0.3.38 for Blender 2.8 can convert weights to vertex color.

Your answer would be much better if you added how to convert vertex colors with the addon and not just simply said that it can do such.

FJSnyman's answer is great and simple.  Its only drawback is that its not dynamic.  Here's a scriptless solution, that requires no addons, that can be used with dynamic vertex groups (and works even in older versions of Blender):

Create a plane (or anything).  Give it a vertex color layer and paint it all 1.0 white.  Make it non-rendering.

Create a vertex color layer for your rendering object.  Give it the same name as your plane's vertex color layer.  Paint it all 0.0 black.

Give your rendering object a data transfer modifier copying face-corner data, vertex color.  I've specified the layer in case you have multiple.  I'll use "nearest corner of nearest face" as the copy mode, but a few other options will work (and the ones that don't, might just be a bug with Blender.)  Finally, specify the vertex group you wish to visualize for the modifier.

You're just blending from black to white on the basis of the vertex group.  Here it is with a vertex weight proximity modifier preceding it:

Depending on what you want to do with this, you might consider that you're using vertex color here to represent non-color data, but that Blender assumes that all vertex color is sRGB color.  That might impact what you want to do with the vertex color in nodes.  Just a warning that a linear vertex group falloff, interpreted as vertex color, will lead to a non-linear falloff once Blender does the color space conversion.

I can also verify this dynamic option works, and was exactly what I was looking for.
Here is an example blend file, this is using version 2.91: https://ufile.io/3phks2rr


text:
Control custom properties
How can I add remove and create a callback/event for a custom property using bpy. I have a scene, called scene, and I want to add a custom property named x, defulat value 2 (as intereger), and a callback foo, to run when it is changed. I also need to be able to read the value from it, and delete it. How do I do this?

You can use static custom properties for this;
import bpy

def foo(self, context):
    print("my test function", self)

bpy.types.Scene.testprop = bpy.props.FloatProperty(update=foo)

This will print:
my test function <bpy_struct, Scene("Scene")

When the property is updated, through:
 bpy.context.scene.testprop = 11.0

Note that the FloatProperty function takes the arguments:
FloatProperty(name="", description="", default="", maxlen=0, options={'ANIMATABLE'}, subtype='NONE', update=None, get=None, set=None)

Which are all optional; This does, however mean, that you can define set and get functions for the property.
You can also use StringProperty and BoolProperty
If you want to add it to the UI, in a custom location, use something like:
class myPanel(bpy.types.Panel):     # panel to display new property
    bl_space_type = "VIEW_3D"       # show up in: 3d-window
    bl_region_type = "UI"           # show up in: properties panel
    bl_label = "My Panel"           # name of the new panel

    def draw(self, context):
        self.layout.prop(bpy.types.Scene, "testprop") #Make sure this matches the name you gave to your property.

bpy.utils.register_class(myPanel)

It will be found under the Scene tab, in the Properties panel, otherwise.
The custom property is basically a field and can be read, programatically, as:
bpy.type.Scene.testprop

And delete them with:
bpy.ops.wm.properties_remove(data_path="scene", property="testprop")

You can check the relevant docs here, and the API here.

Yes, but how do  I read it.... though, and where in the UI is it going to show up?


text:
How to create a procedural embedded stone texture for ground/asphalt/pebbled concrete?
I'm trying to make some ground like or some asphalt like this procedurally in cycles; however, I don't have a good way to make the stones:

Ignore the large pebbles and the pine needles

Is there a good controllable solution?
The important things here are that the stones are distinct (both shape and color), adjustable in size, are distinct form the ground and can  be sharp edged or round edged (sharp edged is a requirement). Its really important that these stones look reasonable up close and that they are controllable.
To anyone thinking about using a voronoi texture, You will have to come up with some serious ways t alter it, as it stands, it has little promise, I tried:

Did you try the other voronoi texture type?

@TARDISMaker I used both of them to make that image

Pretty good question, but it's a little unclear exactly what you're after. Do you want a stony cement or do you want asphalt (or something in between)? The examples you provided look like both, so a person answering might be turned off, especially on this kind of site.

@SimonHeggie Both of those materials are made with stones embedded in settling liquid (that becomes hard). What I'm trying to do is find a good way of making the stones (that isn't fudging it). Sorry for not being clear. I have made some edits that hopefully clarify the goal a little better.

Now you have more chance of being answered :)

@GiantCowFilms, I understand why you want the procedural texture, but I'm curious to know exactly where you want to apply this texture. I had a similar challenge when working with masonry--when a brick wall was close to a viewer I wanted the joint lines between individual bricks to be visible to the degree that the indentations at the mortar joints were perceptible. But beyond a modest distance, perhaps 5 meters, or so, the mortar joints will be visible, but the geometry of the joint will not, so on anything further away, a 2D image suffices. It seems to me that Asphalt would be quite similar.

@brasshat I want this for close up renderings (about the distances you see in the photo. I have already managed to get decent results fudging it from a distance: https://i.sstatic.net/BcybT.jpg

I think I would use a procedural texture for the dirt or other material between the stones, then for the embedded stones in the first and third pictures you posted above, model the stones embedded in the dirt. I wouldn't model the whole stone, just a little bit more than shows above the dirt. The stones could be created by a script which would allow the user to control the size of the stone, and the distance between adjacent stones, and depending upon the type of rock each stone is supposed to represent, the stones could have a material and texture applied, too.

I'd recommend using Brick Texture as a core for stones generation. I've set up these nodes for some tests:

As you see I use Voronoi too (because you mentioned it) but just to shuffle the stones a little bit. I'm sure you can use noise or something else for it.
This gives us the sharp shapes we were after. We can use it as a mask then:
I multiply it by some color, mix with another instances of this "stones texture" with a bit different sizes/frequencies/color and finally add a simple noisy background. I also apply some Image Blur from b°wide NodePack

Personally, I like it when the stones are small and I'm not sure if you'll be satisfied with it much zoomed.

I also did't manage to reach the stones density as on your 2nd image without ending with many overlapping stones.
Here's my general set-up:

UPDATE:
To make it more clear how Bricks-Voronoi pair works I'll give some more images of Bricks without its companion.
No vector input (raw boring squares):

Noise texture:

Wave texture:

I'm curious how feeding the Voronoi texture into the vector for the brick texture works.... Otherwise this is definitely a good starting point, although I think it may need still a little more refinement

Well, vector alters location, form and overall pattern of the "bricks" drawn. I'll update the answer with images now.

I stopped at Voronoi because I could get aSTONishing look much easier with it ;-)
Sure it needs a lot more tweaking to get the final look. I'm still in research.


text:
Character Rigging in Blender for Unreal Engine
Can anyone help or direct me to definitive tutorials on proper rigging in Blender of imported FBX files, allowing the use of included character animations? Alternately, can an FBX be rigged inside Unreal?
When I set the FBX character import option to "None" for skeleton, the character's limbs are static during game play. When I set the FBX character import option to "UE4_Mannequin_Skeleton" for skeleton, the character and rig 'explode' in unpredictable ways.
The files can be downloaded here...
Distorted Unreal File: https://www.dropbox.com/sh/mcprmjannl0lfqj/AAAY4IF4OkZwLO_bLtyrfsrIa?dl=0
Thank you in advance for your help! This is a game-stopper (pun intended).
-uenovice

I'm currently playing with this too.
To get an idea of what you want to do, take the UE4 Mannequin's skeletal mesh and export it to FBX. File should be 853KB.
Import that in blender - on the blender import settings you want 'Z up' and 'Y forward', and on the Armatures tab you want 'Automatic Bone Orientation' ticked.
Then you have a clear look at what's going on with the UE4 mannequin (which has all those premade animations) - it has a root bone in the skeleton etc. From there you can work on changing the model to whatever you want and rerigging the existing armature. Then animation retargeting should work nicely.

Check out the "UE4 tools addon" made by Lluis Garcia, it is very helpful if you want to create animations for the standard UE4 skeleton :)


text:
Textures disappear when the rendering engine is switched to cycles
So in my graduation from blender internal to cycles, I've been experiencing numerous problems.
Now please bear with me, the answer is probably obvious but I'm new so cut me some slack.
This is how the model looks like in blender internal:

Now I transfer to cycles:

And I get this result:

The textures are there in the menu bar, but they will not show up no matter what I try.

Materials and textures work differently in cycles.
In BI, textures for the selected material are defined separately and most often in the properties editor.
In Cycles, textures are defined as part of the material itself and usually in the node editor (see Learning cycles material nodes).
Assuming a typical basic setup (one UV map, one texture, one material), then in cycles it should look something like this:

Make sure you are in the node editor
Make sure you are editing Material nodes
Add an image texture node (⇧ ShiftA> Textures > Image) and select your image.
The materials section of the properties editor will reflect what you do in the node editor. Editing the material in either the node editor or the properties editor will update the other.

If you have lots of materials you might try an automated conversion script, see How do I convert materials from Blender Internal to Cycles?