Comments (5)
An ancient issue, but something else to consider here is algorithm performance. LZMA offers better compression, but requires significantly more processing power to compress and decompress. On the other hand, something like zstd offers slightly better compression than zlib, but with notably better decompress speed, and lz4 offers slightly worse compression but with massively improved speed.
from plasma.
Would it be best to use LZMA SDK directly (http://www.7-zip.org/sdk.html) or something like libarchive (http://code.google.com/p/libarchive/) which looks like it has a better interface, as well as giving us a lot of extra formats for free? I'm thinking it might be nice to implement a plCompressedStream and let the lib handle formats entirely (as a bonus, it would allow us to fold plZlibStream into it as well, further cleaning up the glut of sub-projects).
from plasma.
zlib != gzip, and LZMA != 7z... gzip and 7z are file formats, whereas zlib and LZMA are stream formats... Just picking the nits :P
Anyway, I believe we'll still want the latter here, since it means individual files can be downloaded when only one is out of date or corrupt, instead of having to download an entire archive. The exception is, of course, the Python/SDL, since the current engine design downloads those every time the game is launched...
from plasma.
With some of the dinosaurs folks play URU on, decompress speed should be considered the most important metric IMO. Considering the results of zlib compression on the assets (it's pretty good), I'm not even sure investing time into a new algorithm (and properly supporting backwards compatibility with old client/servers) is particularly desirable.
from plasma.
(see also #737)
from plasma.
Related Issues (20)
- Teledahn buckets are glitchy/broken if stopped after running HOT 2
- Modern Font Atlases HOT 4
- Nexus not displaying names of ages HOT 2
- /look in pocket just showing /look HOT 5
- KI not showing age name for some ages HOT 7
- Display Modes for New Renderers HOT 7
- Patcher crashes on OGG files HOT 6
- Max 8 plugin reponder state text
- Incorrect camera angle sometimes when linking into water Ahnonay
- Direct3D Pipeline Does Not Handle Multiple Displays Properly HOT 1
- macOS Release Build Failure HOT 5
- PlasmaMax & WSL crash on open file dialog HOT 12
- Metal Testing Guide and Performance Improvements
- Trailing slashes not detected in URLs.
- Plasma Antialiasing Support + Metal Performance HOT 7
- Mac client can stall entire game loop HOT 1
- Taking a Chiso Preniv book creates a junk personal instance of Chiso Preniv HOT 3
- Rendering Regression in Options Menu
- Commit 93d8c2c broke CMake on VS 17.9.5 HOT 3
- Teledahn walkway problem HOT 2
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from plasma.