Welcome to the Second Life Forums Archive

These forums are CLOSED. Please visit the new forums HERE

Multithreaded 3d rendering in SL Client

Howie Lament
Registered User
Join date: 22 Apr 2004
Posts: 30
08-01-2006 03:19
I've suffered from really poor framerates for a long time, and i know i'm not alone. Once your framerate drops below 10fps, moving windows and typing text starts getting difficult, and i'm sure we've all experienced the situations where you get 2fps in a crowded area and have trouble getting anything done at all.

What i'm suggesting is that the 3d view should be updated in its own thread. The entire user interface shouldn't need to be a part of the 3d view. I suggest that the 3d view is rendered to an offscreen buffer by a child thread, and the user interface is drawn into the normal buffers by another thread. This way, the UI can run at a different framerate from the 3d view, at the cost of some extra video ram and fillrate. It would hopefully make the client a lot more responsive under high load. Many threads will also prepare SL for the dual core cpu era.

It depends on how the client is written though, it might be a lot of job to break it up into threads... Maybe LL could tell us how it works today. Is it just one big thread doing everything, or is the network code separate?
Draco18s Majestic
Registered User
Join date: 19 Sep 2005
Posts: 2,744
08-01-2006 08:08
They are working on it, it's why they have 10 or 12 teams of web developers trying to figure out how to separate the renderer from the UI.
Argent Stonecutter
Emergency Mustelid
Join date: 20 Sep 2005
Posts: 20,263
08-01-2006 08:26
Doesn't matter how many threads you have in the CPU, the GPU is still responsible for delivering the pixels and if *it's* bogged down you're stuck.