Congrats - great work, @Mystik!
I have some feedback. Your app takes quite a long time to load. Some tips:
You don’t appear to be using GZIP content encoding (in other words, you are not serving assets GZIPed/compressed). For example, let’s load your app and look in Chrome Dev Tools with cache disabled:
I’ve selected the Network tab and I’ve sorted on file size. The two biggest files are:
- mastercode (1.2MB)
- playcanvas-stable.min.js (1.0MB)
If I GZIP these files, I get:
- mastercode (88KB)
- playcanvas-stable.min.js (287KB)
So just serving those two files GZIPed, you save your users 1.8MB of download. You should enable GZIP compression for: JSON, JS, HTML, CSS. Other file types that PlayCanvas apps often include that compress nicely are: DDS, KTX, WASM, TXT, GLSL (but I can’t see any of those in your project).
Can you optimize some of your images? For example, each of these thumbnails is 500x500 and up to 343KB(!)
You have 4 images called:
- cuge_cmbu_txbuon_chpx1_remi.jpg (456KB)
- cuge_cmbu_txbuon_chao1_remi.jpg (444KB)
- cuge_cmbu_txbuon_chdi1_remi.jpg (444KB)
- cuge_cmbu_txbuon_chop1_remi.jpg (440KB)
That’s nearly 2MB just for these. And they look very similar. Do they all need to be loaded? And if not, they can definitely be optimized.
If I filter on .js files, I see this:
55 of 164 requests are JavaScript files. Did you forget to check ‘Concatenate Scripts’ when downloading your PlayCanvas app from the Editor? You should aim to reduce the overall number of HTTP requests made by your app!
Anyway, these are just a few observations. I suspect there are lots more. For example, I recommend this page in the docs:
https://developer.playcanvas.com/en/user-manual/optimization/load-time/
I hope you find this useful.