Формат файлов *.SMD (HalfLife) (комментарии)
Это сообщение сгенерировано автоматически.
а может кто исходниками поделиться?
А зачем это надо?
Могу скинуть топорную реализацию из своего движка без учёта скелета. Только вопрос.
Алмаз
> А зачем это надо?
В SDK первого HL в конце документа Modelling for Half-Life есть отличные спецификации этого формата. Желательно версию 2.3 смотрите.
А где формат то? Вижу только какой-то страшныйстранный код.
а зачем эта строчка fgets(buf,4095),in);fgets(buf,4095),in);fgets(buf,4095),in);
в mdl все значительно сжато за счет хранения координат в short (отмасштабированных по bounding box) + анимации в виде ключей
0r@ngE
>А где формат то? Вижу только какой-то страшныйстранный код.
Прежде чем мучиться с этим ужасным кодом советую прочитать это:
2. Исследование и описание SMD формата.
http://glscene.ru/content.php?article.90#P2
Что следует добавить к этой части статьи. В ней НЕ сказано(или сказано не правильно), что представляет собой ориентация костей. Есть мнение, что она представляет собой углы Эйлера(а не кватернионы) взятые локально(ну эт как и с позицией) к паренту.
+
Самое смешное, что чудовищный код в топике таки работает. Только я многое в нём поменял, чтобы заставить его компилироваться. Но статику он по крайней мере читает. Про анимацию не знаю, так и не смог с ней разобраться.
Вообще, на мой взгляд, SMD формат предназначен для чтения в C++ строковые потоки, т.е.
#include <sstream>
и далее в том же духе. А не так, как в топике, блин. Ну эт по хорошему.
Dimich
>Могу скинуть топорную реализацию из своего движка без учёта скелета. Только вопрос.
>Алмаз
> А зачем это надо?
Моделей в этом формате очень много, он распространённый?
Анимация в нём хранится отдельно от модели, что очень правильно?
Он текстовый и относительно понятный?
Какие альтернативы?(чтоб всё что выше, только лучше?)
Нафиг вам этот smd сдался? Есть коллада, есть фбх.
>Нафиг вам этот smd сдался? Есть коллада, есть фбх.
Спецификация, преимущества?
этот, ладно некоммерческий, XML:
http://ru.wikipedia.org/wiki/COLLADA
а этот
http://ru.wikipedia.org/wiki/FBX
проприетарный недокументированный. Один чёрт, что и smd. Чем он лучше-то?
Kukuy
А какой человек в здравом уме будет писать свой загрузчик для FBX? Там есть свой SDK.
В SMD как я понимаю пишется свой велосипед.
SMD это чисто Вальвевский формат для их нужд, в этом его основной минус, FBX/Collada несколько шире.
немного отформатировал, код, удалил коменты т.к с кодировкой в винде чет не так
typedef unsigned short word; #define Dword unsigned long
мда... facepalm
Тема в архиве.