Skip to main content

Progress Report

Shader System Improvements

Shader Graphs

PFM now has a shader graph system, similar to the one in Blender. It's still work-in-progress and not available in any release yet, but the majority of the work is complete.

In a nutshell, the system allows you to create custom shaders using a graph UI editor, to create all sorts of different rendering effects relatively easily and apply them to actors:

burn_shader_graph.gif

 

Some of the key features include:

  • Hot-reloading: You can see any changes to the shader graph immediately.
  • You can add input variables to a shader graph, which can be controlled and animated through PFM.
  • It comes with dozens of pre-made nodes, such as: bright_contrast, clamp, combine_hsv, combine_xyz, gamma, hsv, invert, map_range, math, mix, rgb_to_bw, separate_hsv, separate_xyz, value, vector_math, camera, object, time, image_texture, geometry, sepia, pbr, material_texture, etc.

Right now the custom shader graphs only work with the Pragma renderer, but I've made sure to consider compatibility with Cycles when implementing the nodes (if you used shaders in Blender, the node types might sound familiar), so I should be able to add support for the Cycles renderer as well.

Some of the things I still have planned are:

  • Support for group nodes, to allow you to re-use node structures in different graphs (work-in-progress).
  • Support for custom post-processing shader graphs.
  • Support for per-material and per-object shader inputs.

 

Toon shader

toon_shader_example.png
(Model by WigWoo!)

 

pragma_9JaAkWZW8G.png

 

BW Shader

 

 

Asset System

Drag-and-Drop Improvements

I've significantly improved the drag-and-drop import for PFM. You can now simply drag entire folders or zip-archives into the PFM interface, and it will automatically import all of the assets, addons, etc. contained within.

FBX Support

glTF is still the recommended format for asset import/export, however.

 

Source Engine Model Export

You can now export models in the Source Engine model format by right-clicking them in the model explorer and choosing "Mdl":

export_source_mdl.png

 

mdlviewer_export.png

 

VR Motion Capture

 

Hammer Map Compiler for Pragma

 

 

 

 

 

OpenGL Fallback support

Special Thanks to X TODO

- For older GPUs

- AMD?

 

Misc

 

- Ciri POV Camera

- Load time improvements

- Runtime improvements (animations)

- Memory usage decrease

- AMD rendering

- VR controller interactions

-

- Improved mikumikuedance support

- Improve font rendering (multi)