Difference between revisions of "Talk:Mesh/Download Weight"

From Second Life Wiki
Jump to navigation Jump to search
(→‎Better Formula: new section)
Line 16: Line 16:


[[User:Darien Caldwell|Darien Caldwell]] 20:05, 13 October 2010 (UTC)
[[User:Darien Caldwell|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.
[[User:Darien Caldwell|Darien Caldwell]] 21:59, 13 October 2010 (UTC)

Revision as of 14:59, 13 October 2010

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)