Some quick updates:
This is available for commiters to tear apart and turn it into something as useful as possible for others once everyone is happy with it. I’d love to see someone put together a JME terrain test using this (I really wish I could, however… I couldn’t seem to wrap my head around what was what in the available terrain test files).
Until I’ve better commented the code, see the pagingTest project (and the 5 or so test files) for usage. It is fairly straight forward, however… when starting to use dependent delegators, It’s important the the parent delegator is registered (with either another delegator or the paging manager itself) BEOFRE adding it’s dependent.
Delegator 1 created, then registered with the manager.
Delegator 2 created, then registered with Delegator 1
Delegator 3 created, then registered with Delegator 1 (yes, a second dependent for Delegator ONE)
Delegator 4 created, then registered with Delegator 3
Hope this makes enough sense…
Soooo… i’ve started working on a generic paging system for JME.
First, some highlights of what it will do once complete, then a quick vid of it handling ManagedNode(s).
It consists of (currently):
- A Control that handles the paging, which is initialized by passing it the Executor your app uses and the default camera.
- A wrapper class for Nodes, Geometries & Meshes respectively called ManagedNode, ManagedGeometry & ManagedMesh
It currently handles:
- Loading objects in and out of your scene based on the defined max distance set per node, geometry, mesh.
- Single object add, single object remove per frame.
- Creating defined custom meshes and caching recently used meshes for later use.
Quick vid & then a list of features that I would like to see added:
Vid scene consists of 19,200 (gah… I r can do teh math) individual static nodes being managed, each third of the total has a diferrent max distance set.
List of features I would like o see added… but… need some assistance with:
- Object Fading… I’d love to see this, however it would require shader upates and I don’t know how agreeable people would be to this. Though, if anyone is interested in exploring possible ways of accomplishing this, please do let me know.
- Automatic Batching… based on user defines. (yes,this is why I was asking about it)
- Light handling (at a minimum for omni directional and spots. This would require input from others… too many ideas to list at the moment).
more… but… this is a good start.
Here is a vid of it used for managed custom meshes:
Test of delegator, LOD and a dependent delegator: (White crap is grass)
Test of different types of dependent delegators + object fading: