SamClassicPatch/SuperProject

64-bit World Editor. Mono sound in 64-bit version.

Closed this issue · 2 comments

Привет. Вот пару полезностей.

Рабочий редактор уровней для 64 битной версии: tx00100xt/SeriousSamClassic@ace7de5
Причина крашей была в некорректном приведении адресов указателей для 64-битной версии.

Стерео звук в 64-битной версии:
https://github.com/tx00100xt/SeriousSamClassic/blob/main/SamTFE/Sources/Engine/Sound/SoundMixer.cpp#L709
При переводе кода с ассемблера пропустили одну команду MMX, В результате микшируется только один канал.
slRightSample = pswSrcBuffer[(fixRightOfs>>15)+1]; // fixed
slNextSample = pswSrcBuffer[(fixRightOfs>>15)+3]; // fixed

Можно ещё посмотреть полезности здесь:
https://github.com/tx00100xt/SeriousSamClassic/blob/main/CHANGELOG.md
https://github.com/tx00100xt/SeriousSamClassic-VK/blob/main/CHANGELOG.md

С Наступающим!

Это всё, конечно, полезно, но у меня нет доступа к коду самого движка. Всё делается поверх него. Звук я точно не смогу исправить, если не перепишу весь звуковой движок в принципе (хотя я даже не припомню проблем со звуком в классике).

А редактор у меня уже работает и не работал он по другим причинам. Правки, как я понимаю, касаются кастов переменных для MFC, но у меня проблем с MFC не было, потому что используется тот же старый MFC, что и у движков ~2001 года.

Да и вообще, я собираю код под 32-битные системы, потому что старые движки собраны под них, если речь идёт о сборке непосредственно под 64-битные системы.

Это моя невнимательность :) Думал здесь зеркало проекта, который вы с zcaliptium на ГитЛаб развиваете.
Я оттуда недавно исправления для lightmap взял, для 64-битной версии.
Глянул проект то другой, хоть и имя одинаковое.
Конечно исправления исключительно для версии 1.10
Ещё раз с Наступающим!