Skip to content

vulkan transition roadmap #5

@malytomas

Description

@malytomas
  • this roadmap

    • make it as complete and detailed as possible, it would hopefully save us some surpraises later on
    • overall strategy is to minimize the time when the engine does not render at all
  • vulkan frameworks research & evaluation

  • preparations

    • add custom enums for graphical properties in assets
    • replace shader subroutines with switches
    • add glslang compiler
      • are there any alternatives?
      • shader validation in asset processor
    • modify asset manager to support asynchronous assets uploads
      • add another step for loading assets that is periodically called and checks if the asset has finished its transfer to gpu memory
      • add another similar step for unloading
      • hot-reloads!
  • disable opengl

    • turn opengl assets into dummies
    • remove rendering of gui
    • remove rendering internals in the engine
  • initial vulkan

    • vulkan (framework) sdk linking
    • implement assets loading
    • implement minimal client application with the use of the assets (example project logo)
    • another client application with rendering gui
  • vulkan engine

    • simple opaque objects
    • gui
    • hdr + gamma correction
    • shadow maps
    • transparent objects
    • post processes
    • parallelization
      • one thread for assets loads and unloads
      • one thread for each camera (actual camera or shadowmap pass)
        • iterates over the cached entities and directly generates render queues
      • one more thread for queues synchronization, dispatching, composition and final effects
  • final polishing

    • stereo

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions