Gamedev Guide
Hooking into windows message pump
Initializing search
ikrima/gamedevguide
Home
UE4
Dev Notes
Math
Graphics
Houdini
Design
Blog
Gamedev Guide
ikrima/gamedevguide
Home
UE4
UE4
Open Source UE4 Repo
Application os generic platform
Application os generic platform
Capturingshowing mouse input
Command line parsing
Overview
Crash handling crash reporter
Setting the DLL binary path
Hooking into windows message pump
Loading screen
Processthread management
Readingwriting files
Targetbuild configurationplatform properties
Useful classes
Useful generic function list
Common How-To
Build guide
Build guide
Build Target File Demystified
Custom warnings as errors
How to set up build dedicated servers for windows and linux for your ue4 game using windows
Editor Session Log
Overview
Precompiled Build Process
Resources on udn
Setup light swarm
Enabling UE4 Static Analysis
Docker
Docker
Docker overview
Plugins modules
Plugins modules
Commandlet plugin example
Linking external dlls or libraries
Plugin module loading
Uprojectuplugin descriptor
Ubt
Ubt
AutomationTool.exe Reference:
Build target cs with useful switches parameters
Buildconfiguration xml example
Debugging shipping configuration
Overview of Engine Versioning:
Misc helpful tipsdebugging
Project generator options
Useful build switchesspeed up recompilation
Utilities
Utilities
Building the plugin
Useful UBT Flags
Kl automation scripts
Development setup
Development setup
General Tips
Windows defender exclusions script
Editor extensions
Editor extensions
UE4 Editor Extensions
Redirectrenaming classespropertiespackages
General
Custom blueprints
Custom blueprints
Adding Blueprint Static Analysis Tool
Blutility editor extensions
Custom Blueprint Nodes
Class Diagram Overview
Generic or wildcard parameters
Custom tools
Custom tools
Custom Content Browser References
Class Diagram Overview
Editor gizmos
Viewports
Detail customization
Detail customization
TMap DetailsView Customizations
Array builder
Detail customization examples
Overview
Sequencer
Sequencer
Binding objects sequence ids
Design notes from epic
Preanimated state caching
Overview
Overview
Subject matter experts
Track evaluation
Useful functionsmisc
Slate
Slate
Custom state machine graph
Tutorials & Reference
Slate layout
Slate style
Slate
Useful slate classes
Useful slate code samples
Utility helpers
Utility helpers
Checking Out Default*.ini file for a class
Editor file utils
Useful classes
Package utils
Save object to a package or asset
Useful actor editor functions
Useful Editor Functions
Engine programming
Engine programming
Guarded Main Loop
Thread Pools
Useful classes
Unreal Template Type Traits
UWorld Creation Flow
Blueprints
Blueprints
Blueprint Compiler Internals I
Blueprint Compiler Internals II
Blueprint Compiler Internals III
Blueprint Compilation
Anatomy of the Unreal 4 blueprint virtual machine
Memory
Memory
Allocators malloc
Debuggingdevelopment tools
Garbage Collection Internals
Tracking references
Uht
Uht
Custom tproperties
Uht parsing
Uobject internals
Uobject internals
UObject Internals & Type System
Uobject reflection
Uobject reflection
Reflection System Details: Part 1
Reflection System Details: Part 2
Reflection System Details: Part 3
UE4 Reflection Overview
Exposing Wrapper/SumType/Variant Structs to Blueprints
Uobject serialization
Uobject serialization
Hooking into saving serialization
Uobject ustruct serialization
Uobjects
Uobjects
UPÂROPÂERÂTY
Duplicate or copy object
UObject Creation/Initialization
Uobject upackage internals
Environment setup
Environment setup
Gamedev Environment Part I: Extremely Highend Hardware
Gamedev Environment Part II: One weird trick to get a 70% performance boost
Gamedev Environment Part III: Making Windows Tolerable + software I use + semi-auto imaging dev machines
Gamedev Environment Part IV: Optimizing Unreal Engine Builds, Visual Studio, and Final Benchmarks
Gameplay programming
Gameplay programming
Asset Manager
Controller mappings in ue4
Gameplay debugging
Gameplay programming
Instantiating destroying objects
Commands
Replicated singleton
Useful functions
Actor tick lifecycle flow
Actor tick lifecycle flow
Actor Load/Init Function Cheatsheet
Actor Load/Init Function Cheatsheet
Creating components at runtime or dynamically in c programming
Dynamically create components from other components
Animation subsystem
Animation subsystem
Animation playback syncing
Animation Subsystem
Master pose vs copy pose vs mesh merge
Animation Ticking
Skeletal mesh merge
Uskeletalmesh fskeletalmeshresource fskeletalmeshrenderdata fskeletalmeshlodmodel
Gameplay ability system
Gameplay ability system
Overview
Questions
Notes
Overview
Gameplay framework
Gameplay framework
Gamemode game flow diagram
Gamemode
Gameplay framework
Master engine flow
Master engine flow
Actor spawning flow
Editor Delegates
Input processing architecture diagram flow
Game Flow Diagram
Ticking order execution dependencygraph
Physics
Physics
Async physics traces
Useful console commands
Useful console commands
Udk console commands
Udk editor console commands
Udk gameplay debugging
Console Tips & Tricks
General debugging
General debugging
Add vs autoattach to ue4 button
Display all blueprint properties
Print bp callstack
Graphics development
Graphics development
Coordinate spaces
Alter Translucency Lighting
Custom passes extensions
Custom passes extensions
Color gradingpostprocess
Custom primitive
Custom stencil notes
GOAL/Endresult
STATIC PATH FOR STATICMESHCOMPONENT
Custom stencil walkthrough pt3
Stencil Layers
Custom stencil walkthrough pt5
Approach
How to
How to
Explicit RenderTarget Operations
Render With PipelineStateObject
Rendering Outside Normal Render Path
Lightmass lightmapping
Lightmass lightmapping
Debugging lightmass
Indirect lighting cachevolumetric lightmap notes
Lightmass 2d lightmaps
Lightmass misc lightmapping notes
Lightmass volumetric lightmaps
Swarm overview
Using Lightmass
Render architecture
Render architecture
Common Info:
Detailed render flow
Drawing policies
Game thread update code flow
Misc useful functions
TLDR
Overview
Threading Model
Shader common params
Shader compilation code flow
Shader uniform buffers
Shader development
Shader development
Add Custom Shading Model
Fast Custom Shader Iteration Tips
Brain Dump of Useful Functions
Shader debugging
Shader debugging
Commands for toggling debug & perf markers
RenderDoc
Debugging Shader Compilation Process
Misc ue4 editor
Misc ue4 editor
Content Browser Advanced Search Syntax
3 classes of lights:
Maya pipeline
Movingrenaming files
Particles
Streaming levels
Networking
Networking
Overview
Configuration
Connection flow
Debug Configuration
Dedicated server on aws
Networking Subject Matter Experts
Misc Brain Dump
Network IDs
Networking overview
Useful Posts
Server travel connection flow
Useful functions
Vr preview with networking
Low level networking
Low level networking
Networking server call from unauthenticated client
High Level Overview
Message buspassingtcpudp
Send udp packets samplecustom socket
Thin client wrappers and custom transport messaging example
Network replication
Network replication
Custom replication
Custom struct serialization for networking
Detailed network serialization
Code Flow
Fast tarray replication
General replication
Physics replication
Replication cheat sheet
UObject:
Sublevels aren't directly associated with ULevels
Online subsystem
Online subsystem
Create dedicated server session and wait
Disconnecting players steam lobbies vs ue4 game session
Online networking delegates events
Online subsystem
Useful posts on playfab
Using multiple custom online subsystems
Oculus stuff
Oculus stuff
Controlling rift overscan in unreal rendering
How to get hmd camera in worldspace camera issues
Rift gotchas
Tips tricks 1
Packaging cooking
Packaging cooking
Cooking witheditoronlydata vs witheditor
Excluding directories using pakblacklist
Excluding editor objects from cooking
Optimizing cooking
Config File Paths Locations:
TODO:
Packaging
Selecting maps to cook
Speed up cooking or deploying to ps4
Strip ps4 or xbox one files from staging
Performance optimization
Performance optimization
Asset Size Reduction and Loading Time Optimization
Blueprint optimization
Memory
Reducing Stat System Overhead
Performance Profiling & Optimization Guide
Oculus Specific
Gpu perf optimization
Gpu perf optimization
Debugging shaders in ue4
GPUView
Overview
Render budget
Notes from devs
Notes from devs
Deprecated performance profiling guide in ue4
Deprecated scaling down
Deprecated useful console commands
Nick whitingdonaldson notes
Paragon optimization notes
Robo recall optimization talk notes
Unreal dev day montreal performance profiling
Vanishing of ethan carter
Stats perf counters
Stats perf counters
Accessing single stat values
Misc functions
Overview
Tolva tool
Tolva tool
Misc wip
Tolva deep shader
Tolva enabling debug tools notes
Quick Profiling Guide
Tolva perf tool helpers
Python basics
Python basics
Embeddable python distro
Python basics
References
Useful snippets
Oculus stuff
Oculus stuff
Controlling rift overscan in unreal rendering
How to get hmd camera in worldspace camera issues
Rift gotchas
Tips tricks 1
Source control
Source control
Perforce Source Control Setup
Unreal Engine Git
Stereo capture plugin
Stereo capture plugin
Referencesdocumentation
Stereo capture plugin
Ue4 technical crash course
Ue4 technical crash course
Old intro to unreal engine 4
Overview Of Engine
Wip
Wip
Architectural overview
Assets naming convention
Htc vive
Misc useful stuff
Programming guide notes
Unreal developer day gameplay framework notes
Unreal engine 4 game framework diagram for relation of all major base object types
Useful command line arguments
Useful config settings
Vislog
Unfinished
Unfinished
Add custom clip plane
Beforetonemapping
Called to send a transform 1 for this component to the rendering thread
Checkout file from source control
Class ssequencersplitteroverlay public soverlay
Coherent ui notes
Collision detection
Constant rotatorrotation
Create component thats not tied to actor
Create custom collision on static mesh
Curhmdposition
Dear angelica
Debug canvas rendering and drawing
Delegate helper funcs
Dlc architecture
Dlcs patching
Editor only actors stripping actors from cooking
Editor settings for primitive components
Editor startup
Encryption
Epicnick 854 pm with respect to blueprints the only strong refs are the variables you create and references to components
Fpathsgetpathfilename
Gameplay
Geditor requestplaysession
How to "View Specific" Data In IDetailCustomization?
How vr camera transform gets applied
Jumping character movement functionality double jump extended jump
Keep simulation or play in editor changes
Make sure stationarydynamic lights do not overlap
Move component across actors
Networking bandwidth mtu
What's the diff between a.ParallelAnimEvaluation & a.ParallelAnimUpdate?
Pausing renderclock
Precomputed visibility
Propertyhandle markhiddenbycustomization
Reflection Actors
Savingloading layout to config
Scenecapturecomponent2d
Stat slow 12 10
Staticanalyzer windowsstaticanalyzer
Ucommandletscommandlets are ways to do editor functionality through command line
Udataassets are customizableblueprintable and can serialize data to contentbrowser
Ue4 tangent space normal calculation
Ue4 volumetric rendering notes
Ulevelleveldirtiedevent broadcast
Unreal developer day gameplay framework notes
Unreal engine 4 game framework diagram for relation of all major base object types
Uparamref
Useful functions
Usf changes
Ustaticmeshcomponent
Dev Notes
Dev Notes
ai
ai
AI
assembly
assembly
Assembly Cheatsheet
clang
clang
Clang Cheatsheet
Clang/LibTooling AST Notes
clojure
clojure
Meander
Clojure
Dsl compilers
comp sci
comp sci
Computer Science Theory
Database Learning Resources
cpp
cpp
API Hooking
Libraries & Frameworks
CRT Initialization
Hot-reload
dev workflow
dev workflow
Cmder Cheatsheet
Git Commands
INI Formats
Dev Workflow
Regex Cheatsheet
Vcpkg Cheatsheet
devbox
devbox
Devbox Final Benchmarks: Optimizing Unreal Engine Builds & Visual Studio
Devbox Hardware Guide
Developer Tech Sites & Resources
Devbox Windows OS Optimization
Developer Tools For Windows
DDR4 Memory Overclocking Guide
homelab
homelab
SelfHost Backup Guide
SelfHost Guide
ZFS Cheatsheet
ZFS for Dummies
imgui
imgui
Debugging
Multi-Viewport
linux
linux
The Art of Command Line
Bash Cheatsheet
Bash Guide
Disk Health
Linux Basics
Modern Linux Tools
OpenSSH
Rsync
WSL
mlir
mlir
IREE
MLIR Useful API/Code Snippets
nim
nim
Nim Cheatsheet
nodejs
nodejs
NodeJS Cheatsheet
optimization
optimization
C++ Optimization Guide
prog lang theory
prog lang theory
Programming Language Theory: Analysis
Programming Language Theory: Basic Concepts
Programming Language Theory: Compiler design
Type Expression Problem
Interpreters
Lenses, Transducers, and Algebraic Effects
Programming Language Theory: Misc Resources
Programming Language Theory: Parsing
python
python
Conda Cheatsheet
Comprehensive Python Cheatsheet
Python Snippets
rust
rust
Rust Cheatsheet
typescript
typescript
TypeScript Cheatsheet
unraid
unraid
Unraid Backup Guide
Unraid Console
Unraid Docker Troubleshooting
Unraid File System
Unraid Setup
Unraid OS Update
visual studio
visual studio
Debugging DLL Dependencies
Debugging Process Start/External Processes
Hardware Breakpoints
Registering HLSL File Types
Visual Studio Debugger RPC Extension
Visual Studio Tips & Tricks
vscode
vscode
VSCode Syntax Highlighting
VSCode Troubleshooting
windows internals
windows internals
Windows Command Shell
Powershell
Windows File IO Performance
Windows File Paths
Symbol Server For Windows Debuggers
Win debug recipes
Win debug recipes
Windows Debugging Recipes
Components
Components
Troubleshooting Windows Drivers
FontCache
Group Policy
Windows Image Repair
Debugger
Debugger
Configuring Windows Debugging Settings
WinDBG
Windows Kernel Cheatsheet
Network
Network
Intel Network Drivers
Network
zig
zig
Zig Build
Zig Crash Course
Zig Metaprogramming
Zig Testing
Math
Math
Cliff Notes
Math Symbols LaTeX Cheatsheet
Math Research Notes
Graphics
Graphics
Graphics Cheatsheet
Physically Based Rendering Crash Course
Physical Units for Lights
Gpu architecture
Gpu architecture
2019 GPU Architecture Crash Course
Light transport
Light transport
Light transport notes
Volume rendering
Volume rendering
Physics of Light: Absorption
Volume Rendering Zoo
Overview
Houdini
Houdini
Basics
Basics
Animation & Rigging
Houdini Crash Course
Groups
Operator Path & Expression Syntax
Houdini Python
Houdini Setup
UE4
VEX
Dops
Dops
OpenCL
Dops
Techniques
Techniques
General Tips
Enable OpenCL
Extensibility
Extensibility
Houdini Digital Assets
Houdini Development Kit
Funtimes
Funtimes
Fun Experiments
Geo Processing
AR
Levels
Performance Capture
Visuals
Release notes
Release notes
17.0
Rendering
Rendering
Mantra
Redshift
Techniques
Techniques
Baking
Common Techniques
Detangling wires
Geo Deformation
Misc Useful
Poly Workflow
Pyroclastic Noise
Houdini Tutorials From Others
Debug Visualization
Vellum
Vellum
Vellum Overview
Techniques
Techniques
General Vellum Tips
Vellum Hair
Vellum Cloth
Useful Vellum Nodes
Volumes
Volumes
Houdini Volumes
Techniques
Techniques
Dense Clouds
Pyro
Real-time Clouds
Useful Volume Nodes
Design
Design
Art Resources
UX Design
Blog
Blog
Bringing ECS to UE4: Thoughts on flecs
Source code: A radiative transfer framework for non-exponential media
Hooking into windows message pump
https://github.com/ue4plugins/WindowsMessageHandlerExample
Back to top