Skip to content

Overhaul renderer implementation in v4#50

Draft
tristanpoland wants to merge 32 commits into
mainfrom
v4
Draft

Overhaul renderer implementation in v4#50
tristanpoland wants to merge 32 commits into
mainfrom
v4

Conversation

@tristanpoland

Copy link
Copy Markdown
Member

This pull request refactors the workspace and example projects to use a new helio-core and helio-default-graphs structure, and updates all example applications to use a unified render graph construction flow. It also simplifies the workspace configuration and cleans up deprecated code.

Workspace and crate structure:

  • The workspace member list in Cargo.toml is replaced with a glob pattern (crates/*), simplifying crate management and making it easier to add or remove crates. ([Cargo.tomlL3-R3](https://github.com/Far-Beyond-Pulsar/Helio/pull/50/files#diff-2e9d962a08321605940b5a657135052fbcef87b5e360662bb527c96d9a615542L3-R3))
  • All references to helio-v3 are replaced with helio-core, and helio-default-graphs is introduced as a new dependency for constructing render graphs. ([[1]](https://github.com/Far-Beyond-Pulsar/Helio/pull/50/files#diff-2e9d962a08321605940b5a657135052fbcef87b5e360662bb527c96d9a615542L77-R30), [[2]](https://github.com/Far-Beyond-Pulsar/Helio/pull/50/files#diff-b335630551682c19a781afebcf4d07bf978fb1f8ac04c6bf87428ed5106870f5L140-R166))

Examples and render graph initialization:

  • All example applications are updated to use the new build_default_graph function from helio_default_graphs, and to explicitly create and pass Scene, DebugDrawState, debug camera and cull stats buffers, and the render graph to the Renderer::new constructor. This unifies and modernizes renderer initialization. ([[1]](https://github.com/Far-Beyond-Pulsar/Helio/pull/50/files#diff-5f8095f8015965bf93b4f7e7d9df8a0521c8e9bcab21332e75f26915020a52c5L14-R15), [[2]](https://github.com/Far-Beyond-Pulsar/Helio/pull/50/files#diff-5f8095f8015965bf93b4f7e7d9df8a0521c8e9bcab21332e75f26915020a52c5L126-R147), [[3]](https://github.com/Far-Beyond-Pulsar/Helio/pull/50/files#diff-385674391bd4311c94696d33dc7c51dd93efe707df118e2dbe5d7b654fc25f77L22-R25), [[4]](https://github.com/Far-Beyond-Pulsar/Helio/pull/50/files#diff-385674391bd4311c94696d33dc7c51dd93efe707df118e2dbe5d7b654fc25f77L233-R253), [[5]](https://github.com/Far-Beyond-Pulsar/Helio/pull/50/files#diff-1cb7b9f07b7c816a48ffcb919811b2e527c5623047bf6a86dcb2bce7c92d6884L14-R15), [[6]](https://github.com/Far-Beyond-Pulsar/Helio/pull/50/files#diff-1cb7b9f07b7c816a48ffcb919811b2e527c5623047bf6a86dcb2bce7c92d6884R116-R135), [[7]](https://github.com/Far-Beyond-Pulsar/Helio/pull/50/files#diff-21c8f2a4d3da1b124b726b3072ae8232599048cfd96bbf63e4e505bef7a3b204L30-R33), [[8]](https://github.com/Far-Beyond-Pulsar/Helio/pull/50/files#diff-21c8f2a4d3da1b124b726b3072ae8232599048cfd96bbf63e4e505bef7a3b204R162-R181), [[9]](https://github.com/Far-Beyond-Pulsar/Helio/pull/50/files#diff-efc4fd2d9c701b506dc2ab01e26866e25c0c714d5174704b35b4145306dfcc29L30-R34), [[10]](https://github.com/Far-Beyond-Pulsar/Helio/pull/50/files#diff-efc4fd2d9c701b506dc2ab01e26866e25c0c714d5174704b35b4145306dfcc29R161-R181), [[11]](https://github.com/Far-Beyond-Pulsar/Helio/pull/50/files#diff-f97cb9ff1168f29751df779023721531e4934ed50721f122ff4a2cce5bce4cdfL26-R28), [[12]](https://github.com/Far-Beyond-Pulsar/Helio/pull/50/files#diff-f97cb9ff1168f29751df779023721531e4934ed50721f122ff4a2cce5bce4cdfR219-R239), [[13]](https://github.com/Far-Beyond-Pulsar/Helio/pull/50/files#diff-7de04b043674761f48a225b5ea711d93da270b4a91741047de0875d68e46a903L23-R27))
  • The README.md and crate documentation are updated to reflect the new API and crate names, ensuring that users see up-to-date usage examples and crate structure. ([[1]](https://github.com/Far-Beyond-Pulsar/Helio/pull/50/files#diff-b335630551682c19a781afebcf4d07bf978fb1f8ac04c6bf87428ed5106870f5L72-R106), [[2]](https://github.com/Far-Beyond-Pulsar/Helio/pull/50/files#diff-b335630551682c19a781afebcf4d07bf978fb1f8ac04c6bf87428ed5106870f5L140-R166))

Cleanup:

  • Removes the deprecated enable_live_dashboard helper from demo_portal.rs, as the live performance dashboard feature has been removed. ([crates/examples/demo_portal.rsL1-L4](https://github.com/Far-Beyond-Pulsar/Helio/pull/50/files#diff-acc25f6b195b611c94e6793e969613fdce00a08349993861ddde9d98c3aa73e5L1-L4))

Dependency updates:

  • Updates dependencies in examples to use the new helio-default-graphs crate where appropriate. ([crates/examples/Cargo.tomlR164](https://github.com/Far-Beyond-Pulsar/Helio/pull/50/files#diff-04d80c541556b06d72062686dc56a02b82e82be07ea2805106a63412b58ba14fR164))

These changes modernize the project structure, simplify example initialization, and prepare the codebase for further development with the new render graph and core crate architecture.

@tristanpoland tristanpoland force-pushed the v4 branch 2 times, most recently from 0625cb1 to 9175fe3 Compare July 6, 2026 16:36
V4 init
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