#PillowBasicsEngine
#PillowBasicsEngine Blog 031

XeSS dependency has been upgraded to 3.0.2
August 1, 2026 at 1:02 AM
#PillowBasicsEngine Blog 030

Finally finished the Python script to generate inline geometry data for C++.

With the inline geo data, PillowBasics can render basic meshes (spheres, cylinders, etc.) immediately after a cold start.
July 24, 2026 at 1:10 PM
#PillowBasicsEngine Blog 029

The road is dark
And the stars always glow

This night
Ignite a small beacon
among the infinite darkness
June 6, 2026 at 3:25 PM
#PillowBasicsEngine Blog 028

Implemented the disc mesh generation function in Python, serving the built-in mesh utility.
May 18, 2026 at 4:00 PM
#PillowBasicsEngine Blog 027
PB is fully updated to Visual Studio 2026 + CMake 4.3 now!

The more quickly we move to a new dev toolset, the less pain we get.
May 12, 2026 at 5:38 PM
#PillowBasicsEngine Blog 026
Building the StandardMesh class!

StandardMesh imports mesh data from disk files or system memory and generates a GPU-ready data set.

Since GLTF (a model file format) is complex, Pillow will implement it in separate commits, step by step.
May 1, 2026 at 2:43 PM
#PillowBasicsEngine Blog 025

Alpha 0 is delayed indefinitely due to an intensive interview schedule in the mid-term of 2026.

The development progress will be slowed down, but not halted.
April 29, 2026 at 1:51 PM
#PillowBasicsEngine Blog 024
Preview of the Alpha 0 demo model.

In fact, this mesh was created by me several years ago.
I revised it today, planning to use it in the PillowBasics demo.
Skeletons will be added ASAP.
April 26, 2026 at 8:46 AM
#PillowBasicsEngine Blog 023

Why did I set the deadline to April 30th 😭
Haha, I can catch it.

A challenge is how to link ResHandle to the real GPU resources. ResHandle is exposed to the outside, while the actual resources are hidden, a typical encapsulation design.

The picture below shows it.
April 25, 2026 at 6:40 PM
#PillowBasicsEngine Blog 022

Defined the final version of deferred pipe buffers.

Meanwhile, a new static function called CreateFrame() was added to create & resize those crucial buffers, to replace the old makeshift ResizeXXX() function.

Created resources can be confirmed in the PIX profiler.
April 24, 2026 at 8:16 AM
#PillowBasicsEngine Blog 021

Added CMake install commands.

PillowBasics can be packed with its dependents automatically, which paved the road towards a CI/CD system.
April 13, 2026 at 12:11 PM
#PillowBasicsEngine Blog 020
Revise vertex types. Designed this alignment magic:

union
{
XMFLOAT4A vec;
struct { XMFLOAT3 vec; uint32_t value; };
}

This makes a vector align to 16 Bytes (SIMD friendly),
as the padding space won't be wasted! However, you can't write to "value" before "vec".
April 7, 2026 at 5:01 AM
#PillowBasicsEngine Blog 019
A day of mathematical drill rather than usual days' coding.

Derived the normal vector transform matrix;

Reviewed the quaternions and the sphere interpolation.

Wrote an article regarding quaternions.

The pic below is a glimpse of my article
( will publish it later 🤗
April 4, 2026 at 7:04 PM
#PillowBasicsEngine
Blog 018 (From X, April 3, 2026)

PillowBasics Blog has been moved to the pure BlueSky 🤗 Welcome to visit!
April 3, 2026 at 3:02 AM
#PillowBasicsEngine
Blog 017 (From X, Mar 30, 2026)
Title: Why I discontinued my blogs on X?
Warning: This tweet remains in Chinese to preserve the original feeling.

首先说明,日志停更,
背后的开发却在疯狂加速,追逐 April Release
(如下图,内行应能一眼察觉

第二,之前也说过
X上群体混杂,让我担忧付出是否有意义
(虽然也逐渐认识几位厉害推油

所以就转到地下开发惹(x
笑,推友仍可去Github仓库视察
April 3, 2026 at 2:59 AM
#PillowBasicsEngine
Blog 016 (From X, Mar 28, 2026)

I will not post any tweets about my engine here (on Musk's X) from now on. Blogs will be published on other platforms.

Maybe I will change my mind? I dunno.

Thanks to the friends who encourage me all the time!
You are always welcome w🤗
April 3, 2026 at 2:50 AM
#PillowBasicsEngine
Blog 015 (From X, Mar 28, 2026)

As the engine debut becomes closer and closer, the largest issue emerges: a lack of a suitable model set.

I don't wanna use common meshes, and I want a scene that can reflect my engine's features precisely.

Why I'm not a 3D artist 😭
April 3, 2026 at 2:49 AM
#PillowBasicsEngine
Blog 014 (From X, Mar 24, 2026)
After a tight week, the input subsystem is now ready!🤗

Highlights:
- Supports many devices: mice/keyboard/gamepad

- Mixed-mode approach: Rawinput + XInput + Message Process

- Gamepad dead zone detection + filter, all run in SIMD instructions! 😋
April 3, 2026 at 2:48 AM
#PillowBasicsEngine
Blog 013 (From X, Mar 21, 2026)
A busy week in Germany.

No matter how difficult, rain or shine, Pillow will persevere in development.

Today, I finished the IME UTF-16 input utility.

Gaming mice have a high polling rate, and frequent Ring0 switching costs. A big issue.
April 3, 2026 at 2:47 AM
#PillowBasicsEngine
Blog 012 (From X, Mar 17, 2026)

This week marks my first trip abroad.

Nothing should obstruct the PillowBasics development.

Today, I refactored the message loop to better support the Input Subsystem.
April 3, 2026 at 2:40 AM
#PillowBasicsEngine
Blog 011 (From X, Mar 12, 2026)
Just got home this afternoon.

Finished revising IPipelineState: A unified Interface design, Vulkan can use it too 😋.

IPipelineState records macros + shader stages + unique IDs

PS: Forced to have a long trip tomorrow, ramp down for a week.
April 3, 2026 at 2:27 AM
#PillowBasicsEngine
Blog 010 (From X, Mar 9, 2026)

Bindless super root signature Ver. 1 finished.
Pipeline IO data Ver. 1 finished.

A PR has also been submitted to a Microsoft repository.

Game scene management and rendering are the development focus. Immediate mesh rendering is not the priority.
April 3, 2026 at 2:23 AM
#PillowBasicsEngine
Blog 009 (From X, Mar 6, 2026)
frantically finished UnionBuffer today.

The next step is to implement Runtime Shader Compilation

Without distractions, I should achieve a makeshift rendering pipeline by the end of March.

Pillow wanna apply BF3's tile-based deferred pipeline!
April 3, 2026 at 2:20 AM
#PillowBasicsEngine
Blog 008 (From X, Mar 2, 2026)

A major overhaul of UnionBuffer; it's a unified resource class providing data memory management.

For VRAM residency, this class only exposes interfaces.

No virtual textures now; there's no need for GPU page-level management (too tired to write😭)
April 3, 2026 at 2:11 AM
#PillowBasicsEngine
Blog 007 (From X, Mar 1, 2026)

Integrating the DX12 Agility SDK and Shader Compiler in one day

This decouples the rendering backend from the Windows SDK.
April 3, 2026 at 2:06 AM