dimforge / dimforge/kiss3d

Performance bottleneck on large amount of objects

Open
#133 1 comment 8 reactions 0 assignees View on GitHub
Dominant language
Rust
Stars
1.8k
Forks
194
Avg merge
1d 14h
Merged PRs (30d)
2

Description

I just tried to use cube.rs example with 10_000+ cubes in a single scene
[cube.rs](https://github.com/sebcrozet/kiss3d/blob/master/examples/cube.rs)

The great surprise was that bottleneck for smooth rendering was not GPU but CPU:
Ubuntu 18.04,
i7-6700K,
intel HD 530.

The ratio of utilization was CPU-100% single thread, GPU - 30%.

I'm poor nooby in Rust, but tried to dig a bit deeper and I was a bit confused about this recursive loop
[scene_node.rs](https://github.com/sebcrozet/kiss3d/blob/master/src/scene/scene_node.rs#L116)

are there any room for optimizations like "batch" rendering instead of the need to compute conditions for every element ?

Contributor guide

No contributing guide indexed for this repository

Research direction

Reproduce the report with the cube.rs example and 10,000+ cubes on a comparable setup. Read the recursive traversal around src/scene/scene_node.rs:116 and profile the single-threaded CPU path before evaluating possible batching or other rendering changes. Done means a measured improvement in large-scene rendering without breaking existing behavior.

Written by the indexing model from the issue text.

Assessment

Tech stack
rust
Domain
computer-graphics, performance
Issue type
Bug
Difficulty
5/5
Estimated time
Over a week
Activity status
Stale
Clarity
Needs clarification
Newbie friendliness
25/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.