![]() |
|
|
Регистрация Восстановить пароль |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
![]() |
|
|
Опции темы | Поиск в этой теме |
![]() |
#11 | |
Пользователь
Регистрация: 24.01.2011
Сообщений: 41
|
![]()
Есть куча текстовых файлов (примерно 10 000). Каждый файл весит около 200кб. Структура файла:
Цитата:
Программа подгружает только тот файл, часть которого должна отрисовываться. Все файлы весят почти 700мб, а в zip архиве 2мб Разница на глаза |
|
![]() |
![]() |
![]() |
#12 |
Пользователь
Регистрация: 24.01.2011
Сообщений: 41
|
![]()
Фишка моей игры в том, что все пиксели динамичны, и игрок может их ломать\строить. Одним словом такая вот песочница
![]() |
![]() |
![]() |
![]() |
#13 |
personality
Старожил
Регистрация: 28.04.2009
Сообщений: 2,899
|
![]()
Вам уже не 1 раз говорено - сделайте бинарный файл, а не текстовый
тогда каждая строка вместо 19 байт будет 5 байт. Плюс чтение будет в разы быстрее. Ну и конечно можно посоветовать сделать блоки блок описываете размерами (для упрощения можно только 1-мерные блоки брать, т.е. просто набор, 1мерная цепочка), в нем все одинаковые пиксели, записывать данные 1 пикселя. потом в программе это дело "разжимать", т.е. зная размеры блока массив пикселей заполнять одинаковыми значениями этого пикселя. Ну а в свете данной в этой теме информации - не проще хранить пнг - рисунок ??? )) всё те же ргба пиксели, да и сжатие есть, плюс сразу видно как выглядит кусочек мира |
![]() |
![]() |
![]() |
#14 |
Пользователь
Регистрация: 24.01.2011
Сообщений: 41
|
![]()
Попробую бинарным
|
![]() |
![]() |
![]() |
#15 |
Старожил
Регистрация: 08.04.2012
Сообщений: 3,229
|
![]()
phomm все правильно сказал, но есть и еще идеи:
- какой смысл хранить пиксели с "фоновыми" значениями? Мне кажется, лучше хранить только те, что отличаются от "фоновых". А чтобы обеспечить скорость поиска, использовать древовидную структуру. Судя по всему, у Вас 10000 файлов по 10000 пикселей. Итого - 100 млн. Переход на бинарное представление, конечно, поможет Вам уместиться в полгигабайта, и, возможно, это все будет прекрасно помещаться в памяти и достаточно быстро работать. Но полгига дискового пространства + немалое время на загрузку... Каков процент пикселей, которые имеют значения, отличающиеся от "фоновых"? |
![]() |
![]() |
![]() |
#16 |
Пользователь
Регистрация: 24.01.2011
Сообщений: 41
|
![]()
я паралельно работаю над генератором мира, потому уже небольшие бугорки есть. Примерно 50% земли и 50% прозрачного воздуха
так же смог сжать файл до 4 мб без архива, только с одной бинаркой и сократил немного мир. 6000х6000 |
![]() |
![]() |
![]() |
|
![]() |
||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Код распаковки ZIP-архива стал выдавать ошибку | Maxx | Microsoft Office Excel | 1 | 23.10.2014 07:35 |
Чтение из ZIP-файла "на лету" (и ещё BASS/BASSMOD) | Wanderer_r | Мультимедиа в Delphi | 3 | 20.03.2010 21:14 |
Чтение, чтение и еще раз чтение | Alex Cones | Общие вопросы Delphi | 3 | 07.06.2009 15:28 |
Можно ли открыть на чтение файл.txt из архива rar или zip. | slips | Общие вопросы Delphi | 6 | 06.02.2009 23:51 |
Zip | Witaliy | PHP | 1 | 11.07.2008 17:33 |