1000 Forms of Bunnies victor's tech art blog.

Understand ListView of Editor Utility Widget

List View is a useful type of widget available in Editor Utility Widget Blueprint (EUW). During editor tooling in Unreal Engine, there are many cases require querying assets or actors and display them as a list. One of the recent tools I worked on will list out all the cinematic cameras in the level as a list view widget (a subset of tools fo... Read more

Access Post Process Materials

Manipulating Post Processing Materials (PPM) and Post Processing Volume actor (PPV) in blueprint utility scripts could be tricky sometimes. Here I documented some tips for future reference. Get PPM properties Get a PPV actor then get its Settings (type is Post Process Settings Structure). We can Get All Actors Of Class then pick the 1st actor ... Read more

Siggraph 2022 Archive

A list of interesting talks at Siggraph 2022. All with recorded video available. Birds of a Feather Shared Technologies: What’s Unique and What VFX, Game Dev, and Metaverse Workflows Have in Common Khronos Fast Forward GLTF Advanced PBR Material Parameters in glTF Delivering Interactive Experiences with glTF H... Read more

Raymarching Visualization Shaders

During my study on implementing raymarching shadertoy in Unreal Engine, I constantly got confused by the algorithm simply because I cannot keep a clear and stable visual model of it in mind. A good way to drill how the algorithm works is to output some debug images to visualze the scene. A refresher The shader program runs for every pixel ... Read more

Porting Shadertoy to Unreal Engine Using Custom Node (Case #1)

Default decal compares with fixed decal using biplanar projection. Code ported from shadertoy. Recently I’ve been helping my friends implementing a better decal projection in Unreal Engine as the default decal projection is fairly limited. It is causing stretching pattern on the parallel surface as projection intended to be. A potential solu... Read more

Unreal Engine Custom Node

Recently I’ve been playing with raymarching technique and trying to implement it in Unreal Engine material editor. As the algorithm requires a for loop meaning it can only be done using HLSL code with the Custom Node. There are many pitfalls using custom node especially when the code is getting complex. The details panel code editor is very ... Read more

Unreal Engine Plugin Configuration Quick Note

A summery of Unreal Engine Plugin system based on offcial documentation. UE Plugin Usage In UE4, Plugins are collections of code and data that developers can easily enable or disable within the Editor. Plugins can: add runtime gameplay functionality (DLC) modify built-in or add new Engine features create new file types (UCLASS, USTRUCT... Read more

Unreal Frame Breakdown Part 1

This is my version of How Unreal Render One Frame. I’m trying to follow this post and profile a frame by myself to learn the deferred rendering pipeline of Unreal Engine. I build this testing scene following the post. Unreal is set to use deferred shading. If set to use forward shading the profiling results will be extremely different and I wil... Read more

Simplified PBR Shading Model for Unreal Part 1

To get ready for the comming project, I am looking into an customized shading model for the base material - the one with a minimal implementation of PBR and without any unnecessary built-in features for a better rendering performance. After digging into the PBR theories as well as this amazing article spacific about PBR in Unreal Engine, I fin... Read more

OpenGL Project Setup and Boilerplate Code

I had quite a journey setting up the environment for OpenGL development. Lots of research was done while I was solving all the problems and here I documented my version of approach. Resources I’ve been mainly using Visual Studios to work on my previous Raytracing project since it was raw C++ implementation. As OpenGL is a graphic API that h... Read more

Your Browser Don't Support Canvas, Please Download Chrome ^_^``