Skip to content

filonov-a/sdl_pack

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

5 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

SDL_pack

Simple SDL assets pack library

SDL_RWFromRW

К сожалению SDL не содержит стандартных средств для создания библиотек ресурсов Однако с версии SDL2 появились стредства новые способы ввода-вывода - SDLRWops, и SDL_image их поддерживает.

Однако, к своему удивлению я не обнаружил там функции SDL_RWFromRW. Пришлось ее написать.

Определение этой функции очень простое:

extern DECLSPEC SDL_RWops *SDLCALL
 SDL_RWFromRW(SDL_RWops* rw,Sint64 off,Sint64 size);

Функция позволяет выделить часть потока и работать с ним как с отдельным файлом. Исходный SDL_RWops обязан поддерживать seek. Допускается как чтение так и запись, если конечно исходный SDL_RWops их подерживал. read/write/seek гарантированы от выхода за границы выделенной области. SDL_RwFromRW не является thread-safe и не сохраняет положение указателя в исходном файле.

SDL_pack

SDL_pack предоставляет простой интерфейс к простейшим пакетам ресурсов. Каждый пакет состоит из двух файлов: data.cat и data.pck data.pck - просто исходные файлы слепленые вместе. data.cat - текстовый файл из строк простого формата:

examples/scripts/makeCat.sh представляет собой простейший упаковщик ресурсов

[<offset>] <size> <filename>
поле Описание
offset смещение файла в data.pck. Eсли отсутствует - отсчитывается от предыдущего файла. Может быть пропущено
size размер данных
filename имя исходного файла

В принципе нет никаких ограничений на перекрытие файлов внутри пакета.

About

Simple SDL assets pack library

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published