A.I.M.(http://forum.ja2.su/cgi-bin/yabb/YaBB.pl)
Обсуждаем игры >> Другие моды >> Essence XWnd Shell
(Message started by: StaticZ на 29.09.2014 в 06:18:11)

Заголовок: Essence XWnd Shell
Прислано пользователем StaticZ на 29.09.2014 в 06:18:11
"Essence XWnd Shell" aka ExShell - приложение для запуска старых полно экранных игр в оконном режиме (без необходимости изменять режим цветопередачи на рабочем столе) с применением различных фильтров (например апскейлеров, таких как 2xSaI и других) к перехватываемому изображению. Так же имеется ряд других возможностей, таких как ограничение FPS, снижение загрузки CPU, ограничение работы на 1 ядре процессора и другие. Есть возможность применения последовательно любого числа фильтров и растягиванию полученного изображения на все окно как с сохранением соотношения сторон так и без. Вообще почти все, что только можно настраивается под себя в файле настроек. Принцип работы ExShell заключается в запуске указанного приложения и загрузки в его адресное пространство собственного кода (dll'ки), что перехватывает API'шные вызовы изменяя тем самым работу приложения. Таким образом данная утилита может работать с подавляющем числом приложений, что основаны на реализованном API. На данный момент это лишь DirectDraw2, в будущем будет добавлена поддержка других версий, GDI и возможно Direct3D\OpenGL.


Тем не менее работу над этой программой я начал преимущественно из-за всеми нами любимой Jagged Alliance 2, и не удивительно, что именно она использовалась для обкатки и тестирования первой версии. Так что никаких проблем с совместимостью с JA2 быть не должно (проверенно на оригинальной первой версии "Буки", последнем билде моде 1.13 и на модификации Metavira).


Поддерживаемые на данный момент фильтры: None, GrayScale, Simple (2x, 3x, 4x), Pixelate (2x, 3x, 4x), Scanlines (2x), ScanlinesTV (2x), MotionBlur (2x), 2xSaI (2x), SuperEagle (2x), Super2xSaI (2x), EPX (2x), AdMame (2x), LQ (2x), HQ (2x), XBRa (2x, 3x, 4x), XBRb (2x, 3x, 4x), XBRc (2x, 3x, 4x).



История изменений:

(2014.09.28) ver 0.01 rev 011  build 14271
------------------------------------------
     * Intial realise


(2014.10.09) ver 0.02 rev 018  build 14282
------------------------------------------      

     * Fixed: FPS limit ignored after minimize\restore application
     * Fixed: SuperEagle filter crashed application.
     * Fixed: Related paths for $StartPEPath: don't work.
     * Change startup initialization for more safety
     * Change using instruction sets: MMX, SSE, SSE2, AVX
     * Added: EPX upscale filter
     * Added: info about selected filters and game mode in OSD
     * Added: saving screenshots by PrntScr hotkey (Ctrl+PrntScr to save original image)
     * Added: separating FPS limit for focused and unfocused application window
     * Added: sending customise keyboard keys scancode at lose and get focus.
     * Added: minor checks and validations

(2015.11.05) ver 0.03 rev 030  build 15309
------------------------------------------      
     
     * Added: Upscaler support GDI based games
     * Added: Downscale 2x filter
     * Added: VFS (Virtual File System)
     * Added: minor checks and validations
     * Change removed dependencies for AVX instructions



Ссылки для скачивания:
  • Essence XWnd Shell 0.01(011.14271) (https://dev.uoquint.com/attachments/download/677/exshell.tbz)
  • Essence XWnd Shell 0.02(018.14282) (https://dev.uoquint.com/attachments/download/679/exshell.tbz)
  • Essence XWnd Shell 0.03(030.15309) (https://dev.uoquint.com/attachments/download/767/exshell.tbz)

Заголовок: Re: Essence XWnd Shell
Прислано пользователем StaticZ на 29.09.2014 в 06:22:37
Зарезервировано для будущих нужд...

Заголовок: Re: Essence XWnd Shell
Прислано пользователем StaticZ на 29.09.2014 в 06:23:33
Зарезервировано для будущих нужд...

Заголовок: Re: Essence XWnd Shell
Прислано пользователем Green Eyes на 29.09.2014 в 06:40:11
2StaticZ: С НО, как я понимаю, пока не работает (только Метавира, Оригинал и 1.13)? По крайне мере у меня не запустилось. Либо я что-то делаю не так (как обычно). :)

Можно просьбу от "не программера" - можно сделать более-менее приличный GUI? К примеру, как в тех програх, что я раньше показывал. А то это вечное редактирование текста и цифорок удручает. :P

Заголовок: Re: Essence XWnd Shell
Прислано пользователем StaticZ на 29.09.2014 в 06:45:54
2Green Eyes: Должно работать, в принципе сейчас оно должно работать с любыми играми написанными на DirectDraw, разве что могут быть проблемы с мышкой. Я протестировал на том что было под рукой )



on 1411962011, Green Eyes wrote:
Можно просьбу от "не программера" - можно сделать более-менее приличный GUI? К примеру, как в тех програх, что я раньше показывал. А то это вечное редактирование текста и цифорок удручает.  
В каких? Сделать можно, но не скоро - сначала надо понять что делать, а это станет понятно лишь когда будет реализован основной функционал, а это еще много работы )

Заголовок: Re: Essence XWnd Shell
Прислано пользователем Green Eyes на 29.09.2014 в 07:00:37

on 1411962354, StaticZ wrote:
В каких?
- D3DWindower и DXwnd.

Заголовок: Re: Essence XWnd Shell
Прислано пользователем KombaT на 29.09.2014 в 07:24:22
Старая тема перенесена в чулан;
все обсуждения продолжаются в данном разделе;
три последних поста, как организационные и не относящиеся к данной теме будут удалены..

Заголовок: Re: Essence XWnd Shell
Прислано пользователем StaticZ на 29.09.2014 в 07:25:54
А где чулан? )

Заголовок: Re: Essence XWnd Shell
Прислано пользователем KombaT на 29.09.2014 в 07:35:03
2StaticZ:

on 1411964754, StaticZ wrote:
А где чулан? )  

чулан доступен только избранным  :)

Заголовок: Re: Essence XWnd Shell
Прислано пользователем Терапевт на 29.09.2014 в 08:02:50
2Green Eyes:

Quote:
С НО, как я понимаю, пока не работает (только Метавира, Оригинал и 1.13)?

Работает. Движок у НО с Метавирой общий. Надо правильно путь к экзешнику прописывать. Для простоты можно в секцию, относящуюся к Метавире.

2StaticZ:
Программа вполне нормально работает и на Win8+.
Но вот настройка конфига для неподготовленного пользователя - задача нетривиальная. Квест с NPP с подсветкой синтаксиса задачу не сильно упрощает. Нужен хотябы примитивный setup с выбором активного профиля, пути к экзешнику и режима фильтра, чтобы большее число заинтересовавшихся людей могли попробовать и оценить получившийся инструмент.
PDFы с доками, кстати, довольно странные. Штатным pdf-просмотрщиком Win8 не открываются. Первый раз с таким сталкиваюсь.

Заголовок: Re: Essence XWnd Shell
Прислано пользователем StaticZ на 29.09.2014 в 08:21:19

on 1411966970, Терапевт wrote:
Программа вполне нормально работает и на Win8+.  
В смысле если пускать через шел то не нужны танцы с бунами для решения проблем производительности DirectDraw? или в том плане что просто работает )


on 1411966970, Терапевт wrote:
Но вот настройка конфига для неподготовленного пользователя - задача нетривиальная. Квест с NPP с подсветкой синтаксиса задачу не сильно упрощает. Нужен хотя бы примитивный setup с выбором активного профиля, пути к экзешнику и режима фильтра, чтобы большее число заинтересовавшихся людей могли попробовать и оценить получившийся инструмент.  
Не все сразу. Сделаю позже, пока еще не до конца ясно какие вообще настройки будут, к примеру для некоторых фильтров тоже нужны будут свои настройки, но вообще в конфигах того же 1.13 разобраться куда сложнее, не говоря о том увидеть результат тоже не всегда можно. Тут настроек не так уж много, просто за счет описания и комментариев кажется что их много )


on 1411966970, Терапевт wrote:
PDFы с доками, кстати, довольно странные. Штатным pdf-просмотрщиком Win8 не открываются. Первый раз с таким сталкиваюсь.
Возможно, честно говоря это просто сгенерированные вики пдфки, там даже не все макросы распарсились (к примеру в начале там стоит [>TOC] - вместо него должно было быть оглавление).

Заголовок: Re: Essence XWnd Shell
Прислано пользователем StaticZ на 29.09.2014 в 09:09:03
Итак небольшое сравнение фильтров апскелеров:

2xSimple:
http://https://download.uoquint.com/ja2/filters/JA2_2xSimple.png (https://download.uoquint.com/ja2/filters/JA2_2xSimple.png)

2xPixelate:
http://https://download.uoquint.com/ja2/filters/JA2_2xPixelate.png (https://download.uoquint.com/ja2/filters/JA2_2xPixelate.png)

2xScanlines:
http://https://download.uoquint.com/ja2/filters/JA2_2xScanlines.png (https://download.uoquint.com/ja2/filters/JA2_2xScanlines.png)

2xScanlinesTV:
http://https://download.uoquint.com/ja2/filters/JA2_2xScanlinesTV.png (https://download.uoquint.com/ja2/filters/JA2_2xScanlinesTV.png)

2xSaI:
http://https://download.uoquint.com/ja2/filters/JA2_2xSaI.png (https://download.uoquint.com/ja2/filters/JA2_2xSaI.png)

Super2xSaI:
http://https://download.uoquint.com/ja2/filters/JA2_Super2xSaI.png (https://download.uoquint.com/ja2/filters/JA2_Super2xSaI.png)

2xAdMame:
http://https://download.uoquint.com/ja2/filters/JA2_2xAdMame.png (https://download.uoquint.com/ja2/filters/JA2_2xAdMame.png)

2xLQ:
http://https://download.uoquint.com/ja2/filters/JA2_2xLQ.png (https://download.uoquint.com/ja2/filters/JA2_2xLQ.png)

2xHQ:
http://https://download.uoquint.com/ja2/filters/JA2_2xHQ.png (https://download.uoquint.com/ja2/filters/JA2_2xHQ.png)

2xXBRa:
http://https://download.uoquint.com/ja2/filters/JA2_2xXBRa.png (https://download.uoquint.com/ja2/filters/JA2_2xXBRa.png)

2xXBRb:
http://https://download.uoquint.com/ja2/filters/JA2_2xXBRb.png (https://download.uoquint.com/ja2/filters/JA2_2xXBRb.png)

2xXBRc:
http://https://download.uoquint.com/ja2/filters/JA2_2xXBRc.png (https://download.uoquint.com/ja2/filters/JA2_2xXBRc.png)

Как видно, у XBR большие проблемы с прозрачностью, лучше всего с ней справляется 2xSaI. AdMame дает более плавную картинку и хорошо читаемый текст, но снижает полу-прозрачность.

Заголовок: Re: Essence XWnd Shell
Прислано пользователем Терапевт на 29.09.2014 в 20:25:16

on 1411968079, StaticZ wrote:
или в том плане что просто работает  

Именно. Главное, что для запуска шела отдельный бубен не нужен.


on 1411968079, StaticZ wrote:
В смысле если пускать через шел то не нужны танцы с бунами для решения проблем производительности DirectDraw?

В данный момент в плане простоты использования шел и модификация реестра находятся на одном уровне.
Что касается производительности, то тут всё от фильтров зависит. Все я не проверял, но на некоторых несложных скорость скроллинга получалась рваной. XBR 2х в этом плане был неторопливо стабилен - 25 кадров для игры в 640х480 в окне 1280х1024.


on 1411970943, StaticZ wrote:
Как видно, у XBR большие проблемы с прозрачностью

При этом XBR остаётся, по крайней мере на мой взгляд, визуально привлекательным какой-то своей "акварельной плавностью очертаний" при маленьком разрешении игры для большого экрана, например 640х480 или 800х480 для 15". Так как для различных вариантов WXGA на 15" необходимость каких-либо фильтров уже неочевидна.

Заголовок: Re: Essence XWnd Shell
Прислано пользователем StaticZ на 30.09.2014 в 04:20:57

on 1412011516, Терапевт wrote:
Что касается производительности, то тут всё от фильтров зависит. Все я не проверял, но на некоторых несложных скорость скроллинга получалась рваной. XBR 2х в этом плане был неторопливо стабилен - 25 кадров для игры в 640х480 в окне 1280х1024.  
XBR самый медлительный фильтр и из-за малого числа ФПС скрол и получается как раз плавным. Ограничение FPS работает очень просто из FPS рассчитывается дельта через которую надо выполнять перерисовку экрана. Игра же естественно ничего об этом не знает и беспрерывно шлет запросы на прорисовку, если время меньше расчитанной дельты то обновление экрана игнорируется. Вот и получается что на одно обновление экрана может выпасть что карта скролится на 0 пикселей, а на следуещее на 2-3. Короче тут вина не фильтров а ограничения FPS ну или его слишком малого значения в случае использования тяжеловестных фильтров.


on 1412011516, Терапевт wrote:
При этом XBR остаётся, по крайней мере на мой взгляд, визуально привлекательным какой-то своей "акварельной плавностью очертаний" при маленьком разрешении игры для большого экрана, например 640х480 или 800х480 для 15". Так как для различных вариантов WXGA на 15" необходимость каких-либо фильтров уже неочевидна.
Ну о вкусах не спорят, как по мне акварельный эффект портит пиксель арт (чего только стоит миникарта). А вот в каких-то очень старых играх (где 16 цветов) или каких нибудь рисованных квестах он может порадовать...

Что касается производительности в следующей версии постараюсь заменить реализацию 2xSai\SuperEagle\Super2xSaI на ассемблерную под MMX, должно полегчать правда насколько сильно пока говорить рано.

Заголовок: Re: Essence XWnd Shell
Прислано пользователем Nikto, кто кто ? на 30.09.2014 в 07:44:49

on 1412040057, StaticZ wrote:
При этом XBR остаётся, по крайней мере на мой взгляд


углы идеально ровные ТОЛЬКО при нём ..


все иные фильтры или лашарят или гладят угол лишь на 50% ...  :(

Заголовок: Re: Essence XWnd Shell
Прислано пользователем Nikto, кто кто ? на 30.09.2014 в 07:47:17

on 1412040057, StaticZ wrote:
ассемблерную под MMX


аппаратка через карту реальна ?

алгоритмы используют много-поточность 4 .. 6 .. 8 ядер или только одно ?

sse,sse2\3\4\4.1 .. ? - эта хрень как-то может повысить FPS
или скалер этому обучить нереал ?


можно ли тупых и не продвинутых сделать банальный лаунчер,
в котором выбираешь EXE ja2 - и огонь ?
:)


с дружеским юзер интерфейсом ... что бы не ковырять конфиги .. ?
::)



on 1411966970, Терапевт wrote:
Нужен хотябы примитивный setup


во во ..

только подумал про это ...

типа браус EXE - выбрал и огонь ..
;D

а конфу фильтра конеш лучше тупа в INI загнать
простейший.

Типа - тип скалера, 2\3\4 и базовое разрешение и окно хочешь или фулл.
и всё.
:)

*кстати всё же про мои 960*540 х2... = 1920*1080 - они щас пашут или нет ..
или пока лишь с 640*480 маштабит .. ?

сделайте хоть один скрин с 1920 ...
::)


___

Заголовок: Re: Essence XWnd Shell
Прислано пользователем StaticZ на 30.09.2014 в 09:11:01
:D 8) 8) 8) ::)
on 1412052289, Nikto, кто кто ? wrote:
углы идеально ровные ТОЛЬКО при нём ..  
Ну помимо углов есть множество и других важных вещей. Честно говоря ровность этих углов заметна лишь на каркасах (если они еще включены), которые к тому же он делает куда более жирными. Ко всему остальному надо приглядываться, чтобы увидеть разницу. Не знаю как Вы, но когда я играю я больше смотрю на персонажей и окружение, а вот то что он делает с мелкими деталями это по мне непростительно. Присмотритесь как коверкается фигуры наемников и что главное этот эффект еще плавает при движении или присмотритесь к обоймам в инвентаре - обоймы без патронов, на медсумке вместо красного креста - клякса, а записки как будто, ну и полу прозрачность это просто ужас....



on 1412052437, Nikto, кто кто ? wrote:
аппаратка через карту реальна ?  
Реальна, есть такая штука CUDA.. Но владельцам радионов и офисных карт это не поможет.


on 1412052437, Nikto, кто кто ? wrote:
алгоритмы используют много-поточность 4 .. 6 .. 8 ядер или только одно ?  
А посмотреть в диспетчере процессов или на ОСД не дано? одно конечно, распараллеливание это геморой тот еще, а польза сомнительна, больше 4х ядер сейчас почти ни у кого нет. Лучше уж сразу писать на куде там этих процессоров до тучи.


on 1412052437, Nikto, кто кто ? wrote:
sse,sse2\3\4\4.1 .. ? - эта хрень как-то может повысить FPS
или скалер этому обучить нереал ?  

Вопрос из области может ли спортивная феррари повысить скорость движения в городе? Весь код и так скомпелирован с использованием MMX\SSE\SSE2, сами по себе они хороши однако главным всегда был и является алгоритм, так что ассемблерный код даст куда больше.... Сам я переписывать на асм не буду, но если найдете - постараюсь прикрутить. На практике прирост обычно достаточно ощутимый.


on 1412052437, Nikto, кто кто ? wrote:
можно ли тупых и не продвинутых сделать банальный лаунчер,
в котором выбираешь EXE ja2 - и огонь ?

Всем не угодить, да и машины у всех разные, так что настройка никуда не денется и опций не станет меньше. ГУЙ конечно сделаю, но как уже говорил выше до этого еще руки дойдут не скоро.



on 1412052437, Nikto, кто кто ? wrote:
а конфу фильтра конеш лучше тупа в INI загнать
простейший.  
А разница? мой велосипед куда удобнее, т.к. позволяет работать с массивами (считай вместо того же разрешения не 2 параметра а 1) и с булевы выражениями (не надо думать 0\1 это в смысле число или в смысле да\нет) и с шестнадцатеричными числами (к примеру цвет для бекграунда удобнее задавать в таком виде)



on 1412052437, Nikto, кто кто ? wrote:
*кстати всё же про мои 960*540 х2... = 1920*1080 - они щас пашут или нет ..
или пока лишь с 640*480 маштабит .. ?  
Да чего угодно масштабит шелу абсолютно до лампочки в каком разрешении работает игра, хоть 40х12 хоть 4096х3800.


 

Заголовок: Re: Essence XWnd Shell
Прислано пользователем Seven на 30.09.2014 в 09:15:24
Судя по тому, что говорил Роман (RoWa21) на медведях, если (когда) запускатор будет допилен до приемлемого состояния, визуальный конфигуратор они сделают сами, точнее, добавят поддержку в ini editor.

Заголовок: Re: Essence XWnd Shell
Прислано пользователем StaticZ на 30.09.2014 в 09:19:12

on 1412057724, Seven wrote:
, если (когда) запускатор будет допилен до приемлемого состояния

А в чем не приемлемость его состояния сейчас?

Заголовок: Re: Essence XWnd Shell
Прислано пользователем Seven на 30.09.2014 в 09:23:25
2StaticZ:
Когда будет понятно, что можно его распространять как официально работающий и не ожидать тонн возмущения от пользователей, то есть, как минимум, после всестороннего тестирования в разных разрешениях, на разных системах и т.д.
Не в смысле критики, просто, насколько я понял, данная версия пока в стадии бета-тестирования, и возможно будут еще какие-то улучшения/изменения.

Заголовок: Re: Essence XWnd Shell
Прислано пользователем StaticZ на 30.09.2014 в 09:26:51
2Seven: Будут конечно, однако по большей части касаемо добавления новых фильтров и поддержки других API для запуска других игр )

Заголовок: Re: Essence XWnd Shell
Прислано пользователем Nikto, кто кто ? на 01.10.2014 в 02:10:11

on 1412057461, StaticZ wrote:
надо приглядываться, чтобы увидеть разницу.


:)

не .. ну а плитка на полу ... она без - вся в зубцах .. а С гладкая ..  :)

многие предметы, пальмы ...
:)



Заголовок: Re: Essence XWnd Shell
Прислано пользователем Nikto, кто кто ? на 01.10.2014 в 02:16:02
короче ини не ждать ... беру я в руки notepad+ буду крутить ...
;D

кстати в обычном ноуте сменил путь к EXE ...

сохранил exshell.ecd ... UTF-8 ... но ..

сразу получил в лоб - can't read config file
;D


а PDF хэлповые у меня только хром прочитал ...  :)


====

404
Страница, на которую Вы пытаетесь зайти, не существует или удалена.

Back


http://dev.uoquint.ru/attachments/download/559/ecd.xml


при попытке взять - ecd.xml
:(


где брать ?  ::)


==
а можно что бы не ковырять пути,
разрешить скалеру кушать JA2.exe

который в одной папке с ним ..

без разбивки на версии ?
::)


любая версия жа переимен. - и вопрос закрыт.

по умолчанию так же можно поставить,
оптимальный как вы сказали МАМЕ 2х .. и всё.

:)


то я боюсь в бубном - реально запустивших модуль единицы ...  :)

__

Заголовок: Re: Essence XWnd Shell
Прислано пользователем Nikto, кто кто ? на 01.10.2014 в 02:54:31
~ =====================================================================================
[EXSProfile02]            ~ Jagged Alliance 2: 1.13                                                         =====
~ =====================================================================================

$StartPEPath: "K:\Games\ja_2_2014\2014+Mods\ja2.exe"
$StartPEArgs: ""


~ =====================================================================================
[DefaultConf]            ~ Default configuration for all profiles                                =====
~ =====================================================================================

$StartPEPath: "ja2.exe"
$StartPEArgs: "-nomovie"



что я не так делаю ?

win7\64bit ENG .. - жму по exshell.exe - мерцает и не пускает ..

в чём дело как понять .. есть какой-то лог ?
::)

==
ноутпад ++ скачал, редактирую\сохраняю UTF-8 без бума ..



Заголовок: Re: Essence XWnd Shell
Прислано пользователем StaticZ на 01.10.2014 в 03:02:54

on 1412118611, Nikto, кто кто ? wrote:
не .. ну а плитка на полу ... она без - вся в зубцах .. а С гладкая ..    
ИМХО пиксель арт и должен оставаться пиксель артом. Но опять же дело вкуса - каждому свое, для этого и есть разные фильтры и настройки ))


on 1412118962, Nikto, кто кто ? wrote:
сохранил exshell.ecd ... UTF-8 ... но ..  
Либо ошибка синтаксиса (к примеру кавычки забыли закрыть/открыть) либо не та кодировка (есть UTF-8 with BOM и UTF-8 without BOM)



on 1412118962, Nikto, кто кто ? wrote:
а PDF хэлповые у меня только хром прочитал ...  
Об Addope acrobat reader не слышали? Вроде как стандарт де факто для просмотра pdf, те же браузеры вроде через него и открывают.



on 1412118962, Nikto, кто кто ? wrote:
404
Страница, на которую Вы пытаетесь зайти, не существует или удалена.
Back
 
http://dev.uoquint.ru/attachments/download/559/ecd.xml  
при попытке взять - ecd.xml  
где брать ?    
В арихиве вместе с прогой - ".\toolsadd\notepad++\ecd-highlight.xml"



on 1412118962, Nikto, кто кто ? wrote:
а можно что бы не ковырять пути,
разрешить скалеру кушать JA2.exe
 
который в одной папке с ним ..
без разбивки на версии ?
 
 
любая версия жа переимен. - и вопрос закрыт.
 
по умолчанию так же можно поставить,
оптимальный как вы сказали МАМЕ 2х .. и всё.  
Там нет никакого разделения на версии - шелу нужен просто путь к екзешнику и все. Однако для удобства содержимое можно разбить на секции. В корневой секции есть ключ:

~ Using sections (exshell will look for walues in this sections in left-to right order)
$LoadProfile: { "ShellOptions", "EXSProfile01", "DefaultConf" }

что определяет порядок чтения секций, т.е. если ключ не найден в 1й секции ([ShellOptions]), он ищется во второй ([EXSProfile01]) - если он там есть то остальные пропускаются. Таким образом можно сделать наборы конфигов и быстро переключаться между настройками, к примеру между различными екзешниками или разрешениями или фильтрами или чем только пожелаете. Число секций, как и их имена не играют роли (ну если имена на латинице, но это собственно ограничение "формата", а не шела). Если Вам это не нужно вы можете все загнать в одну секцию. Аналогичная идея реализована и в JA 2.13 c профилями и переопределением конфигов. Никто вам не мешает прописать там JA2.exe и переименовывать екзешники вместо редактирования конфигов, однако сам шел автоматом не будет кушать ja2.exe т.к. шел делается не только для запуска JA2 но и для других игр, а там ехе'шники соответсвено совсем по другому завутся.



on 1412118962, Nikto, кто кто ? wrote:
то я боюсь в бубном - реально запустивших модуль единицы ...    
Специфика жанра. Я не видел ни одного лаунчера\шела без кучи настроек. Даже в простом DxWnd, что лишь запускает полноэкранку в окне не мало настроек, и несмотря на ГУЙ большинство понять\подобрать можно лишь методом тыка (не говоря уже о том что все на родном китайском). Конфиги к JA2, Fallout и другим играм куда более путаные (под 4000 строчек)



Заголовок: Re: Essence XWnd Shell
Прислано пользователем StaticZ на 01.10.2014 в 03:10:21

on 1412121271, Nikto, кто кто ? wrote:
что я не так делаю ?  

1) Проверил сейчас - не поддерживаются относительные пути, только полные. (в следующем обновлении поправлю)
2) Секция [EXSProfile02] скорее всего не в списке загружаемых секций (см ключ $LoadProfile:)



on 1412121271, Nikto, кто кто ? wrote:
в чём дело как понять .. есть какой-то лог ?  
Есть в конце конфига идет настройка консоли куда все выводиться. Если консоль даже не появляется то либо шел не смог запустить приложение (например не правильный путь) либо если игра всеже запустилась - шелу не удалось встроить свой код в него (в принципе с JA2 такого быть не должно, т.к. проверял на нем прилично, но с другими играми может и такое быть).

Заголовок: Re: Essence XWnd Shell
Прислано пользователем Nikto, кто кто ? на 01.10.2014 в 07:22:12

==
таки пустил, таки 960*540 на 2а .. и даже не чёрнобелое  ;D

но мышь по координатам неверно ходит ... в итоговом 1920*1080 ...


и ещё вопрос .. -
$ImageFilter: #0000
$ImageFilter: #2022

зачем 2а фильтра ... один можно отключить ?
::)

Заголовок: Re: Essence XWnd Shell
Прислано пользователем StaticZ на 01.10.2014 в 07:27:35

on 1412137332, Nikto, кто кто ? wrote:
таки пустил, таки 960*540 на 2а .. и даже не чёрнобелое  
 
но мышь по координатам неверно ходит ... в итоговом 1920*1080 ...  
Разрешение игры в $FScreenMode: поменяли?



on 1412137332, Nikto, кто кто ? wrote:
и ещё вопрос .. -
$ImageFilter: #0000
$ImageFilter: #2022

зачем 2а фильтра ... один можно отключить ?
 
Шел позволяет использовать сколько угодно фильтров хоть 200 если комп потянет. Но минимум 1. для этого и есть фильтр "пустышка". При использовании любых других фильтров он лишь грузит проц никому не нужной работой.

Заголовок: Re: Essence XWnd Shell
Прислано пользователем Nikto, кто кто ? на 01.10.2014 в 07:28:55
==
если в жа2.ini стоит оконный режим .. - не пахает ...

так и должно быть .. ?


а в full ja2 1.13 держит 960*600 ... а не 540 .. и траблы с мышью из-за этого в 1920 ..

http://112.imagebam.com/download/5yH-ZQBP0fZ5z4dE_x6g2g/35478/354772132/Untitled-1.png

Заголовок: Re: Essence XWnd Shell
Прислано пользователем Nikto, кто кто ? на 01.10.2014 в 07:29:49
http://112.imagebam.com/download/5yH-ZQBP0fZ5z4dE_x6g2g/35478/354772132/Untitled-1.png


==
да менял

$FScreenMode: { 960, 540, 555 }      

да ...
но 1.13 упорно пускает 960*600 .. а не 540 ...

Заголовок: Re: Essence XWnd Shell
Прислано пользователем StaticZ на 01.10.2014 в 08:31:52

on 1412137735, Nikto, кто кто ? wrote:
да менял

$FScreenMode: { 960, 540, 555 }      

да ...  0
но 1.13 упорно пускает 960*600 .. а не 540 ...
Значит в конфиге шела пропишите 960х600, поидее мышь должна будет правильно ходить

Заголовок: Re: Essence XWnd Shell
Прислано пользователем Nikto, кто кто ? на 02.10.2014 в 02:58:24
ну так монитор то не тянет 1200 .. а 1080 ..
:)

===
родное я думаю 960*540 добавят как
кто-то писал на мишках ...

хотя как решение - возможность скалить с оконки ..

оконный то 960*540 работает без проблем ... но скалер с оконкой не работает как я понимаю ...
::)

ну и самый важный вопрос аппаратное ускорение этой 2д
обработки как минимум для того же BRZ ..

или дерект не 2.0 исп. .. а 9 или 11 ... или это не возможно ?


или иные ускорения ...

у меня кор дюо ... около 2,2 ghz ... выдаёт около 12-15 fps ..

соотв. выходит нужно 4 ghz и выше проц что бы хотя бы
до норм. 25 fps дотянуть ... что конечно жесть ...  :)


надо как-то обработку оптимизировать\повесить на видеокарту ... не знаю ...


___

Заголовок: Re: Essence XWnd Shell
Прислано пользователем StaticZ на 02.10.2014 в 08:52:21

on 1412207904, Nikto, кто кто ? wrote:
или дерект не 2.0 исп. .. а 9 или 11 ... или это не возможно ?  
Там вообще DX не используется. Да и смысла его нет использовать, разве что ради нормальной интерполяции и сомнительного баловства с шейдерами, ничего ускорить там не получиться.


on 1412207904, Nikto, кто кто ? wrote:
хотя как решение - возможность скалить с оконки ..  
Гемороя много и работать будет через одно место - я же объяснял выше почему.


on 1412207904, Nikto, кто кто ? wrote:
но скалер с оконкой не работает как я понимаю ...  
Не работает.


on 1412207904, Nikto, кто кто ? wrote:
оконный то 960*540 работает без проблем ...  
Надо джа2 править, там меньше 800х600 вообще не ставиться, да и не уверен что она его вообще поддерживает. Насколько я понимаю после 640х480 идет кастомный интерфейс что заточен под разные разрешения, а с оригинальным проблемы будут. Да маловат он для 2.13


on 1412207904, Nikto, кто кто ? wrote:
у меня кор дюо ... около 2,2 ghz ... выдаёт около 12-15 fps ..
 
соотв. выходит нужно 4 ghz и выше проц что бы хотя бы  
до норм. 25 fps дотянуть ... что конечно жесть ...    
Ну как вариант не жадничать с разрешением у меня при 640х480 выдает 25-40 фпс.



on 1412207904, Nikto, кто кто ? wrote:
надо как-то обработку оптимизировать\повесить на видеокарту ... не знаю ...  
Надо, но самому переписывать алгоритмы на какуюнить куду руки у меня доползут не скоро.

Заголовок: Re: Essence XWnd Shell
Прислано пользователем Nikto, кто кто ? на 03.10.2014 в 02:03:42
ясно !!1

так или иначе спасибо за огромную работу !

мечта сбылась !
;D

но пока лишь на 12ти фпс ..  ;D смотрю как в музее ...
видеть вижу .. а трогать низя  ;D ;D

Заголовок: Re: Essence XWnd Shell
Прислано пользователем StaticZ на 03.10.2014 в 03:56:33

on 1412291022, Nikto, кто кто ? wrote:
но пока лишь на 12ти фпс ..   смотрю как в музее ...  
видеть вижу .. а трогать низя    
Используйте другой фильтр, всяко лучше чем без фильтрации вообще.

Заголовок: Re: Essence XWnd Shell
Прислано пользователем Nikto, кто кто ? на 04.10.2014 в 05:11:33

on 1412297793, StaticZ wrote:
Используйте другой фильтр


:) ну вообще да ..

барсик пока тормозит ..

только мамка  ;D

Заголовок: Re: Essence XWnd Shell
Прислано пользователем StaticZ на 06.10.2014 в 02:24:56
Занимаюсь оптимизацией 2xSai, SuperEagle, Super2xSaI и столкнулся с рядом проблем. Нужна помощь знающих ассемблер или тех кто возможно уже сталкивался с этими или другими скейлерами. Суть проблемы описана в спойлере, извиняюсь за английский, переводить лень, т.к. скорее всего ник-то не откликнется. Но если вдруг кто найдется - пишите, переведу на родной:

[offtop]I need some help - I whant to use optimized MMX implementation for 2xSai, SuperEagle, Super2xSai upscalers that is written in assembler to make them faster. Unfortunately I have no experience with asm and don't found any information how to use and compile this code. The author of this algorithm gave very dirty sources it looks like C\C++ part of them is outdate and don't update for a long time (it even don't use Super2xSai asm code that seems was added later), besides they even can't be compiled as they used some code from other projects (alegro). As I understand upscaler was written for ZSNES project, but even there they used differ code without alegro and not latest version.

Any way as you can see withthout MMX optimisation all works fine, so the problem in fact how to use asm code. As for C\C++ part it's even easy then whithout MMX - we just call 1 function for each line of ower image. But her begins problems: DirectDraw Flip method always return error DDERR_SURFACEBUSY (0x887601AE), sure all surfaces are offscreen and located in system memory. It looks like this code ither tryes to work parralel or cause some problems with memory managment, possibly it can be realated with stack errors throw calling this code... So this are my quastions:

1. How to compile this code? I used this options:

Code:
nasm.exe -O0 -D__DJGPP__ -Xvc -f win32 -o "2xSaImmx.obj"  --  2xSaImmx.asm


Again, original code can't be compiled as few definitions are missed (I'm note sure that it's valid, but looking throw ZSNES sources and previos versions of ASM code it seems me correct):

Code:
%imacro NEWSYM 1
%ifdef __DJGPP__
GLOBAL __%1
__%1:
%else
GLOBAL _%1
_%1:
%1:
%endif
%endmacro


Then I make static library from *.obj that is added to linker:

Code:
lib /out:2xSaImmx.lib 2xSaImmx.obj


2. What does __DJGPP__ definition do? I suppose that it required for Windows ("-f win32") code, and not required for Linux ("-f elf"). Is it right?

3. What declaration is used in expoting functions? __cdecl or not? I tried otheres (__stdcall, __fastcall) and got linker errors, but I whant be sure in this.

4. And main thing that cause problems are methods arguments, as I undertand they are (again as for me it looks correct, but I'm not sure in this):

Code:
1: (Uint8*) Src DIB array
2: (Uint8*) Buffer DIB array (same size of source visible area)
3: (Uint32) Src DIB Pitch
4: (Uint32) Src width in pixels
5: (Uint32) Dst DIB array
6: (Uint32) Dst Pitch
7: (Uint16) Dst Segment ?? (only use with djgpp).


5. As 5th argument isn't pointer and called offset, I doubt is this pointer or some offset from other pointer?

6. But most crazy make me  last argument - "Dst Segment", what is this? I have no any idea. Maybe it means memory page segments?


I tried to found some examples, but all projects ither not use MMX optimisation ither are focused on Linux platform and other compilers and often, like ZSNES, are ASM hell (i.e. all this is called throw other asm code).

ZSNES code: http://sourceforge.net/projects/zsnes/
2xSai latest code: http://vdnoort.home.xs4all.nl/emulation/2xsai/

(I'm using latest version from original site).

[/offtop]

Заголовок: Re: Essence XWnd Shell
Прислано пользователем Nikto, кто кто ? на 07.10.2014 в 03:01:26
я к сожалению не прогер ...

но есть 2а вероятно решения .. или попытки .. -

обратиться к разрабу снес эмулятора ...

2й - обратиться к разрабу dosBOX знаменитой .. - оба из них я думаю решали или пытались решить проблемы оптимизации скалеров в их эмулях ..

Заголовок: Re: Essence XWnd Shell
Прислано пользователем Nikto, кто кто ? на 10.10.2014 в 06:56:01

===
Временное решение для мониторов с 1920*1080

даунсэмплинг разрешения ...

череp настройку в нВидия ..

так кстати можно игры запустить в 4k,
на обычном HD мониторе .. :)

http://www.neogaf.com/forum/showthread.php?t=509076

____

Заголовок: Re: Essence XWnd Shell
Прислано пользователем StaticZ на 10.10.2014 в 07:18:37
Сабж обновился до версии 0.02(018.14282):

Quote:
     * Fixed: FPS limit ignored after minimize\restore application
     * Fixed: SuperEagle filter crashed application.
     * Fixed: Related paths for $StartPEPath: don't work.
     * Change startup initialization for more safety
     * Change using instruction sets: MMX, SSE, SSE2, AVX
     * Added: EPX upscale filter
     * Added: info about selected filters and game mode in OSD
     * Added: saving screenshots by PrntScr hotkey (Ctrl+PrntScr to save original image)
     * Added: separating FPS limit for focused and unfocused application window
     * Added: sending customise keyboard keys scancode at lose and get focus.
     * Added: minor checks and validations


Ссылка в шапке.

Заголовок: Re: Essence XWnd Shell
Прислано пользователем Nikto, кто кто ? на 16.10.2014 в 01:49:14
:o

опараз !!!

отлично !

EPX upscale filter  чё за зверь ?

Заголовок: Re: Essence XWnd Shell
Прислано пользователем Nikto, кто кто ? на 16.10.2014 в 01:53:22
MMX, SSE, SSE2, AVX


======
а sse3\4\4.1 что за звери ?

они что-то могут дать ?
::)

Заголовок: Re: Essence XWnd Shell
Прислано пользователем StaticZ на 16.10.2014 в 03:47:01

on 1413413354, Nikto, кто кто ? wrote:
 EPX upscale filter  чё за зверь ?
Был разработан при портировании игр на движке Scumm c IBM на макинтоши. Там в комментах новой версии конфигов все написано. По сути есть три семейства апскейлеров: Eagle, EPX и HQ. Первый хорош для пиксель арта, третий для получения четкости мало цветных картинок (к примеру 16 цветные игры NES), второй нечто среднее между ними. Все остальные алгоритмы это модификации разной степени кого-то из них.

Eagle -> 2×SaI, Super 2×SaI, Super Eagle
EPX   -> Scale2×, AdvMAME2×
HQ    -> LQ, HQ2x, XBR, XBRz

Других алгоритмов я пока не встречал (ну кроме пары экспериментальных). Ну речь конечно не о традиционных методах интерполяции, что плохо подходят для сохранения детализации картинки, хотя их тоже еще предстоит реализовать.



on 1413413602, Nikto, кто кто ? wrote:
MMX, SSE, SSE2, AVX
 
 
======
а sse3\4\4.1 что за звери ?
 
Наборы расширенных инструкций процессоров x86. Первое такое расширение появилось еще во времена Pentium1 и получило название MMX, дальше различные версии SSE ну а затем AVX:

[offtop]Расширения

PAE
В более поздних 32-разрядных процессорах (начиная с Pentium Pro) появилось PAE (Physical Address Extension) — расширение адресов физической памяти до 36 бит (возможность адресации 64 Гбайт ОЗУ). Это изменение не затронуло разрядности задач — они остались 32-битными.

MMX
Дополнительный «мультимедийный» (англ. Multi-Media eXtensions) набор инструкций, выполняющих по несколько характерных для процессов кодирования/декодирования потоковых аудио/видеоданных действий за одну машинную инструкцию. Впервые появился в процессорах Pentium MMX. Обеспечивает только целочисленные вычисления.

SSE
SSE (англ. Streaming SIMD Extensions — потоковое SIMD-расширение) — это SIMD (англ. Single Instruction, Multiple Data — «одна инструкция — множество данных») набор инструкций, разработанный Intel и впервые представленный в процессорах серии Pentium III. Поддерживает вычисления с плавающей точкой. SSE состоит из восьми 128-битных регистров (с xmm0 до xmm7). Каждый регистр определяет 4 последовательных значения с плавающей точкой одинарной точности. SSE включает в себя инструкции, которые производят операции со скалярными и упакованными типами данных.

SSE2
Улучшенное расширение SSE. Появилось в процессорах Pentium 4. Производит потоковые вычисления с вещественными числами двойной точности (2 числа по 64 бита в одном регистре SSE). Кроме того, добавлены инструкции, аналогичные расширению MMX, работающие с регистрами SSE (16 байт, 8 слов, 4 двойных слова или 2 учётверённых слова в одном регистре). SSE2 включает в себя ряд команд управления кэшем, предназначенных для минимизации загрязнения кэша при обработке неопределенных потоков информации.

SSE3
Продолжение SSE и SSE2, появилось в процессорах Prescott. Набор SSE3 содержит 13 инструкций: FISTTP (x87), MOVSLDUP (SSE), MOVSHDUP (SSE), MOVDDUP (SSE2), LDDQU (SSE/SSE2), ADDSUBPD (SSE), ADDSUBPD (SSE2), HADDPS (SSE), HSUBPS (SSE), HADDPD (SSE2), HSUBPD (SSE2), MONITOR (нет аналога в SSE3 для AMD), MWAIT (нет аналога в SSE3 для AMD). Наиболее заметное изменение — возможность горизонтальной работы с регистрами. Если говорить более конкретно, добавлены команды сложения и вычитания нескольких значений, хранящихся в одном регистре. Эти команды упростили ряд DSP и 3D-операций. Существует также новая команда для преобразования значений с плавающей точкой в целые без необходимости вносить изменения в глобальном режиме округления.

SSSE3
Дополнение к SSE3 для работы с упакованными целыми. Новыми в SSSE3, по сравнению с SSE3, являются 16 уникальных команд, работающих с упакованными целыми. Каждая из них может работать как с 64-х битными (MMX), так и с 128-ми битными (XMM) регистрами, поэтому Intel в своих материалах ссылается на 32 новые команды.

Категории новых инструкций: работа со знаком, сдвиги, перемешивание байт, умножения, горизонтальные сложения и вычитания целых.

SSE4
Новый набор команд Intel, впервые реализованный в процессорах серии Penryn.

SSE4 состоит из 54 инструкций, 47 из них относят к SSE4.1 (они есть только в процессорах Penryn). Ожидается, что полный набор команд (SSE4.1 и SSE4.2, то есть 47 + оставшиеся 7 команд) будет доступен в процессорах Nehalem. Ни одна из SSE4 инструкций не работает с 64-битными mmx регистрами, только со 128-битными xmm0-15. Может оказаться, что не будет выпущено 32-битных процессоров с SSE4, только 64-битные — с EM64T.

Добавлены инструкции, ускоряющие компенсацию движения в видеокодеках, быстрое чтение из USWC памяти, множество инструкций для упрощения векторизации программ компиляторами. Кроме того, в SSE4.2 добавлены инструкции обработки строк 8/16 битных символов, вычисления CRC32, popcnt. Впервые в SSE4 регистр xmm0 стал использоваться как неявный аргумент для некоторых инструкций.

Новые инструкции SSE4.1 включают ускорение видео, работу с векторными примитивами, вставки/извлечения, скалярное умножение векторов, смешивания, проверки бит, округления, чтение WC-памяти.

Новые инструкции SSE4.2 включают обработку строк, подсчёт CRC32, подсчет популяции единичных бит, работу с векторными примитивами.

SSE5
Новое расширение x86 инструкций от AMD, названное SSE5. Этот абсолютно новый набор SSE инструкций, созданный специалистами AMD, станет поддерживаться перспективными CPU компании, начиная с 2009 года.

SSE5 привносят в классическую x86 архитектуру некоторые возможности, доступные ранее исключительно в RISC процессорах. Набор инструкций SSE5 определяет 47 новых базисных команд, призванных ускорить однопоточные вычисления благодаря увеличению «плотности» обрабатываемых данных.

Среди новых инструкций выделяется две основные группы. В первую входят инструкции, аккумулирующие результаты умножения. Инструкции такого типа могут быть полезны для организации итерационных вычислительных процессов при рендеринге изображений или при создании трёхмерных аудио эффектов. Вторая группа новых команд включает инструкции, оперирующие с двумя регистрами и сохраняющие результат в третьем. Это нововведение может позволить разработчикам обойтись без лишних пересылок данных между регистрами в вычислительных алгоритмах. Также, SSE5 содержит и несколько новых инструкций для сравнения векторов, для перестановки и перемещения данных, а также для изменения точности и округления.

Основными применениями для SSE5 AMD видит расчётные задачи, обработку мультимедиа контента и средства шифрования. Ожидается, что в счётных приложениях, использующих матричные операции, использование SSE5 может дать 30%-й прирост производительности. Мультимедийные задачи, требующие выполнения дискретного косинусного преобразования, могут получить 20%-е ускорение. А алгоритмы шифрования благодаря SSE5 способны получить пятикратный выигрыш в скорости обработки данных.

AVX
Следующий набор расширений от Intel. Поддерживается обработка чисел с плавающей запятой упакованных в 256-битные "слова". Для них вводится поддержка тех же команд, что и в семействе SSE. 128-битные регистры SSE XMM0 - XMM15 расширяются до 256-битных YMM0-YMM15

AVX 2
Дальнейшее развитие AVX. Целочисленные команды SSE начинают работать с 256-битными AVX регистрами.

AES
Расширение системы команд AES — реализация в микропроцессоре шифрования AES.

Intel Post 32nm processor extensions[править | править вики-текст]
Intel Post 32 nm processor extensions - новый набор инструкций Intel, позволяющий конвертировать числа с половинной точностью в числа с одинарной и двойной, аппаратно получать истинно случайные числа и обращаться к регистрам FS/GS.

3DNow!
Набор инструкций для потоковой обработки вещественных чисел одинарной точности. Поддерживается процессорами AMD начиная с K6-2. Процессорами Intel не поддерживается.

Инструкции 3DNow! используют регистры MMX в качестве операндов (в один регистр помещается два числа одинарной точности), поэтому, в отличие от SSE, при переключении задач не требуется отдельно сохранять контекст 3DNow!.

64-битный режим
К началу 2000-х годов стало очевидно, что 32-битное адресное пространство архитектуры x86 ограничивает производительность приложений, работающих с большими объёмами данных. 32-разрядное адресное пространство позволяет процессору осуществлять непосредственную адресацию лишь 4 ГБ данных. Этого может оказаться недостаточным для некоторых приложений, связанных, например, с обработкой видео или обслуживанием баз данных.

Для решения этой проблемы Intel разработала новую архитектуру IA-64 — основу семейства процессоров Itanium. Для обеспечения обратной совместимости со старыми приложениями, использующими 32-разрядный код, в IA-64 был предусмотрен режим эмуляции. Однако на практике данный режим работы оказался чрезвычайно медленным.

Компания AMD предложила альтернативное решение проблемы увеличения разрядности процессора. Вместо того, чтобы изобретать совершенно новую систему команд, было предложено ввести 64-разрядное расширение к уже существующей 32-разрядной архитектуре x86. Первоначально новая архитектура называлась x86-64, позже она была переименована в AMD64. Первоначально новый набор инструкций поддерживался процессорами семейств Opteron, Athlon 64 и Turion 64 компании AMD. Успех процессоров, использующих технологию AMD64, наряду с вялым интересом к архитектуре IA-64, побудили Intel лицензировать набор инструкций AMD64. При этом был добавлен ряд специфических инструкций, не присутствовавших в изначальном наборе AMD64. Новая версия архитектуры получила название EM64T.

В литературе и названиях версий своих программных продуктов компании Microsoft и Sun используют объединённое именование AMD64/EM64T, когда речь заходит о 64-разрядных версиях их операционных систем Windows и Solaris соответственно. В то же время, поставщики программ для операционных систем семейства Linux, BSD используют метки «x86-64» или «amd64», а в Mac OS X используется метка «x86_64», если необходимо подчеркнуть, что данное ПО использует 64-разрядные инструкции.[/offtop]



on 1413413602, Nikto, кто кто ? wrote:
они что-то могут дать ?
 

Да повысить быстродействие, однако практически что это может дасть я хз ибо пишу не на ассемблере а на C\C++, а генерацией машинного кода занимается компилятор. Я могу лишь сделать запрос или разрешить что-то использовать, но в конечном счете компилятор сам решает что, где и как ему делать.

Заголовок: Re: Essence XWnd Shell
Прислано пользователем Nikto, кто кто ? на 18.10.2014 в 03:35:16
ясно ..

а на мишках я тему попросил прикрепить .. как важную ..


вот чё написал ...
;)

Заголовок: Re: Essence XWnd Shell
Прислано пользователем Nikto, кто кто ? на 19.10.2014 в 04:34:38

*вот такая хрень выходит при попытке пустить .. -

сам жа пускается нормально ... с скалером такой еррор -


http://110.imagebam.com/download/A6ipK4bIZMlWHXCUk7k8IA/35862/358611475/Untitled-1.jpg

чё делать ?
::)

Заголовок: Re: Essence XWnd Shell
Прислано пользователем StaticZ на 19.10.2014 в 07:28:19
Похоже на отсутствие поддержки SSE2 или AVX... Что за процессор?

Заголовок: Re: Essence XWnd Shell
Прислано пользователем Nikto, кто кто ? на 20.10.2014 в 10:15:24
core duo e2180

Заголовок: Re: Essence XWnd Shell
Прислано пользователем Nikto, кто кто ? на 20.10.2014 в 10:31:52
https://software.intel.com/ru-ru/intel-isa-extensions

почитал ... круто конечно ...

и походу переписывать код без AVX нельзя или вкл\выкл ...

а мой проц по ходу недержит эту оптимизацию ...

нужно железо менять .. :(


___

Заголовок: Re: Essence XWnd Shell
Прислано пользователем StaticZ на 20.10.2014 в 10:48:07

on 1413790312, Nikto, кто кто ? wrote:
нужно железо менять ..    
Да не нужно, пересоберу потом без AVX, все равно ощутимой разницы это не дает.

Заголовок: Re: Essence XWnd Shell
Прислано пользователем Nikto, кто кто ? на 23.10.2014 в 05:20:04
есть avx 1 \ 2 ...

не знаю ..

но старенькие процы бедолаги это не держат ...  :(

Заголовок: Re: Essence XWnd Shell
Прислано пользователем Nikto, кто кто ? на 28.10.2014 в 13:51:11
*есть новый компил без AVX ?
::)

Заголовок: Re: Essence XWnd Shell
Прислано пользователем Nikto, кто кто ? на 19.11.2014 в 11:18:31
ждём ...
::)

Заголовок: Re: Essence XWnd Shell
Прислано пользователем StaticZ на 05.11.2015 в 12:37:50
Давненько сюда не заходил недавно обновил сабж -

(2015.11.05) ver 0.03 rev 030  build 15309
------------------------------------------      
     
     * Added: Upscaler support GDI based games
     * Added: Downscale 2x filter
     * Added: VFS (Virtual File System)
     * Added: minor checks and validations
     * Change removed dependencies for AVX instructions

Ссылки на скачивание добавил в шапку

Заголовок: Re: Essence XWnd Shell
Прислано пользователем Shadow на 20.04.2016 в 13:50:06
Удивительная вещь. Однажды коллега разработчик в шутку поинтересовался, чего бы такого полезного написать, чтобы прославиться на весь мир. Я посоветовал написать некий обработчик DirectX приложений. Чтобы всякие Фоллауты-Джаги-ММ можно было запускать в окне с двукратным зумом. А то на ЖК-мониторе не поиграть нормально — только в растянутое мыло с родным разрешением, или в муравьиную ферму с HD-модами.

И вот другой человек пишет программу моей мечты. Казалось бы, за два года в сети она должна была заслужить популярность, но на деле выдача гугла показывает только два мертвых треда и игру на RPG-мейкере с интегрированным XWnd Shell. Что же пошло не так?

На мой взгляд, проблема прежде всего в недружелюбии к пользователю. Нужен GUI, или толковый INI-шник с комментариями, а не как сейчас. Также нужна нормальная поддержка окна с возможностью перемещения по десктопу.

Автору спасибо и успехов с доведением программы до ума :)

Заголовок: Re: Essence XWnd Shell
Прислано пользователем Green Eyes на 20.04.2016 в 16:28:35

on 1461149406, Shadow wrote:
На мой взгляд, проблема прежде всего в недружелюбии к пользователю.
- да, поддерживаю. Обычный оконный интерфейс бы её спас.

Заголовок: Re: Essence XWnd Shell
Прислано пользователем Shadow на 07.07.2021 в 18:43:49
Спустя 5 лет вернулся погостить в Арулько. Начал было заново разбираться с конфигом XWnd, но махнул рукой и за минуту достиг нужного результата (целочисленного увеличения разрешения с 800x600 до 1600x1200) через DGVoodoo2. Раньше этот враппер глючил с JA2, а теперь работает как часы, прошел 1.13+AR без глюков.

Позже все-таки нашел, где отключить в сабже выставленные по умолчанию "художественные" фильтры (ч/б + интерлейс) и немного сравнил оба враппера. DGV работает быстрее на ретро-компе (особенно заметно по анимации перехода в сектор с карты) и позволяет играть в окне, что может быть актуально для владельцев массовых 1080p-мониторов.

Заголовок: Re: Essence XWnd Shell
Прислано пользователем Green Eyesman на 16.07.2021 в 20:04:18

on 1625672629, Shadow wrote:
Спустя 5 лет вернулся погостить в Арулько. Начал было заново разбираться с конфигом XWnd, но махнул рукой и за минуту достиг нужного результата (целочисленного увеличения разрешения с 800x600 до 1600x1200) через DGVoodoo2. Раньше этот враппер глючил с JA2, а теперь работает как часы, прошел 1.13+AR без глюков.
- а причем тут вуду? Оно разве к джаге как-то работает? Надо бы попробовать, даже интересно.

Заголовок: Re: Essence XWnd Shell
Прислано пользователем Shadow на 19.07.2021 в 00:41:52

on 1626455058, Green Eyesman wrote:
Оно разве к джаге как-то работает?
Конечно работает, на вкладке DirectX указываешь разрешение вдвое большее, чем в сетапе и играешь. В Джаге нет 3D графики, а так в том же КДР, или Бригаде Е5 можно ставить крупный четкий 2D интерфейс при детализированном 3D.

Заголовок: Re: Essence XWnd Shell
Прислано пользователем Green Eyesman на 19.07.2021 в 20:54:43

on 1626644512, Shadow wrote:
В Джаге нет 3D графики, а так в том же КДР, или Бригаде Е5 можно ставить крупный четкий 2D интерфейс при детализированном 3D.
- ну-ка, ну-ка, а при каких это настройках? Можно ли поподробнее?

Заголовок: Re: Essence XWnd Shell
Прислано пользователем Shadow на 19.07.2021 в 22:55:47
2Green Eyesman: Ну скажем, имеется монитор 1600x1200. Нужно в сетапе игры выставить 800x600. Потом в DGV на вкладке Glide выставить 1600x1200, а на вкладке DirectX - 800x600, получишь хайрес игру с большим красивым  интерфейсом, а не мелкими конопчками в углу. Многие старые игры преображаются. Но это уже оффтоп.

Заголовок: Re: Essence XWnd Shell
Прислано пользователем Баюн на 20.07.2021 в 14:02:56

on 1626724547, Shadow wrote:
Ну скажем, имеется монитор 1600x1200. Нужно в сетапе игры выставить 800x600. Потом в DGV на вкладке Glide выставить 1600x1200, а на вкладке DirectX - 800x600, получишь хайрес игру с большим красивым  интерфейсом, а не мелкими конопчками в углу. Многие старые игры преображаются. Но это уже оффтоп.

надо на златогорье2 попробовать.

Заголовок: Re: Essence XWnd Shell
Прислано пользователем Green Eyesman на 20.07.2021 в 20:48:16
2Shadow: Хм, интересный способ. Спасибо. Надо попробовать.

Заголовок: Re: Essence XWnd Shell
Прислано пользователем Green Eyesman на 28.07.2021 в 14:54:35
И... не работает с джагой не работает.

Народ требует подробной инструкции и совместимостей.

Заголовок: Re: Essence XWnd Shell
Прислано пользователем brokerbroker на 21.01.2022 в 22:04:37
не могу скачать прогу автор - выдает "не удалось получить доступ к сайту"

Заголовок: Re: Essence XWnd Shell
Прислано пользователем StaticZ на 22.08.2022 в 02:34:44

on 1625672629, Shadow wrote:
Позже все-таки нашел, где отключить в сабже выставленные по умолчанию "художественные" фильтры (ч/б + интерлейс) и немного сравнил оба враппера. DGV работает быстрее на ретро-компе (особенно заметно по анимации перехода в сектор с карты) и позволяет играть в окне, что может быть актуально для владельцев массовых 1080p-мониторов.  
XWnd тоже позволяет запускать в оконном режиме, но только без обрамления (рамки), что при желании позволяет развернуть игру на весь экран, сохранив при этом все преимущества оконного режима. Плюс небольшой бонус с фиксом залипания кнопок при альт+табе и сохранением скриншотов.

Сравнивать скорость DGV и XWnd не особо корректно, так как принцип и задачи разные. В отличие от DGV, ориентированного больше на 3д игры и следовательно стандартное растягивание текстур на GPU, XWnd ориентирована на 2d игры на DirectDraw или GDI и использует специализированные алгоритмы для апскейла пиксель-арта, не приводящие к замыливанию картинки (их работа продемонстрирована в 11 посте). Кроме того в зависимости от сложности выбранного алгоритма разниться и нагрузка на железо, да и к тому же в XWnd можно последовательно применять несколько алгоритмов/фильтров, что очевидно добавляет ещё нагрузку.




on 1642791877, brokerbroker wrote:
не могу скачать прогу автор - выдает "не удалось получить доступ к сайту"
Поправил ссылки в первом посте и скрины в 11, теперь должно работать.

Заголовок: Re: Essence XWnd Shell
Прислано пользователем StaticZ на 22.08.2022 в 03:35:05

on 1627473275, Green Eyesman wrote:
Народ требует подробной инструкции и совместимостей.  

Насчет DGV не знаю, а насчет сего чуда, то:
1) Разархивируйте в любую папку рядом с екзешником.
2) Проверьте путь к exe'шнику игры, он задаётся относительно пути к самому шелу, например: [JaggedAlliance2]$StartPEPath: ".\..\JA2.exe"
3) Проверьте разрешение выставленное в самой игре: [JaggedAlliance2]$FScreenMode: { 640, 480, 555 } (в оригинальных версиях 640х480, в 1.13 и ряде модов может быть выбранное отличное, в этом случае его надо поправить)
4) Укажите желаемый фактический конечный размер клиентской части окна в котором хотите играть [UserSettings]$WindowFrame: { YES, 1920, 1080, 0, 0, #000000 } - первые две цифры ширина/высота окна, следующие две цифры положение Х/У создаваемого окна, последнее значение - цвет фона окна (черный).
5) Настройте параметры масштабирования:
5а) выбирите алгоритм масштабирования, например для AdvMame 2x:  [UserSettings]$ImageFilter: #2022 (фильтров может быть несколько, в этом случае применяются в порядке объявления, обратите внимание в архиве сразу два фильтра, для начала один замените на этот, а второй уберите). Ниже в конфиге подробно описаны какие значения какие алгоритмы, потом можете поиграться и выбрать тот что больше понравиться.
5б)  Если ранее были выбраны апскейлеры, то в результате их работы исходная картинка будет увеличена в кратное число раз, например в данном случае AdvMame 2x ресайзит ее в 2 раза, т.е. вместо  640x480 получается 1280х960. Если хочется растянуть её еще, например до 1440х1080, т.е. на все окно, то следует включить ресайз, за что отвечает последний параметр равный 1 в [UserSettings]$UsingBliter: { 1, 0,       5, 1 }. Есть несколько вариантов ресайза, в данном случае будет использован ресайз с сохранением соотношения сторон, в конфиге можете подрбнее почитать о других вариантах.

6) В принципе это все... В некоторых версиях, например в демке, игра может сильно лагать выдавая по 1 фпс, в этом случае может помочь отключение торможения процесса: [DefaultConf]$MainLoopLow: 0, там же и другие параметры что могут решать различные проблемы, но для JA2 остальные проблем не вызывают.

7) Если мешает OSD или консоль, то их можно отключить изменив первый параметр с YES на NO в [ShellOptions]$ShowOSDMenu: { NO, ...и [ShellOptions]$ShowConsole: { NO, ...


Возможно в таком формате будет легче понять и  работать с конфигом:


Code:
~ EssenceUCS: uoconfig.ecd                                                                                      =====
~ Encoding: only UTF-8 without BOM !!!                                                                     =====
$unknown: OFF      ~ !! Don't remove this...                                                              =====
~ =====================================================================================
~ see "ecd-format_eng.pdf"|"ecd-format_rus.pdf" for format and syntax description.
~ WARNING: This version supported only DirectDraw2 with screen mode 16 bpp (555 or 565).
~ ADDED experimental support of GDI (such application have to work in windowed mode)


~ Using sections (exshell will look for walues in this sections in left-to right order)
$LoadProfile: { "ShellOptions", "JaggedAlliance2",
"GameResolution", "WindowSizeAndPosition", "BliterAndResizeMod", "UpscalersAndFilters" }




~ =====================================================================================
[JaggedAlliance2]      ~ Jagged Alliance 2      and it's mods                                            =====
~ =====================================================================================
$StartPEPath: ".\..\JA2.exe" ~ Full or relative path to lunching application.
$StartPEArgs: ""                   ~ command line arguments for lunching application.


~ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
[GameResolution]      ~ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
~ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
~ 1st and 2nd parameters - Original full screen game mode (it's not real window size)
~ 3rd parameter - color mode (for 16 bit commonly used 555 or 565, for 24\32 - 888,
~ for 256 color mode use value 0)

$FScreenMode: { 640, 480, 555 }      ~ resolution maybe higher in 1.13 and other mods



~ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
[WindowSizeAndPosition]      ~ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
~ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
~ Real window settings (it can be larger then application resolution):
~ 1st parameter - if TRUE window will have border, if FALSE then it will be created without it.!
~ 2nd and 3rd parameters - window client area size (width and height). NOTE: if you use border,
~ real window sizes will be larger. Exactly border sizes depending on OS version and used theme.
~ 4th and 5th parameters - initial position for top-left corner of a window (X, Y)
~ 6th parameter - window background color (in R8G8B8 format)
~ NOTE: WINDOW BORDER NOT IMPLEMENTED !

$WindowFrame: { YES, 2560, 1440, 100, 0, #000000 }



~ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
[BliterAndResizeMod]      ~ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
~ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
~ 1st parameter - Bliter type (render method):
~ 1 - GDI
~ 2 - Direct2D                                                       ~ NOTE: NOT IMPLEMENTED !!
~ 2nd parameter - Interpolation method:
~ 0 - None
~ 3rd parameter - Image position (in case if it occupies only part of the screen)
~ 1 - draw image at bottom-left corner of the screen
~ 2 - draw image at screen bottom, on the center for width
~ 3 - draw image at bottom-right corner of the screen
~ 4 - draw image at screen left, on the center for height
~ 5 - align image on screen center (recommended)
~ 6 - draw image at screen right, on the center for height
~ 7 - draw image at top-left corner of the screen
~ 8 - draw image at screen top, on the center for width
~ 9 - draw image at top-right corner of the screen
~ 4th parameter - Output source image scaling type:
~ 0 - don't change size (it doesn't influence size change by the scaletype filter)
~ 1 - stretch with saving aspect ratio.
~ 2 - stretch to window size with saving aspect ratio (cutting sides).
~ 3 - stretch to window size.

$UsingBliter: { 1, 0,       5, 1 }



~ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
[UpscalersAndFilters]      ~ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
~ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -

~ Using filters for capture image. You can use any number of filters you want, they will be
~ applied in order they are declared. The output result of filter will become input data for
~ next filter. At least one filter must be declared (if you want get original image use "None"
~ filter). Note: all filters must be declare in one section, otherwise they will be skipped.
~ Don't declare filters before $UsingBliter key, otherwise they will be skipped.
~ 1st parameter - upscale type (add #2000 for 2x, #3000 for 3x, #4000 for 4x, if supported):
~ #00 - None                  [        ]      - don't use upscale filter (1x)
~ #01 - Simple                  [2x 3x 4x]      - fastest, no smoothing, no filtering
~
~ #02 - Pixelate            [2x 3x 4x]      - retro style (old screen)
~ #03 - Scanlines            [2x      ]      - retro style (old screen)
~ #04 - ScanlinesTV            [2x      ]      - retro style (old screen)
~ #05 - MotionBlur            [2x      ]      - blur effect for screen update
~
~ #10 - Eagle                  [--------]      - good for saving graphics details
~ #11 - 2xSaI                  [2x      ]      - improved Eagle algorithm
~ #12 - SuperEagle            [2x      ]      - similar to 2xSaI, but does more blending
~ #13 - Super2xSaI            [2x      ]      - similar to 2xSaI, but smooths graphics
~
~ #20 - EPX                        [2x      ]      - something average between Eagle family and HQ family
~ #21 - Scale                  [--------]      - improved EPX
~ #22 - AdvMame                  [2x      ]      - improved EPX             <RECOMENDED! (best speed for good quality)>
~
~ #30 - lq                        [2x      ]      - good for making graphics sharper
~ #31 - hq                        [2x      ]      - same as LQ, but more heavy interpolation
~ #32 - xbra                  [2x 3x 4x]      - based on HQ
~ #33 - xbrb                  [2x 3x 4x]      - based on HQ
~ #34 - xbrc                  [2x 3x 4x]      - based on HQ
~ #35 - xbrz                  [--------]      - improved XBR
~
~ #01 - GrayScale            [-  -  - ]      - Convert colors to gray tons.
~ #7001 - Downscale2x      - fastest, no smoothing, no filtering
~ ??? - Scale2xSaI, Bilinear, BilinearPlus
~ NOTE: keys can contain addition parameters, depending on using filter (see description above).

$ImageFilter: #2022






~ =====================================================================================
[ShellOptions]            ~ EXShell global options                                                        =====
~ =====================================================================================

~ $UseDebugMod: YES      ~ Disable all debug staff (OSD, console and other)
     
~ enable, toffx, toffy, font, lfWeight [1..9, 4 -default, 7 - bold], lfHeight, texth, tcolr,    fsize, fcolr
~ $ShowOSDMenu: { NO, 30, 60,  "Courier", 7,       18, 20,       #B4B4B4,        TRUE, #000000 }

~ enable, x, y, width, height, buggerW, buggerH, font, family, fontW, fontH, CP
~ $ShowConsole: { NO,  100, 100, #C0DE,  906,        87, 4096, "Consolas", #00,  9, 26, 1251 }

$ConsoleWPal: {      ~ 16 color RGB palette
~                        #000000, #000080, #008000, #008080, #800000, #800080, #808000, #C0C0C0,      ~ Default Windows
~                        #808080, #0000FF, #00FF00, #00FFFF, #FF0000, #FF00FF, #FFFF00, #FFFFFF
                 
                       #000000, #000080, #008000, #008080, #800000, #800080, #808000, #C0C0C0,      ~ Essence Theme
                       #808080, #0000FF, #00FF00, #00FFFF, #FF0000, #FF00FF, #FFFF00, #FFFFFF
}

$ConsoleWait: NO      ~ Pause console log at process termination


~ 0 - OFF, value is bit mask for allowed CPU cores, use to solve problems with multi core.
~ (i.e. #0001 - 1st core, #0002 - 2nd core, #0004 - 3rd core, #0008 - 4th core and so on)
$CPUAffinity: #0000

~ Offset to application entry point (WinMain procedure, it's not same for PE entry point)
~ use "no" or #00000000 value to allow exshell found it itself. Using incorrect offset will
~ cause problems with exshell loading or application crashing. If you get such problems
~ try to set offset manually (it's rather easy to find it throw disassembler, like IDA).
~ Note: take attention that this offset usually differs for each executable file, so if
~ you get it from somewhere check executable version and checksum to be sure that it's
~ really extracted from same executable file.
$WinMainOffs: NO

~ By default exshell capture image from 1st created window. But as few applications create
~ several windows (notice that they can be invisible) you possibly will be required to use
~ another one. To do this you will need caption text. Notice, that it can be not constant
~ value, so in this case better use window class name. 1st argument - window class name,
~ 2nd - window caption. If both of them are defined then exshell will search window that
~ satisfy both conditions. You can set 1st or\and 2rd parameter to NO to disable filter.
~ 3rd parameter - count of skipping windows that satisfy both conditions (for example, if
~ value is 2 and 2nd value "foo" then will be used third created window with caption "foo")
~ 4th parameter - new window caption, if you want to replace original one. To keep original
~ one use value NO.
~ NOTE: To get list of creating window classes and captions run your application and look
~ in console output (See keys $UseDebugMod, $ShowConsole, $ConsoleWPal, $ConsoleWait).
$ApplCaption: { NO, NO, 0, NO }

~ Special compatible mode, list of possible modes:
~ #C0DE0000 or NO or 0 - don't use special compatibility mode.
~ #C0DE0001 - RPG Maker 2003 (fix screen updating and filters)
$Compatibles: NO

~ 0 - OFF, value in ms for pause (normally values more 1 ms not recommended to use, though
~ in some cases can be used for slowing game). Use it if application always load 100% cpu.
$MainLoopLow: 0

~ If true use mouse cursor clipper inside game window client area. This means that it will
~ be impossible to move cursor out of window until it has focus.
$ClipMCursor: YES                                          ~ NOTE: NOT IMPLEMENTED !!

~ Set limit for screen update, use this to reduce CPU usage. Value NO or 0 means that there
~ are no limitation in exshell, but notice that running application can have own FPS limit.
~ Second value is FPS limit for application when focus is lost. If value NO then 1st value
~ will be used.   This will help to save your CPU load.
$FPSMaxLimit: { 60, 10 }

~ This options allow to send pressing event for specified keys to application before focus will be lost
~ and after focus restore. This can be used for setting game on pause, autosaveing or solving some
~ problems with sticking keys while switching windows. Common keys code are defined below, optionally
~ you can add #00E00000 for extended key code (E0). For example ALT+S can be described as events
~ {#38, #1F, #9F, #B8} or in case of right ALT {#E00038, #1F, #9F, #E000B8}.
~ You can add any number of key codes to array or use NO value to disable it, keys will be send from left
~ to right order. List of scan codes can be found in ./toolsadd/scancodes.htm
$GetFocusKey: { #B8,#E000B8 }       ~ Break for: Left & Right ALT
$RemFocusKey: OFF                        ~ NOTE: bad coded, though in most cases its working.

~ Press PrintScreen for saving screenshot or Ctrl+PrintScreen for saving unfiltered screenshot.
~ Allowed formats: "jpeg", "png", "bmp", "tiff", "gif" (note gif allows save only up to 256 colors)
$ScrnGrabImg: "png"

$UseLanguage: "RU"      ~ LangCode from entries in Localisation section

~ =====================================================================================
[Localisation]            ~ List for known locals      (don't rename or delete)                    =====
~ =====================================================================================
~ Note: Don't rename this section and never use localised strings here!!!
~ format: LangCode (2 chars only), ANSI_CP, OEM_CP, Charset
~         for default values, 1st argument is missed.

$elangcodepage:{            1251, 850,   0      }      ~ Default
$elangcodepage:{ "EN",      1250, 850,   0      }      ~ English
$elangcodepage:{ "RU",      1251, 866, 204      }      ~ Русский
$elangcodepage:{ "SP",      1252, 850,   0      }      ~ Espanol
$elangcodepage:{ "GE",      1252, 850,   0      }      ~ Deutsch
$elangcodepage:{ "IT",      1253, 850,   0      }      ~ Italiano
$elangcodepage:{ "FR",      1253, 850,   0      }      ~ Francais


Заголовок: Re: Essence XWnd Shell
Прислано пользователем Shadow на 22.08.2022 в 11:24:09

on 1661124884, StaticZ wrote:
В отличие от DGV, ориентированного больше на 3д игры и следовательно стандартное растягивание текстур на GPU, XWnd ориентирована на 2d игры на DirectDraw или GDI и использует специализированные алгоритмы для апскейла пиксель-арта, не приводящие к замыливанию картинки (их работа продемонстрирована в 11 посте).

У DGV различный набор dll для 3D и 2D. В приложении отдельные вкладки с тонкой настройкой Glide и DirectX, что например позволяет добиваться четкого крупного 2D интерфейса при увеличенном разрешении 3D. JA2, разумеется, не замыливается с DGV - картинка идентична XWnd.

Не планируете развивать проект в сторону быстрого запуска через графический интерфейс?

Заголовок: Re: Essence XWnd Shell
Прислано пользователем StaticZ на 22.08.2022 в 12:21:35

on 1661156649, Shadow wrote:
У DGV различный набор dll для 3D и 2D. В приложении отдельные вкладки с тонкой настройкой Glide и DirectX, что например позволяет добиваться четкого крупного 2D интерфейса при увеличенном разрешении 3D. JA2, разумеется, не замыливается с DGV - картинка идентична XWnd.  
А что там используется? Если отключить сглаживание, то не будет мыло, но это по сути "Nearest Neighbor", т.е. просто увеличение пикселей? для примера тут слева как раз то что выйдет в этом случае, а справа то что выйдет в результате ресайза специальным алгоритмом для пиксельной графике (в данном случае 2xSai), в обоих случаях результат четкий, вся разница в том что в первом случае изображение четче просто за счет укрупнения пикселей, а во втором за счет увеличения детализации.

http://https://i.stack.imgur.com/7N3UD.png





on 1661156649, Shadow wrote:
Не планируете развивать проект в сторону быстрого запуска через графический интерфейс?  
Вряд ли, я завязал с виндой и пересел на лиункс, так что мотивации что-то делать чисто под винду нет... Да и смысл? Один раз настроил пару параметров за 5 минут и забыл...

Кроме того я уже планирую начать другой более качественный и эпичный проект...

Заголовок: Re: Essence XWnd Shell
Прислано пользователем Shadow на 22.08.2022 в 12:51:25

on 1661160095, StaticZ wrote:
А что там используется? Если отключить сглаживание, то не будет мыло, но это по сути "Nearest Neighbor", т.е. просто увеличение пикселей?

Да, этот вариант для меня наилучший, как в DGV, так и в DOSBox. Благо, один из мониторов имеет разрешение 1600x1200, позволяя гонять игры 800x600*2 и (320*5)x(200*6) с четкими пикселями. А второй 1920x1200 - модифицированные JA2 и Fallout (960x600)*2.

Но действительно существует масса людей, предпочитающих графические фильтры, для них ваш проект будет предпочтительнее DGV. Только объяснять им как настроить XWnd я не возьмусь :)

Успехов с новым проектом!

Заголовок: Re: Essence XWnd Shell
Прислано пользователем Grigoriy на 02.08.2023 в 08:11:53

on 1661124884, StaticZ wrote:
Поправил ссылки в первом посте и скрины в 11, теперь должно работать.


Увы, сайт снова не работает, если не трудно -перезалейте пожалуйста на иной ресурс. Заранее признателен!



A.I.M. » Powered by YaBB Modification 4 (v.4.0.0-pre)!
YaBB © 2000-2003. All Rights Reserved.