Struggling to get a nice Shade smooth on Low poly

With low-poly objects like this one you’ll have this kind of artefacts because Blender tries to smooth between these faces and Auto-Smooth won’t be able to fix it completely, it only takes the face angles into account.
A good way to improve your shading is to use the WeightedNormal modifier in addition to the Auto-Smooth option. This modifier, like Shade Smooth or Auto-Smooth, will act on the split normals. The split normals are the normals at each corner of the face that determine the shading between the faces. If they converge they will tend to round the shading, if they diverge they will tend to flatten the shading. Here, the same cube, the left one with Shade Flat, the right one with Shade Smooth:

The WeightedNormal modifier will make the split normals converge but their direction will take the face size into account: The higher the Weight value is, the more the large faces will weigh on the split normals. Therefore to preserve the large faces and to smooth the smaller faces, keep the value very low. Here, without and with the modifier:

Note that you can choose a vertex group.


Setting camera to position where it can render a seamless repetable orthographic scene

The trick with Orthographic cameras in Blender is that they use a specific scale system, such that 1 Blender unit always matches the largest dimension of the render output.

That means if you are rendering an image of $1920\times1080$ with a scale factor of $1$ then $1920$ pixels in your image will match exactly one Blender scene unit.

If the image is say $2048\times4096$ with a scale of $2$ that means that $4096$ pixels will match exactly two Blender units.

That being said in your case you need to do some math.

Place you camera such that it points exactly at the center point C midway between your two marker empties $A$ and $B$, while being rotated exactly an angle of $45°$ in the X axis. Distance is unimportant.

You can select both empties $A$ and $B$ and easily place the 3D cursor to the selection with Cursor to Selected, and then use the operator Center View to Cursor to center the camera between the two.

Now determine the distance between the two empties $[AB]$. Since it forms a right-angled triangle, with the distance being its hypotenuse, then the exact scale of the camera will be the square root of this distance. In my example above they dist exactly two units apart, so $\sqrt{2} = 1,4142$ will be exactly the scale factor you must place in the orthographic camera.


Need help with soft body physics for noodle legs character

You can use the Soft Body Goal in conjunction with a Vertex Group to 'pin' one or more vertex to the 'body' of the character - either directly (using Hook to Selected) or via an Empty.

Start by creating your character's body - in my case I'll stick with the default cube.

Create a leg as a string of vertices. The simplest way of achieving this is to add a Curve/Path and convert it to a mesh (select it and go to Object/Convert To/Mesh. Position it and scale it so that it is roughly in place. Add a plane for the floor, make it a Passive Rigid Body, and add Collision in the physics panel.

Select the 'leg' and subdivide it so it's got sufficient vertices to bend realistically but don't subdivide too much - the distance between vertices should ideally be comparable to the eventual 'thickness' of the 'legs'.

Next, in Edit mode (Tab), select the vertex at the top of the leg, press Control+H, for the Hook menu, and select Hook to New Object. This will create an Empty and hook the selected vertex to it.

While that single vertex is still selected go to the Mesh properties panel, add a new Vertex Group (click the '+') and Assign that vertex to the group. You can rename the Vertex Group to something appropriate by double clicking it and typing the new name (eg, 'Pin').

Swap back to Object mode (Tab), select the Empty, hold down Shift and select the 'body' - so that both are selected, and Control+P and Set Parent to Object to parent the empty to the 'body'. Moving the 'body' should now drag the vertex along with it. Move the 'leg' in position so it starts the simulation in the correct place.

Select the 'leg' and add Soft Body in the Physics panel. In the Soft Body Goal, set the Vertex Group to the 'pin' vertex group you created earlier. Set Soft Body Goal Strength and Goal Stiffness to their maximum values to bind the vertex strongly to the parent - the other vertices will be affected only by the Soft Body simulation.

Add Active Rigid Body physics to the 'body' or animate it with keyframes. The soft body leg will follow the motion of the 'body', pinned by the single vertex. You can add some variation to the leg (which assists with it 'folding' rather than getting stuck in a vertical line of perfectly aligned vertices) by selecting all vertices in Edit mode and selecting 'Randomize' in the Tool panel and setting a suitably small Amount of random variation.

Adjust the Soft Body Edges properties to tune the begaviour and stretchiness of the soft body. For example, increase the Pull spring strength to 0.9999 and maybe increase Bending Spring to, say, 0.5 to give the leg some resistance to bending. Also consider enabling Edge collision so edges don't pass through sharp edges of rigid bodies.

To give the leg some thickness, enable Soft Body Self Collision. The self-collision is based around a series of spheres around each vertex that repel other vertices. The size of the 'collision ball' around each vertex is usually based on the length of the edges connected - setting the Calculation to 'Average' will use the average spring length for the radius of the collision sphere and this is further adjusted by the Ball Size setting. Setting this to 0.45 (the default) and Average (the default) results effectively in spheres along the length of the soft body leg that almost touch when the leg is straight. This should give reasonable results providing the distance between the vertices are of a similar length to the intended thickness of the leg -  otherwise adjust the Ball Size until you get the desired effect. Note, however, that ball sizes > 1.0 can produce strange effects since the ball will be larger than the neighbouring edge and will push away the adjacent vertices. If this occurs, reduce the number of vertices (so the spacing is close to the desired thickness of the soft body) and try again.

To generate a mesh around the 'leg' add a Skin modifier followed by a Subdivision Surface modifiers. To adjust the thickness of the 'skin', go into Edit mode, select all vertices (A) and press Ctrl+A or manually adjust the Mean Radius X/Y properties in the Properties panel (N). You can also add an additional Subdivision Surface modifier before the Skin to add additional smoothness to the coils (otherwise it can appear a bit angular).

Duplicate the same for the other 'leg'. Add Collision to the 'body' and adjust the collision on the 'body' and the 'floor' to set the 'Outer' Soft Body margin to match the thickness radius of the 'leg' - this will result in the appearance that the outer surface of the 'leg' collides with the surface (since it's actually the vertex that performs the collision, setting the 'Outer' to the radius of the soft body gives the surface a collision distance that matches what would occur if it were the outer edge of the soft body that was colliding).

Note : If you get strange behaviour with the soft body after changing the 'Hook' or the Soft Body settings, c heck the sequence of your modifiers since the order is very important. You should always have the Hook first, followed by the Soft Body, followed by the geometry modifiers (ie, Subsurface, Skin, etc.). In my case I used Hook, Soft Body, Subsurface (set to level '1' to smooth out the bends in the leg), Skin, Subsurface (set to level '2' to smooth out the Skin). It can also help to adjust the Soft Body Solver settings - decrease Error Limit (eg, from 0.1 to 0.01) and try increasing the Min Step (eg, 10 to 40) - vary one setting at a time and re-run the simulation to evaluate how this affects the simulation.

Blend file (free all bakes and re-run the animation to rebuild the Soft Body Cache) :


A spiral or a helix is described using the set of parametric equations as follows:

$$
\begin{aligned}
x &= R\cos{t}\\
y &= R\sin{t}\\
z &= \delta t
\end{aligned}
$$

Where $R$ is the radius, and $\delta$ is the vertical frequency of the curve. By implementing this, we get:

Now, we are going to move the points of the helix with a random amount in the direction of your choice, I can see you are offsetting them in the direction of the $x$ axis (This is the equivalent of sampling a random vertex along your instanced paths), so lets do that:

The points we just computed act as the first vertex of each edge, the other vertex can be computed mathematically or just by using the Project Point On Line node, the line starts are defined as the position of the next point and the ends are defined as the position of the next point plus some value in $x$ just to define the direction. To the location of the points of the next points, we simply shift the vector list backward, by doing so, each point is aligned with the one following it. Then we create the edges from the points and their projection. The node tree is as follows:

And the result is as expected (The horizontal lines are just for visual aid, not part of the implementation and they are the lines you originally had in your file):

You may notice that there is an extra edge going from the last vertex to the x axis, this is due to the fact that after shifting, the first vector became aligned with the last, and this is just a normal consequent of doing so. To fix that, just remove the last vector and last edge from the output using the slice  or remove list element node.


Mesh does not move along with bones in pose mode (uses rigify armature) Ver 2.75

I played around with your .blend a little (good you uploaded it...). I realized that the Armature modifire got removed. I dont know how this happend.

Just add the modifire again and you will be fine.
In the picture you can see the needed settings.
I also realized that your armature is scaled extremely big. preess alt + s to reset the scale if this size wasn't intended.
By the way you can delete all the annoying meshes in the last layer. they arn't needed anymore.


Make one solid from mesh built out of multiple squares by snapping to grid

Blender is not Minecraft. You don't add boxes.
The best way not deal with unnecessary geometry is not to create it in the first place.
It makes no sense to have a whole bunch of duplicated faces just to delete them later.
Start your project over, and this time create just the shapes you need, with no internal faces. It will take you less time than to fix the current model and set you on the correct path to learn modelling.


Linking the color of one mesh to a second mesh

I found a way to do this using translucency and some node tricks to make the tube emit light when it is under the ball, it isn't perfect but it works fairly well.
First give the ball a pure white transparent shader mixed with a translucent shader based on the is camera ray output of the light path node:

This will make the ball invisible to everything but the camera, this isn't necessary but will reduce noise, artifacts, and rendering time.
Next give the tubes a diffuse shader mixed with an emission shader (with a very high strength) based on the is transmission ray output of the light path node and plug the vertex colors into both the diffuse and emission shaders:

This will make the tube emit light when a ray is traveling through an object (such as a translucent object), but the tube will look like normal (the diffuse shader) elsewhere.
This is the result:


Hit Numpad 7,3 or 1. When you navigate out of the view, it will be reset.


Problem exporting model from Blender to 3DS Max

I had the same problem. I solved the problem by changing the export settings


Does Blender still render while off of the screen?

Yes:

I tested it several times, and observed variations of ±1 second for both of them, so it seems unlikely that the .14 second difference is of any significance.

However, if you use the computer for other things while rendering, that could impact the speed.


How to get a high resolution image of the material preview?

You can adjust the DPI, zoom in, and full screen the Materials panel to make it bigger, then take a screenshot.

Make the Properties editor full screen by hovering over it and pressing Ctrl↑

Increase the DPI in User preferences > System

Zoom in on the panel by holding CtrlMMB and dragging the cursor

Result: (click for full size)

The obvious limitation being that you can't go larger than the maximum zoom, or larger than your monitor.
Get the blend:
Alternatively, you can download the blendfile from the GIT repo with your browser via Phabricator:

Blender Internal preview file

Cycles preview file

To download a file, go to the link above and click Download raw file on the right:

Then click Download:

The different preview scenes are on the following layers:
Layer 1: Flat XY plane
Layer 2: Sphere
Layer 3: Cube
Layer 4: Suzanne (Monkey)
Layer 5: World Sphere
Layer 11: (the first layer on the second row) Hair


Here are 2 ideas based on the same principle: create holes in an Icosphere, put a Point light inside and surround it with a Volumetric Scatter cube (density 0.04).

The first idea creates "transparent" holes using a voronoi texture node setup and uses the "Is Camera Ray?" Light path node to hide the holes to the camera. Quite versatile as it can be used on any object without modifying geometry.

Second idea: remove random faces in the back side of the icosphere. Allows to keep a simple material on the sphere but requires it to always face the camera to avoid seeing the holes.


How to export to dxf file without the geometry having a triangular mesh?

Unfortunately the DXF exporter always triangulates faces before exporting. I would suggest using .fbx as format instead, which can be imported by AutoCAD.


I accidentally closed the layout I was working on

If I understand you correctly you fear your 3d work is lost. Rest assured, even if you remove a view in the interface, it doesn't affect your 3d scene.

All you need to do is resetting your "Layout" workspace. This is purely an interface thing and is irrelevant to the content.

One way to reset your "Layout" workspace is pressing the plus(+)-button on the workspaces tabs and selecting General -> Layout.

Alternatively you can open Blender, then select "File -> Open" from the top menu. Deactivate "Load UI" on the bottom left and then find and open your file.

This way any .blend will open with your startup Blender workspaces and interface settings.


how can i make the player run in a certain path ? i already had the animation

Usually you play a looping walking cycle (on place) and It's the parent at the same time.

The resulting animation looks like walking.


Manual with good topology

To get the topology in your second image. Select the loops you want to delete with Alt RMB , or in Wireframe mode use border select (B). Then press Delete and choose Edge Loops.

Manual with N-gons

To delete all edges and vertices on a face and just be left with a large N-gon. Select all the faces on a plane (example everything on the top); then press Delete and choose Limited Dissolve.

Modifiers

If you are less picky about topology, and want a more automatic solution Then use a Decimate modifier. For examples like your's set the Decimate modifier to Planar, then adjust the angle limit to suit your needs.


How do I set up the bone constraint Floor?

You can parent the control bones (the small green ones in your image) to your robots foot so they stay with your foot, they just can't be parented to the flap bone. The easiest way to set this up is to use the IK constraint, so you're on the right track.

Here's the rig that I used to test this out on. It's a simple IK setup with one extra bone as the main foot control and the flaps and control bones parented to the foot bone. The center green bone has a copy rotation constraint so that it follows the IK control bone.

Once you add the floor constraint, you will need a floor, so make sure you have  a plane for the foot to collide with. Once you add the floor constraint and have the IK constraint setup as well, it should collide. If it doesn't, see if you can move the control bone manually. If you can't move it manually, constraints can move it either, so make sure you can move each flap manually.

Since it doesn't look like the flaps will move that much in your case (not a huge angle) this next step might not be necessary. However, you may still notice that as the control bone hits the floor, the IK bone will still point at the root of the control bone (as it should), but the distance from the control bone to the root of the flap bone will have shrunk, meaning the tip of the flap bone will dig into the floor a little bit as the tip passes through the root of the control bone (the more the flap has to move, the more noticeable this will be). To fix this, we can use the limit distance constraint on the control bone. Set the target to be the corresponding flap bone. Set the clamp region to Outside so that the control bone will always stay a set distance from the root of the flap bone. The default distance should be fine, if not just click the reset distance while the foot is off the ground and you should be good to go.

Now you may notice another issue. After adding this constraint, the control bone stays at the tip of the flap, but now passes through the floor a bit. I'm not sure why this is exactly, but I think it has to do with how blender handles multiple constraints. A quick fix is to add a second floor constraint to each control bone  with the exact same setup, so you have one floor constraint before and after the limit distance constraint. The control bone should now stay on the floor better (in my test is still passed through but only a tiny amount that wasn't noticeable except when looked for closely).

My final rig looks like this:

The flaps have an IK constraint and nothing more.

After recreating this to add some images, it some of the bones seem to glitch after a transform and they end in the wrong position. Once I move them again, they snap back to normal though. This may simply be an error in how I did my setup, but if you have issues with it I will look into it further.


How to normalize the color values of a shader (Pointiness)?

In order to map the pointiness values in the current view to a 0-1 range, a renderer would have to accumulate information about the entire frame or object, and then backtrack to adjust values between the maximum and minimum found. I'm confident Cycles can't do that.

There might be a more accurate method via baking and a histogram, but the approach I took to doing it by eye was to put the values through a color ramp, with the top 2% yielding blue, and the bottom 2%, red.

I then adjusted the 'Add' node to get a bare minimum of red, and the Multiply node to just hit the blue end. These were the figures for Suzanne, (top row), and Suzanne subddiv 2.

The top pair below were for calibration, the bottom pair the result with the color ramp taken out.

Maybe the regions would match more closely if we glue her eyes in.


How can I move my character's foot in the direction I chose with a key input?

I am new as well. But i am pretty sure you would not create the event in blender, but a game engine.

To explain, in Blender you would create an animation of, lets say a swinging sword, and save that animation to your model.

Now that your model has an animation you would load your model into a game engine (such as Unity or UE4) and in the game engine you would setup your input handler (When i click, play swinging sword animation)

Like I said, I am new as well so I probably need someone to confirm.


How can I make a custom fbx exporter for unity?

you can make steps automatic
1.rotate the object by -90 degree around X-axis
obj.rotation_euler = (math.radians(-90),0,0)

2.press Ctrl + A and Apply => Rotation
bpy.ops.object.transform_apply(location=False, rotation=True, scale=False)

3.and set X rotation to 90 degrees
(do not apply this time)
obj.rotation_euler = (math.radians(-90),0,0)

also, you can export it by unit scale
bl_info = {
    "name": "Unity Fix",
    "author": "Kamali",
    "version": (1, 0),
    "blender": (2, 80, 0),
    "location": "File > Export > Export For Unity",
    "description": "Fix Pivot ,Location , Rotation , Scale ",
    "warning": "",
    "doc_url": "",
    "category": "",
}

import bpy
import math

def write_some_data(context, filepath):
    bpy.ops.object.origin_set(type='ORIGIN_CENTER_OF_MASS', center='MEDIAN')
    obj= context.object

    # reset location to the center
    obj.location = (0,0,0)

    # reset everything to make sure it won't change
    bpy.ops.object.transform_apply(location=True, rotation=True, scale=True)
    # set rotation to -90

    obj.rotation_euler = (math.radians(-90),0,0)
    # reset everything
    bpy.ops.object.transform_apply(location=True, rotation=True, scale=True)

    # rotate 90 degree along x axis
    obj.rotation_euler = (math.radians(90),0,0)

    # apply unit scaling
    bpy.ops.export_scene.fbx(filepath=filepath, use_selection=True,apply_scale_options='FBX_SCALE_UNITS',apply_unit_scale=True)
    return {'FINISHED'}

from bpy_extras.io_utils import ExportHelper
from bpy.props import StringProperty, BoolProperty, EnumProperty
from bpy.types import Operator

class ExportSomeData(Operator, ExportHelper):
    """Export For Unity"""
    bl_idname = "export_test.some_data"
    bl_label = "Export For Unity"

    filename_ext = ".fbx"

    filter_glob: StringProperty(
        default="*.fbx",
        options={'HIDDEN'},
        maxlen=255,
    )

    def execute(self, context):
        return write_some_data(context, self.filepath)

# Only needed if you want to add into a dynamic menu
def menu_func_export(self, context):
    self.layout.operator(ExportSomeData.bl_idname, text="Export For Unity")

def register():
    bpy.utils.register_class(ExportSomeData)
    bpy.types.TOPBAR_MT_file_export.append(menu_func_export)

def unregister():
    bpy.utils.unregister_class(ExportSomeData)
    bpy.types.TOPBAR_MT_file_export.remove(menu_func_export)

if __name__ == "__main__":
    register()


How to change the timing of the rigid body falling?

You will find the Rigid body cache in the scene tab. That is where you can adjust which frame when the simulation starts. Use the bake button after you adjusted the values to recalculate the physics.


In the key preferences you can search by key-binding. For some reason these parameters names are "Context Set Enum", but I swapped the first two and it worked for me.


I can go back to modify my Character after I put the Armature

Per my comment on your question, you appear to be in Pose Mode (which you referred to as 'armature mode'). If you hit Tab, you should be able to choose to switch instead into another mode. You'll want Edit Mode or Object Mode to get back into the basic modeling pipeline, or perhaps Sculpt Mode.

You can also control these options from the mouse-clickable menu in the bottom-left section of your 3D View window, which currently says Pose Mode in the image you posted. You can find this menu at the location indicated below:


There is an addon called Export UV layout that allows you to export your UV unwrap layout as vertex and edges so you can draw over them in whatever graphics editing software you use. Not sure if that is enough or what you were looking for.

If that is not enough you could assign different materials to your object's faces with different colors as desired, bake it to a texture using your existing UV layout and the export that baked texture to Photoshop so you can paint/edit over it.
Alternatively you may also play around with cycles procedural materials, and create a setup that highlights your geometry details in an informative way (the geometry input node as some useful options) and then bake the resulting shader to a texture using the UV layout.


Run code when addon is disabled through preferences but NOT when blender closes

Not sure this is the best answer, but you can check if the current space is the Preferences windows in unregister
def unregister():
    if isinstance(bpy.context.space_data, bpy.types.SpacePreferences):
        # your code here

This should run the code when the user disables the addon from the prefs windows and it should not run the code when Blender is closed. In other cases it may or may not run, so this only works if "best effort disable-detection" is okay for you (it sounds like it is).


can you rotate two edges symetrically without mirror modifier?

At the top bar, use your mouse to scroll over , far right.. your top bar will show XYZ buttons near the end. Depending on the object's origin, select X while you're on edit mode. You should get desired results.


cloth breaks away from armature as soon as first frame of bake begins

I figured it out. I did not realize that one has to set the key frames and animation data before the bake in order for it to follow. Duh, right. Its taking all of the information to bake clothing along with that includes location, rotation, and scale.


I went through the manual and found that it is supposed to work that way. you can instead go to user preferences and tick the loop tool add-on.

then subdivide the surfaces -> select the faces you want -> edit on the side panel ->
loop tools drop-down -> click on circle -> later you may delete those faces.
Add more subdivisions if you want a more accurate circle or add a subdivision modifier(you might want to clean up a bit by adding edge-loops.


Managed to get it to work by selecting diffuse/color


To select hexagons randomly as in your case, you must use the random function with vertex, edges or faces.

Then simply press " CTRL and  L " as mentioned Duarte.

Or press several times  " CTRL and  Numpad  + "  to add all part of the hexagons.


Python: Placing objects around a spheres surface with proper rotation

You can use Euler rotations (as they usually are in the UI).

The trick is to know from what these rotations will start, considering your coordinate system (longitude, latitude).

Longitute starts along the X axis.
Latitude around Z.

Also, Blender rotations are clockwise, so you need to minus the latRad (as math convention is counter clockwise).

So, from the image in your question, as the spike is up, you need to place it along X rotating 90 around Y and remove the latRad.

x = cos( latRad ) * cos( lonRad )
y = cos( latRad ) * sin( lonRad )
z = sin( latRad )

location = Vector((x, y, z)) * radius

locationFromWorld = location + worldLocation
scale3D = (scale, scale, scale)

pin.scale = scale3D
pin.location = location

pin.rotation_euler = Euler((0,(pi / 2)-latRad,lonRad)) # << Euler rotation from the given angles


Syntax highlighting in the Python command line is not supported currently.


I'm not sure why this is, but selecting stuff in edit mode only works using bpy.ops.select_all() or execute the code in object mode and the switch back to edit mode.
where ob is my armature object:
ob.data.bones['Bone'].select_tail = True
works if you're in object mode and then press tab in the viewport.

import bpy
arm = bpy.data.armatures['Armature']
bpy.ops.object.mode_set(mode='OBJECT') # .select only has an effect in object mode (don't ask me why)
for bone in arm.bones: # deselect the other bones
    bone.select = False
    bone.select_tail = False
    bone.select_head = False

arm.bones['Bone'].select_tail = True
bpy.ops.object.mode_set(mode='EDIT') # go back to Edit Mode, to see the results


It sounds like you probably have at least one (or maybe more) unwanted mirror modifiers on your eyes, at least one of which is set up to mirror using another object in your scene.  When you select the body and the eyes and try to move them, you're seeing the mirror reflection of the eyes move away from the body because they're mirrored across some other object that isn't being moved.  The original eyes might even be inside the body where you don't realize they're (correctly) moving with the body.

I'd suggest that you check the set of modifiers on your eyes and delete any mirrors.  If your eyes go missing entirely, you might want to select your body and "h" to hide it, to see if the eyes are actually inside.  (Afterwards, Alt-h will unhide anything you've hidden.)

If you end up with only one eye and want it mirrored, there are a few ways to do it right.  One way is:

Set the origins of both the body and the single eye to their respective geometries.
Position the eye in one socket.
Add a Mirror modifier with "Mirror Object" set to the body (so it's mirroring across the body origin), and check a single, appropriate axis (e.g., just "X") to mirror the eye in the right direction.

Then, shift-selecting both the eye(s) and the body should allow you to move them together.  You can also parent the eye(s) to the body and moving the body should automatically move the eyes.


Thanks for you answers guys!

As Mr Zak pointed Random in my Velocity settings was set to 1 instead of 0 which I probably changed to see what it is doing and simply turn it to 1 thinking that is the default value. I changed it back to 0 and all the particles are the same size.

Again, thanks for your help!


By default your material uses auto generated UVs. To use your manually created UVs you must change the input vector to UV map instead of Generated.


Unable to use API to call bpy.ops.render.opengl()

The operator works correctly and will render your image. However with the default arguments it won't switch to the UV/Image Editor. If you intend to replicate the behavior of Render > OpenGL Render Image then you will have to change the execution context. In general buttons in the user interface use 'INVOKE_DEFAULT' as execution context.

bpy.ops.render.opengl('INVOKE_DEFAULT')

Additionally you can use the write_still=True argument to save the file. It will write the file to the path specified in bpy.context.scene.render.filepath. The last line in your script could then be removed.


Forest by particle system and Tree addon?

I am doing that too and I fix it easily by checking the whole group option


Subdivide and separate face into different meshes

In Edit mode -> Select the face
W -> Subdivde -> tool shelf T or F6 -> Number of Cuts (in your case 3)
With the subdivided faces selected -> Ctrl + E -> mark sharp
Add edge split modifier -> uncheck edge angle
In Object mode apply the edge split modifier
(optional) in Edit mode -> select the faces if not selected -> Ctrl + E -> clear sharp
In Edit mode -> P -> separate by loose parts


Object gets tinted by nearby Object's Color

The answer for the question is quite simple - Diffuse setting, but the main problem might be the scene light setting, as part Why do this behavior happen? explained.

Diffuse Ray

You can change the diffuse setting in Properties Panel > Object > Cycles Settings >> Ray visibility : Diffuse

The color you see is mainly from the diffuse ray in that orange color, by default it light up nearby objects like it is an emitting material. It is not a mistake but a natural behavior in real world. The most easily way to FIX this problem is to turn the diffuse behavior down. Making the material won't bounces light in the diffuse light path.

Warning:

Turn off the diffuse ray will cause the rendered scene not accurate, making the render image seems to be wrong in some certain way.

Material Node Setup

You can also change that behavior in material node editor as follow:

With the Input > Light Path node, using diffuse value, you can change that material by using a mix shader with is diffuse factor. If you replace it by a white transparent shader, it will work as turn off the diffuse setting I mentioned above.

Why do this behavior happen?

And another issue is that in this scene, you have your light and environment poor set up. Making it too simple from some certain light path, in this case, the orange diffuse bounces.

The main reason of that is maybe you are using point/sun light, and toward a specified angle, which cause the white wall capture a lot of bounces from orange roof top.

You can change the angle of it, or you might also want to add more light around your scene, and object around it, making the light path more balance. Changing the radius of the point light may help as well.


Can someone explain why my Color Space options are different from any tutorial or documentation I've seen?

This is a tough one.  I just spent some time trying a number of color spaces trying to reproduce this, with no luck. What app was the PNG exported from? Does it have an unusual color space of any kind?  Also, do you have any node or shader add-ons loaded into Blender?


choose this here:

then this:

and you get:

you need this add-on enabled for this functionality:


Bind and apply SURFACE_DEFORM modifier without bpy.ops?

It turned out I had to do a scene.update() before applying the modifier, as the surface deform modifier was added by code via modifiers.new().

I'm still looking for a way to do the bind without the bpy.ops* however.


SOLVED.

One has to launch blender from within the downloaded package - then it takes in all libraries etc.

Although it claims X11 error, the blender shows up.

milias@lxg1213.gsi.de:~/Work/software/blender/blender-2.80-linux-glibc217-x86_64/../blender
Received X11 Error:
        error code:   8
        request code: 155
        minor code:   34
        error text:   BadMatch (invalid parameter attributes)
Received X11 Error:
        error code:   8
        request code: 155
        minor code:   34
        error text:   BadMatch (invalid parameter attributes)
found bundled python: /u/milias/Work/software/blender/blender-2.80-linux-glibc217-x86_64/2.80/python
Writing userprefs: '/u/milias/.config/blender/2.80/config/userpref.blend' ok


Dropping some textures when exporting fbx

For example if you're exporting for unreal engine you have to pack every external data (textures objects from other projects etc) into the .blend you're exporting. You do it by going into File>External Data>check the box on Automaticly pack into .Blend file and then save your project and export it again. I hope it did help :P


Of course right after I finally post here I figure it out,

I changed the Color Space on the Normal Node to "Non-Color" and that fixed it!


Surface normals still regular in edit mode after displacement map

If, in the Displace modifier, (as you could with most other modifiers) you click the little mesh-triangle tool-tipped 'Adjust edit cage to modifier result', you should be able to edit the vertices, and see the normals, of the modified mesh.


Copy Custom Property and set it as a suffix of an object's name

Try this
import bpy
for ob in [*bpy.data.objects]:
    if not ob.select_get(): continue
    if "id" not in ob: continue
    suf = "?id=%s" % ob["id"]
    ob.name += suf


You could write a shader in your engine that gets rid of unwanted faces. The best practice though - depending on the game style - might be to redo the model and make each bodypart piecewise - which is typically what games like half life, n64 and psx titles have done
meaning you start off with one mesh like a head - and then once its where you want it to be in edit mode - you add another mesh for, say a jacket IN EDIT MODE SO ITS ALL PART OF THE SAME MESH GROUP
Its a strange concept at first if you're used to having everything in one mesh but its actually what many games used to do and to top it all off, since youre working with simple geometry rigging and texturing will be super easy
I get what you're saying though. Unfortunantly if you dont want to write a shader you will have to manually delete, shape, and reunwrap your model as fit. It sucks and I understand the pain. Ive done it before myself.


Open the toolbar in the 3D Viewport using T. Navigate to the Grease Pencil section and click the 'Ruler/Protractor' button. You can now click and drag in the 3D Viewport to create a ruler and or protractor measurement.


Is there a way to control limited disolve?

Yes you can control limited dissolve

In Edit Mode with all the mesh selected

Press Delete and you get option limited dissolve

As soon as you click limited dissolve press F6 to open operator panel and adjust the angel and it will lower the verts (See the verts in the top info bar).


how to turn a square into a circle in 2.8

You're looking for To Sphere.
Go into Edit Mode, select the vertices you want to change, press Shift+Alt+S and move the mouse till you get the shape you want (or use the menu Mesh > Transform > To Sphere).

LMB  to confirm changes, RMB  to cancel.


The search function in the outliner window should do the trick.

If you click on "Search" in the menu you can also switch between "Case sensitive" and "Complete match"


Can I use a texture as hair density map?

In Cycles select the mesh, give it a material, then go the Particles header and add a new texture in the Textures panel.

Prepare your black and white density map. Here's mine:

Next go to the Texture header, add a new texture (Image or Movie) and check the Density checkbox in the Influence panel. Note: I also checked the Lenght checkbox to make the render look more clear.

In Blender Internal you can do it the same way. After giving the mesh a material and the particle system you go to the Texture header-->Particle Texture button, load your texture as Image or Movie and select what kind of influence on particles it should have.


Easier way to remove particles textures from ripped model?

The black, white or grey images are most likely masks, for example a specular mask will define where the specular is high (white) and where there is no specular (black) with grey being in the middle. These 'maps' can also be used to adjust many settings like transparency, emission, mirror... instead of having one value used over the entire model.

The blue/purple images are normal maps. To get low poly objects looking detailed it is common to sculpt or model a high poly version and then bake the difference into a normal map to get a visually similar result with less geometry, these maps predominantly have a distinct blue to purple colouring.

To the issue of removing duplicate faces - if you know the material used on faces that you want to delete then you can select all the faces using that material and delete them. The technique to apply different materials to parts of a model should explain how to select faces used by a material. You could also select the faces used by the material you want to keep then invert the selection with ⎈ CtrlI and delete those faces.

As you mention many materials in use, you may also want to use python to go through them all. If you want to keep one or two materials and delete the others then a small script like this might help.

import bpy
import bmesh

me = bpy.data.objects['model2808'].data
bm = bmesh.new()
bm.from_mesh(me)

for f in bm.faces:
    if objmats[f.material_index].name != 'Material.002':
        bm.faces.remove(f)

bm.to_mesh(me)
bm.free()


Unit ( Metric) Problem : Not able to get full 20cm

If I understand it correctly here we go:

First issue.

Blender doesn't have so precise modeling system as CAD software. So if you want correct edge lenght you will need to do this manually.

While scaling object in Edit Mode with selected edge lenght you can hold Shift to get more precision. Zooming in and holding cursor (before hitting S) away from object center could help a bit.

Second.

In Edit Mode change Pivot Center to Individual Origins then in tools choose Extrude Individual, Right Click and S to scale down each face.


Where is the animation play button in 2.7?

You can instead use the option in Info > Render > Play rendered animation, or press CtrlF11


Normal Map image being used for texturing

Than multitexture setting enabled, faces displays last assigned texture in UV-image editor.

Switch to GLSL mode, in this mode faces tries to display close to material settings:

  However, when it is set to "solid" I still see the normal map as
  opposed to the proper texture.

If you have textures in solid mode, uncheck textures solid:


Yes, the simulated fluid will be affected by animated obstacles.


How to make NLA strip rotate based on previous action?

I resolve it. You have to cancel the rotation master before starting the new moving cycle. This is my new file .blender


Can't rotate or move view with mouse wheel

Change your screen to some other window and then return , that solves the problem whenever i do that , by the way even i dont know what makes that happen


How can I use the Add brush in Particle Edit mode?

By default the particle system has hair growing form each face, to exclusively use the Add brush to place the hairs you must first set the Number to 0.

Then you can go into Particle Edit mode and use the add brush to place the hairs.


Game animation from other video file into blender animation (adding to the existing video file)

This is possible by assigning to your tablet model "screen" surface (probably a rectangle) a "image or movie" texture (obviously choosing your movie). Of course you need to learn how to correctly assign the texture to your mesh. You could do this either by UV mapping or using a separate material for the "screen" surface...

To add the video after the tablet animation is done, you can use video tracking to map your video to the screen area, but you will need to have  some good tracking feature in the animated screen, to get a good result (you need to be able to set good markers)


If this is something like what you're after...

Select all edges, CtrlB bevel, by width, with a moderate even number of segments (here,6)
CtrlKeypad - reduce the selection back to the original latitudes and longitudes
O turn on proportional editing, Connected, Sphere fall-off, small radius
AltS scale along normals.
Select the smallest 'large' face, ShiftG select similar by area > 'Greater Than' to select all the large faces, and I inset them a little..

With  Autosmooth switched on, maybe have a play with the new Weighted
Normal modifier, by face area, to get the look you want without
subdivision.


How can I view my scene using the Oculus Rift CV1 and the OpenHMD branch of Blender?

Assuming you are using Windows:

The way to enable this is to switch the Oculus in Extended Mode, this is done by running a specific tool that Oculus delivers with the driver (example is https://www.reddit.com/r/oculus/comments/4nvy7o/rift_dk2_possible_to_activate_extended_mode/).
Opening the HMD window in Blender should start the display in extended mode, if you can not view your desktop through the Oculus before moving the window, It is not activated correctly.

When using Linux:

If you are running Intel or AMD, this should work fine out of the box, with Nvidia, if you have recent drivers, you may need to enable Extended mode by adding AllowHMD in your Xorg, instructions can be found here: http://us.download.nvidia.com/XFree86/Linux-x86/378.09/README/xconfigoptions.html


Welcome to Blender!  It's a big, complicated piece of software where lots of things can go wrong, and it takes a lot of practice to get used to it, so no real surprise that you had a tough night working on this.

In the posted .blend file, the "inner crystal" had no material, so maybe you uploaded it before shading it green and blue.

The "outer clear part of crystal" did have a reasonable glass material.  It looked like this in my Cycles preview, with a fuzzy version of the inner crystal just visible.  Did it look anything like this for you?

If so, the main problem with the "outer clear part of crystal" material is probably the high roughness which makes it look pretty opaque.  If I turn the roughness value down to 0.25 in the principled shader, add a blue emission shader material to the "inner crystal", kick the area light strength up from 1 to 50 (i.e. 5000 Watts), and add a couple duplicate area lights, also 5000 Watts, it starts to look better.

Here's a .blend file with the changes I made.  If you load this up, switch to the "Rendered" view, and don't see a blue crystal like the image above, then yes, something's wrong with Cycles running on your admittedly underpowered computer.

Note that it looks even better if I select both the inner and outer crystal and stretch them out on the Z-axis ("s" to size, "z" to size along Z-axis, and move the mouse to stretch it vertically before left clicking).  The longer crystal reflects light better.

Getting this scene working with Eevee would be tough.  Eevee doesn't do a great job with accurate handling of area lights and glass materials.  But, you could try the following:

In the Render Properties panel, switch your Render Engine from Cycles to Eevee.  Further down in the panel, click on the "Screen Space Reflections" checkbox, open that subpanel, and check the "Refraction" checkbox.
Click on your "outer clear part of crystal", go to its Material Properties panel, and scroll down to the "Settings" subpanel.  In that subpanel, change "Blend Mode" from "Opaque" to "Alpha Blend", and below that turn on the "Screen Space Refraction" checkbox.

Switch to the Render view, and you should have something like this:

It looks pretty ugly and underwhelming, though it does look kind of cool if you middle-mouse-button drag the view around.

Anyway, hope that helps.


Enable the addon

Go to the user preferences and enable the addon "Import Images as Planes" to make the operator registered and available to scripts.

Related

Can an add-on be automatically installed and enabled?


Copy Grease pencils strokes from a range of frames to another

After much fiddling around, one can use the cursor to block select a range of keyframes in the timeline/GreasePencil editor then press Shift-D. Then you can drag the copy of the keyframes to a new location.


Inconsitant Animations when uploading to UE4 with the Send to unreal Tool

This may have nothing to do with your problem, but I know Unreal can be very particular about your bone settings, particularly if you have IK bones. If you haven't already, you should go to the Skeleton tab up in the upper right corner and scroll through your Skeleton Tree tab. All the IK bones should be set to 'Animation.' That's the only thing I can think of.


Here's a snippet of code that exports FBX.  I tested it briefly and it appears to work.  It just iterates the list of all objects, selects each one individually, and calls the FBX exporter on the selected object.

import bpy

def export_all_fbx(exportFolder):
    objects = bpy.data.objects
    for object in objects:
        bpy.ops.object.select_all(action='DESELECT')
        object.select_set(state=True)
        exportName = exportFolder + object.name + '.fbx'
        bpy.ops.export_scene.fbx(filepath=exportName, use_selection=True)

Example usage, shown here with a Windows-style path.  Note that a trailing slash of some kind must be included due to use of simple concatenation of path and filename.  Also note that backslashes must be escaped (doubled) but forward-slashes do not.  Give it the name of an existing, empty folder with the trailing slash included.

export_all_fbx('C:\\outputFolder\\')


Here is a simple script that will create a keyboard object ( an empty )that have properties act as keys, this objects read the keys states from a file (inside blender or on the system ) and set them according to it.
the script will also create a player object (a cube) which will read the keys properties of the keyboard object and use it as real keyboard input. ( I added the keyboard object to keep the players scripts simple and they will be easy to convert to use a real keyboard )

this script will automate the whole process : create objects, set the logic bricks, load the scripts' files and start the game engine.

To test the script start blender and paste the script and hit Run Script you'll see the game engine start and the cube start moving. or you can start blender from the command line with this script to avoid using the GUI

#key strokes for each logic tic

keys_str="""w,w,w,w d,w d,w,w,w,w,w,w,a,a,
a,a w,a w,a w,w,w,w,w d,w d,w,w,w,w,w,
w,a,a,a,a w,a w,a w,w,w,w,w d,w d,w,w,
w,w,w,w,a,a,a,a w,a w,a w,w,w,w,w d,w
d,w,w,w,w,w,w,a,a,a,a w,a w,a w,w,w,w,
w d,w d,w,w,w,w,w,w,a,a,a,a w,a w,a w,
w,w,w,w d,w d,w,w,w,w,w,w,a,a,a,a w,a
w,a w,w,w,w,w d,w d,w,w,w,w,w,w,a,a,a,
a w,a w,a w,w,w,w,w d,w d,w,w,w,w,w,w,
a,a,a,a w,a w,a w,w,w,w,w d,w d,w,w,w,
w,w,w,a,a,a,a w,a w,a w,""".replace('\n','')

#### script for the player object
ob_txt="""
import bge, bge.logic

scene = bge.logic.getCurrentScene()

kb = scene.objects["keyboard"]
keys = ["shift", "ctrl", "space", "w", "s", "a", "d"]

cont = bge.logic.getCurrentController()
own = cont.owner

if kb["w"] :
        own.applyMovement([0,0.2,0],True)
if kb["s"] :
        own.applyMovement([0,-0.2,0],True)
if kb["d"] :
        own.applyRotation([0,0,10],True)
if kb["a"] :
        own.applyRotation([0,0,-10],True)
"""

### script for the keyboard object
kb_txt="""

import bge, bge.logic
import bpy

keys = ["shift", "ctrl", "space", "w", "s", "a", "d"]
scene = bge.logic.getCurrentScene()
cont = bge.logic.getCurrentController()
own = cont.owner

def reset_keys():
        for key in keys:
            if own[key]:
                own[key] = False

def read_keys():
      i = own['line']
      # with open(r'C:\path\to\myfile', 'r') as file:
      #       line = file.read().split(',')[i]
      line = bpy.data.texts['keys'].as_string().split(',')[i]
      cmds = line.split(' ')
      for key in cmds :
            if key in keys:
                  own[key] =True
      own['line'] += 1

reset_keys()
read_keys()
"""

### setup script

import bpy

context = bpy.context
data = bpy.data
scene = context.scene

##### scripts' texts ####
kb_script_txt = bpy.data.texts.new('kb_script')
kb_script_txt.write(kb_txt)

ob_script_txt = bpy.data.texts.new('ob_script')
ob_script_txt.write(ob_txt)

keys_txt = bpy.data.texts.new('keys')
keys_txt.write(keys_str)

##### keyboard object #######
bpy.ops.object.empty_add()
bpy.context.object.name="keyboard"

####### properties  ########
keys = ["shift", "ctrl", "space", "w", "s", "a", "d"]
for key in keys:
    bpy.ops.object.game_property_new(type='BOOL', name=key)
bpy.ops.object.game_property_new(type='INT', name='line')

######## logicBricks ######
actuators = bpy.context.object.game.actuators
controllers = bpy.context.object.game.controllers
sensors = bpy.context.object.game.sensors
#always sensor
bpy.ops.logic.sensor_add(type='ALWAYS')
always = sensors['Always']
always.use_pulse_true_level = True
always.frequency = 24
#script controller
bpy.ops.logic.controller_add(type='PYTHON', name="script_cont")
script_cont = controllers["script_cont"]
script_cont.text = kb_script_txt
#link them
always.link(script_cont)

##### player object #######
bpy.ops.mesh.primitive_cube_add()
bpy.context.object.name="player"

######## logicBricks ######
actuators = bpy.context.object.game.actuators
controllers = bpy.context.object.game.controllers
sensors = bpy.context.object.game.sensors
#always sensor
bpy.ops.logic.sensor_add(type='ALWAYS')
always = sensors['Always']
always.use_pulse_true_level = True
always.frequency = 24
#script controller
bpy.ops.logic.controller_add(type='PYTHON', name="script_cont")
script_cont = controllers["script_cont"]
script_cont.text = ob_script_txt
#link them
always.link(script_cont)

##### start game engine ######

bpy.context.scene.render.engine = 'BLENDER_GAME'
for area in bpy.context.screen.areas:
    if area.type == 'VIEW_3D':
        override = bpy.context.copy()
        override['area'] = area
        bpy.ops.view3d.game_start()
        break


Extruding horizantally when I want it to go vertically, and vice versa

This can happen, when you Extrude Along Normals.
To have the extrusion follow you cursor, use Extrude Region instead.


Bake Normal space: Camera vs World vs Object vs Tangent

Normal maps are an encoding of a geometry inside an image. Each pixel color (RGB) corresponds to a (XYZ) orientation which defines a fake normal for each particular point defined in the UV map.

If we take the example of the cube, unwrapped like this :

And if we bake in the tangent space (which means the space X Y in the face plane and Z along the normal), we obtain a flat image because the encoding corresponds to the face itself (so no alteration of the normals). This is like to say "encode me in my own space coordinates" :

If we bake from object space, this space is unique to the cube but each tangent space of each face is orientated differently from the object space point of view. That's why we obtain this below. And you can notice that one of the face has the same color as above because this face shares the same coordinate system as the object (in this particular case) :

Now from the normal map node, this is the same principle but inverted. The bake encodes the coordinates and the node decodes it at the render time :

World space : decodes from the global (world) coordinate system. It mean that the render will change if the object (in its whole) is rotating (not sure of that last point).
Object space : similar to the bake above. Encoded faces normals (point by point) are translated from the whole object coordinate system
Tangent space : each point of each face is decoded from the face coordinate system

We have seen above that baking in tangent space gives a flat image. So this seems to be useless. But in fact this kind of bake is generally used to bake a complex object (highpoly) into a more simple one (lowpoly). Here you use the 'selected to active' option when you are baking.

So what happens after that : the image encode the highpoly normals and the "normal map" node decodes it for the lowpoly rendering. That mimics the highpoly normals along the lowpoly faces.


This can be done with a Hair particle system.

Add a hair particle system to your mesh:

If you want to simulate the hair dynamics with realistic wind, you can use a Smoke simulation:

Add a smoke domain object and a Smoke Flow object
Add a Wind force field and a Turbulence force field (ShiftAAdd > Force field)
Adjust the settings until you have a nice simulation (optionally add some collision objects) and bake the smoke
Disable the Wind and Turbulence force fields for the particle system in Particles > Field Weights:

Add a Smoke Flow force field and select the smoke domain object for the domain.
Enable Dynamics in the particle system and increase the Stiffness
Bake the particles, then hide the smoke domain and emitter:

As for the color variation, you could use a Procedural texture:

Result:


How do you use your system's Python with Blender?

$ blender --python-use-system-env
Allow Python to use system environment variables such as 'PYTHONPATH' and the user site-packages directory.


I think you should separate the logic for movement+rotZ and mouselooking+rotX into two different objects, and then parent the second one to the first one. With such setup, the object moved by keyboard is always facing parallel to the ground, not trying to dig into it. The example of this would be camera and cuboid. The camera is rotated only in X axis (relating to your orientation from screen) with mouse and it's parented to cuboid. The cuboid is rotated in Z axis with mouse and also is moved with keyboard. You can check the blend file below to see how it's done (Blender 2.74 or the latest build). Note the camera from my example can be replaced with your object of choice, and cuboid can be set to invisible so it can't be seen ingame. I hope this can help solve your problem. If you have additional questions, please consider providing a .blend file for more accurate feedback.


Rendered frame doesn't match what is shown in rendered viewport

OK so I saw right with what i said in edit 1. After changing the animation in the graph editor the problem was fixed. Instead of setting the next frame back to 1° after it reaches 360° then repeating it, i made the line continue upward to 720° and onward.

note- the issue arose only when the frame was on 360° and 1°. both the rectangles opposite each needed to be changed. if only one was changed in the graph editor the issue still exists but with only half the "severity".

I still dont understand why this would cause such a thing to occur, an explanation as to why this happens would be great. Is this a bug?


Problems when rigging; only some of the object moves with rig even when automatically weighted?

Select the hair, then a head bone and press Ctrl+P-->Set Parent to-->Bone.


How can I make some edges on my model sharper and others more rounded?

Mean Crease

I think the function you are looking for is called Mean Crease. It makes sharper edges when you are using a Subsurface modifier for example. Here's how it's used:

If you want, once you have the edges selected in Edit mode, instead of manually adjusting the Mean Crease value as shown above, you can use the keyboard hotkeys for Mean Crease with the mouse:
SHIFTE -> drag the mouse


How to align the view or a camera to a certain face or object

Yes, select the face and pressShift+NumPad 7.


How do I delete sculpting brushes in 2.8?

You have it in the tools panels, not in the toolbar for some reasons:


How do I import my Hair emission particles with my object into another blender project?

Importing to Other 3d Packages
If you're importing the object with hair into another program (3d package / game engine etc.) most likely you will want to convert the hair particles into real objects, see How can I convert a hair-particle system into 3D, editable objects? Note that particles won't be available for tweaking like particles because they won't be particles, rather than meshes.

Importing to Blender New Projects
If you want only to import object with particles into another Blender project then just import it as object with standard Link / Append operators (enter Objects folder while browsing main .blend file); modifiers will be imported as well along with the particle system.


spline editing or clever non spline editing?

Spline Surfaces / Patches are used to define surfaces/objects using very few points. It's quite a convenient way to model with the right tools. It is quite possible that the bigship.x was modeled using a form of splines or NURBS, but it's hard to be certain even after seeing the mesh. Blender has (October 2015) a limited set of these tools, but they are there and can be found in The Add > Surface > NURBS Surface menu.

Not many Blender users use this feature, and that might explain why tutorials on the subject are rare. It doesn't fit within the format of this site to give a detailed explanation of how to model something using those tools.

In general modeling inside Blender is done using Polygon modeling techniques and Subdivision surfaces and creased Edges. I made a rudimentary model in about 3 minutes purely by extruding / insetting a Cube object and placing a Subdiv modifier on it. When the object is symmetric you don't even need to model both sides instead add a Mirror modifier.

Here model without mirror or subsurf, but with creases to indicate where the subsurf should become sharp.

Here with the mirror modifier:

Here the added subsurf modifier adds the interpolation and smoothing.

Here in object mode to show the result, also note i've set the mesh to Smooth Shading to get away from the tessellated look:

There are plenty of tutorials about how to do polygon modeling. See our resources page:

Here's what the low poly approach of the ship might look like to the left, and to the right again the model has subsurf and smooth shading and edge creases.


How to get hard edges when using subsurf modifier?

Couple ways to do it. One is to use an Edge Split modifier, adjust the angle at which you want an edge to be sharp, or mark specific edges sharp as needed. The other is to add additional edge loops on either side of where you want the sharp edge.

For example, here's three cylinders:

In the middle is a 32-sided cylinder with the Subsurf modifier set for 3 subdivisions. On the right is the same cylinder with the Edge Split modifier turned on. On the left, is the same cylinder with additional edge loops above and below the edge that needs to be sharp.

Same cylinders, showing the vertices on the left cylinder so you can see the two extra loops. Both approaches work. The slightly beveled edge resulting from adding more loops will arguably give you a more realistic edge, since the real car likely doesn't have a perfectly sharp edge there (few things IRL do).


How to align polyhedra face to face in an array

Well, I found the solution. Although the result does not look like the object on the very first picture, the array elements lined up face to face, which is what I wanted.
The problem is that some non-rectangular polyhedra have no faces being normal to their coordinate axes. Since the array modification relies on the "local" coordinate system of the whole object, you can't produce an array with objects aligned face to face unless you change the object's local axes.
The solution is basically given in the comment above, with a tweak to achieve perfect alignment of the faces. So, once more:

Create an icosahedron and a cube.
Using a plugin ("align by faces", from here), align the face of a cube with one of the object's faces.
Delete all of the cube's vertices.
Join the icosahedron TO the cube (not the other way round) so that the resulting object inherits the cube's axes.
Origin to geometry and create an array.
Create an empty in the center of the icosahedron. At this point you can set the empty as the offset object to check how things are looking.
Rotate the empty so that the "normal" axis (along which the array should be situated), in my case the x-axis, aligns with the icosahedron's axis. I just copied the angle numbers from one to the other.
The result is this:

And of course this can be further tweaked by moving/rotating the empty and changing offsets.


I was able to get pretty close procedurally, I started with an emissive center sphere with another sphere scaled up slightly.

I'm using a voronoi texture into a color ramp set to constant so that we get a hard cutoff.  We'll feed this output into the alpha input of the principled shader to punch holes in the mesh.  You can experiment with different types of noise here.

The rest of the manipulation will happen with the coordinate space.
We're rotating the coordinate space along the z axis, scaling it quite a lot, and then feeding it into the voronoi texture.  With the right gradient you should be able to rotate more as you get closer to the center.

If you don't care whether a seam is present, we can abuse the UV sphere's premade UV map and get much closer to your reference very easily.  We can move the texture over in the X direction as we go from top to bottom.

There's a much better convergence at the top, here, but there is a seam present on one side.

The equivalent of this node group is going into the UV editor with proportional edit set to linear and moving the top row of verts along X.

Lastly, to capture the bumpy nature of the reference, we can add a couple of subdivisions to our outer mesh and use displacement.  Cycles only, and you must set your material displacement settings to either Displacement or Displacement and Bump.
Example 1

Example 2

Example 3, using undistorted texture coordinates


Can color management (e.g. filmic) be disabled for specific file output nodes for raw data?

You can get non-color managed non-linear files from image viewer: save with save as render option disabled (in 2.79 it is disabled by default). Maybe there's possibility to use bpy.ops.image.save_as in script to save images frame by frame for animation, but I'm not into python to help on this.


Select the armature and go to the "object" tab on the right side of the screen (orange box) and tick the option that says "In Front" (it's under "Visibility" or "Viewport Display" or something). This will always draw the bones in front of the mesh.

Change your rotation space to "Local" and pivot to "Active Element" at the top of the screen. With the armature selected, press CTRL-TAB to enterms pose mode. At the top of the screen, click the gizmos icon to bring up the drop down menu. Make sure the Rotation gizmo is activated.

Now you can see which axis your rotation is affecting by clicking and dragging the colored circles.


Boolean Difference only cuts my main object, doesn't delete any vertices

I've tried it with the default torus and default cylinder and got the same problem. I resolved this with several methods: moving the cylinder just a little off the center or scaling it up or down just a little. I guess the cylinder cuts exactly through the vertices of the torus and maybe Blender has some issues calculating it correctly. Also adding a Subdivision Surface modifier. Nearly everything helps except for keeping it at default.
EDIT: Well it doesn't cut exactly through the vertices becauses the objects have different resolutions. But still the edges overlap each other... I guess that's why. And just for clarification: I only have this problem in Blender 2.83.5, not in 2.92.0 or 2.93.0 Beta.


why my mesh deform when I delete shape key?

I just solved it by deleting all object modifiers and physics and it works.


in the meantime: does this diagram help?


Do not use the Subsurf modifier on everything you make

Subsurf modifier is not a must. It creates a lot of geometry that is not always necessary. Just model the geometry you need. You can have more vertices in the cylindrical part alone. You can use bevel modifiers to make the forms more realistic since objects rarely have completely sharp edges. Two bevels with the first forming loops to fix shading work nice:

You could also use Y.A.V.N.E. add-on to calculate face area weighted normals to have nice shading with only one bevel.

You don't need those extra loops to hold this form:


I've tried this, and even after doing the welding, most of the time, it is temporary (maybe I am doing something wrong - Oh Well).

Regardless of this, the easiest solution to this is to turn on proportional editing O, and scroll the influence area way down. This way when I move one vert, then everything directly under/over my active vertex comes along for the ride.


Can't get rid of that white-alpha-border!

Use the Alpha Over Node instead of the mix node. Color -> Alpha Over

This will also work if you use an image instead of a RGB node.


Sounds like the view has gotten lost in space somehow. You can try pressing Home to zoom the view to the currently visible objects (where "visible" means not hidden or in a hidden collection), or you could use A and Numpad . to select everything and then zoom the view on the selection.


There are four basic ways to bend your object.

Destructively editing it in edit mode
A Curve modifier
A Simple Deform modifier
A Lattice modifier (or Mesh Deform modifier, they work nearly the same)

All have their pros and cons, I will briefly list them here.
Modeling in edit mode
Moving the edges and vertices in edit mode to make the curve, is sometimes the least desirable. After you have bent or curved your object, there is no turning back - it is now permanently curved.  The plus side is that there is no extra work, just select some edges and hit G. For a smoother edit, press O to enable Proportional Editing and use the mouse wheel to set the radius for the tool
The curve modifier, where the mesh is bent using a bezier or nurbs curve, is over kill for such a simple curve. While it works well, you will probably spend more time setting up the curve object, then you would using other methods.
The simple deform modifier, explained in this answer, really is the best solution for your particular situation. There is no quicker or simpler way to make a shape like you want.
The lattice modifier, is extremely powerful. While it can do much more then a simple bend, I think it works quite well in this situation.

Add a Lattice object around the text (scale it in object mode to fit the text)
Add a Lattice modifier to the object and put in the name of the new lattice.
in edit mode, edit the lattice so that it bends way you want (this part is very similar to the first method).

Do note that there is a difference between the methods in the way the edges look.
Blend File
That blend shows the four methods explained above.


I'd like it to move nearby vertices slightly when I edit a vertex

Use proportional editing.

(or press the O to enable and Alt+O to disable) and use the mouse wheel to determine the radius of the tool.

  Proportional Edit is a way of transforming selected elements (such as vertices) while having that transformation affect other nearby elements. For example, having the movement of a single vertex cause the movement of unselected vertices within a given range. Unselected vertices that are closer to the selected vertex will move more than those farther from it (i.e. they will move proportionally relative to the location of the selected element). Since Proportional Editing affects the nearby geometry, it is very useful when you need to smoothly deform the surface of a dense mesh.

Read the manual here: https://docs.blender.org/manual/en/latest/scene_layout/object/editing/transform/control/proportional_edit.html?highlight=proportional%20edit


Eevee is pretty straight  forward, add an HDRI and turn on Ambient Occlusion and Soft Shadows, this should give you a good result already. But this depends on your object, if it's very reflective you might want to calculate reflections.


I cant get back to edit my model, how do i do this?

If you want to get back to the 3D view click the bottom left icon to "3D view" as Paul suggested if you want to see the the image again change the "paint" drop down to "View"


I think this question is about misunderstanding. Maybe someone doesnt know what your talking about or maybe you don't understand how to ask the question right? In either case......
If you save image to HDD, it will be saved. ..done. There is no reason why Blender should be  deleting them.

But:
If you bake, paint, texture, or edit an image in Blender, then you must save them  before you close the project. Blender will don't save images when you save .blend file.


GPU rendering on AMD Radeon HD 6800 series

Update:
Here are the official list of AMD card that Blender supports for OpenCL. It does not have Radeon HD 6800.

OpenCL Supported Devices

It is likely that Blender does not support HD 6800 for GPU rendering.

I am going to assume the following:

You are using Blender 2.76 (latest as of 14/03/16).
You are using Cycles Render.

To use GPU render on Cycles Render, you need to enable OpenCL in Blender.

To do so, you need to:

Go to "User Preferences" (Ctrl+Alt+U)
Go to "System" tab.
Under "Compute Device", click on "OpenCL".
In the scroll box, choose your GPU.

When you render the next time, select GPU.

Images are linked from:

Enabling GPU rendering for Cycles?
https://www.blender.org/forum/viewtopic.php?t=25173


You walked in right direction, but the code should be wrapped in operator execution method, register and call it from Operator Search using chosen view.

I've made this gist from operator_simple.py template, it works from object or edit mode with active object as target and other as knifes.
https://gist.github.com/Begalov/763688551b49004d92ef227ddd7694d6


You pressed the Numpad / key switching you into Local View. Scene layers and lock buttons do not show there. Press  Numpad / again to go back into Global view


Select one of the objects and:

Click U (Make Single User) > Object Animation.
Or go in the Dopesheet window > Action Editor mode and press + (Create New Action)
Or as Edgel3D said, go to the Outliner, unfold the submenu under your object, you'll see Animation, right click > Clear Animation (in that case, the object won't even have anymore animation).


So this is my workflow:

First select the face you want to be the ground of the object, and create a custom Transform Orientation from the N panel:

Then select the new orientation and place 3D Cursor at the face center with ShiftS, Cursor to Selected. You could also move object center to the same place with  ShiftCtrlAltC>Object to 3D Cursor.

Now add an emtpy and align it to my custom orientation.

Now parent the object to the empty (CtrlP), clear the empty rotation (AltR), and clear the object's parent keeping transformation (AltP>...).

Finally rotate the piece 180º, and you have the face as the ground.


Why are my Regular Solids Hollow Sometimes?

I just figured it out and it's pretty dumb. While every other number extruded properly, my 3 lost it's bottom face and that was leading to the boolean doing this. If anyone comes across this problem in the future: Look at your numbers from every angle (including the bottom!) to ensure they're extruded right.


When you switch to View space Coordinates, all transformations depend on the view; So the x axis is horizontal and y is vertical; If you move your view, so move the axis.

It's useful if you only want to move a particular object relative to the view.

To lock a transform to any axis, while in View transform orientation, press the respective axis key twice; So to lock translate to the View's X axis, press G X X.


OK sweet I managed to figure this one out myself with a lot of perseverance (and grumbling) ... This is the final code I needed

def surf_len(ob, path):
    # first deselect all other objects and select our target object
    bpy.ops.object.mode_set(mode='OBJECT')
    bpy.ops.object.select_all(action='DESELECT')
    ob.select = True
    bpy.context.scene.objects.active = ob

    # next select all the vertices in out path
    bpy.ops.object.mode_set(mode='EDIT')
    bpy.ops.mesh.select_mode(type="VERT")
    bpy.ops.mesh.select_all(action='DESELECT')
    bpy.ops.object.mode_set(mode='OBJECT')
    for vi in vert_indices:
        ob.data.vertices[vi].select = True

    # select the shortest path
    bpy.ops.object.mode_set(mode='EDIT')
    r = bpy.ops.mesh.shortest_path_select()
    ob.select = False
    bpy.ops.object.mode_set(mode='OBJECT')
    if 'CANCELLED' in r:
        raise ValueError('Cannot build shortest path for {}: {}'.format(vert_indices, r))

I think the main thing I needed was the vertices objects I was passing in, that I had found earlier, had completely crazy indexes and just were not the same ones I found for some reason, this seemed to happen after I added a bunch of other objects to the scene

So instead I record the vertices index when I found it on the object originally and then use those for the select which seems to work .... I don't know why this happens, all I was doing was saving a list of ob.data.vertices[vert_index] to a list, when I came to use them later the vert_index were ok to be used in the function above, but the actual vertices seemed to be no good ... ie the code did something like this

    vert_list = []
    for face in ob.data.polygons:
        for vert_index, loop in zip(face.vertices, face.loop_indices):
            vert_list.append(ob.data.vertices[vert_index])

If anyone knows why this vert_list is no good after a bit of editing to the scene I would be very interested.

Anyway once I figure out that problem, the rest was just a matter of fiddling about to get the correct modes etc ... I think bpy.context.scene.objects.active = ob helped too

Cheers all.


How to import buildings/terrain from google earth

As far as I know There is no way to do this from Google Earth. There is, however a site called openstreetmaps.org that lets you do what you are envisioning. A great tutorial i found is CG Geek's Realistic city tutorial

you probably dont need to watch the whole thing, but the first part will show you how to do this


Try changing the collision minimum distance;


They can be changed from User Preferences > Themes.

Edit:

As you commented, per object viewport color is unsupported officially. Such idea has been discussed before, and decision is to allow per type color via Themes setting (see above), instead. So the answer is no (or not yet).

However, you may consider to use another trick in case you have to:

Create a simple mesh object, assign material with specific Diffuse color (Viewport Color for Cycles);
Parent it to the empty (or other objects);
Toggle off the renderability (or CtrlH), and also selectbility in Outliner if necessary.

Then, objects like empties and cameras can be indentified as you expect (except in Wireframe or Bounding Box view though). It might be the only solution so far, if you really have to.

Edit 2:

A specific feature to set per-object vewport color is available in Gooseberry branch build, I believe it will be soon merged into master trunk.


What is the best workflow for texture painting?

It really depends on a lot of things, what you're texturing, how much more work you have to do on it, etc, but the workflow I generally find useful is as follows:

Finish all the modeling
Unwrap the mesh
Use the texture painting features in Blender to paint really basic colors onto the model (this gives you a "map" of sorts, which makes the next step easier)
Export the UVs as an image that you can overlay on the basic diffuse map you just made
Export that basic diffuse map to an image that you can paint on in GIMP or PS.
In GIMP or PS, adjust the UV layout image such that you can lay it over your diffuse map so that you have a more precise understanding of what goes where.
Paint on the diffuse layer, but under the layer with the UV layout on it.
Use that diffuse map to generate bump and spec maps. Usually, I completely desaturate the diffuse map and adjust that until it makes sense as a bump map, and then do the same thing until it makes sense as a spec map, but it's really common that your diffuse map will not be useful that way, in which case:
Repeat steps 6 & 7 to paint spec and bump maps.
Import those into Blender.
???
profit

Note: it's really easy to port images from BI to Cycles, if you understand how they work. The diffuse image will "noodle" into the color input of a diffuse shader, and the bump will "noodle" into the displacement input of the final material output node (though you might want to us some ramps and other stuff to fine-tune it).

The spec one will be the hardest to figure out, because you could do it a couple of different ways, and they will give different results.

You should always (except for specific situations) use a diffuse shader and a glossy shader. The spec map can either drive the COLOR of the spec shader (grayscale), or the GLOSSINESS of the glossy shader, or the FAC value of a mix shader that mixes between a glossy shader and your diffuse shader. Each of these will give different results, so you should experiment and see which looks better.

Bonus: A color image should never go in the color input of a glossy shader. Except for a few rare exceptions, like certain metals, the spec map will be totally grayscale. Even with metals, you probably won't use an image, you'll just set a single color.


I need help making a non realistic spider web so I can 3D print tokens for a game

You can use the Proportionnal Editing Tool for that. It's a tool that allow to move only certain vertices, but the surounding vertices are kinda attracted to them.

Select your ring and enter Edit mode (Tab). Select the vertices near every intersection. You can use the Circle select ("C") to do it easily.

Press the "O" key to activate the PET, and select a type of interpolation in this list (Sharp should give good results)

Now scale the vertices up with the "S" key. While you are scaling, you can adjust the effect radius of the PET whith the mouse wheel.


Is there a way to determine why Blender is running so slow?

Another guess would be that it could be an issue with the hardware. Perhaps the CPU is having a hard time because of the number of cores? Another possible theory is that there are other programs in the background taking up all of the extra resources to speed things along. Another possibility is that the number of vertices in the scene is high that it lags. You may have to, as neighborlee suggested, to do something to reduce the high poly count.


I followed the Chris answer and I unchecked "Single Sided" and it works


Remove object from multiple vertex groups

Found it:

Take the object into edit mode and click on the little "vertex group specials" triangle that is below the plus and minus symbols in the vertex group panel. There you can find the option to remove the object from all vertex groups.


How do I create a vertex at the intersecting point of two intersecting edges without addon or scripts, no faces involved?

If doing that without addons you need to subdivide both edges and use snapping tools to snap vertex from one of the edges to another.

In ideal situation, your edges will be aligned with the world axes. However this is not always the case, hence this solution assumes they aren't (it still works even if they are) and uses custom transform orientation for snapping vertices. Alternatively it's possible to align view to the selected edge and use View transform orientation, although it might be less convenient navigating in the viewport.

With edge selected, create Custom Transform Orientation with Ctrl+Alt+Space (or from the Properties shelf > Transform Orientations rollout). Note that Selection mode should be set to Edge so transform orientation is created for it. By default this transform orientation will be selected as current one; if not, choose it in the Transform Orientations menu or with Alt+Space.

Enable Snap during transform tool. Set Type of Element to snap to to Vertex (or Edge depending on which element you will hover over to snap vertex to). Set Pivot point to Active Element to use active selection as pivot.

Subdivide one of the edges once (W > Subdivide with edge selected).
Select vertex created after subdividing, then Shift select corner vertex of the edge to scale to. Activate Scale tool with S to move the vertex, press adjacent axis name twice to use custom transform axes and hover mouse over the vertex of the edge to snap to (or edge itself depending on what you selected in step 2).

Do the same for the other edge.

Select all and use W > Remove Doubles to join 2 vertices into one vertex at the intersection.


Blender: Exporting a large 3D map into a 2D image

Blender's ability to render large images is pretty robust: We do images 10Kx10K and larger all the time, so your viewport view is not a limiting factor.

Set up your camera to view the entire map, either overhead or however you wish to see the map inside your final 2D image. Set Blender's render dimensions to something large enough to accomplish your readability goals. This could easily be many thousands of pixels in either or both dimensions. Hit render.

You may want to experiment with camera settings to get the best image possible. Also, remember that if you are using an image texture within the 3D map (say, a 1024 x 1024 image as a ground texture), Blender cannot magically render it 20K x 20K without pixelization.  We use 4K skins and higher when we are working on big images... If procedural textures accomplish what you need, you'll have no problems.

Hope this helps... big images are a real strength of Blender, and shout if I can assist.


I think the freestyle-svg-exporter can do that.


Substracting many objects from a single object

After you've created all the objects you want to "remove" from the wall, Join them. (Control + J in Blender 2.79).  Then you only have two objects, and you can do the Boolean subtraction operation.


Mask Keyframes not showing in graph editor

They are in the dope sheet in the mask category. :-)


CUDA is only available for nvidia GPUs. AMD cards can use openCL (Disabled in official builds).

Here is the wiki page on it http://wiki.blender.org/index.php/Doc:2.6/Manual/Render/Cycles/GPU_Rendering


How to extrude a region after I selected extrude vertices only?

When you extruded with Vertices Only there were created new vertices connected to existing vertices of the region:

Selected vertices moved away to show what actually is present after extruding

So you don't have any other option to extrude other than Vertices Only from here because technically there aren't any mesh elements selected except for vertices not forming neither faces nor edges. It's possible to extrude only another vertex from existing vertex (connected with an edge to something else or not).

To avoid creating wrong types of geometry delete these created vertices and select the face to extrude from it one more time. If you didn't move vertices after extruding there's an easy way to remove them, select all in that area and run W > Remove Doubles.


Making intersecting parts of objects turn the combined colour? (red+blue=purple)

You can use Boolean modifiers if you want to have full
   control of the intersecting material.

Starting situation:

These objects must not be touched, as they are the "basis" for the modifiers. So the first step consist in copy the left (or the right) object) and hide all the other. We'll call this "Left copy intersect right"

Add to this object a Boolan modifier, set to "Intersect" an than point to the right object.

Here we have the first part of three... we can assign a purple material to this object.

Copy again the left object, assign boolean modifier an this time set boolean operation to "Difference" and point to right object.

Finish with the last part. Copy Right object, add boolean modifier, set to difference, to left the object.

Assign material to the three object as you wish

You can use Volume absorbtion shader if you want that the two materials blend themselves for real

Create a material based for example on a glass shader for the surface and a volume absorbtion shader based on wanted color for the volume output.

Notice that these are the "origninal" right and left objects, so you don't need other operations, but you have some limitation on the material... they must have a transparent component.

Also notice (in the 3D view on the top) that you have to move the geometry a bit, to avoid overlapping faces that may cause artifacts.

Here's another possible material and the blendfile:


You can do this non-destructively using a Simple Deform Modifier.

Select the desired mesh
In the modifiers tab add a Simple Deform Modifier
Set the type to Taper
Adjust Factor to increase/decrease the amount of deformation.


How to create a refraction plane in the BGE?

The only limit of this script is your Hardware configuration (RAM, GPU, CPU).

You can use the fake reflections too, with a texture and in the Texture pannel, replace the Mapping Coordinates to "Reflection" (Use GLSL for see in real time).

Many games use the fake reflection, but the camera may move for see the correct fake reflections.

Here a blend with reflection texture that i made (Gold texture):

https://mega.nz/#!qlNARDoY!W9FotR5a0zFJ-XXgUHFXLqDSaN6eVw56bzw9vBOxf_I


Why are faces in my model fine in the viewport but distorted in the render?

It looks like you have a Subsurf modifier on your object that has been disabled for the viewport, but not the render. Either delete the modifier or disable it for rendering as well by clicking the camera icon on the modifier:


Strange Parent motion.missing dope sheet

Your eyes and nose are not controlled by any bone. What you should do is:

Select your armature, in Pose mode select all and bring back your bones to their rest pose with AltR, AltS, AltG. By the way it would be better if, by default, in rest pose, you armature stood up, and the character's mesh as well, you could correct this in Edit mode for both the objects but it's another topic.

Select your eyes and nose, Shift select your body and join. Go in Edit mode, move your eyes and nose where they are supposed to be (and delete the double eyes and nose you've created).

Your eyes and nose are still not controlled by any bone, select them in Edit mode. As it's the HeadBone that is supposed to control them, go in the Properties panel > Object Data > Vertex Groups, select the HeadBone group and click on the Assign button. Now eyes and nose should follow.


How to snap to geometry for the measure tool

Ctrl enables snapping.  Drag out a measurement line, then hover over one end so you can pick it up.  Holding Ctrl, drag it over to your object.  Repeat for the other end of the measurement.

Hint, you can measure angles in a similar fashion by grabbing the middle of the measurement line.

"X" deletes the measurement.


I don't know of any add-on that specifically has a bump up by n layers feature, Blender has a massive eco-system for add-ons. Sometimes it's  easier to write a small script than to go looking for an add-on.

Here a small script that moves all items that appear in layers {5,6,7,8,9} up by 5 layers to {10,11,12,13,14} respectively. (I think you accidentally gave an example that is off by one)

You may want to test how this works in a small dummy .blend file, so you are confident using it in a production scenario.

paste this directly into the TextEditor and press Run.

import bpy

for obj in bpy.data.objects:

    # let's deal with a simple case: is it only on one layer?
    if obj.layers[:].count(True) == 1:
        found_index = obj.layers[:].index(True)
        if (5 <= found_index <= 9):
            new_index = found_index + 5
            obj.layers[:] = [i==new_index for i in range(20)]


[Answer added for completeness.]
⎈ CtrlR initiates a loop cut and a new edge loop intersecting the chosen edge.
To cut through a number of edges, which are not connected by edge loops, use the Knife Tool.

Go to an orthographic view (front view).
Press K to enter the knife tool, press Z (to enter cut through mode) and C (to constrain the angle). Then draw a poly line with two  LMB clicks. Press ⏎ Enter to confirm.

The options you activate while the tool is selected.

Cut through Z
Allow the Cut tool to cut through to obscured faces, instead of only the visible ones.
Angle constrain C
Constrains the cut to 45 degree increments.


The Blender default start-up file is named "startup.blend". On the version of Windows that I use for Blender, the file is located in a sub-folder of the users folder on the drive upon which Windows is attached named AppData\Roaming\Blender Foundation\Blender\VER\config, where VER is the Blender version number. I don't know enough about Blender on other platforms (MAC, Linux) to know exactly where the startup file is located there.

One way to do what you want is to start a clean instance of Blender, create your desired materials as data blocks assigned to the default cube, and then overwrite the default startup.blend file with the version you altered. Doing this will make the material library permanently available as part of the start up default. Note, though, that if there is a chance that you might want to use the original default file at some point, you may want to create the desired materials as a data block or data blocks of the default cube, and use the "Save startup file" option of the file menu (keyboard shortcut CTRL-U) to save a copy of the start-up file which would load instead. Doing this, will allow restoration of the default start-up file, by choosing "Load factory settings" on the file menu more easily than if you overwrite the startup file.

Instead of assigning the materials to the default cube, you can create your two materials ans click the F button next to the material's name (Save datablock even if it has no users)
that will allow you to save your startup and keep your materials always available without assigning them to your cube.


Why can I not access the custom EnumProperty which I added to my Panel class?

items = (('OANS', 'oans', 'description', 0))

This is a tuple of four. (x) just evaluates to x. If you want a tuple that contains x, you have to write (x, ). Or just use a list. Either of those two should work:

items = (('OANS', 'oans', 'description', 0), )

items = [('OANS', 'oans', 'description', 0)]


You can do it manually with a duplicate lamp:

Space, Snap Cursor to Center, Enter
Set the pivot center in the toolbar on the bottom to 3D Cursor
Select your lamp, S,X,-,1, Enter
Done.

If the lamp is changing position more often, duplicate it and add an object constraint:

Select the dupli lamp
Properties, Constraints, Add Object Constraint, Copy Location
Check Invert for the axis you want to mirror.
For directional lamps, also try Copy Rotation


Select the video strip you want to move, then press ShiftA and look for Effect Srip->Transform.

Select the newly created transform strip and press N to revel the control panel.
You can move and rescale the image using Position and Scale.

Those values are keyframemable. To add a keyframe hover over the value and press I


expandpath() ?? can python reach out to an external directory on users comp?

Python is able to access the entire file system, except paths that require elevated rights (such as C:\Program files\ and C:\Windows\). It can also access them if you run your it as administrator, but you would usually not want that.

If you want to get the user directory path, use:

from os.path import expanduser
home = expanduser("~")

It also works on Windows. Example result: 'C:\\Users\\CoDEmanX'

Note that the Documents folder is not necessarily called like that, if you really want the actual path, you'll need to do this:

import ctypes.wintypes
CSIDL_PERSONAL= 5       # My Documents
SHGFP_TYPE_CURRENT= 0   # Want current, not default value

buf= ctypes.create_unicode_buffer(ctypes.wintypes.MAX_PATH)
ctypes.windll.shell32.SHGetFolderPathW(0, CSIDL_PERSONAL, 0, SHGFP_TYPE_CURRENT, buf)

print(buf.value)

For me it prints D:\Dokumente, because I set it up this way on my system.


First select your armature, go to pose mode, then select the mesh and enter weight paint mode.
At this point you can select bones (with right click) and pose them without leaving weight paint mode.


I cannot rotate of move camera anymore for some reason

You need to tell blender what object to use as a Camera


The diagonal line is caused by unproperly scaled UV coordinates for the face. Original face resembles trapeze where the bottom parallel line is longer and the top one - shorter. In order to avoid any distortions of the texture the UV map for that rectangle should also have those forms - one side shorter than the parallel one.

If scaling unchanged UV map you'll notice how it distorts:

The easiest solution would be to unwrap again in order to restore original proportions. However you can scale those edges on the map to roughly respect original ratio as well.


Problems come from two issues: rotation not applied and mesh with Ngons.
To solve some of them you can:

free particle edit of your "small hair2"
select the mesh and apply rotation and scale (Ctrl+A
)
recomb your hairs

To solve all issues, do a quick retopology to have a "quads only" and "edge loops only" mesh, and exclude from the vertex group all vertices that belong to the internal, borders also (think in terms of which faces you want to emit hair).

Another workaround could be make a copy of the external part of the mesh, delete the Ngons and extrude the last circle loop to reach the position of the previous borders, assign the particle systems to the new mesh and uncheck the "emitter" option in the particle render tab, so that the new mesh will not be rendered.


If you want to create an object that is like in the picture spun around a cylinder, i would suggest to use the screw modifier to get the base shape of the object and later fine tune the result.

Create a curve starting at the outside of the cylinder, making sure the origin is at the center of the cylinder.
Shape the curve to the form you want, like bottom, railing and maybe the late to be stairs... up to your imagination, or references.
Add a screw modifier and adjust the screw value to make it increase in height, like in your reference picture.
Increasing the Angle and Steps value will make it wrap around the cylinder more often and make it smoother. Consider this though for later editing. The more now the harder time for you later.
Fine tune and adjust and from here you can work either with boolean operations and try to stay non-destructive or apply the modifier and go creative in what ever way you desire.

Here a little visual showcase with a simplified version of the reference picture like result:

[Update:]

As shown/mentioned in the answer from @Robin-Betts, the option to create the cylinder along with the object originally being wrapped around it is there, and in certain cases i would go with that, as it makes sure the geometry is clean and fitting (important here though is to enable Merge Vertices to keep the geometry free from unnecessary double vertices).

Based on the question i believe you were going from a cylinder (not that those usually are hard to create) but maybe you have already some more details on it and don't want to redo your work.

If you have already some cylinder shape, it might be a good idea to adjust the Angle and Steps value to match the cylinder/base objects vertex count. That way the two objects will be easier to connect, be it on vertex and edge level or just visual in case you want them to be separate.


What scale should I use for a small diorama, and how does this affect lighting etc

I would recommend using a scale such as real-life dioramas use. I'd say a scale of 0.25 or 2.5 blender cm for a real-world meter. Just a guestimate. It mostly depends on what you want in the art piece.
Your main limitation with doing life-size landscapes is "clipping." Basically, the render system cannot keep calculating the view out into space forever, so past a certain distance it decides to start ignoring whatever's farther on. Get a look at this by making a giant cube or an ANT Landscape, then watching parts of it disappear as you get farther away from them.
If you want to do life-size, you can turn up the clipping limit on the camera to an extent, but for a better solution you can use "mist" to make the clipping effect not so prominent. This is like what Minecraft does where farther away things gradually become more transparent to the sky background (except with Minecraft it's not so much OpenGL as the system memory for how much world is loaded).


Is there a way to output two videos from rendering - one with compositing and one without?

Yes you can do that.
Use a file output node in the compositor.

How to output multiple images from Blender's compositor with Python?