Skip to content

Instantly share code, notes, and snippets.

@ikrima
ikrima / turbo_colormap.py
Created August 25, 2019 10:29 — forked from mikhailov-work/turbo_colormap.py
Turbo Colormap Look-up Table
# Copyright 2019 Google LLC.
# SPDX-License-Identifier: Apache-2.0
# Author: Anton Mikhailov
turbo_colormap_data = [[0.18995,0.07176,0.23217],[0.19483,0.08339,0.26149],[0.19956,0.09498,0.29024],[0.20415,0.10652,0.31844],[0.20860,0.11802,0.34607],[0.21291,0.12947,0.37314],[0.21708,0.14087,0.39964],[0.22111,0.15223,0.42558],[0.22500,0.16354,0.45096],[0.22875,0.17481,0.47578],[0.23236,0.18603,0.50004],[0.23582,0.19720,0.52373],[0.23915,0.20833,0.54686],[0.24234,0.21941,0.56942],[0.24539,0.23044,0.59142],[0.24830,0.24143,0.61286],[0.25107,0.25237,0.63374],[0.25369,0.26327,0.65406],[0.25618,0.27412,0.67381],[0.25853,0.28492,0.69300],[0.26074,0.29568,0.71162],[0.26280,0.30639,0.72968],[0.26473,0.31706,0.74718],[0.26652,0.32768,0.76412],[0.26816,0.33825,0.78050],[0.26967,0.34878,0.79631],[0.27103,0.35926,0.81156],[0.27226,0.36970,0.82624],[0.27334,0.38008,0.84037],[0.27429,0.39043,0.85393],[0.27509,0.40072,0.86692],[0.27576,0.41097,0.87936],[0.27628,0.42118,0.89123],[0.27667,0.43134,0.90254],[0.27691,0.44145,0.913
@ikrima
ikrima / turbo_colormap.glsl
Created August 25, 2019 10:29 — forked from mikhailov-work/turbo_colormap.glsl
Turbo Colormap Polynomial Approximation in GLSL
// Copyright 2019 Google LLC.
// SPDX-License-Identifier: Apache-2.0
// Polynomial approximation in GLSL for the Turbo colormap
// Original LUT: https://gist.github.com/mikhailov-work/ee72ba4191942acecc03fe6da94fc73f
// Authors:
// Colormap Design: Anton Mikhailov (mikhailov@google.com)
// GLSL Approximation: Ruofei Du (ruofei@google.com)
@ikrima
ikrima / buildconfiguration.xml
Last active September 1, 2019 14:37
Useful UBT flags/variables
<?xml version="1.0" encoding="utf-8" ?>
<Configuration xmlns="https://www.unrealengine.com/BuildConfiguration">
<BebylonBuildConfiguration>
<bBBLivePPEnabled>true</bBBLivePPEnabled> <!-- /* d=false */ -->
<bBBIGMemTraceEnabled>false</bBBIGMemTraceEnabled> <!-- /* d=false */ -->
<bBBMicroProfileEnabled>true</bBBMicroProfileEnabled> <!-- /* d=true */ -->
<bBBPythonEnabled>true</bBBPythonEnabled> <!-- /* d=true */ -->
<BBCompileAssertLevel>4</BBCompileAssertLevel>
<bBBExperimentalFeaturesEnabled>true</bBBExperimentalFeaturesEnabled> <!-- /* d=false */ -->
</BebylonBuildConfiguration>
@ikrima
ikrima / build.cs
Created April 6, 2017 20:17
4.15 UE4 Optimized Build Rules
public BBR(TargetInfo Target)
{
//Config
//BuildConfiguration.RelativeEnginePath = /* ...*/;
//Debug
//---BuildConfiguration.bOmitPCDebugInfoInDevelopment = true /* d=false */;
//BuildConfiguration.bSupportEditAndContinue = false /* d=false */;
//BuildConfiguration.bDisableDebugInfoForGeneratedCode = true /* d=true */;
//BuildConfiguration.bAllowLTCG = false /* d=false */;
@ikrima
ikrima / bldperf.ps1
Last active September 16, 2020 22:29
VC Build analysis script
<#
.SYNOPSIS
VC Build analysis.
.DESCRIPTION
VC Build analysis.
.EXAMPLE
C:\PS>bldperf.ps1 -start
[...Build from msvc...]
C:\PS>bldperf.ps1 -stop -timetrace -compilescore -cppbldanalyze
.NOTES
@ikrima
ikrima / Adding-Selective-lightbaking.patch
Created May 1, 2017 20:23
Selective Light Baking UE4 4.15
From e79d15122ffd2ac59170385afc858e90f9996eed Mon Sep 17 00:00:00 2001
From: ikrima <contact@ikrima.com>
Date: Thu, 16 Mar 2017 07:03:25 -0700
Subject: [PATCH] Adding selective lightbaking
-Mainly just piggybacked off existing functionality using FLightingBuildOptions
-Main thing was adding ability to pipe that data struct to the EditorBuildLighting command
& augmenting the ShouldOperateOnLevel() call to take into account FLightingBuildOptions
---
.../Editor/UnrealEd/Private/EditorBuildUtils.cpp | 49 ++++++++++++++--------
@ikrima
ikrima / cppbinding_generator.js
Last active November 18, 2020 04:57
tree-sitter c++ bindings + strongly typed adaptor generator
const _ = require('lodash');
const ndetypes = require(`./src/node-types.json`);
let symtbl = new Set()
let fldtbl = new Set()
let cde_astfwds = "";
let cde_astdefs = "";
let cde_astdcl = String.raw`
struct TlvBase_cst : public CSTNode_o {
@ikrima
ikrima / UE4 Test Configuration Packaging
Created June 13, 2015 00:30
How to package a Test Configuration in UE4
go to your UE4/Engine/Build/Binaries folder, and run the following:
RunUAT BuildCookRun -project="F:\UE4\MyHotProject\MyHotProject.uproject" -windows-noeditor -cook -stage -pak -package -clientconfig=Test
@ikrima
ikrima / robin_hood.natvis
Last active December 27, 2022 10:43
Robin Hood natvis
<?xml version="1.0" encoding="utf-8"?>
<AutoVisualizer xmlns="http://schemas.microsoft.com/vstudio/debugger/natvis/2010">
<Type Name="robin_hood::detail::Table&lt;*,*,*,*,*,*&gt;">
<!--
$T1 = bool IsFlat
$T2 = size_t MaxLoadFactor100
$T3 = typename Key
$T4 = typename T
$T5 = typename Hash
$T6 = typename KeyEqual
@ikrima
ikrima / UE4 Animation Subsystem Architecture
Last active November 23, 2023 03:18
Mapping Out The UE4 Animation Architecture Flow
Animation Subsystem
AnimInstance is the runtime animation class that maintains runtime data & plays shit
- This is the parent class of the animation blueprint
- Get Bone Transforms from a specific time t:
○ Sequence->GetAnimationPose(Output.Pose, Output.Curve, FAnimExtractContext(CurrentTime, Sequence->bEnableRootMotion));
UAnimationAsset is the classes that contain the actual data and also calculates bones & curves
- UAnimSequence