"Mr.Poc" as we pronounced it, was the Minimal Renderer Proof of Concept, created during the concept phase of the project that would later become Dataflow. Another graphics programmer student and I took it upon ourselves to learn the ins and outs of the glTF2.0 file format and with that creating a PBR renderer that is able to render the custom maps from our visual artist(s) in order to make them feel at ease in the heavily influenced tech environment.
Group members: 1 artist, 2 graphics programmers
Platforms: Windows
Span: November 2020 - January 2021
Software: Visual studio 2022, Blender, Maya (Babylon export tool), Perforce, Jira.
Roles: Graphics programmer/scrum master (More on this topic is described/noted on the Dataflow project page)
- GLTF2.0 loading and scene hierarchy.
- Normal mapping.
- PBR shading.
- The art export pipeline setup for our visual artists.
- Designing and integrating the Jira workflow, through time logging by the team, watching and managing team velocity and grooming the backlog with the product owner.
- Managing standups
- Communicating deadlines to the team and communicating these effectively with the product owner.
Image context: Mr Poc rendering a procedural environment that went through the asset pipeline from our visual artist: from Houdini, to Blender, to the custom renderer. The scene is unlit, meaning that the PBR is not really shown here.
The main takeaway from this project is that it's best to get the project setup and running as soon as possible, through effective use of the available resources. At the start of the block me and the other graphics programmer had no clue how to setup a renderer that would be capable of PBR or glTF, which made it hard to handle task division appropriately as we both wanted to benefit the most from the learning experience.
In the end we did manage to push out a working asset pipeline for the VA's, which is shown on the images of this page. The pipeline went from Houdini, to Blender, which then exported the model to GLTF for the renderer. The renderer is capable of diffuse PBR shading, using ambient/point/directional lights provided by the glTF.
We made the decision to not support IBL in the end as our game wouldn't benefit a lot from it. While it would simulate the irradiance of a sky onto the world the player would never get to see the sky as the game was going to be top down. The prioritization was moved back, which resulted in the feature being cut.
The next step was to move this renderer into an actual engine and adding an agnostic graphics API in order to interact with the specific graphics API we were using. More on this can be read on the Dataflow page.