3D Archives

My notes on 3D apps I use: ZBrush, Hexagon, DAZ Studio, Poser, Carrara and many others.

Rendering Spatial Panoramic 360 Videos in Blender

There’s a fad of sorts that’s completely passed me by, had it not been for my friend Brian Cramer who experimented with it the other day: 360 panoramic videos. Apparently with the correct rendering format and resolution, and a bit of magic meta data, we can upload spherically rendered videos that the viewer can explore …

Read more

How to get the Current Date in Unreal Engine

Unreal Engine has a DateTime object that returns the current time up to the millisecond. As such it’s a little awkward to deal with the raw value, but there are handy outputs when we split the struct. Here’s a simple example of how to get something like 250808 for the 8th of August 2025:

Creating Journal Entries in Story Framework

Journal Entries are tracked as part of the SF Inventory Manager class. They’re a way to display items the player has found but not necessarily collected. As such, items in the Journal can be examined with the 3D viewer, just like inventory items can, although they’re not in the players possession. This is a nice …

Read more

Creating Memoirs in Story Framework

Memoirs are pre-defined entries in a data table that can be unlocked by consequential tags. They’re easy to setup and trigger through custom logic, let’s take a look how to create one from scratch. First, take a look at the MemoirEntryList_DT under Pick a row and see how the examples are setup. Create a new …

Read more

How to create Dialogues with Narrative Tales

Narrative excels at dialogues, and they can be kicked off manually upon interactions with NPCs and objects like smart appliances, telephones, anything really. All we need is a brand new dialogue object and flesh it out. Open it up and select the Class Defaults, then populate the participants of this dialogue. It’s typically one or …

Read more

Creating a new landscape with Brushify in Unreal Engine 5.5

Endless engine changes means documentation from a few months ago can get outdated overnight, which is one of the downsides of “cutting edge” software. How rude indeed. Brushify is a good example, where the process of adding a brand new landscape object and trying to get the included material layer system going isn’t as straightforward …

Read more

Make one morph follow another from a different mesh in iClone

We can use iClone’s Morph Creator to import morph targets and subsequently animate them. While it’s easy to create single morphs, it can be convenient to have a single slider to animate related morphs on related meshes. Think of an expression morph that also adjusts the hair, or part of their clothing. Those are technically …

Read more

Building a Fetch Quest with Story Framework

Fetch quests are missions in which the player needs to go off and collect something, often in multiple quantities. For this example we’ll collect three bones for an NPC. I’ll create a new interactable blueprint for this, making it a child of Story Framework’s Interactable Base BP. I’ll add three copies of this class into …

Read more

Implementing Story Choices in Story Framework

Story Framework 4.1 introduced a new feature called Story Choices. With them we can give the player a choice to make with potentially devastating consequences. They’re easy to setup as part of the SF Sequence Manager component and can be reacted to with a Switch on String. Each choice can have a consequential tag that …

Read more

Creating Interior Dialogues with Subtitles in Story Framework

Story Framework has a feature called Subtitles, with which we can bring up text whenever we feel the need. This works great for informing players about things around them, as well as interior dialogues the player may have with themselves. They’re really easy to create thanks to the Play Sound with Subtitles node. Here’s an …

Read more

How to debug input issues in Unreal Engine

To get an idea which part of a large system is processing what is vital to understanding where issues come from. Without knowing where to start, it’s impossible to fix things that aren’t working. Input controls in Unreal Engine for example can be spread across a number of files. To understand where our input is …

Read more

Integrating DigiCam with Story Framework

The above video shows how to integrate SF and Digi Cam. I’ve had to do this multiple times to wrap my head around it and thought some notes are in other, so here’s how to do it: Player Controller Input Overrides In the DigiCamInfo Data Asset, pick Story Framework’s main gameplay input mapping context (SFGameplay_IMC). …

Read more

How to use the Current Folder option in Unreal Engine

In the Viewport Outliner, we can designate any folder in our hierarchy as the “current folder”. This means when we add objects from the content browser into our scene, they don’t clutter up the main hierarchy but instead end up in said folder. Simply right-click the folder you want to use, then choose “make current”. …

Read more

Using Tasks in Story Framework

Tasks are missions (or quests) for the player to do and to progress in the game. In Story Framework they’re part of the task queue, which in turn is part of the inventory manager. We can add tasks to the queue, which when active can be later completed or failed. We must implement the “reaction …

Read more

Creating NPC Dialogues with Story Framework 4

Dialogues are a little tricky, complex and unintuitive to setup in Story Framework, so here’s an overview that will aid my (and perhaps your) memory. The hierarchy goes like this, no wonder I’m confused about it: Basic Conversations Each index in the Dialogue represents an independent conversation. We need at least one section, while others …

Read more