You are browsing as a guest. Sign up (or log in) to start making projects!

5h 38m 4s logged

—————– Devlog XVIII —————–

- 🌲 Trees πŸ§šβ€β™€οΈ - πŸ‘©β€πŸ’» SO MUCH REWRITING πŸ’€-

To recap, my project is a custom made rendering engine that focuses on diverse rendering options along with high stylistic control (very high-level explanation).


✨ What did I do? β˜€οΈ

These last few days, I’ve been working on getting my Rasterizer (drawing triangles of a model on screen and coloring them) working.

The big changes that I did include:

  • Fixing an issue with textures not loading
  • Updated the Interface for every Renderer.
  • Implemented the extract / prepare / dispatch pipeline into the Rasterizer for real now.
  • Started working on the base ideas of a β€œShader Graph”

The issue with textures was just moving a line like 3 lines lower. I was freeing the image data before saving it (oops).


The updated interface is the IRenderer class. Each Renderer bases off of the class, supplying it with a framework so each Renderer can be talked to the same way. Here are some of those functions:

  1. beginFrame - Clear previous frame data and prepare for a new frame
  2. extract - Take raw scene data (camera, renderables) and convert it into packets for the next step.
  3. prepare - Take each packet from extract and turn them into draw commands for dispatch.
  4. dispatch - Take each draw command and send a draw call, along the way binding any textures & uniforms.
  5. postProcess - Take the frame and post-process it. This may be removed.
  6. present - Take the rendered frame and show it to the screen (blit it).

To do a quick review on what the Shader Graph is - it is a collection of β€œnodes,” each with their own inputs and outputs that connect together to render out a frame.

I’m still a bit confused, but I’ve been watching presentations on the topic from companies like Unity & Activision.


:miku: Thank You for Reading :3-blahaj-spinning:

Yea, I know it’s been a while since my last devlog. I’ve been making some posts in slack about my Path Tracer, since I spent a little time on that.

I’m looking at the timing for everything, the hope is to ship this at the end of Phase-IV and hope that I can get a UI working before too late. I’m hoping I can get enough stardust to pay for a new laptop, but idk that’s a long shot. I still have about 25 more hours if I get a 16x mult (which I can only hope for) before I would hit the mark for the FW 12, which isn’t crazy (the mult is tho).

Github repo: https://github.com/pkncoder/Engine
Project landing page: https://pkncoder.github.io/Engine


❓ What’s next? πŸ›‘

  1. Stop the program from crashing to reach a black screen
  2. Rewrite shaders to allow for correct models wo/ shadows
  3. Write the shadow cubemap geometry shader & ad it to the OpaquePass (temp main pass)
  4. Make and debug UBOs replacing base uniforms

πŸ₯€ Git Commits (shortened)πŸ—Ώ

https://github.com/pkncoder/Engine/commits/Phase-IV/

0
36

Comments 0

No comments yet. Be the first!