Ben 
 
 
		
		
		
			
			
			 
			
Posts: 60 
	
		
	 | 
	
		
			
  
			 
			
				Известно, что данная проблема была решена в HD моде. 
 
Однако, было интересно узнать подробности рецепта. Давно еще когда-то пробовал просто взять новые библиотеки, идущие вместе с HD модом - mss32.dll и MP3DEC.asi, но звук глючил (пробовал на ванильном SOD). После декомпиляции HD мода методом тыка решил попробовать занопить 6 байт начиная с 0x599B31 с помощью инжектированной Dll. 
Не помогло, хотя, как оказалось, идея была правильной - просто код по данному адресу выполняется очень рано. 
 
Итоговое решение именно такое, желательно только пропатчить экзешник до запуска. Как объяснил автор GLWrapper, Verok, там вызывается функция, устанавливающая размер фрагмента в 100. А при ее затирании используется значение по умолчанию. 
 
Небольшая проблема в том, что на некоторых современных системах при любых MSS32.dll и MP3DEC.asi идет отставание звука от картинки. На игровых форумах советуют отключать аппаратное ускорение звука 
(через dxdiag). В Вин 7 такой возможности нет, в отличие от XP, так что особо упорные копируют dsound.dll c XP. Говорят, это решает и более общие проблемы со звуком (но не всегда).
			 
			
			
			
		 |  
	 
 | 
	| 17.06.2020 00:24 | 
	
		
	 | 
	
		
		Berserker 
 
 
		
		
		
			
			
 
 
			
 
 
			
Posts: 16788 
	
		
	 | 
	
		
 | 
	| 17.06.2020 00:29 | 
	
		
	 | 
	
		
		Ben 
 
 
		
		
		
			
			
			 
			
Posts: 60 
	
		
	 | 
	
		
			
			 
			
				Ну, если инфу по хакингу-патчингу я предоставил точную, то с dsound.dll сам не пробовал ("одна бабка сказала"). Посты нагугливал старые, речь шла о Семерке. У кого-то - да, больше проблем, чем пользы. Но многим помогает.
			 
			
			
			
		 |  
	 
 | 
	| 17.06.2020 00:32 | 
	
		
	 | 
	
		
		Ben 
 
 
		
		
		
			
			
			 
			
Posts: 60 
	
		
	 | 
	
		
			
			 
			
				Потестировал еще немного звуковые библиотеки из HD мода. Все-таки на некоторых системах они дают звук по качеству хуже, чем ванильные (отставание от картинки). Так что использовать их стоит, только если возникают проблемы с вылетами игры. 
 
Ну и жесткий патчинг экзешника, на самом деле, необязателен. Скажем, при использовании ASI плагина, который патчит указанные байты в памяти - все работает, как запланировано. Видимо, при DLL injection, который я изначально использовал, подгрузка в память поздновато происходит. 
ASI плагин - это по сути, обычная DLL, только расширение поменять. Подгружаются в память ASI файлы даже обычной ванильной игрой, с помощью библиотеки MSS. Без HD мода ASI файлы кладутся в корень игры, с HD модом - в _HD3_Data.
			 
			
			
			
		 |  
	 
 | 
	| 18.06.2020 21:51 | 
	
		
	 | 
	
		
		Berserker 
 
 
		
		
		
			
			
 
 
			
 
 
			
Posts: 16788 
	
		
	 | 
	
		
 | 
	| 18.06.2020 22:39 | 
	
		
	 | 
	
		
		Ben 
 
 
		
		
		
			
			
			 
			
Posts: 60 
	
		
	 | 
	
		
			
			 
			
				 (18.06.2020 22:39)Berserker Wrote:  Ben, засада с этим звуком. А на каких системах были лаги с библиотеками HD мода? 
Я, честно сказать, вообще не большой знаток железа. Любой геймер знает про видюхи и звуковухи больше меня. А я работаю над своими задачами на чем придется. 
Собственно, у меня почти везде были эти лаги, например, на моноблоке на работе   
Дома вот только стоит PC старенький, Core 2 Duo, Gigabyte GA-P35-S3G. Здесь все отлично.
			  
			
			
			
		 |  
	 
 | 
	| 18.06.2020 23:10 | 
	
		
	 | 
	
		
		Bes 
 
 
		
		
		
			
			
			
 
 
			
Posts: 5453 
	
		
	 | 
	
		
			
			 
			
				Ben, я полагаю, имелось ввиду на каких "операционках", а не "железе"
			 
			
			
			
		 |  
	 
 | 
	| 18.06.2020 23:15 | 
	
		
	 | 
	
		
		Ben 
 
 
		
		
		
			
			
			 
			
Posts: 60 
	
		
	 | 
	
		
			
			 
			
				Да я на Семерке все работаю. 
 (18.06.2020 22:39)Berserker Wrote:  Ben, засада с этим звуком. А на каких системах были лаги с библиотеками HD мода? 
Ну, получается что в большинстве случаев проблемы решаемы. Либо ванильные библиотеки работают без вылетов, либо хдмодовские без лагов. Как-то так. 
В Героях 2 вот MP3 нет, и проблем таких нет. Наверно, и в Героях 3 можно MP3 переконвертировать и использовать другой формат.
			  
			
			
			
				
(This post was last modified: 18.06.2020 23:27 by Ben.)
 
			 
		 |  
	 
 | 
	| 18.06.2020 23:27 | 
	
		
	 | 
	
		
		Ben 
 
 
		
		
		
			
			
			 
			
Posts: 60 
	
		
	 | 
	
		
			
			 
			
				Оказывается, GLWrapper может работать с WAV вместо MP3. Заменил в папке MP3 на вейвы - все нормально, все работает. Объем, конечно, немалый, на 830 МБ файлов WAV получилось. 
Исходники открыты, если что -  https://github.com/Verokster/HeroesGL
Шкурка может и не стоит выделки, но если есть интерес...
 
В общем, решения проблем со звуком ныне вагон и маленькая тележка.
			  
			
			
			
				
(This post was last modified: 19.06.2020 01:12 by Ben.)
 
			 
		 |  
	 
 | 
	| 19.06.2020 01:09 | 
	
		
	 |