Blender

Sources

  • Blender .

  • BlenderGuru .

  • CG Boost .

    • Some useful concepts of Topology and Sculpting, low-mid-poly.

  • GrantAbbitt .

    • Does low-poly art with a very gimmicky stylized look; I don't find it pretty.

    • Has videos about topology and other things. Some of his videos are useless.

  • Belidos3D .

    • Has some useful information and tips.

    • Usually focused on modeling.

  • J_Hill .

    • Basically doesn't use Blender, but is useful for high-poly walkthroughs and Topology / Sculpting concepts.

  • RigiT .

    • Some low-poly walkthroughs.

  • 3DMegaVerse .

    • British old man with a soothing voice.

    • Slow tutorials, but well explained.

    • Usually just about modeling in Blender and texturing in other software.

  • Nik ottmann .

    • General tips.

  • Blender Secrets .

    • Has useful tips.

    • I watched what I considered important from the playlists of:

      • Blender Secrets - Interface.

      • Blender Secrets - Motion Capture.

      • Blender Secrets - Motion Capture (MoCap).

      • Blender Secrets - Animation (26).

      • Blender Secrets - Animation (64).K

  • Ryan King Art .

    • Sculpting.

    • A terrible channel, very annoying, but can be useful for sculpting.

  • Joey Carlino .

    • Rigging and Animation

    • Videos on fundamental concepts, Rigging, Animation, and Shaders.

  • Pierrick Picaut .

    • Rigging and Animation

    • Focused on Rigging and Animation.

  • RoyalSkies .

    • Rigging and Animation

    • The channel owner has a somewhat unpleasant personality, but has very useful videos on Rigging and some Walkthroughs.

    • I watched the playlists of:

      • Blender Rigging - CRASH-COURSE.

      • Blender 2.9 ROKOKO Motion Capture Tutorials.

      • Blender 2.8 ANIMATION (Speed Tutorials).

      • Blender 2.83 Speed Animating Tutorials.

      • Blender 2.8 Texture Painting (Speed Tutorials).

      • Blender 2.8 TIPS & TRICKS (Speed Tutorials).

      • Blender 2.8 UV-MAPPING (Speed Tutorials)

      • Things Blender Should Steal.

      • Blender SPEED Modeling Tutorials.

  • CGDive .

    • Rigging and Animation

    • Explanations and tips on Animation, Rigging, and MoCap; in-depth explanations.

    • I watched the playlists of:

      • Mocap & Retargeting in Blender.

      • Blender & Mixamo.

      • Blender & Godot Engine.

      • Blender to Game Engines (Unreal, Unity, Godot, etc.).

      • Blender Weight Paint Tutorials 2.8/2.9.

  • Lewis Animation .

    • Rigging and Animation

    • Focused on Rigging and Animation for Blender, not aimed at gamedev. Explains cloth physics, glass, etc.

  • CGTyphoon .

    • Very interesting site for tips on modeling, topology, rigging, and animation.

Import

  • You can drag and drop a .blend  file and you'll be asked with the available options.

Copy / Paste
  • You can copy elements from one .blend  file to another, just by using ctrl+c and ctrl+v.

  • Everything is local; unlinked-copy.

Append
  • Basically a fancy way of "copy / paste".

  • Everything is local; unlinked-copy.

  • Ideally, you append a Collection, not individual Objects / Meshes.

    • The reason for that is organization.

  • Brings an instance from another .blend  file, and every time you make a change to the original file, the instance will be updated.

  • How linked data looks :

    • .

      • Cannot be edited.

    • .

      • A Library Override  was made.

      • The data can be edited, but will revert to the original data once the file is reloaded.

      • Edits made after a Library Override are not saved anywhere, so this is only useful for testing; as changes are not saved.

      • Despite this, you can still make Poses and create new animations (old ones cannot be modified).

      • The idea is that you cannot modify the data, but you can animate the data.

        • These new animations are stored in the current Blender file, not in the source file.

    • A Collection is instanced as an Empty.

      • .

      • .

      • To see its contents, you have to make a Library Override .

  • Good workflow :

    • "An animator would work on a linked version of the file, while a modeler / rigger would work on the original file."

    • "A level designer would work on a linked version of the file, with the low-poly mesh, while the modeler would work on the original file."

    • You should link Collections , not just anything.

      • "You can easily add or remove assets from a Collection. Objects can only store their own data."

      • An Object cannot even be moved.

    • .

      • "Use a master collection", etc.

    • .

      • Name your collections as obviously as possible, to not link wrong collections.

      • My Master Collection is fully capitalized.

  • Fixing Broken Link :

    • .

    • .

    • .

    • If the path of the linked .blend  file is changed/renamed, this will make the object have missing data, showing the 'missing data' icon (torn paper).

    • The path can be fixed by going to Outline -> Blender File -> Libraries -> ~file -> Relocate .

  • Remove Link :

    • Assumption: Clicking the 'chain icon with arrow' breaks the link, allowing edits to be made normally, as the file becomes saved locally.

    • If you Shift + Click the icon, something else happens, but I don't know what.

Asset Library
  • .

    • "Mark the Collection as Asset".

  • .

    • Add this file to the asset library, so I can access all this stuff more easily in other files.

  • .

    • You can change the import method in the Asset Library.

    • Link will make it so that if the asset is updated in the original file, all other files will change as well.

      • Library Override can be used. For what?

    • For something specific for my current scene, I go for Append, so I can edit the file here, without having to edit the original model.

Export

glTF
  • Better glTF Exporter .

  • What is not exported by default :

    • Collections.

      • It's as if they don't exist. The content of a Collection "comes out" of the Collection during export.

  • Export glTF -> Data -> Scene Graph -> Full Collection Hierarchy :

    • Each Collection becomes a Node in the glTF.

Interface, FileSystem, etc

File System
Interface
Backup system

Source

  • https://developer.blender.org/docs/handbook/building_blender/

  • https://developer.blender.org/docs/handbook/new_developers/navigate_code/

Keymapping

  • [3.6.1 to 4.1.0]

General rule
  • Delete keymaps:

    • Never delete any keymap, unless necessary; do not delete just for 'cleaning'.

    • If you need to delete a 'keymap', avoid deleting a single keymap as much as possible, i.e., only delete keymaps when there is at least one other keymap that performs the same function.

  • It is not necessary to use the 'export all keymaps' option. Exporting only the 'deltas' of the keymaps is useful when comparing changes between presets.

Silly things
  • Any change to a 'keymap' in the preset creates an entire huge category in the .py file, making maintenance of what changes were made ridiculously and unnecessarily difficult.

  • When making a change in a preset, there is a high chance that these changes will also alter the 'Blender' preset. This happens if the change you want to make did not initially exist in the preset, so Blender thinks the best way to handle this is to alter the 'Blender' preset to make the shortcut work.

    • Because of this, you must be very CAREFUL using RESTORE , as it may not restore multiple presets at the same time due to high keymap dependency.

    • IF YOUR PRESET HAS ANY 'RESTORE' , do the following: Export the preset -> delete the previous preset -> reimport the preset -> finally restore the 'Blender' preset.

      • If this is not done, the modifications will be linked to presets. This also indicates that there are "unsaved changes" in your preset.

Export
  • Exporting causes Preferences to be "lost", as Export only saves the 'delta' of keymaps. The truth is that Preferences can be saved, as long as the keymaps altered by Preferences are saved along with the preset, by altering something small in the keymap.

Import
  • When Import is done, the new preset becomes part of 'userpref' and is independent of the .py file used. That is, when altering something in a preset and clicking 'Save Preferences' in the lower-left corner, all presets are saved in the 'userpref' file.

  • The preset made by Import will have 'restores' available if a keymap is changed, but this Restore only restores the Keymap to the initial version of the .py file, i.e., it does not restore the factory version.

  • 'Keep Original': Chooses whether the .py file should be deleted after Import. Keep the option checked to retain the file.

Removing presets
  • It is not possible to remove 'Blender', 'Blender 27x', or 'Industry Compatible'.

Geometry

Transformations, Selection, and Snap
Tools
Curves
Modifiers
Topology
Retopology

General

General
Etc
Terrain
Sculpting
UV Map
Texturing
Painting
Texture Baking
  • Texture Baking .

  • Motivations :

    • Have procedural effects baked into a texture, so it can be rendered in game engine materials.

    • High-poly to low-poly conversion:

      • Used to maintain the high-poly detail quality on a low-poly model.

  • Precautions :

    • An invisible object can affect baking/rendering.

      • Visibility icon is ignored; only the Render icon matters.

  • Color Space Choice :

    • For 'Base Color/Albedo/Diffuse' or 'Emissive':

      • Use sRGB

    • For other maps:

      • Use Non-color.

        • Ensures correct baking results, avoiding color space conversions that could alter the bake.

        • Only takes linear mathematical values.

        • 'Linear' also seems to work.

  • Bake Quality :

    • Cycles samples:

      • Preview: 10 samples.

      • High-quality: 512 samples.

  • Baking {9:40 -> 22:00} .

    • Tips:

      • Leave Cycles samples at 10; it's enough.

      • Baking Emit using the 'Node Wrangler' trick; used for Metallic baking.

      • Can create an RGB node to store baking info for channels without a texture.

      • Margin value can be adjusted to control UV texture bleed.

  • Baking many objects into the same texture .

    • Manipulates object UVs, considering texture margin between baked objects.

  • Baking the Normal Map of a high-poly model for a low-poly model .

  • Baking the Normal Map of a high-poly model for a low-poly model using a "cage" .

  • Baking Ambient Occlusion .

  • Baking Ambient Occlusion .

    • It is explained that the 'glTF Settings' node in the Shader Graph is really a 'dead-end', not displaying any result in the image preview in Blender, only ensuring that the AO information is exported to the glTF file during material export.

    • The reason AO is placed in this 'dead-end' is due to Blender's Shader Graph not supporting 'Occlusion', since it was made for Cycles, which calculates AO in real-time. This may change in the future if Blender adds support for Eevee.

    • AO baking is somewhat awkward, as Blender allows baking using Cycles, but it is not possible to see the texture result in Eevee due to this lack of support.

    • The rest of the video shows:

      • Some fixes in AO baking due to geometry normals and textures appearing in front during render.

      • Final process to ensure AO export in the glTF file.

  • Baking the Cavity Map of a high-poly model, to be used by a low-poly model .

  • Baking the Cavity Map of a high-poly model, to be used by a low-poly model .

  • Baking Ambient Occlusion of a high-poly model, to be used by a low-poly model .

    • The only thing done is Ambient Occlusion baking in Cycles. Supposedly, the existence of the Normal Map is required for Ambient Occlusion to be baked.

  • Using some baked textures .

    • {0:13 -> 0:32}

      • A new texture is created where the Base Color Texture Paint will be applied. This texture is then multiplied by the CavityMap texture, resulting in a mixture of both textures.

    • {3:45 -> 4:24}

      • Discusses the process of baking the result of mixing both textures into a single Base Color texture.

      • It's somewhat strange that in addition to using the CavityMap texture as a mix with the Base Color, it is also used for Roughness; the reason is unclear.

Illumination

Point Lights
  • Radius :

    • Soft Shadows.

Spot Light
  • Radius :

    • Soft Shadows.

  • Spot size :

    • Width of the cone.

  • Blend :

    • Soften cone edges.

Sun Light
  • Angle :

    • Soft Shadows.

    • "Atmospheric diffusion".

Area Light
  • Spread :

    • How focused the diffuse light is.

IES Textures
  • Considered Photometric Lights.

  • .

Emission
  • Make sure the Emission Strength is greater than zero.

  • .

  • Bloom :

    • Enable Compositor  in Viewport Shading.

    • .

    • Enable nodes in Compositor .

    • .

    • Add a Glare Node with Bloom.

    • ;

Animation

Rigging

Shape Keys

Animating Shape Keys
  • 'Dope Sheet -> Shape Key Editor' can be used to create "animations" of Shape Keys.

  • Adding keyframes is a bit tricky. The method that worked for me was to right-click the Shape Key Value and select 'Insert Keyframe'.

  • Export:

    • Animations are exported to Godot normally.

    • The 'sliders' of Shape Key Values are also exported as a new mesh property; useful to change values via code or AniPlayer.

  • Limitation:

    • Shape Key animations cannot be combined with "normal" animations, not even using the NLA Editor.

      • If you want to combine both, it can be done in Godot to merge easily.

Animating

Philosophies and Walkthroughs

Motion Capture

Retargeting

Other Blender Stuff

Geometry Nodes

  • .

Physics

Rendering