Buoyancy physics for dynamic objects. Uses four probes around the middle height of each object sampling the Gerstner waves with same math as GPU. Lowering buoyancy causes objects to sink until they settle on underwater terrain surface.
Gavin Clayton
@gavinclayton.bsky.social
Hello! I'm the creator and lead developer behind Daggerfall Unity. Now working part-time on another game. Devlog: https://dev.interkarma.net Location: Australia
The UI system in my engine is basically the same used in DFU, even if it has come a long way in the last few years. I cut the first code for this UI in 2012. Almost 14 years later it finally has a visual editor haha. Feels great just dragging around layouts with undo/redo, etc.
My engine now has a fully lit forward path consuming the same light clusters deferred path uses. This allows me to setup things like semi-transparent windows and other forward objects that still interact with scene lighting. Volume fog and area GI also came out of the same work.
Pushing more enemies at higher frame rates after some optimisations. Every mob is individually skinned, holding a weapon that tracks with their hand node, running a Lua script for flocking behaviour, and interacting with physics / navmesh. The fights won't be this large, but I always test at scale.
Working on grouping behaviours for enemy combatants. Uses boids-styled flocking where they aim to encircle the player without getting too close (for now).
Player character holding a weapon with attachment socket driven by animation tracks. Root motion and blending based on facing. This is all driven by a Lua script consuming a state machine controller and action input system. Next rung of the ladder will be more states in the controller.
Working on nodes linked to animations so that characters can hold weapons, and realised I was most of the way to root motion. I can now drive any animation state with motion so they play as authored. Engine uses Ozz Animation in back end, anim shown is by Quaternius.
Working on a local GI volume. No bounces, but it can gather local, directional, and environment lights into a few sliders and carry illumination into underlit areas, e.g. the recess on the right and under the furniture. It's cheap and useful for interior spaces that need a little pop.
Over the last couple of weeks, I've revived the terrain and foliage systems I was working on in 2024/2025 with some fixes and added a Gerstner wave water plane to tie it all together. Art aside, all the tech I needed to build in my engine for outdoor environments is finally in.
After all the work on point lights, spot lights came together easy.
Point light shadows now functional in my engine. I've been trying to solve various problems with these for ages now. There's always more refinement to do later, but they look good in action and remain stable.
Engine now has a mobile character state machine with behaviours driven by Lua script. Each of these angry little guys is running on a Lua "brain", following me around a navmesh in a simple test kit.
I've wired up the Kit > Sandbox instantiation flow. Now I can instantly test and replay kits with full physics simulation at the press of a button. Here, I've built a quick tower of blocks in Kit editor surface than Ctrl+P to run in Sandbox and smash them.
Sandbox is linked to gametime, which animates a procedural sky with day/night cycles. Later it will handle timed events for quests and so forth. Wiring all this up so that I can playtest kits instantly in sandbox with start/pause/stop and time controls.
Reworked editor UI from everything docked into a single frame and feeling cramped to tabbed layouts where each tab is responsible for a single workflow. This feels much nicer and everything has more room to breathe.
If you're interested in the custom engine I'm building for my game project, I've made it available for free on Itch at page below. It's still early days, but the purpose of all this work is to build a full-featured modding toolset directly into my next game. interkarma.itch.io/project-arro...
Project Arroa Tools Preview by Interkarma
Project Arroa standalone tools environment for the purpose of testing, feedback, and iteration.
interkarma.itch.io
The scene editor in my engine is now functional enough to author complete scene assets. I'll run through some of what I've built over the last 6 months. First up is visualising collider shapes (mesh, capsule, sphere, convex hull, etc).
After a year of working full-time independent on my game, I've been fortunate enough to pick up some great part-time work. This provides me more financial security and some resources to help self-fund development into the future.
Asset manager can now import a mix of files and folders while preserving source hierarchy on import. Asset builders are multithreaded and run even while files are being copied, so whole process completes in about the same amount of time as file copy, including thumbnails for textures and models.
Deep Engine drag-and-drop several hundred FBX model files into asset manager
Setting up a modal progress dialog so editor can display progress after user drags and drops a large number of asset files into engine.
Early stage of Deep Engine's asset rebuild and hot-load in action. After editing and saving image file, the build system detects change to source file and rebuilds it into a texture asset based on current meta properties. Note editor thumbnails on left update after image is saved.
I haven't posted a blog update in several weeks now, but I have been working hard across several fronts! This blog post catches up on what I've been doing and where I'm headed next. dev.interkarma.net/2025/05/02/m...
Making an editor front-end for asset compiler. Asset builders are now multithreaded, so an expanding log reader is required to solve the problem of linear output becoming interleaved from different threads executing in parallel. I can also highlight any build errors directly in the editor.
Making some big improvements to asset browsing. In addition to thumbnail view, it will now support lists and trees and more filtering options. Also built a new tree view control that's fully virtual and can scroll hundreds of thousands of items without slowing down.
Just a heads-up that I'm changing hosting providers for dfworkshop.net and interkarma.net. They will go down over the few days as I move everything over.
I really want to become more proficient in Blender. Following some courses and immersing myself in practise each day. Right now learning how to model a detailed human figure and I'm slowly becoming more confident with the tools. Best way to learn is to make mistakes and fix them.
Animation retargeting now working well enough to throw all kinds of animations at all kinds of models. This whole process was really involved. I had to set up a retargeting pipeline to handle joint-to-joint mapping, pose correction, and proportion correction.
Revisiting and improving animation retargeting in my engine. Looking forward to supporting more animation inputs.
Really happy with my procedural sky so far. Shadows lengthen and shorten as the sun disc arcs from dawn to dusk. Clouds are lit by sun's direction as they drift and evolve throughout the day. The skybox colours light environment based on time of day. It's a good base to build on!