-
Notifications
You must be signed in to change notification settings - Fork 0
/
Shuffle_Company_Performance_Ideas.note
40 lines (25 loc) · 1.45 KB
/
Shuffle_Company_Performance_Ideas.note
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
Shuffle Company Performance Ideas
Textures in Memory
------------------
Simple Tile, 256x256, high information, diffuse ~= 700kB
Auto Tile, 13 128x128 sub-tiles, high information, diffuse ~= 8mB
Reasonable max:
30 Simple Tiles 21mB
10 Auto Tiles 80mB
Plus 4 Additional Pixel Shader Maps:
30 Simple Tiles x 4 = 84mB
10 Auto Tiles x 4 = 320mB
~0.5gB of high-res textures alone in worse case scenario.
When x4 original Wonderland tile texture size of 64x64.
------------------
Stages will use a 4096x4096 texture, being able to store 256 256x256 textures (adoption of GPU's supporting 4096x4096 textures is around 94%)
4096x4096x4 = 67mb
There will an albedo, normal, shininess, and metallic texture for each stage material.
67mb x 4 = 268mb
So the stage materials only need 268mb in texture memory, offering massive improvements over the original Wonderland Adventures texture system (4 time the number of tiles as well as four times the resolution; huge win!).
3/4 of the stage texture will be for simple tiles, 1/4 for auto tiles.
A single stage can have 194 simple tiles and 19 auto tiles.
------------------
Since a single tileset leads to bleeding in the min-max filtering, a new option must be found. Enter 2D texture arrays.
Taking up a similar memory footprint, 200 256x256 simple stage textures will be stored in an array. Likewise, 20 256x256 autotile stage textures will be stored another array.
In reality, these will really amount to 260 128x128 tiles in storage.