Talk:Mesh/Download Weight
The text does not match the code. Can we replace the definitions of Ds with ...
Dlowest = min( R/0.06, 256 ) Dlow = min( R/0.24, 256 ) Dmid = min( R, 256 )
This makes a very substantial difference. Drongle McMahon 03:06, 9 October 2010 (UTC)
I've compiled the current formula into a very simple command line program. you can plug in various values and see the results.
http://home.comcast.net/~volfin/meshcost.zip The source is included (requires VC++) It helps to see how the formula reacts in practice.
Darien Caldwell 20:05, 13 October 2010 (UTC)
Better Formula
The biggest issue I see with the current proposed formula is that it calculates the same cost for a single LOD as 4 identically sized LODs (i.e. 4 times the data to download, but no benefit from the LOD models).
I have a new formula which preserves all the existing functionality but allows for penalty based on LOD inclusion/exclusion and LOD size difference. The greater the difference in your LOD sizes, the more you save. It's not fooled by making your lowest LOD your highest detailed either.
Some sample scenarios:
Enter lowest rez LOD Kbytes: 0
Enter low rez LOD Kbytes: 0
Enter mid rez LOD Kbytes: 0
Enter high rez LOD Kbytes: 2048
Cost is: 2816.000000
Enter lowest rez LOD Kbytes: 2048
Enter low rez LOD Kbytes: 2048
Enter mid rez LOD Kbytes: 2048
Enter high rez LOD Kbytes: 2048
Cost is: 3584.000000
Enter lowest rez LOD Kbytes: 256
Enter low rez LOD Kbytes: 768
Enter mid rez LOD Kbytes: 1024
Enter high rez LOD Kbytes: 2048
Cost is: 934.000061
Enter lowest rez LOD Kbytes: 2048
Enter low rez LOD Kbytes: 1024
Enter mid rez LOD Kbytes: 768
Enter high rez LOD Kbytes: 256
Cost is: 2716.666748
This is using the current Cost Scaler, which may need adjusting. And 3 new variables are added which can be adjusted to change the amount of penalty associated with LOD inclusion/exclusion/misuse.
http://home.comcast.net/~volfin/meshcost_new_formula.cpp has the new formula for use/abuse/consideration.
Darien Caldwell 21:59, 13 October 2010 (UTC)
"Providing identical models for every LOD results in a cost identical to providing a single LOD, but results in 4x the bandwidth usage."
I don't understand that. Surely the uploader can recognise identical files in the LOD slots, by a scan of the data before or after compression for example, and treat it exactly the same as the case where one is left blank. Then there is no issue and no need for any adjustments. I hope the system isn't dowloading identical LOD meshes when it doesn't need them, but even if it is, it should be the same for both cases. Need to see the source code, I guess, but it may depend on server too? Drongle McMahon 17:36, 15 October 2010 (UTC)