Skip to content

Instantly share code, notes, and snippets.

View pkucherov's full-sized avatar

Pavel Kucherov pkucherov

  • Rotterdam, Netherlands
View GitHub Profile

Announcement

Please stop using this extension and Microsoft's C++ extension for Unreal code completion.

clangd

The VSCode extension clangd has blazing fast code completion in comparison. I've made a VSCode extension for it:

https://github.com/boocs/unreal-clangd

You will use clangd for code completion(Intellisense) and use Microsoft's C++ extension for Building/Debugging

@hach-que
hach-que / ForceRebuildUAT.bat
Last active May 20, 2024 21:10
Scripts to use Gauntlet in Unreal Engine 4 (UE4) - this is for testing a plugin in a host demo project
call "GetMSBuildPath.bat"
cd ../../
%MSBUILD_EXE% /nologo /verbosity:quiet Source\Programs\AutomationTool\Gauntlet\Gauntlet.Automation.csproj /property:Configuration=Development /property:Platform=AnyCPU
@hillin
hillin / integrating-fastbuild-with-ue4.md
Last active March 4, 2025 12:42
Integrating FASTBuild with Unreal Engine 4

FASTBuild is an open-source distributed build system, which could be a free alternative to Incredibuild. Unreal Engine 4 (UE4) does not support FASTBuild natively, however it's not hard to integrate it manually.

Integrate FASTBuild with UE4

Install FASTBuild

We assume you already have the full UE4 source code. First you'll need to grab the latest FASTBuild tools from here. We use v0.93 Windows x64 version in this tutorial. Download it and extract all the files. Here you have several choices:

  • Place the files under any folder which could be found with your system's PATH environment variable. To see where these folders are, run the PATH command in a command prompt window;
  • Place the files under the Engine\Binaries\ThirdParty\FASTBuild folder of your engine. This is the recommended place;
  • Place the files anywhere you like. This is not recommended because you'll have to hard-code the path later.
@makuto
makuto / DynamicTexture.cpp
Last active April 17, 2025 12:04
Procedural/Dynamic Texture System for Unreal Engine 4
//#include "GalavantUnreal.h" // Your game's header file here
#include "DynamicTexture.h"
// See https://wiki.unrealengine.com/Procedural_Materials
struct UpdateTextureRegionsParams
{
UTexture2D* Texture;
int32 MipIndex;
@grisevg
grisevg / AnimatedImage.cpp
Last active August 30, 2023 02:49
UMG Animated Image.
#include "AnimatedImage.h"
void UAnimatedImage::SetCurrentFrame(int32 Frame)
{
CurrentFrame = Frame;
if (CurrentFrame < 0) CurrentFrame = 0;
if (CurrentFrame > TotalFrames - 1) CurrentFrame = TotalFrames - 1;
SynchronizeProperties();
}
@grisevg
grisevg / FAsyncQueue.h
Last active July 17, 2024 18:09
Utility class for asynchronous/coroutine style programming in UE4 C++
#pragma once
/**
* FAsyncQueue can be used to run asynchronous delegates in sequence, parallel and combinations of the above
*
* Use Add() to enqueue delegates matching FAsyncDelegate signature:
* a void function that accepts a single argument of another void function with no arguments.
*
* Static factories MakeSync, MakeSequence and MakeParallel can be used to wrap different type of delegates and
* delegate collections into a single FAsyncDelegate which can be enqueued with Add().
@drewsberry
drewsberry / UE4-build.bat
Last active October 31, 2024 17:01
UE4 Windows command line building
:: Build client
RunUAT BuildCookRun -project="full_path.uproject"^
-noP4 -platform=Win64^
-clientconfig=Development -serverconfig=Development^
-cook -allmaps -build -stage^
-pak -archive -archivedirectory="Output Directory"
:: Cook client
RunUAT BuildCookRun -project="full_project_path_and_project_name".uproject^
-noP4 -platform=Win64^