Известно, что Blitz может грузить картинки/модели/текстуры итд итп только из файлов. Может есть какие-нибудь длл для загрузки из оперативной памяти. Т.е. файл у меня как-бы сохранен в банке памяти. Заранее благодарю Не все то 3D, что вертится...
Для эффективной и максимально быстрой работы с вершинами и треугольниками, операции над ними можно производить непосредственно в памяти из внешних библиотек, не прибегая к встроенным командам блица.
Вот эти головастые парни - потрошители блица. ANDREYman, MixailV - создатель либ FastExtension, FastImage, FastText, FastPointer
Файл изображения сидит не на HD, а в оперативке. Мне надо схватить его за хендл
Загруженный меш и храниться в оперативке, а возвращённый хендл - это его адрес в памяти. Пользуясь данной мною инфой Вершины (Vertex), пишешь функцию которая считывает из памяти по этой таблице каждый вертекс и собирает готовый меш в блитце. Принцип действий приблизительно такой.
Я представляю сколько будет весить твоё приложение, если ты все ресурсы будешь запекать в него. Вот кстати у меня игрушка стоит, одно приложение и ни одной папки с ресурсами. Обратите внимание на вес приложения.
>Загруженный меш и храниться в оперативке, а возвращённый хендл - это его адрес в памяти.
Опять мимо.((((((( Я не собираюсь пихать все в несчастную ехе-шку. Берем ZIP-ованный меш с ЖД, распаковываем его в память и грузим оттуда, затем все лишнее убираем.
UnpackFile(archive_stream, "mesh.3ds", bank) LoadMeshFromMemory(bank, size_of_bank) ;.... ;.... ;.... FreeBank bank ;тут все шито-крыто
По-моему нихера я здесь не найду((((((((((
Добавлено (12.01.2012, 13:43) --------------------------------------------- С распаковкой архива проблем никаких нет, проблема с загрузкой!
Владимир Владимирович Путин не психуйте. При вашей должности нужно проявлять железную выдержку, а у вас нервы ни к чёрту.
Есть одна мысль, сейчас надо идти по делам, завтра выложу что получилось.
Добавлено (19.01.2012, 15:17) --------------------------------------------- Короче я почти добился нужного эффекта. Это не хилая такая тема. Всю ночь напрягал свои извилины. И мне не хватило времени. План был такой. Делаешь на блитце типа своего конвертера мешей, который считывает позиции каждого вертекса, его нормали и RGBA цвета. Загружаешь стандартный меш(3ds, b3d) в блитц, конвертируешь его через этот конвертер и сохраняешь к примеру как mesh.crozzy. Далее в блитце пишем загрущик этого меша, считываем нужные нам байты из памяти(позиции вертексов, нормалей и RGBA цветов) - это должно быть не сложно, так как это наш собственный формат и мы хорошо знаем его структуру. Плюс в том что даже если этот mesh распакуют из твоего архива, то его никто не сможет использовать.
Я могу ещё поломать голову, вопрос сколько времени это займёт? Хотя если честно мне кроме этого есть чем заниматься, но если сильннно надо! MiniDemo3D - Blitz3D
Сообщение отредактировал MishanayCool - Четверг, 19.01.2012, 15:21