ansys / ansys/Visual-Interactive-Simulation-Object-Renderer

[Remote rendering 4.1] Add headless RemoteRenderer and RCA streaming backend

Aberta
#26 0 comentários 0 reações 0 responsáveis Ver no GitHub
technical
Linguagem predominante
Python
Estrelas
0
Forks
0
Merge médio
1d 10h
PRs com merge (30d)
37

Descrição

### 📝 Description of the feature

Stand up the server-side rendering path on the backend:
* a `RemoteRenderer` that implements `IRenderer` against an off-screen `vtkRenderWindow` (`SetOffScreenRendering(1)`), writing per-part mutations through the shared `VtkNodePipeline` and owning camera state directly on the server-side camera (unlike the local path, where the camera lives in the browser).
* `RemoteApp` wires the render window into trame-rca so frames can stream to the client, and complete `VisorRemoteScene` against the runtime-state hooks from user story 1.2. This includes render coalescing (back to back mutations produce one frame).
* This is the largest story in the phase and is expected to break down into several sub-PRs, e.g.
* The off-screen renderer
* the streaming wiring
* coalescing + camera push

Local mode is untouched in this user story; all of this new code is behind the mode flag.

### Acceptance Criteria

* A connecting client receives an initial frame.
* Tests pass

### 💵 Business Value

_No response_

### 🔗 Useful links and references

_No response_

Guia de contribuição

Abrir o guia de contribuição

Direção de pesquisa

Rastreie os pontos de entrada RemoteRenderer, RemoteApp, VtkNodePipeline e VisorRemoteScene descritos na issue, começando pelo renderer local existente e pelos hooks do estado de runtime. Divida o trabalho entre o renderer off-screen, a wiring do streaming e o comportamento de coalescing/câmera; considera-se concluído quando um cliente que se conecta recebe um frame inicial e os testes passam.

Escrita pelo modelo de indexação a partir do texto da issue.

Avaliação

Stack de tecnologia
python
Domínio
backend, computer-graphics
Tipo de issue
Funcionalidade
Dificuldade
5/5
Tempo estimado
Mais de uma semana
Status de atividade
Ativa
Clareza
Razoavelmente clara
Facilidade para iniciantes
35/100

Receba novas issues na sua caixa de entrada

Um resumo curto de issues do GitHub para quem está começando.