Skip to content

Instantly share code, notes, and snippets.

View slobodin's full-sized avatar

Nikolay Slobodin slobodin

  • Russia, Saint Petersburg
View GitHub Profile
@hach-que
hach-que / BuildLighting.ps1
Created January 14, 2018 08:17
Automating lighting builds in Unreal Engine 4.18
$ContentPath = "$PSScriptRoot\Content\Levels".Replace("\", "/")
$process = Start-Process `
-FilePath "C:\Program Files\Epic Games\UE_4.18\Engine\Binaries\Win64\UE4Editor-Cmd.exe" `
-ArgumentList @(
"$PSScriptRoot\MinuteOfMayhem.uproject",
"-run=resavepackages",
"-buildtexturestreaming",
"-buildlighting",
"-MapsOnly",
"-ProjectOnly",
@gorlak
gorlak / tools-engineer-checklist.md
Last active February 12, 2025 09:59
Tools Engineer Checklist

This list is provided as a guide for tools engineers of all skill levels looking for jobs in the game industry. It's meant as a guide to topics that should be pursued broadly in order to be well spoken in an interview. I doubt any hiring manager requires deep knowedge across every topic, but an ideal candidate would be somewhat knowledgable (aware of its existence if asked directly) with all topics here.

Each list of bullets increases in difficulty, so later bullets are more applicable to senior (or even director) level candidates.

Good luck.

@gorlak

Math

@graphitemaster
graphitemaster / T0.md
Last active January 6, 2025 08:29
Vulkan Tutorial

Tutorial 0

What is Vulkan

Vulkan is a low-overhead, cross-platform 3D graphics and compute API.

Vulkan targets

Vulkan targets high-performance realtime 3D graphics applications such as games and interactive media across multiple platforms providing higher performance and lower CPU usage.

@bkaradzic
bkaradzic / orthodoxc++.md
Last active April 4, 2025 07:46
Orthodox C++

Orthodox C++

What is Orthodox C++?

Orthodox C++ (sometimes referred as C+) is minimal subset of C++ that improves C, but avoids all unnecessary things from so called Modern C++. It's exactly opposite of what Modern C++ suppose to be.

Why not Modern C++?

@galek
galek / pbr.glsl
Created November 4, 2015 11:10
PBR GLSL SHADER
in vec2 v_texcoord; // texture coords
in vec3 v_normal; // normal
in vec3 v_binormal; // binormal (for TBN basis calc)
in vec3 v_pos; // pixel view space position
out vec4 color;
layout(std140) uniform Transforms
{
mat4x4 world_matrix; // object's world position
@ph0b
ph0b / build.gradle
Last active February 12, 2023 07:45
sample build.gradle for generating split APKs per ABI
apply plugin: 'com.android.application'
android {
compileSdkVersion 21
buildToolsVersion "21.1.2"
defaultConfig{
minSdkVersion 14
targetSdkVersion 21
versionCode 101
@aras-p
aras-p / ImportMeshUtility.cpp
Created May 31, 2012 15:01
Unity tangent space calculation
// THIS IS ONLY A PORTION OF THE FILE
// WILL NOT COMPILE OUT OF THE BOX!
void OrthogonalizeTangent (TangentInfo& tangentInfo, Vector3f normalf, Vector4f& outputTangent)
{
TangentInfo::Vector3d normal = { normalf.x, normalf.y, normalf.z };
TangentInfo::Vector3d tangent = tangentInfo.tangent;
TangentInfo::Vector3d binormal = tangentInfo.binormal;
@stevetranby
stevetranby / snippet.cpp
Created March 29, 2012 05:49
call lua functions from c++ using with Cocos2dx
CCLOG("running scripts");
//test2p
lua_State *L = pEngine->getLuaState();
lua_getglobal(L, "test");
lua_call(L, 0, 0);
lua_getglobal(L, "test1r");
lua_call(L, 0, 1);
int ret = lua_tointeger(L, -1);