Skip to content

obj-loader & lambda-args#46

Merged
vmarcella merged 24 commits into
mainfrom
vmarcella/obj-loader
Jan 24, 2023
Merged

obj-loader & lambda-args#46
vmarcella merged 24 commits into
mainfrom
vmarcella/obj-loader

Conversation

@vmarcella
Copy link
Copy Markdown
Member

@vmarcella vmarcella commented Jan 21, 2023

This PR includes:

  • A new crate lambda-args for parsing arguments
  • A new tool obj-loader to load OBJ files into lambda & render them in real time.
  • Moved the module render and all of it's submodules from lambda::core::render into lambda::render to remove unneeded nesting.
  • Removed the internal free functions in favor of separate impl blocks that scope private functions via pub(crate) & pub(super).
  • Fixed a massive memory leak within the render loop which was allocating roughly 3 MB per second. The root cause being that command buffers were not being de-allocated after the command buffer had issued render commands.
  • Packages importing lambda can now set the rendering API via feature flags (NOTE: These are still exclusive and shouldn't be used together at the moment. These can however be used to choose which rendering API gets used for communicating with the GPU).
    • lambda/with-opengl
    • lambda/with-vulkan
    • lambda/with-dx11
    • lambda/with-dx12
    • lambda/with-metal

@vmarcella vmarcella merged commit bed61f9 into main Jan 24, 2023
@vmarcella vmarcella deleted the vmarcella/obj-loader branch January 31, 2023 23:54
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant