freenode/#shirakumo - IRC Chatlog
Search
13:35:54
Shinmera
Arguably only 1. is a valid use case for the scene graph, and if used as such, I can apply a much better architecture to combine a scene graph with a shader pipeline
13:36:12
Shinmera
2. can also be achieved through custom slots (and is arguably better done that way)
13:36:39
Shinmera
and 3. should be done with an out-of-band spatial query structure appropriate to the purpose at hand.
14:24:58
Shinmera
In order to make it less plausible for anyone to accidentally do 3. I'm thinking of writing a spatial query structure library
14:36:41
Shinmera
phoe: At some point you expressed interest in writing a lichat server in erlang/elixir
20:15:18
|3b|
Shinmera: in my code i'm trying to get rid of "scene graph" and split out the specific uses into specific things
20:16:56
|3b|
like "transform hierarchy" and "x belongs to y" tend to have different amounts of detail, like X is a skinned mesh, so there are 5 or 6 nodes between X and Y, or y has a bunch of components due to multiple shaders, but all with same transform
20:17:35
Shinmera
my idea right now is to still have a scene graph, but only use it for the transform hierarchy.
20:17:35
|3b|
and also i want to just dump the transform hierarchy to GPU for updates as a big blob of matrices, so i might as well store it that way :)
20:18:08
|3b|
oh yeah, the other traditional use for a scene graph was property inheritance, which seems relatively uncommon these days
20:18:14
Shinmera
when combined with a shader pipeline, the scene graph then gets flattened into a sequence of 'actions' for each pass, only retaining the actions relevant to the pass
20:19:11
|3b|
but these days, each node would just have its own material, or be combined into a single mesh
20:20:46
Shinmera
I was thinking about stuff like: a car is made outta a chassis, wheels, and some lights. All of them need a tree of transforms to be properly placed, but only some of them should be included or applied for certain passes.
20:21:11
Shinmera
so there needs to be a way for each pass to be selective about which entities it cares about, while retaining the transform hierarchy
20:23:51
|3b|
yeah, i think "lists of things with certain properties" was another of the things i was thinking of to replace parts of scene graph