Skip to content

Instantly share code, notes, and snippets.

View aras-p's full-sized avatar

Aras Pranckevičius aras-p

View GitHub Profile
@aras-p
aras-p / xcode.sh
Last active March 26, 2024 19:48
Blender build options
# windows:
make developer nobuild
cd ..\build_windows_x64_vc17_Release
cmake -DWITH_PYTHON_SAFETY=OFF -DWITH_ASSERT_ABORT=OFF -DWITH_ASSERT_RELEASE=OFF -DWITH_RENDERDOC=ON .
@aras-p
aras-p / blender_size_release.txt
Last active August 6, 2023 11:22
blender.exe (2023 Aug 1) size breadown with Sizer, Release
# Sizer --min=10 --templatemin=20 --classmin=20 --filemin=30 blender.exe
# using Sizer https://github.com/aras-p/sizer/releases/tag/v0.6.0
# my build is with these settings *OFF*: WITH_CYCLES_OSL, WITH_MATERIALX, and without CUDA/HIP/SYCL/oneAPI bits either.
# Release build config
Functions by size (kilobytes, min 10.00):
847.90: gpu_shader_create_info_init gpu_shader_create_info.obj
141.40: ?initFunctionMap@ColladaParserAutoGen15Private@COLLADASaxFWL15@@AEAAXXZ COLLADASaxFWLColladaParserAutoGen15PrivateFunctionMap.obj
123.30: ccl::integrate_surface<16777659> kernel_sse41.obj
120.56: ?createFunctionMap__library_effects__allChildren@FunctionMapFactory@COLLADASaxFWL14@@SAAEBV?$map@KUFunctionStruct@?$ParserTemplate@VColladaParserAutoGen14Private@COLLADASaxFWL14@@VColladaParserAutoGen14@2@@GeneratedSaxParser@@U?$less@K@std@@V?$allocator@U?$pair@$$CBKUFunctionStruct@?$ParserTemplate@VColladaParser
@aras-p
aras-p / blender_size.txt
Last active August 5, 2023 17:47
blender.exe (2023 Aug 1) size breadown with Sizer, RelWithDebInfo
# Sizer --min=10 --templatemin=20 --classmin=20 --filemin=30 blender.exe
# using Sizer https://github.com/aras-p/sizer/releases/tag/v0.5.0
# my build is with these settings *OFF*: WITH_CYCLES_OSL, WITH_MATERIALX, and without CUDA/HIP/SYCL/oneAPI bits either.
# RelWithDebInfo build config
Warning: PDB file is created with incremental linking, some information might be misleading.
Functions by size (kilobytes, min 10.00):
847.90: gpu_shader_create_info_init gpu_shader_create_info.obj
141.40: ?initFunctionMap@ColladaParserAutoGen15Private@COLLADASaxFWL15@@AEAAXXZ COLLADASaxFWLColladaParserAutoGen15PrivateFunctionMap.obj
123.14: ccl::integrate_surface<16777659> kernel_sse41.obj
@aras-p
aras-p / Test.cs
Created June 20, 2023 15:42
Unity 2022.3 enum bug
// just attach this to an empty game object.
// Unity 2021.3: fine
// Unity 2022.3: displays PVRTC_RGBA2 value.
// This happens with enums that contain some Obsolete values.
//
// Looks like a regression since inspector got changed to UIToolkit,
// the code inside UIToolkit enum property field does not handle
// obsolete entries correctly. And compared to IMGUI enum field,
// also loses any potential enum localization.
@aras-p
aras-p / fbx_visibility_export.diff
Created February 8, 2023 10:10
Blender FBX Visibility export
diff --git a/io_scene_fbx/export_fbx_bin.py b/io_scene_fbx/export_fbx_bin.py
index c5cd93a7..f15b3a8a 100644
--- a/io_scene_fbx/export_fbx_bin.py
+++ b/io_scene_fbx/export_fbx_bin.py
@@ -1688,7 +1688,8 @@ def fbx_data_object_elements(root, ob_obj, scene_data):
animatable=True, animated=((ob_obj.key, "Lcl Rotation") in scene_data.animated))
elem_props_template_set(tmpl, props, "p_lcl_scaling", b"Lcl Scaling", scale,
animatable=True, animated=((ob_obj.key, "Lcl Scaling") in scene_data.animated))
- elem_props_template_set(tmpl, props, "p_visibility", b"Visibility", float(not ob_obj.hide))
+ elem_props_template_set(tmpl, props, "p_visibility", b"Visibility", float(not ob_obj.hide),
@aras-p
aras-p / dump.txt
Created December 15, 2022 10:46
Opening random Unity project in one minute, profiling dump
Unity 2022.2.0f1 official release.
I get changes from version control, about a dozen files changed (1 commit), then I open Unity.
It takes about one minute to open the project. The project Assets is 23GB (143k files), it also references
some local packages which is 8GB (63k files). Large part of project assets folder is custom data not used
by Unity's import pipeline ("baked" files for game, under StreamingAssets folder, 13GB, 47k files).
63s: InitializeProject
62s: InitialRefreshV2
54s: RefreshInternalV2
30s: ImportOutOfDateAssets
@aras-p
aras-p / arrays.txt
Created December 13, 2022 10:33
UnityEngine C# API A..C array parameters
// just going through Data/Managed/UnityEngine.xml in Unity 2023.1.0a22, letters A to C,
// searching for "[]" finds these public APIs that take arrays as parameters. Then next to
// them I looked whether they have a List<> or NativeArray<> variants. Some do have List<>,
// very few have native array. Most of them would be good candidates to take a Span<T>,
// in some cases that might reduce the need for also having "an integer offset and number of items"
// arguments that some (minority) of them do.
//
// This is only A..C so far, or maybe like 10% of the UnityEngine.xml API. UnityEditor.xml probably
// has a ton of similar ones :)
@aras-p
aras-p / building_oiio.md
Last active September 7, 2023 07:59
Building OpenImageIO from source locally

Windows

OIIO build instructions currently just say this for Windows:

Method 1 - from source I really need someone to write correct, modern docs about how to build from source on Windows.

So I decided to figure that out.

Easiest: get Blender first :)

@aras-p
aras-p / IntegerShader.shader
Created September 9, 2022 09:59
Unity integer texture formats test
Shader "Unlit/IntegerShader"
{
Properties
{
_MainTex ("Texture", 2D) = "white" {}
}
SubShader
{
Pass
{
@aras-p
aras-p / welcome.md
Created July 14, 2022 07:59
Welcome, ironSource! in human speak

(original: https://blog.unity.com/news/welcome-ironsource)

Welcome, ironSource!

Unity announced today that it has entered into an agreement to merge with ironSource. Wait, a merge you ask? This is more like an acquisition, but we chose "merge" wording for either accounting reasons, or for better stonks optics reasons.

We continue to believe that the world is a better place with more creators in it. This is actually a great statement that almost no one disagrees with!

We do have a bunch of products, and with our recent acquisitions of Parsec, SyncSketch, Wētā Digital, and Ziva Dynamics, we hope to somehow smash them into a coherent whole, eventually.