Skip to content

Instantly share code, notes, and snippets.

@Celeborn2BeAlive
Celeborn2BeAlive / build_otio_wheel.sh
Created May 20, 2020 17:39
Shell script to build a wheel of OpenTimelineIO 0.12.1
#!/bin/bash
# This script generate a wheel for OpenTimelineIO in dist folder
# We need it has a patch to install otio 0.12.1 in Windows Blender because it requires compilation
# This wheel should be distributed with code that depends on otio 0.12.1 and installed using Blender's python -m pip
# You need python (3.7.*) and Visual Studio 2017+
CURRENT_DIR=`dirname $0`
ROOT_DIR=$CURRENT_DIR/
@tokejepsen
tokejepsen / otio_to_ffmpeg.py
Last active November 24, 2020 08:48
OTIO to FFMPEG
import subprocess
import sys
import os
import json
import shutil
import requests
import opentimelineio as otio
@alchem0x2A
alchem0x2A / blender_snippet_2.8x_1.org
Created September 15, 2019 20:40
New python snippets Blender 2.8x
@alchem0x2A
alchem0x2A / blender_venv.org
Last active November 27, 2024 20:37
Enable 3rd-party packages in Blender using virtualenv

Install external python packages + virtualenv with Blender

Requirements: Blender 2.80+ (2.79 should also work with pip method, not tested thoroughly)

Step 1: Install virtualenv on the system

In order not to mix the packages installed for Blender (such as scipy, matplotlib) with those system-wide packages, we need to create a virtual environment for the Blender alone.

Best practice is to use a single virtualenv for each version of

@ethanaeris
ethanaeris / fastlandscape2_8.py
Last active September 11, 2022 07:17
Fast Landscape for Blender 2.8
# -*- coding: utf-8 -*-
# ##### BEGIN GPL LICENSE BLOCK #####
#
# This program is free software; you can redistribute it and/or
# modify it under the terms of the GNU General Public License
# as published by the Free Software Foundation; either version 2
# of the License, or (at your option) any later version.
#
# This program is distributed in the hope that it will be useful,
@twilson90
twilson90 / get_anim_datas
Created March 31, 2019 00:04
a helpful function for finding most of the animation datas used in a context or scene
def get_anim_datas(context=None):
if context is None: context = bpy.context
found = set()
materials = set()
textures = set()
def found_add(o):
if o is None: raise Exception()
found.add(o)
found_add(context.scene)
@ethanaeris
ethanaeris / Pie_workspaces.py
Last active July 25, 2025 01:46
Pie Workspaced Addon for Blender 2.8. A quick way to switch between workspaces
# -*- coding: utf-8 -*-
# ##### BEGIN GPL LICENSE BLOCK #####
#
# This program is free software; you can redistribute it and/or
# modify it under the terms of the GNU General Public License
# as published by the Free Software Foundation; either version 2
# of the License, or (at your option) any later version.
#
# This program is distributed in the hope that it will be useful,
@tamask
tamask / log.py
Created August 8, 2018 00:44
Route system output (stdout/stderr) of Blender to the app console (put in scripts/startup)
import os
import sys
import bpy
output = None
input = None
info = None
error = None
write = None
@AzureDVBB
AzureDVBB / basic_ui_documented.py
Last active May 25, 2022 20:05
A commented template for making simple UI in blender using the bpy python API
#import the bpy module to access blender API
import bpy
#WARNING: this is written and tested for blender 2.79
#blender 2.8 and newer will likely have a different python API
#create a property group, this is REALLY needed so that operators
#AND the UI can access, display and expose it to the user to change
#in here we will have all properties(variables) that is neccessary
class CustomPropertyGroup(bpy.types.PropertyGroup):
@oleg-kachan
oleg-kachan / hander.py
Created February 16, 2018 11:06
Blender render
import bpy
import json
import os
class DataCombiner(object):
def __init__(self, path_to_renders, path_to_groundtruth):
self.path_to_groundtruth = path_to_groundtruth
bpy.data.scenes['Scene'].render.filepath = path_to_renders